@yoka-ui/ui 1.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 (488) hide show
  1. package/@Docs-yoka/exports.generated.md +93 -0
  2. package/@Docs-yoka/llms.txt +23 -0
  3. package/README.md +113 -0
  4. package/dist/es/Themes/InputTheme/index.d.ts +6 -0
  5. package/dist/es/Themes/InputTheme/index.js +22 -0
  6. package/dist/es/Themes/InputTheme/index.js.map +7 -0
  7. package/dist/es/Themes/TableTheme/index.d.ts +7 -0
  8. package/dist/es/Themes/TableTheme/index.js +31 -0
  9. package/dist/es/Themes/TableTheme/index.js.map +7 -0
  10. package/dist/es/Themes/TableTheme/index.less +46 -0
  11. package/dist/es/assets/image/YKUI-logo.png +0 -0
  12. package/dist/es/assets/less/ant-reset.less +402 -0
  13. package/dist/es/assets/less/index.less +1 -0
  14. package/dist/es/assets/less/variables.less +16 -0
  15. package/dist/es/business/AiChat/MarkdownRender.d.ts +9 -0
  16. package/dist/es/business/AiChat/MarkdownRender.js +72 -0
  17. package/dist/es/business/AiChat/MarkdownRender.js.map +7 -0
  18. package/dist/es/business/AiChat/index.d.ts +16 -0
  19. package/dist/es/business/AiChat/index.js +733 -0
  20. package/dist/es/business/AiChat/index.js.map +7 -0
  21. package/dist/es/business/AiChat/intentRecognizer.d.ts +33 -0
  22. package/dist/es/business/AiChat/intentRecognizer.js +166 -0
  23. package/dist/es/business/AiChat/intentRecognizer.js.map +7 -0
  24. package/dist/es/business/AiChat/navigationManager.d.ts +94 -0
  25. package/dist/es/business/AiChat/navigationManager.js +208 -0
  26. package/dist/es/business/AiChat/navigationManager.js.map +7 -0
  27. package/dist/es/business/AiChat/sse.d.ts +16 -0
  28. package/dist/es/business/AiChat/sse.js +171 -0
  29. package/dist/es/business/AiChat/sse.js.map +7 -0
  30. package/dist/es/business/AiChat/type.d.ts +156 -0
  31. package/dist/es/business/AiChat/type.js +1 -0
  32. package/dist/es/business/AiChat/type.js.map +7 -0
  33. package/dist/es/business/AiChat/useAiChat.d.ts +2 -0
  34. package/dist/es/business/AiChat/useAiChat.js +268 -0
  35. package/dist/es/business/AiChat/useAiChat.js.map +7 -0
  36. package/dist/es/business/AiChat/useTaskWorkflow.d.ts +25 -0
  37. package/dist/es/business/AiChat/useTaskWorkflow.js +196 -0
  38. package/dist/es/business/AiChat/useTaskWorkflow.js.map +7 -0
  39. package/dist/es/business/DrawerPageInfo/index.d.ts +35 -0
  40. package/dist/es/business/DrawerPageInfo/index.js +133 -0
  41. package/dist/es/business/DrawerPageInfo/index.js.map +7 -0
  42. package/dist/es/business/DrawerPageInfo/index.module.less +87 -0
  43. package/dist/es/business/DrawerPageInfo/test.png +0 -0
  44. package/dist/es/business/Editor/index.d.ts +11 -0
  45. package/dist/es/business/Editor/index.js +86 -0
  46. package/dist/es/business/Editor/index.js.map +7 -0
  47. package/dist/es/business/Editor/index.less +31 -0
  48. package/dist/es/business/Empty/empty.png +0 -0
  49. package/dist/es/business/Empty/index.d.ts +19 -0
  50. package/dist/es/business/Empty/index.js +51 -0
  51. package/dist/es/business/Empty/index.js.map +7 -0
  52. package/dist/es/business/ModCommonFilter/assets/images/empty.png +0 -0
  53. package/dist/es/business/ModCommonFilter/components/FilterButton/IconClose.d.ts +13 -0
  54. package/dist/es/business/ModCommonFilter/components/FilterButton/IconClose.js +51 -0
  55. package/dist/es/business/ModCommonFilter/components/FilterButton/IconClose.js.map +7 -0
  56. package/dist/es/business/ModCommonFilter/components/FilterButton/IconXiala.d.ts +13 -0
  57. package/dist/es/business/ModCommonFilter/components/FilterButton/IconXiala.js +51 -0
  58. package/dist/es/business/ModCommonFilter/components/FilterButton/IconXiala.js.map +7 -0
  59. package/dist/es/business/ModCommonFilter/components/FilterButton/index.d.ts +25 -0
  60. package/dist/es/business/ModCommonFilter/components/FilterButton/index.js +30 -0
  61. package/dist/es/business/ModCommonFilter/components/FilterButton/index.js.map +7 -0
  62. package/dist/es/business/ModCommonFilter/components/FilterButton/index.module.less +97 -0
  63. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.d.ts +18 -0
  64. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js +74 -0
  65. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js.map +7 -0
  66. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.d.ts +37 -0
  67. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js +216 -0
  68. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js.map +7 -0
  69. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.d.ts +26 -0
  70. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js +102 -0
  71. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js.map +7 -0
  72. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.d.ts +51 -0
  73. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.js +71 -0
  74. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.js.map +7 -0
  75. package/dist/es/business/ModCommonFilter/components/PopoverContent/index.module.less +260 -0
  76. package/dist/es/business/ModCommonFilter/index.d.ts +53 -0
  77. package/dist/es/business/ModCommonFilter/index.js +129 -0
  78. package/dist/es/business/ModCommonFilter/index.js.map +7 -0
  79. package/dist/es/business/ModCommonFilter/index.module.less +7 -0
  80. package/dist/es/business/ModCommonFilter/typing.d.ts +20 -0
  81. package/dist/es/business/ModCommonFilter/typing.js +1 -0
  82. package/dist/es/business/ModCommonFilter/typing.js.map +7 -0
  83. package/dist/es/business/YkPorjectSelect/icon-product.png +0 -0
  84. package/dist/es/business/YkPorjectSelect/index.d.ts +51 -0
  85. package/dist/es/business/YkPorjectSelect/index.js +260 -0
  86. package/dist/es/business/YkPorjectSelect/index.js.map +7 -0
  87. package/dist/es/business/YkPorjectSelect/index.module.less +334 -0
  88. package/dist/es/business/YkPorjectSelect/product-close.png +0 -0
  89. package/dist/es/components/Clock/index.d.ts +19 -0
  90. package/dist/es/components/Clock/index.js +55 -0
  91. package/dist/es/components/Clock/index.js.map +7 -0
  92. package/dist/es/components/DebounceInput/index.d.ts +16 -0
  93. package/dist/es/components/DebounceInput/index.js +77 -0
  94. package/dist/es/components/DebounceInput/index.js.map +7 -0
  95. package/dist/es/components/DebounceInput/index.module.less +23 -0
  96. package/dist/es/components/MultipleSelect/index.d.ts +23 -0
  97. package/dist/es/components/MultipleSelect/index.js +249 -0
  98. package/dist/es/components/MultipleSelect/index.js.map +7 -0
  99. package/dist/es/components/MultipleSelect/index.module.less +174 -0
  100. package/dist/es/components/NumericInput/index.d.ts +19 -0
  101. package/dist/es/components/NumericInput/index.js +56 -0
  102. package/dist/es/components/NumericInput/index.js.map +7 -0
  103. package/dist/es/components/RefreshButton/index.d.ts +8 -0
  104. package/dist/es/components/RefreshButton/index.js +21 -0
  105. package/dist/es/components/RefreshButton/index.js.map +7 -0
  106. package/dist/es/components/SearchWithHistory/index.d.ts +21 -0
  107. package/dist/es/components/SearchWithHistory/index.js +115 -0
  108. package/dist/es/components/SearchWithHistory/index.js.map +7 -0
  109. package/dist/es/components/SearchWithHistory/index.module.less +64 -0
  110. package/dist/es/components/TextWithInput/index.d.ts +15 -0
  111. package/dist/es/components/TextWithInput/index.js +35 -0
  112. package/dist/es/components/TextWithInput/index.js.map +7 -0
  113. package/dist/es/components/TextWithToolTip/index.d.ts +17 -0
  114. package/dist/es/components/TextWithToolTip/index.js +118 -0
  115. package/dist/es/components/TextWithToolTip/index.js.map +7 -0
  116. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +28 -0
  117. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js +161 -0
  118. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js.map +7 -0
  119. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.less +151 -0
  120. package/dist/es/components/TreeTransfer/index.d.ts +28 -0
  121. package/dist/es/components/TreeTransfer/index.js +210 -0
  122. package/dist/es/components/TreeTransfer/index.js.map +7 -0
  123. package/dist/es/components/TreeTransfer/index.less +69 -0
  124. package/dist/es/components/TreeTransfer/types.d.ts +122 -0
  125. package/dist/es/components/TreeTransfer/types.js +6 -0
  126. package/dist/es/components/TreeTransfer/types.js.map +7 -0
  127. package/dist/es/components/TreeTransfer/utils/index.d.ts +120 -0
  128. package/dist/es/components/TreeTransfer/utils/index.js +195 -0
  129. package/dist/es/components/TreeTransfer/utils/index.js.map +7 -0
  130. package/dist/es/components/YkDateRangePicker/YkDateRangePicker.mdx +180 -0
  131. package/dist/es/components/YkDateRangePicker/index.d.ts +61 -0
  132. package/dist/es/components/YkDateRangePicker/index.js +317 -0
  133. package/dist/es/components/YkDateRangePicker/index.js.map +7 -0
  134. package/dist/es/components/YkDateRangePicker/index.module.less +304 -0
  135. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +16 -0
  136. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +193 -0
  137. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +7 -0
  138. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +31 -0
  139. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +576 -0
  140. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +7 -0
  141. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +16 -0
  142. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js +55 -0
  143. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +7 -0
  144. package/dist/es/components/YkRangeDateWithVS/index.d.ts +62 -0
  145. package/dist/es/components/YkRangeDateWithVS/index.js +130 -0
  146. package/dist/es/components/YkRangeDateWithVS/index.js.map +7 -0
  147. package/dist/es/components/YkRangeDateWithVS/index.module.less +566 -0
  148. package/dist/es/components/YkRangeDateWithVS/styles.d.ts +2 -0
  149. package/dist/es/components/YkRangeDateWithVS/styles.js +18 -0
  150. package/dist/es/components/YkRangeDateWithVS/styles.js.map +7 -0
  151. package/dist/es/components/YkRangeDateWithVS/typing.d.ts +15 -0
  152. package/dist/es/components/YkRangeTimeWithRecent/constants.d.ts +48 -0
  153. package/dist/es/components/YkRangeTimeWithRecent/constants.js +288 -0
  154. package/dist/es/components/YkRangeTimeWithRecent/constants.js.map +7 -0
  155. package/dist/es/components/YkRangeTimeWithRecent/index.d.ts +26 -0
  156. package/dist/es/components/YkRangeTimeWithRecent/index.js +647 -0
  157. package/dist/es/components/YkRangeTimeWithRecent/index.js.map +7 -0
  158. package/dist/es/components/YkRangeTimeWithRecent/index.module.less +263 -0
  159. package/dist/es/creative/ButtonRadioWithInfo/index.d.ts +17 -0
  160. package/dist/es/creative/ButtonRadioWithInfo/index.js +103 -0
  161. package/dist/es/creative/ButtonRadioWithInfo/index.js.map +7 -0
  162. package/dist/es/creative/ButtonRadioWithInfo/index.less +106 -0
  163. package/dist/es/creative/ButtonWithProgress/index.d.ts +11 -0
  164. package/dist/es/creative/ButtonWithProgress/index.js +79 -0
  165. package/dist/es/creative/ButtonWithProgress/index.js.map +7 -0
  166. package/dist/es/creative/ButtonWithProgress/index.less +66 -0
  167. package/dist/es/global.less +12 -0
  168. package/dist/es/index.d.ts +43 -0
  169. package/dist/es/index.js +87 -0
  170. package/dist/es/index.js.map +7 -0
  171. package/dist/es/index.less +35 -0
  172. package/dist/es/layout/FlexGrid/index.d.ts +25 -0
  173. package/dist/es/layout/FlexGrid/index.js +63 -0
  174. package/dist/es/layout/FlexGrid/index.js.map +7 -0
  175. package/dist/es/layout/YkContainer/index.d.ts +27 -0
  176. package/dist/es/layout/YkContainer/index.js +79 -0
  177. package/dist/es/layout/YkContainer/index.js.map +7 -0
  178. package/dist/es/layout/YkDrawer/index.d.ts +22 -0
  179. package/dist/es/layout/YkDrawer/index.js +160 -0
  180. package/dist/es/layout/YkDrawer/index.js.map +7 -0
  181. package/dist/es/layout/YkDrawer/index.module.less +45 -0
  182. package/dist/es/ui/LabelSelect/demo.d.ts +3 -0
  183. package/dist/es/ui/LabelSelect/demo.js +83 -0
  184. package/dist/es/ui/LabelSelect/demo.js.map +7 -0
  185. package/dist/es/ui/LabelSelect/index.d.ts +41 -0
  186. package/dist/es/ui/LabelSelect/index.js +136 -0
  187. package/dist/es/ui/LabelSelect/index.js.map +7 -0
  188. package/dist/es/ui/LogicOperator/index.d.ts +10 -0
  189. package/dist/es/ui/LogicOperator/index.js +12 -0
  190. package/dist/es/ui/LogicOperator/index.js.map +7 -0
  191. package/dist/es/ui/LogicOperator/index.module.less +97 -0
  192. package/dist/es/ui/YkButton/index.d.ts +9 -0
  193. package/dist/es/ui/YkButton/index.js +59 -0
  194. package/dist/es/ui/YkButton/index.js.map +7 -0
  195. package/dist/es/ui/YkCard/index.d.ts +4 -0
  196. package/dist/es/ui/YkCard/index.js +79 -0
  197. package/dist/es/ui/YkCard/index.js.map +7 -0
  198. package/dist/es/ui/YkCard/index.module.less +30 -0
  199. package/dist/es/ui/YkCheckbox/index.d.ts +4 -0
  200. package/dist/es/ui/YkCheckbox/index.js +45 -0
  201. package/dist/es/ui/YkCheckbox/index.js.map +7 -0
  202. package/dist/es/ui/YkCheckbox/index.module.less +22 -0
  203. package/dist/es/ui/YkDescriptions/index.d.ts +4 -0
  204. package/dist/es/ui/YkDescriptions/index.js +41 -0
  205. package/dist/es/ui/YkDescriptions/index.js.map +7 -0
  206. package/dist/es/ui/YkPagination/index.d.ts +4 -0
  207. package/dist/es/ui/YkPagination/index.js +63 -0
  208. package/dist/es/ui/YkPagination/index.js.map +7 -0
  209. package/dist/es/ui/YkPagination/index.module.less +22 -0
  210. package/dist/es/ui/YkRadio/index.d.ts +4 -0
  211. package/dist/es/ui/YkRadio/index.js +51 -0
  212. package/dist/es/ui/YkRadio/index.js.map +7 -0
  213. package/dist/es/ui/YkRadio/index.module.less +22 -0
  214. package/dist/es/ui/YkRadioBtnSpecial/index.d.ts +15 -0
  215. package/dist/es/ui/YkRadioBtnSpecial/index.js +23 -0
  216. package/dist/es/ui/YkRadioBtnSpecial/index.js.map +7 -0
  217. package/dist/es/ui/YkRadioBtnSpecial/index.module.less +112 -0
  218. package/dist/es/ui/YkSegmented/index.d.ts +4 -0
  219. package/dist/es/ui/YkSegmented/index.js +41 -0
  220. package/dist/es/ui/YkSegmented/index.js.map +7 -0
  221. package/dist/es/ui/YkSelect/index.d.ts +7 -0
  222. package/dist/es/ui/YkSelect/index.js +54 -0
  223. package/dist/es/ui/YkSelect/index.js.map +7 -0
  224. package/dist/es/ui/YkSpin/index.d.ts +4 -0
  225. package/dist/es/ui/YkSpin/index.js +41 -0
  226. package/dist/es/ui/YkSpin/index.js.map +7 -0
  227. package/dist/es/ui/YkStatistic/index.d.ts +4 -0
  228. package/dist/es/ui/YkStatistic/index.js +41 -0
  229. package/dist/es/ui/YkStatistic/index.js.map +7 -0
  230. package/dist/es/ui/YkSwitch/index.d.ts +4 -0
  231. package/dist/es/ui/YkSwitch/index.js +51 -0
  232. package/dist/es/ui/YkSwitch/index.js.map +7 -0
  233. package/dist/es/ui/YkTabs/index.d.ts +12 -0
  234. package/dist/es/ui/YkTabs/index.js +75 -0
  235. package/dist/es/ui/YkTabs/index.js.map +7 -0
  236. package/dist/es/ui/YkTabs/index.module.less +11 -0
  237. package/dist/es/ui/YkTooltip/index.d.ts +4 -0
  238. package/dist/es/ui/YkTooltip/index.js +50 -0
  239. package/dist/es/ui/YkTooltip/index.js.map +7 -0
  240. package/dist/es/utils/styleUtils.d.ts +18 -0
  241. package/dist/es/utils/styleUtils.js +57 -0
  242. package/dist/es/utils/styleUtils.js.map +7 -0
  243. package/dist/es/utils/ykStorybookDoc.d.ts +17 -0
  244. package/dist/es/utils/ykStorybookDoc.js +18 -0
  245. package/dist/es/utils/ykStorybookDoc.js.map +7 -0
  246. package/dist/lib/Themes/InputTheme/index.d.ts +6 -0
  247. package/dist/lib/Themes/InputTheme/index.js +52 -0
  248. package/dist/lib/Themes/InputTheme/index.js.map +7 -0
  249. package/dist/lib/Themes/TableTheme/index.d.ts +7 -0
  250. package/dist/lib/Themes/TableTheme/index.js +61 -0
  251. package/dist/lib/Themes/TableTheme/index.js.map +7 -0
  252. package/dist/lib/Themes/TableTheme/index.less +46 -0
  253. package/dist/lib/assets/image/YKUI-logo.png +0 -0
  254. package/dist/lib/assets/less/ant-reset.less +402 -0
  255. package/dist/lib/assets/less/index.less +1 -0
  256. package/dist/lib/assets/less/variables.less +16 -0
  257. package/dist/lib/business/AiChat/MarkdownRender.d.ts +9 -0
  258. package/dist/lib/business/AiChat/MarkdownRender.js +102 -0
  259. package/dist/lib/business/AiChat/MarkdownRender.js.map +7 -0
  260. package/dist/lib/business/AiChat/index.d.ts +16 -0
  261. package/dist/lib/business/AiChat/index.js +723 -0
  262. package/dist/lib/business/AiChat/index.js.map +7 -0
  263. package/dist/lib/business/AiChat/intentRecognizer.d.ts +33 -0
  264. package/dist/lib/business/AiChat/intentRecognizer.js +193 -0
  265. package/dist/lib/business/AiChat/intentRecognizer.js.map +7 -0
  266. package/dist/lib/business/AiChat/navigationManager.d.ts +94 -0
  267. package/dist/lib/business/AiChat/navigationManager.js +214 -0
  268. package/dist/lib/business/AiChat/navigationManager.js.map +7 -0
  269. package/dist/lib/business/AiChat/sse.d.ts +16 -0
  270. package/dist/lib/business/AiChat/sse.js +171 -0
  271. package/dist/lib/business/AiChat/sse.js.map +7 -0
  272. package/dist/lib/business/AiChat/type.d.ts +156 -0
  273. package/dist/lib/business/AiChat/type.js +18 -0
  274. package/dist/lib/business/AiChat/type.js.map +7 -0
  275. package/dist/lib/business/AiChat/useAiChat.d.ts +2 -0
  276. package/dist/lib/business/AiChat/useAiChat.js +252 -0
  277. package/dist/lib/business/AiChat/useAiChat.js.map +7 -0
  278. package/dist/lib/business/AiChat/useTaskWorkflow.d.ts +25 -0
  279. package/dist/lib/business/AiChat/useTaskWorkflow.js +182 -0
  280. package/dist/lib/business/AiChat/useTaskWorkflow.js.map +7 -0
  281. package/dist/lib/business/DrawerPageInfo/index.d.ts +35 -0
  282. package/dist/lib/business/DrawerPageInfo/index.js +163 -0
  283. package/dist/lib/business/DrawerPageInfo/index.js.map +7 -0
  284. package/dist/lib/business/DrawerPageInfo/index.module.less +87 -0
  285. package/dist/lib/business/DrawerPageInfo/test.png +0 -0
  286. package/dist/lib/business/Editor/index.d.ts +11 -0
  287. package/dist/lib/business/Editor/index.js +99 -0
  288. package/dist/lib/business/Editor/index.js.map +7 -0
  289. package/dist/lib/business/Editor/index.less +31 -0
  290. package/dist/lib/business/Empty/empty.png +0 -0
  291. package/dist/lib/business/Empty/index.d.ts +19 -0
  292. package/dist/lib/business/Empty/index.js +65 -0
  293. package/dist/lib/business/Empty/index.js.map +7 -0
  294. package/dist/lib/business/ModCommonFilter/assets/images/empty.png +0 -0
  295. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.d.ts +13 -0
  296. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.js +50 -0
  297. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconClose.js.map +7 -0
  298. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.d.ts +13 -0
  299. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.js +50 -0
  300. package/dist/lib/business/ModCommonFilter/components/FilterButton/IconXiala.js.map +7 -0
  301. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.d.ts +25 -0
  302. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.js +60 -0
  303. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.js.map +7 -0
  304. package/dist/lib/business/ModCommonFilter/components/FilterButton/index.module.less +97 -0
  305. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.d.ts +18 -0
  306. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js +69 -0
  307. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js.map +7 -0
  308. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.d.ts +37 -0
  309. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js +211 -0
  310. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js.map +7 -0
  311. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.d.ts +26 -0
  312. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js +97 -0
  313. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js.map +7 -0
  314. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.d.ts +51 -0
  315. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.js +101 -0
  316. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.js.map +7 -0
  317. package/dist/lib/business/ModCommonFilter/components/PopoverContent/index.module.less +260 -0
  318. package/dist/lib/business/ModCommonFilter/index.d.ts +53 -0
  319. package/dist/lib/business/ModCommonFilter/index.js +143 -0
  320. package/dist/lib/business/ModCommonFilter/index.js.map +7 -0
  321. package/dist/lib/business/ModCommonFilter/index.module.less +7 -0
  322. package/dist/lib/business/ModCommonFilter/typing.d.ts +20 -0
  323. package/dist/lib/business/ModCommonFilter/typing.js +18 -0
  324. package/dist/lib/business/ModCommonFilter/typing.js.map +7 -0
  325. package/dist/lib/business/YkPorjectSelect/icon-product.png +0 -0
  326. package/dist/lib/business/YkPorjectSelect/index.d.ts +51 -0
  327. package/dist/lib/business/YkPorjectSelect/index.js +235 -0
  328. package/dist/lib/business/YkPorjectSelect/index.js.map +7 -0
  329. package/dist/lib/business/YkPorjectSelect/index.module.less +334 -0
  330. package/dist/lib/business/YkPorjectSelect/product-close.png +0 -0
  331. package/dist/lib/components/Clock/index.d.ts +19 -0
  332. package/dist/lib/components/Clock/index.js +85 -0
  333. package/dist/lib/components/Clock/index.js.map +7 -0
  334. package/dist/lib/components/DebounceInput/index.d.ts +16 -0
  335. package/dist/lib/components/DebounceInput/index.js +107 -0
  336. package/dist/lib/components/DebounceInput/index.js.map +7 -0
  337. package/dist/lib/components/DebounceInput/index.module.less +23 -0
  338. package/dist/lib/components/MultipleSelect/index.d.ts +23 -0
  339. package/dist/lib/components/MultipleSelect/index.js +279 -0
  340. package/dist/lib/components/MultipleSelect/index.js.map +7 -0
  341. package/dist/lib/components/MultipleSelect/index.module.less +174 -0
  342. package/dist/lib/components/NumericInput/index.d.ts +19 -0
  343. package/dist/lib/components/NumericInput/index.js +67 -0
  344. package/dist/lib/components/NumericInput/index.js.map +7 -0
  345. package/dist/lib/components/RefreshButton/index.d.ts +8 -0
  346. package/dist/lib/components/RefreshButton/index.js +51 -0
  347. package/dist/lib/components/RefreshButton/index.js.map +7 -0
  348. package/dist/lib/components/SearchWithHistory/index.d.ts +21 -0
  349. package/dist/lib/components/SearchWithHistory/index.js +145 -0
  350. package/dist/lib/components/SearchWithHistory/index.js.map +7 -0
  351. package/dist/lib/components/SearchWithHistory/index.module.less +64 -0
  352. package/dist/lib/components/TextWithInput/index.d.ts +15 -0
  353. package/dist/lib/components/TextWithInput/index.js +65 -0
  354. package/dist/lib/components/TextWithInput/index.js.map +7 -0
  355. package/dist/lib/components/TextWithToolTip/index.d.ts +17 -0
  356. package/dist/lib/components/TextWithToolTip/index.js +134 -0
  357. package/dist/lib/components/TextWithToolTip/index.js.map +7 -0
  358. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +28 -0
  359. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js +191 -0
  360. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js.map +7 -0
  361. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.less +151 -0
  362. package/dist/lib/components/TreeTransfer/index.d.ts +28 -0
  363. package/dist/lib/components/TreeTransfer/index.js +214 -0
  364. package/dist/lib/components/TreeTransfer/index.js.map +7 -0
  365. package/dist/lib/components/TreeTransfer/index.less +69 -0
  366. package/dist/lib/components/TreeTransfer/types.d.ts +122 -0
  367. package/dist/lib/components/TreeTransfer/types.js +30 -0
  368. package/dist/lib/components/TreeTransfer/types.js.map +7 -0
  369. package/dist/lib/components/TreeTransfer/utils/index.d.ts +120 -0
  370. package/dist/lib/components/TreeTransfer/utils/index.js +208 -0
  371. package/dist/lib/components/TreeTransfer/utils/index.js.map +7 -0
  372. package/dist/lib/components/YkDateRangePicker/YkDateRangePicker.mdx +180 -0
  373. package/dist/lib/components/YkDateRangePicker/index.d.ts +61 -0
  374. package/dist/lib/components/YkDateRangePicker/index.js +338 -0
  375. package/dist/lib/components/YkDateRangePicker/index.js.map +7 -0
  376. package/dist/lib/components/YkDateRangePicker/index.module.less +304 -0
  377. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +16 -0
  378. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +223 -0
  379. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +7 -0
  380. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +31 -0
  381. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +587 -0
  382. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +7 -0
  383. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +16 -0
  384. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js +85 -0
  385. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +7 -0
  386. package/dist/lib/components/YkRangeDateWithVS/index.d.ts +62 -0
  387. package/dist/lib/components/YkRangeDateWithVS/index.js +140 -0
  388. package/dist/lib/components/YkRangeDateWithVS/index.js.map +7 -0
  389. package/dist/lib/components/YkRangeDateWithVS/index.module.less +566 -0
  390. package/dist/lib/components/YkRangeDateWithVS/styles.d.ts +2 -0
  391. package/dist/lib/components/YkRangeDateWithVS/styles.js +48 -0
  392. package/dist/lib/components/YkRangeDateWithVS/styles.js.map +7 -0
  393. package/dist/lib/components/YkRangeDateWithVS/typing.d.ts +15 -0
  394. package/dist/lib/components/YkRangeTimeWithRecent/constants.d.ts +48 -0
  395. package/dist/lib/components/YkRangeTimeWithRecent/constants.js +333 -0
  396. package/dist/lib/components/YkRangeTimeWithRecent/constants.js.map +7 -0
  397. package/dist/lib/components/YkRangeTimeWithRecent/index.d.ts +26 -0
  398. package/dist/lib/components/YkRangeTimeWithRecent/index.js +647 -0
  399. package/dist/lib/components/YkRangeTimeWithRecent/index.js.map +7 -0
  400. package/dist/lib/components/YkRangeTimeWithRecent/index.module.less +263 -0
  401. package/dist/lib/creative/ButtonRadioWithInfo/index.d.ts +17 -0
  402. package/dist/lib/creative/ButtonRadioWithInfo/index.js +102 -0
  403. package/dist/lib/creative/ButtonRadioWithInfo/index.js.map +7 -0
  404. package/dist/lib/creative/ButtonRadioWithInfo/index.less +106 -0
  405. package/dist/lib/creative/ButtonWithProgress/index.d.ts +11 -0
  406. package/dist/lib/creative/ButtonWithProgress/index.js +70 -0
  407. package/dist/lib/creative/ButtonWithProgress/index.js.map +7 -0
  408. package/dist/lib/creative/ButtonWithProgress/index.less +66 -0
  409. package/dist/lib/global.less +12 -0
  410. package/dist/lib/index.d.ts +43 -0
  411. package/dist/lib/index.js +161 -0
  412. package/dist/lib/index.js.map +7 -0
  413. package/dist/lib/index.less +35 -0
  414. package/dist/lib/layout/FlexGrid/index.d.ts +25 -0
  415. package/dist/lib/layout/FlexGrid/index.js +77 -0
  416. package/dist/lib/layout/FlexGrid/index.js.map +7 -0
  417. package/dist/lib/layout/YkContainer/index.d.ts +27 -0
  418. package/dist/lib/layout/YkContainer/index.js +79 -0
  419. package/dist/lib/layout/YkContainer/index.js.map +7 -0
  420. package/dist/lib/layout/YkDrawer/index.d.ts +22 -0
  421. package/dist/lib/layout/YkDrawer/index.js +152 -0
  422. package/dist/lib/layout/YkDrawer/index.js.map +7 -0
  423. package/dist/lib/layout/YkDrawer/index.module.less +45 -0
  424. package/dist/lib/ui/LabelSelect/demo.d.ts +3 -0
  425. package/dist/lib/ui/LabelSelect/demo.js +113 -0
  426. package/dist/lib/ui/LabelSelect/demo.js.map +7 -0
  427. package/dist/lib/ui/LabelSelect/index.d.ts +41 -0
  428. package/dist/lib/ui/LabelSelect/index.js +124 -0
  429. package/dist/lib/ui/LabelSelect/index.js.map +7 -0
  430. package/dist/lib/ui/LogicOperator/index.d.ts +10 -0
  431. package/dist/lib/ui/LogicOperator/index.js +42 -0
  432. package/dist/lib/ui/LogicOperator/index.js.map +7 -0
  433. package/dist/lib/ui/LogicOperator/index.module.less +97 -0
  434. package/dist/lib/ui/YkButton/index.d.ts +9 -0
  435. package/dist/lib/ui/YkButton/index.js +55 -0
  436. package/dist/lib/ui/YkButton/index.js.map +7 -0
  437. package/dist/lib/ui/YkCard/index.d.ts +4 -0
  438. package/dist/lib/ui/YkCard/index.js +76 -0
  439. package/dist/lib/ui/YkCard/index.js.map +7 -0
  440. package/dist/lib/ui/YkCard/index.module.less +30 -0
  441. package/dist/lib/ui/YkCheckbox/index.d.ts +4 -0
  442. package/dist/lib/ui/YkCheckbox/index.js +42 -0
  443. package/dist/lib/ui/YkCheckbox/index.js.map +7 -0
  444. package/dist/lib/ui/YkCheckbox/index.module.less +22 -0
  445. package/dist/lib/ui/YkDescriptions/index.d.ts +4 -0
  446. package/dist/lib/ui/YkDescriptions/index.js +41 -0
  447. package/dist/lib/ui/YkDescriptions/index.js.map +7 -0
  448. package/dist/lib/ui/YkPagination/index.d.ts +4 -0
  449. package/dist/lib/ui/YkPagination/index.js +60 -0
  450. package/dist/lib/ui/YkPagination/index.js.map +7 -0
  451. package/dist/lib/ui/YkPagination/index.module.less +22 -0
  452. package/dist/lib/ui/YkRadio/index.d.ts +4 -0
  453. package/dist/lib/ui/YkRadio/index.js +51 -0
  454. package/dist/lib/ui/YkRadio/index.js.map +7 -0
  455. package/dist/lib/ui/YkRadio/index.module.less +22 -0
  456. package/dist/lib/ui/YkRadioBtnSpecial/index.d.ts +15 -0
  457. package/dist/lib/ui/YkRadioBtnSpecial/index.js +53 -0
  458. package/dist/lib/ui/YkRadioBtnSpecial/index.js.map +7 -0
  459. package/dist/lib/ui/YkRadioBtnSpecial/index.module.less +112 -0
  460. package/dist/lib/ui/YkSegmented/index.d.ts +4 -0
  461. package/dist/lib/ui/YkSegmented/index.js +41 -0
  462. package/dist/lib/ui/YkSegmented/index.js.map +7 -0
  463. package/dist/lib/ui/YkSelect/index.d.ts +7 -0
  464. package/dist/lib/ui/YkSelect/index.js +54 -0
  465. package/dist/lib/ui/YkSelect/index.js.map +7 -0
  466. package/dist/lib/ui/YkSpin/index.d.ts +4 -0
  467. package/dist/lib/ui/YkSpin/index.js +41 -0
  468. package/dist/lib/ui/YkSpin/index.js.map +7 -0
  469. package/dist/lib/ui/YkStatistic/index.d.ts +4 -0
  470. package/dist/lib/ui/YkStatistic/index.js +41 -0
  471. package/dist/lib/ui/YkStatistic/index.js.map +7 -0
  472. package/dist/lib/ui/YkSwitch/index.d.ts +4 -0
  473. package/dist/lib/ui/YkSwitch/index.js +51 -0
  474. package/dist/lib/ui/YkSwitch/index.js.map +7 -0
  475. package/dist/lib/ui/YkTabs/index.d.ts +12 -0
  476. package/dist/lib/ui/YkTabs/index.js +70 -0
  477. package/dist/lib/ui/YkTabs/index.js.map +7 -0
  478. package/dist/lib/ui/YkTabs/index.module.less +11 -0
  479. package/dist/lib/ui/YkTooltip/index.d.ts +4 -0
  480. package/dist/lib/ui/YkTooltip/index.js +45 -0
  481. package/dist/lib/ui/YkTooltip/index.js.map +7 -0
  482. package/dist/lib/utils/styleUtils.d.ts +18 -0
  483. package/dist/lib/utils/styleUtils.js +84 -0
  484. package/dist/lib/utils/styleUtils.js.map +7 -0
  485. package/dist/lib/utils/ykStorybookDoc.d.ts +17 -0
  486. package/dist/lib/utils/ykStorybookDoc.js +41 -0
  487. package/dist/lib/utils/ykStorybookDoc.js.map +7 -0
  488. package/package.json +148 -0
@@ -0,0 +1,174 @@
1
+ /*
2
+ 基本样式
3
+ */
4
+
5
+ @primaryColor: #3b86f9;
6
+ @iconPrimaryColor: #0a6bfd;
7
+ @fontPrimaryColor: #0a6bfd;
8
+ @borderPrimaryColor: #b0cffe;
9
+ @globalBgColor: #edeff4;
10
+
11
+ @ykFontFamilySemibold: 'PingFangSC-Semibold', 'PingFang SC', 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial,
12
+ sans-serif;
13
+ @ykFontFamilyRegular: 'PingFangSC-Regular', 'PingFang SC', 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial,
14
+ sans-serif;
15
+ @ykFontFamilyMedium: 'PingFangSC-Medium', 'PingFang SC', 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial,
16
+ sans-serif;
17
+
18
+ .button {
19
+ position: relative;
20
+ z-index: 2;
21
+ height: 30px;
22
+ padding: 0 10px;
23
+ color: #333;
24
+ background: rgb(255 255 255);
25
+ border: 0.5px solid rgb(231 231 231);
26
+ border-radius: 2px;
27
+ box-shadow: 0 0.5px 0 0 rgb(231 231 231);
28
+
29
+ &:hover {
30
+ color: #66a8ff !important;
31
+ }
32
+
33
+ :global {
34
+ .icon-xiala1 {
35
+ font-size: 12px;
36
+ transition: transform 0.1s linear;
37
+ }
38
+ }
39
+
40
+ .nameText {
41
+ max-width: 200px;
42
+ overflow: hidden;
43
+ white-space: nowrap;
44
+ text-overflow: ellipsis;
45
+ }
46
+
47
+ .valueText {
48
+ overflow: hidden;
49
+ white-space: nowrap;
50
+ text-align: left;
51
+ text-overflow: ellipsis;
52
+ }
53
+ }
54
+
55
+ .popoverContent {
56
+ position: relative;
57
+ display: flex;
58
+ flex-direction: column;
59
+ min-width: 180px;
60
+ max-width: 180px;
61
+
62
+ .searchInput {
63
+ position: absolute;
64
+ top: 0;
65
+ left: 0;
66
+ z-index: 2;
67
+ display: flex;
68
+ align-items: center;
69
+ width: 100%;
70
+ height: 42px;
71
+ padding: 0 10px;
72
+ border: none !important;
73
+ border-bottom: 1px solid #e7e7e7 !important;
74
+ box-shadow: none !important;
75
+
76
+ :global {
77
+ .icon-sousuo {
78
+ color: #5495fb;
79
+ }
80
+ }
81
+ }
82
+
83
+ .emptyItem {
84
+ width: 100%;
85
+ height: 35px;
86
+ padding: 5px 10px;
87
+ color: #999;
88
+ text-align: center;
89
+ }
90
+
91
+ .popoverContentList {
92
+ position: relative;
93
+ margin-top: 42px;
94
+ padding-top: 10px;
95
+
96
+ .checkAll {
97
+ position: relative;
98
+ width: 100%;
99
+ height: 30px !important;
100
+ padding: 5px 0 5px 15px;
101
+
102
+ &:hover {
103
+ background: #f1f8ff;
104
+
105
+ span {
106
+ color: #3b86f9;
107
+ }
108
+ }
109
+
110
+ :global {
111
+ .ant-checkbox-wrapper {
112
+ width: 100%;
113
+ }
114
+ }
115
+
116
+ span {
117
+ color: #666;
118
+ }
119
+ }
120
+ }
121
+
122
+ .optionItem {
123
+ position: relative;
124
+ display: flex;
125
+ gap: 2px;
126
+ height: 30px !important;
127
+ margin-bottom: 5px;
128
+ padding: 5px 5px 5px 15px;
129
+ color: #666;
130
+ border-radius: 4px;
131
+ transition: all 0.2s linear;
132
+
133
+ &:hover {
134
+ color: #3b86f9;
135
+ background: #f1f8ff;
136
+ }
137
+
138
+ .label {
139
+ flex: 1;
140
+ overflow: hidden;
141
+ white-space: nowrap;
142
+ text-overflow: ellipsis;
143
+ cursor: pointer;
144
+ }
145
+
146
+ .checked {
147
+ width: 16px;
148
+ }
149
+ }
150
+
151
+ .popoverFooter {
152
+ display: flex;
153
+ gap: 10px;
154
+ justify-content: center;
155
+ padding: 10px 0px;
156
+ background: #fff;
157
+ border-top: 1px solid #e7e7e7;
158
+ .cancelButton {
159
+ color: #666;
160
+ background: #f9fafc;
161
+ border-color: #f0f1f3;
162
+ transition: all 0.1s linear;
163
+ &:hover {
164
+ background: #eff1f5 !important;
165
+ border-color: #f0f1f3;
166
+ }
167
+ }
168
+ button {
169
+ padding: 0 10px !important;
170
+ font-size: 12px !important;
171
+ border-radius: 2px !important;
172
+ }
173
+ }
174
+ }
@@ -0,0 +1,19 @@
1
+ /**
2
+ * 组件名称:NumericInput
3
+ * 组件描述:一个用于输入数字的组件,支持正负数和小数点
4
+ * 组件使用场景:在需要输入数字的场景中使用,如筛选、排序等
5
+ * 组件参数说明:
6
+ * - style: 组件样式
7
+ * - placeholder: 输入框提示文字
8
+ */
9
+ import type { InputProps } from 'antd';
10
+ import React from 'react';
11
+ export interface NumericInputProps extends Omit<InputProps, 'onChange'> {
12
+ style?: React.CSSProperties;
13
+ placeholder?: string;
14
+ value: string;
15
+ statusError?: boolean;
16
+ onChange: (value: string) => void;
17
+ }
18
+ declare const NumericInput: (props: NumericInputProps) => React.JSX.Element;
19
+ export default NumericInput;
@@ -0,0 +1,56 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __defProps = Object.defineProperties;
3
+ var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
+ var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
6
+ var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
+ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
+ var __spreadValues = (a, b) => {
9
+ for (var prop in b || (b = {}))
10
+ if (__hasOwnProp.call(b, prop))
11
+ __defNormalProp(a, prop, b[prop]);
12
+ if (__getOwnPropSymbols)
13
+ for (var prop of __getOwnPropSymbols(b)) {
14
+ if (__propIsEnum.call(b, prop))
15
+ __defNormalProp(a, prop, b[prop]);
16
+ }
17
+ return a;
18
+ };
19
+ var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
+
21
+ // src/components/NumericInput/index.tsx
22
+ import { Input } from "antd";
23
+ import React from "react";
24
+ var NumericInput = (props) => {
25
+ const { value = "", statusError, onChange, placeholder, style = {} } = props;
26
+ const handleChange = (e) => {
27
+ const { value: inputValue } = e.target;
28
+ const reg = /^-?\d*(\.\d*)?$/;
29
+ if (reg.test(inputValue) || inputValue === "" || inputValue === "-") {
30
+ onChange(inputValue);
31
+ }
32
+ };
33
+ const handleBlur = () => {
34
+ let valueTemp = value;
35
+ if (value !== null && (value.charAt(value.length - 1) === "." || value === "-")) {
36
+ valueTemp = value == null ? void 0 : value.slice(0, -1);
37
+ }
38
+ onChange(valueTemp == null ? void 0 : valueTemp.replace(/0*(\d+)/, "$1"));
39
+ };
40
+ return /* @__PURE__ */ React.createElement(
41
+ Input,
42
+ __spreadProps(__spreadValues({}, props), {
43
+ style: __spreadValues({ width: 100 }, style),
44
+ onChange: handleChange,
45
+ status: statusError ? "error" : void 0,
46
+ onBlur: handleBlur,
47
+ placeholder,
48
+ maxLength: 19
49
+ })
50
+ );
51
+ };
52
+ var NumericInput_default = NumericInput;
53
+ export {
54
+ NumericInput_default as default
55
+ };
56
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/NumericInput/index.tsx"],
4
+ "sourcesContent": ["/**\n * 组件名称:NumericInput\n * 组件描述:一个用于输入数字的组件,支持正负数和小数点\n * 组件使用场景:在需要输入数字的场景中使用,如筛选、排序等\n * 组件参数说明:\n * - style: 组件样式\n * - placeholder: 输入框提示文字\n */\nimport type { InputProps } from 'antd';\nimport { Input } from 'antd';\nimport React from 'react';\n\nexport interface NumericInputProps extends Omit<InputProps, 'onChange'> {\n style?: React.CSSProperties;\n placeholder?: string;\n value: string;\n statusError?: boolean;\n onChange: (value: string) => void;\n}\n\nconst NumericInput = (props: NumericInputProps) => {\n const { value = '', statusError, onChange, placeholder, style = {} } = props;\n\n const handleChange = (e: React.ChangeEvent<HTMLInputElement>) => {\n const { value: inputValue } = e.target;\n const reg = /^-?\\d*(\\.\\d*)?$/;\n if (reg.test(inputValue) || inputValue === '' || inputValue === '-') {\n onChange(inputValue);\n }\n };\n\n // '.' at the end or only '-' in the input box.\n const handleBlur = () => {\n let valueTemp = value;\n if (value !== null && (value.charAt(value.length - 1) === '.' || value === '-')) {\n valueTemp = value?.slice(0, -1);\n }\n onChange(valueTemp?.replace(/0*(\\d+)/, '$1'));\n };\n\n return (\n <Input\n {...props}\n style={{ width: 100, ...style }}\n onChange={handleChange}\n status={statusError ? 'error' : undefined}\n onBlur={handleBlur}\n placeholder={placeholder}\n maxLength={19}\n />\n );\n};\n\nexport default NumericInput;\n"],
5
+ "mappings": ";;;;;;;;;;;;;;;;;;;;;AASA,SAAS,aAAa;AACtB,OAAO,WAAW;AAUlB,IAAM,eAAe,CAAC,UAA6B;AACjD,QAAM,EAAE,QAAQ,IAAI,aAAa,UAAU,aAAa,QAAQ,CAAC,EAAE,IAAI;AAEvE,QAAM,eAAe,CAAC,MAA2C;AAC/D,UAAM,EAAE,OAAO,WAAW,IAAI,EAAE;AAChC,UAAM,MAAM;AACZ,QAAI,IAAI,KAAK,UAAU,KAAK,eAAe,MAAM,eAAe,KAAK;AACnE,eAAS,UAAU;AAAA,IACrB;AAAA,EACF;AAGA,QAAM,aAAa,MAAM;AACvB,QAAI,YAAY;AAChB,QAAI,UAAU,SAAS,MAAM,OAAO,MAAM,SAAS,CAAC,MAAM,OAAO,UAAU,MAAM;AAC/E,kBAAY,+BAAO,MAAM,GAAG;AAAA,IAC9B;AACA,aAAS,uCAAW,QAAQ,WAAW,KAAK;AAAA,EAC9C;AAEA,SACE;AAAA,IAAC;AAAA,qCACK,QADL;AAAA,MAEC,OAAO,iBAAE,OAAO,OAAQ;AAAA,MACxB,UAAU;AAAA,MACV,QAAQ,cAAc,UAAU;AAAA,MAChC,QAAQ;AAAA,MACR;AAAA,MACA,WAAW;AAAA;AAAA,EACb;AAEJ;AAEA,IAAO,uBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ type Props = {
3
+ handleRefresh: () => void;
4
+ text?: string;
5
+ style?: React.CSSProperties;
6
+ };
7
+ declare const RefreshButton: React.FC<Props>;
8
+ export default RefreshButton;
@@ -0,0 +1,21 @@
1
+ // src/components/RefreshButton/index.tsx
2
+ import { Button } from "antd";
3
+ import React from "react";
4
+ var RefreshButton = ({ handleRefresh, text = "刷新", style }) => {
5
+ return /* @__PURE__ */ React.createElement(
6
+ Button,
7
+ {
8
+ style,
9
+ onClick: () => {
10
+ handleRefresh();
11
+ },
12
+ icon: /* @__PURE__ */ React.createElement("i", { className: "iconfont icon-refresh", style: { color: "#3B86F9", fontSize: 14 } })
13
+ },
14
+ text
15
+ );
16
+ };
17
+ var RefreshButton_default = RefreshButton;
18
+ export {
19
+ RefreshButton_default as default
20
+ };
21
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/RefreshButton/index.tsx"],
4
+ "sourcesContent": ["import { Button } from 'antd';\nimport React from 'react';\ntype Props = {\n handleRefresh: () => void;\n text?: string;\n style?: React.CSSProperties;\n};\n\nconst RefreshButton: React.FC<Props> = ({ handleRefresh, text = '刷新', style }) => {\n return (\n <Button\n style={style}\n onClick={() => {\n handleRefresh();\n }}\n icon={<i className='iconfont icon-refresh' style={{ color: '#3B86F9', fontSize: 14 }} />}\n >\n {text}\n </Button>\n );\n};\n\nexport default RefreshButton;\n"],
5
+ "mappings": ";AAAA,SAAS,cAAc;AACvB,OAAO,WAAW;AAOlB,IAAM,gBAAiC,CAAC,EAAE,eAAe,OAAO,MAAM,MAAM,MAAM;AAChF,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,SAAS,MAAM;AACb,sBAAc;AAAA,MAChB;AAAA,MACA,MAAM,oCAAC,OAAE,WAAU,yBAAwB,OAAO,EAAE,OAAO,WAAW,UAAU,GAAG,GAAG;AAAA;AAAA,IAErF;AAAA,EACH;AAEJ;AAEA,IAAO,wBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,21 @@
1
+ import React from 'react';
2
+ type SearchWithHistoryProps = {
3
+ /** localStorage 存储 key */
4
+ localstorageKey: string;
5
+ /** 可搜索的选项列表(含菜单路由、看板等) */
6
+ list: {
7
+ label: string;
8
+ value: string;
9
+ tag?: string;
10
+ }[];
11
+ placeholder?: string;
12
+ /** 选中项回调,value 为路由 path 或看板 id 等 */
13
+ onClick: (value: string) => void;
14
+ };
15
+ /**
16
+ * 带历史记录的搜索弹层
17
+ * - 无输入时展示最近搜索(localStorage 持久化)
18
+ * - 有输入时展示匹配的菜单/看板列表
19
+ */
20
+ declare const SearchWithHistory: React.FC<SearchWithHistoryProps>;
21
+ export default SearchWithHistory;
@@ -0,0 +1,115 @@
1
+ // src/components/SearchWithHistory/index.tsx
2
+ import TextWithTooltip from "../TextWithToolTip";
3
+ import { ClockCircleOutlined, SearchOutlined } from "@ant-design/icons";
4
+ import { useLocalStorageState } from "ahooks";
5
+ import { ConfigProvider, Input, Popover } from "antd";
6
+ import React, { useCallback, useEffect, useMemo, useState } from "react";
7
+ import styles from "./index.module.less";
8
+ var INPUT_THEME = {
9
+ token: { colorText: "rgba(191, 199, 209, 1)" },
10
+ components: {
11
+ Input: {
12
+ colorBgContainer: "rgba(45, 56, 86, 1)",
13
+ colorBorder: "#2D3856",
14
+ borderRadius: 18,
15
+ boxShadow: "inset 0px -0.5px 0px 0px rgba(20, 31, 62, 0.5)",
16
+ hoverBorderColor: "rgba(0, 85, 255, 1)",
17
+ paddingBlock: 6
18
+ }
19
+ }
20
+ };
21
+ var SearchWithHistory = ({
22
+ localstorageKey = "yk_search_history",
23
+ list,
24
+ placeholder = "搜索",
25
+ onClick
26
+ }) => {
27
+ const [open, setOpen] = useState(false);
28
+ const [searchValue, setSearchValue] = useState("");
29
+ const [historyList, setHistoryList] = useLocalStorageState(
30
+ localstorageKey,
31
+ { defaultValue: [] }
32
+ );
33
+ const menuItemClick = useCallback(
34
+ (item) => {
35
+ onClick(item.value);
36
+ setOpen(false);
37
+ setHistoryList((prev = []) => [item, ...prev.filter((h) => h.value !== item.value)]);
38
+ },
39
+ [onClick, setHistoryList]
40
+ );
41
+ const clearHistory = useCallback(() => {
42
+ setOpen(false);
43
+ setTimeout(() => setHistoryList([]), 100);
44
+ }, [setHistoryList]);
45
+ const menuList = useMemo(() => list.filter((item) => item.label.includes(searchValue)), [list, searchValue]);
46
+ const historyContent = useMemo(
47
+ () => /* @__PURE__ */ React.createElement("div", null, /* @__PURE__ */ React.createElement("div", { className: styles.historyHeader }, /* @__PURE__ */ React.createElement(ClockCircleOutlined, { style: { marginRight: 10, transform: "translateY(-1px)" } }), /* @__PURE__ */ React.createElement("span", null, "最近搜索"), /* @__PURE__ */ React.createElement("i", { className: "iconfont icon-lajitong", onClick: clearHistory })), /* @__PURE__ */ React.createElement("div", { className: styles.historyList }, historyList.map((item) => /* @__PURE__ */ React.createElement("div", { className: styles.item, key: item.value, onClick: () => menuItemClick(item) }, /* @__PURE__ */ React.createElement(TextWithTooltip, { width: 160, text: item.label }), item.tag && /* @__PURE__ */ React.createElement("div", { className: styles.tag }, item.tag))))),
48
+ [historyList, clearHistory, menuItemClick]
49
+ );
50
+ const listContent = useMemo(
51
+ () => /* @__PURE__ */ React.createElement("div", null, menuList.map((item) => /* @__PURE__ */ React.createElement("div", { key: item.value, className: styles.item, onClick: () => menuItemClick(item) }, /* @__PURE__ */ React.createElement(TextWithTooltip, { width: 160, text: item.label, highlight: searchValue }), item.tag && /* @__PURE__ */ React.createElement("div", { className: styles.tag }, item.tag)))),
52
+ [menuList, searchValue, menuItemClick]
53
+ );
54
+ const content = useMemo(() => {
55
+ if (!searchValue) {
56
+ if (historyList.length === 0)
57
+ return null;
58
+ return /* @__PURE__ */ React.createElement("div", null, historyContent);
59
+ }
60
+ if (menuList.length === 0)
61
+ return /* @__PURE__ */ React.createElement("div", { style: { color: "#999" } }, "暂无搜索结果");
62
+ return listContent;
63
+ }, [searchValue, historyList, historyContent, menuList, listContent]);
64
+ useEffect(() => {
65
+ if (!content)
66
+ setOpen(false);
67
+ }, [content]);
68
+ const shouldOpen = (value) => {
69
+ if (value)
70
+ return true;
71
+ return historyList.length > 0;
72
+ };
73
+ return /* @__PURE__ */ React.createElement(
74
+ Popover,
75
+ {
76
+ open,
77
+ onOpenChange: (nextOpen) => {
78
+ if (nextOpen && !content)
79
+ return;
80
+ setOpen(nextOpen);
81
+ },
82
+ className: styles.popover,
83
+ styles: { body: { borderRadius: 4, width: 250, paddingRight: 0 } },
84
+ fresh: true,
85
+ title: false,
86
+ trigger: "click",
87
+ placement: "bottomLeft",
88
+ arrow: false,
89
+ content,
90
+ getPopupContainer: (triggerNode) => triggerNode.parentNode,
91
+ autoAdjustOverflow: false
92
+ },
93
+ /* @__PURE__ */ React.createElement(ConfigProvider, { theme: INPUT_THEME }, /* @__PURE__ */ React.createElement(
94
+ Input,
95
+ {
96
+ className: styles.inputContainer,
97
+ classNames: { input: styles.input },
98
+ placeholder,
99
+ prefix: /* @__PURE__ */ React.createElement(SearchOutlined, null),
100
+ value: searchValue,
101
+ onFocus: () => historyList.length > 0 && setOpen(true),
102
+ onChange: (e) => {
103
+ const val = e.target.value;
104
+ setSearchValue(val);
105
+ setOpen(shouldOpen(val));
106
+ }
107
+ }
108
+ ))
109
+ );
110
+ };
111
+ var SearchWithHistory_default = SearchWithHistory;
112
+ export {
113
+ SearchWithHistory_default as default
114
+ };
115
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/SearchWithHistory/index.tsx"],
4
+ "sourcesContent": ["import TextWithTooltip from '@/components/TextWithToolTip';\nimport { ClockCircleOutlined, SearchOutlined } from '@ant-design/icons';\nimport { useLocalStorageState } from 'ahooks';\nimport { ConfigProvider, Input, Popover } from 'antd';\nimport React, { useCallback, useEffect, useMemo, useState } from 'react';\nimport styles from './index.module.less';\n\ntype SearchWithHistoryProps = {\n /** localStorage 存储 key */\n localstorageKey: string;\n /** 可搜索的选项列表(含菜单路由、看板等) */\n list: { label: string; value: string; tag?: string }[];\n placeholder?: string;\n /** 选中项回调,value 为路由 path 或看板 id 等 */\n onClick: (value: string) => void;\n};\n\nconst INPUT_THEME = {\n token: { colorText: 'rgba(191, 199, 209, 1)' },\n components: {\n Input: {\n colorBgContainer: 'rgba(45, 56, 86, 1)',\n colorBorder: '#2D3856',\n borderRadius: 18,\n boxShadow: 'inset 0px -0.5px 0px 0px rgba(20, 31, 62, 0.5)',\n hoverBorderColor: 'rgba(0, 85, 255, 1)',\n paddingBlock: 6,\n },\n },\n};\n\n/**\n * 带历史记录的搜索弹层\n * - 无输入时展示最近搜索(localStorage 持久化)\n * - 有输入时展示匹配的菜单/看板列表\n */\nconst SearchWithHistory: React.FC<SearchWithHistoryProps> = ({\n localstorageKey = 'yk_search_history',\n list,\n placeholder = '搜索',\n onClick,\n}) => {\n const [open, setOpen] = useState(false);\n const [searchValue, setSearchValue] = useState('');\n const [historyList, setHistoryList] = useLocalStorageState<{ label: string; value: string; tag?: string }[]>(\n localstorageKey,\n { defaultValue: [] },\n );\n\n /** 选中项:执行回调并更新历史(同 value 则置顶) */\n const menuItemClick = useCallback(\n (item: { label: string; value: string; tag?: string }) => {\n onClick(item.value);\n setOpen(false);\n setHistoryList((prev = []) => [item, ...prev.filter((h) => h.value !== item.value)]);\n },\n [onClick, setHistoryList],\n );\n\n /** 清空历史 */\n const clearHistory = useCallback(() => {\n setOpen(false);\n setTimeout(() => setHistoryList([]), 100);\n }, [setHistoryList]);\n\n /** 匹配的选项列表(按 label 包含搜索词过滤) */\n const menuList = useMemo(() => list.filter((item) => item.label.includes(searchValue)), [list, searchValue]);\n\n /** 最近搜索列表 DOM */\n const historyContent = useMemo(\n () => (\n <div>\n <div className={styles.historyHeader}>\n <ClockCircleOutlined style={{ marginRight: 10, transform: 'translateY(-1px)' }} />\n <span>最近搜索</span>\n <i className='iconfont icon-lajitong' onClick={clearHistory} />\n </div>\n <div className={styles.historyList}>\n {historyList.map((item) => (\n <div className={styles.item} key={item.value} onClick={() => menuItemClick(item)}>\n <TextWithTooltip width={160} text={item.label} />\n {item.tag && <div className={styles.tag}>{item.tag}</div>}\n </div>\n ))}\n </div>\n </div>\n ),\n [historyList, clearHistory, menuItemClick],\n );\n\n /** 搜索结果列表 DOM */\n const listContent = useMemo(\n () => (\n <div>\n {menuList.map((item) => (\n <div key={item.value} className={styles.item} onClick={() => menuItemClick(item)}>\n <TextWithTooltip width={160} text={item.label} highlight={searchValue} />\n {item.tag && <div className={styles.tag}>{item.tag}</div>}\n </div>\n ))}\n </div>\n ),\n [menuList, searchValue, menuItemClick],\n );\n\n /**\n * 弹层内容:根据输入与历史决定\n * 1. 无历史 → null(不展示弹层)\n * 2. 有历史且无输入 → 最近搜索\n * 3. 有输入且无匹配 → 暂无搜索结果\n * 4. 有输入且匹配 → 菜单列表\n */\n const content = useMemo(() => {\n if (!searchValue) {\n if (historyList.length === 0) return null;\n return <div>{historyContent}</div>;\n }\n if (menuList.length === 0) return <div style={{ color: '#999' }}>暂无搜索结果</div>;\n return listContent;\n }, [searchValue, historyList, historyContent, menuList, listContent]);\n\n /** 内容为空时关闭弹层(如清空输入且无历史) */\n useEffect(() => {\n if (!content) setOpen(false);\n }, [content]);\n\n /** 有输入或有历史时显示弹层 */\n const shouldOpen = (value: string) => {\n if (value) return true;\n return historyList.length > 0;\n };\n\n return (\n <Popover\n open={open}\n onOpenChange={(nextOpen) => {\n if (nextOpen && !content) return; // 无内容时不打开,避免空白弹层\n setOpen(nextOpen);\n }}\n className={styles.popover}\n styles={{ body: { borderRadius: 4, width: 250, paddingRight: 0 } }}\n fresh\n title={false}\n trigger='click'\n placement='bottomLeft'\n arrow={false}\n content={content}\n getPopupContainer={(triggerNode: HTMLElement) => triggerNode.parentNode as HTMLElement}\n autoAdjustOverflow={false}\n >\n <ConfigProvider theme={INPUT_THEME}>\n <Input\n className={styles.inputContainer}\n classNames={{ input: styles.input }}\n placeholder={placeholder}\n prefix={<SearchOutlined />}\n value={searchValue}\n onFocus={() => historyList.length > 0 && setOpen(true)}\n onChange={(e) => {\n const val = e.target.value;\n setSearchValue(val);\n setOpen(shouldOpen(val));\n }}\n />\n </ConfigProvider>\n </Popover>\n );\n};\n\nexport default SearchWithHistory;\n"],
5
+ "mappings": ";AAAA,OAAO,qBAAqB;AAC5B,SAAS,qBAAqB,sBAAsB;AACpD,SAAS,4BAA4B;AACrC,SAAS,gBAAgB,OAAO,eAAe;AAC/C,OAAO,SAAS,aAAa,WAAW,SAAS,gBAAgB;AACjE,OAAO,YAAY;AAYnB,IAAM,cAAc;AAAA,EAClB,OAAO,EAAE,WAAW,yBAAyB;AAAA,EAC7C,YAAY;AAAA,IACV,OAAO;AAAA,MACL,kBAAkB;AAAA,MAClB,aAAa;AAAA,MACb,cAAc;AAAA,MACd,WAAW;AAAA,MACX,kBAAkB;AAAA,MAClB,cAAc;AAAA,IAChB;AAAA,EACF;AACF;AAOA,IAAM,oBAAsD,CAAC;AAAA,EAC3D,kBAAkB;AAAA,EAClB;AAAA,EACA,cAAc;AAAA,EACd;AACF,MAAM;AACJ,QAAM,CAAC,MAAM,OAAO,IAAI,SAAS,KAAK;AACtC,QAAM,CAAC,aAAa,cAAc,IAAI,SAAS,EAAE;AACjD,QAAM,CAAC,aAAa,cAAc,IAAI;AAAA,IACpC;AAAA,IACA,EAAE,cAAc,CAAC,EAAE;AAAA,EACrB;AAGA,QAAM,gBAAgB;AAAA,IACpB,CAAC,SAAyD;AACxD,cAAQ,KAAK,KAAK;AAClB,cAAQ,KAAK;AACb,qBAAe,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,GAAG,KAAK,OAAO,CAAC,MAAM,EAAE,UAAU,KAAK,KAAK,CAAC,CAAC;AAAA,IACrF;AAAA,IACA,CAAC,SAAS,cAAc;AAAA,EAC1B;AAGA,QAAM,eAAe,YAAY,MAAM;AACrC,YAAQ,KAAK;AACb,eAAW,MAAM,eAAe,CAAC,CAAC,GAAG,GAAG;AAAA,EAC1C,GAAG,CAAC,cAAc,CAAC;AAGnB,QAAM,WAAW,QAAQ,MAAM,KAAK,OAAO,CAAC,SAAS,KAAK,MAAM,SAAS,WAAW,CAAC,GAAG,CAAC,MAAM,WAAW,CAAC;AAG3G,QAAM,iBAAiB;AAAA,IACrB,MACE,oCAAC,aACC,oCAAC,SAAI,WAAW,OAAO,iBACrB,oCAAC,uBAAoB,OAAO,EAAE,aAAa,IAAI,WAAW,mBAAmB,GAAG,GAChF,oCAAC,cAAK,MAAI,GACV,oCAAC,OAAE,WAAU,0BAAyB,SAAS,cAAc,CAC/D,GACA,oCAAC,SAAI,WAAW,OAAO,eACpB,YAAY,IAAI,CAAC,SAChB,oCAAC,SAAI,WAAW,OAAO,MAAM,KAAK,KAAK,OAAO,SAAS,MAAM,cAAc,IAAI,KAC7E,oCAAC,mBAAgB,OAAO,KAAK,MAAM,KAAK,OAAO,GAC9C,KAAK,OAAO,oCAAC,SAAI,WAAW,OAAO,OAAM,KAAK,GAAI,CACrD,CACD,CACH,CACF;AAAA,IAEF,CAAC,aAAa,cAAc,aAAa;AAAA,EAC3C;AAGA,QAAM,cAAc;AAAA,IAClB,MACE,oCAAC,aACE,SAAS,IAAI,CAAC,SACb,oCAAC,SAAI,KAAK,KAAK,OAAO,WAAW,OAAO,MAAM,SAAS,MAAM,cAAc,IAAI,KAC7E,oCAAC,mBAAgB,OAAO,KAAK,MAAM,KAAK,OAAO,WAAW,aAAa,GACtE,KAAK,OAAO,oCAAC,SAAI,WAAW,OAAO,OAAM,KAAK,GAAI,CACrD,CACD,CACH;AAAA,IAEF,CAAC,UAAU,aAAa,aAAa;AAAA,EACvC;AASA,QAAM,UAAU,QAAQ,MAAM;AAC5B,QAAI,CAAC,aAAa;AAChB,UAAI,YAAY,WAAW;AAAG,eAAO;AACrC,aAAO,oCAAC,aAAK,cAAe;AAAA,IAC9B;AACA,QAAI,SAAS,WAAW;AAAG,aAAO,oCAAC,SAAI,OAAO,EAAE,OAAO,OAAO,KAAG,QAAM;AACvE,WAAO;AAAA,EACT,GAAG,CAAC,aAAa,aAAa,gBAAgB,UAAU,WAAW,CAAC;AAGpE,YAAU,MAAM;AACd,QAAI,CAAC;AAAS,cAAQ,KAAK;AAAA,EAC7B,GAAG,CAAC,OAAO,CAAC;AAGZ,QAAM,aAAa,CAAC,UAAkB;AACpC,QAAI;AAAO,aAAO;AAClB,WAAO,YAAY,SAAS;AAAA,EAC9B;AAEA,SACE;AAAA,IAAC;AAAA;AAAA,MACC;AAAA,MACA,cAAc,CAAC,aAAa;AAC1B,YAAI,YAAY,CAAC;AAAS;AAC1B,gBAAQ,QAAQ;AAAA,MAClB;AAAA,MACA,WAAW,OAAO;AAAA,MAClB,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAG,OAAO,KAAK,cAAc,EAAE,EAAE;AAAA,MACjE,OAAK;AAAA,MACL,OAAO;AAAA,MACP,SAAQ;AAAA,MACR,WAAU;AAAA,MACV,OAAO;AAAA,MACP;AAAA,MACA,mBAAmB,CAAC,gBAA6B,YAAY;AAAA,MAC7D,oBAAoB;AAAA;AAAA,IAEpB,oCAAC,kBAAe,OAAO,eACrB;AAAA,MAAC;AAAA;AAAA,QACC,WAAW,OAAO;AAAA,QAClB,YAAY,EAAE,OAAO,OAAO,MAAM;AAAA,QAClC;AAAA,QACA,QAAQ,oCAAC,oBAAe;AAAA,QACxB,OAAO;AAAA,QACP,SAAS,MAAM,YAAY,SAAS,KAAK,QAAQ,IAAI;AAAA,QACrD,UAAU,CAAC,MAAM;AACf,gBAAM,MAAM,EAAE,OAAO;AACrB,yBAAe,GAAG;AAClB,kBAAQ,WAAW,GAAG,CAAC;AAAA,QACzB;AAAA;AAAA,IACF,CACF;AAAA,EACF;AAEJ;AAEA,IAAO,4BAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,64 @@
1
+ .inputContainer {
2
+ display: flex;
3
+ align-items: center;
4
+ justify-content: center;
5
+ width: 250px;
6
+ }
7
+
8
+ .input {
9
+ height: 20px;
10
+ color: rgba(191, 199, 209, 1) !important;
11
+ caret-color: #1890ff;
12
+
13
+ &::placeholder {
14
+ color: rgba(150, 166, 189, 1) !important;
15
+ }
16
+ &::-webkit-input-placeholder {
17
+ color: rgba(150, 166, 189, 1) !important;
18
+ }
19
+ }
20
+
21
+ .historyHeader {
22
+ display: flex;
23
+ align-items: center;
24
+ height: 17px;
25
+ margin-right: 10px;
26
+ margin-bottom: 10px;
27
+ color: rgba(153, 153, 153, 1);
28
+ font-size: 12px;
29
+ line-height: 17px;
30
+
31
+ i {
32
+ margin-left: auto;
33
+ cursor: pointer;
34
+ }
35
+ }
36
+
37
+ .historyList {
38
+ max-height: 300px;
39
+ overflow-y: auto;
40
+ }
41
+
42
+ .item {
43
+ display: flex;
44
+ align-items: center;
45
+ justify-content: space-between;
46
+ height: 30px;
47
+ margin-right: 10px;
48
+ padding: 0 16px;
49
+ color: #666;
50
+ line-height: 30px;
51
+ border-radius: 2px;
52
+ cursor: pointer;
53
+ transition: all 0.2s;
54
+
55
+ &:hover {
56
+ color: #3b82fe;
57
+ background: #f1f8ff;
58
+ }
59
+
60
+ .tag {
61
+ color: #999;
62
+ font-size: 12px;
63
+ }
64
+ }
@@ -0,0 +1,15 @@
1
+ import React from 'react';
2
+ /**
3
+ * 文本可编辑组件的 Props
4
+ */
5
+ type PropsType = {
6
+ /** 当前展示/提交的文本值,受控 */
7
+ value: string;
8
+ /** 确认编辑后的回调,参数为输入框内的新值 */
9
+ callback: (value: string) => void;
10
+ };
11
+ /**
12
+ * 文本 + 内联编辑:默认展示文案与编辑图标,点击图标切为输入框+确认/取消,确认时调用 callback。
13
+ */
14
+ declare const TextWithInput: React.FC<PropsType>;
15
+ export default TextWithInput;
@@ -0,0 +1,35 @@
1
+ // src/components/TextWithInput/index.tsx
2
+ import { CheckOutlined, CloseOutlined, EditOutlined } from "@ant-design/icons";
3
+ import { Button, Input } from "antd";
4
+ import React, { useState } from "react";
5
+ var TextWithInput = ({ value, callback }) => {
6
+ const [isEdit, setIsEdit] = useState(false);
7
+ const [localValue, setLocalValue] = useState(value);
8
+ return /* @__PURE__ */ React.createElement("div", { style: { display: "flex", alignItems: "center", gap: 5 } }, isEdit ? /* @__PURE__ */ React.createElement(React.Fragment, null, /* @__PURE__ */ React.createElement(Input, { value: localValue, style: { borderRadius: 2 }, onChange: (e) => setLocalValue(e.target.value) }), /* @__PURE__ */ React.createElement(
9
+ Button,
10
+ {
11
+ size: "small",
12
+ type: "primary",
13
+ style: { width: 30, height: 30 },
14
+ onClick: () => {
15
+ callback(localValue);
16
+ setIsEdit(false);
17
+ }
18
+ },
19
+ /* @__PURE__ */ React.createElement(CheckOutlined, null)
20
+ ), /* @__PURE__ */ React.createElement(Button, { size: "small", style: { width: 30, height: 30 }, onClick: () => setIsEdit(false) }, /* @__PURE__ */ React.createElement(CloseOutlined, null))) : /* @__PURE__ */ React.createElement("span", null, value, /* @__PURE__ */ React.createElement(
21
+ EditOutlined,
22
+ {
23
+ style: { marginLeft: 10, cursor: "pointer", color: "#333" },
24
+ onClick: () => {
25
+ setLocalValue(value);
26
+ setIsEdit(true);
27
+ }
28
+ }
29
+ )));
30
+ };
31
+ var TextWithInput_default = TextWithInput;
32
+ export {
33
+ TextWithInput_default as default
34
+ };
35
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/components/TextWithInput/index.tsx"],
4
+ "sourcesContent": ["import { CheckOutlined, CloseOutlined, EditOutlined } from '@ant-design/icons';\nimport { Button, Input } from 'antd';\nimport React, { useState } from 'react';\n\n/**\n * 文本可编辑组件的 Props\n */\ntype PropsType = {\n /** 当前展示/提交的文本值,受控 */\n value: string;\n /** 确认编辑后的回调,参数为输入框内的新值 */\n callback: (value: string) => void;\n};\n\n/**\n * 文本 + 内联编辑:默认展示文案与编辑图标,点击图标切为输入框+确认/取消,确认时调用 callback。\n */\nconst TextWithInput: React.FC<PropsType> = ({ value, callback }) => {\n /** 是否处于编辑态(显示输入框与确认/取消按钮) */\n const [isEdit, setIsEdit] = useState(false);\n /** 编辑态下的输入内容,进入编辑时从 value 同步 */\n const [localValue, setLocalValue] = useState(value);\n\n return (\n <div style={{ display: 'flex', alignItems: 'center', gap: 5 }}>\n {isEdit ? (\n <>\n <Input value={localValue} style={{ borderRadius: 2 }} onChange={(e) => setLocalValue(e.target.value)} />\n <Button\n size='small'\n type='primary'\n style={{ width: 30, height: 30 }}\n onClick={() => {\n callback(localValue);\n setIsEdit(false);\n }}\n >\n <CheckOutlined />\n </Button>\n <Button size='small' style={{ width: 30, height: 30 }} onClick={() => setIsEdit(false)}>\n <CloseOutlined />\n </Button>\n </>\n ) : (\n <span>\n {value}\n <EditOutlined\n style={{ marginLeft: 10, cursor: 'pointer', color: '#333' }}\n onClick={() => {\n setLocalValue(value);\n setIsEdit(true);\n }}\n />\n </span>\n )}\n </div>\n );\n};\n\nexport default TextWithInput;\n"],
5
+ "mappings": ";AAAA,SAAS,eAAe,eAAe,oBAAoB;AAC3D,SAAS,QAAQ,aAAa;AAC9B,OAAO,SAAS,gBAAgB;AAehC,IAAM,gBAAqC,CAAC,EAAE,OAAO,SAAS,MAAM;AAElE,QAAM,CAAC,QAAQ,SAAS,IAAI,SAAS,KAAK;AAE1C,QAAM,CAAC,YAAY,aAAa,IAAI,SAAS,KAAK;AAElD,SACE,oCAAC,SAAI,OAAO,EAAE,SAAS,QAAQ,YAAY,UAAU,KAAK,EAAE,KACzD,SACC,0DACE,oCAAC,SAAM,OAAO,YAAY,OAAO,EAAE,cAAc,EAAE,GAAG,UAAU,CAAC,MAAM,cAAc,EAAE,OAAO,KAAK,GAAG,GACtG;AAAA,IAAC;AAAA;AAAA,MACC,MAAK;AAAA,MACL,MAAK;AAAA,MACL,OAAO,EAAE,OAAO,IAAI,QAAQ,GAAG;AAAA,MAC/B,SAAS,MAAM;AACb,iBAAS,UAAU;AACnB,kBAAU,KAAK;AAAA,MACjB;AAAA;AAAA,IAEA,oCAAC,mBAAc;AAAA,EACjB,GACA,oCAAC,UAAO,MAAK,SAAQ,OAAO,EAAE,OAAO,IAAI,QAAQ,GAAG,GAAG,SAAS,MAAM,UAAU,KAAK,KACnF,oCAAC,mBAAc,CACjB,CACF,IAEA,oCAAC,cACE,OACD;AAAA,IAAC;AAAA;AAAA,MACC,OAAO,EAAE,YAAY,IAAI,QAAQ,WAAW,OAAO,OAAO;AAAA,MAC1D,SAAS,MAAM;AACb,sBAAc,KAAK;AACnB,kBAAU,IAAI;AAAA,MAChB;AAAA;AAAA,EACF,CACF,CAEJ;AAEJ;AAEA,IAAO,wBAAQ;",
6
+ "names": []
7
+ }
@@ -0,0 +1,17 @@
1
+ import { TooltipProps } from 'antd';
2
+ import React from 'react';
3
+ type PropsType = {
4
+ text: number | string | React.ReactNode;
5
+ placement?: 'top' | 'left' | 'right' | 'bottom';
6
+ zIndex?: number;
7
+ color?: string;
8
+ styles?: TooltipProps['styles'];
9
+ width: number | string;
10
+ maxWidth?: number | string;
11
+ className?: string;
12
+ style?: React.CSSProperties;
13
+ highlight?: string;
14
+ arrow?: boolean;
15
+ };
16
+ declare const TextWithTooltip: React.FC<PropsType>;
17
+ export default TextWithTooltip;