@hsu-react/ui 1.0.0 → 2.0.1

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 (709) hide show
  1. package/README.md +15 -6
  2. package/es/components/Button/index.d.ts +49 -8
  3. package/es/components/Button/index.js +68 -25
  4. package/es/components/Button/index.module.scss +38 -0
  5. package/es/components/ChainGraph/_components/ExpandButtons/index.module.scss +5 -3
  6. package/es/components/ChainGraph/_components/SearchSelect/index.module.scss +3 -2
  7. package/es/components/ChainGraph/index.js +3 -1
  8. package/es/components/ChainGraph/index.module.scss +2 -2
  9. package/es/components/Chart/Group/index.module.scss +1 -1
  10. package/es/components/Chat/ChatHistory/_components/HistoryGroup/index.module.scss +1 -1
  11. package/es/components/Chat/ChatHistory/_components/HistoryItem/index.module.scss +13 -13
  12. package/es/components/Chat/ChatHistory/_components/NewChatButton/index.module.scss +6 -6
  13. package/es/components/Chat/ChatHistory/index.module.scss +3 -3
  14. package/es/components/Chat/ChatInput/_components/AgentToggleButton/index.module.scss +9 -9
  15. package/es/components/Chat/ChatInput/_components/FileList/index.module.scss +3 -3
  16. package/es/components/Chat/ChatInput/_components/SendButton/index.module.scss +3 -3
  17. package/es/components/Chat/ChatInput/_components/StopButton/index.module.scss +2 -2
  18. package/es/components/Chat/ChatInput/_components/UploadButton/index.js +1 -1
  19. package/es/components/Chat/ChatInput/_components/UploadButton/index.module.scss +3 -3
  20. package/es/components/Chat/ChatInput/_utils/index.js +1 -1
  21. package/es/components/Chat/ChatInput/index.module.scss +12 -11
  22. package/es/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/Copy/index.js +1 -1
  23. package/es/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/Copy/index.module.scss +6 -6
  24. package/es/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/LikeDislike/index.js +3 -1
  25. package/es/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/LikeDislike/index.module.scss +6 -6
  26. package/es/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/QuoteList/index.module.scss +8 -8
  27. package/es/components/Chat/ChatList/_components/Assistant/AssistantItem/index.module.scss +7 -7
  28. package/es/components/Chat/ChatList/_components/Assistant/index.module.scss +3 -3
  29. package/es/components/Chat/ChatList/_components/User/index.module.scss +21 -10
  30. package/es/components/Chat/ChatList/index.js +35 -30
  31. package/es/components/Checkbox/CheckboxGroup/index.module.scss +10 -13
  32. package/es/components/Checkbox/index.module.scss +23 -28
  33. package/es/components/CodeMirror/index.module.scss +6 -6
  34. package/es/components/Copy/index.d.ts +8 -2
  35. package/es/components/Copy/index.js +45 -22
  36. package/es/components/Copy/index.module.scss +5 -5
  37. package/es/components/DatePicker/RangePicker/index.js +5 -1
  38. package/es/components/DatePicker/RangePicker/index.module.scss +10 -1
  39. package/es/components/DatePicker/StepPicker/index.module.scss +6 -4
  40. package/es/components/DatePicker/index.js +14 -3
  41. package/es/components/DatePicker/index.module.scss +2 -2
  42. package/es/components/Descriptions/index.d.ts +6 -2
  43. package/es/components/Descriptions/index.js +15 -8
  44. package/es/components/Editor/index.module.scss +7 -7
  45. package/es/components/FileCol/index.js +3 -3
  46. package/es/components/FilePreview/_components/BasePreview/index.module.scss +3 -3
  47. package/es/components/FilePreview/_components/PdfPreview/index.js +9 -2
  48. package/es/components/FilePreview/_components/PdfPreview/index.module.scss +7 -7
  49. package/es/components/FilePreview/index.module.scss +4 -4
  50. package/es/components/Form/DrawerForm/index.js +10 -18
  51. package/es/components/Form/ImportForm/index.js +15 -16
  52. package/es/components/Form/ModalForm/index.d.ts +1 -1
  53. package/es/components/Form/ModalForm/index.js +14 -16
  54. package/es/components/Form/index.d.ts +12 -0
  55. package/es/components/Form/index.js +7 -1
  56. package/es/components/FormItem/FormInput/FormPasswordStrength/index.module.scss +3 -3
  57. package/es/components/FormItem/FormRadio/index.module.scss +11 -13
  58. package/es/components/FormItem/FormSegmented/index.module.scss +1 -1
  59. package/es/components/FormItem/FormSlider/index.module.scss +1 -1
  60. package/es/components/FormItem/FormUpload/FormImage/index.js +1 -1
  61. package/es/components/FormItem/FormUpload/index.js +2 -1
  62. package/es/components/FormItem/FormUpload/index.module.scss +17 -17
  63. package/es/components/FormItem/ItemContainer/index.js +4 -4
  64. package/es/components/FormItem/ItemContainer/index.module.scss +33 -7
  65. package/es/components/Input/Number/index.js +41 -55
  66. package/es/components/Input/Number/index.module.scss +27 -54
  67. package/es/components/Input/Range/index.module.scss +16 -5
  68. package/es/components/Input/TextArea/index.module.scss +13 -13
  69. package/es/components/Input/index.d.ts +3 -1
  70. package/es/components/Input/index.js +2 -0
  71. package/es/components/Input/index.module.scss +1 -1
  72. package/es/components/Markdown/Editor/index.module.scss +4 -4
  73. package/es/components/Markdown/Views/MermaidBlock.js +15 -1
  74. package/es/components/Markdown/Views/blocks.module.scss +13 -13
  75. package/es/components/Markdown/Views/index.module.scss +3 -3
  76. package/es/components/Modal/index.d.ts +12 -2
  77. package/es/components/Modal/index.js +31 -11
  78. package/es/components/Modal/index.module.scss +11 -1
  79. package/es/components/Operate/index.js +3 -1
  80. package/es/components/Operate/index.module.scss +1 -1
  81. package/es/components/Pagination/index.module.scss +19 -18
  82. package/es/components/Panel/DefaultPanel/index.module.scss +3 -3
  83. package/es/components/Panel/IframePanel/index.js +3 -1
  84. package/es/components/Panel/IframePanel/index.module.scss +2 -2
  85. package/es/components/Panel/ListPanel/ListModalPanel/index.d.ts +2 -2
  86. package/es/components/Panel/ListPanel/ListModalPanel/index.module.scss +2 -2
  87. package/es/components/Panel/ListPanel/_components/ColumnMgt/index.js +9 -17
  88. package/es/components/Panel/ListPanel/_components/ColumnMgt/index.module.scss +3 -3
  89. package/es/components/Panel/ListPanel/_components/ToolBar/index.js +1 -1
  90. package/es/components/Panel/ListPanel/_components/ToolBar/index.module.scss +14 -1
  91. package/es/components/Panel/ListPanel/index.d.ts +2 -2
  92. package/es/components/Panel/ListPanel/index.module.scss +9 -9
  93. package/es/components/Search/SearchAdvanced/index.d.ts +3 -3
  94. package/es/components/Search/SearchCard/index.module.scss +15 -15
  95. package/es/components/Search/SearchCollapsible/index.d.ts +3 -3
  96. package/es/components/Search/SearchWithFilter/index.d.ts +3 -3
  97. package/es/components/Search/SearchWithMore/index.d.ts +3 -3
  98. package/es/components/Search/_components/ButtonGroup/index.d.ts +4 -4
  99. package/es/components/Search/_components/ButtonGroup/index.js +2 -2
  100. package/es/components/Search/_components/FilterDropdown/index.js +3 -1
  101. package/es/components/Search/_hooks/useSearchCommon.d.ts +3 -3
  102. package/es/components/Search/_types/index.d.ts +3 -3
  103. package/es/components/Search/index.d.ts +3 -3
  104. package/es/components/Search/index.module.scss +33 -5
  105. package/es/components/SecondConf/index.js +16 -6
  106. package/es/components/SecondConf/index.module.scss +3 -3
  107. package/es/components/Select/AutoCompleteSelect/index.js +17 -7
  108. package/es/components/Select/AutoCompleteSelect/index.module.scss +73 -132
  109. package/es/components/Select/IconSelect/index.js +67 -60
  110. package/es/components/Select/IconSelect/index.module.scss +4 -3
  111. package/es/components/Select/TreeSelect/_utils/getExpandedKeysByLevel.d.ts +1 -1
  112. package/es/components/Select/TreeSelect/index.js +18 -7
  113. package/es/components/Select/TreeSelect/index.module.scss +19 -44
  114. package/es/components/Select/index.d.ts +17 -2
  115. package/es/components/Select/index.js +22 -4
  116. package/es/components/Select/index.module.scss +71 -131
  117. package/es/components/Slider/index.module.scss +1 -1
  118. package/es/components/Switch/index.module.scss +1 -1
  119. package/es/components/TabBar/index.module.scss +11 -11
  120. package/es/components/Table/_components/Drag/index.js +4 -1
  121. package/es/components/Table/_hooks/useTableColumns.js +1 -1
  122. package/es/components/Table/_utils/tableUtils.d.ts +1 -1
  123. package/es/components/Table/_utils/tableUtils.js +4 -3
  124. package/es/components/Table/index.d.ts +18 -2
  125. package/es/components/Table/index.js +9 -0
  126. package/es/components/Table/index.module.scss +14 -14
  127. package/es/components/Tags/_components/EllipsisTag/index.js +1 -1
  128. package/es/components/TextEllipsis/index.js +12 -8
  129. package/es/components/Tree/index.d.ts +8 -2
  130. package/es/components/Tree/index.js +2 -0
  131. package/es/components/Tree/index.module.scss +6 -6
  132. package/es/components/Upload/_components/UploadedItem/index.js +3 -3
  133. package/es/components/Upload/_components/UploadingItem/index.js +3 -3
  134. package/es/components/Upload/_utils/normalUpload.d.ts +1 -1
  135. package/es/components/Upload/_utils/validateFile.js +49 -2
  136. package/es/components/Upload/index.d.ts +8 -2
  137. package/es/components/Upload/index.js +11 -4
  138. package/es/config-provider/index.d.ts +34 -2
  139. package/es/config-provider/index.js +59 -5
  140. package/es/feedback/index.d.ts +20 -0
  141. package/es/feedback/index.js +130 -0
  142. package/es/hooks/index.d.ts +5 -0
  143. package/es/hooks/index.js +4 -1
  144. package/es/hooks/useBreakpoint.d.ts +24 -0
  145. package/es/hooks/useBreakpoint.js +57 -0
  146. package/es/hooks/useIsDark.d.ts +9 -0
  147. package/es/hooks/useIsDark.js +64 -0
  148. package/es/hooks/usePointerType.d.ts +22 -0
  149. package/es/hooks/usePointerType.js +62 -0
  150. package/es/index.d.ts +4 -4
  151. package/es/index.js +19 -5
  152. package/es/layout/Breadcrumb/_components/BreadcrumbItemIcon/index.d.ts +10 -0
  153. package/es/layout/Breadcrumb/_components/BreadcrumbItemIcon/index.js +19 -0
  154. package/es/layout/Breadcrumb/_components/BreadcrumbMenuItem/index.d.ts +11 -0
  155. package/es/layout/Breadcrumb/_components/BreadcrumbMenuItem/index.js +26 -0
  156. package/es/layout/Breadcrumb/_hooks/useBreadcrumbPath.d.ts +5 -0
  157. package/es/layout/Breadcrumb/_hooks/useBreadcrumbPath.js +104 -0
  158. package/es/layout/Breadcrumb/_utils/formatMenu.d.ts +9 -0
  159. package/es/layout/Breadcrumb/_utils/formatMenu.js +28 -0
  160. package/es/layout/Breadcrumb/_utils/formatRoutes.d.ts +9 -0
  161. package/es/layout/Breadcrumb/_utils/formatRoutes.js +76 -0
  162. package/es/layout/Breadcrumb/_utils/pathMatch.d.ts +8 -0
  163. package/es/layout/Breadcrumb/_utils/pathMatch.js +45 -0
  164. package/es/layout/Breadcrumb/index.d.ts +19 -0
  165. package/es/layout/Breadcrumb/index.js +96 -0
  166. package/es/layout/Breadcrumb/index.module.scss +15 -0
  167. package/es/layout/Header/index.d.ts +39 -0
  168. package/es/layout/Header/index.js +166 -0
  169. package/es/layout/Header/index.module.scss +215 -0
  170. package/es/layout/I18n/I18nStore.d.ts +29 -0
  171. package/es/layout/I18n/I18nStore.js +94 -0
  172. package/es/layout/I18n/index.d.ts +14 -0
  173. package/es/layout/I18n/index.js +33 -0
  174. package/es/layout/I18n/locales/en-US.d.ts +2 -0
  175. package/es/layout/I18n/locales/en-US.js +15 -0
  176. package/es/layout/I18n/locales/zh-CN.d.ts +2 -0
  177. package/es/layout/I18n/locales/zh-CN.js +15 -0
  178. package/es/layout/Menu/_components/SecondaryHeader/index.d.ts +22 -0
  179. package/es/layout/Menu/_components/SecondaryHeader/index.js +48 -0
  180. package/es/layout/Menu/_components/SecondaryHeader/index.module.scss +65 -0
  181. package/es/layout/Menu/_hooks/useMenuPath.d.ts +17 -0
  182. package/es/layout/Menu/_hooks/useMenuPath.js +91 -0
  183. package/es/layout/Menu/_hooks/useOnlyLvOneMenu.d.ts +13 -0
  184. package/es/layout/Menu/_hooks/useOnlyLvOneMenu.js +25 -0
  185. package/es/layout/Menu/_utils/formatMenu.d.ts +10 -0
  186. package/es/layout/Menu/_utils/formatMenu.js +55 -0
  187. package/es/layout/Menu/_utils/pathMatch.d.ts +8 -0
  188. package/es/layout/Menu/_utils/pathMatch.js +42 -0
  189. package/es/layout/Menu/_utils/setActiveIcon.d.ts +7 -0
  190. package/es/layout/Menu/_utils/setActiveIcon.js +20 -0
  191. package/es/layout/Menu/index.d.ts +34 -0
  192. package/es/layout/Menu/index.js +195 -0
  193. package/es/layout/Menu/index.module.scss +50 -0
  194. package/es/layout/NavTabBar/_components/SortableTab/index.d.ts +9 -0
  195. package/es/layout/NavTabBar/_components/SortableTab/index.js +34 -0
  196. package/es/layout/NavTabBar/_components/TabContextMenu/index.d.ts +20 -0
  197. package/es/layout/NavTabBar/_components/TabContextMenu/index.js +124 -0
  198. package/es/layout/NavTabBar/_components/TabDragOverlay/index.d.ts +20 -0
  199. package/es/layout/NavTabBar/_components/TabDragOverlay/index.js +50 -0
  200. package/es/layout/NavTabBar/_components/TabLabel/index.d.ts +22 -0
  201. package/es/layout/NavTabBar/_components/TabLabel/index.js +61 -0
  202. package/es/layout/NavTabBar/_hooks/useDropTabKey.d.ts +5 -0
  203. package/es/layout/NavTabBar/_hooks/useDropTabKey.js +25 -0
  204. package/es/layout/NavTabBar/_hooks/useTabContextMenu.d.ts +8 -0
  205. package/es/layout/NavTabBar/_hooks/useTabContextMenu.js +31 -0
  206. package/es/layout/NavTabBar/_hooks/useTabPath.d.ts +16 -0
  207. package/es/layout/NavTabBar/_hooks/useTabPath.js +131 -0
  208. package/es/layout/NavTabBar/_hooks/useTabTitle.d.ts +5 -0
  209. package/es/layout/NavTabBar/_hooks/useTabTitle.js +29 -0
  210. package/es/layout/NavTabBar/_utils/formatNavTabBar.d.ts +9 -0
  211. package/es/layout/NavTabBar/_utils/formatNavTabBar.js +48 -0
  212. package/es/layout/NavTabBar/_utils/pathMatch.d.ts +8 -0
  213. package/es/layout/NavTabBar/_utils/pathMatch.js +33 -0
  214. package/es/layout/NavTabBar/_utils/tabActions.d.ts +21 -0
  215. package/es/layout/NavTabBar/_utils/tabActions.js +114 -0
  216. package/es/layout/NavTabBar/index.d.ts +21 -0
  217. package/es/layout/NavTabBar/index.js +224 -0
  218. package/es/layout/NavTabBar/index.module.scss +179 -0
  219. package/es/layout/Theme/ThemeStore.d.ts +18 -0
  220. package/es/layout/Theme/ThemeStore.js +80 -0
  221. package/es/layout/Theme/index.d.ts +30 -0
  222. package/es/layout/Theme/index.js +89 -0
  223. package/es/layout/Theme/index.module.scss +6 -0
  224. package/es/layout/_hooks/useDropTab.d.ts +6 -0
  225. package/es/layout/_hooks/useDropTab.js +13 -0
  226. package/es/layout/_hooks/useReload.d.ts +6 -0
  227. package/es/layout/_hooks/useReload.js +10 -0
  228. package/es/layout/_hooks/useSetTabTitle.d.ts +6 -0
  229. package/es/layout/_hooks/useSetTabTitle.js +10 -0
  230. package/es/layout/_utils/storage.d.ts +6 -0
  231. package/es/layout/_utils/storage.js +32 -0
  232. package/es/layout/index.d.ts +54 -0
  233. package/es/layout/index.js +58 -0
  234. package/es/layout/types.d.ts +51 -0
  235. package/es/layout/types.js +1 -0
  236. package/es/request/index.js +15 -1
  237. package/es/styles/_responsive.scss +53 -0
  238. package/es/styles/antd-overload.scss +77 -21
  239. package/es/styles/tokens.d.ts +113 -13
  240. package/es/styles/tokens.js +176 -28
  241. package/es/styles/tokens.json +82 -0
  242. package/es/styles/tokens.scss +99 -52
  243. package/es/types/antd.d.ts +35 -0
  244. package/es/types/antd.js +1 -0
  245. package/es/utils/semantic.d.ts +31 -0
  246. package/es/utils/semantic.js +37 -0
  247. package/lib/components/Button/index.d.ts +49 -8
  248. package/lib/components/Button/index.js +62 -20
  249. package/lib/components/Button/index.module.scss +38 -0
  250. package/lib/components/ChainGraph/_components/ExpandButtons/index.module.scss +5 -3
  251. package/lib/components/ChainGraph/_components/SearchSelect/index.module.scss +3 -2
  252. package/lib/components/ChainGraph/index.js +3 -1
  253. package/lib/components/ChainGraph/index.module.scss +2 -2
  254. package/lib/components/Chart/Group/index.module.scss +1 -1
  255. package/lib/components/Chat/ChatHistory/_components/HistoryGroup/index.module.scss +1 -1
  256. package/lib/components/Chat/ChatHistory/_components/HistoryItem/index.module.scss +13 -13
  257. package/lib/components/Chat/ChatHistory/_components/NewChatButton/index.module.scss +6 -6
  258. package/lib/components/Chat/ChatHistory/index.module.scss +3 -3
  259. package/lib/components/Chat/ChatInput/_components/AgentToggleButton/index.module.scss +9 -9
  260. package/lib/components/Chat/ChatInput/_components/FileList/index.module.scss +3 -3
  261. package/lib/components/Chat/ChatInput/_components/SendButton/index.module.scss +3 -3
  262. package/lib/components/Chat/ChatInput/_components/StopButton/index.module.scss +2 -2
  263. package/lib/components/Chat/ChatInput/_components/UploadButton/index.js +1 -1
  264. package/lib/components/Chat/ChatInput/_components/UploadButton/index.module.scss +3 -3
  265. package/lib/components/Chat/ChatInput/_utils/index.js +6 -6
  266. package/lib/components/Chat/ChatInput/index.module.scss +12 -11
  267. package/lib/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/Copy/index.js +2 -2
  268. package/lib/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/Copy/index.module.scss +6 -6
  269. package/lib/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/LikeDislike/index.js +3 -1
  270. package/lib/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/LikeDislike/index.module.scss +6 -6
  271. package/lib/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/QuoteList/index.module.scss +8 -8
  272. package/lib/components/Chat/ChatList/_components/Assistant/AssistantItem/index.module.scss +7 -7
  273. package/lib/components/Chat/ChatList/_components/Assistant/index.module.scss +3 -3
  274. package/lib/components/Chat/ChatList/_components/User/index.module.scss +21 -10
  275. package/lib/components/Chat/ChatList/index.js +33 -27
  276. package/lib/components/Checkbox/CheckboxGroup/index.module.scss +10 -13
  277. package/lib/components/Checkbox/index.module.scss +23 -28
  278. package/lib/components/CodeMirror/index.module.scss +6 -6
  279. package/lib/components/Copy/index.d.ts +8 -2
  280. package/lib/components/Copy/index.js +38 -23
  281. package/lib/components/Copy/index.module.scss +5 -5
  282. package/lib/components/DatePicker/RangePicker/index.js +5 -1
  283. package/lib/components/DatePicker/RangePicker/index.module.scss +10 -1
  284. package/lib/components/DatePicker/StepPicker/index.module.scss +6 -4
  285. package/lib/components/DatePicker/index.js +14 -3
  286. package/lib/components/DatePicker/index.module.scss +2 -2
  287. package/lib/components/Descriptions/index.d.ts +6 -2
  288. package/lib/components/Descriptions/index.js +14 -12
  289. package/lib/components/Editor/index.module.scss +7 -7
  290. package/lib/components/FileCol/index.js +3 -3
  291. package/lib/components/FilePreview/_components/BasePreview/index.module.scss +3 -3
  292. package/lib/components/FilePreview/_components/PdfPreview/index.js +9 -2
  293. package/lib/components/FilePreview/_components/PdfPreview/index.module.scss +7 -7
  294. package/lib/components/FilePreview/index.module.scss +4 -4
  295. package/lib/components/Form/DrawerForm/index.js +10 -17
  296. package/lib/components/Form/ImportForm/index.js +13 -18
  297. package/lib/components/Form/ModalForm/index.d.ts +1 -1
  298. package/lib/components/Form/ModalForm/index.js +11 -17
  299. package/lib/components/Form/index.d.ts +12 -0
  300. package/lib/components/Form/index.js +7 -1
  301. package/lib/components/FormItem/FormInput/FormPasswordStrength/index.module.scss +3 -3
  302. package/lib/components/FormItem/FormRadio/index.module.scss +11 -13
  303. package/lib/components/FormItem/FormSegmented/index.module.scss +1 -1
  304. package/lib/components/FormItem/FormSlider/index.module.scss +1 -1
  305. package/lib/components/FormItem/FormUpload/FormImage/index.js +3 -3
  306. package/lib/components/FormItem/FormUpload/index.js +3 -2
  307. package/lib/components/FormItem/FormUpload/index.module.scss +17 -17
  308. package/lib/components/FormItem/ItemContainer/index.js +4 -4
  309. package/lib/components/FormItem/ItemContainer/index.module.scss +33 -7
  310. package/lib/components/Input/Number/index.js +38 -54
  311. package/lib/components/Input/Number/index.module.scss +27 -54
  312. package/lib/components/Input/Range/index.module.scss +16 -5
  313. package/lib/components/Input/TextArea/index.module.scss +13 -13
  314. package/lib/components/Input/index.d.ts +3 -1
  315. package/lib/components/Input/index.js +2 -0
  316. package/lib/components/Input/index.module.scss +1 -1
  317. package/lib/components/Markdown/Editor/index.module.scss +4 -4
  318. package/lib/components/Markdown/Views/MermaidBlock.js +15 -1
  319. package/lib/components/Markdown/Views/blocks.module.scss +13 -13
  320. package/lib/components/Markdown/Views/index.module.scss +3 -3
  321. package/lib/components/Modal/index.d.ts +12 -2
  322. package/lib/components/Modal/index.js +30 -10
  323. package/lib/components/Modal/index.module.scss +11 -1
  324. package/lib/components/Operate/index.js +3 -1
  325. package/lib/components/Operate/index.module.scss +1 -1
  326. package/lib/components/Pagination/index.module.scss +19 -18
  327. package/lib/components/Panel/DefaultPanel/index.module.scss +3 -3
  328. package/lib/components/Panel/IframePanel/index.js +3 -1
  329. package/lib/components/Panel/IframePanel/index.module.scss +2 -2
  330. package/lib/components/Panel/ListPanel/ListModalPanel/index.d.ts +2 -2
  331. package/lib/components/Panel/ListPanel/ListModalPanel/index.module.scss +2 -2
  332. package/lib/components/Panel/ListPanel/_components/ColumnMgt/index.js +9 -20
  333. package/lib/components/Panel/ListPanel/_components/ColumnMgt/index.module.scss +3 -3
  334. package/lib/components/Panel/ListPanel/_components/ToolBar/index.js +1 -1
  335. package/lib/components/Panel/ListPanel/_components/ToolBar/index.module.scss +14 -1
  336. package/lib/components/Panel/ListPanel/index.d.ts +2 -2
  337. package/lib/components/Panel/ListPanel/index.module.scss +9 -9
  338. package/lib/components/Search/SearchAdvanced/index.d.ts +3 -3
  339. package/lib/components/Search/SearchCard/index.module.scss +15 -15
  340. package/lib/components/Search/SearchCollapsible/index.d.ts +3 -3
  341. package/lib/components/Search/SearchWithFilter/index.d.ts +3 -3
  342. package/lib/components/Search/SearchWithMore/index.d.ts +3 -3
  343. package/lib/components/Search/_components/ButtonGroup/index.d.ts +4 -4
  344. package/lib/components/Search/_components/ButtonGroup/index.js +2 -2
  345. package/lib/components/Search/_components/FilterDropdown/index.js +3 -1
  346. package/lib/components/Search/_hooks/useSearchCommon.d.ts +3 -3
  347. package/lib/components/Search/_types/index.d.ts +3 -3
  348. package/lib/components/Search/index.d.ts +3 -3
  349. package/lib/components/Search/index.module.scss +33 -5
  350. package/lib/components/SecondConf/index.js +14 -6
  351. package/lib/components/SecondConf/index.module.scss +3 -3
  352. package/lib/components/Select/AutoCompleteSelect/index.js +15 -5
  353. package/lib/components/Select/AutoCompleteSelect/index.module.scss +73 -132
  354. package/lib/components/Select/IconSelect/index.js +64 -57
  355. package/lib/components/Select/IconSelect/index.module.scss +4 -3
  356. package/lib/components/Select/TreeSelect/_utils/getExpandedKeysByLevel.d.ts +1 -1
  357. package/lib/components/Select/TreeSelect/index.js +18 -7
  358. package/lib/components/Select/TreeSelect/index.module.scss +19 -44
  359. package/lib/components/Select/index.d.ts +17 -2
  360. package/lib/components/Select/index.js +22 -4
  361. package/lib/components/Select/index.module.scss +71 -131
  362. package/lib/components/Slider/index.module.scss +1 -1
  363. package/lib/components/Switch/index.module.scss +1 -1
  364. package/lib/components/TabBar/index.module.scss +11 -11
  365. package/lib/components/Table/_components/Drag/index.js +6 -2
  366. package/lib/components/Table/_hooks/useTableColumns.js +1 -1
  367. package/lib/components/Table/_utils/tableUtils.d.ts +1 -1
  368. package/lib/components/Table/_utils/tableUtils.js +4 -3
  369. package/lib/components/Table/index.d.ts +18 -2
  370. package/lib/components/Table/index.js +9 -0
  371. package/lib/components/Table/index.module.scss +14 -14
  372. package/lib/components/Tags/_components/EllipsisTag/index.js +1 -1
  373. package/lib/components/TextEllipsis/index.js +6 -4
  374. package/lib/components/Tree/index.d.ts +8 -2
  375. package/lib/components/Tree/index.js +2 -0
  376. package/lib/components/Tree/index.module.scss +6 -6
  377. package/lib/components/Upload/_components/UploadedItem/index.js +3 -3
  378. package/lib/components/Upload/_components/UploadingItem/index.js +3 -3
  379. package/lib/components/Upload/_utils/normalUpload.d.ts +1 -1
  380. package/lib/components/Upload/_utils/validateFile.js +47 -2
  381. package/lib/components/Upload/index.d.ts +8 -2
  382. package/lib/components/Upload/index.js +11 -4
  383. package/lib/config-provider/index.d.ts +34 -2
  384. package/lib/config-provider/index.js +55 -4
  385. package/lib/feedback/index.d.ts +20 -0
  386. package/lib/feedback/index.js +115 -0
  387. package/lib/hooks/index.d.ts +5 -0
  388. package/lib/hooks/index.js +21 -0
  389. package/lib/hooks/useBreakpoint.d.ts +24 -0
  390. package/lib/hooks/useBreakpoint.js +49 -0
  391. package/lib/hooks/useIsDark.d.ts +9 -0
  392. package/lib/hooks/useIsDark.js +54 -0
  393. package/lib/hooks/usePointerType.d.ts +22 -0
  394. package/lib/hooks/usePointerType.js +55 -0
  395. package/lib/index.d.ts +4 -4
  396. package/lib/index.js +78 -19
  397. package/lib/layout/Breadcrumb/_components/BreadcrumbItemIcon/index.d.ts +10 -0
  398. package/lib/layout/Breadcrumb/_components/BreadcrumbItemIcon/index.js +26 -0
  399. package/lib/layout/Breadcrumb/_components/BreadcrumbMenuItem/index.d.ts +11 -0
  400. package/lib/layout/Breadcrumb/_components/BreadcrumbMenuItem/index.js +32 -0
  401. package/lib/layout/Breadcrumb/_hooks/useBreadcrumbPath.d.ts +5 -0
  402. package/lib/layout/Breadcrumb/_hooks/useBreadcrumbPath.js +89 -0
  403. package/lib/layout/Breadcrumb/_utils/formatMenu.d.ts +9 -0
  404. package/lib/layout/Breadcrumb/_utils/formatMenu.js +31 -0
  405. package/lib/layout/Breadcrumb/_utils/formatRoutes.d.ts +9 -0
  406. package/lib/layout/Breadcrumb/_utils/formatRoutes.js +67 -0
  407. package/lib/layout/Breadcrumb/_utils/pathMatch.d.ts +8 -0
  408. package/lib/layout/Breadcrumb/_utils/pathMatch.js +47 -0
  409. package/lib/layout/Breadcrumb/index.d.ts +19 -0
  410. package/lib/layout/Breadcrumb/index.js +96 -0
  411. package/lib/layout/Breadcrumb/index.module.scss +15 -0
  412. package/lib/layout/Header/index.d.ts +39 -0
  413. package/lib/layout/Header/index.js +172 -0
  414. package/lib/layout/Header/index.module.scss +215 -0
  415. package/lib/layout/I18n/I18nStore.d.ts +29 -0
  416. package/lib/layout/I18n/I18nStore.js +82 -0
  417. package/lib/layout/I18n/index.d.ts +14 -0
  418. package/lib/layout/I18n/index.js +45 -0
  419. package/lib/layout/I18n/locales/en-US.d.ts +2 -0
  420. package/lib/layout/I18n/locales/en-US.js +21 -0
  421. package/lib/layout/I18n/locales/zh-CN.d.ts +2 -0
  422. package/lib/layout/I18n/locales/zh-CN.js +21 -0
  423. package/lib/layout/Menu/_components/SecondaryHeader/index.d.ts +22 -0
  424. package/lib/layout/Menu/_components/SecondaryHeader/index.js +49 -0
  425. package/lib/layout/Menu/_components/SecondaryHeader/index.module.scss +65 -0
  426. package/lib/layout/Menu/_hooks/useMenuPath.d.ts +17 -0
  427. package/lib/layout/Menu/_hooks/useMenuPath.js +75 -0
  428. package/lib/layout/Menu/_hooks/useOnlyLvOneMenu.d.ts +13 -0
  429. package/lib/layout/Menu/_hooks/useOnlyLvOneMenu.js +31 -0
  430. package/lib/layout/Menu/_utils/formatMenu.d.ts +10 -0
  431. package/lib/layout/Menu/_utils/formatMenu.js +55 -0
  432. package/lib/layout/Menu/_utils/pathMatch.d.ts +8 -0
  433. package/lib/layout/Menu/_utils/pathMatch.js +44 -0
  434. package/lib/layout/Menu/_utils/setActiveIcon.d.ts +7 -0
  435. package/lib/layout/Menu/_utils/setActiveIcon.js +27 -0
  436. package/lib/layout/Menu/index.d.ts +34 -0
  437. package/lib/layout/Menu/index.js +158 -0
  438. package/lib/layout/Menu/index.module.scss +50 -0
  439. package/lib/layout/NavTabBar/_components/SortableTab/index.d.ts +9 -0
  440. package/lib/layout/NavTabBar/_components/SortableTab/index.js +39 -0
  441. package/lib/layout/NavTabBar/_components/TabContextMenu/index.d.ts +20 -0
  442. package/lib/layout/NavTabBar/_components/TabContextMenu/index.js +129 -0
  443. package/lib/layout/NavTabBar/_components/TabDragOverlay/index.d.ts +20 -0
  444. package/lib/layout/NavTabBar/_components/TabDragOverlay/index.js +54 -0
  445. package/lib/layout/NavTabBar/_components/TabLabel/index.d.ts +22 -0
  446. package/lib/layout/NavTabBar/_components/TabLabel/index.js +68 -0
  447. package/lib/layout/NavTabBar/_hooks/useDropTabKey.d.ts +5 -0
  448. package/lib/layout/NavTabBar/_hooks/useDropTabKey.js +32 -0
  449. package/lib/layout/NavTabBar/_hooks/useTabContextMenu.d.ts +8 -0
  450. package/lib/layout/NavTabBar/_hooks/useTabContextMenu.js +28 -0
  451. package/lib/layout/NavTabBar/_hooks/useTabPath.d.ts +16 -0
  452. package/lib/layout/NavTabBar/_hooks/useTabPath.js +107 -0
  453. package/lib/layout/NavTabBar/_hooks/useTabTitle.d.ts +5 -0
  454. package/lib/layout/NavTabBar/_hooks/useTabTitle.js +32 -0
  455. package/lib/layout/NavTabBar/_utils/formatNavTabBar.d.ts +9 -0
  456. package/lib/layout/NavTabBar/_utils/formatNavTabBar.js +49 -0
  457. package/lib/layout/NavTabBar/_utils/pathMatch.d.ts +8 -0
  458. package/lib/layout/NavTabBar/_utils/pathMatch.js +37 -0
  459. package/lib/layout/NavTabBar/_utils/tabActions.d.ts +21 -0
  460. package/lib/layout/NavTabBar/_utils/tabActions.js +93 -0
  461. package/lib/layout/NavTabBar/index.d.ts +21 -0
  462. package/lib/layout/NavTabBar/index.js +206 -0
  463. package/lib/layout/NavTabBar/index.module.scss +179 -0
  464. package/lib/layout/Theme/ThemeStore.d.ts +18 -0
  465. package/lib/layout/Theme/ThemeStore.js +63 -0
  466. package/lib/layout/Theme/index.d.ts +30 -0
  467. package/lib/layout/Theme/index.js +100 -0
  468. package/lib/layout/Theme/index.module.scss +6 -0
  469. package/lib/layout/_hooks/useDropTab.d.ts +6 -0
  470. package/lib/layout/_hooks/useDropTab.js +21 -0
  471. package/lib/layout/_hooks/useReload.d.ts +6 -0
  472. package/lib/layout/_hooks/useReload.js +18 -0
  473. package/lib/layout/_hooks/useSetTabTitle.d.ts +6 -0
  474. package/lib/layout/_hooks/useSetTabTitle.js +18 -0
  475. package/lib/layout/_utils/storage.d.ts +6 -0
  476. package/lib/layout/_utils/storage.js +39 -0
  477. package/lib/layout/index.d.ts +54 -0
  478. package/lib/layout/index.js +102 -0
  479. package/lib/layout/types.d.ts +51 -0
  480. package/lib/layout/types.js +5 -0
  481. package/lib/request/index.js +5 -1
  482. package/lib/styles/_responsive.scss +53 -0
  483. package/lib/styles/antd-overload.scss +77 -21
  484. package/lib/styles/tokens.d.ts +113 -13
  485. package/lib/styles/tokens.js +157 -30
  486. package/lib/styles/tokens.json +82 -0
  487. package/lib/styles/tokens.scss +99 -52
  488. package/lib/types/antd.d.ts +35 -0
  489. package/lib/types/antd.js +5 -0
  490. package/lib/utils/semantic.d.ts +31 -0
  491. package/lib/utils/semantic.js +40 -0
  492. package/package.json +28 -22
  493. package/src/components/Button/index.md +54 -10
  494. package/src/components/Button/index.module.scss +38 -0
  495. package/src/components/Button/index.tsx +107 -51
  496. package/src/components/ChainGraph/_components/ExpandButtons/index.module.scss +5 -3
  497. package/src/components/ChainGraph/_components/SearchSelect/index.module.scss +3 -2
  498. package/src/components/ChainGraph/index.module.scss +2 -2
  499. package/src/components/ChainGraph/index.tsx +1 -1
  500. package/src/components/Chart/Group/index.module.scss +1 -1
  501. package/src/components/Chat/ChatHistory/_components/HistoryGroup/index.module.scss +1 -1
  502. package/src/components/Chat/ChatHistory/_components/HistoryItem/index.module.scss +13 -13
  503. package/src/components/Chat/ChatHistory/_components/NewChatButton/index.module.scss +6 -6
  504. package/src/components/Chat/ChatHistory/index.module.scss +3 -3
  505. package/src/components/Chat/ChatInput/_components/AgentToggleButton/index.module.scss +9 -9
  506. package/src/components/Chat/ChatInput/_components/FileList/index.module.scss +3 -3
  507. package/src/components/Chat/ChatInput/_components/SendButton/index.module.scss +3 -3
  508. package/src/components/Chat/ChatInput/_components/StopButton/index.module.scss +2 -2
  509. package/src/components/Chat/ChatInput/_components/UploadButton/index.module.scss +3 -3
  510. package/src/components/Chat/ChatInput/_components/UploadButton/index.tsx +1 -1
  511. package/src/components/Chat/ChatInput/_utils/index.ts +1 -1
  512. package/src/components/Chat/ChatInput/index.module.scss +12 -11
  513. package/src/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/Copy/index.module.scss +6 -6
  514. package/src/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/Copy/index.tsx +1 -1
  515. package/src/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/LikeDislike/index.module.scss +6 -6
  516. package/src/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/LikeDislike/index.tsx +1 -1
  517. package/src/components/Chat/ChatList/_components/Assistant/AssistantItem/_components/QuoteList/index.module.scss +8 -8
  518. package/src/components/Chat/ChatList/_components/Assistant/AssistantItem/index.module.scss +7 -7
  519. package/src/components/Chat/ChatList/_components/Assistant/index.module.scss +3 -3
  520. package/src/components/Chat/ChatList/_components/User/index.module.scss +21 -10
  521. package/src/components/Chat/ChatList/index.tsx +5 -2
  522. package/src/components/Checkbox/CheckboxGroup/index.module.scss +10 -13
  523. package/src/components/Checkbox/index.module.scss +23 -28
  524. package/src/components/CodeMirror/index.module.scss +6 -6
  525. package/src/components/Copy/index.module.scss +5 -5
  526. package/src/components/Copy/index.tsx +41 -25
  527. package/src/components/DatePicker/RangePicker/index.module.scss +10 -1
  528. package/src/components/DatePicker/RangePicker/index.tsx +5 -3
  529. package/src/components/DatePicker/StepPicker/index.module.scss +6 -4
  530. package/src/components/DatePicker/index.module.scss +2 -2
  531. package/src/components/DatePicker/index.tsx +11 -3
  532. package/src/components/Descriptions/index.md +8 -0
  533. package/src/components/Descriptions/index.tsx +21 -14
  534. package/src/components/Editor/index.module.scss +7 -7
  535. package/src/components/FileCol/index.tsx +4 -2
  536. package/src/components/FilePreview/_components/BasePreview/index.module.scss +3 -3
  537. package/src/components/FilePreview/_components/PdfPreview/index.module.scss +7 -7
  538. package/src/components/FilePreview/_components/PdfPreview/index.tsx +8 -2
  539. package/src/components/FilePreview/index.module.scss +4 -4
  540. package/src/components/Form/DrawerForm/index.tsx +10 -11
  541. package/src/components/Form/ImportForm/index.tsx +11 -12
  542. package/src/components/Form/ModalForm/index.tsx +10 -12
  543. package/src/components/Form/index.md +18 -0
  544. package/src/components/Form/index.tsx +18 -0
  545. package/src/components/FormItem/FormInput/FormPasswordStrength/index.module.scss +3 -3
  546. package/src/components/FormItem/FormRadio/index.module.scss +11 -13
  547. package/src/components/FormItem/FormSegmented/index.module.scss +1 -1
  548. package/src/components/FormItem/FormSlider/index.module.scss +1 -1
  549. package/src/components/FormItem/FormUpload/FormImage/index.tsx +2 -1
  550. package/src/components/FormItem/FormUpload/index.module.scss +17 -17
  551. package/src/components/FormItem/FormUpload/index.tsx +2 -1
  552. package/src/components/FormItem/ItemContainer/index.module.scss +33 -7
  553. package/src/components/FormItem/ItemContainer/index.tsx +3 -3
  554. package/src/components/Input/Number/index.module.scss +27 -54
  555. package/src/components/Input/Number/index.tsx +49 -65
  556. package/src/components/Input/Range/index.module.scss +16 -5
  557. package/src/components/Input/TextArea/index.module.scss +13 -13
  558. package/src/components/Input/index.md +14 -0
  559. package/src/components/Input/index.module.scss +1 -1
  560. package/src/components/Input/index.tsx +4 -0
  561. package/src/components/Markdown/Editor/index.module.scss +4 -4
  562. package/src/components/Markdown/Views/MermaidBlock.tsx +15 -1
  563. package/src/components/Markdown/Views/blocks.module.scss +13 -13
  564. package/src/components/Markdown/Views/index.module.scss +3 -3
  565. package/src/components/Markdown/index.md +22 -0
  566. package/src/components/Modal/index.md +22 -1
  567. package/src/components/Modal/index.module.scss +11 -1
  568. package/src/components/Modal/index.tsx +46 -13
  569. package/src/components/Operate/index.module.scss +1 -1
  570. package/src/components/Operate/index.tsx +1 -1
  571. package/src/components/Pagination/index.md +107 -0
  572. package/src/components/Pagination/index.module.scss +19 -18
  573. package/src/components/Pagination/index.tsx +2 -2
  574. package/src/components/Panel/DefaultPanel/index.module.scss +3 -3
  575. package/src/components/Panel/IframePanel/index.module.scss +2 -2
  576. package/src/components/Panel/IframePanel/index.tsx +5 -1
  577. package/src/components/Panel/ListPanel/ListModalPanel/index.module.scss +2 -2
  578. package/src/components/Panel/ListPanel/ListModalPanel/index.tsx +2 -2
  579. package/src/components/Panel/ListPanel/_components/ColumnMgt/index.module.scss +3 -3
  580. package/src/components/Panel/ListPanel/_components/ColumnMgt/index.tsx +7 -11
  581. package/src/components/Panel/ListPanel/_components/ToolBar/index.module.scss +14 -1
  582. package/src/components/Panel/ListPanel/_components/ToolBar/index.tsx +2 -2
  583. package/src/components/Panel/ListPanel/index.module.scss +9 -9
  584. package/src/components/Panel/ListPanel/index.tsx +2 -2
  585. package/src/components/Panel/index.md +1 -1
  586. package/src/components/Search/SearchAdvanced/index.tsx +3 -3
  587. package/src/components/Search/SearchCard/index.module.scss +15 -15
  588. package/src/components/Search/SearchCollapsible/index.tsx +3 -3
  589. package/src/components/Search/SearchWithFilter/index.tsx +3 -3
  590. package/src/components/Search/SearchWithMore/index.tsx +3 -3
  591. package/src/components/Search/_components/ButtonGroup/index.tsx +9 -11
  592. package/src/components/Search/_components/FilterDropdown/index.tsx +1 -1
  593. package/src/components/Search/_hooks/useSearchCommon.ts +4 -4
  594. package/src/components/Search/_types/index.ts +3 -3
  595. package/src/components/Search/index.md +2 -2
  596. package/src/components/Search/index.module.scss +33 -5
  597. package/src/components/Search/index.tsx +3 -3
  598. package/src/components/SecondConf/index.md +1 -1
  599. package/src/components/SecondConf/index.module.scss +3 -3
  600. package/src/components/SecondConf/index.tsx +11 -7
  601. package/src/components/Select/AutoCompleteSelect/index.module.scss +73 -132
  602. package/src/components/Select/AutoCompleteSelect/index.tsx +13 -7
  603. package/src/components/Select/IconSelect/index.module.scss +4 -3
  604. package/src/components/Select/IconSelect/index.tsx +7 -9
  605. package/src/components/Select/TreeSelect/_utils/getExpandedKeysByLevel.ts +4 -1
  606. package/src/components/Select/TreeSelect/index.module.scss +19 -44
  607. package/src/components/Select/TreeSelect/index.tsx +16 -8
  608. package/src/components/Select/index.md +12 -0
  609. package/src/components/Select/index.module.scss +71 -131
  610. package/src/components/Select/index.tsx +38 -10
  611. package/src/components/Slider/index.module.scss +1 -1
  612. package/src/components/Switch/index.module.scss +1 -1
  613. package/src/components/TabBar/index.module.scss +11 -11
  614. package/src/components/Table/_components/Drag/index.tsx +3 -2
  615. package/src/components/Table/_hooks/useTableColumns.tsx +1 -1
  616. package/src/components/Table/_utils/tableUtils.ts +3 -2
  617. package/src/components/Table/index.md +16 -0
  618. package/src/components/Table/index.module.scss +14 -14
  619. package/src/components/Table/index.tsx +27 -1
  620. package/src/components/Tags/_components/EllipsisTag/index.tsx +1 -1
  621. package/src/components/TextEllipsis/index.tsx +6 -4
  622. package/src/components/Tree/index.md +9 -0
  623. package/src/components/Tree/index.module.scss +6 -6
  624. package/src/components/Tree/index.tsx +12 -2
  625. package/src/components/Upload/_components/UploadedItem/index.tsx +2 -2
  626. package/src/components/Upload/_components/UploadingItem/index.tsx +2 -2
  627. package/src/components/Upload/_utils/normalUpload.ts +1 -1
  628. package/src/components/Upload/_utils/validateFile.ts +55 -2
  629. package/src/components/Upload/index.md +9 -0
  630. package/src/components/Upload/index.tsx +22 -7
  631. package/src/config-provider/index.tsx +84 -4
  632. package/src/feedback/index.tsx +141 -0
  633. package/src/hooks/index.ts +5 -0
  634. package/src/hooks/useBreakpoint.ts +62 -0
  635. package/src/hooks/useIsDark.ts +64 -0
  636. package/src/hooks/usePointerType.ts +59 -0
  637. package/src/index.ts +37 -5
  638. package/src/layout/Breadcrumb/_components/BreadcrumbItemIcon/index.tsx +26 -0
  639. package/src/layout/Breadcrumb/_components/BreadcrumbMenuItem/index.tsx +32 -0
  640. package/src/layout/Breadcrumb/_hooks/useBreadcrumbPath.ts +111 -0
  641. package/src/layout/Breadcrumb/_utils/formatMenu.ts +30 -0
  642. package/src/layout/Breadcrumb/_utils/formatRoutes.ts +71 -0
  643. package/src/layout/Breadcrumb/_utils/pathMatch.ts +52 -0
  644. package/src/layout/Breadcrumb/index.md +37 -0
  645. package/src/layout/Breadcrumb/index.module.scss +15 -0
  646. package/src/layout/Breadcrumb/index.tsx +103 -0
  647. package/src/layout/Header/index.md +120 -0
  648. package/src/layout/Header/index.module.scss +215 -0
  649. package/src/layout/Header/index.tsx +198 -0
  650. package/src/layout/I18n/I18nStore.ts +98 -0
  651. package/src/layout/I18n/index.md +45 -0
  652. package/src/layout/I18n/index.tsx +44 -0
  653. package/src/layout/I18n/locales/en-US.ts +16 -0
  654. package/src/layout/I18n/locales/zh-CN.ts +16 -0
  655. package/src/layout/Menu/_components/SecondaryHeader/index.module.scss +65 -0
  656. package/src/layout/Menu/_components/SecondaryHeader/index.tsx +61 -0
  657. package/src/layout/Menu/_hooks/useMenuPath.ts +81 -0
  658. package/src/layout/Menu/_hooks/useOnlyLvOneMenu.ts +44 -0
  659. package/src/layout/Menu/_utils/formatMenu.ts +57 -0
  660. package/src/layout/Menu/_utils/pathMatch.ts +48 -0
  661. package/src/layout/Menu/_utils/setActiveIcon.ts +23 -0
  662. package/src/layout/Menu/index.md +43 -0
  663. package/src/layout/Menu/index.module.scss +50 -0
  664. package/src/layout/Menu/index.tsx +208 -0
  665. package/src/layout/NavTabBar/_components/SortableTab/index.tsx +40 -0
  666. package/src/layout/NavTabBar/_components/TabContextMenu/index.tsx +157 -0
  667. package/src/layout/NavTabBar/_components/TabDragOverlay/index.tsx +69 -0
  668. package/src/layout/NavTabBar/_components/TabLabel/index.tsx +84 -0
  669. package/src/layout/NavTabBar/_hooks/useDropTabKey.ts +27 -0
  670. package/src/layout/NavTabBar/_hooks/useTabContextMenu.ts +23 -0
  671. package/src/layout/NavTabBar/_hooks/useTabPath.ts +118 -0
  672. package/src/layout/NavTabBar/_hooks/useTabTitle.ts +28 -0
  673. package/src/layout/NavTabBar/_utils/formatNavTabBar.ts +50 -0
  674. package/src/layout/NavTabBar/_utils/pathMatch.ts +37 -0
  675. package/src/layout/NavTabBar/_utils/tabActions.ts +131 -0
  676. package/src/layout/NavTabBar/index.md +76 -0
  677. package/src/layout/NavTabBar/index.module.scss +179 -0
  678. package/src/layout/NavTabBar/index.tsx +236 -0
  679. package/src/layout/Theme/ThemeStore.ts +70 -0
  680. package/src/layout/Theme/index.md +48 -0
  681. package/src/layout/Theme/index.module.scss +6 -0
  682. package/src/layout/Theme/index.tsx +105 -0
  683. package/src/layout/_hooks/useDropTab.ts +23 -0
  684. package/src/layout/_hooks/useReload.ts +19 -0
  685. package/src/layout/_hooks/useSetTabTitle.ts +19 -0
  686. package/src/layout/_utils/storage.ts +34 -0
  687. package/src/layout/index.ts +78 -0
  688. package/src/layout/types.ts +58 -0
  689. package/src/request/index.ts +8 -1
  690. package/src/styles/_responsive.scss +53 -0
  691. package/src/styles/antd-overload.scss +77 -21
  692. package/src/styles/tokens.json +82 -0
  693. package/src/styles/tokens.scss +99 -52
  694. package/src/styles/tokens.ts +198 -33
  695. package/src/types/antd.ts +46 -0
  696. package/src/utils/semantic.ts +45 -0
  697. package/es/components/Button/ChakraButton/index.d.ts +0 -11
  698. package/es/components/Button/ChakraButton/index.js +0 -66
  699. package/es/components/Button/ChakraButton/index.module.scss +0 -20
  700. package/es/components/ChakraRoot/index.d.ts +0 -6
  701. package/es/components/ChakraRoot/index.js +0 -42
  702. package/lib/components/Button/ChakraButton/index.d.ts +0 -11
  703. package/lib/components/Button/ChakraButton/index.js +0 -70
  704. package/lib/components/Button/ChakraButton/index.module.scss +0 -20
  705. package/lib/components/ChakraRoot/index.d.ts +0 -6
  706. package/lib/components/ChakraRoot/index.js +0 -46
  707. package/src/components/Button/ChakraButton/index.module.scss +0 -20
  708. package/src/components/Button/ChakraButton/index.tsx +0 -83
  709. package/src/components/ChakraRoot/index.tsx +0 -43
@@ -0,0 +1,21 @@
1
+ import React, { ReactNode } from "react";
2
+ import { RouteType } from "../types";
3
+ export interface TabType {
4
+ label: ReactNode;
5
+ key: string;
6
+ element?: React.ReactNode;
7
+ children?: TabType[];
8
+ path?: string;
9
+ name?: ReactNode;
10
+ affix?: boolean;
11
+ icon?: ReactNode;
12
+ }
13
+ export interface NavTabBarProps {
14
+ router: RouteType[];
15
+ affixRouter?: string[];
16
+ basePath?: string;
17
+ /** 页签栏最前面的「刷新当前页」按钮 */
18
+ showReload?: boolean;
19
+ }
20
+ declare const NavTabBar: React.FC<NavTabBarProps>;
21
+ export default NavTabBar;
@@ -0,0 +1,224 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
7
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
10
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
11
+ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t.return && (u = t.return(), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
12
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
13
+ import { Tabs as AntdTabs, Tooltip } from "antd";
14
+ import React, { useCallback, useMemo, useState } from "react";
15
+ import { useNavigate } from "react-router";
16
+ import { closestCenter, DndContext, PointerSensor, useSensor } from "@dnd-kit/core";
17
+ import { restrictToHorizontalAxis, restrictToParentElement } from "@dnd-kit/modifiers";
18
+ import { arrayMove, horizontalListSortingStrategy, SortableContext } from "@dnd-kit/sortable";
19
+ import styles from "./index.module.scss";
20
+ import { useAliveController } from "react-activation";
21
+ import useReload from "../_hooks/useReload";
22
+ import { formatNavTabBar } from "./_utils/formatNavTabBar";
23
+ import { useTabPath } from "./_hooks/useTabPath";
24
+ import { useTabContextMenu } from "./_hooks/useTabContextMenu";
25
+ import { useDropTabKey } from "./_hooks/useDropTabKey";
26
+ import { useTabTitle } from "./_hooks/useTabTitle";
27
+ import TabLabel from "./_components/TabLabel";
28
+ import DraggableTabNode from "./_components/SortableTab";
29
+ import TabDragOverlay from "./_components/TabDragOverlay";
30
+ import { isLegacyHasSelectorBrowser } from "../../utils/cssSupports";
31
+ import Button from "../../components/Button";
32
+ import Icon from "../../components/Icon";
33
+ import { jsx as _jsx } from "react/jsx-runtime";
34
+ import { createElement as _createElement } from "react";
35
+ import { jsxs as _jsxs } from "react/jsx-runtime";
36
+ var NavTabBar = function NavTabBar(props) {
37
+ var router = props.router,
38
+ _props$affixRouter = props.affixRouter,
39
+ affixRouter = _props$affixRouter === void 0 ? [] : _props$affixRouter,
40
+ _props$basePath = props.basePath,
41
+ basePath = _props$basePath === void 0 ? "/" : _props$basePath,
42
+ _props$showReload = props.showReload,
43
+ showReload = _props$showReload === void 0 ? true : _props$showReload;
44
+ var navigate = useNavigate();
45
+ var _useAliveController = useAliveController(),
46
+ drop = _useAliveController.drop,
47
+ refresh = _useAliveController.refresh;
48
+ var onReload = useReload();
49
+ var legacyHasSelector = isLegacyHasSelectorBrowser();
50
+ var items = useMemo(function () {
51
+ return formatNavTabBar(router);
52
+ }, [router]);
53
+ var _useTabPath = useTabPath({
54
+ items: items,
55
+ affixRouter: affixRouter
56
+ }),
57
+ tabKey = _useTabPath.tabKey,
58
+ openKeys = _useTabPath.openKeys,
59
+ setOpenkeys = _useTabPath.setOpenkeys;
60
+ var _useTabContextMenu = useTabContextMenu(),
61
+ open = _useTabContextMenu.open,
62
+ setOpen = _useTabContextMenu.setOpen;
63
+ useDropTabKey(setOpenkeys);
64
+ useTabTitle(setOpenkeys);
65
+
66
+ // ID of the tab currently being dragged
67
+ var _useState = useState(null),
68
+ _useState2 = _slicedToArray(_useState, 2),
69
+ activeId = _useState2[0],
70
+ setActiveId = _useState2[1];
71
+
72
+ // Configure the drag sensor with a 10px activation distance to avoid accidental drags
73
+ var sensor = useSensor(PointerSensor, {
74
+ activationConstraint: {
75
+ distance: 10
76
+ }
77
+ });
78
+
79
+ // Handle the drag start event
80
+ var onDragStart = function onDragStart(event) {
81
+ setActiveId(String(event.active.id));
82
+ };
83
+
84
+ // Handle the drag end event
85
+ var onDragEnd = function onDragEnd(_ref) {
86
+ var active = _ref.active,
87
+ over = _ref.over;
88
+ if (active.id !== (over === null || over === void 0 ? void 0 : over.id)) {
89
+ setOpenkeys(function (prev) {
90
+ var activeIndex = prev.findIndex(function (i) {
91
+ return i.key === active.id;
92
+ });
93
+ var overIndex = prev.findIndex(function (i) {
94
+ return i.key === (over === null || over === void 0 ? void 0 : over.id);
95
+ });
96
+ return arrayMove(prev, activeIndex, overIndex);
97
+ });
98
+ }
99
+ setActiveId(null);
100
+ };
101
+
102
+ // Handle the drag cancel event
103
+ var onDragCancel = function onDragCancel() {
104
+ setActiveId(null);
105
+ };
106
+
107
+ /**
108
+ * 刷新当前页。走的是和右键菜单「重新加载」完全相同的两步:`onReload` 通知页面自己重挂,
109
+ * `refresh` 让 react-activation 丢掉这份缓存。少调其中任何一个,都会出现「看上去刷新了、
110
+ * 实际还是那棵旧组件树」。
111
+ *
112
+ * key 要去掉 query —— 缓存是按路径存的,带上 `?a=1` 会找不到对应的那份。
113
+ */
114
+ var reloadCurrent = useCallback(function () {
115
+ var key = tabKey === null || tabKey === void 0 ? void 0 : tabKey.split("?")[0];
116
+ if (!key) return;
117
+ onReload(key);
118
+ refresh(key);
119
+ }, [tabKey, onReload, refresh]);
120
+ return /*#__PURE__*/_jsx(AntdTabs, {
121
+ className: styles.NavTabBar,
122
+ items: openKeys === null || openKeys === void 0 ? void 0 : openKeys.map(function (item, idx) {
123
+ var closable = !(affixRouter.includes(item.key) || item.affix);
124
+ return {
125
+ label: /*#__PURE__*/_jsx(TabLabel, {
126
+ item: item,
127
+ index: idx,
128
+ openKeys: openKeys,
129
+ basePath: basePath,
130
+ affixRouter: affixRouter,
131
+ open: open,
132
+ onReload: onReload,
133
+ refresh: refresh,
134
+ drop: drop,
135
+ setOpenkeys: setOpenkeys,
136
+ setOpen: setOpen,
137
+ navigate: navigate,
138
+ className: legacyHasSelector && closable ? styles.legacyClosableTabLabel : undefined
139
+ }),
140
+ key: item.key,
141
+ closeIcon: closable ? undefined : false
142
+ };
143
+ }),
144
+ activeKey: tabKey,
145
+ tabBarExtraContent: showReload ? {
146
+ left:
147
+ /*#__PURE__*/
148
+ // 不用 Button 的 title —— 本库的 Button 把 title 当作 children 的兜底
149
+ // (children ?? title),传了会把文案画到按钮里,而不是变成悬浮提示
150
+ _jsx(Tooltip, {
151
+ title: "\u5237\u65B0\u5F53\u524D\u9875",
152
+ children: /*#__PURE__*/_jsx(Button, {
153
+ className: styles.reload,
154
+ type: "text",
155
+ size: "small",
156
+ "aria-label": "\u5237\u65B0\u5F53\u524D\u9875",
157
+ icon: /*#__PURE__*/_jsx(Icon, {
158
+ icon: "ep:refresh"
159
+ }),
160
+ onClick: reloadCurrent
161
+ })
162
+ })
163
+ } : undefined,
164
+ hideAdd: true,
165
+ type: "editable-card",
166
+ onEdit: function onEdit(key, action) {
167
+ if (action === "remove") {
168
+ drop((key === null || key === void 0 ? void 0 : key.split("?")[0]) || "");
169
+ // Find the index of the tab being closed
170
+ var currentIndex = openKeys.findIndex(function (item) {
171
+ return item.key === key;
172
+ });
173
+ var newOpenKeys = openKeys.filter(function (item) {
174
+ return item.key !== key;
175
+ });
176
+ setOpenkeys(newOpenKeys);
177
+ setOpen("");
178
+ if (key === tabKey) {
179
+ var _newOpenKeys$targetIn;
180
+ // If the active tab is closed, select the previous tab; fall back to the first one
181
+ var targetIndex = currentIndex > 0 ? currentIndex - 1 : 0;
182
+ navigate(((_newOpenKeys$targetIn = newOpenKeys[targetIndex]) === null || _newOpenKeys$targetIn === void 0 ? void 0 : _newOpenKeys$targetIn.key) || basePath);
183
+ }
184
+ }
185
+ },
186
+ size: "small",
187
+ renderTabBar: function renderTabBar(tabBarProps, DefaultTabBar) {
188
+ return /*#__PURE__*/_jsxs(DndContext, {
189
+ sensors: [sensor],
190
+ onDragStart: onDragStart,
191
+ onDragEnd: onDragEnd,
192
+ onDragCancel: onDragCancel,
193
+ collisionDetection: closestCenter,
194
+ modifiers: [restrictToHorizontalAxis, restrictToParentElement],
195
+ children: [/*#__PURE__*/_jsx(SortableContext, {
196
+ items: openKeys.map(function (i) {
197
+ return i.key;
198
+ }),
199
+ strategy: horizontalListSortingStrategy,
200
+ children: /*#__PURE__*/_jsx(DefaultTabBar, _objectSpread(_objectSpread({}, tabBarProps), {}, {
201
+ children: function children(node) {
202
+ return /*#__PURE__*/_createElement(DraggableTabNode, _objectSpread(_objectSpread({}, node.props), {}, {
203
+ key: node.key
204
+ }), node);
205
+ }
206
+ }))
207
+ }), /*#__PURE__*/_jsx(TabDragOverlay, {
208
+ activeId: activeId,
209
+ openKeys: openKeys,
210
+ basePath: basePath,
211
+ affixRouter: affixRouter,
212
+ open: open,
213
+ onReload: onReload,
214
+ refresh: refresh,
215
+ drop: drop,
216
+ setOpenkeys: setOpenkeys,
217
+ setOpen: setOpen,
218
+ navigate: navigate
219
+ })]
220
+ });
221
+ }
222
+ });
223
+ };
224
+ export default NavTabBar;
@@ -0,0 +1,179 @@
1
+ // 注意:这是 CSS Module,文件里的每个类名都会被哈希。antd 的类名必须写在 :global() 里,
2
+ // 否则 `.ant-tabs-nav` 会被编译成一串哈希,永远匹配不到 antd 渲染出的 DOM —— 规则不会报错,
3
+ // 只是静悄悄地全部失效。本库其余组件的样式都遵循这个写法。
4
+ .NavTabBar {
5
+ padding: 6px 8px 0px;
6
+
7
+ // Modern look: keep the white strip; the active tab is a light teal pill
8
+ background: var(--vita-surface);
9
+
10
+ border-bottom: 1px solid var(--vita-border);
11
+
12
+ // 把根类重复一次(编译成 `.x.x`),只为提一档权重。antd 的卡片样式是
13
+ // `:where(...).ant-tabs-card.ant-tabs-small.ant-tabs-top > .ant-tabs-nav .ant-tabs-tab`,
14
+ // `:where()` 不计权重,正好和这里的四个类打平 —— 打平时后注入的赢,而 antd 的
15
+ // CSS-in-JS 是运行时插进 <head> 的,永远在后面,圆角这类就会被它盖回卡片样式。
16
+ &.NavTabBar {
17
+ :global(.ant-tabs-nav) {
18
+ height: 36px;
19
+ margin-bottom: 0px;
20
+
21
+ &::before {
22
+ border-bottom: none;
23
+ }
24
+
25
+ // Card-style tabs do not need the bottom ink bar
26
+ :global(.ant-tabs-ink-bar) {
27
+ display: none;
28
+ }
29
+
30
+ :global(.ant-tabs-nav-list) {
31
+ :global(.ant-tabs-tab) {
32
+ position: relative;
33
+
34
+ padding: 0px;
35
+ margin: 0px;
36
+
37
+ border: none;
38
+ border-radius: 8px;
39
+ background: transparent;
40
+
41
+ transition: background 0.2s;
42
+
43
+ & + :global(.ant-tabs-tab) {
44
+ margin-left: 4px;
45
+ }
46
+
47
+ :global(.ant-tabs-tab-btn) {
48
+ color: var(--vita-muted-foreground);
49
+
50
+ > .tabLabel {
51
+ display: inline-flex;
52
+ align-items: center;
53
+ justify-content: center;
54
+ column-gap: 5px;
55
+
56
+ width: 100%;
57
+ height: 100%;
58
+ padding: 6px 16px;
59
+ }
60
+
61
+ > .tabLabel.legacyClosableTabLabel {
62
+ padding-right: 36px;
63
+ }
64
+ }
65
+
66
+ &:hover {
67
+ background: var(--vita-border-weak);
68
+ }
69
+
70
+ &:global(.ant-tabs-tab-active) {
71
+ background: var(--vita-muted);
72
+
73
+ :global(.ant-tabs-tab-btn) {
74
+ color: var(--vita-primary);
75
+ font-weight: 500;
76
+ }
77
+ }
78
+
79
+ :global(.ant-tabs-tab-remove) {
80
+ position: absolute;
81
+ right: 16px;
82
+ top: 50%;
83
+ transform: translateY(-50%);
84
+ }
85
+
86
+ &:has(:global(.ant-tabs-tab-remove)) {
87
+ :global(.ant-tabs-tab-btn) {
88
+ > .tabLabel {
89
+ padding-right: 36px;
90
+ }
91
+ }
92
+ }
93
+ }
94
+ }
95
+ }
96
+
97
+ // extra 区域自身没有高度,撑满后才能和页签对齐;右边那条竖线把刷新按钮和页签分开
98
+ :global(.ant-tabs-extra-content) {
99
+ display: flex;
100
+ align-items: center;
101
+ align-self: stretch;
102
+
103
+ margin-right: 8px;
104
+ padding-right: 8px;
105
+
106
+ border-right: 1px solid var(--vita-border-weak);
107
+ }
108
+
109
+ // 「刷新当前页」按钮
110
+ .reload {
111
+ display: inline-flex;
112
+ align-items: center;
113
+ justify-content: center;
114
+
115
+ width: 28px;
116
+ height: 28px;
117
+ padding: 0px;
118
+
119
+ color: var(--vita-muted-foreground);
120
+
121
+ &:hover {
122
+ color: var(--vita-primary);
123
+ }
124
+ }
125
+
126
+ :global(.ant-tabs-nav-operations) {
127
+ > button {
128
+ cursor: pointer;
129
+ }
130
+ }
131
+ }
132
+ }
133
+
134
+ .popover {
135
+ // antd v6 里承载内边距的是 .ant-popover-container,v5 的 .ant-popover-inner 已经没有了 ——
136
+ // 照着 v5 写不会报错,只是这条规则永远不生效,右键菜单会白白多出一圈 12px 内边距
137
+ :global(.ant-popover-container) {
138
+ padding: 0px;
139
+ }
140
+
141
+ .part {
142
+ display: flex;
143
+ flex-direction: column;
144
+
145
+ padding: 6px 0px;
146
+
147
+ border-bottom: 1px solid var(--vita-border-weak);
148
+
149
+ :global(.ant-btn) {
150
+ justify-content: flex-start;
151
+
152
+ border-radius: 0px;
153
+ }
154
+ }
155
+ }
156
+
157
+ .dragOverlay {
158
+ display: inline-flex;
159
+ align-items: center;
160
+ justify-content: center;
161
+
162
+ cursor: pointer;
163
+ opacity: 0.9;
164
+
165
+ height: 34px;
166
+ padding: 6px 16px;
167
+
168
+ background: var(--vita-surface);
169
+ border-radius: 6px 6px 0 0;
170
+ border: 1px solid var(--vita-border);
171
+ box-shadow: 0 2px 8px rgba(0, 0, 0, 0.15);
172
+
173
+ .tabLabel {
174
+ display: inline-flex;
175
+ align-items: center;
176
+ justify-content: center;
177
+ column-gap: 5px;
178
+ }
179
+ }
@@ -0,0 +1,18 @@
1
+ export type Layout = "left" | "top" | "mixed";
2
+ export type Theme = "light" | "dark";
3
+ export type HeaderTheme = "light" | "dark" | "theme";
4
+ export type Appearance = "light" | "dark" | "system";
5
+ declare class ThemeStore {
6
+ get appearance(): Appearance;
7
+ private _appearance;
8
+ private _systemDark;
9
+ get isDark(): boolean;
10
+ get layout(): Layout;
11
+ get headerTheme(): HeaderTheme;
12
+ get theme(): Theme;
13
+ constructor();
14
+ private _setSystemDark;
15
+ setAppearance: (appearance: Appearance) => void;
16
+ }
17
+ declare const _default: ThemeStore;
18
+ export default _default;
@@ -0,0 +1,80 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
3
+ function _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if ("value" in descriptor) descriptor.writable = true; Object.defineProperty(target, _toPropertyKey(descriptor.key), descriptor); } }
4
+ function _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); Object.defineProperty(Constructor, "prototype", { writable: false }); return Constructor; }
5
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
6
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
7
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ import { readStorage, writeStorage, STORAGE_KEY } from "../_utils/storage";
9
+ import { makeAutoObservable } from "mobx";
10
+
11
+ // Three appearance modes (light / dark / follow system)
12
+ var ThemeStore = /*#__PURE__*/function () {
13
+ function ThemeStore() {
14
+ var _this = this;
15
+ _classCallCheck(this, ThemeStore);
16
+ _defineProperty(this, "_appearance", "system");
17
+ // Whether the system is currently dark (takes effect when appearance=system)
18
+ _defineProperty(this, "_systemDark", false);
19
+ _defineProperty(this, "_setSystemDark", function (v) {
20
+ _this._systemDark = v;
21
+ });
22
+ _defineProperty(this, "setAppearance", function (appearance) {
23
+ _this._appearance = appearance;
24
+ writeStorage(STORAGE_KEY.APPEARANCE, appearance);
25
+ });
26
+ makeAutoObservable(this);
27
+ var cached = readStorage(STORAGE_KEY.APPEARANCE);
28
+ if (cached === "light" || cached === "dark" || cached === "system") {
29
+ this._appearance = cached;
30
+ }
31
+
32
+ // Listen for system color-scheme changes, following in real time when appearance=system
33
+ if (typeof window !== "undefined" && window.matchMedia) {
34
+ var mq = window.matchMedia("(prefers-color-scheme: dark)");
35
+ this._systemDark = mq.matches;
36
+ mq.addEventListener("change", function (e) {
37
+ return _this._setSystemDark(e.matches);
38
+ });
39
+ }
40
+ }
41
+ _createClass(ThemeStore, [{
42
+ key: "appearance",
43
+ get:
44
+ // Appearance mode selected by the user
45
+ function get() {
46
+ return this._appearance;
47
+ }
48
+ }, {
49
+ key: "isDark",
50
+ get:
51
+ // Resolved actual dark-mode state
52
+ function get() {
53
+ if (this._appearance === "system") return this._systemDark;
54
+ return this._appearance === "dark";
55
+ }
56
+
57
+ // Fixed left layout; switching is no longer offered
58
+ }, {
59
+ key: "layout",
60
+ get: function get() {
61
+ return "left";
62
+ }
63
+
64
+ // Nav light/dark follows the appearance
65
+ }, {
66
+ key: "headerTheme",
67
+ get: function get() {
68
+ return this.isDark ? "dark" : "light";
69
+ }
70
+
71
+ // Content theme follows the appearance
72
+ }, {
73
+ key: "theme",
74
+ get: function get() {
75
+ return this.isDark ? "dark" : "light";
76
+ }
77
+ }]);
78
+ return ThemeStore;
79
+ }();
80
+ export default new ThemeStore();
@@ -0,0 +1,30 @@
1
+ import React from "react";
2
+ export interface ThemeProps {
3
+ children?: React.ReactNode;
4
+ /** 深色导航渐变的两端色,不传用内置值 */
5
+ navDarkColors?: {
6
+ top: string;
7
+ bottom: string;
8
+ };
9
+ }
10
+ /**
11
+ * 外观控制器 + 布局专属配色。
12
+ *
13
+ * 这里刻意**不**做全局主题 —— 色板、圆角、字号、控件高度、明暗算法、focus ring 都由本库的
14
+ * `ConfigProvider` 从设计令牌统一产出。这个组件只负责两件它独有的事:
15
+ *
16
+ * 1. **写 `html[data-theme]`**。令牌的 CSS 变量与 `useIsDark` 都监听这个属性,但**没有人写它** ——
17
+ * 这是外观三态(light / dark / 跟随系统)落地的地方,也是这个组件存在的主要理由。
18
+ * 2. **侧栏与导航的配色**。菜单选中态的胶囊、深色导航的渐变,这些是布局特有的,
19
+ * 通用令牌覆盖不到,用一层就近的 antd ConfigProvider 叠加(antd 的嵌套规则:内层胜)。
20
+ *
21
+ * 移植时去掉的(本库已有,留着会重复甚至打架):
22
+ * - 自己包一层 antd ConfigProvider 做全局主题、切 darkAlgorithm -> ConfigProvider
23
+ * - hexToRgba -> styles/tokens 的 withAlpha
24
+ * - 自存一份主题色(原来固定是青色) -> antd useToken 里当前生效的 colorPrimary
25
+ * - matchMedia 监听系统深色 -> useIsDark
26
+ * - borderRadius / colorBorder / Table / Card / Button / Input 等成套 token 覆盖 -> toAntdTheme
27
+ * - 在包裹元素上内联重定义 --cf-*:那会盖掉 tokens.scss 生成的值,属于主动帮倒忙
28
+ */
29
+ declare const Theme: React.FC<ThemeProps>;
30
+ export default Theme;
@@ -0,0 +1,89 @@
1
+ import React, { useEffect, useMemo } from "react";
2
+ import { ConfigProvider as AntdConfigProvider, theme as antdTheme } from "antd";
3
+ import { observer } from "mobx-react-lite";
4
+ import classNames from "classnames";
5
+ import styles from "./index.module.scss";
6
+ import ThemeStore from "./ThemeStore";
7
+ import { lightTokens, darkTokens, withAlpha } from "../../styles/tokens";
8
+ import { jsx as _jsx } from "react/jsx-runtime";
9
+ /**
10
+ * 外观控制器 + 布局专属配色。
11
+ *
12
+ * 这里刻意**不**做全局主题 —— 色板、圆角、字号、控件高度、明暗算法、focus ring 都由本库的
13
+ * `ConfigProvider` 从设计令牌统一产出。这个组件只负责两件它独有的事:
14
+ *
15
+ * 1. **写 `html[data-theme]`**。令牌的 CSS 变量与 `useIsDark` 都监听这个属性,但**没有人写它** ——
16
+ * 这是外观三态(light / dark / 跟随系统)落地的地方,也是这个组件存在的主要理由。
17
+ * 2. **侧栏与导航的配色**。菜单选中态的胶囊、深色导航的渐变,这些是布局特有的,
18
+ * 通用令牌覆盖不到,用一层就近的 antd ConfigProvider 叠加(antd 的嵌套规则:内层胜)。
19
+ *
20
+ * 移植时去掉的(本库已有,留着会重复甚至打架):
21
+ * - 自己包一层 antd ConfigProvider 做全局主题、切 darkAlgorithm -> ConfigProvider
22
+ * - hexToRgba -> styles/tokens 的 withAlpha
23
+ * - 自存一份主题色(原来固定是青色) -> antd useToken 里当前生效的 colorPrimary
24
+ * - matchMedia 监听系统深色 -> useIsDark
25
+ * - borderRadius / colorBorder / Table / Card / Button / Input 等成套 token 覆盖 -> toAntdTheme
26
+ * - 在包裹元素上内联重定义 --cf-*:那会盖掉 tokens.scss 生成的值,属于主动帮倒忙
27
+ */
28
+ var Theme = observer(function (props) {
29
+ var _navDarkColors$top, _navDarkColors$bottom;
30
+ var children = props.children,
31
+ navDarkColors = props.navDarkColors;
32
+ var isDark = ThemeStore.isDark;
33
+ var t = isDark ? darkTokens : lightTokens;
34
+
35
+ // 主色取**当前生效**的那个,而不是自己再存一份 —— 消费方在 ConfigProvider 上换了
36
+ // primaryColor,导航的选中态要跟着换,否则菜单会是一个和全站无关的颜色。
37
+ var _antdTheme$useToken = antdTheme.useToken(),
38
+ token = _antdTheme$useToken.token;
39
+ var primaryColor = token.colorPrimary;
40
+
41
+ // 写 data-theme:CSS 变量与 useIsDark 都看它。
42
+ useEffect(function () {
43
+ document.documentElement.dataset.theme = isDark ? "dark" : "light";
44
+ }, [isDark]);
45
+ var themeConfig = useMemo(function () {
46
+ return {
47
+ components: {
48
+ Layout: {
49
+ headerBg: t.surface,
50
+ siderBg: t.surface
51
+ },
52
+ Menu: {
53
+ // 背景透明,好让导航的渐变透出来;选中态是一颗圆角胶囊
54
+ darkItemBg: "transparent",
55
+ darkSubMenuItemBg: "transparent",
56
+ darkPopupBg: t.surface,
57
+ darkItemColor: "rgba(255, 255, 255, 0.82)",
58
+ darkItemHoverColor: "#ffffff",
59
+ darkItemHoverBg: "rgba(255, 255, 255, 0.14)",
60
+ darkItemSelectedBg: withAlpha(primaryColor, 0.16),
61
+ darkItemSelectedColor: primaryColor,
62
+ itemSelectedBg: withAlpha(primaryColor, 0.12),
63
+ itemSelectedColor: primaryColor,
64
+ itemActiveBg: withAlpha(primaryColor, 0.12),
65
+ itemHoverBg: isDark ? "rgba(255, 255, 255, 0.06)" : "rgba(0, 0, 0, 0.04)",
66
+ itemColor: t.foreground,
67
+ itemBorderRadius: 6,
68
+ itemMarginInline: 8,
69
+ itemMarginBlock: 2,
70
+ itemHeight: 38,
71
+ horizontalItemHoverBg: "#0000000a"
72
+ }
73
+ }
74
+ };
75
+ }, [isDark, primaryColor, t]);
76
+ return /*#__PURE__*/_jsx(AntdConfigProvider, {
77
+ theme: themeConfig,
78
+ children: /*#__PURE__*/_jsx("div", {
79
+ className: classNames(styles.theme, isDark ? "dark" : "light"),
80
+ style: {
81
+ "--nav-dark-top": (_navDarkColors$top = navDarkColors === null || navDarkColors === void 0 ? void 0 : navDarkColors.top) !== null && _navDarkColors$top !== void 0 ? _navDarkColors$top : "#1f1f1f",
82
+ "--nav-dark-bottom": (_navDarkColors$bottom = navDarkColors === null || navDarkColors === void 0 ? void 0 : navDarkColors.bottom) !== null && _navDarkColors$bottom !== void 0 ? _navDarkColors$bottom : "#141414"
83
+ },
84
+ children: children
85
+ })
86
+ });
87
+ });
88
+ Theme.displayName = "Theme";
89
+ export default Theme;
@@ -0,0 +1,6 @@
1
+ .theme {
2
+ width: 100vw;
3
+ height: 100vh;
4
+
5
+ overflow: hidden;
6
+ }
@@ -0,0 +1,6 @@
1
+ /// <reference types="react" />
2
+ export declare const NavTabBarContent: import("react").Context<{
3
+ dropKey?: string | undefined;
4
+ setDropKey?: ((key: string) => void) | undefined;
5
+ }>;
6
+ export default function useDropTab(): (key: string) => void;
@@ -0,0 +1,13 @@
1
+ import { createContext, useContext, useCallback } from "react";
2
+ export var NavTabBarContent = /*#__PURE__*/createContext({});
3
+ export default function useDropTab() {
4
+ var _useContext = useContext(NavTabBarContent),
5
+ setDropKey = _useContext.setDropKey;
6
+ var drop = useCallback(function (key) {
7
+ setDropKey === null || setDropKey === void 0 || setDropKey(key);
8
+ setTimeout(function () {
9
+ setDropKey === null || setDropKey === void 0 || setDropKey("");
10
+ }, 0);
11
+ }, [setDropKey]);
12
+ return drop;
13
+ }