Files
biz_firstpage/Index.ets
T
clz af0025ce38 Initial commit: @b2c/first_page HarmonyOS stage-mode HAR
## Repository
- HarmonyOS stage-mode HAR module, consumed by host app
- No standalone build — hvigorw, oh_modules, and ../biz_quote absent here

## Architecture
### Feed Cards
- FirstPage.createNodeView dispatches cards by FirstPageConstant.KEY_*
- Card config from first_page_cards_config.json loaded by FirstPageCardsConfigLoader
- Public entrypoint: Index.ets

### Market Ranking (src/main/ets/market-ranking/)
- HTTP: MarketRankingDataFetcher fetches recommend_futures contracts
- HQ: MarketRankingHqRequestClient subscribes via 4106/frame 2201/scenario qht_qihuo_sort
- TCP reconnect rebuilds subscription from original HTTP contract list
- Async callbacks guarded by request/subscription versions

### Other Cards
- HotList, CommodityOptions, AiDiagnosis, AiRiseFall, SelfSelectedStock, CustomEntryList, FourEntryList
- Each has DataFetcher + HQ request client + NodeComponent

## Key Changes (from CardHarmonyOS reference)
- Added MetricId, PeriodId, SortOrder enums (MarketRankingModels.ets)
- Replaced string comparisons with enum switches in thirdColumnTitle/Value/Color
- Removed redundant undefined guards in thirdColumnColor/priceColor, delegated to riseFallColor
- Inlined priceColor(), use riseFallColor directly
- Tab bar Stack.height(30), Alignment.End (reverted from 46/TopEnd)
- Name column fontWeight removed (default regular)
2026-07-26 01:13:28 +08:00

13 lines
788 B
Plaintext

export { FirstPage } from './src/main/ets/components/mainpage/FirstPage'
export { HotNewsPage } from './src/main/ets/pages/HotNewsPage'
export { HotNewsDetailPage } from './src/main/ets/pages/HotNewsDetailPage'
export { GridNodeAllPage } from './src/main/ets/pages/GridNodeAllPage'
export { FirstPagePopupAdHelper } from './src/main/ets/node/helper/FirstPagePopupAdHelper'
// 广告悬浮球
export { AdsPopupView } from './src/main/ets/popup/AdsPopupView'
export { AdFloatState } from './src/main/ets/popup/AdFloatState'
export { SpAdsComponent } from './src/main/ets/popup/SpAdsComponent'
export { PopupRecord } from './src/main/ets/popup/PopupRecord'
export { AdsPopupHost } from './src/main/ets/popup/AdsPopupHost'
export { AdsBallManager } from './src/main/ets/popup/AdsBallManager'