@quicktvui/ai 1.0.9 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (345) hide show
  1. package/package.json +1 -1
  2. package/rules/.clinerules +1 -0
  3. package/rules/.cursorrules +1 -0
  4. package/rules/.github/copilot-instructions.md +1 -0
  5. package/rules/.source/hellotv/PROJECT-README.md +52 -0
  6. package/rules/.source/hellotv/app.d.ts +11 -0
  7. package/rules/.source/hellotv/package.json +146 -0
  8. package/rules/.source/hellotv/scripts/build-apk.ts +12 -0
  9. package/rules/.source/hellotv/scripts/build.ts +35 -0
  10. package/rules/.source/hellotv/scripts/dev.ts +12 -0
  11. package/rules/.source/hellotv/scripts/pack.ts +24 -0
  12. package/rules/.source/hellotv/scripts/process.ts +37 -0
  13. package/rules/.source/hellotv/scripts/quicktvui-webpack.android.ts +187 -0
  14. package/rules/.source/hellotv/scripts/quicktvui-webpack.dev.ts +147 -0
  15. package/rules/.source/hellotv/scripts/webpack-watch.ts +24 -0
  16. package/rules/.source/hellotv/src/App.vue +192 -0
  17. package/rules/.source/hellotv/src/api/my/index.ts +198 -0
  18. package/rules/.source/hellotv/src/api/user/impl-user.ts +52 -0
  19. package/rules/.source/hellotv/src/api/user/qr-code-mock.ts +2 -0
  20. package/rules/.source/hellotv/src/api/user/request-url.ts +11 -0
  21. package/rules/.source/hellotv/src/api/user/user-manager.ts +258 -0
  22. package/rules/.source/hellotv/src/app.scss +8 -0
  23. package/rules/.source/hellotv/src/assets/component-media/ic_media_btn_pause.png +0 -0
  24. package/rules/.source/hellotv/src/assets/component-media/ic_media_btn_play.png +0 -0
  25. package/rules/.source/hellotv/src/assets/component-media/ic_media_menu_setting_focused.png +0 -0
  26. package/rules/.source/hellotv/src/assets/component-media/ic_media_menu_setting_normal.png +0 -0
  27. package/rules/.source/hellotv/src/assets/component-media/ic_media_menu_xuanji_focused.png +0 -0
  28. package/rules/.source/hellotv/src/assets/component-media/ic_media_menu_xuanji_normal.png +0 -0
  29. package/rules/.source/hellotv/src/assets/component-media/ic_media_ok_focused.png +0 -0
  30. package/rules/.source/hellotv/src/assets/component-media/ic_media_ok_selected.png +0 -0
  31. package/rules/.source/hellotv/src/assets/detail/ic_collect_focused.png +0 -0
  32. package/rules/.source/hellotv/src/assets/detail/ic_collect_normal.png +0 -0
  33. package/rules/.source/hellotv/src/assets/detail/ic_full_focused.png +0 -0
  34. package/rules/.source/hellotv/src/assets/detail/ic_full_normal.png +0 -0
  35. package/rules/.source/hellotv/src/assets/detail/ic_info_focused.png +0 -0
  36. package/rules/.source/hellotv/src/assets/detail/ic_info_normal.png +0 -0
  37. package/rules/.source/hellotv/src/assets/detail/ic_introduction_bg.png +0 -0
  38. package/rules/.source/hellotv/src/assets/detail/ic_media_list_item_normal.png +0 -0
  39. package/rules/.source/hellotv/src/assets/detail/ic_media_list_item_selected.png +0 -0
  40. package/rules/.source/hellotv/src/assets/detail/ic_media_player_pause.png +0 -0
  41. package/rules/.source/hellotv/src/assets/detail/ic_media_player_placeholder.png +0 -0
  42. package/rules/.source/hellotv/src/assets/detail/ic_media_player_play.png +0 -0
  43. package/rules/.source/hellotv/src/assets/detail/ic_vip_focused.png +0 -0
  44. package/rules/.source/hellotv/src/assets/detail/ic_vip_normal.png +0 -0
  45. package/rules/.source/hellotv/src/assets/detail/skeleton.png +0 -0
  46. package/rules/.source/hellotv/src/assets/filter/ic_empty.png +0 -0
  47. package/rules/.source/hellotv/src/assets/filter/ic_filter_focused.png +0 -0
  48. package/rules/.source/hellotv/src/assets/filter/ic_filter_normal.png +0 -0
  49. package/rules/.source/hellotv/src/assets/filter/ic_filter_selected.png +0 -0
  50. package/rules/.source/hellotv/src/assets/filter/ic_left_focused.png +0 -0
  51. package/rules/.source/hellotv/src/assets/filter/ic_left_normal.png +0 -0
  52. package/rules/.source/hellotv/src/assets/filter/ic_left_selected.png +0 -0
  53. package/rules/.source/hellotv/src/assets/history/ic_delete.png +0 -0
  54. package/rules/.source/hellotv/src/assets/history/ic_empty.png +0 -0
  55. package/rules/.source/hellotv/src/assets/home/bg_history_item.png +0 -0
  56. package/rules/.source/hellotv/src/assets/home/bg_shadow.png +0 -0
  57. package/rules/.source/hellotv/src/assets/home/ic_4k_logo.png +0 -0
  58. package/rules/.source/hellotv/src/assets/home/ic_4k_play_focused.png +0 -0
  59. package/rules/.source/hellotv/src/assets/home/ic_4k_subtitle_normal.png +0 -0
  60. package/rules/.source/hellotv/src/assets/home/ic_arrow_focused.png +0 -0
  61. package/rules/.source/hellotv/src/assets/home/ic_arrow_normal.png +0 -0
  62. package/rules/.source/hellotv/src/assets/home/ic_exit_corner.png +0 -0
  63. package/rules/.source/hellotv/src/assets/home/ic_exit_header.png +0 -0
  64. package/rules/.source/hellotv/src/assets/home/ic_play.png +0 -0
  65. package/rules/.source/hellotv/src/assets/live/bg-error.png +0 -0
  66. package/rules/.source/hellotv/src/assets/live/bg-play-info.png +0 -0
  67. package/rules/.source/hellotv/src/assets/live/ic-arrow-left.png +0 -0
  68. package/rules/.source/hellotv/src/assets/live/ic-arrow-right.png +0 -0
  69. package/rules/.source/hellotv/src/assets/live/ic-back.png +0 -0
  70. package/rules/.source/hellotv/src/assets/live/ic-change.png +0 -0
  71. package/rules/.source/hellotv/src/assets/live/ic-corner-vip-tips.png +0 -0
  72. package/rules/.source/hellotv/src/assets/live/ic-corner-vip.png +0 -0
  73. package/rules/.source/hellotv/src/assets/live/ic-key.png +0 -0
  74. package/rules/.source/hellotv/src/assets/live/ic-loading-error.png +0 -0
  75. package/rules/.source/hellotv/src/assets/live/ic-menu-ext-arrow.png +0 -0
  76. package/rules/.source/hellotv/src/assets/live/ic-menu-ext.png +0 -0
  77. package/rules/.source/hellotv/src/assets/live/ic-menu.png +0 -0
  78. package/rules/.source/hellotv/src/assets/live/ic-mine.png +0 -0
  79. package/rules/.source/hellotv/src/assets/live/ic-network-error.png +0 -0
  80. package/rules/.source/hellotv/src/assets/live/ic-ok.png +0 -0
  81. package/rules/.source/hellotv/src/assets/live/ic-playing.png +0 -0
  82. package/rules/.source/hellotv/src/assets/live/ic-playing2.png +0 -0
  83. package/rules/.source/hellotv/src/assets/live/ic-playing3.png +0 -0
  84. package/rules/.source/hellotv/src/assets/live/ic-service.png +0 -0
  85. package/rules/.source/hellotv/src/assets/live/ic_live_broadcast.png +0 -0
  86. package/rules/.source/hellotv/src/assets/live/ic_live_broadcast_focused.png +0 -0
  87. package/rules/.source/hellotv/src/assets/my/ic_collect_focus.png +0 -0
  88. package/rules/.source/hellotv/src/assets/my/ic_collect_normal.png +0 -0
  89. package/rules/.source/hellotv/src/assets/my/ic_order_focus.png +0 -0
  90. package/rules/.source/hellotv/src/assets/my/ic_order_normal.png +0 -0
  91. package/rules/.source/hellotv/src/assets/my/ic_record_focus.png +0 -0
  92. package/rules/.source/hellotv/src/assets/my/ic_record_normal.png +0 -0
  93. package/rules/.source/hellotv/src/assets/my/ic_user.png +0 -0
  94. package/rules/.source/hellotv/src/assets/my/ic_vip_normal.png +0 -0
  95. package/rules/.source/hellotv/src/assets/search/ic_back.png +0 -0
  96. package/rules/.source/hellotv/src/assets/search/ic_back_focused.png +0 -0
  97. package/rules/.source/hellotv/src/assets/search/ic_clear.png +0 -0
  98. package/rules/.source/hellotv/src/assets/search/ic_clear_dark.png +0 -0
  99. package/rules/.source/hellotv/src/assets/search/ic_clear_focused.png +0 -0
  100. package/rules/.source/hellotv/src/assets/search/ic_search.png +0 -0
  101. package/rules/.source/hellotv/src/assets/top-view/ic_logo.png +0 -0
  102. package/rules/.source/hellotv/src/assets/top-view/ic_top_search_focused.png +0 -0
  103. package/rules/.source/hellotv/src/assets/top-view/ic_top_search_normal.png +0 -0
  104. package/rules/.source/hellotv/src/assets/top-view/ic_top_user_focused.png +0 -0
  105. package/rules/.source/hellotv/src/assets/top-view/ic_top_user_normal.png +0 -0
  106. package/rules/.source/hellotv/src/components/bg-animation.scss +14 -0
  107. package/rules/.source/hellotv/src/components/bg-animation.vue +176 -0
  108. package/rules/.source/hellotv/src/components/btn-pack-view.vue +172 -0
  109. package/rules/.source/hellotv/src/components/btn-pack.scss +53 -0
  110. package/rules/.source/hellotv/src/components/grid-item-horizontal.vue +203 -0
  111. package/rules/.source/hellotv/src/components/grid-item-vertical.vue +201 -0
  112. package/rules/.source/hellotv/src/components/media/build-data/media-config.ts +4 -0
  113. package/rules/.source/hellotv/src/components/media/build-data/media-control-adapter.ts +378 -0
  114. package/rules/.source/hellotv/src/components/media/build-data/media-imp.ts +44 -0
  115. package/rules/.source/hellotv/src/components/media/view/media-loading-component.vue +50 -0
  116. package/rules/.source/hellotv/src/components/media/view/media-loading-view.vue +154 -0
  117. package/rules/.source/hellotv/src/components/media/view/media-manager-view.vue +931 -0
  118. package/rules/.source/hellotv/src/components/media/view/media-menu-detail-item.vue +42 -0
  119. package/rules/.source/hellotv/src/components/media/view/media-menu-detail-view.vue +109 -0
  120. package/rules/.source/hellotv/src/components/media/view/media-menu-icon-item.vue +43 -0
  121. package/rules/.source/hellotv/src/components/media/view/media-menu-text-item.vue +27 -0
  122. package/rules/.source/hellotv/src/components/media/view/media-menu-view.vue +88 -0
  123. package/rules/.source/hellotv/src/components/media/view/media-player-view.vue +408 -0
  124. package/rules/.source/hellotv/src/components/media/view/scss/media-loading.scss +51 -0
  125. package/rules/.source/hellotv/src/components/media/view/scss/media-manager.scss +79 -0
  126. package/rules/.source/hellotv/src/components/media/view/scss/media-menu.scss +114 -0
  127. package/rules/.source/hellotv/src/components/media/view/scss/media-player.scss +6 -0
  128. package/rules/.source/hellotv/src/components/qt-tabs-component.ts +268 -0
  129. package/rules/.source/hellotv/src/components/qt-ul-component.ts +792 -0
  130. package/rules/.source/hellotv/src/components/top-view.scss +38 -0
  131. package/rules/.source/hellotv/src/components/top-view.vue +114 -0
  132. package/rules/.source/hellotv/src/config/README.md +22 -0
  133. package/rules/.source/hellotv/src/config/build-config.ts +22 -0
  134. package/rules/.source/hellotv/src/config/private-theme-config.ts +21 -0
  135. package/rules/.source/hellotv/src/config/public-config.scss +16 -0
  136. package/rules/.source/hellotv/src/config/test.scss +45 -0
  137. package/rules/.source/hellotv/src/config/theme-config.ts +51 -0
  138. package/rules/.source/hellotv/src/main.ts +45 -0
  139. package/rules/.source/hellotv/src/pages/activity/adapter/config.ts +37 -0
  140. package/rules/.source/hellotv/src/pages/activity/adapter/index.ts +849 -0
  141. package/rules/.source/hellotv/src/pages/activity/adapter/interface.ts +173 -0
  142. package/rules/.source/hellotv/src/pages/activity/api/index.ts +36 -0
  143. package/rules/.source/hellotv/src/pages/activity/api/interface.ts +11 -0
  144. package/rules/.source/hellotv/src/pages/activity/api/request-url.ts +10 -0
  145. package/rules/.source/hellotv/src/pages/activity/components/item/focus-change-img-item.vue +40 -0
  146. package/rules/.source/hellotv/src/pages/activity/components/item/inner-out-title-item.vue +59 -0
  147. package/rules/.source/hellotv/src/pages/activity/components/item/no-title-item.vue +45 -0
  148. package/rules/.source/hellotv/src/pages/activity/components/item/placeholder-item.vue +25 -0
  149. package/rules/.source/hellotv/src/pages/activity/index.vue +219 -0
  150. package/rules/.source/hellotv/src/pages/activity/scss/index.scss +46 -0
  151. package/rules/.source/hellotv/src/pages/activity/scss/item.scss +69 -0
  152. package/rules/.source/hellotv/src/pages/detail/adapter/index.ts +317 -0
  153. package/rules/.source/hellotv/src/pages/detail/adapter/interface.ts +150 -0
  154. package/rules/.source/hellotv/src/pages/detail/adapter/media-player.ts +378 -0
  155. package/rules/.source/hellotv/src/pages/detail/api/index.ts +77 -0
  156. package/rules/.source/hellotv/src/pages/detail/api/request-url.ts +8 -0
  157. package/rules/.source/hellotv/src/pages/detail/components/media-player/collapse/media-collapse-definition.vue +192 -0
  158. package/rules/.source/hellotv/src/pages/detail/components/media-player/collapse/media-collapse-list-item.vue +108 -0
  159. package/rules/.source/hellotv/src/pages/detail/components/media-player/collapse/media-collapse-media-series.vue +349 -0
  160. package/rules/.source/hellotv/src/pages/detail/components/media-player/collapse/media-collapse-order.vue +194 -0
  161. package/rules/.source/hellotv/src/pages/detail/components/media-player/collapse/media-collapse-speed.vue +192 -0
  162. package/rules/.source/hellotv/src/pages/detail/components/media-player/index.vue +404 -0
  163. package/rules/.source/hellotv/src/pages/detail/components/media-player/media-player-small-view.vue +382 -0
  164. package/rules/.source/hellotv/src/pages/detail/components/media-player/media-player-view.vue +1099 -0
  165. package/rules/.source/hellotv/src/pages/detail/components/recommend-item.vue +167 -0
  166. package/rules/.source/hellotv/src/pages/detail/components/section/basic-section.vue +218 -0
  167. package/rules/.source/hellotv/src/pages/detail/components/section/config.ts +6 -0
  168. package/rules/.source/hellotv/src/pages/detail/components/section/header-section.vue +15 -0
  169. package/rules/.source/hellotv/src/pages/detail/components/section/item/button-menu.vue +259 -0
  170. package/rules/.source/hellotv/src/pages/detail/components/section/item/media-introduction.vue +238 -0
  171. package/rules/.source/hellotv/src/pages/detail/components/section/item/media-series.vue +308 -0
  172. package/rules/.source/hellotv/src/pages/detail/components/section/item/player-placeholder.vue +88 -0
  173. package/rules/.source/hellotv/src/pages/detail/index.vue +571 -0
  174. package/rules/.source/hellotv/src/pages/detail/scss/index.scss +22 -0
  175. package/rules/.source/hellotv/src/pages/detail-full-player/components/media-player/full-player-loading.vue +78 -0
  176. package/rules/.source/hellotv/src/pages/detail-full-player/components/media-player/full-player-menu-view.vue +803 -0
  177. package/rules/.source/hellotv/src/pages/detail-full-player/components/media-player/full-player-view.vue +219 -0
  178. package/rules/.source/hellotv/src/pages/detail-full-player/index.vue +101 -0
  179. package/rules/.source/hellotv/src/pages/detail-full-player/scss/full-player-view.scss +6 -0
  180. package/rules/.source/hellotv/src/pages/detail-full-screen/adapter/index.ts +0 -0
  181. package/rules/.source/hellotv/src/pages/detail-full-screen/adapter/interface.ts +133 -0
  182. package/rules/.source/hellotv/src/pages/detail-full-screen/api/index.ts +77 -0
  183. package/rules/.source/hellotv/src/pages/detail-full-screen/api/request-url.ts +8 -0
  184. package/rules/.source/hellotv/src/pages/detail-full-screen/components/media-info.vue +263 -0
  185. package/rules/.source/hellotv/src/pages/detail-full-screen/components/media-player.vue +42 -0
  186. package/rules/.source/hellotv/src/pages/detail-full-screen/components/media-series-section.vue +26 -0
  187. package/rules/.source/hellotv/src/pages/detail-full-screen/components/recommend-item.vue +167 -0
  188. package/rules/.source/hellotv/src/pages/detail-full-screen/index.vue +163 -0
  189. package/rules/.source/hellotv/src/pages/detail-full-screen/scss/index.scss +41 -0
  190. package/rules/.source/hellotv/src/pages/device-info/index.vue +106 -0
  191. package/rules/.source/hellotv/src/pages/device-info/scss/device-info.scss +49 -0
  192. package/rules/.source/hellotv/src/pages/filter/README.md +66 -0
  193. package/rules/.source/hellotv/src/pages/filter/adapter/index.ts +180 -0
  194. package/rules/.source/hellotv/src/pages/filter/adapter/interface.ts +111 -0
  195. package/rules/.source/hellotv/src/pages/filter/api/index.ts +38 -0
  196. package/rules/.source/hellotv/src/pages/filter/api/interface.ts +44 -0
  197. package/rules/.source/hellotv/src/pages/filter/api/request-url.ts +8 -0
  198. package/rules/.source/hellotv/src/pages/filter/components/content/index.vue +469 -0
  199. package/rules/.source/hellotv/src/pages/filter/components/content/list-item-record.vue +16 -0
  200. package/rules/.source/hellotv/src/pages/filter/components/content/list-item.vue +78 -0
  201. package/rules/.source/hellotv/src/pages/filter/components/expand/index.vue +83 -0
  202. package/rules/.source/hellotv/src/pages/filter/components/sidebar/index.vue +81 -0
  203. package/rules/.source/hellotv/src/pages/filter/components/sidebar/list-item-filter-title.vue +78 -0
  204. package/rules/.source/hellotv/src/pages/filter/components/sidebar/list-item-filter.vue +68 -0
  205. package/rules/.source/hellotv/src/pages/filter/components/sidebar/list-item-line.vue +11 -0
  206. package/rules/.source/hellotv/src/pages/filter/components/sidebar/list-item-text.vue +43 -0
  207. package/rules/.source/hellotv/src/pages/filter/components/sidebar/list-item-title.vue +14 -0
  208. package/rules/.source/hellotv/src/pages/filter/config.ts +10 -0
  209. package/rules/.source/hellotv/src/pages/filter/expand-sidebar-contents.vue +203 -0
  210. package/rules/.source/hellotv/src/pages/filter/scss/filter-content-list-item.scss +42 -0
  211. package/rules/.source/hellotv/src/pages/filter/scss/filter-content.scss +60 -0
  212. package/rules/.source/hellotv/src/pages/filter/scss/filter-expand.scss +30 -0
  213. package/rules/.source/hellotv/src/pages/filter/scss/filter-sidebar.scss +45 -0
  214. package/rules/.source/hellotv/src/pages/filter/scss/filter.scss +21 -0
  215. package/rules/.source/hellotv/src/pages/filter/sidebar-contents.vue +145 -0
  216. package/rules/.source/hellotv/src/pages/filter/single-contents.vue +61 -0
  217. package/rules/.source/hellotv/src/pages/history/adapter/index.ts +51 -0
  218. package/rules/.source/hellotv/src/pages/history/adapter/interface.ts +22 -0
  219. package/rules/.source/hellotv/src/pages/history/api/index.ts +54 -0
  220. package/rules/.source/hellotv/src/pages/history/api/interface.ts +41 -0
  221. package/rules/.source/hellotv/src/pages/history/api/request-url.ts +10 -0
  222. package/rules/.source/hellotv/src/pages/history/components/confirm-dialog.vue +155 -0
  223. package/rules/.source/hellotv/src/pages/history/config.ts +8 -0
  224. package/rules/.source/hellotv/src/pages/history/index-raw.vue +540 -0
  225. package/rules/.source/hellotv/src/pages/history/index.vue +431 -0
  226. package/rules/.source/hellotv/src/pages/history/mock.ts +32 -0
  227. package/rules/.source/hellotv/src/pages/history/scss/history-raw.scss +181 -0
  228. package/rules/.source/hellotv/src/pages/history/scss/history.scss +148 -0
  229. package/rules/.source/hellotv/src/pages/home/adapter/exit/home-exit-adapter.ts +20 -0
  230. package/rules/.source/hellotv/src/pages/home/adapter/exit/home-exit-imp.ts +13 -0
  231. package/rules/.source/hellotv/src/pages/home/adapter/media/create-home-player-interceptor.ts +50 -0
  232. package/rules/.source/hellotv/src/pages/home/adapter/media/home-media-imp.ts +74 -0
  233. package/rules/.source/hellotv/src/pages/home/adapter/tab-bar/tab-bar-adapter.ts +151 -0
  234. package/rules/.source/hellotv/src/pages/home/adapter/tab-bar/tab-bar-config.ts +17 -0
  235. package/rules/.source/hellotv/src/pages/home/adapter/tab-bar/tab-bar-imp.ts +53 -0
  236. package/rules/.source/hellotv/src/pages/home/adapter/tab-bar/tab-bar-item-type.ts +6 -0
  237. package/rules/.source/hellotv/src/pages/home/adapter/tab-content/tab-content-adapter.ts +1304 -0
  238. package/rules/.source/hellotv/src/pages/home/adapter/tab-content/tab-content-config.ts +30 -0
  239. package/rules/.source/hellotv/src/pages/home/adapter/tab-content/tab-content-imp.ts +173 -0
  240. package/rules/.source/hellotv/src/pages/home/adapter/tab-content/tab-content-item-type.ts +17 -0
  241. package/rules/.source/hellotv/src/pages/home/api/index.ts +157 -0
  242. package/rules/.source/hellotv/src/pages/home/api/interface.ts +56 -0
  243. package/rules/.source/hellotv/src/pages/home/api/request-url.ts +22 -0
  244. package/rules/.source/hellotv/src/pages/home/components/exit-dialog.vue +148 -0
  245. package/rules/.source/hellotv/src/pages/home/components/media/bg-player.vue +440 -0
  246. package/rules/.source/hellotv/src/pages/home/components/nav-bar/bar-img-item.vue +39 -0
  247. package/rules/.source/hellotv/src/pages/home/components/nav-bar/bar-text-item.vue +100 -0
  248. package/rules/.source/hellotv/src/pages/home/components/tab-content/bg-player-cell-list-item-img.vue +54 -0
  249. package/rules/.source/hellotv/src/pages/home/components/tab-content/bg-player-cell-list-item-text.vue +67 -0
  250. package/rules/.source/hellotv/src/pages/home/components/tab-content/cell-list-player-item.vue +74 -0
  251. package/rules/.source/hellotv/src/pages/home/components/tab-content/cell-player-item.vue +40 -0
  252. package/rules/.source/hellotv/src/pages/home/components/tab-content/focus-change-img-item.vue +41 -0
  253. package/rules/.source/hellotv/src/pages/home/components/tab-content/history-item.vue +362 -0
  254. package/rules/.source/hellotv/src/pages/home/components/tab-content/inner-out-title-item.vue +60 -0
  255. package/rules/.source/hellotv/src/pages/home/components/tab-content/no-title-item.vue +46 -0
  256. package/rules/.source/hellotv/src/pages/home/components/tab-content/placeholder-item.vue +25 -0
  257. package/rules/.source/hellotv/src/pages/home/components/tab-content/short-video/short-video-section-item.vue +80 -0
  258. package/rules/.source/hellotv/src/pages/home/components/tab-content/short-video/short-video-section.vue +70 -0
  259. package/rules/.source/hellotv/src/pages/home/components/tab-content/small-4k/small-four-section.vue +76 -0
  260. package/rules/.source/hellotv/src/pages/home/components/tab-content/world-4k/world-four-section-item.vue +90 -0
  261. package/rules/.source/hellotv/src/pages/home/components/tab-content/world-4k/world-four-section.vue +57 -0
  262. package/rules/.source/hellotv/src/pages/home/components/waterfall-tabs.vue +1307 -0
  263. package/rules/.source/hellotv/src/pages/home/index.vue +117 -0
  264. package/rules/.source/hellotv/src/pages/home/scss/bar-img-item.scss +11 -0
  265. package/rules/.source/hellotv/src/pages/home/scss/bar-text-item.scss +80 -0
  266. package/rules/.source/hellotv/src/pages/home/scss/base.scss +8 -0
  267. package/rules/.source/hellotv/src/pages/home/scss/bg-player-cell-list-item.scss +24 -0
  268. package/rules/.source/hellotv/src/pages/home/scss/bg-player.scss +50 -0
  269. package/rules/.source/hellotv/src/pages/home/scss/cell-player-item.scss +24 -0
  270. package/rules/.source/hellotv/src/pages/home/scss/exit-dialog.scss +89 -0
  271. package/rules/.source/hellotv/src/pages/home/scss/focus-change-img-item.scss +12 -0
  272. package/rules/.source/hellotv/src/pages/home/scss/home.scss +32 -0
  273. package/rules/.source/hellotv/src/pages/home/scss/inner-out-title-item.scss +24 -0
  274. package/rules/.source/hellotv/src/pages/home/scss/no-title-item.scss +15 -0
  275. package/rules/.source/hellotv/src/pages/home/scss/placeholder-item.scss +14 -0
  276. package/rules/.source/hellotv/src/pages/home/scss/short-video-section.scss +59 -0
  277. package/rules/.source/hellotv/src/pages/home/scss/small-four-section.scss +14 -0
  278. package/rules/.source/hellotv/src/pages/home/scss/waterfall-tabs.scss +50 -0
  279. package/rules/.source/hellotv/src/pages/home/scss/world-four-section.scss +106 -0
  280. package/rules/.source/hellotv/src/pages/introduction/index.vue +227 -0
  281. package/rules/.source/hellotv/src/pages/live/components/menu/first-list-item-icon-text.vue +35 -0
  282. package/rules/.source/hellotv/src/pages/live/components/menu/first-list-item-img.vue +16 -0
  283. package/rules/.source/hellotv/src/pages/live/components/menu/first-list-item-text.vue +16 -0
  284. package/rules/.source/hellotv/src/pages/live/components/menu/index.vue +266 -0
  285. package/rules/.source/hellotv/src/pages/live/components/menu/second-list-item.vue +80 -0
  286. package/rules/.source/hellotv/src/pages/live/components/menu/third-list-item.vue +68 -0
  287. package/rules/.source/hellotv/src/pages/live/components/player/index.vue +168 -0
  288. package/rules/.source/hellotv/src/pages/live/components/player/player-error.vue +48 -0
  289. package/rules/.source/hellotv/src/pages/live/components/player/player-loading.vue +50 -0
  290. package/rules/.source/hellotv/src/pages/live/components/player/player-tips.vue +125 -0
  291. package/rules/.source/hellotv/src/pages/live/components/player/tips-icon-text.vue +27 -0
  292. package/rules/.source/hellotv/src/pages/live/css/menu.css +109 -0
  293. package/rules/.source/hellotv/src/pages/live/css/player.css +56 -0
  294. package/rules/.source/hellotv/src/pages/live/index.vue +128 -0
  295. package/rules/.source/hellotv/src/pages/live/mock/index.ts +263 -0
  296. package/rules/.source/hellotv/src/pages/live/types/index.ts +42 -0
  297. package/rules/.source/hellotv/src/pages/login/index.vue +116 -0
  298. package/rules/.source/hellotv/src/pages/login/scss/login.scss +61 -0
  299. package/rules/.source/hellotv/src/pages/m-test.vue +84 -0
  300. package/rules/.source/hellotv/src/pages/my/README.md +87 -0
  301. package/rules/.source/hellotv/src/pages/my/index.vue +177 -0
  302. package/rules/.source/hellotv/src/pages/my/my-data-manager.ts +606 -0
  303. package/rules/.source/hellotv/src/pages/my/my-templates.vue +24 -0
  304. package/rules/.source/hellotv/src/pages/my/poster/index.vue +98 -0
  305. package/rules/.source/hellotv/src/pages/my/poster/my-card2.vue +90 -0
  306. package/rules/.source/hellotv/src/pages/my/poster/my-icon-title-col.vue +72 -0
  307. package/rules/.source/hellotv/src/pages/my/poster/my-icon-title-row.vue +72 -0
  308. package/rules/.source/hellotv/src/pages/my/poster/my-info.vue +50 -0
  309. package/rules/.source/hellotv/src/pages/my/poster/my-user.vue +126 -0
  310. package/rules/.source/hellotv/src/pages/play-test.vue +95 -0
  311. package/rules/.source/hellotv/src/pages/search/README.md +57 -0
  312. package/rules/.source/hellotv/src/pages/search/adapter/index.ts +285 -0
  313. package/rules/.source/hellotv/src/pages/search/adapter/interface.ts +60 -0
  314. package/rules/.source/hellotv/src/pages/search/api/index.ts +100 -0
  315. package/rules/.source/hellotv/src/pages/search/api/interface.ts +64 -0
  316. package/rules/.source/hellotv/src/pages/search/api/request-url.ts +20 -0
  317. package/rules/.source/hellotv/src/pages/search/components/search-content-tabs.vue +153 -0
  318. package/rules/.source/hellotv/src/pages/search/components/search-content.vue +282 -0
  319. package/rules/.source/hellotv/src/pages/search/components/search-keyboard.vue +252 -0
  320. package/rules/.source/hellotv/src/pages/search/components/search-keyword-grid.vue +85 -0
  321. package/rules/.source/hellotv/src/pages/search/components/search-keyword.vue +346 -0
  322. package/rules/.source/hellotv/src/pages/search/config.ts +10 -0
  323. package/rules/.source/hellotv/src/pages/search/scss/search-content.scss +130 -0
  324. package/rules/.source/hellotv/src/pages/search/scss/search-keyboard.scss +91 -0
  325. package/rules/.source/hellotv/src/pages/search/scss/search-keyword-grid.scss +30 -0
  326. package/rules/.source/hellotv/src/pages/search/scss/search-keyword.scss +104 -0
  327. package/rules/.source/hellotv/src/pages/search/scss/search.scss +18 -0
  328. package/rules/.source/hellotv/src/pages/search/three-columns.vue +164 -0
  329. package/rules/.source/hellotv/src/pages/search/two-columns.vue +128 -0
  330. package/rules/.source/hellotv/src/pages/tabs-test.vue +339 -0
  331. package/rules/.source/hellotv/src/pages/webview/load-web-view.vue +44 -0
  332. package/rules/.source/hellotv/src/routes.ts +142 -0
  333. package/rules/.source/hellotv/src/tools/common.ts +18 -0
  334. package/rules/.source/hellotv/src/tools/format-date.ts +16 -0
  335. package/rules/.source/hellotv/src/tools/index.ts +58 -0
  336. package/rules/.source/hellotv/src/tools/launch.ts +339 -0
  337. package/rules/.source/hellotv/src/tools/request/index.ts +206 -0
  338. package/rules/.source/hellotv/src/tools/request/interface.ts +64 -0
  339. package/rules/.source/hellotv/src/typings/shims-vue.d.ts +6 -0
  340. package/rules/.source/hellotv/src/vue.config.js +3 -0
  341. package/rules/.source/hellotv/tsconfig.json +34 -0
  342. package/rules/.windsurfrules +1 -0
  343. package/rules/AGENTS.md +1 -0
  344. package/rules/CLAUDE.md +1 -0
  345. package/rules/GEMINI.md +1 -0
@@ -0,0 +1,148 @@
1
+ .history {
2
+ width: 1920px;
3
+ height: 1080px;
4
+ background-color: transparent;
5
+ flex-direction: row;
6
+ }
7
+
8
+ .history-sidebar {
9
+ width: 340px;
10
+ height: 1080px;
11
+ background-color: rgba(255, 255, 255, 0.03);
12
+ }
13
+
14
+ .history-sidebar-tips {
15
+ width: 340px;
16
+ height: 50px;
17
+ background-color: transparent;
18
+ margin-top: 75px;
19
+ margin-bottom: 30px;
20
+ color: white;
21
+ font-size: 40px;
22
+ }
23
+
24
+ .history-sidebar-item {
25
+ width: 340px;
26
+ height: 106px;
27
+ background-color: transparent;
28
+ align-items: center;
29
+ justify-content: center;
30
+ focus-background-color: $theme-btn-focus-color;
31
+ focus-border-radius: 8px;
32
+ }
33
+
34
+ .history-sidebar-item-text {
35
+ width: 340px;
36
+ height: 106px;
37
+ background-color: transparent;
38
+ position: absolute;
39
+ color: $theme-text-normal-color;
40
+ font-size: 36px;
41
+ focus-color: $theme-text-focus-color;
42
+ select-color: $theme-text-select-color;
43
+ }
44
+
45
+ .history-content {
46
+ width: 1580px;
47
+ height: 1080px;
48
+ background-color: transparent;
49
+ }
50
+
51
+ .history-content-btns {
52
+ width: 1500px;
53
+ height: 60px;
54
+ background-color: transparent;
55
+ margin-top: 40px;
56
+ flex-direction: row;
57
+ align-items: center;
58
+ justify-content: flex-end;
59
+ }
60
+
61
+ .history-content-tips {
62
+ width: 1500px;
63
+ height: 60px;
64
+ background-color: transparent;
65
+ margin-top: 40px;
66
+ color: rgba(255, 255, 255, 0.55);
67
+ font-size: 30px;
68
+ }
69
+
70
+ .history-content-loading {
71
+ width: 1580px;
72
+ height: 1000px;
73
+ background-color: transparent;
74
+ align-items: center;
75
+ justify-content: center;
76
+ }
77
+
78
+ .history-content-empty {
79
+ width: 1580px;
80
+ height: 1000px;
81
+ background-color: transparent;
82
+ align-items: center;
83
+ justify-content: center;
84
+ }
85
+
86
+ .history-content-empty-text {
87
+ width: 180px;
88
+ height: 40px;
89
+ background-color: transparent;
90
+ color: rgba(255, 255, 255, 0.55);
91
+ font-size: 30px;
92
+ }
93
+
94
+ .history-content-ul {
95
+ width: 1460px;
96
+ height: 1080px;
97
+ background-color: transparent;
98
+ margin-top: 25px;
99
+ margin-left: 60px;
100
+ }
101
+
102
+ .history-content-ul-item {
103
+ width: 325px;
104
+ height: 266px;
105
+ background-color: transparent;
106
+ }
107
+
108
+ .history-content-ul-item-delete {
109
+ width: 325px;
110
+ height: 186px;
111
+ background-color: rgba(0, 0, 0, 0.65);
112
+ align-items: center;
113
+ justify-content: center;
114
+ position: absolute;
115
+ z-index: 100;
116
+ }
117
+
118
+ .history-content-ul-item-title {
119
+ width: 325px;
120
+ height: 40px;
121
+ background-color: transparent;
122
+ position: absolute;
123
+ color: $theme-text-normal-color;
124
+ font-size: 30px;
125
+ focus-color: white;
126
+ }
127
+
128
+ .history-content-ul-item-progress {
129
+ width: 325px;
130
+ height: 34px;
131
+ background-color: transparent;
132
+ color: $theme-text-normal-color;
133
+ font-size: 24px;
134
+ }
135
+
136
+ .history-content-ul-item-end {
137
+ width: 1580px;
138
+ height: 100px;
139
+ background-color: transparent;
140
+ }
141
+
142
+ .history-content-ul-item-end-text {
143
+ width: 1580px;
144
+ height: 100px;
145
+ background-color: transparent;
146
+ color: rgba(255, 255, 255, 0.55);
147
+ font-size: 28px;
148
+ }
@@ -0,0 +1,20 @@
1
+ import { QTListViewItem } from "@quicktvui/quicktvui3";
2
+ import { ExitListItem } from "./home-exit-imp";
3
+
4
+ export function buildExitList(res: Array<ExitListItem>): Array<QTListViewItem> {
5
+ const listData: QTListViewItem[] = [];
6
+ if (res && res.length > 0) {
7
+ res.forEach((item, index) => {
8
+ listData.push({
9
+ type: 1,
10
+ title: item.title,
11
+ image: {
12
+ normal: item.cover,
13
+ },
14
+ decoration: { left: 40, right: index === res.length - 1 ? 40 : 0 },
15
+ jumpParams: item.jumpParams,
16
+ });
17
+ });
18
+ }
19
+ return listData;
20
+ }
@@ -0,0 +1,13 @@
1
+ import { LaunchParams } from "../../../../tools/launch";
2
+
3
+ export interface TopResource {
4
+ url: string;
5
+ //跳转参数
6
+ jumpParams?: LaunchParams;
7
+ }
8
+
9
+ export interface ExitListItem {
10
+ title: string;
11
+ cover: string;
12
+ jumpParams: LaunchParams;
13
+ }
@@ -0,0 +1,50 @@
1
+ import {
2
+ ESIPlayerInterceptor,
3
+ ESMediaSourceList,
4
+ ESPlayerInterceptorType,
5
+ ESPlayerInterceptResult,
6
+ } from "@extscreen/es3-player";
7
+ import { ESMediaItem } from "@extscreen/es3-player-manager";
8
+ import homeManager from "../../api";
9
+ import { encodeDefinition } from "../../../../components/media/build-data/media-control-adapter";
10
+
11
+ export const createHomePlayerInterceptor = (): ESIPlayerInterceptor => {
12
+ const intercept = async (
13
+ ...params: Array<any>
14
+ ): Promise<ESPlayerInterceptResult> => {
15
+ try {
16
+ const mediaItem = params[0] as ESMediaItem;
17
+ const id: string = mediaItem.id + "";
18
+ const type: number = mediaItem.type;
19
+ const urls = await homeManager.getHomePlayUrl(id, type);
20
+ if (urls && urls.length > 0) {
21
+ const mediaSourceList: ESMediaSourceList = {
22
+ index: 0,
23
+ list: [
24
+ {
25
+ uri: urls[0].playUrl,
26
+ definition: urls[0].definition ?? encodeDefinition(),
27
+ },
28
+ ],
29
+ };
30
+ const result: ESPlayerInterceptResult = {
31
+ result: {
32
+ mediaSourceList: mediaSourceList,
33
+ },
34
+ };
35
+ return Promise.resolve(result);
36
+ } else {
37
+ return Promise.reject("数据为空");
38
+ }
39
+ } catch (e) {
40
+ return Promise.reject(e);
41
+ }
42
+ };
43
+ const release = () => {};
44
+ return {
45
+ id: "homePlayerInterceptor",
46
+ type: ESPlayerInterceptorType.ES_PLAYER_INTERCEPTOR_TYPE_MEDIA_ITEM,
47
+ intercept,
48
+ release,
49
+ };
50
+ };
@@ -0,0 +1,74 @@
1
+ import { IMediaList } from "../../../../components/media/build-data/media-imp";
2
+ /**
3
+ * 首页播放类型
4
+ */
5
+ export enum HomePlayType {
6
+ //未知
7
+ TYPE_UNDEFINED = -1,
8
+ //小窗播放
9
+ TYPE_CELL = 0,
10
+ //小窗列表播放
11
+ TYPE_CELL_LIST = 1,
12
+ //背景播放
13
+ TYPE_BG = 2,
14
+ //4K 播放
15
+ TYPE_4K = 3,
16
+ //短视频 全屏背景播放
17
+ TYPE_SHORT_SCREEN = 4,
18
+ //小 4K 播放
19
+ TYPE_SMALL_4K = 5,
20
+ }
21
+
22
+ /**
23
+ * 小窗列表Item 类型
24
+ */
25
+ export enum CellListItemType {
26
+ //文字类型
27
+ TYPE_TEXT = 1,
28
+ //图片类型
29
+ TYPE_IMG = 2,
30
+ }
31
+ /**
32
+ * 播放状态
33
+ */
34
+ export enum PlayerState {
35
+ //默认
36
+ STATE_WAIT = -1,
37
+ //开始
38
+ STATE_START = 0,
39
+ //播放中
40
+ STATE_PLAYING = 1,
41
+ //暂停
42
+ STATE_PAUSE = 2,
43
+ //停止
44
+ STATE_STOP = 3,
45
+ //恢复播放器播放
46
+ STATE_RESUME = 4,
47
+ //重置播放器
48
+ STATE_RESET = 5,
49
+ //回收播放器资源
50
+ STATE_RELEASE = 6,
51
+ }
52
+
53
+ /**
54
+ * 首页播放器数据
55
+ */
56
+ export interface HomePlayData {
57
+ //播放类型
58
+ type: HomePlayType;
59
+ //播放窗口宽
60
+ windowWidth: number;
61
+ //播放窗口高
62
+ windowHeight: number;
63
+ //播放器窗口宽
64
+ playerWidth: number;
65
+ //播放器窗口高
66
+ playerHeight: number;
67
+ //播放数据
68
+ playerData: Array<IMediaList>;
69
+ //播放器窗口距离左边距离
70
+ playerLeft: number;
71
+ //播放器窗口距离顶部距离
72
+ playerTop: number;
73
+ [prop: string]: any;
74
+ }
@@ -0,0 +1,151 @@
1
+ import { ESListViewItemDecoration } from "@extscreen/es3-component";
2
+ import { QTTab, QTTabItem } from "@quicktvui/quicktvui3";
3
+ import TabBarConfig from "./tab-bar-config";
4
+ import { BarType, TabBarItem } from "./tab-bar-imp";
5
+ import TabBarItemType from "./tab-bar-item-type";
6
+
7
+ class BarsData {
8
+ barsData: QTTab;
9
+ barsBgUrls: Map<string, string> = new Map<string, string>();
10
+ }
11
+
12
+ const barsDataManager = new BarsData();
13
+ export default barsDataManager;
14
+
15
+ /**
16
+ * build nav bars数据
17
+ * @param tabs
18
+ */
19
+ export function buildTabBarAdapter(bars: Array<TabBarItem>): QTTab {
20
+ let length = bars.length;
21
+ let defFocusIndex = 0;
22
+ //添加我的tab
23
+ if (TabBarConfig.tab.showMineTab && length > 1) {
24
+ length = bars.unshift({
25
+ id: TabBarConfig.tab.id,
26
+ name: TabBarConfig.tab.mineTabName,
27
+ type: BarType.TYPE_TEXT,
28
+ });
29
+ defFocusIndex++;
30
+ }
31
+ const barItemList: Array<QTTabItem> = [];
32
+ for (let i = 0; i < length; i++) {
33
+ const bar = bars[i];
34
+ if (i === defFocusIndex) {
35
+ barsDataManager.barsBgUrls.set("firstShowBg", bar.id);
36
+ }
37
+ //设置默认选中项
38
+ if (bar.isDefault) {
39
+ defFocusIndex = i;
40
+ barsDataManager.barsBgUrls.set("firstShowBg", bar.id);
41
+ }
42
+ //设置左右距离边界间距
43
+ const decoration: ESListViewItemDecoration = {
44
+ left: i === 0 ? TabBarConfig.tab.leftGap : TabBarConfig.tab.defaultGap,
45
+ right:
46
+ i === length - 1
47
+ ? TabBarConfig.tab.rightGap
48
+ : TabBarConfig.tab.defaultGap,
49
+ top: 10,
50
+ };
51
+ const barItem: QTTabItem = buildBarItem(bar, decoration);
52
+ //添加背景图
53
+ barItem["backgroundImg"] = bar.backgroundImage;
54
+ //存储背景图
55
+ if (bar.backgroundImage != null) {
56
+ barsDataManager.barsBgUrls.set(bar.id, bar.backgroundImage);
57
+ }
58
+ //添加跳转数据
59
+ barItem["jumpParams"] = bar.jumpParams;
60
+ barItemList.push(barItem);
61
+ }
62
+ const mBars: QTTab = buildBars(defFocusIndex, defFocusIndex, barItemList);
63
+ barsDataManager.barsData = mBars;
64
+ return mBars;
65
+ }
66
+
67
+ /**
68
+ * 封装bar数据
69
+ * @param bar
70
+ * @param decoration
71
+ */
72
+ export function buildBarItem(
73
+ bar: TabBarItem,
74
+ decoration?: ESListViewItemDecoration,
75
+ ): QTTabItem {
76
+ const type: BarType = bar.type;
77
+ let barItem: QTTabItem;
78
+ switch (type) {
79
+ case BarType.TYPE_TEXT: // 文本类型
80
+ barItem = buildBarTextItem(bar, decoration);
81
+ break;
82
+ case BarType.TYPE_IMG: //图片类型
83
+ barItem = buildBarImgItem(bar, decoration);
84
+ break;
85
+ default: // 默认返回 文本类型
86
+ barItem = buildBarTextItem(bar, decoration);
87
+ break;
88
+ }
89
+ return barItem;
90
+ }
91
+
92
+ /**
93
+ * 文字类型数据封装
94
+ * @param bar
95
+ * @param decoration
96
+ */
97
+ export function buildBarTextItem(
98
+ bar: TabBarItem,
99
+ decoration?: ESListViewItemDecoration,
100
+ ): QTTabItem {
101
+ const type = bar?.corner
102
+ ? TabBarItemType.BAR_CORNER_TYPE
103
+ : TabBarItemType.BAR_TEXT_TYPE;
104
+ const barItem: QTTabItem = {
105
+ _id: bar.id,
106
+ type: type,
107
+ text: bar.title + "",
108
+ titleSize: TabBarConfig.tab.titleSize,
109
+ corner: bar.corner,
110
+ decoration: decoration,
111
+ };
112
+ return barItem;
113
+ }
114
+
115
+ /**
116
+ * 图片类型数据封装
117
+ * @param bar
118
+ * @param decoration
119
+ */
120
+ export function buildBarImgItem(
121
+ bar: TabBarItem,
122
+ decoration?: ESListViewItemDecoration,
123
+ ): QTTabItem {
124
+ const barItem: QTTabItem = {
125
+ _id: bar.id,
126
+ type: TabBarItemType.BAR_IMG_TYPE,
127
+ text: bar?.title + "",
128
+ titleSize: TabBarConfig.tab.titleSize,
129
+ image: bar.image,
130
+ decoration: decoration,
131
+ };
132
+ return barItem;
133
+ }
134
+
135
+ /**
136
+ * 封装整体bars数据
137
+ * @param defFocusIndex
138
+ * @param defIndex
139
+ * @param bars
140
+ */
141
+ export function buildBars(
142
+ defFocusIndex: number = 0,
143
+ defIndex: number = 0,
144
+ bars: Array<QTTabItem>,
145
+ ): QTTab {
146
+ return {
147
+ defaultFocusIndex: defFocusIndex,
148
+ defaultIndex: defIndex,
149
+ itemList: bars,
150
+ };
151
+ }
@@ -0,0 +1,17 @@
1
+ export default {
2
+ tab: {
3
+ // 是否展示"我的"Tab
4
+ showMineTab: false,
5
+ // "我的"Tab展示名称
6
+ mineTabName: "我的",
7
+ id: "_mine",
8
+ //默认导航间距
9
+ defaultGap: 0,
10
+ //最左侧导航间距
11
+ leftGap: 60,
12
+ //最右侧导航间距
13
+ rightGap: 80,
14
+ //导航字体大小
15
+ titleSize: 44,
16
+ },
17
+ };
@@ -0,0 +1,53 @@
1
+ import { LaunchParams } from "../../../../tools/launch";
2
+
3
+ /**
4
+ * 导航类型
5
+ */
6
+ export enum BarType {
7
+ //文本类型
8
+ TYPE_TEXT = 1,
9
+ //图片类型
10
+ TYPE_IMG = 2,
11
+ }
12
+
13
+ /**
14
+ * 导航
15
+ */
16
+ export interface TabBarItem {
17
+ //导航ID
18
+ id: string;
19
+ //导航类型1:文本,2:图片
20
+ type: BarType;
21
+ //导航名称
22
+ title?: string;
23
+ //导航背景图
24
+ backgroundImage?: string;
25
+ //默认选中导航
26
+ isDefault?: boolean;
27
+ //图片类型导航数据
28
+ image?: {
29
+ //默认图
30
+ normal: string;
31
+ //选中图
32
+ selected: string;
33
+ //焦点图
34
+ focused: string;
35
+ //图片尺寸
36
+ style: {
37
+ width: string;
38
+ height: string;
39
+ };
40
+ };
41
+ //文本导航角标
42
+ corner?: {
43
+ //默认图
44
+ normal: string;
45
+ //选中图
46
+ selected: string;
47
+ //焦点图
48
+ focused: string;
49
+ };
50
+ //跳转参数
51
+ jumpParams?: LaunchParams;
52
+ [props: string]: any;
53
+ }
@@ -0,0 +1,6 @@
1
+ export default {
2
+ BAR_TEXT_TYPE: 1, //文字类型
3
+ BAR_IMG_TYPE: 2, //图片类型
4
+ BAR_CORNER_TYPE: 3, //文字+角标 类型
5
+ BAR_CORNER_ICON_TYPE: 4, //文字&文字ICON+角标
6
+ };