@yoka-ui/ui 1.0.10-test → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (385) hide show
  1. package/@Docs-yoka/exports.generated.md +68 -62
  2. package/README.md +40 -189
  3. package/dist/es/assets/image/skills.zip +0 -0
  4. package/dist/es/business/AiChat/index.d.ts +3 -3
  5. package/dist/es/business/AiChat/index.js +331 -119
  6. package/dist/es/business/AiChat/index.js.map +3 -3
  7. package/dist/es/business/AiChat/intentRecognizer.js.map +1 -1
  8. package/dist/es/business/AiChat/navigationManager.js +6 -6
  9. package/dist/es/business/AiChat/navigationManager.js.map +2 -2
  10. package/dist/es/business/AiChat/sse.d.ts +15 -0
  11. package/dist/es/business/AiChat/sse.js +118 -7
  12. package/dist/es/business/AiChat/sse.js.map +2 -2
  13. package/dist/es/business/AiChat/type.d.ts +22 -23
  14. package/dist/es/business/AiChat/useAiChat.js +105 -75
  15. package/dist/es/business/AiChat/useAiChat.js.map +3 -3
  16. package/dist/es/business/AiChat/useTaskWorkflow.d.ts +1 -2
  17. package/dist/es/business/AiChat/useTaskWorkflow.js +2 -36
  18. package/dist/es/business/AiChat/useTaskWorkflow.js.map +2 -2
  19. package/dist/es/business/DrawerPageInfo/index.js.map +1 -1
  20. package/dist/es/business/Editor/index.d.ts +1 -1
  21. package/dist/es/business/Editor/index.js.map +2 -2
  22. package/dist/es/business/Empty/index.js +1 -1
  23. package/dist/es/business/Empty/index.js.map +1 -1
  24. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js +2 -2
  25. package/dist/es/business/ModCommonFilter/components/PopoverContent/Category.js.map +2 -2
  26. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js +3 -3
  27. package/dist/es/business/ModCommonFilter/components/PopoverContent/Content.js.map +2 -2
  28. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js +2 -2
  29. package/dist/es/business/ModCommonFilter/components/PopoverContent/Selected.js.map +2 -2
  30. package/dist/es/business/ModCommonFilter/index.d.ts +1 -1
  31. package/dist/es/business/ModCommonFilter/index.js.map +2 -2
  32. package/dist/es/business/YkCharts/Area.d.ts +18 -0
  33. package/dist/es/business/YkCharts/Area.js +336 -0
  34. package/dist/es/business/YkCharts/Area.js.map +7 -0
  35. package/dist/es/business/YkCharts/Bar.d.ts +21 -0
  36. package/dist/es/business/YkCharts/Bar.js +316 -0
  37. package/dist/es/business/YkCharts/Bar.js.map +7 -0
  38. package/dist/es/business/YkCharts/BarProperty.d.ts +21 -0
  39. package/dist/es/business/YkCharts/BarProperty.js +357 -0
  40. package/dist/es/business/YkCharts/BarProperty.js.map +7 -0
  41. package/dist/es/business/YkCharts/BarTotal.d.ts +21 -0
  42. package/dist/es/business/YkCharts/BarTotal.js +292 -0
  43. package/dist/es/business/YkCharts/BarTotal.js.map +7 -0
  44. package/dist/es/business/YkCharts/Line.d.ts +21 -0
  45. package/dist/es/business/YkCharts/Line.js +342 -0
  46. package/dist/es/business/YkCharts/Line.js.map +7 -0
  47. package/dist/es/business/YkCharts/Pie.d.ts +19 -0
  48. package/dist/es/business/YkCharts/Pie.js +107 -0
  49. package/dist/es/business/YkCharts/Pie.js.map +7 -0
  50. package/dist/es/business/YkCharts/PieProperty.d.ts +18 -0
  51. package/dist/es/business/YkCharts/PieProperty.js +180 -0
  52. package/dist/es/business/YkCharts/PieProperty.js.map +7 -0
  53. package/dist/es/business/YkCharts/Pies.d.ts +26 -0
  54. package/dist/es/business/YkCharts/Pies.js +352 -0
  55. package/dist/es/business/YkCharts/Pies.js.map +7 -0
  56. package/dist/es/business/YkCharts/constants.d.ts +1 -0
  57. package/dist/es/business/YkCharts/constants.js +47 -0
  58. package/dist/es/business/YkCharts/constants.js.map +7 -0
  59. package/dist/es/business/YkCharts/hooks.d.ts +4 -0
  60. package/dist/es/business/YkCharts/hooks.js +37 -0
  61. package/dist/es/business/YkCharts/hooks.js.map +7 -0
  62. package/dist/es/business/YkCharts/index.d.ts +9 -0
  63. package/dist/es/business/YkCharts/index.js +20 -0
  64. package/dist/es/business/YkCharts/index.js.map +7 -0
  65. package/dist/es/business/YkCharts/index.module.less +164 -0
  66. package/dist/es/business/YkCharts/tooltip.less +92 -0
  67. package/dist/es/business/YkCharts/transformData.js +16 -0
  68. package/dist/es/business/YkCharts/transformData.js.map +7 -0
  69. package/dist/es/business/YkCharts/typing.d.ts +74 -0
  70. package/dist/es/business/YkCharts/typing.js +1 -0
  71. package/dist/es/business/YkCharts/typing.js.map +7 -0
  72. package/dist/es/business/YkCharts/utils.d.ts +4 -0
  73. package/dist/es/business/YkCharts/utils.js +109 -0
  74. package/dist/es/business/YkCharts/utils.js.map +7 -0
  75. package/dist/es/business/YkCharts/variables.less +13 -0
  76. package/dist/es/business/YkLoginModule/SmsLoginForm.d.ts +25 -0
  77. package/dist/es/business/YkLoginModule/SmsLoginForm.js +178 -0
  78. package/dist/es/business/YkLoginModule/SmsLoginForm.js.map +7 -0
  79. package/dist/es/business/YkLoginModule/index.d.ts +48 -0
  80. package/dist/es/business/YkLoginModule/index.js +198 -0
  81. package/dist/es/business/YkLoginModule/index.js.map +7 -0
  82. package/dist/es/business/YkLoginModule/styles.module.less +169 -0
  83. package/dist/es/business/YkPorjectSelect/index.d.ts +1 -1
  84. package/dist/es/business/YkPorjectSelect/index.js +2 -2
  85. package/dist/es/business/YkPorjectSelect/index.js.map +2 -2
  86. package/dist/es/business/YkSqlEdit/code-mirror-custom.module.less +154 -0
  87. package/dist/es/business/YkSqlEdit/index.d.ts +20 -0
  88. package/dist/es/business/YkSqlEdit/index.js +180 -0
  89. package/dist/es/business/YkSqlEdit/index.js.map +7 -0
  90. package/dist/es/business/YkSqlEdit/sql-language.d.ts +11 -0
  91. package/dist/es/business/YkSqlEdit/sql-language.js +1460 -0
  92. package/dist/es/business/YkSqlEdit/sql-language.js.map +7 -0
  93. package/dist/es/components/DebounceInput/index.js.map +2 -2
  94. package/dist/es/components/MultipleSelect/index.d.ts +14 -0
  95. package/dist/es/components/MultipleSelect/index.js +1 -1
  96. package/dist/es/components/MultipleSelect/index.js.map +2 -2
  97. package/dist/es/components/RefreshButton/index.js.map +2 -2
  98. package/dist/es/components/SearchWithHistory/index.js +1 -1
  99. package/dist/es/components/SearchWithHistory/index.js.map +2 -2
  100. package/dist/es/components/TextWithToolTip/index.d.ts +1 -1
  101. package/dist/es/components/TextWithToolTip/index.js.map +2 -2
  102. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +1 -24
  103. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js +2 -2
  104. package/dist/es/components/TreeTransfer/components/TreeTransferPanel/index.js.map +2 -2
  105. package/dist/es/components/TreeTransfer/index.d.ts +1 -24
  106. package/dist/es/components/TreeTransfer/index.js +8 -8
  107. package/dist/es/components/TreeTransfer/index.js.map +2 -2
  108. package/dist/es/components/TreeTransfer/utils/index.d.ts +1 -1
  109. package/dist/es/components/TreeTransfer/utils/index.js.map +2 -2
  110. package/dist/es/components/YKMarkdown/index.d.ts +11 -0
  111. package/dist/es/components/YKMarkdown/index.js +236 -0
  112. package/dist/es/components/YKMarkdown/index.js.map +7 -0
  113. package/dist/es/components/YKMarkdown/index.module.less +83 -0
  114. package/dist/es/components/YkDateRangePicker/YkDateRangePicker.mdx +194 -0
  115. package/dist/es/components/YkDateRangePicker/index.d.ts +9 -1
  116. package/dist/es/components/YkDateRangePicker/index.js +127 -61
  117. package/dist/es/components/YkDateRangePicker/index.js.map +2 -2
  118. package/dist/es/components/YkDateRangePicker/index.module.less +33 -9
  119. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +1 -1
  120. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +3 -2
  121. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +2 -2
  122. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +1 -1
  123. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +23 -3
  124. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +2 -2
  125. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +1 -1
  126. package/dist/es/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +2 -2
  127. package/dist/es/components/YkRangeDateWithVS/index.d.ts +2 -2
  128. package/dist/es/components/YkRangeDateWithVS/index.js.map +2 -2
  129. package/dist/es/components/YkRangeDateWithVS/index.module.less +22 -4
  130. package/dist/es/components/YkRangeTimeWithRecent/index.d.ts +1 -1
  131. package/dist/es/components/YkRangeTimeWithRecent/index.js.map +2 -2
  132. package/dist/es/creative/ArcCheckbox/index.d.ts +12 -0
  133. package/dist/es/creative/ArcCheckbox/index.js +49 -0
  134. package/dist/es/creative/ArcCheckbox/index.js.map +7 -0
  135. package/dist/es/creative/ArcCheckbox/index.module.less +102 -0
  136. package/dist/es/creative/ButtonRadioWithInfo/index.js.map +1 -1
  137. package/dist/es/creative/ButtonWithProgress/index.d.ts +1 -1
  138. package/dist/es/creative/ButtonWithProgress/index.js.map +2 -2
  139. package/dist/es/creative/GlassSegmentedRadio/index.d.ts +24 -0
  140. package/dist/es/creative/GlassSegmentedRadio/index.js +75 -0
  141. package/dist/es/creative/GlassSegmentedRadio/index.js.map +7 -0
  142. package/dist/es/creative/GlassSegmentedRadio/index.module.less +241 -0
  143. package/dist/es/creative/SkillsWriter/index.d.ts +3 -0
  144. package/dist/es/creative/SkillsWriter/index.js +191 -0
  145. package/dist/es/creative/SkillsWriter/index.js.map +7 -0
  146. package/dist/es/creative/SkillsWriter/index.module.less +21 -0
  147. package/dist/es/index.d.ts +32 -24
  148. package/dist/es/index.js +90 -80
  149. package/dist/es/index.js.map +2 -2
  150. package/dist/es/index.less +44 -0
  151. package/dist/es/layout/FlexGrid/index.d.ts +1 -1
  152. package/dist/es/layout/FlexGrid/index.js.map +2 -2
  153. package/dist/es/layout/YkContainer/index.js.map +1 -1
  154. package/dist/es/layout/YkDrawer/index.d.ts +1 -1
  155. package/dist/es/layout/YkDrawer/index.js.map +2 -2
  156. package/dist/es/ui/LabelSelect/demo.js +1 -1
  157. package/dist/es/ui/LabelSelect/demo.js.map +2 -2
  158. package/dist/es/ui/LabelSelect/index.d.ts +1 -1
  159. package/dist/es/ui/LabelSelect/index.js +1 -1
  160. package/dist/es/ui/LabelSelect/index.js.map +2 -2
  161. package/dist/es/ui/LogicOperator/index.d.ts +1 -1
  162. package/dist/es/ui/LogicOperator/index.js.map +2 -2
  163. package/dist/es/ui/YkButton/index.d.ts +1 -1
  164. package/dist/es/ui/YkButton/index.js.map +2 -2
  165. package/dist/es/ui/YkCard/index.d.ts +1 -1
  166. package/dist/es/ui/YkCard/index.js +1 -1
  167. package/dist/es/ui/YkCard/index.js.map +2 -2
  168. package/dist/es/ui/YkCheckbox/index.d.ts +1 -1
  169. package/dist/es/ui/YkCheckbox/index.js.map +2 -2
  170. package/dist/es/ui/YkDescriptions/index.d.ts +1 -1
  171. package/dist/es/ui/YkDescriptions/index.js.map +2 -2
  172. package/dist/es/ui/YkPagination/index.d.ts +1 -1
  173. package/dist/es/ui/YkPagination/index.js.map +2 -2
  174. package/dist/es/ui/YkRadio/index.d.ts +1 -1
  175. package/dist/es/ui/YkRadio/index.js.map +2 -2
  176. package/dist/es/ui/YkSegmented/index.d.ts +1 -1
  177. package/dist/es/ui/YkSegmented/index.js.map +2 -2
  178. package/dist/es/ui/YkSelect/index.d.ts +1 -1
  179. package/dist/es/ui/YkSelect/index.js.map +2 -2
  180. package/dist/es/ui/YkSpin/index.d.ts +1 -1
  181. package/dist/es/ui/YkSpin/index.js.map +2 -2
  182. package/dist/es/ui/YkStatistic/index.d.ts +1 -1
  183. package/dist/es/ui/YkStatistic/index.js.map +2 -2
  184. package/dist/es/ui/YkSwitch/index.d.ts +1 -1
  185. package/dist/es/ui/YkSwitch/index.js.map +2 -2
  186. package/dist/es/ui/YkTabs/index.d.ts +1 -1
  187. package/dist/es/ui/YkTabs/index.js.map +2 -2
  188. package/dist/es/ui/YkTooltip/index.d.ts +1 -1
  189. package/dist/es/ui/YkTooltip/index.js.map +2 -2
  190. package/dist/es/utils/styleUtils.js.map +2 -2
  191. package/dist/es/utils/ykStorybookDoc.d.ts +15 -0
  192. package/dist/es/utils/ykStorybookDoc.js +24 -2
  193. package/dist/es/utils/ykStorybookDoc.js.map +2 -2
  194. package/dist/lib/assets/image/skills.zip +0 -0
  195. package/dist/lib/business/AiChat/index.d.ts +3 -3
  196. package/dist/lib/business/AiChat/index.js +320 -111
  197. package/dist/lib/business/AiChat/index.js.map +3 -3
  198. package/dist/lib/business/AiChat/intentRecognizer.js.map +1 -1
  199. package/dist/lib/business/AiChat/navigationManager.js +6 -6
  200. package/dist/lib/business/AiChat/navigationManager.js.map +2 -2
  201. package/dist/lib/business/AiChat/sse.d.ts +15 -0
  202. package/dist/lib/business/AiChat/sse.js +117 -7
  203. package/dist/lib/business/AiChat/sse.js.map +2 -2
  204. package/dist/lib/business/AiChat/type.d.ts +22 -23
  205. package/dist/lib/business/AiChat/type.js.map +1 -1
  206. package/dist/lib/business/AiChat/useAiChat.js +104 -74
  207. package/dist/lib/business/AiChat/useAiChat.js.map +3 -3
  208. package/dist/lib/business/AiChat/useTaskWorkflow.d.ts +1 -2
  209. package/dist/lib/business/AiChat/useTaskWorkflow.js +0 -34
  210. package/dist/lib/business/AiChat/useTaskWorkflow.js.map +2 -2
  211. package/dist/lib/business/DrawerPageInfo/index.js.map +1 -1
  212. package/dist/lib/business/Editor/index.d.ts +1 -1
  213. package/dist/lib/business/Editor/index.js.map +2 -2
  214. package/dist/lib/business/Empty/index.js +1 -1
  215. package/dist/lib/business/Empty/index.js.map +1 -1
  216. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js +3 -3
  217. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Category.js.map +2 -2
  218. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js +4 -4
  219. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Content.js.map +2 -2
  220. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js +3 -3
  221. package/dist/lib/business/ModCommonFilter/components/PopoverContent/Selected.js.map +2 -2
  222. package/dist/lib/business/ModCommonFilter/index.d.ts +1 -1
  223. package/dist/lib/business/ModCommonFilter/index.js.map +2 -2
  224. package/dist/lib/business/YkCharts/Area.d.ts +18 -0
  225. package/dist/lib/business/YkCharts/Area.js +346 -0
  226. package/dist/lib/business/YkCharts/Area.js.map +7 -0
  227. package/dist/lib/business/YkCharts/Bar.d.ts +21 -0
  228. package/dist/lib/business/YkCharts/Bar.js +323 -0
  229. package/dist/lib/business/YkCharts/Bar.js.map +7 -0
  230. package/dist/lib/business/YkCharts/BarProperty.d.ts +21 -0
  231. package/dist/lib/business/YkCharts/BarProperty.js +370 -0
  232. package/dist/lib/business/YkCharts/BarProperty.js.map +7 -0
  233. package/dist/lib/business/YkCharts/BarTotal.d.ts +21 -0
  234. package/dist/lib/business/YkCharts/BarTotal.js +298 -0
  235. package/dist/lib/business/YkCharts/BarTotal.js.map +7 -0
  236. package/dist/lib/business/YkCharts/Line.d.ts +21 -0
  237. package/dist/lib/business/YkCharts/Line.js +349 -0
  238. package/dist/lib/business/YkCharts/Line.js.map +7 -0
  239. package/dist/lib/business/YkCharts/Pie.d.ts +19 -0
  240. package/dist/lib/business/YkCharts/Pie.js +117 -0
  241. package/dist/lib/business/YkCharts/Pie.js.map +7 -0
  242. package/dist/lib/business/YkCharts/PieProperty.d.ts +18 -0
  243. package/dist/lib/business/YkCharts/PieProperty.js +193 -0
  244. package/dist/lib/business/YkCharts/PieProperty.js.map +7 -0
  245. package/dist/lib/business/YkCharts/Pies.d.ts +26 -0
  246. package/dist/lib/business/YkCharts/Pies.js +341 -0
  247. package/dist/lib/business/YkCharts/Pies.js.map +7 -0
  248. package/dist/lib/business/YkCharts/constants.d.ts +1 -0
  249. package/dist/lib/business/YkCharts/constants.js +71 -0
  250. package/dist/lib/business/YkCharts/constants.js.map +7 -0
  251. package/dist/lib/business/YkCharts/hooks.d.ts +4 -0
  252. package/dist/lib/business/YkCharts/hooks.js +62 -0
  253. package/dist/lib/business/YkCharts/hooks.js.map +7 -0
  254. package/dist/lib/business/YkCharts/index.d.ts +9 -0
  255. package/dist/lib/business/YkCharts/index.js +61 -0
  256. package/dist/lib/business/YkCharts/index.js.map +7 -0
  257. package/dist/lib/business/YkCharts/index.module.less +164 -0
  258. package/dist/lib/business/YkCharts/tooltip.less +92 -0
  259. package/dist/lib/business/YkCharts/transformData.js +40 -0
  260. package/dist/lib/business/YkCharts/transformData.js.map +7 -0
  261. package/dist/lib/business/YkCharts/typing.d.ts +74 -0
  262. package/dist/lib/business/YkCharts/typing.js +18 -0
  263. package/dist/lib/business/YkCharts/typing.js.map +7 -0
  264. package/dist/lib/business/YkCharts/utils.d.ts +4 -0
  265. package/dist/lib/business/YkCharts/utils.js +143 -0
  266. package/dist/lib/business/YkCharts/utils.js.map +7 -0
  267. package/dist/lib/business/YkCharts/variables.less +13 -0
  268. package/dist/lib/business/YkLoginModule/SmsLoginForm.d.ts +25 -0
  269. package/dist/lib/business/YkLoginModule/SmsLoginForm.js +171 -0
  270. package/dist/lib/business/YkLoginModule/SmsLoginForm.js.map +7 -0
  271. package/dist/lib/business/YkLoginModule/index.d.ts +48 -0
  272. package/dist/lib/business/YkLoginModule/index.js +206 -0
  273. package/dist/lib/business/YkLoginModule/index.js.map +7 -0
  274. package/dist/lib/business/YkLoginModule/styles.module.less +169 -0
  275. package/dist/lib/business/YkPorjectSelect/index.d.ts +1 -1
  276. package/dist/lib/business/YkPorjectSelect/index.js +3 -3
  277. package/dist/lib/business/YkPorjectSelect/index.js.map +2 -2
  278. package/dist/lib/business/YkSqlEdit/code-mirror-custom.module.less +154 -0
  279. package/dist/lib/business/YkSqlEdit/index.d.ts +20 -0
  280. package/dist/lib/business/YkSqlEdit/index.js +202 -0
  281. package/dist/lib/business/YkSqlEdit/index.js.map +7 -0
  282. package/dist/lib/business/YkSqlEdit/sql-language.d.ts +11 -0
  283. package/dist/lib/business/YkSqlEdit/sql-language.js +1493 -0
  284. package/dist/lib/business/YkSqlEdit/sql-language.js.map +7 -0
  285. package/dist/lib/components/DebounceInput/index.js.map +2 -2
  286. package/dist/lib/components/MultipleSelect/index.d.ts +14 -0
  287. package/dist/lib/components/MultipleSelect/index.js +1 -1
  288. package/dist/lib/components/MultipleSelect/index.js.map +2 -2
  289. package/dist/lib/components/RefreshButton/index.js.map +2 -2
  290. package/dist/lib/components/SearchWithHistory/index.js +1 -1
  291. package/dist/lib/components/SearchWithHistory/index.js.map +2 -2
  292. package/dist/lib/components/TextWithToolTip/index.d.ts +1 -1
  293. package/dist/lib/components/TextWithToolTip/index.js.map +2 -2
  294. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.d.ts +1 -24
  295. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js +2 -2
  296. package/dist/lib/components/TreeTransfer/components/TreeTransferPanel/index.js.map +2 -2
  297. package/dist/lib/components/TreeTransfer/index.d.ts +1 -24
  298. package/dist/lib/components/TreeTransfer/index.js +3 -3
  299. package/dist/lib/components/TreeTransfer/index.js.map +2 -2
  300. package/dist/lib/components/TreeTransfer/utils/index.d.ts +1 -1
  301. package/dist/lib/components/TreeTransfer/utils/index.js.map +2 -2
  302. package/dist/lib/components/YKMarkdown/index.d.ts +11 -0
  303. package/dist/lib/components/YKMarkdown/index.js +188 -0
  304. package/dist/lib/components/YKMarkdown/index.js.map +7 -0
  305. package/dist/lib/components/YKMarkdown/index.module.less +83 -0
  306. package/dist/lib/components/YkDateRangePicker/YkDateRangePicker.mdx +194 -0
  307. package/dist/lib/components/YkDateRangePicker/index.d.ts +9 -1
  308. package/dist/lib/components/YkDateRangePicker/index.js +127 -61
  309. package/dist/lib/components/YkDateRangePicker/index.js.map +2 -2
  310. package/dist/lib/components/YkDateRangePicker/index.module.less +33 -9
  311. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.d.ts +1 -1
  312. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js +3 -2
  313. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSCompare.js.map +2 -2
  314. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.d.ts +1 -1
  315. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js +22 -2
  316. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSRange.js.map +2 -2
  317. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.d.ts +1 -1
  318. package/dist/lib/components/YkRangeDateWithVS/YkRangeDateWithVSSelect.js.map +2 -2
  319. package/dist/lib/components/YkRangeDateWithVS/index.d.ts +2 -2
  320. package/dist/lib/components/YkRangeDateWithVS/index.js.map +2 -2
  321. package/dist/lib/components/YkRangeDateWithVS/index.module.less +22 -4
  322. package/dist/lib/components/YkRangeTimeWithRecent/index.d.ts +1 -1
  323. package/dist/lib/components/YkRangeTimeWithRecent/index.js.map +2 -2
  324. package/dist/lib/creative/ArcCheckbox/index.d.ts +12 -0
  325. package/dist/lib/creative/ArcCheckbox/index.js +50 -0
  326. package/dist/lib/creative/ArcCheckbox/index.js.map +7 -0
  327. package/dist/lib/creative/ArcCheckbox/index.module.less +102 -0
  328. package/dist/lib/creative/ButtonRadioWithInfo/index.js.map +1 -1
  329. package/dist/lib/creative/ButtonWithProgress/index.d.ts +1 -1
  330. package/dist/lib/creative/ButtonWithProgress/index.js.map +2 -2
  331. package/dist/lib/creative/GlassSegmentedRadio/index.d.ts +24 -0
  332. package/dist/lib/creative/GlassSegmentedRadio/index.js +78 -0
  333. package/dist/lib/creative/GlassSegmentedRadio/index.js.map +7 -0
  334. package/dist/lib/creative/GlassSegmentedRadio/index.module.less +241 -0
  335. package/dist/lib/creative/SkillsWriter/index.d.ts +3 -0
  336. package/dist/lib/creative/SkillsWriter/index.js +200 -0
  337. package/dist/lib/creative/SkillsWriter/index.js.map +7 -0
  338. package/dist/lib/creative/SkillsWriter/index.module.less +21 -0
  339. package/dist/lib/index.d.ts +32 -24
  340. package/dist/lib/index.js +39 -24
  341. package/dist/lib/index.js.map +2 -2
  342. package/dist/lib/index.less +44 -0
  343. package/dist/lib/layout/FlexGrid/index.d.ts +1 -1
  344. package/dist/lib/layout/FlexGrid/index.js.map +2 -2
  345. package/dist/lib/layout/YkContainer/index.js.map +1 -1
  346. package/dist/lib/layout/YkDrawer/index.d.ts +1 -1
  347. package/dist/lib/layout/YkDrawer/index.js.map +2 -2
  348. package/dist/lib/ui/LabelSelect/demo.js +1 -1
  349. package/dist/lib/ui/LabelSelect/demo.js.map +2 -2
  350. package/dist/lib/ui/LabelSelect/index.d.ts +1 -1
  351. package/dist/lib/ui/LabelSelect/index.js +1 -1
  352. package/dist/lib/ui/LabelSelect/index.js.map +2 -2
  353. package/dist/lib/ui/LogicOperator/index.d.ts +1 -1
  354. package/dist/lib/ui/LogicOperator/index.js.map +2 -2
  355. package/dist/lib/ui/YkButton/index.d.ts +1 -1
  356. package/dist/lib/ui/YkButton/index.js.map +2 -2
  357. package/dist/lib/ui/YkCard/index.d.ts +1 -1
  358. package/dist/lib/ui/YkCard/index.js.map +2 -2
  359. package/dist/lib/ui/YkCheckbox/index.d.ts +1 -1
  360. package/dist/lib/ui/YkCheckbox/index.js.map +2 -2
  361. package/dist/lib/ui/YkDescriptions/index.d.ts +1 -1
  362. package/dist/lib/ui/YkDescriptions/index.js.map +2 -2
  363. package/dist/lib/ui/YkPagination/index.d.ts +1 -1
  364. package/dist/lib/ui/YkPagination/index.js.map +2 -2
  365. package/dist/lib/ui/YkRadio/index.d.ts +1 -1
  366. package/dist/lib/ui/YkRadio/index.js.map +2 -2
  367. package/dist/lib/ui/YkSegmented/index.d.ts +1 -1
  368. package/dist/lib/ui/YkSegmented/index.js.map +2 -2
  369. package/dist/lib/ui/YkSelect/index.d.ts +1 -1
  370. package/dist/lib/ui/YkSelect/index.js.map +2 -2
  371. package/dist/lib/ui/YkSpin/index.d.ts +1 -1
  372. package/dist/lib/ui/YkSpin/index.js.map +2 -2
  373. package/dist/lib/ui/YkStatistic/index.d.ts +1 -1
  374. package/dist/lib/ui/YkStatistic/index.js.map +2 -2
  375. package/dist/lib/ui/YkSwitch/index.d.ts +1 -1
  376. package/dist/lib/ui/YkSwitch/index.js.map +2 -2
  377. package/dist/lib/ui/YkTabs/index.d.ts +1 -1
  378. package/dist/lib/ui/YkTabs/index.js.map +2 -2
  379. package/dist/lib/ui/YkTooltip/index.d.ts +1 -1
  380. package/dist/lib/ui/YkTooltip/index.js.map +2 -2
  381. package/dist/lib/utils/styleUtils.js.map +2 -2
  382. package/dist/lib/utils/ykStorybookDoc.d.ts +15 -0
  383. package/dist/lib/utils/ykStorybookDoc.js +23 -1
  384. package/dist/lib/utils/ykStorybookDoc.js.map +2 -2
  385. package/package.json +152 -144
@@ -0,0 +1,143 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/business/YkCharts/utils.ts
30
+ var utils_exports = {};
31
+ __export(utils_exports, {
32
+ formatNumber: () => formatNumber,
33
+ formatValue: () => formatValue,
34
+ sqlFormat: () => sqlFormat
35
+ });
36
+ module.exports = __toCommonJS(utils_exports);
37
+ var import_decimal = __toESM(require("decimal.js"));
38
+ var formatValue = (value, format) => {
39
+ if (value === null || value === void 0 || value === "-") {
40
+ return "-";
41
+ }
42
+ if (!format || format === null) {
43
+ return value.toString();
44
+ }
45
+ const numValue = Number(value);
46
+ if (format === "percent") {
47
+ return new import_decimal.default(numValue).mul(100).toFixed(2) + "%";
48
+ }
49
+ if (format === "decimal") {
50
+ return new import_decimal.default(numValue).toFixed(2);
51
+ }
52
+ if (format === "integer") {
53
+ return new Intl.NumberFormat().format(numValue);
54
+ }
55
+ return numValue.toString();
56
+ };
57
+ function formatNumber(num, isInteger = false) {
58
+ const numberValue = typeof num === "string" ? parseFloat(num) : num;
59
+ if (Number.isNaN(numberValue)) {
60
+ return [(num == null ? void 0 : num.toString()) || "", ""];
61
+ }
62
+ let result = "";
63
+ let unit = "";
64
+ function setFixed(v, dot) {
65
+ const multiplier = 10 ** dot;
66
+ return Math.floor(v * multiplier) / multiplier;
67
+ }
68
+ if (numberValue < 1e3) {
69
+ result = new import_decimal.default(numberValue).toFixed(1);
70
+ } else if (numberValue < 1e4) {
71
+ result = numberValue.toLocaleString("en-US", {
72
+ minimumFractionDigits: isInteger ? 0 : 1,
73
+ maximumFractionDigits: isInteger ? 0 : 1
74
+ });
75
+ } else if (numberValue < 1e8) {
76
+ const v = setFixed(numberValue / 1e4, 2);
77
+ result = v.toLocaleString("en-US", {
78
+ minimumFractionDigits: isInteger ? 1 : 2,
79
+ maximumFractionDigits: isInteger ? 1 : 2
80
+ });
81
+ unit = " 万";
82
+ } else {
83
+ const v = setFixed(numberValue / 1e8, 2);
84
+ result = v.toLocaleString("en-US", {
85
+ minimumFractionDigits: isInteger ? 1 : 2,
86
+ maximumFractionDigits: isInteger ? 1 : 2
87
+ });
88
+ unit = " 亿";
89
+ }
90
+ if (isInteger) {
91
+ result = result.replace(/\.0+(?=\D*$)/, "");
92
+ }
93
+ return [result, unit];
94
+ }
95
+ function sqlFormat(value, format) {
96
+ if (value === null || value === void 0 || value === "-") {
97
+ return "-";
98
+ }
99
+ if (!format) {
100
+ return value == null ? void 0 : value.toString();
101
+ }
102
+ if (typeof value === "boolean") {
103
+ return value == null ? void 0 : value.toString();
104
+ }
105
+ const { type, decimals = 0, thousand_separator = true, unit = 0, prefix = "", suffix = "" } = format;
106
+ switch (type) {
107
+ case "number": {
108
+ let result;
109
+ if (thousand_separator) {
110
+ result = value ? value == null ? void 0 : value.toLocaleString("en-US", {
111
+ minimumFractionDigits: decimals,
112
+ maximumFractionDigits: decimals
113
+ }) : "0";
114
+ } else {
115
+ result = new import_decimal.default(value || 0).toFixed(decimals);
116
+ }
117
+ return `${prefix}${result}${suffix}`;
118
+ }
119
+ case "percent": {
120
+ const result = new import_decimal.default(value || 0).mul(100).toFixed(decimals) + "%";
121
+ return `${prefix}${result}${suffix}`;
122
+ }
123
+ case "currency": {
124
+ const numericValue = new import_decimal.default(value || 0).div(10 ** unit).toNumber();
125
+ const unitValue = numericValue.toLocaleString("en-US", {
126
+ minimumFractionDigits: decimals,
127
+ maximumFractionDigits: decimals
128
+ });
129
+ const unitLabel = unit === 0 ? "" : unit === 4 ? "万" : unit === 8 ? "亿" : "";
130
+ return `${prefix}${unitValue}${unitLabel}${suffix}`;
131
+ }
132
+ case "normal":
133
+ default:
134
+ return (value == null ? void 0 : value.toString()) || "-";
135
+ }
136
+ }
137
+ // Annotate the CommonJS export names for ESM import in node:
138
+ 0 && (module.exports = {
139
+ formatNumber,
140
+ formatValue,
141
+ sqlFormat
142
+ });
143
+ //# sourceMappingURL=utils.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/business/YkCharts/utils.ts"],
4
+ "sourcesContent": ["import Decimal from 'decimal.js';\nimport type { Format, SqlFormat } from './typing';\n\nexport const formatValue = (value: string | number, format: Format | undefined | null): string => {\n if (value === null || value === undefined || value === '-') {\n return '-';\n }\n if (!format || format === null) {\n return value.toString();\n }\n const numValue = Number(value);\n if (format === 'percent') {\n return new Decimal(numValue).mul(100).toFixed(2) + '%';\n }\n if (format === 'decimal') {\n return new Decimal(numValue).toFixed(2);\n }\n if (format === 'integer') {\n return new Intl.NumberFormat().format(numValue);\n }\n return numValue.toString();\n};\n\nexport function formatNumber(num: number | string, isInteger: boolean = false): [string, string] {\n const numberValue = typeof num === 'string' ? parseFloat(num) : num;\n if (Number.isNaN(numberValue)) {\n return [num?.toString() || '', ''];\n }\n let result: string = '';\n let unit: string = '';\n function setFixed(v: number, dot: number) {\n const multiplier = 10 ** dot;\n return Math.floor(v * multiplier) / multiplier;\n }\n if (numberValue < 1000) {\n result = new Decimal(numberValue).toFixed(1);\n } else if (numberValue < 10000) {\n result = numberValue.toLocaleString('en-US', {\n minimumFractionDigits: isInteger ? 0 : 1,\n maximumFractionDigits: isInteger ? 0 : 1,\n });\n } else if (numberValue < 100000000) {\n const v = setFixed(numberValue / 10000, 2);\n result = v.toLocaleString('en-US', {\n minimumFractionDigits: isInteger ? 1 : 2,\n maximumFractionDigits: isInteger ? 1 : 2,\n });\n unit = ' 万';\n } else {\n const v = setFixed(numberValue / 100000000, 2);\n result = v.toLocaleString('en-US', {\n minimumFractionDigits: isInteger ? 1 : 2,\n maximumFractionDigits: isInteger ? 1 : 2,\n });\n unit = ' 亿';\n }\n if (isInteger) {\n result = result.replace(/\\.0+(?=\\D*$)/, '');\n }\n return [result, unit];\n}\n\nexport function sqlFormat(value: string | number | boolean, format: SqlFormat | undefined | null): string {\n if (value === null || value === undefined || value === '-') {\n return '-';\n }\n if (!format) {\n return value?.toString();\n }\n if (typeof value === 'boolean') {\n return value?.toString();\n }\n const { type, decimals = 0, thousand_separator = true, unit = 0, prefix = '', suffix = '' } = format;\n switch (type) {\n case 'number': {\n let result: string;\n if (thousand_separator) {\n result = value\n ? value?.toLocaleString('en-US', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n })\n : '0';\n } else {\n result = new Decimal(value || 0).toFixed(decimals);\n }\n return `${prefix}${result}${suffix}`;\n }\n case 'percent': {\n const result = new Decimal(value || 0).mul(100).toFixed(decimals) + '%';\n return `${prefix}${result}${suffix}`;\n }\n case 'currency': {\n const numericValue = new Decimal(value || 0).div(10 ** unit).toNumber();\n const unitValue = numericValue.toLocaleString('en-US', {\n minimumFractionDigits: decimals,\n maximumFractionDigits: decimals,\n });\n const unitLabel = unit === 0 ? '' : unit === 4 ? '万' : unit === 8 ? '亿' : '';\n return `${prefix}${unitValue}${unitLabel}${suffix}`;\n }\n case 'normal':\n default:\n return value?.toString() || '-';\n }\n}\n"],
5
+ "mappings": "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",
6
+ "names": ["Decimal"]
7
+ }
@@ -0,0 +1,13 @@
1
+ @primaryColor: #3b86f9;
2
+ @iconPrimaryColor: #0a6bfd;
3
+ @fontPrimaryColor: #0a6bfd;
4
+ @borderPrimaryColor: #b0cffe;
5
+ @globalBgColor: #edeff4;
6
+
7
+ @ykFontFamilySemibold: 'PingFangSC-Semibold', 'PingFang SC', 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial,
8
+ sans-serif;
9
+ @ykFontFamilyRegular: 'PingFangSC-Regular', 'PingFang SC', 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial,
10
+ sans-serif;
11
+ @ykFontFamilyMedium: 'PingFangSC-Medium', 'PingFang SC', 'Source Sans Pro', 'Helvetica Neue', Helvetica, Arial,
12
+ sans-serif;
13
+
@@ -0,0 +1,25 @@
1
+ import React from 'react';
2
+ export type SmsLoginFormApi = {
3
+ sendSms: (payload: Record<string, unknown>) => Promise<{
4
+ code: number;
5
+ msg: string;
6
+ }>;
7
+ };
8
+ declare global {
9
+ interface Window {
10
+ sliderVerify: (element: 'pop' | HTMLElement, success: (res: {
11
+ token: string;
12
+ captchaVerification: string;
13
+ }) => void, options: {
14
+ appKey: string;
15
+ locale?: string;
16
+ }) => void;
17
+ }
18
+ }
19
+ export type SmsLoginFormProps = {
20
+ inputClassName: string;
21
+ api: SmsLoginFormApi;
22
+ appKey: string;
23
+ };
24
+ declare const SmsLogin: React.FC<SmsLoginFormProps>;
25
+ export default SmsLogin;
@@ -0,0 +1,171 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/business/YkLoginModule/SmsLoginForm.tsx
30
+ var SmsLoginForm_exports = {};
31
+ __export(SmsLoginForm_exports, {
32
+ default: () => SmsLoginForm_default
33
+ });
34
+ module.exports = __toCommonJS(SmsLoginForm_exports);
35
+ var import_icons = require("@ant-design/icons");
36
+ var import_pro_form = require("@ant-design/pro-form");
37
+ var import_antd = require("antd");
38
+ var import_react = __toESM(require("react"));
39
+ var import_styles_module = __toESM(require("./styles.module.less"));
40
+ var SmsLogin = ({ inputClassName, api, appKey }) => {
41
+ (0, import_react.useEffect)(() => {
42
+ const link = document.createElement("link");
43
+ link.href = "https://captchaoss.sanguosha.com/library/captcha/0.0.5/lib/index.css";
44
+ link.rel = "stylesheet";
45
+ document.head.appendChild(link);
46
+ const script = document.createElement("script");
47
+ script.src = "https://captchaoss.sanguosha.com/library/captcha/0.0.5/lib/index.js";
48
+ document.body.appendChild(script);
49
+ return () => {
50
+ document.head.removeChild(link);
51
+ document.body.removeChild(script);
52
+ };
53
+ }, []);
54
+ const [phone, setPhone] = (0, import_react.useState)("");
55
+ const [countdown, setCountdown] = (0, import_react.useState)(0);
56
+ const [sendStatus, setSendStatus] = (0, import_react.useState)(false);
57
+ const disableBtn = countdown > 0 || phone.length !== 11;
58
+ const sendVerificationCode = async () => {
59
+ try {
60
+ const phoneNumber = phone;
61
+ if (!phoneNumber) {
62
+ import_antd.message.error("请输入手机号");
63
+ return;
64
+ }
65
+ if (!/^1\d{10}$/.test(phoneNumber)) {
66
+ import_antd.message.error("请输入正确的手机号格式");
67
+ return;
68
+ }
69
+ if (!appKey) {
70
+ import_antd.message.error("验证码配置缺失,请联系管理员(appKey)");
71
+ return;
72
+ }
73
+ window.sliderVerify(
74
+ "pop",
75
+ (captchaRes) => {
76
+ void api.sendSms({ phone: phoneNumber, ...captchaRes }).then((sendRes) => {
77
+ if (sendRes.code !== 200) {
78
+ import_antd.message.error(sendRes.msg);
79
+ return;
80
+ }
81
+ setSendStatus(true);
82
+ import_antd.message.success("验证码发送成功");
83
+ setCountdown(60);
84
+ const timer = setInterval(() => {
85
+ setCountdown((prevCountdown) => {
86
+ if (prevCountdown <= 1) {
87
+ clearInterval(timer);
88
+ return 0;
89
+ }
90
+ return prevCountdown - 1;
91
+ });
92
+ }, 1e3);
93
+ }).catch(() => {
94
+ import_antd.message.error("验证码发送失败,请稍后再试");
95
+ return;
96
+ });
97
+ },
98
+ {
99
+ appKey
100
+ }
101
+ );
102
+ } catch {
103
+ import_antd.message.error("发送验证码失败,请稍后再试");
104
+ }
105
+ };
106
+ return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, /* @__PURE__ */ import_react.default.createElement(
107
+ import_pro_form.ProFormText,
108
+ {
109
+ className: inputClassName,
110
+ name: "phone",
111
+ fieldProps: {
112
+ size: "large",
113
+ prefix: /* @__PURE__ */ import_react.default.createElement(import_icons.MobileOutlined, null),
114
+ onChange: (e) => {
115
+ setPhone(e.target.value);
116
+ }
117
+ },
118
+ placeholder: "请输入手机号",
119
+ validateTrigger: "onBlur",
120
+ rules: [
121
+ {
122
+ required: true,
123
+ validator(rule, value, _callback) {
124
+ if (!value) {
125
+ return Promise.reject("手机号是必填项!");
126
+ }
127
+ if (!/^1\d{10}$/.test(value)) {
128
+ return Promise.reject("请输入正确的手机号格式");
129
+ }
130
+ return Promise.resolve();
131
+ }
132
+ }
133
+ ]
134
+ }
135
+ ), /* @__PURE__ */ import_react.default.createElement(
136
+ import_pro_form.ProFormText,
137
+ {
138
+ className: inputClassName,
139
+ name: "code",
140
+ disabled: !sendStatus,
141
+ fieldProps: {
142
+ size: "large",
143
+ prefix: /* @__PURE__ */ import_react.default.createElement(import_icons.LockOutlined, null),
144
+ suffix: /* @__PURE__ */ import_react.default.createElement(
145
+ import_antd.Button,
146
+ {
147
+ className: import_styles_module.default.captchaBtn,
148
+ style: { fontSize: 16 },
149
+ onClick: (e) => {
150
+ e.preventDefault();
151
+ e.stopPropagation();
152
+ countdown === 0 && void sendVerificationCode();
153
+ },
154
+ type: "link",
155
+ disabled: disableBtn
156
+ },
157
+ countdown > 0 ? `${countdown}秒后重新获取` : "获取验证码"
158
+ )
159
+ },
160
+ placeholder: "请输入验证码",
161
+ rules: [
162
+ {
163
+ required: true,
164
+ message: "验证码是必填项!"
165
+ }
166
+ ]
167
+ }
168
+ ));
169
+ };
170
+ var SmsLoginForm_default = SmsLogin;
171
+ //# sourceMappingURL=SmsLoginForm.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../../../src/business/YkLoginModule/SmsLoginForm.tsx"],
4
+ "sourcesContent": ["import { LockOutlined, MobileOutlined } from '@ant-design/icons';\nimport { ProFormText } from '@ant-design/pro-form';\nimport { Button, message } from 'antd';\nimport React, { useEffect, useState } from 'react';\nimport styles from './styles.module.less';\n\nexport type SmsLoginFormApi = {\n sendSms: (payload: Record<string, unknown>) => Promise<{ code: number; msg: string }>;\n};\n\ndeclare global {\n interface Window {\n sliderVerify: (\n element: 'pop' | HTMLElement,\n success: (res: { token: string; captchaVerification: string }) => void,\n options: { appKey: string; locale?: string },\n ) => void;\n }\n}\n\nexport type SmsLoginFormProps = {\n inputClassName: string;\n api: SmsLoginFormApi;\n appKey: string;\n};\n\nconst SmsLogin: React.FC<SmsLoginFormProps> = ({ inputClassName, api, appKey }) => {\n useEffect(() => {\n const link = document.createElement('link');\n link.href = 'https://captchaoss.sanguosha.com/library/captcha/0.0.5/lib/index.css';\n link.rel = 'stylesheet';\n document.head.appendChild(link);\n\n const script = document.createElement('script');\n script.src = 'https://captchaoss.sanguosha.com/library/captcha/0.0.5/lib/index.js';\n document.body.appendChild(script);\n return () => {\n document.head.removeChild(link);\n document.body.removeChild(script);\n };\n }, []);\n\n const [phone, setPhone] = useState<string>('');\n const [countdown, setCountdown] = useState<number>(0);\n const [sendStatus, setSendStatus] = useState<boolean>(false);\n const disableBtn = countdown > 0 || phone.length !== 11;\n\n const sendVerificationCode = async () => {\n try {\n const phoneNumber = phone;\n if (!phoneNumber) {\n message.error('请输入手机号');\n return;\n }\n\n if (!/^1\\d{10}$/.test(phoneNumber)) {\n message.error('请输入正确的手机号格式');\n return;\n }\n if (!appKey) {\n message.error('验证码配置缺失,请联系管理员(appKey)');\n return;\n }\n window.sliderVerify(\n 'pop',\n (captchaRes: Record<string, unknown>) => {\n void api\n .sendSms({ phone: phoneNumber, ...captchaRes })\n .then((sendRes) => {\n if (sendRes.code !== 200) {\n message.error(sendRes.msg);\n return;\n }\n setSendStatus(true);\n message.success('验证码发送成功');\n setCountdown(60);\n const timer = setInterval(() => {\n setCountdown((prevCountdown) => {\n if (prevCountdown <= 1) {\n clearInterval(timer);\n return 0;\n }\n return prevCountdown - 1;\n });\n }, 1000);\n })\n .catch(() => {\n message.error('验证码发送失败,请稍后再试');\n return;\n });\n },\n {\n appKey,\n },\n );\n } catch {\n message.error('发送验证码失败,请稍后再试');\n }\n };\n\n return (\n <>\n <ProFormText\n className={inputClassName}\n name='phone'\n fieldProps={{\n size: 'large',\n prefix: <MobileOutlined />,\n onChange: (e) => {\n setPhone(e.target.value);\n },\n }}\n placeholder='请输入手机号'\n validateTrigger='onBlur'\n rules={[\n {\n required: true,\n validator(rule, value, _callback) {\n if (!value) {\n return Promise.reject('手机号是必填项!');\n }\n if (!/^1\\d{10}$/.test(value)) {\n return Promise.reject('请输入正确的手机号格式');\n }\n return Promise.resolve();\n },\n },\n ]}\n />\n <ProFormText\n className={inputClassName}\n name='code'\n disabled={!sendStatus}\n fieldProps={{\n size: 'large',\n prefix: <LockOutlined />,\n suffix: (\n <Button\n className={styles.captchaBtn}\n style={{ fontSize: 16 }}\n onClick={(e) => {\n e.preventDefault();\n e.stopPropagation();\n countdown === 0 && void sendVerificationCode();\n }}\n type='link'\n disabled={disableBtn}\n >\n {countdown > 0 ? `${countdown}秒后重新获取` : '获取验证码'}\n </Button>\n ),\n }}\n placeholder='请输入验证码'\n rules={[\n {\n required: true,\n message: '验证码是必填项!',\n },\n ]}\n />\n </>\n );\n};\n\nexport default SmsLogin;\n"],
5
+ "mappings": "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",
6
+ "names": ["React", "styles"]
7
+ }
@@ -0,0 +1,48 @@
1
+ import React from 'react';
2
+ import { type SmsLoginFormApi } from './SmsLoginForm';
3
+ export type LoginType = 'qrcode' | 'sms';
4
+ export type LoginTabItem = {
5
+ key: LoginType;
6
+ label: React.ReactNode;
7
+ };
8
+ export type QrcodeApi = {
9
+ getQrcode: () => Promise<{
10
+ qrcode: string;
11
+ url: string;
12
+ }>;
13
+ scanLogin: (qrcode: string) => Promise<{
14
+ code: number;
15
+ data?: {
16
+ status?: number;
17
+ msg?: string;
18
+ };
19
+ }>;
20
+ };
21
+ export type LoginModuleProps = {
22
+ title: React.ReactNode;
23
+ tabs: LoginTabItem[];
24
+ defaultLoginType: LoginType;
25
+ containerStyle?: React.CSSProperties;
26
+ actions?: React.ReactNode | ((loginType: LoginType) => React.ReactNode);
27
+ className?: string;
28
+ formClassName?: string;
29
+ tabsClassName?: string;
30
+ inputClassName?: string;
31
+ qrcodeClassName?: string;
32
+ qrcodeBoxClassName?: string;
33
+ onFinish: (values: Record<string, unknown>) => Promise<void>;
34
+ qrcode?: {
35
+ api: QrcodeApi;
36
+ icon: string;
37
+ iconSize?: number;
38
+ size?: number;
39
+ wrapStyle?: React.CSSProperties;
40
+ onSuccess: () => void | Promise<void>;
41
+ };
42
+ sms?: {
43
+ api: SmsLoginFormApi;
44
+ appKey: string;
45
+ };
46
+ };
47
+ declare const LoginModule: React.FC<LoginModuleProps>;
48
+ export default LoginModule;
@@ -0,0 +1,206 @@
1
+ var __create = Object.create;
2
+ var __defProp = Object.defineProperty;
3
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
4
+ var __getOwnPropNames = Object.getOwnPropertyNames;
5
+ var __getProtoOf = Object.getPrototypeOf;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
20
+ // If the importer is in node compatibility mode or this is not an ESM
21
+ // file that has been converted to a CommonJS file using a Babel-
22
+ // compatible transform (i.e. "__esModule" has not been set), then set
23
+ // "default" to the CommonJS "module.exports" for node compatibility.
24
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
25
+ mod
26
+ ));
27
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
28
+
29
+ // src/business/YkLoginModule/index.tsx
30
+ var YkLoginModule_exports = {};
31
+ __export(YkLoginModule_exports, {
32
+ default: () => YkLoginModule_default
33
+ });
34
+ module.exports = __toCommonJS(YkLoginModule_exports);
35
+ var import_pro_form = require("@ant-design/pro-form");
36
+ var import_antd = require("antd");
37
+ var import_react = __toESM(require("react"));
38
+ var import_SmsLoginForm = __toESM(require("./SmsLoginForm"));
39
+ var import_styles_module = __toESM(require("./styles.module.less"));
40
+ var DEFAULT_QRCODE_WRAP_STYLE = {
41
+ padding: 10,
42
+ display: "flex",
43
+ justifyContent: "center"
44
+ };
45
+ var LoginModule = (props) => {
46
+ const {
47
+ title,
48
+ tabs,
49
+ defaultLoginType,
50
+ containerStyle,
51
+ actions,
52
+ onFinish,
53
+ qrcode,
54
+ className = import_styles_module.default.root,
55
+ formClassName = import_styles_module.default.form,
56
+ tabsClassName = import_styles_module.default.tabs,
57
+ inputClassName,
58
+ qrcodeClassName = import_styles_module.default.qrcode,
59
+ qrcodeBoxClassName = import_styles_module.default.qrcodeBox,
60
+ sms
61
+ } = props;
62
+ const [loginType, setLoginType] = (0, import_react.useState)(defaultLoginType);
63
+ const [qrcodeStatus, setQrcodeStatus] = (0, import_react.useState)("active");
64
+ const [qrcodeUrl, setQrcodeUrl] = (0, import_react.useState)("-");
65
+ const [qrcodeValue, setQrcodeValue] = (0, import_react.useState)("");
66
+ const pollIntervalRef = (0, import_react.useRef)(null);
67
+ const pollTimeoutRef = (0, import_react.useRef)(null);
68
+ const shouldShowSubmitter = loginType !== "qrcode";
69
+ const resolvedActions = (0, import_react.useMemo)(() => {
70
+ if (!actions)
71
+ return void 0;
72
+ return typeof actions === "function" ? actions(loginType) : actions;
73
+ }, [actions, loginType]);
74
+ const safeClearTimers = (0, import_react.useCallback)(() => {
75
+ if (pollIntervalRef.current)
76
+ clearInterval(pollIntervalRef.current);
77
+ if (pollTimeoutRef.current)
78
+ clearTimeout(pollTimeoutRef.current);
79
+ pollIntervalRef.current = null;
80
+ pollTimeoutRef.current = null;
81
+ }, []);
82
+ const handleQrcodeRefresh = (0, import_react.useCallback)(async () => {
83
+ if (!qrcode)
84
+ return;
85
+ setQrcodeStatus("loading");
86
+ try {
87
+ const res = await qrcode.api.getQrcode();
88
+ setQrcodeUrl(res.url);
89
+ setQrcodeValue(res.qrcode);
90
+ setQrcodeStatus("active");
91
+ } catch {
92
+ setQrcodeStatus("expired");
93
+ import_antd.message.error("获取二维码失败,请稍后重试");
94
+ }
95
+ }, [qrcode]);
96
+ const enabledTabKeys = (0, import_react.useMemo)(() => new Set(tabs.map((t) => t.key)), [tabs]);
97
+ (0, import_react.useEffect)(() => {
98
+ var _a;
99
+ if (enabledTabKeys.has(defaultLoginType)) {
100
+ setLoginType(defaultLoginType);
101
+ return;
102
+ }
103
+ const fallback = (_a = tabs[0]) == null ? void 0 : _a.key;
104
+ if (fallback)
105
+ setLoginType(fallback);
106
+ }, [defaultLoginType, enabledTabKeys, tabs]);
107
+ (0, import_react.useEffect)(() => {
108
+ var _a;
109
+ if (enabledTabKeys.has(loginType))
110
+ return;
111
+ const fallback = (_a = tabs[0]) == null ? void 0 : _a.key;
112
+ if (fallback)
113
+ setLoginType(fallback);
114
+ }, [enabledTabKeys, loginType, tabs]);
115
+ (0, import_react.useEffect)(() => {
116
+ safeClearTimers();
117
+ if (loginType !== "qrcode") {
118
+ setQrcodeStatus("expired");
119
+ return;
120
+ }
121
+ if (!qrcode) {
122
+ setQrcodeStatus("expired");
123
+ return;
124
+ }
125
+ void handleQrcodeRefresh();
126
+ return safeClearTimers;
127
+ }, [handleQrcodeRefresh, loginType, qrcode, safeClearTimers]);
128
+ (0, import_react.useEffect)(() => {
129
+ safeClearTimers();
130
+ if (!qrcode)
131
+ return;
132
+ if (loginType !== "qrcode")
133
+ return;
134
+ if (qrcodeStatus !== "active")
135
+ return;
136
+ if (!qrcodeValue)
137
+ return;
138
+ pollIntervalRef.current = setInterval(() => {
139
+ void qrcode.api.scanLogin(qrcodeValue).then((res) => {
140
+ var _a, _b;
141
+ if (res.code !== 200)
142
+ return;
143
+ const status = (_a = res.data) == null ? void 0 : _a.status;
144
+ const msg = ((_b = res.data) == null ? void 0 : _b.msg) ?? "扫码遇到问题,稍后重试";
145
+ if (status === -1)
146
+ return;
147
+ if (status !== 1) {
148
+ safeClearTimers();
149
+ setQrcodeStatus("expired");
150
+ import_antd.message.error(msg, 3);
151
+ return;
152
+ }
153
+ safeClearTimers();
154
+ void qrcode.onSuccess();
155
+ }).catch(() => {
156
+ });
157
+ }, 1e3);
158
+ pollTimeoutRef.current = setTimeout(() => {
159
+ setQrcodeStatus("expired");
160
+ safeClearTimers();
161
+ }, 3e4);
162
+ return safeClearTimers;
163
+ }, [loginType, qrcode, qrcodeStatus, qrcodeValue, safeClearTimers]);
164
+ const tabItems = (0, import_react.useMemo)(() => tabs.map((t) => ({ key: t.key, label: t.label })), [tabs]);
165
+ return /* @__PURE__ */ import_react.default.createElement("div", { className, style: { maxWidth: "500px" } }, /* @__PURE__ */ import_react.default.createElement(
166
+ import_pro_form.LoginForm,
167
+ {
168
+ className: formClassName,
169
+ onFinish: async (values) => {
170
+ await onFinish(values);
171
+ },
172
+ title: typeof title === "string" ? /* @__PURE__ */ import_react.default.createElement("div", { className: import_styles_module.default.title }, title) : title,
173
+ containerStyle,
174
+ submitter: shouldShowSubmitter ? void 0 : false,
175
+ actions: resolvedActions
176
+ },
177
+ /* @__PURE__ */ import_react.default.createElement(
178
+ import_antd.Tabs,
179
+ {
180
+ className: tabsClassName,
181
+ centered: true,
182
+ activeKey: loginType,
183
+ onChange: (activeKey) => {
184
+ const next = activeKey;
185
+ setLoginType(next);
186
+ },
187
+ items: tabItems
188
+ }
189
+ ),
190
+ enabledTabKeys.has("qrcode") && loginType === "qrcode" && qrcode && /* @__PURE__ */ import_react.default.createElement("div", { style: qrcode.wrapStyle ?? DEFAULT_QRCODE_WRAP_STYLE }, /* @__PURE__ */ import_react.default.createElement("div", { className: qrcodeBoxClassName }, /* @__PURE__ */ import_react.default.createElement(import_antd.Flex, { justify: "center", align: "center" }, /* @__PURE__ */ import_react.default.createElement("i", { className: "iconfont icon-saoyisao", style: { color: "#999999", marginRight: 10, fontSize: 14 } }), "请使用", /* @__PURE__ */ import_react.default.createElement("span", { style: { color: "#0A6BFD" } }, "小闪扫码"), "登录"), /* @__PURE__ */ import_react.default.createElement(
191
+ import_antd.QRCode,
192
+ {
193
+ icon: qrcode.icon,
194
+ iconSize: qrcode.iconSize ?? 50,
195
+ className: qrcodeClassName,
196
+ size: qrcode.size ?? 240,
197
+ value: qrcodeUrl,
198
+ status: qrcodeStatus,
199
+ onRefresh: handleQrcodeRefresh
200
+ }
201
+ ))),
202
+ enabledTabKeys.has("sms") && loginType === "sms" && sms && /* @__PURE__ */ import_react.default.createElement(import_SmsLoginForm.default, { inputClassName: inputClassName ?? "", api: sms.api, appKey: sms.appKey })
203
+ ));
204
+ };
205
+ var YkLoginModule_default = LoginModule;
206
+ //# sourceMappingURL=index.js.map