amogaddy's picture
Integra World Monitor (AGPL-3.0, self-hosted) nello Space: pagina, menu, e arricchimento notizie per la AI (part 7)
9d2d895 verified
Raw
History Blame Contribute Delete
5.13 kB
// Configuration exports
// For variant-specific builds, set VITE_VARIANT environment variable
// VITE_VARIANT=tech → tech.worldmonitor.app (tech-focused)
// VITE_VARIANT=full → worldmonitor.app (geopolitical)
// VITE_VARIANT=finance → finance.worldmonitor.app (markets/trading)
export { SITE_VARIANT } from './variant';
// Shared base configuration (always included)
export {
IDLE_PAUSE_MS,
REFRESH_INTERVALS,
MONITOR_COLORS,
STORAGE_KEYS,
DEFAULT_MAP_MODE,
type MapModePreference,
} from './variants/base';
// Market data (shared)
export { SECTORS, COMMODITIES, MARKET_SYMBOLS, CRYPTO_MAP } from './markets';
// Geo data (shared base). UNDERSEA_CABLES + MAP_URLS moved to the lazy geo-map
// chunk (#4404) — import them directly from '@/config/geo-map', not via this barrel.
// AI Datacenters: NOT re-exported on the eager @/config barrel — the ~86KB table
// is dragged onto the critical path via this re-export. Consumers (map/globe/
// search) import directly from '@/config/ai-datacenters'; related-assets lazy-
// loads it. (#4404)
// Feeds configuration (shared functions, variant-specific data)
export {
SOURCE_TIERS,
getSourceTier,
SOURCE_TYPES,
getSourceType,
getSourcePropagandaRisk,
getSourceTierBadgeTitle,
describePropagandaBadge,
hasDeclaredPropagandaRisk,
hasDeclaredSourceType,
hasReviewedPropagandaRisk,
hasReviewedSourceType,
listConfiguredFeedNames,
getFeedProvenanceState,
UNREVIEWED_SOURCE_RISK,
ALERT_KEYWORDS,
ALERT_EXCLUSIONS,
type SourceRiskProfile,
type SourceType,
} from './feeds';
// Panel configuration - imported from panels.ts
export {
DEFAULT_PANELS,
DEFAULT_MAP_LAYERS,
MOBILE_DEFAULT_MAP_LAYERS,
LAYER_TO_SOURCE,
ALL_PANELS,
VARIANT_DEFAULTS,
VARIANT_PANEL_OVERRIDES,
getEffectivePanelConfig,
isPanelInVariantDefaults,
isPanelEntitled,
enforceFreePanelLimit,
countFreePanelCapUsage,
isFreePanelCapCounted,
restoreFreeMapPanelAccess,
FREE_MAX_PANELS,
FREE_MAX_SOURCES,
} from './panels';
// ============================================
// VARIANT-SPECIFIC EXPORTS
// Only import what's needed for each variant
// ============================================
// Full variant (geopolitical) - only included in full builds
// These are large data files that should be tree-shaken in tech builds
export {
FEEDS,
INTEL_SOURCES,
} from './feeds';
// CANONICAL_FEEDS is the union of every variant's feed map — by design it
// references all *_FEEDS consts, so unlike FEEDS it is NOT tree-shaken per
// variant (~10KB gz). Required so a panel customized in from another variant
// can resolve its feeds. See src/config/feed-resolution.ts.
export { CANONICAL_FEEDS } from './feeds';
// MILITARY_BASES moved to the lazy military-bases chunk (#4478) — import it
// directly from '@/config/military-bases', not via this barrel, so the ~48KB
// bases-expanded table stays off the eager boot graph.
export {
INTEL_HOTSPOTS,
CONFLICT_ZONES,
STRATEGIC_WATERWAYS,
} from './geo';
export { APT_GROUPS } from './apt-groups';
export { GAMMA_IRRADIATORS } from './irradiators';
export { PIPELINES, PIPELINE_COLORS } from './pipelines';
export { PORTS } from './ports';
// MONITORED_AIRPORTS/FAA_AIRPORTS are NOT re-exported on the eager @/config
// barrel — that pulls the airports table onto the critical path. The only
// consumer (AviationCommandBar, lazy) imports directly from '@/config/airports'. (#4404)
export {
ENTITY_REGISTRY,
getEntityById,
type EntityType,
type EntityEntry,
} from './entities';
// Tech variant - these are included in tech builds
export { TECH_COMPANIES } from './tech-companies';
export { AI_RESEARCH_LABS } from './ai-research-labs';
export { STARTUP_ECOSYSTEMS } from './startup-ecosystems';
export {
AI_REGULATIONS,
REGULATORY_ACTIONS,
COUNTRY_REGULATION_PROFILES,
getUpcomingDeadlines,
getRecentActions,
} from './ai-regulations';
// Value re-exports of the tech-geo tables are intentionally NOT on the eager
// @/config barrel — they pull the ~62KB tech-geo chunk onto the dashboard
// critical path. Every consumer (search/map/globe/tech-hub services) imports
// directly from '@/config/tech-geo'. Type re-exports are erased, no edge. (#4404)
export {
type StartupHub,
type Accelerator,
type TechHQ,
type CloudRegion,
} from './tech-geo';
// Finance variant - these are included in finance builds
export {
STOCK_EXCHANGES,
FINANCIAL_CENTERS,
CENTRAL_BANKS,
COMMODITY_HUBS,
type StockExchange,
type FinancialCenter,
type CentralBank,
type CommodityHub,
} from './finance-geo';
// Gulf FDI investment database
export { GULF_INVESTMENTS } from './gulf-fdi';
// Commodity variant - these are included in commodity builds
export {
COMMODITY_PRICES,
COMMODITY_MARKET_SYMBOLS,
} from './commodity-markets';
export {
MINING_SITES,
PROCESSING_PLANTS,
COMMODITY_PORTS,
} from './commodity-geo';
// COMMODITY_MINERS: 30+ mining company HQs — not yet rendered on map.
// Uncomment when a miners layer is added to DeckGLMap.ts.
// export { COMMODITY_MINERS, type CommodityMiner } from './commodity-miners';