File size: 5,126 Bytes
9d2d895 | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 | // 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';
|