@tendaui/react 1.1.3 → 1.1.4

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 (344) hide show
  1. package/es/_chunks/{dep-COy5g3FT.js → dep-D68MD94M.js} +2 -2
  2. package/es/_chunks/{dep-COy5g3FT.js.map → dep-D68MD94M.js.map} +1 -1
  3. package/es/button/_example/base.js +4 -2
  4. package/es/button/_example/base.js.map +1 -1
  5. package/es/button/_example/icon.js +4 -2
  6. package/es/button/_example/icon.js.map +1 -1
  7. package/es/index.js +4 -2
  8. package/es/index.js.map +1 -1
  9. package/es/ip-input/IPInput.js +2 -2
  10. package/es/ip-input/index.js +2 -2
  11. package/es/ip-input/style/css.js +1 -0
  12. package/es/layout/index.js +1 -1
  13. package/es/layout/style/css.js +1 -0
  14. package/package.json +59 -59
  15. package/es/alert/Alert.d.ts +0 -7
  16. package/es/alert/defaultProps.d.ts +0 -2
  17. package/es/alert/index.d.ts +0 -5
  18. package/es/alert/style/css.d.ts +0 -1
  19. package/es/alert/style/index.d.ts +0 -1
  20. package/es/alert/type.d.ts +0 -45
  21. package/es/badge/Badge.d.ts +0 -7
  22. package/es/badge/defaultProps.d.ts +0 -2
  23. package/es/badge/index.d.ts +0 -5
  24. package/es/badge/style/css.d.ts +0 -1
  25. package/es/badge/style/index.d.ts +0 -1
  26. package/es/badge/type.d.ts +0 -50
  27. package/es/button/Button.d.ts +0 -6
  28. package/es/button/defaultProps.d.ts +0 -2
  29. package/es/button/index.d.ts +0 -5
  30. package/es/button/style/css.d.ts +0 -1
  31. package/es/button/style/index.d.ts +0 -1
  32. package/es/button/type.d.ts +0 -81
  33. package/es/checkbox/Checkbox.d.ts +0 -10
  34. package/es/checkbox/CheckboxGroup.d.ts +0 -14
  35. package/es/checkbox/defaultProps.d.ts +0 -3
  36. package/es/checkbox/index.d.ts +0 -11
  37. package/es/checkbox/style/css.d.ts +0 -1
  38. package/es/checkbox/style/index.d.ts +0 -1
  39. package/es/checkbox/type.d.ts +0 -115
  40. package/es/color-picker/ColorPickPanel.d.ts +0 -4
  41. package/es/color-picker/ColorPicker.d.ts +0 -4
  42. package/es/color-picker/components/panel/alpha.d.ts +0 -4
  43. package/es/color-picker/components/panel/format/index.d.ts +0 -10
  44. package/es/color-picker/components/panel/format/inputs.d.ts +0 -4
  45. package/es/color-picker/components/panel/header.d.ts +0 -13
  46. package/es/color-picker/components/panel/hue.d.ts +0 -4
  47. package/es/color-picker/components/panel/index.d.ts +0 -4
  48. package/es/color-picker/components/panel/saturation.d.ts +0 -4
  49. package/es/color-picker/components/panel/slider.d.ts +0 -11
  50. package/es/color-picker/components/panel/swatches.d.ts +0 -11
  51. package/es/color-picker/components/trigger.d.ts +0 -9
  52. package/es/color-picker/defaultProps.d.ts +0 -2
  53. package/es/color-picker/helpers.d.ts +0 -5
  54. package/es/color-picker/hooks/useClassNames.d.ts +0 -2
  55. package/es/color-picker/hooks/useStyles.d.ts +0 -14
  56. package/es/color-picker/index.d.ts +0 -6
  57. package/es/color-picker/style/index.d.ts +0 -1
  58. package/es/color-picker/type.d.ts +0 -135
  59. package/es/color-picker/utils/color-picker/cmyk.d.ts +0 -27
  60. package/es/color-picker/utils/color-picker/color.d.ts +0 -144
  61. package/es/color-picker/utils/color-picker/constants.d.ts +0 -30
  62. package/es/color-picker/utils/color-picker/draggable.d.ts +0 -23
  63. package/es/color-picker/utils/color-picker/format.d.ts +0 -64
  64. package/es/color-picker/utils/color-picker/gradient.d.ts +0 -22
  65. package/es/color-picker/utils/color-picker/index.d.ts +0 -7
  66. package/es/color-picker/utils/color-picker/types.d.ts +0 -28
  67. package/es/common/Check.d.ts +0 -22
  68. package/es/common/FakeArrow.d.ts +0 -9
  69. package/es/common/PluginContainer.d.ts +0 -9
  70. package/es/common/Portal.d.ts +0 -16
  71. package/es/common/observe.d.ts +0 -1
  72. package/es/common.d.ts +0 -81
  73. package/es/config-provider/ConfigContext.d.ts +0 -13
  74. package/es/config-provider/ConfigProvider.d.ts +0 -25
  75. package/es/config-provider/index.d.ts +0 -7
  76. package/es/config-provider/type.d.ts +0 -1029
  77. package/es/dialog/Dialog.d.ts +0 -8
  78. package/es/dialog/DialogCard.d.ts +0 -8
  79. package/es/dialog/defaultProps.d.ts +0 -6
  80. package/es/dialog/hooks/useDialogDrag.d.ts +0 -7
  81. package/es/dialog/hooks/useDialogEsc.d.ts +0 -3
  82. package/es/dialog/hooks/useDialogPosition.d.ts +0 -2
  83. package/es/dialog/hooks/useLockStyle.d.ts +0 -2
  84. package/es/dialog/index.d.ts +0 -8
  85. package/es/dialog/plugin.d.ts +0 -6
  86. package/es/dialog/style/css.d.ts +0 -1
  87. package/es/dialog/style/index.d.ts +0 -1
  88. package/es/dialog/type.d.ts +0 -227
  89. package/es/dialog/utils.d.ts +0 -1
  90. package/es/drawer/Drawer.d.ts +0 -11
  91. package/es/drawer/defaultProps.d.ts +0 -2
  92. package/es/drawer/hooks/useDrag.d.ts +0 -8
  93. package/es/drawer/hooks/useLockStyle.d.ts +0 -1
  94. package/es/drawer/index.d.ts +0 -4
  95. package/es/drawer/style/css.d.ts +0 -1
  96. package/es/drawer/style/index.d.ts +0 -1
  97. package/es/drawer/type.d.ts +0 -199
  98. package/es/drawer/utils/index.d.ts +0 -23
  99. package/es/fireworks/Fireworks.d.ts +0 -7
  100. package/es/fireworks/index.d.ts +0 -5
  101. package/es/fireworks/style/css.d.ts +0 -1
  102. package/es/fireworks/style/index.d.ts +0 -1
  103. package/es/fireworks/type.d.ts +0 -69
  104. package/es/form/Form.d.ts +0 -8
  105. package/es/form/FormContext.d.ts +0 -59
  106. package/es/form/FormItem.d.ts +0 -23
  107. package/es/form/FormList.d.ts +0 -4
  108. package/es/form/const.d.ts +0 -6
  109. package/es/form/defaultProps.d.ts +0 -3
  110. package/es/form/easing.d.ts +0 -2
  111. package/es/form/formModel.d.ts +0 -37
  112. package/es/form/hooks/interface.d.ts +0 -16
  113. package/es/form/hooks/useForm.d.ts +0 -3
  114. package/es/form/hooks/useFormItemInitialData.d.ts +0 -9
  115. package/es/form/hooks/useFormItemStyle.d.ts +0 -10
  116. package/es/form/hooks/useInstance.d.ts +0 -16
  117. package/es/form/hooks/useWatch.d.ts +0 -3
  118. package/es/form/index.d.ts +0 -7
  119. package/es/form/scroll.d.ts +0 -39
  120. package/es/form/style/css.d.ts +0 -1
  121. package/es/form/style/index.d.ts +0 -1
  122. package/es/form/type.d.ts +0 -486
  123. package/es/form/utils/index.d.ts +0 -5
  124. package/es/global-config/default-config.d.ts +0 -84
  125. package/es/global-config/locale/ar_KW.d.ts +0 -239
  126. package/es/global-config/locale/en_US.d.ts +0 -263
  127. package/es/global-config/locale/it_IT.d.ts +0 -263
  128. package/es/global-config/locale/ja_JP.d.ts +0 -263
  129. package/es/global-config/locale/ko_KR.d.ts +0 -263
  130. package/es/global-config/locale/ru_RU.d.ts +0 -263
  131. package/es/global-config/locale/zh_CN.d.ts +0 -263
  132. package/es/global-config/locale/zh_TW.d.ts +0 -263
  133. package/es/global-config/mobile/default-config.d.ts +0 -7
  134. package/es/global-config/mobile/locale/ar_KW.d.ts +0 -98
  135. package/es/global-config/mobile/locale/en_US.d.ts +0 -99
  136. package/es/global-config/mobile/locale/it_IT.d.ts +0 -99
  137. package/es/global-config/mobile/locale/ja_JP.d.ts +0 -99
  138. package/es/global-config/mobile/locale/ko_KR.d.ts +0 -99
  139. package/es/global-config/mobile/locale/ru_RU.d.ts +0 -99
  140. package/es/global-config/mobile/locale/zh_CN.d.ts +0 -99
  141. package/es/global-config/mobile/locale/zh_TW.d.ts +0 -99
  142. package/es/global-config/t.d.ts +0 -25
  143. package/es/hooks/useAttach.d.ts +0 -10
  144. package/es/hooks/useCommonClassName.d.ts +0 -54
  145. package/es/hooks/useConfig.d.ts +0 -2
  146. package/es/hooks/useControlled.d.ts +0 -9
  147. package/es/hooks/useDeepEffect.d.ts +0 -7
  148. package/es/hooks/useDefaultProps.d.ts +0 -1
  149. package/es/hooks/useDomCallback.d.ts +0 -1
  150. package/es/hooks/useDomRefCallback.d.ts +0 -1
  151. package/es/hooks/useDragSorter.d.ts +0 -28
  152. package/es/hooks/useEventCallback.d.ts +0 -9
  153. package/es/hooks/useGlobalConfig.d.ts +0 -1
  154. package/es/hooks/useGlobalIcon.d.ts +0 -5
  155. package/es/hooks/useLastest.d.ts +0 -2
  156. package/es/hooks/useLayoutEffect.d.ts +0 -3
  157. package/es/hooks/useMouseEvent.d.ts +0 -25
  158. package/es/hooks/useMutationObserver.d.ts +0 -4
  159. package/es/hooks/usePopper.d.ts +0 -19
  160. package/es/hooks/useResizeObserve.d.ts +0 -1
  161. package/es/hooks/useRipple.d.ts +0 -0
  162. package/es/hooks/useSetState.d.ts +0 -7
  163. package/es/hooks/useVirtualScroll.d.ts +0 -30
  164. package/es/hooks/useWindowSize.d.ts +0 -6
  165. package/es/index.d.ts +0 -25
  166. package/es/input/Input.d.ts +0 -16
  167. package/es/input/InputGroup.d.ts +0 -10
  168. package/es/input/defaultProps.d.ts +0 -17
  169. package/es/input/index.d.ts +0 -6
  170. package/es/input/style/css.d.ts +0 -1
  171. package/es/input/style/index.d.ts +0 -1
  172. package/es/input/type.d.ts +0 -237
  173. package/es/input-number/InputNumber.d.ts +0 -17
  174. package/es/input-number/defaultProps.d.ts +0 -2
  175. package/es/input-number/index.d.ts +0 -5
  176. package/es/input-number/style/css.d.ts +0 -1
  177. package/es/input-number/style/index.d.ts +0 -1
  178. package/es/input-number/type.d.ts +0 -156
  179. package/es/input-number/useInputNumber.d.ts +0 -51
  180. package/es/ip-input/IPInput.d.ts +0 -5
  181. package/es/ip-input/defaultProps.d.ts +0 -2
  182. package/es/ip-input/index.d.ts +0 -3
  183. package/es/ip-input/style/index.d.ts +0 -1
  184. package/es/ip-input/type.d.ts +0 -113
  185. package/es/ip-input/utils.d.ts +0 -35
  186. package/es/layout/Aside.d.ts +0 -11
  187. package/es/layout/Layout.d.ts +0 -26
  188. package/es/layout/defaultProps.d.ts +0 -5
  189. package/es/layout/index.d.ts +0 -10
  190. package/es/layout/style/index.d.ts +0 -1
  191. package/es/layout/type.d.ts +0 -38
  192. package/es/list/List.d.ts +0 -17
  193. package/es/list/ListItem.d.ts +0 -15
  194. package/es/list/ListItemMeta.d.ts +0 -10
  195. package/es/list/defaultProps.d.ts +0 -7
  196. package/es/list/hooks/useListVirtualScroll.d.ts +0 -24
  197. package/es/list/index.d.ts +0 -10
  198. package/es/list/style/css.d.ts +0 -1
  199. package/es/list/style/index.d.ts +0 -1
  200. package/es/list/type.d.ts +0 -92
  201. package/es/loading/Gradient.d.ts +0 -6
  202. package/es/loading/Loading.d.ts +0 -7
  203. package/es/loading/circleAdapter.d.ts +0 -1
  204. package/es/loading/defaultProps.d.ts +0 -2
  205. package/es/loading/index.d.ts +0 -5
  206. package/es/loading/style/css.d.ts +0 -1
  207. package/es/loading/style/index.d.ts +0 -1
  208. package/es/loading/type.d.ts +0 -68
  209. package/es/loading/utils/setStyle.d.ts +0 -7
  210. package/es/locale/LocalReceiver.d.ts +0 -6
  211. package/es/locale/ar_KW.d.ts +0 -3
  212. package/es/locale/en_US.d.ts +0 -3
  213. package/es/locale/it_IT.d.ts +0 -3
  214. package/es/locale/ja_JP.d.ts +0 -3
  215. package/es/locale/ko_KR.d.ts +0 -3
  216. package/es/locale/ru_RU.d.ts +0 -3
  217. package/es/locale/zh_CN.d.ts +0 -3
  218. package/es/locale/zh_TW.d.ts +0 -3
  219. package/es/myform/index.d.ts +0 -0
  220. package/es/notification/Notify.d.ts +0 -11
  221. package/es/notification/NotifyContainer.d.ts +0 -13
  222. package/es/notification/NotifyContext.d.ts +0 -23
  223. package/es/notification/NotifyItem.d.ts +0 -4
  224. package/es/notification/index.d.ts +0 -3
  225. package/es/notification/style/css.d.ts +0 -1
  226. package/es/notification/style/index.d.ts +0 -1
  227. package/es/notification/type.d.ts +0 -22
  228. package/es/popup/Popup.d.ts +0 -21
  229. package/es/popup/defaultProps.d.ts +0 -5
  230. package/es/popup/hooks/useTrigger.d.ts +0 -20
  231. package/es/popup/index.d.ts +0 -5
  232. package/es/popup/style/css.d.ts +0 -1
  233. package/es/popup/style/index.d.ts +0 -1
  234. package/es/popup/type.d.ts +0 -109
  235. package/es/portal/Portal.d.ts +0 -16
  236. package/es/portal/index.d.ts +0 -1
  237. package/es/radio/Radio.d.ts +0 -8
  238. package/es/radio/RadioGroup.d.ts +0 -14
  239. package/es/radio/defaultProps.d.ts +0 -3
  240. package/es/radio/index.d.ts +0 -10
  241. package/es/radio/style/css.d.ts +0 -0
  242. package/es/radio/style/index.d.ts +0 -1
  243. package/es/radio/type.d.ts +0 -117
  244. package/es/radio/useKeyboard.d.ts +0 -4
  245. package/es/select/Option.d.ts +0 -24
  246. package/es/select/OptionGroup.d.ts +0 -7
  247. package/es/select/PopupContent.d.ts +0 -24
  248. package/es/select/Select.d.ts +0 -13
  249. package/es/select/defaultProps.d.ts +0 -4
  250. package/es/select/hooks/useOptions.d.ts +0 -16
  251. package/es/select/hooks/usePanelVirtualScroll.d.ts +0 -24
  252. package/es/select/index.d.ts +0 -8
  253. package/es/select/style/css.d.ts +0 -1
  254. package/es/select/style/index.d.ts +0 -1
  255. package/es/select/type.d.ts +0 -344
  256. package/es/select/utils/helper.d.ts +0 -18
  257. package/es/select-input/SelectInput.d.ts +0 -11
  258. package/es/select-input/defaultProps.d.ts +0 -2
  259. package/es/select-input/hook/useMultiple.d.ts +0 -23
  260. package/es/select-input/hook/useOverlayInnerStyle.d.ts +0 -11
  261. package/es/select-input/hook/useSingle.d.ts +0 -16
  262. package/es/select-input/index.d.ts +0 -5
  263. package/es/select-input/interface.d.ts +0 -17
  264. package/es/select-input/style/css.d.ts +0 -1
  265. package/es/select-input/style/index.d.ts +0 -1
  266. package/es/select-input/type.d.ts +0 -243
  267. package/es/slider/Slider.d.ts +0 -7
  268. package/es/slider/SliderHandleButton.d.ts +0 -11
  269. package/es/slider/defaultProps.d.ts +0 -5
  270. package/es/slider/index.d.ts +0 -5
  271. package/es/slider/style/css.d.ts +0 -1
  272. package/es/slider/style/index.d.ts +0 -1
  273. package/es/slider/type.d.ts +0 -78
  274. package/es/space/defaultProps.d.ts +0 -0
  275. package/es/space/index.d.ts +0 -0
  276. package/es/space/type.d.ts +0 -0
  277. package/es/style/index.d.ts +0 -1
  278. package/es/switch/Switch.d.ts +0 -9
  279. package/es/switch/defaultProps.d.ts +0 -2
  280. package/es/switch/index.d.ts +0 -4
  281. package/es/switch/style/css.d.ts +0 -1
  282. package/es/switch/style/index.d.ts +0 -1
  283. package/es/switch/type.d.ts +0 -48
  284. package/es/tab/TabBar.d.ts +0 -9
  285. package/es/tab/TabNav.d.ts +0 -10
  286. package/es/tab/TabNavItem.d.ts +0 -15
  287. package/es/tab/TabPanel.d.ts +0 -9
  288. package/es/tab/Tabs.d.ts +0 -10
  289. package/es/tab/defaultProps.d.ts +0 -3
  290. package/es/tab/index.d.ts +0 -8
  291. package/es/tab/style/index.d.ts +0 -1
  292. package/es/tab/type.d.ts +0 -130
  293. package/es/tab/useTabClass.d.ts +0 -8
  294. package/es/table/Cell.d.ts +0 -18
  295. package/es/table/TBody.d.ts +0 -28
  296. package/es/table/THead.d.ts +0 -10
  297. package/es/table/TR.d.ts +0 -28
  298. package/es/table/Table.d.ts +0 -6
  299. package/es/table/defaultProps.d.ts +0 -2
  300. package/es/table/hooks/index.d.ts +0 -4
  301. package/es/table/hooks/useTableClassName.d.ts +0 -26
  302. package/es/table/hooks/useTableStyle.d.ts +0 -11
  303. package/es/table/index.d.ts +0 -5
  304. package/es/table/style/css.d.ts +0 -1
  305. package/es/table/style/index.d.ts +0 -1
  306. package/es/table/type.d.ts +0 -195
  307. package/es/tag/Tag.d.ts +0 -14
  308. package/es/tag/defaultProps.d.ts +0 -7
  309. package/es/tag/index.d.ts +0 -4
  310. package/es/tag/style/css.d.ts +0 -1
  311. package/es/tag/style/index.d.ts +0 -1
  312. package/es/tag/type.d.ts +0 -169
  313. package/es/tag-input/TagInput.d.ts +0 -9
  314. package/es/tag-input/defaultProps.d.ts +0 -2
  315. package/es/tag-input/hooks/useHover.d.ts +0 -17
  316. package/es/tag-input/hooks/useTagList.d.ts +0 -30
  317. package/es/tag-input/hooks/useTagScroll.d.ts +0 -25
  318. package/es/tag-input/index.d.ts +0 -5
  319. package/es/tag-input/style/css.d.ts +0 -1
  320. package/es/tag-input/style/index.d.ts +0 -1
  321. package/es/tag-input/type.d.ts +0 -235
  322. package/es/tag-input/useTagList.d.ts +0 -30
  323. package/es/utils/composeRefs.d.ts +0 -2
  324. package/es/utils/dom.d.ts +0 -7
  325. package/es/utils/forwardRefWithStatics.d.ts +0 -2
  326. package/es/utils/getScrollbarWidth.d.ts +0 -6
  327. package/es/utils/helper.d.ts +0 -46
  328. package/es/utils/input-number/large-number.d.ts +0 -85
  329. package/es/utils/input-number/number.d.ts +0 -81
  330. package/es/utils/isFragment.d.ts +0 -4
  331. package/es/utils/listener.d.ts +0 -4
  332. package/es/utils/log/index.d.ts +0 -2
  333. package/es/utils/log/log.d.ts +0 -3
  334. package/es/utils/log/types.d.ts +0 -8
  335. package/es/utils/noop.d.ts +0 -2
  336. package/es/utils/number.d.ts +0 -7
  337. package/es/utils/parentTNode.d.ts +0 -10
  338. package/es/utils/parseTNode.d.ts +0 -10
  339. package/es/utils/react-render.d.ts +0 -16
  340. package/es/utils/ref.d.ts +0 -1
  341. package/es/utils/refs.d.ts +0 -13
  342. package/es/utils/scroll.d.ts +0 -3
  343. package/es/utils/style.d.ts +0 -4
  344. package/es/utils/transition.d.ts +0 -20
@@ -7,7 +7,7 @@ import { IconClose } from '@tendaui/icons';
7
7
  import { u as useDefaultProps } from './dep-DGvfel3I.js';
8
8
  import { u as useControlled } from './dep-DwWrhxkd.js';
9
9
  import { u as useConfig } from './dep-gy8uvBaS.js';
10
- import './css.js';
10
+ import '../ip-input/style/css.js';
11
11
 
12
12
  var ipInputDefaultProps = {
13
13
  allowIPv6: false,
@@ -509,4 +509,4 @@ var IPInput = /*#__PURE__*/forwardRef(function (originalProps, ref) {
509
509
  IPInput.displayName = "IPInput";
510
510
 
511
511
  export { IPInput as I, isValidIPv4 as a, isValidCIDRMask as b, isValidIPv6 as c, extractIPFromText as e, isValidIPv4Segment as i, parseIPv4ToSegments as p, segmentsToIPv4 as s };
512
- //# sourceMappingURL=dep-COy5g3FT.js.map
512
+ //# sourceMappingURL=dep-D68MD94M.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"dep-COy5g3FT.js","sources":["../../../components/ip-input/defaultProps.ts","../../../components/ip-input/utils.ts","../../../components/ip-input/IPInput.tsx"],"sourcesContent":["import { TdIPInputProps } from \"./type\";\n\nexport const ipInputDefaultProps: Partial<TdIPInputProps> = {\n allowIPv6: false,\n allowCIDR: false,\n readOnly: false,\n showClear: false,\n autoFocus: false,\n showSegmentSeparators: true,\n defaultValue: \"\"\n};\n","/**\n * IP 地址验证和解析工具函数\n */\n\n/**\n * 验证 IPv4 地址段(0-255)\n */\nexport function isValidIPv4Segment(segment: string, allowLeadingZeros: boolean = false): boolean {\n if (!segment || segment.trim() === \"\") return false;\n\n // 不允许前导零\n if (!allowLeadingZeros && segment.length > 1 && segment[0] === \"0\") {\n return false;\n }\n\n const num = parseInt(segment, 10);\n return !isNaN(num) && num >= 0 && num <= 255 && num.toString() === segment;\n}\n\n/**\n * 验证 IPv4 地址\n */\nexport function isValidIPv4(ip: string, allowLeadingZeros: boolean = false): boolean {\n if (!ip || typeof ip !== \"string\") return false;\n\n const segments = ip.split(\".\");\n if (segments.length !== 4) return false;\n\n return segments.every((seg) => isValidIPv4Segment(seg, allowLeadingZeros));\n}\n\n/**\n * 验证 CIDR 掩码(IPv4: 0-32, IPv6: 0-128)\n */\nexport function isValidCIDRMask(mask: string, isIPv6: boolean = false): boolean {\n if (!mask || typeof mask !== \"string\") return false;\n\n const num = parseInt(mask, 10);\n if (isNaN(num)) return false;\n\n const max = isIPv6 ? 128 : 32;\n return num >= 0 && num <= max;\n}\n\n/**\n * 验证 IPv6 地址(简化版,使用正则)\n * 支持压缩表示法 :: 和混合 IPv4/IPv6\n */\nexport function isValidIPv6(ip: string): boolean {\n if (!ip || typeof ip !== \"string\") return false;\n\n // 简化的 IPv6 验证正则\n // 支持:\n // - 标准格式:2001:0db8:85a3:0000:0000:8a2e:0370:7334\n // - 压缩格式:2001:db8::1\n // - 混合格式:::ffff:192.168.0.1\n const ipv6Regex =\n /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]+|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/;\n\n return ipv6Regex.test(ip);\n}\n\n/**\n * 从文本中提取 IP 地址\n */\nexport function extractIPFromText(text: string): { ip: string; cidr?: string } | null {\n if (!text || typeof text !== \"string\") return null;\n\n // 尝试提取 IPv4\n const ipv4Regex = /(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})(?:\\/(\\d{1,2}))?/;\n const ipv4Match = text.match(ipv4Regex);\n if (ipv4Match) {\n const ip = ipv4Match[1];\n const cidr = ipv4Match[2];\n if (isValidIPv4(ip, true)) {\n return { ip, cidr };\n }\n }\n\n // 尝试提取 IPv6\n const ipv6Regex = /([0-9a-fA-F:]+(?::[0-9a-fA-F:]+)*|::)(?:\\/(\\d{1,3}))?/;\n const ipv6Match = text.match(ipv6Regex);\n if (ipv6Match) {\n const ip = ipv6Match[1];\n const cidr = ipv6Match[2];\n if (isValidIPv6(ip)) {\n return { ip, cidr };\n }\n }\n\n return null;\n}\n\n/**\n * 解析 IP 地址为段数组(IPv4)\n */\nexport function parseIPv4ToSegments(ip: string): string[] {\n if (!ip) return [\"\", \"\", \"\", \"\"];\n const segments = ip.split(\".\");\n return [segments[0] || \"\", segments[1] || \"\", segments[2] || \"\", segments[3] || \"\"];\n}\n\n/**\n * 将段数组组合为 IP 地址(IPv4)\n */\nexport function segmentsToIPv4(segments: string[]): string {\n // 如果所有段都为空,返回空字符串\n if (segments.every((seg) => !seg || seg.trim() === \"\")) {\n return \"\";\n }\n return segments.join(\".\");\n}\n","import React, {\n useState,\n useRef,\n useEffect,\n useImperativeHandle,\n forwardRef,\n useCallback,\n KeyboardEvent,\n ClipboardEvent,\n ChangeEvent\n} from \"react\";\nimport classNames from \"classnames\";\nimport { IconClose } from \"@tendaui/icons\";\nimport { IPInputProps, IPInputRef } from \"./type\";\nimport useDefaultProps from \"../hooks/useDefaultProps\";\nimport useControlled from \"../hooks/useControlled\";\nimport useConfig from \"../hooks/useConfig\";\nimport { ipInputDefaultProps } from \"./defaultProps\";\nimport { extractIPFromText, parseIPv4ToSegments, segmentsToIPv4 } from \"./utils\";\nimport \"./style/index.js\";\n\nconst IPInput = forwardRef<IPInputRef, IPInputProps>((originalProps, ref) => {\n const props = useDefaultProps<IPInputProps>(originalProps, ipInputDefaultProps as Partial<IPInputProps>);\n const { classPrefix } = useConfig();\n\n const {\n onChange: onChangeProp,\n onBlur: onBlurProp,\n onFocus: onFocusProp,\n allowIPv6 = false,\n allowCIDR = false,\n placeholder,\n disabled,\n readOnly = false,\n showClear = false,\n autoFocus = false,\n showSegmentSeparators = true,\n formatter,\n id,\n name,\n ariaLabel,\n segmentClassName,\n inputStyle,\n separator,\n tips,\n className,\n style\n } = props;\n\n // 受控/非受控值管理\n const [value, onChange] = useControlled(props, \"value\", onChangeProp);\n\n // IPv4 模式:四个输入框的状态\n const [segments, setSegments] = useState<string[]>(() => {\n if (value) {\n const parsed = parseIPv4ToSegments(value.split(\"/\")[0]);\n return parsed;\n }\n return [\"\", \"\", \"\", \"\"];\n });\n\n // CIDR 掩码状态\n const [cidrMask, setCidrMask] = useState<string>(() => {\n if (value && value.includes(\"/\")) {\n return value.split(\"/\")[1] || \"\";\n }\n return \"\";\n });\n\n // IPv6 模式:单输入框状态\n const [ipv6Value, setIpv6Value] = useState<string>(() => {\n if (value && allowIPv6 && value.includes(\":\")) {\n return value.split(\"/\")[0];\n }\n return \"\";\n });\n\n // 输入框引用\n const segmentRefs = useRef<(HTMLInputElement | null)[]>([]);\n const cidrRef = useRef<HTMLInputElement | null>(null);\n const ipv6Ref = useRef<HTMLInputElement | null>(null);\n\n // UI 状态\n const [isFocused, setIsFocused] = useState(false);\n const [isHover, setIsHover] = useState(false);\n const [focusedSegmentIndex, setFocusedSegmentIndex] = useState<number>(-1);\n\n // 判断当前是否为 IPv6 模式\n const isIPv6Mode = allowIPv6 && (ipv6Value || (value && value.includes(\":\")));\n\n // 同步外部 value 到内部状态\n useEffect(() => {\n if (value !== undefined) {\n if (isIPv6Mode) {\n const ip = value.split(\"/\")[0];\n setIpv6Value(ip);\n if (value.includes(\"/\")) {\n setCidrMask(value.split(\"/\")[1] || \"\");\n } else {\n setCidrMask(\"\");\n }\n } else {\n const parsed = parseIPv4ToSegments(value.split(\"/\")[0]);\n setSegments(parsed);\n if (value.includes(\"/\")) {\n setCidrMask(value.split(\"/\")[1] || \"\");\n } else {\n setCidrMask(\"\");\n }\n }\n }\n }, [value, isIPv6Mode]);\n\n // 获取当前完整值\n const getCurrentValue = useCallback((): string => {\n if (isIPv6Mode) {\n if (cidrMask) {\n return `${ipv6Value}/${cidrMask}`;\n }\n return ipv6Value;\n } else {\n const ip = segmentsToIPv4(segments);\n\n if (cidrMask) {\n return `${ip}/${cidrMask}`;\n }\n return ip;\n }\n }, [isIPv6Mode, ipv6Value, segments, cidrMask]);\n\n // 触发 onChange\n const triggerChange = useCallback(\n (newValue: string) => {\n // 应用格式化函数(如果有)\n const formattedValue = formatter ? formatter(newValue) : newValue;\n onChange?.(formattedValue);\n },\n [formatter, onChange]\n );\n\n // IPv4 段输入处理\n const handleSegmentChange = useCallback(\n (index: number, newValue: string) => {\n // 只允许数字\n const numericValue = newValue.replace(/[^\\d]/g, \"\");\n\n // 限制长度\n let finalValue = numericValue;\n if (numericValue.length > 3) {\n finalValue = numericValue.slice(0, 3);\n }\n\n // 更新段\n const newSegments = [...segments];\n newSegments[index] = finalValue;\n setSegments(newSegments);\n\n // 自动跳转到下一段\n if (finalValue.length === 3 && index < 3) {\n segmentRefs.current[index + 1]?.focus();\n }\n\n // 组合完整 IP\n const ip = segmentsToIPv4(newSegments);\n const fullValue = cidrMask ? `${ip}/${cidrMask}` : ip;\n triggerChange(fullValue);\n },\n [segments, cidrMask, triggerChange]\n );\n\n // IPv4 段键盘事件\n const handleSegmentKeyDown = useCallback((index: number, e: KeyboardEvent<HTMLInputElement>) => {\n const input = e.currentTarget;\n const value = input.value;\n const cursorPos = input.selectionStart || 0;\n\n // 右箭头:移动到下一段或末尾\n if (e.key === \"ArrowRight\") {\n if (cursorPos === value.length && index < 3) {\n e.preventDefault();\n segmentRefs.current[index + 1]?.focus();\n }\n }\n\n // 左箭头:移动到上一段或开头\n if (e.key === \"ArrowLeft\") {\n if (cursorPos === 0 && index > 0) {\n e.preventDefault();\n segmentRefs.current[index - 1]?.focus();\n }\n }\n\n // Backspace:在开头时跳转到上一段\n if (e.key === \"Backspace\") {\n if (cursorPos === 0 && value === \"\" && index > 0) {\n e.preventDefault();\n const prevInput = segmentRefs.current[index - 1];\n if (prevInput) {\n prevInput.focus();\n prevInput.setSelectionRange(prevInput.value.length, prevInput.value.length);\n }\n }\n }\n\n // 点号或空格:跳转到下一段\n if ((e.key === \".\" || e.key === \" \") && index < 3) {\n e.preventDefault();\n segmentRefs.current[index + 1]?.focus();\n }\n\n // Delete:删除当前字符\n if (e.key === \"Delete\" && cursorPos === value.length && index < 3) {\n // 可以在这里添加特殊处理\n }\n }, []);\n\n // IPv4 段粘贴处理\n const handleSegmentPaste = useCallback(\n (e: ClipboardEvent<HTMLInputElement>) => {\n e.preventDefault();\n const pasteText = e.clipboardData.getData(\"text/plain\");\n const extracted = extractIPFromText(pasteText);\n\n if (extracted) {\n if (extracted.ip.includes(\":\")) {\n // IPv6\n if (allowIPv6) {\n setIpv6Value(extracted.ip);\n if (extracted.cidr) {\n setCidrMask(extracted.cidr);\n }\n const fullValue = extracted.cidr ? `${extracted.ip}/${extracted.cidr}` : extracted.ip;\n triggerChange(fullValue);\n }\n } else {\n // IPv4\n const parsed = parseIPv4ToSegments(extracted.ip);\n setSegments(parsed);\n if (extracted.cidr && allowCIDR) {\n setCidrMask(extracted.cidr);\n }\n const fullValue = extracted.cidr && allowCIDR ? `${extracted.ip}/${extracted.cidr}` : extracted.ip;\n triggerChange(fullValue);\n }\n }\n },\n [allowIPv6, allowCIDR, triggerChange]\n );\n\n // CIDR 掩码输入处理\n const handleCIDRChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const newMask = e.target.value.replace(/[^\\d]/g, \"\");\n const maxLength = isIPv6Mode ? 3 : 2;\n const finalMask = newMask.slice(0, maxLength);\n\n setCidrMask(finalMask);\n\n const ip = isIPv6Mode ? ipv6Value : segmentsToIPv4(segments);\n const fullValue = finalMask ? `${ip}/${finalMask}` : ip;\n triggerChange(fullValue);\n },\n [isIPv6Mode, ipv6Value, segments, triggerChange]\n );\n\n // IPv6 输入处理\n const handleIPv6Change = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const newValue = e.target.value;\n setIpv6Value(newValue);\n\n const fullValue = cidrMask ? `${newValue}/${cidrMask}` : newValue;\n triggerChange(fullValue);\n },\n [cidrMask, triggerChange]\n );\n\n // IPv6 粘贴处理\n const handleIPv6Paste = useCallback(\n (e: ClipboardEvent<HTMLInputElement>) => {\n e.preventDefault();\n const pasteText = e.clipboardData.getData(\"text/plain\");\n const extracted = extractIPFromText(pasteText);\n\n if (extracted) {\n setIpv6Value(extracted.ip);\n if (extracted.cidr && allowCIDR) {\n setCidrMask(extracted.cidr);\n }\n const fullValue = extracted.cidr && allowCIDR ? `${extracted.ip}/${extracted.cidr}` : extracted.ip;\n triggerChange(fullValue);\n }\n },\n [allowCIDR, triggerChange]\n );\n\n // 焦点处理\n const handleFocus = useCallback(\n (index?: number) => {\n setIsFocused(true);\n if (index !== undefined) {\n setFocusedSegmentIndex(index);\n }\n onFocusProp?.();\n },\n [onFocusProp]\n );\n\n // 失焦处理\n const handleBlur = useCallback(() => {\n setIsFocused(false);\n setFocusedSegmentIndex(-1);\n\n const currentValue = getCurrentValue();\n onBlurProp?.(currentValue);\n }, [getCurrentValue, onBlurProp]);\n\n // 清空处理\n const handleClear = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n if (disabled || readOnly) return;\n\n setSegments([\"\", \"\", \"\", \"\"]);\n setIpv6Value(\"\");\n setCidrMask(\"\");\n onChange?.(\"\");\n },\n [disabled, readOnly, onChange]\n );\n\n // 暴露给父组件的方法\n useImperativeHandle(ref, () => ({\n focus: () => {\n if (isIPv6Mode) {\n ipv6Ref.current?.focus();\n } else {\n segmentRefs.current[0]?.focus();\n }\n },\n blur: () => {\n if (isIPv6Mode) {\n ipv6Ref.current?.blur();\n } else {\n segmentRefs.current.forEach((ref) => ref?.blur());\n }\n cidrRef.current?.blur();\n },\n clear: () => {\n setSegments([\"\", \"\", \"\", \"\"]);\n setIpv6Value(\"\");\n setCidrMask(\"\");\n onChange?.(\"\");\n },\n getValue: () => getCurrentValue()\n }));\n\n // 自动聚焦\n useEffect(() => {\n if (autoFocus && !disabled && !readOnly) {\n if (isIPv6Mode) {\n ipv6Ref.current?.focus();\n } else {\n segmentRefs.current[0]?.focus();\n }\n }\n }, [autoFocus, disabled, readOnly, isIPv6Mode]);\n\n const showClearButton = showClear && isHover && getCurrentValue() && !disabled && !readOnly;\n\n // 分隔符\n const displaySeparator = separator || (isIPv6Mode ? \":\" : \".\");\n\n // 渲染 IPv4 模式\n const renderIPv4Input = () => {\n return (\n <div className={`${classPrefix}-ip-input__segments`}>\n {segments.map((segment, index) => {\n return (\n <React.Fragment key={index}>\n <input\n ref={(el) => {\n segmentRefs.current[index] = el;\n }}\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={3}\n value={segment}\n onChange={(e) => handleSegmentChange(index, e.target.value)}\n onKeyDown={(e) => handleSegmentKeyDown(index, e)}\n onPaste={handleSegmentPaste}\n onFocus={() => handleFocus(index)}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder ? placeholder.split(\".\")[index] : undefined}\n className={classNames(`${classPrefix}-ip-input__segment`, segmentClassName, {\n [`${classPrefix}-ip-input__segment--focused`]: focusedSegmentIndex === index\n })}\n style={inputStyle}\n id={index === 0 ? id : undefined}\n name={index === 0 ? name : undefined}\n aria-label={ariaLabel ? `${ariaLabel} 第 ${index + 1} 段` : `IP 地址第 ${index + 1} 段`}\n />\n {index < 3 && showSegmentSeparators && (\n <span className={`${classPrefix}-ip-input__separator`}>{displaySeparator}</span>\n )}\n </React.Fragment>\n );\n })}\n {allowCIDR && (\n <>\n <span className={`${classPrefix}-ip-input__separator`}>/</span>\n <input\n ref={cidrRef}\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={2}\n value={cidrMask}\n onChange={handleCIDRChange}\n onFocus={() => handleFocus()}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder=\"24\"\n className={classNames(`${classPrefix}-ip-input__cidr`, segmentClassName, {\n [`${classPrefix}-ip-input__cidr--error`]: cidrMask && !/^(0|[1-9]\\d?|3[0-2])$/.test(cidrMask)\n })}\n style={inputStyle}\n aria-label={ariaLabel ? `${ariaLabel} 掩码` : \"CIDR 掩码\"}\n />\n </>\n )}\n </div>\n );\n };\n\n // 渲染 IPv6 模式\n const renderIPv6Input = () => {\n return (\n <div className={`${classPrefix}-ip-input__ipv6-wrapper`}>\n <input\n ref={ipv6Ref}\n type=\"text\"\n value={ipv6Value}\n onChange={handleIPv6Change}\n onPaste={handleIPv6Paste}\n onFocus={() => handleFocus()}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder || \"2001:db8::1\"}\n className={classNames(`${classPrefix}-ip-input__ipv6`, segmentClassName)}\n style={inputStyle}\n id={id}\n name={name}\n aria-label={ariaLabel || \"IPv6 地址\"}\n />\n {allowCIDR && (\n <>\n <span className={`${classPrefix}-ip-input__separator`}>/</span>\n <input\n ref={cidrRef}\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={3}\n value={cidrMask}\n onChange={handleCIDRChange}\n onFocus={() => handleFocus()}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder=\"64\"\n className={classNames(`${classPrefix}-ip-input__cidr`, segmentClassName)}\n style={inputStyle}\n aria-label={ariaLabel ? `${ariaLabel} 掩码` : \"CIDR 掩码\"}\n />\n </>\n )}\n </div>\n );\n };\n\n return (\n <div\n className={classNames(`${classPrefix}-ip-input`, className, {\n [`${classPrefix}-is-disabled`]: disabled,\n [`${classPrefix}-is-readonly`]: readOnly,\n [`${classPrefix}-is-focused`]: isFocused\n // 不在这里添加 is-error,因为每个段有自己的错误状态\n })}\n style={style}\n onMouseEnter={() => setIsHover(true)}\n onMouseLeave={() => setIsHover(false)}\n >\n <div className={`${classPrefix}-ip-input__wrapper`}>\n {isIPv6Mode ? renderIPv6Input() : renderIPv4Input()}\n {showClearButton && (\n <IconClose\n className={`${classPrefix}-ip-input__clear ${classPrefix}-icon`}\n onClick={handleClear}\n onMouseDown={(e) => e.stopPropagation()}\n />\n )}\n </div>\n {tips && <div className={`${classPrefix}-ip-input__tips`}>{tips}</div>}\n </div>\n );\n});\n\nIPInput.displayName = \"IPInput\";\n\nexport default IPInput;\n"],"names":["ipInputDefaultProps","allowIPv6","allowCIDR","readOnly","showClear","autoFocus","showSegmentSeparators","defaultValue","isValidIPv4Segment","segment","allowLeadingZeros","arguments","length","undefined","trim","num","parseInt","isNaN","toString","isValidIPv4","ip","segments","split","every","seg","isValidCIDRMask","mask","isIPv6","max","isValidIPv6","ipv6Regex","test","extractIPFromText","text","ipv4Regex","ipv4Match","match","cidr","ipv6Match","parseIPv4ToSegments","segmentsToIPv4","join","IPInput","forwardRef","originalProps","ref","props","useDefaultProps","_useConfig","useConfig","classPrefix","onChangeProp","onChange","onBlurProp","onBlur","onFocusProp","onFocus","_props$allowIPv","_props$allowCIDR","placeholder","disabled","_props$readOnly","_props$showClear","_props$autoFocus","_props$showSegmentSep","formatter","id","name","ariaLabel","segmentClassName","inputStyle","separator","tips","className","style","_useControlled","useControlled","_useControlled2","_slicedToArray","value","_useState","useState","parsed","_useState2","setSegments","_useState3","includes","_useState4","cidrMask","setCidrMask","_useState5","_useState6","ipv6Value","setIpv6Value","segmentRefs","useRef","cidrRef","ipv6Ref","_useState7","_useState8","isFocused","setIsFocused","_useState9","_useState0","isHover","setIsHover","_useState1","_useState10","focusedSegmentIndex","setFocusedSegmentIndex","isIPv6Mode","useEffect","getCurrentValue","useCallback","concat","triggerChange","newValue","formattedValue","handleSegmentChange","index","numericValue","replace","finalValue","slice","newSegments","_toConsumableArray","_segmentRefs$current","current","focus","fullValue","handleSegmentKeyDown","e","input","currentTarget","cursorPos","selectionStart","key","_segmentRefs$current2","preventDefault","_segmentRefs$current3","prevInput","setSelectionRange","_segmentRefs$current4","handleSegmentPaste","pasteText","clipboardData","getData","extracted","handleCIDRChange","newMask","target","maxLength","finalMask","handleIPv6Change","handleIPv6Paste","handleFocus","handleBlur","currentValue","handleClear","stopPropagation","useImperativeHandle","_ipv6Ref$current","_segmentRefs$current$","blur","_cidrRef$current","_ipv6Ref$current2","forEach","clear","getValue","_ipv6Ref$current3","_segmentRefs$current$2","showClearButton","displaySeparator","renderIPv4Input","React","createElement","map","Fragment","el","type","inputMode","pattern","onKeyDown","onPaste","classNames","_defineProperty","renderIPv6Input","onMouseEnter","onMouseLeave","IconClose","onClick","onMouseDown","displayName"],"mappings":";;;;;;;;;;;AAEO,IAAMA,mBAAA,GAA+C;AAC1DC,EAAAA,SAAA,EAAW,KAAA;AACXC,EAAAA,SAAA,EAAW,KAAA;AACXC,EAAAA,QAAA,EAAU,KAAA;AACVC,EAAAA,SAAA,EAAW,KAAA;AACXC,EAAAA,SAAA,EAAW,KAAA;AACXC,EAAAA,qBAAA,EAAuB,IAAA;AACvBC,EAAAA,YAAA,EAAc;AAChB,CAAA;;ACHO,SAASC,kBAAAA,CAAmBC,OAAA,EAA8D;AAAA,EAAA,IAA7CC,iBAAA,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAA6B,KAAA;AAC/E,EAAA,IAAI,CAACF,OAAA,IAAWA,OAAA,CAAQK,IAAA,EAAK,KAAM,IAAI,OAAO,KAAA;AAG9C,EAAA,IAAI,CAACJ,qBAAqBD,OAAA,CAAQG,MAAA,GAAS,KAAKH,OAAA,CAAQ,CAAC,MAAM,GAAA,EAAK;AAClE,IAAA,OAAO,KAAA;AACT,EAAA;AAEA,EAAA,IAAMM,GAAA,GAAMC,QAAA,CAASP,OAAA,EAAS,EAAE,CAAA;EAChC,OAAO,CAACQ,KAAA,CAAMF,GAAG,CAAA,IAAKA,GAAA,IAAO,KAAKA,GAAA,IAAO,GAAA,IAAOA,GAAA,CAAIG,QAAA,EAAS,KAAMT,OAAA;AACrE;AAKO,SAASU,WAAAA,CAAYC,EAAA,EAAyD;AAAA,EAAA,IAA7CV,iBAAA,GAAAC,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAA6B,KAAA;EACnE,IAAI,CAACS,EAAA,IAAM,OAAOA,EAAA,KAAO,UAAU,OAAO,KAAA;AAE1C,EAAA,IAAMC,QAAA,GAAWD,EAAA,CAAGE,KAAA,CAAM,GAAG,CAAA;AAC7B,EAAA,IAAID,QAAA,CAAST,MAAA,KAAW,CAAA,EAAG,OAAO,KAAA;AAElC,EAAA,OAAOS,SAASE,KAAA,CAAM,UAACC;WAAQhB,kBAAA,CAAmBgB,GAAA,EAAKd,iBAAiB,CAAC;EAAA,CAAA,CAAA;AAC3E;AAKO,SAASe,eAAAA,CAAgBC,IAAA,EAAgD;AAAA,EAAA,IAAlCC,MAAA,GAAAhB,SAAA,CAAAC,MAAA,GAAA,CAAA,IAAAD,SAAA,CAAA,CAAA,CAAA,KAAAE,SAAA,GAAAF,SAAA,CAAA,CAAA,CAAA,GAAkB,KAAA;EAC9D,IAAI,CAACe,IAAA,IAAQ,OAAOA,IAAA,KAAS,UAAU,OAAO,KAAA;AAE9C,EAAA,IAAMX,GAAA,GAAMC,QAAA,CAASU,IAAA,EAAM,EAAE,CAAA;AAC7B,EAAA,IAAIT,KAAA,CAAMF,GAAG,CAAA,EAAG,OAAO,KAAA;AAEvB,EAAA,IAAMa,GAAA,GAAMD,SAAS,GAAA,GAAM,EAAA;AAC3B,EAAA,OAAOZ,GAAA,IAAO,KAAKA,GAAA,IAAOa,GAAA;AAC5B;AAMO,SAASC,YAAYT,EAAA,EAAqB;EAC/C,IAAI,CAACA,EAAA,IAAM,OAAOA,EAAA,KAAO,UAAU,OAAO,KAAA;EAO1C,IAAMU,SAAA,GACJ,8oBAAA;AAEF,EAAA,OAAOA,SAAA,CAAUC,KAAKX,EAAE,CAAA;AAC1B;AAKO,SAASY,kBAAkBC,IAAA,EAAoD;EACpF,IAAI,CAACA,IAAA,IAAQ,OAAOA,IAAA,KAAS,UAAU,OAAO,IAAA;EAG9C,IAAMC,SAAA,GAAY,sDAAA;AAClB,EAAA,IAAMC,SAAA,GAAYF,IAAA,CAAKG,KAAA,CAAMF,SAAS,CAAA;AACtC,EAAA,IAAIC,SAAA,EAAW;AACb,IAAA,IAAMf,EAAA,GAAKe,UAAU,CAAC,CAAA;AACtB,IAAA,IAAME,IAAA,GAAOF,UAAU,CAAC,CAAA;AACxB,IAAA,IAAIhB,WAAA,CAAYC,EAAA,EAAI,IAAI,CAAA,EAAG;MACzB,OAAO;AAAEA,QAAAA,IAAAA;AAAIiB,QAAAA,IAAA,EAAAA;OAAK;AACpB,IAAA;AACF,EAAA;EAGA,IAAMP,SAAA,GAAY,uDAAA;AAClB,EAAA,IAAMQ,SAAA,GAAYL,IAAA,CAAKG,KAAA,CAAMN,SAAS,CAAA;AACtC,EAAA,IAAIQ,SAAA,EAAW;AACb,IAAA,IAAMlB,GAAA,GAAKkB,UAAU,CAAC,CAAA;AACtB,IAAA,IAAMD,KAAA,GAAOC,UAAU,CAAC,CAAA;AACxB,IAAA,IAAIT,WAAA,CAAYT,GAAE,CAAA,EAAG;MACnB,OAAO;AAAEA,QAAAA,IAAAA;AAAIiB,QAAAA,IAAA,EAAAA;OAAK;AACpB,IAAA;AACF,EAAA;AAEA,EAAA,OAAO,IAAA;AACT;AAKO,SAASE,oBAAoBnB,EAAA,EAAsB;AACxD,EAAA,IAAI,CAACA,EAAA,EAAI,OAAO,CAAC,EAAA,EAAI,EAAA,EAAI,IAAI,EAAE,CAAA;AAC/B,EAAA,IAAMC,QAAA,GAAWD,EAAA,CAAGE,KAAA,CAAM,GAAG,CAAA;AAC7B,EAAA,OAAO,CAACD,QAAA,CAAS,CAAC,CAAA,IAAK,EAAA,EAAIA,SAAS,CAAC,CAAA,IAAK,EAAA,EAAIA,QAAA,CAAS,CAAC,CAAA,IAAK,EAAA,EAAIA,QAAA,CAAS,CAAC,KAAK,EAAE,CAAA;AACpF;AAKO,SAASmB,eAAenB,QAAA,EAA4B;AAEzD,EAAA,IAAIA,QAAA,CAASE,KAAA,CAAM,UAACC,GAAA,EAAA;IAAA,OAAQ,CAACA,OAAOA,GAAA,CAAIV,IAAA,EAAK,KAAM,EAAE;AAAA,EAAA,CAAA,CAAA,EAAG;AACtD,IAAA,OAAO,EAAA;AACT,EAAA;AACA,EAAA,OAAOO,QAAA,CAASoB,KAAK,GAAG,CAAA;AAC1B;;AC1FA,IAAMC,OAAA,gBAAUC,UAAA,CAAqC,UAACC,aAAA,EAAeC,GAAA,EAAQ;AAC3E,EAAA,IAAMC,KAAA,GAAQC,eAAA,CAA8BH,aAAA,EAAe5C,mBAA4C,CAAA;AACvG,EAAA,IAAAgD,UAAA,GAAwBC,SAAA,EAAU;IAA1BC,WAAA,GAAAF,UAAA,CAAAE,WAAA;AAER,EAAA,IACYC,YAAA,GAqBRL,KAAA,CArBFM,QAAA;IACQC,UAAA,GAoBNP,KAAA,CApBFQ,MAAA;IACSC,WAAA,GAmBPT,KAAA,CAnBFU,OAAA;IAAAC,eAAA,GAmBEX,KAAA,CAlBF7C,SAAA;AAAAA,IAAAA,SAAA,GAAAwD,eAAA,KAAA,KAAA,CAAA,GAAY,KAAA,GAAAA,eAAA;IAAAC,gBAAA,GAkBVZ,KAAA,CAjBF5C,SAAA;AAAAA,IAAAA,SAAA,GAAAwD,gBAAA,KAAA,KAAA,CAAA,GAAY,KAAA,GAAAA,gBAAA;IACZC,WAAA,GAgBEb,KAAA,CAhBFa,WAAA;IACAC,QAAA,GAeEd,KAAA,CAfFc,QAAA;IAAAC,eAAA,GAeEf,KAAA,CAdF3C,QAAA;AAAAA,IAAAA,QAAA,GAAA0D,eAAA,KAAA,KAAA,CAAA,GAAW,KAAA,GAAAA,eAAA;IAAAC,gBAAA,GAcThB,KAAA,CAbF1C,SAAA;AAAAA,IAAAA,SAAA,GAAA0D,gBAAA,KAAA,KAAA,CAAA,GAAY,KAAA,GAAAA,gBAAA;IAAAC,gBAAA,GAaVjB,KAAA,CAZFzC,SAAA;AAAAA,IAAAA,SAAA,GAAA0D,gBAAA,KAAA,KAAA,CAAA,GAAY,KAAA,GAAAA,gBAAA;IAAAC,qBAAA,GAYVlB,KAAA,CAXFxC,qBAAA;AAAAA,IAAAA,qBAAA,GAAA0D,qBAAA,KAAA,KAAA,CAAA,GAAwB,IAAA,GAAAA,qBAAA;IACxBC,SAAA,GAUEnB,KAAA,CAVFmB,SAAA;IACAC,EAAA,GASEpB,KAAA,CATFoB,EAAA;IACAC,IAAA,GAQErB,KAAA,CARFqB,IAAA;IACAC,SAAA,GAOEtB,KAAA,CAPFsB,SAAA;IACAC,gBAAA,GAMEvB,KAAA,CANFuB,gBAAA;IACAC,UAAA,GAKExB,KAAA,CALFwB,UAAA;IACAC,SAAA,GAIEzB,KAAA,CAJFyB,SAAA;IACAC,IAAA,GAGE1B,KAAA,CAHF0B,IAAA;IACAC,SAAA,GAEE3B,KAAA,CAFF2B,SAAA;IACAC,KAAA,GACE5B,KAAA,CADF4B,KAAA;EAIF,IAAAC,cAAA,GAA0BC,aAAA,CAAc9B,KAAA,EAAO,SAASK,YAAY,CAAA;IAAA0B,eAAA,GAAAC,cAAA,CAAAH,cAAA,EAAA,CAAA,CAAA;AAA7DI,IAAAA,KAAA,GAAAF,eAAA,CAAA,CAAA,CAAA;AAAOzB,IAAAA,QAAQ,GAAAyB,eAAA,CAAA,CAAA,CAAA;AAGtB,EAAA,IAAAG,SAAA,GAAgCC,SAAmB,YAAM;AACvD,MAAA,IAAIF,KAAA,EAAO;AACT,QAAA,IAAMG,SAAS3C,mBAAA,CAAoBwC,KAAA,CAAMzD,MAAM,GAAG,CAAA,CAAE,CAAC,CAAC,CAAA;AACtD,QAAA,OAAO4D,MAAA;AACT,MAAA;MACA,OAAO,CAAC,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAE,CAAA;AACxB,IAAA,CAAC,CAAA;IAAAC,UAAA,GAAAL,cAAA,CAAAE,SAAA,EAAA,CAAA,CAAA;AANM3D,IAAAA,QAAA,GAAA8D,UAAA,CAAA,CAAA,CAAA;AAAUC,IAAAA,WAAW,GAAAD,UAAA,CAAA,CAAA,CAAA;AAS5B,EAAA,IAAAE,UAAA,GAAgCJ,SAAiB,YAAM;MACrD,IAAIF,KAAA,IAASA,KAAA,CAAMO,QAAA,CAAS,GAAG,CAAA,EAAG;QAChC,OAAOP,KAAA,CAAMzD,KAAA,CAAM,GAAG,CAAA,CAAE,CAAC,CAAA,IAAK,EAAA;AAChC,MAAA;AACA,MAAA,OAAO,EAAA;AACT,IAAA,CAAC,CAAA;IAAAiE,UAAA,GAAAT,cAAA,CAAAO,UAAA,EAAA,CAAA,CAAA;AALMG,IAAAA,QAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAUE,IAAAA,WAAW,GAAAF,UAAA,CAAA,CAAA,CAAA;AAQ5B,EAAA,IAAAG,UAAA,GAAkCT,SAAiB,YAAM;MACvD,IAAIF,KAAA,IAAS9E,SAAA,IAAa8E,KAAA,CAAMO,QAAA,CAAS,GAAG,CAAA,EAAG;QAC7C,OAAOP,KAAA,CAAMzD,KAAA,CAAM,GAAG,CAAA,CAAE,CAAC,CAAA;AAC3B,MAAA;AACA,MAAA,OAAO,EAAA;AACT,IAAA,CAAC,CAAA;IAAAqE,UAAA,GAAAb,cAAA,CAAAY,UAAA,EAAA,CAAA,CAAA;AALME,IAAAA,SAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAWE,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAQ9B,EAAA,IAAMG,WAAA,GAAcC,MAAA,CAAoC,EAAE,CAAA;AAC1D,EAAA,IAAMC,OAAA,GAAUD,OAAgC,IAAI,CAAA;AACpD,EAAA,IAAME,OAAA,GAAUF,OAAgC,IAAI,CAAA;AAGpD,EAAA,IAAAG,UAAA,GAAkCjB,SAAS,KAAK,CAAA;IAAAkB,UAAA,GAAArB,cAAA,CAAAoB,UAAA,EAAA,CAAA,CAAA;AAAzCE,IAAAA,SAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;AAAWE,IAAAA,YAAY,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC9B,EAAA,IAAAG,UAAA,GAA8BrB,SAAS,KAAK,CAAA;IAAAsB,UAAA,GAAAzB,cAAA,CAAAwB,UAAA,EAAA,CAAA,CAAA;AAArCE,IAAAA,OAAA,GAAAD,UAAA,CAAA,CAAA,CAAA;AAASE,IAAAA,UAAU,GAAAF,UAAA,CAAA,CAAA,CAAA;AAC1B,EAAA,IAAAG,UAAA,GAAsDzB,SAAiB,CAAA,CAAE,CAAA;IAAA0B,WAAA,GAAA7B,cAAA,CAAA4B,UAAA,EAAA,CAAA,CAAA;AAAlEE,IAAAA,mBAAA,GAAAD,WAAA,CAAA,CAAA,CAAA;AAAqBE,IAAAA,sBAAsB,GAAAF,WAAA,CAAA,CAAA,CAAA;AAGlD,EAAA,IAAMG,aAAa7G,SAAA,KAAc2F,SAAA,IAAcb,KAAA,IAASA,KAAA,CAAMO,SAAS,GAAG,CAAA,CAAA;AAG1EyB,EAAAA,SAAA,CAAU,YAAM;AACd,IAAA,IAAIhC,UAAU,KAAA,CAAA,EAAW;AACvB,MAAA,IAAI+B,UAAA,EAAY;QACd,IAAM1F,EAAA,GAAK2D,KAAA,CAAMzD,KAAA,CAAM,GAAG,EAAE,CAAC,CAAA;QAC7BuE,YAAA,CAAazE,EAAE,CAAA;AACf,QAAA,IAAI2D,KAAA,CAAMO,QAAA,CAAS,GAAG,CAAA,EAAG;AACvBG,UAAAA,WAAA,CAAYV,MAAMzD,KAAA,CAAM,GAAG,CAAA,CAAE,CAAC,KAAK,EAAE,CAAA;AACvC,QAAA,CAAA,MAAO;UACLmE,WAAA,CAAY,EAAE,CAAA;AAChB,QAAA;AACF,MAAA,CAAA,MAAO;AACL,QAAA,IAAMP,SAAS3C,mBAAA,CAAoBwC,KAAA,CAAMzD,MAAM,GAAG,CAAA,CAAE,CAAC,CAAC,CAAA;QACtD8D,WAAA,CAAYF,MAAM,CAAA;AAClB,QAAA,IAAIH,KAAA,CAAMO,QAAA,CAAS,GAAG,CAAA,EAAG;AACvBG,UAAAA,WAAA,CAAYV,MAAMzD,KAAA,CAAM,GAAG,CAAA,CAAE,CAAC,KAAK,EAAE,CAAA;AACvC,QAAA,CAAA,MAAO;UACLmE,WAAA,CAAY,EAAE,CAAA;AAChB,QAAA;AACF,MAAA;AACF,IAAA;AACF,EAAA,CAAA,EAAG,CAACV,KAAA,EAAO+B,UAAU,CAAC,CAAA;AAGtB,EAAA,IAAME,eAAA,GAAkBC,YAAY,YAAc;AAChD,IAAA,IAAIH,UAAA,EAAY;AACd,MAAA,IAAItB,QAAA,EAAU;AACZ,QAAA,OAAA,EAAA,CAAA0B,MAAA,CAAUtB,SAAS,EAAA,GAAA,CAAA,CAAAsB,MAAA,CAAI1B,QAAQ,CAAA;AACjC,MAAA;AACA,MAAA,OAAOI,SAAA;AACT,IAAA,CAAA,MAAO;AACL,MAAA,IAAMxE,EAAA,GAAKoB,eAAenB,QAAQ,CAAA;AAElC,MAAA,IAAImE,QAAA,EAAU;AACZ,QAAA,OAAA,EAAA,CAAA0B,MAAA,CAAU9F,EAAE,EAAA,GAAA,CAAA,CAAA8F,MAAA,CAAI1B,QAAQ,CAAA;AAC1B,MAAA;AACA,MAAA,OAAOpE,EAAA;AACT,IAAA;EACF,GAAG,CAAC0F,UAAA,EAAYlB,SAAA,EAAWvE,QAAA,EAAUmE,QAAQ,CAAC,CAAA;AAG9C,EAAA,IAAM2B,aAAA,GAAgBF,WAAA,CACpB,UAACG,QAAA,EAAqB;IAEpB,IAAMC,cAAA,GAAiBpD,SAAA,GAAYA,SAAA,CAAUmD,QAAQ,CAAA,GAAIA,QAAA;AACzDhE,IAAAA,QAAA,aAAAA,QAAA,KAAA,KAAA,CAAA,IAAAA,QAAA,CAAWiE,cAAc,CAAA;AAC3B,EAAA,CAAA,EACA,CAACpD,WAAWb,QAAQ,CACtB,CAAA;EAGA,IAAMkE,mBAAA,GAAsBL,WAAA,CAC1B,UAACM,OAAeH,QAAA,EAAqB;IAEnC,IAAMI,YAAA,GAAeJ,QAAA,CAASK,OAAA,CAAQ,QAAA,EAAU,EAAE,CAAA;IAGlD,IAAIC,UAAA,GAAaF,YAAA;AACjB,IAAA,IAAIA,YAAA,CAAa5G,SAAS,CAAA,EAAG;MAC3B8G,UAAA,GAAaF,YAAA,CAAaG,KAAA,CAAM,CAAA,EAAG,CAAC,CAAA;AACtC,IAAA;AAGA,IAAA,IAAMC,WAAA,GAAAC,kBAAA,CAAkBxG,QAAQ,CAAA;AAChCuG,IAAAA,WAAA,CAAYL,KAAK,CAAA,GAAIG,UAAA;IACrBtC,WAAA,CAAYwC,WAAW,CAAA;IAGvB,IAAIF,UAAA,CAAW9G,MAAA,KAAW,CAAA,IAAK2G,KAAA,GAAQ,CAAA,EAAG;AAAA,MAAA,IAAAO,oBAAA;AACxC,MAAA,CAAAA,oBAAA,GAAAhC,WAAA,CAAYiC,OAAA,CAAQR,KAAA,GAAQ,CAAC,CAAA,cAAAO,oBAAA,KAAA,KAAA,CAAA,IAA7BA,oBAAA,CAAgCE,KAAA,EAAM;AACxC,IAAA;AAGA,IAAA,IAAM5G,EAAA,GAAKoB,eAAeoF,WAAW,CAAA;AACrC,IAAA,IAAMK,YAAYzC,QAAA,GAAA,EAAA,CAAA0B,MAAA,CAAc9F,EAAE,EAAA,GAAA,CAAA,CAAA8F,MAAA,CAAI1B,QAAQ,CAAA,GAAKpE,EAAA;IACnD+F,aAAA,CAAcc,SAAS,CAAA;EACzB,CAAA,EACA,CAAC5G,QAAA,EAAUmE,QAAA,EAAU2B,aAAa,CACpC,CAAA;EAGA,IAAMe,oBAAA,GAAuBjB,WAAA,CAAY,UAACM,KAAA,EAAeY,CAAA,EAAuC;AAC9F,IAAA,IAAMC,QAAQD,CAAA,CAAEE,aAAA;AAChB,IAAA,IAAMtD,SAAQqD,KAAA,CAAMrD,KAAA;AACpB,IAAA,IAAMuD,SAAA,GAAYF,MAAMG,cAAA,IAAkB,CAAA;AAG1C,IAAA,IAAIJ,CAAA,CAAEK,QAAQ,YAAA,EAAc;MAC1B,IAAIF,SAAA,KAAcvD,MAAAA,CAAMnE,MAAA,IAAU2G,KAAA,GAAQ,CAAA,EAAG;AAAA,QAAA,IAAAkB,qBAAA;QAC3CN,CAAA,CAAEO,cAAA,EAAe;AACjB,QAAA,CAAAD,qBAAA,GAAA3C,WAAA,CAAYiC,OAAA,CAAQR,KAAA,GAAQ,CAAC,CAAA,cAAAkB,qBAAA,KAAA,KAAA,CAAA,IAA7BA,qBAAA,CAAgCT,KAAA,EAAM;AACxC,MAAA;AACF,IAAA;AAGA,IAAA,IAAIG,CAAA,CAAEK,QAAQ,WAAA,EAAa;AACzB,MAAA,IAAIF,SAAA,KAAc,CAAA,IAAKf,KAAA,GAAQ,CAAA,EAAG;AAAA,QAAA,IAAAoB,qBAAA;QAChCR,CAAA,CAAEO,cAAA,EAAe;AACjB,QAAA,CAAAC,qBAAA,GAAA7C,WAAA,CAAYiC,OAAA,CAAQR,KAAA,GAAQ,CAAC,CAAA,cAAAoB,qBAAA,KAAA,KAAA,CAAA,IAA7BA,qBAAA,CAAgCX,KAAA,EAAM;AACxC,MAAA;AACF,IAAA;AAGA,IAAA,IAAIG,CAAA,CAAEK,QAAQ,WAAA,EAAa;MACzB,IAAIF,SAAA,KAAc,CAAA,IAAKvD,MAAAA,KAAU,EAAA,IAAMwC,QAAQ,CAAA,EAAG;QAChDY,CAAA,CAAEO,cAAA,EAAe;QACjB,IAAME,SAAA,GAAY9C,WAAA,CAAYiC,OAAA,CAAQR,KAAA,GAAQ,CAAC,CAAA;AAC/C,QAAA,IAAIqB,SAAA,EAAW;UACbA,SAAA,CAAUZ,KAAA,EAAM;AAChBY,UAAAA,SAAA,CAAUC,kBAAkBD,SAAA,CAAU7D,KAAA,CAAMnE,MAAA,EAAQgI,SAAA,CAAU7D,MAAMnE,MAAM,CAAA;AAC5E,QAAA;AACF,MAAA;AACF,IAAA;AAGA,IAAA,IAAA,CAAKuH,EAAEK,GAAA,KAAQ,GAAA,IAAOL,EAAEK,GAAA,KAAQ,GAAA,KAAQjB,QAAQ,CAAA,EAAG;AAAA,MAAA,IAAAuB,qBAAA;MACjDX,CAAA,CAAEO,cAAA,EAAe;AACjB,MAAA,CAAAI,qBAAA,GAAAhD,WAAA,CAAYiC,OAAA,CAAQR,KAAA,GAAQ,CAAC,CAAA,cAAAuB,qBAAA,KAAA,KAAA,CAAA,IAA7BA,qBAAA,CAAgCd,KAAA,EAAM;AACxC,IAAA;AAGA,IAAA,IAAIG,EAAEK,GAAA,KAAQ,QAAA,IAAYF,cAAcvD,MAAAA,CAAMnE,MAAA,IAAU2G,QAAQ,CAAA,EAAG,CAEnE;EACF,CAAA,EAAG,EAAE,CAAA;AAGL,EAAA,IAAMwB,kBAAA,GAAqB9B,WAAA,CACzB,UAACkB,CAAA,EAAwC;IACvCA,CAAA,CAAEO,cAAA,EAAe;IACjB,IAAMM,SAAA,GAAYb,CAAA,CAAEc,aAAA,CAAcC,OAAA,CAAQ,YAAY,CAAA;AACtD,IAAA,IAAMC,SAAA,GAAYnH,kBAAkBgH,SAAS,CAAA;AAE7C,IAAA,IAAIG,SAAA,EAAW;MACb,IAAIA,SAAA,CAAU/H,EAAA,CAAGkE,QAAA,CAAS,GAAG,CAAA,EAAG;AAE9B,QAAA,IAAIrF,SAAA,EAAW;AACb4F,UAAAA,YAAA,CAAasD,UAAU/H,EAAE,CAAA;UACzB,IAAI+H,UAAU9G,IAAA,EAAM;AAClBoD,YAAAA,WAAA,CAAY0D,UAAU9G,IAAI,CAAA;AAC5B,UAAA;UACA,IAAM4F,SAAA,GAAYkB,SAAA,CAAU9G,IAAA,GAAA,EAAA,CAAA6E,MAAA,CAAUiC,SAAA,CAAU/H,EAAE,EAAA,GAAA,CAAA,CAAA8F,MAAA,CAAIiC,SAAA,CAAU9G,IAAI,CAAA,GAAK8G,SAAA,CAAU/H,EAAA;UACnF+F,aAAA,CAAcc,SAAS,CAAA;AACzB,QAAA;AACF,MAAA,CAAA,MAAO;AAEL,QAAA,IAAM/C,MAAA,GAAS3C,mBAAA,CAAoB4G,SAAA,CAAU/H,EAAE,CAAA;QAC/CgE,WAAA,CAAYF,MAAM,CAAA;AAClB,QAAA,IAAIiE,SAAA,CAAU9G,QAAQnC,SAAA,EAAW;AAC/BuF,UAAAA,WAAA,CAAY0D,UAAU9G,IAAI,CAAA;AAC5B,QAAA;QACA,IAAM4F,UAAA,GAAYkB,SAAA,CAAU9G,IAAA,IAAQnC,SAAA,GAAA,EAAA,CAAAgH,MAAA,CAAeiC,SAAA,CAAU/H,EAAE,EAAA,GAAA,CAAA,CAAA8F,MAAA,CAAIiC,SAAA,CAAU9G,IAAI,CAAA,GAAK8G,SAAA,CAAU/H,EAAA;QAChG+F,aAAA,CAAcc,UAAS,CAAA;AACzB,MAAA;AACF,IAAA;EACF,CAAA,EACA,CAAChI,SAAA,EAAWC,SAAA,EAAWiH,aAAa,CACtC,CAAA;AAGA,EAAA,IAAMiC,gBAAA,GAAmBnC,WAAA,CACvB,UAACkB,CAAA,EAAqC;AACpC,IAAA,IAAMkB,UAAUlB,CAAA,CAAEmB,MAAA,CAAOvE,KAAA,CAAM0C,OAAA,CAAQ,UAAU,EAAE,CAAA;AACnD,IAAA,IAAM8B,SAAA,GAAYzC,aAAa,CAAA,GAAI,CAAA;IACnC,IAAM0C,SAAA,GAAYH,OAAA,CAAQ1B,KAAA,CAAM,CAAA,EAAG4B,SAAS,CAAA;IAE5C9D,WAAA,CAAY+D,SAAS,CAAA;IAErB,IAAMpI,EAAA,GAAK0F,UAAA,GAAalB,SAAA,GAAYpD,cAAA,CAAenB,QAAQ,CAAA;AAC3D,IAAA,IAAM4G,YAAYuB,SAAA,GAAA,EAAA,CAAAtC,MAAA,CAAe9F,EAAE,EAAA,GAAA,CAAA,CAAA8F,MAAA,CAAIsC,SAAS,CAAA,GAAKpI,EAAA;IACrD+F,aAAA,CAAcc,SAAS,CAAA;EACzB,CAAA,EACA,CAACnB,UAAA,EAAYlB,SAAA,EAAWvE,QAAA,EAAU8F,aAAa,CACjD,CAAA;AAGA,EAAA,IAAMsC,gBAAA,GAAmBxC,WAAA,CACvB,UAACkB,CAAA,EAAqC;AACpC,IAAA,IAAMf,QAAA,GAAWe,EAAEmB,MAAA,CAAOvE,KAAA;IAC1Bc,YAAA,CAAauB,QAAQ,CAAA;AAErB,IAAA,IAAMa,YAAYzC,QAAA,GAAA,EAAA,CAAA0B,MAAA,CAAcE,QAAQ,EAAA,GAAA,CAAA,CAAAF,MAAA,CAAI1B,QAAQ,CAAA,GAAK4B,QAAA;IACzDD,aAAA,CAAcc,SAAS,CAAA;AACzB,EAAA,CAAA,EACA,CAACzC,UAAU2B,aAAa,CAC1B,CAAA;AAGA,EAAA,IAAMuC,eAAA,GAAkBzC,WAAA,CACtB,UAACkB,CAAA,EAAwC;IACvCA,CAAA,CAAEO,cAAA,EAAe;IACjB,IAAMM,SAAA,GAAYb,CAAA,CAAEc,aAAA,CAAcC,OAAA,CAAQ,YAAY,CAAA;AACtD,IAAA,IAAMC,SAAA,GAAYnH,kBAAkBgH,SAAS,CAAA;AAE7C,IAAA,IAAIG,SAAA,EAAW;AACbtD,MAAAA,YAAA,CAAasD,UAAU/H,EAAE,CAAA;AACzB,MAAA,IAAI+H,SAAA,CAAU9G,QAAQnC,SAAA,EAAW;AAC/BuF,QAAAA,WAAA,CAAY0D,UAAU9G,IAAI,CAAA;AAC5B,MAAA;MACA,IAAM4F,SAAA,GAAYkB,SAAA,CAAU9G,IAAA,IAAQnC,SAAA,GAAA,EAAA,CAAAgH,MAAA,CAAeiC,SAAA,CAAU/H,EAAE,EAAA,GAAA,CAAA,CAAA8F,MAAA,CAAIiC,SAAA,CAAU9G,IAAI,CAAA,GAAK8G,SAAA,CAAU/H,EAAA;MAChG+F,aAAA,CAAcc,SAAS,CAAA;AACzB,IAAA;AACF,EAAA,CAAA,EACA,CAAC/H,WAAWiH,aAAa,CAC3B,CAAA;AAGA,EAAA,IAAMwC,WAAA,GAAc1C,WAAA,CAClB,UAACM,KAAA,EAAmB;IAClBlB,YAAA,CAAa,IAAI,CAAA;AACjB,IAAA,IAAIkB,UAAU,KAAA,CAAA,EAAW;MACvBV,sBAAA,CAAuBU,KAAK,CAAA;AAC9B,IAAA;AACAhE,IAAAA,WAAA,KAAA,IAAA,IAAAA,WAAA,KAAA,KAAA,CAAA,IAAAA,WAAA,EAAc;AAChB,EAAA,CAAA,EACA,CAACA,WAAW,CACd,CAAA;AAGA,EAAA,IAAMqG,UAAA,GAAa3C,YAAY,YAAM;IACnCZ,YAAA,CAAa,KAAK,CAAA;IAClBQ,sBAAA,CAAuB,CAAA,CAAE,CAAA;AAEzB,IAAA,IAAMgD,eAAe7C,eAAA,EAAgB;AACrC3D,IAAAA,UAAA,aAAAA,UAAA,KAAA,KAAA,CAAA,IAAAA,UAAA,CAAawG,YAAY,CAAA;AAC3B,EAAA,CAAA,EAAG,CAAC7C,eAAA,EAAiB3D,UAAU,CAAC,CAAA;AAGhC,EAAA,IAAMyG,WAAA,GAAc7C,WAAA,CAClB,UAACkB,CAAA,EAAwB;IACvBA,CAAA,CAAE4B,eAAA,EAAgB;IAClB,IAAInG,YAAYzD,QAAA,EAAU;IAE1BiF,WAAA,CAAY,CAAC,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAE,CAAC,CAAA;IAC5BS,YAAA,CAAa,EAAE,CAAA;IACfJ,WAAA,CAAY,EAAE,CAAA;AACdrC,IAAAA,QAAA,aAAAA,QAAA,KAAA,KAAA,CAAA,IAAAA,QAAA,CAAW,EAAE,CAAA;EACf,CAAA,EACA,CAACQ,QAAA,EAAUzD,QAAA,EAAUiD,QAAQ,CAC/B,CAAA;EAGA4G,mBAAA,CAAoBnH,KAAK,YAAA;IAAA,OAAO;AAC9BmF,MAAAA,OAAO,SAAPA,QAAa;AACX,QAAA,IAAIlB,UAAA,EAAY;AAAA,UAAA,IAAAmD,gBAAA;AACd,UAAA,CAAAA,gBAAA,GAAAhE,OAAA,CAAQ8B,oDAARkC,gBAAA,CAAiBjC,KAAA,EAAM;AACzB,QAAA,CAAA,MAAO;AAAA,UAAA,IAAAkC,qBAAA;AACL,UAAA,CAAAA,qBAAA,GAAApE,WAAA,CAAYiC,OAAA,CAAQ,CAAC,CAAA,MAAA,IAAA,IAAAmC,qBAAA,KAAA,KAAA,CAAA,IAArBA,qBAAA,CAAwBlC,KAAA,EAAM;AAChC,QAAA;MACF,CAAA;AACAmC,MAAAA,MAAM,SAANA,OAAY;AAAA,QAAA,IAAAC,gBAAA;AACV,QAAA,IAAItD,UAAA,EAAY;AAAA,UAAA,IAAAuD,iBAAA;AACd,UAAA,CAAAA,iBAAA,GAAApE,OAAA,CAAQ8B,qDAARsC,iBAAA,CAAiBF,IAAA,EAAK;AACxB,QAAA,CAAA,MAAO;AACLrE,UAAAA,WAAA,CAAYiC,QAAQuC,OAAA,CAAQ,UAACzH,IAAAA,EAAAA;YAAAA,OAAQA,IAAAA,aAAAA,IAAAA,KAAAA,KAAAA,CAAAA,GAAAA,KAAAA,CAAAA,GAAAA,IAAAA,CAAKsH,MAAM;UAAA,CAAA,CAAA;AAClD,QAAA;AACA,QAAA,CAAAC,gBAAA,GAAApE,OAAA,CAAQ+B,oDAARqC,gBAAA,CAAiBD,IAAA,EAAK;MACxB,CAAA;AACAI,MAAAA,OAAO,SAAPA,QAAa;QACXnF,WAAA,CAAY,CAAC,EAAA,EAAI,EAAA,EAAI,EAAA,EAAI,EAAE,CAAC,CAAA;QAC5BS,YAAA,CAAa,EAAE,CAAA;QACfJ,WAAA,CAAY,EAAE,CAAA;AACdrC,QAAAA,QAAA,aAAAA,QAAA,KAAA,KAAA,CAAA,IAAAA,QAAA,CAAW,EAAE,CAAA;MACf,CAAA;MACAoH,QAAA,EAAU,SAAVA,QAAAA,GAAA;QAAA,OAAgBxD,eAAA,EAAgB;AAAA,MAAA;KAClC;AAAA,EAAA,CAAE,CAAA;AAGFD,EAAAA,SAAA,CAAU,YAAM;AACd,IAAA,IAAI1G,SAAA,IAAa,CAACuD,QAAA,IAAY,CAACzD,QAAA,EAAU;AACvC,MAAA,IAAI2G,UAAA,EAAY;AAAA,QAAA,IAAA2D,iBAAA;AACd,QAAA,CAAAA,iBAAA,GAAAxE,OAAA,CAAQ8B,qDAAR0C,iBAAA,CAAiBzC,KAAA,EAAM;AACzB,MAAA,CAAA,MAAO;AAAA,QAAA,IAAA0C,sBAAA;AACL,QAAA,CAAAA,sBAAA,GAAA5E,WAAA,CAAYiC,OAAA,CAAQ,CAAC,CAAA,MAAA,IAAA,IAAA2C,sBAAA,KAAA,KAAA,CAAA,IAArBA,sBAAA,CAAwB1C,KAAA,EAAM;AAChC,MAAA;AACF,IAAA;EACF,GAAG,CAAC3H,SAAA,EAAWuD,QAAA,EAAUzD,QAAA,EAAU2G,UAAU,CAAC,CAAA;AAE9C,EAAA,IAAM6D,kBAAkBvK,SAAA,IAAaoG,OAAA,IAAWQ,iBAAgB,IAAK,CAACpD,YAAY,CAACzD,QAAA;EAGnF,IAAMyK,gBAAA,GAAmBrG,SAAA,KAAcuC,UAAA,GAAa,GAAA,GAAM,GAAA,CAAA;AAG1D,EAAA,IAAM+D,kBAAkB,SAAlBA,kBAAwB;AAC5B,IAAA,sBACEC,KAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;MAAItG,SAAA,EAAA,EAAA,CAAAyC,MAAA,CAAchE,WAAW,EAAA,qBAAA;OAC3B7B,QAAA,CAAS2J,GAAA,CAAI,UAACvK,OAAA,EAAS8G,KAAA,EAAU;MAChC,sBACEuD,KAAA,CAAAC,aAAA,CAACD,KAAA,CAAMG,QAAA,EAAN;AAAezC,QAAAA,KAAKjB;AAAA,OAAA,iBACnBuD,KAAA,CAAAC,aAAA,CAAC,OAAA,EAAA;AACClI,QAAAA,GAAA,EAAK,SAALA,GAAAA,CAAMqI,EAAA,EAAO;AACXpF,UAAAA,WAAA,CAAYiC,OAAA,CAAQR,KAAK,CAAA,GAAI2D,EAAA;QAC/B,CAAA;AACAC,QAAAA,IAAA,EAAK,MAAA;AACLC,QAAAA,SAAA,EAAU,SAAA;AACVC,QAAAA,OAAA,EAAQ,QAAA;AACR9B,QAAAA,SAAA,EAAW,CAAA;AACXxE,QAAAA,KAAA,EAAOtE,OAAA;AACP2C,QAAAA,UAAU,SAAVA,SAAW+E,CAAA,EAAA;UAAA,OAAMb,oBAAoBC,KAAA,EAAOY,CAAA,CAAEmB,OAAOvE,KAAK,CAAA;AAAA,QAAA,CAAA;AAC1DuG,QAAAA,SAAA,EAAW,SAAXA,SAAAA,CAAYnD,CAAA,EAAA;AAAA,UAAA,OAAMD,oBAAA,CAAqBX,OAAOY,CAAC,CAAA;AAAA,QAAA,CAAA;AAC/CoD,QAAAA,OAAA,EAASxC,kBAAA;QACTvF,OAAA,EAAS,SAATA,OAAAA,GAAA;UAAA,OAAemG,WAAA,CAAYpC,KAAK,CAAA;AAAA,QAAA,CAAA;AAChCjE,QAAAA,MAAA,EAAQsG,UAAA;AACRhG,QAAAA,QAAA,EAAAA,QAAA;AACAzD,QAAAA,QAAA,EAAAA,QAAA;AACAwD,QAAAA,aAAaA,WAAA,GAAcA,WAAA,CAAYrC,MAAM,GAAG,CAAA,CAAEiG,KAAK,CAAA,GAAI,KAAA,CAAA;AAC3D9C,QAAAA,SAAA,EAAW+G,UAAA,CAAA,EAAA,CAAAtE,MAAA,CAAchE,WAAW,yBAAsBmB,gBAAA,EAAAoH,eAAA,CAAA,EAAA,EAAA,EAAA,CAAAvE,MAAA,CACpDhE,WAAW,EAAA,6BAAA,CAAA,EAAgC0D,mBAAA,KAAwBW,KAAA,CACxE,CAAA;AACD7C,QAAAA,KAAA,EAAOJ,UAAA;QACPJ,EAAA,EAAIqD,KAAA,KAAU,CAAA,GAAIrD,EAAA,GAAK,KAAA,CAAA;QACvBC,IAAA,EAAMoD,KAAA,KAAU,CAAA,GAAIpD,IAAA,GAAO,KAAA,CAAA;AAC3B,QAAA,YAAA,EAAYC,SAAA,GAAA,EAAA,CAAA8C,MAAA,CAAe9C,SAAS,EAAA,UAAA,CAAA,CAAA8C,MAAA,CAAMK,QAAQ,CAAC,EAAA,SAAA,CAAA,GAAA,wBAAA,CAAAL,MAAA,CAAiBK,KAAA,GAAQ,CAAC,EAAA,SAAA;AAAA,OAC/E,CAAA,EACCA,KAAA,GAAQ,CAAA,IAAKjH,qBAAA,mBACZwK,KAAA,CAAAC,aAAA,CAAC,MAAA,EAAA;QAAKtG,SAAA,EAAA,EAAA,CAAAyC,MAAA,CAAchE,WAAW,EAAA,sBAAA;OAAA,EAAyB0H,gBAAiB,CAE7E,CAAA;IAEJ,CAAC,CAAA,EACA1K,SAAA,mBACC4K,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAG,QAAA,EAAA,IAAA,iBACEH,KAAA,CAAAC,aAAA,CAAC,MAAA,EAAA;MAAKtG,SAAA,EAAA,EAAA,CAAAyC,MAAA,CAAchE,WAAW,EAAA,sBAAA;KAAA,EAAwB,GAAC,CAAA,iBACxD4H,KAAA,CAAAC,aAAA,CAAC,OAAA,EAAA;AACClI,MAAAA,GAAA,EAAKmD,OAAA;AACLmF,MAAAA,IAAA,EAAK,MAAA;AACLC,MAAAA,SAAA,EAAU,SAAA;AACVC,MAAAA,OAAA,EAAQ,QAAA;AACR9B,MAAAA,SAAA,EAAW,CAAA;AACXxE,MAAAA,KAAA,EAAOS,QAAA;AACPpC,MAAAA,QAAA,EAAUgG,gBAAA;MACV5F,OAAA,EAAS,SAATA,OAAAA,GAAA;QAAA,OAAemG,WAAA,EAAY;AAAA,MAAA,CAAA;AAC3BrG,MAAAA,MAAA,EAAQsG,UAAA;AACRhG,MAAAA,QAAA,EAAAA,QAAA;AACAzD,MAAAA,QAAA,EAAAA,QAAA;AACAwD,MAAAA,WAAA,EAAY,IAAA;MACZc,SAAA,EAAW+G,UAAA,CAAA,EAAA,CAAAtE,MAAA,CAAchE,WAAW,EAAA,iBAAA,CAAA,EAAmBmB,gBAAA,EAAAoH,eAAA,CAAA,EAAA,EAAA,EAAA,CAAAvE,MAAA,CACjDhE,WAAW,EAAA,wBAAA,CAAA,EAA2BsC,QAAA,IAAY,CAAC,uBAAA,CAAwBzD,IAAA,CAAKyD,QAAQ,CAAA,CAC7F,CAAA;AACDd,MAAAA,KAAA,EAAOJ,UAAA;AACP,MAAA,YAAA,EAAYF,SAAA,GAAA,EAAA,CAAA8C,MAAA,CAAe9C,SAAS,EAAA,eAAA,CAAA,GAAQ;KAC9C,CACF,CAEJ,CAAA;EAEJ,CAAA;AAGA,EAAA,IAAMsH,kBAAkB,SAAlBA,kBAAwB;AAC5B,IAAA,sBACEZ,KAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;MAAItG,SAAA,EAAA,EAAA,CAAAyC,MAAA,CAAchE,WAAW,EAAA,yBAAA;AAAA,KAAA,iBAC5B4H,KAAA,CAAAC,aAAA,CAAC,OAAA,EAAA;AACClI,MAAAA,GAAA,EAAKoD,OAAA;AACLkF,MAAAA,IAAA,EAAK,MAAA;AACLpG,MAAAA,KAAA,EAAOa,SAAA;AACPxC,MAAAA,QAAA,EAAUqG,gBAAA;AACV8B,MAAAA,OAAA,EAAS7B,eAAA;MACTlG,OAAA,EAAS,SAATA,OAAAA,GAAA;QAAA,OAAemG,WAAA,EAAY;AAAA,MAAA,CAAA;AAC3BrG,MAAAA,MAAA,EAAQsG,UAAA;AACRhG,MAAAA,QAAA,EAAAA,QAAA;AACAzD,MAAAA,QAAA,EAAAA,QAAA;MACAwD,aAAaA,WAAA,IAAe,aAAA;MAC5Bc,SAAA,EAAW+G,UAAA,CAAA,EAAA,CAAAtE,MAAA,CAAchE,WAAW,EAAA,iBAAA,CAAA,EAAmBmB,gBAAgB,CAAA;AACvEK,MAAAA,KAAA,EAAOJ,UAAA;AACPJ,MAAAA,EAAA,EAAAA,EAAA;AACAC,MAAAA,IAAA,EAAAA,IAAA;MACA,cAAYC,SAAA,IAAa;KAC3B,CAAA,EACClE,SAAA,mBACC4K,KAAA,CAAAC,aAAA,CAAAD,KAAA,CAAAG,QAAA,EAAA,IAAA,iBACEH,KAAA,CAAAC,aAAA,CAAC,MAAA,EAAA;MAAKtG,qBAAcvB,WAAW,EAAA,sBAAA;KAAA,EAAwB,GAAC,CAAA,iBACxD4H,KAAA,CAAAC,aAAA,CAAC,OAAA,EAAA;AACClI,MAAAA,GAAA,EAAKmD,OAAA;AACLmF,MAAAA,IAAA,EAAK,MAAA;AACLC,MAAAA,SAAA,EAAU,SAAA;AACVC,MAAAA,OAAA,EAAQ,QAAA;AACR9B,MAAAA,SAAA,EAAW,CAAA;AACXxE,MAAAA,KAAA,EAAOS,QAAA;AACPpC,MAAAA,QAAA,EAAUgG,gBAAA;MACV5F,OAAA,EAAS,SAATA,OAAAA,GAAA;QAAA,OAAemG,WAAA,EAAY;AAAA,MAAA,CAAA;AAC3BrG,MAAAA,MAAA,EAAQsG,UAAA;AACRhG,MAAAA,QAAA,EAAAA,QAAA;AACAzD,MAAAA,QAAA,EAAAA,QAAA;AACAwD,MAAAA,WAAA,EAAY,IAAA;MACZc,SAAA,EAAW+G,UAAA,CAAA,EAAA,CAAAtE,MAAA,CAAchE,WAAW,EAAA,iBAAA,CAAA,EAAmBmB,gBAAgB,CAAA;AACvEK,MAAAA,KAAA,EAAOJ,UAAA;AACP,MAAA,YAAA,EAAYF,SAAA,GAAA,EAAA,CAAA8C,MAAA,CAAe9C,SAAS,EAAA,eAAA,CAAA,GAAQ;KAC9C,CACF,CAEJ,CAAA;EAEJ,CAAA;AAEA,EAAA,sBACE0G,KAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AACCtG,IAAAA,SAAA,EAAW+G,UAAA,CAAA,EAAA,CAAAtE,MAAA,CAAchE,WAAW,EAAA,WAAA,CAAA,EAAauB,SAAA,EAAAgH,eAAA,CAAAA,eAAA,CAAAA,eAAA,CAAA,EAAA,EAAA,EAAA,CAAAvE,MAAA,CAC3ChE,WAAW,EAAA,cAAA,CAAA,EAAiBU,QAAA,CAAA,EAAA,EAAA,CAAAsD,MAAA,CAC5BhE,WAAW,EAAA,cAAA,CAAA,EAAiB/C,QAAA,CAAA,EAAA,EAAA,CAAA+G,MAAA,CAC5BhE,WAAW,EAAA,aAAA,CAAA,EAAgBkD,SAAA,CAEhC,CAAA;AACD1B,IAAAA,KAAA,EAAAA,KAAA;IACAiH,YAAA,EAAc,SAAdA,YAAAA,GAAA;MAAA,OAAoBlF,UAAA,CAAW,IAAI,CAAA;AAAA,IAAA,CAAA;IACnCmF,YAAA,EAAc,SAAdA,YAAAA,GAAA;MAAA,OAAoBnF,UAAA,CAAW,KAAK,CAAA;AAAA,IAAA;AAAA,GAAA,iBAEpCqE,KAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;IAAItG,SAAA,EAAA,EAAA,CAAAyC,MAAA,CAAchE,WAAW,EAAA,oBAAA;AAAA,GAAA,EAC3B4D,UAAA,GAAa4E,eAAA,EAAgB,GAAIb,eAAA,EAAgB,EACjDF,eAAA,mBACCG,KAAA,CAAAC,aAAA,CAACc,SAAA,EAAA;IACCpH,SAAA,EAAA,EAAA,CAAAyC,MAAA,CAAchE,WAAW,uBAAAgE,MAAA,CAAoBhE,WAAW,EAAA,OAAA,CAAA;AACxD4I,IAAAA,OAAA,EAAShC,WAAA;AACTiC,IAAAA,WAAA,EAAa,SAAbA,WAAAA,CAAc5D,CAAA,EAAA;AAAA,MAAA,OAAMA,CAAA,CAAE4B,eAAA,EAAgB;AAAA,IAAA;GACxC,CAEJ,CAAA,EACCvF,uBAAQsG,KAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;IAAItG,qBAAcvB,WAAW,EAAA,iBAAA;KAAoBsB,IAAK,CAClE,CAAA;AAEJ,CAAC;AAED9B,OAAA,CAAQsJ,WAAA,GAAc,SAAA;;;;"}
1
+ {"version":3,"file":"dep-D68MD94M.js","sources":["../../../components/ip-input/defaultProps.ts","../../../components/ip-input/utils.ts","../../../components/ip-input/IPInput.tsx"],"sourcesContent":["import { TdIPInputProps } from \"./type\";\n\nexport const ipInputDefaultProps: Partial<TdIPInputProps> = {\n allowIPv6: false,\n allowCIDR: false,\n readOnly: false,\n showClear: false,\n autoFocus: false,\n showSegmentSeparators: true,\n defaultValue: \"\"\n};\n","/**\n * IP 地址验证和解析工具函数\n */\n\n/**\n * 验证 IPv4 地址段(0-255)\n */\nexport function isValidIPv4Segment(segment: string, allowLeadingZeros: boolean = false): boolean {\n if (!segment || segment.trim() === \"\") return false;\n\n // 不允许前导零\n if (!allowLeadingZeros && segment.length > 1 && segment[0] === \"0\") {\n return false;\n }\n\n const num = parseInt(segment, 10);\n return !isNaN(num) && num >= 0 && num <= 255 && num.toString() === segment;\n}\n\n/**\n * 验证 IPv4 地址\n */\nexport function isValidIPv4(ip: string, allowLeadingZeros: boolean = false): boolean {\n if (!ip || typeof ip !== \"string\") return false;\n\n const segments = ip.split(\".\");\n if (segments.length !== 4) return false;\n\n return segments.every((seg) => isValidIPv4Segment(seg, allowLeadingZeros));\n}\n\n/**\n * 验证 CIDR 掩码(IPv4: 0-32, IPv6: 0-128)\n */\nexport function isValidCIDRMask(mask: string, isIPv6: boolean = false): boolean {\n if (!mask || typeof mask !== \"string\") return false;\n\n const num = parseInt(mask, 10);\n if (isNaN(num)) return false;\n\n const max = isIPv6 ? 128 : 32;\n return num >= 0 && num <= max;\n}\n\n/**\n * 验证 IPv6 地址(简化版,使用正则)\n * 支持压缩表示法 :: 和混合 IPv4/IPv6\n */\nexport function isValidIPv6(ip: string): boolean {\n if (!ip || typeof ip !== \"string\") return false;\n\n // 简化的 IPv6 验证正则\n // 支持:\n // - 标准格式:2001:0db8:85a3:0000:0000:8a2e:0370:7334\n // - 压缩格式:2001:db8::1\n // - 混合格式:::ffff:192.168.0.1\n const ipv6Regex =\n /^(([0-9a-fA-F]{1,4}:){7}[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,7}:|([0-9a-fA-F]{1,4}:){1,6}:[0-9a-fA-F]{1,4}|([0-9a-fA-F]{1,4}:){1,5}(:[0-9a-fA-F]{1,4}){1,2}|([0-9a-fA-F]{1,4}:){1,4}(:[0-9a-fA-F]{1,4}){1,3}|([0-9a-fA-F]{1,4}:){1,3}(:[0-9a-fA-F]{1,4}){1,4}|([0-9a-fA-F]{1,4}:){1,2}(:[0-9a-fA-F]{1,4}){1,5}|[0-9a-fA-F]{1,4}:((:[0-9a-fA-F]{1,4}){1,6})|:((:[0-9a-fA-F]{1,4}){1,7}|:)|fe80:(:[0-9a-fA-F]{0,4}){0,4}%[0-9a-zA-Z]+|::(ffff(:0{1,4}){0,1}:){0,1}((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])|([0-9a-fA-F]{1,4}:){1,4}:((25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9])\\.){3}(25[0-5]|(2[0-4]|1{0,1}[0-9]){0,1}[0-9]))$/;\n\n return ipv6Regex.test(ip);\n}\n\n/**\n * 从文本中提取 IP 地址\n */\nexport function extractIPFromText(text: string): { ip: string; cidr?: string } | null {\n if (!text || typeof text !== \"string\") return null;\n\n // 尝试提取 IPv4\n const ipv4Regex = /(\\d{1,3}\\.\\d{1,3}\\.\\d{1,3}\\.\\d{1,3})(?:\\/(\\d{1,2}))?/;\n const ipv4Match = text.match(ipv4Regex);\n if (ipv4Match) {\n const ip = ipv4Match[1];\n const cidr = ipv4Match[2];\n if (isValidIPv4(ip, true)) {\n return { ip, cidr };\n }\n }\n\n // 尝试提取 IPv6\n const ipv6Regex = /([0-9a-fA-F:]+(?::[0-9a-fA-F:]+)*|::)(?:\\/(\\d{1,3}))?/;\n const ipv6Match = text.match(ipv6Regex);\n if (ipv6Match) {\n const ip = ipv6Match[1];\n const cidr = ipv6Match[2];\n if (isValidIPv6(ip)) {\n return { ip, cidr };\n }\n }\n\n return null;\n}\n\n/**\n * 解析 IP 地址为段数组(IPv4)\n */\nexport function parseIPv4ToSegments(ip: string): string[] {\n if (!ip) return [\"\", \"\", \"\", \"\"];\n const segments = ip.split(\".\");\n return [segments[0] || \"\", segments[1] || \"\", segments[2] || \"\", segments[3] || \"\"];\n}\n\n/**\n * 将段数组组合为 IP 地址(IPv4)\n */\nexport function segmentsToIPv4(segments: string[]): string {\n // 如果所有段都为空,返回空字符串\n if (segments.every((seg) => !seg || seg.trim() === \"\")) {\n return \"\";\n }\n return segments.join(\".\");\n}\n","import React, {\n useState,\n useRef,\n useEffect,\n useImperativeHandle,\n forwardRef,\n useCallback,\n KeyboardEvent,\n ClipboardEvent,\n ChangeEvent\n} from \"react\";\nimport classNames from \"classnames\";\nimport { IconClose } from \"@tendaui/icons\";\nimport { IPInputProps, IPInputRef } from \"./type\";\nimport useDefaultProps from \"../hooks/useDefaultProps\";\nimport useControlled from \"../hooks/useControlled\";\nimport useConfig from \"../hooks/useConfig\";\nimport { ipInputDefaultProps } from \"./defaultProps\";\nimport { extractIPFromText, parseIPv4ToSegments, segmentsToIPv4 } from \"./utils\";\nimport \"./style/index.js\";\n\nconst IPInput = forwardRef<IPInputRef, IPInputProps>((originalProps, ref) => {\n const props = useDefaultProps<IPInputProps>(originalProps, ipInputDefaultProps as Partial<IPInputProps>);\n const { classPrefix } = useConfig();\n\n const {\n onChange: onChangeProp,\n onBlur: onBlurProp,\n onFocus: onFocusProp,\n allowIPv6 = false,\n allowCIDR = false,\n placeholder,\n disabled,\n readOnly = false,\n showClear = false,\n autoFocus = false,\n showSegmentSeparators = true,\n formatter,\n id,\n name,\n ariaLabel,\n segmentClassName,\n inputStyle,\n separator,\n tips,\n className,\n style\n } = props;\n\n // 受控/非受控值管理\n const [value, onChange] = useControlled(props, \"value\", onChangeProp);\n\n // IPv4 模式:四个输入框的状态\n const [segments, setSegments] = useState<string[]>(() => {\n if (value) {\n const parsed = parseIPv4ToSegments(value.split(\"/\")[0]);\n return parsed;\n }\n return [\"\", \"\", \"\", \"\"];\n });\n\n // CIDR 掩码状态\n const [cidrMask, setCidrMask] = useState<string>(() => {\n if (value && value.includes(\"/\")) {\n return value.split(\"/\")[1] || \"\";\n }\n return \"\";\n });\n\n // IPv6 模式:单输入框状态\n const [ipv6Value, setIpv6Value] = useState<string>(() => {\n if (value && allowIPv6 && value.includes(\":\")) {\n return value.split(\"/\")[0];\n }\n return \"\";\n });\n\n // 输入框引用\n const segmentRefs = useRef<(HTMLInputElement | null)[]>([]);\n const cidrRef = useRef<HTMLInputElement | null>(null);\n const ipv6Ref = useRef<HTMLInputElement | null>(null);\n\n // UI 状态\n const [isFocused, setIsFocused] = useState(false);\n const [isHover, setIsHover] = useState(false);\n const [focusedSegmentIndex, setFocusedSegmentIndex] = useState<number>(-1);\n\n // 判断当前是否为 IPv6 模式\n const isIPv6Mode = allowIPv6 && (ipv6Value || (value && value.includes(\":\")));\n\n // 同步外部 value 到内部状态\n useEffect(() => {\n if (value !== undefined) {\n if (isIPv6Mode) {\n const ip = value.split(\"/\")[0];\n setIpv6Value(ip);\n if (value.includes(\"/\")) {\n setCidrMask(value.split(\"/\")[1] || \"\");\n } else {\n setCidrMask(\"\");\n }\n } else {\n const parsed = parseIPv4ToSegments(value.split(\"/\")[0]);\n setSegments(parsed);\n if (value.includes(\"/\")) {\n setCidrMask(value.split(\"/\")[1] || \"\");\n } else {\n setCidrMask(\"\");\n }\n }\n }\n }, [value, isIPv6Mode]);\n\n // 获取当前完整值\n const getCurrentValue = useCallback((): string => {\n if (isIPv6Mode) {\n if (cidrMask) {\n return `${ipv6Value}/${cidrMask}`;\n }\n return ipv6Value;\n } else {\n const ip = segmentsToIPv4(segments);\n\n if (cidrMask) {\n return `${ip}/${cidrMask}`;\n }\n return ip;\n }\n }, [isIPv6Mode, ipv6Value, segments, cidrMask]);\n\n // 触发 onChange\n const triggerChange = useCallback(\n (newValue: string) => {\n // 应用格式化函数(如果有)\n const formattedValue = formatter ? formatter(newValue) : newValue;\n onChange?.(formattedValue);\n },\n [formatter, onChange]\n );\n\n // IPv4 段输入处理\n const handleSegmentChange = useCallback(\n (index: number, newValue: string) => {\n // 只允许数字\n const numericValue = newValue.replace(/[^\\d]/g, \"\");\n\n // 限制长度\n let finalValue = numericValue;\n if (numericValue.length > 3) {\n finalValue = numericValue.slice(0, 3);\n }\n\n // 更新段\n const newSegments = [...segments];\n newSegments[index] = finalValue;\n setSegments(newSegments);\n\n // 自动跳转到下一段\n if (finalValue.length === 3 && index < 3) {\n segmentRefs.current[index + 1]?.focus();\n }\n\n // 组合完整 IP\n const ip = segmentsToIPv4(newSegments);\n const fullValue = cidrMask ? `${ip}/${cidrMask}` : ip;\n triggerChange(fullValue);\n },\n [segments, cidrMask, triggerChange]\n );\n\n // IPv4 段键盘事件\n const handleSegmentKeyDown = useCallback((index: number, e: KeyboardEvent<HTMLInputElement>) => {\n const input = e.currentTarget;\n const value = input.value;\n const cursorPos = input.selectionStart || 0;\n\n // 右箭头:移动到下一段或末尾\n if (e.key === \"ArrowRight\") {\n if (cursorPos === value.length && index < 3) {\n e.preventDefault();\n segmentRefs.current[index + 1]?.focus();\n }\n }\n\n // 左箭头:移动到上一段或开头\n if (e.key === \"ArrowLeft\") {\n if (cursorPos === 0 && index > 0) {\n e.preventDefault();\n segmentRefs.current[index - 1]?.focus();\n }\n }\n\n // Backspace:在开头时跳转到上一段\n if (e.key === \"Backspace\") {\n if (cursorPos === 0 && value === \"\" && index > 0) {\n e.preventDefault();\n const prevInput = segmentRefs.current[index - 1];\n if (prevInput) {\n prevInput.focus();\n prevInput.setSelectionRange(prevInput.value.length, prevInput.value.length);\n }\n }\n }\n\n // 点号或空格:跳转到下一段\n if ((e.key === \".\" || e.key === \" \") && index < 3) {\n e.preventDefault();\n segmentRefs.current[index + 1]?.focus();\n }\n\n // Delete:删除当前字符\n if (e.key === \"Delete\" && cursorPos === value.length && index < 3) {\n // 可以在这里添加特殊处理\n }\n }, []);\n\n // IPv4 段粘贴处理\n const handleSegmentPaste = useCallback(\n (e: ClipboardEvent<HTMLInputElement>) => {\n e.preventDefault();\n const pasteText = e.clipboardData.getData(\"text/plain\");\n const extracted = extractIPFromText(pasteText);\n\n if (extracted) {\n if (extracted.ip.includes(\":\")) {\n // IPv6\n if (allowIPv6) {\n setIpv6Value(extracted.ip);\n if (extracted.cidr) {\n setCidrMask(extracted.cidr);\n }\n const fullValue = extracted.cidr ? `${extracted.ip}/${extracted.cidr}` : extracted.ip;\n triggerChange(fullValue);\n }\n } else {\n // IPv4\n const parsed = parseIPv4ToSegments(extracted.ip);\n setSegments(parsed);\n if (extracted.cidr && allowCIDR) {\n setCidrMask(extracted.cidr);\n }\n const fullValue = extracted.cidr && allowCIDR ? `${extracted.ip}/${extracted.cidr}` : extracted.ip;\n triggerChange(fullValue);\n }\n }\n },\n [allowIPv6, allowCIDR, triggerChange]\n );\n\n // CIDR 掩码输入处理\n const handleCIDRChange = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const newMask = e.target.value.replace(/[^\\d]/g, \"\");\n const maxLength = isIPv6Mode ? 3 : 2;\n const finalMask = newMask.slice(0, maxLength);\n\n setCidrMask(finalMask);\n\n const ip = isIPv6Mode ? ipv6Value : segmentsToIPv4(segments);\n const fullValue = finalMask ? `${ip}/${finalMask}` : ip;\n triggerChange(fullValue);\n },\n [isIPv6Mode, ipv6Value, segments, triggerChange]\n );\n\n // IPv6 输入处理\n const handleIPv6Change = useCallback(\n (e: ChangeEvent<HTMLInputElement>) => {\n const newValue = e.target.value;\n setIpv6Value(newValue);\n\n const fullValue = cidrMask ? `${newValue}/${cidrMask}` : newValue;\n triggerChange(fullValue);\n },\n [cidrMask, triggerChange]\n );\n\n // IPv6 粘贴处理\n const handleIPv6Paste = useCallback(\n (e: ClipboardEvent<HTMLInputElement>) => {\n e.preventDefault();\n const pasteText = e.clipboardData.getData(\"text/plain\");\n const extracted = extractIPFromText(pasteText);\n\n if (extracted) {\n setIpv6Value(extracted.ip);\n if (extracted.cidr && allowCIDR) {\n setCidrMask(extracted.cidr);\n }\n const fullValue = extracted.cidr && allowCIDR ? `${extracted.ip}/${extracted.cidr}` : extracted.ip;\n triggerChange(fullValue);\n }\n },\n [allowCIDR, triggerChange]\n );\n\n // 焦点处理\n const handleFocus = useCallback(\n (index?: number) => {\n setIsFocused(true);\n if (index !== undefined) {\n setFocusedSegmentIndex(index);\n }\n onFocusProp?.();\n },\n [onFocusProp]\n );\n\n // 失焦处理\n const handleBlur = useCallback(() => {\n setIsFocused(false);\n setFocusedSegmentIndex(-1);\n\n const currentValue = getCurrentValue();\n onBlurProp?.(currentValue);\n }, [getCurrentValue, onBlurProp]);\n\n // 清空处理\n const handleClear = useCallback(\n (e: React.MouseEvent) => {\n e.stopPropagation();\n if (disabled || readOnly) return;\n\n setSegments([\"\", \"\", \"\", \"\"]);\n setIpv6Value(\"\");\n setCidrMask(\"\");\n onChange?.(\"\");\n },\n [disabled, readOnly, onChange]\n );\n\n // 暴露给父组件的方法\n useImperativeHandle(ref, () => ({\n focus: () => {\n if (isIPv6Mode) {\n ipv6Ref.current?.focus();\n } else {\n segmentRefs.current[0]?.focus();\n }\n },\n blur: () => {\n if (isIPv6Mode) {\n ipv6Ref.current?.blur();\n } else {\n segmentRefs.current.forEach((ref) => ref?.blur());\n }\n cidrRef.current?.blur();\n },\n clear: () => {\n setSegments([\"\", \"\", \"\", \"\"]);\n setIpv6Value(\"\");\n setCidrMask(\"\");\n onChange?.(\"\");\n },\n getValue: () => getCurrentValue()\n }));\n\n // 自动聚焦\n useEffect(() => {\n if (autoFocus && !disabled && !readOnly) {\n if (isIPv6Mode) {\n ipv6Ref.current?.focus();\n } else {\n segmentRefs.current[0]?.focus();\n }\n }\n }, [autoFocus, disabled, readOnly, isIPv6Mode]);\n\n const showClearButton = showClear && isHover && getCurrentValue() && !disabled && !readOnly;\n\n // 分隔符\n const displaySeparator = separator || (isIPv6Mode ? \":\" : \".\");\n\n // 渲染 IPv4 模式\n const renderIPv4Input = () => {\n return (\n <div className={`${classPrefix}-ip-input__segments`}>\n {segments.map((segment, index) => {\n return (\n <React.Fragment key={index}>\n <input\n ref={(el) => {\n segmentRefs.current[index] = el;\n }}\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={3}\n value={segment}\n onChange={(e) => handleSegmentChange(index, e.target.value)}\n onKeyDown={(e) => handleSegmentKeyDown(index, e)}\n onPaste={handleSegmentPaste}\n onFocus={() => handleFocus(index)}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder ? placeholder.split(\".\")[index] : undefined}\n className={classNames(`${classPrefix}-ip-input__segment`, segmentClassName, {\n [`${classPrefix}-ip-input__segment--focused`]: focusedSegmentIndex === index\n })}\n style={inputStyle}\n id={index === 0 ? id : undefined}\n name={index === 0 ? name : undefined}\n aria-label={ariaLabel ? `${ariaLabel} 第 ${index + 1} 段` : `IP 地址第 ${index + 1} 段`}\n />\n {index < 3 && showSegmentSeparators && (\n <span className={`${classPrefix}-ip-input__separator`}>{displaySeparator}</span>\n )}\n </React.Fragment>\n );\n })}\n {allowCIDR && (\n <>\n <span className={`${classPrefix}-ip-input__separator`}>/</span>\n <input\n ref={cidrRef}\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={2}\n value={cidrMask}\n onChange={handleCIDRChange}\n onFocus={() => handleFocus()}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder=\"24\"\n className={classNames(`${classPrefix}-ip-input__cidr`, segmentClassName, {\n [`${classPrefix}-ip-input__cidr--error`]: cidrMask && !/^(0|[1-9]\\d?|3[0-2])$/.test(cidrMask)\n })}\n style={inputStyle}\n aria-label={ariaLabel ? `${ariaLabel} 掩码` : \"CIDR 掩码\"}\n />\n </>\n )}\n </div>\n );\n };\n\n // 渲染 IPv6 模式\n const renderIPv6Input = () => {\n return (\n <div className={`${classPrefix}-ip-input__ipv6-wrapper`}>\n <input\n ref={ipv6Ref}\n type=\"text\"\n value={ipv6Value}\n onChange={handleIPv6Change}\n onPaste={handleIPv6Paste}\n onFocus={() => handleFocus()}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder={placeholder || \"2001:db8::1\"}\n className={classNames(`${classPrefix}-ip-input__ipv6`, segmentClassName)}\n style={inputStyle}\n id={id}\n name={name}\n aria-label={ariaLabel || \"IPv6 地址\"}\n />\n {allowCIDR && (\n <>\n <span className={`${classPrefix}-ip-input__separator`}>/</span>\n <input\n ref={cidrRef}\n type=\"text\"\n inputMode=\"numeric\"\n pattern=\"[0-9]*\"\n maxLength={3}\n value={cidrMask}\n onChange={handleCIDRChange}\n onFocus={() => handleFocus()}\n onBlur={handleBlur}\n disabled={disabled}\n readOnly={readOnly}\n placeholder=\"64\"\n className={classNames(`${classPrefix}-ip-input__cidr`, segmentClassName)}\n style={inputStyle}\n aria-label={ariaLabel ? `${ariaLabel} 掩码` : \"CIDR 掩码\"}\n />\n </>\n )}\n </div>\n );\n };\n\n return (\n <div\n className={classNames(`${classPrefix}-ip-input`, className, {\n [`${classPrefix}-is-disabled`]: disabled,\n [`${classPrefix}-is-readonly`]: readOnly,\n [`${classPrefix}-is-focused`]: isFocused\n // 不在这里添加 is-error,因为每个段有自己的错误状态\n })}\n style={style}\n onMouseEnter={() => setIsHover(true)}\n onMouseLeave={() => setIsHover(false)}\n >\n <div className={`${classPrefix}-ip-input__wrapper`}>\n {isIPv6Mode ? renderIPv6Input() : renderIPv4Input()}\n {showClearButton && (\n <IconClose\n className={`${classPrefix}-ip-input__clear ${classPrefix}-icon`}\n onClick={handleClear}\n onMouseDown={(e) => e.stopPropagation()}\n />\n )}\n </div>\n {tips && <div className={`${classPrefix}-ip-input__tips`}>{tips}</div>}\n </div>\n );\n});\n\nIPInput.displayName = \"IPInput\";\n\nexport default IPInput;\n"],"names":["ipInputDefaultProps","allowIPv6","allowCIDR","readOnly","showClear","autoFocus","showSegmentSeparators","defaultValue","isValidIPv4Segment","segment","allowLeadingZeros","arguments","length","undefined","trim","num","parseInt","isNaN","toString","isValidIPv4","ip","segments","split","every","seg","isValidCIDRMask","mask","isIPv6","max","isValidIPv6","ipv6Regex","test","extractIPFromText","text","ipv4Regex","ipv4Match","match","cidr","ipv6Match","parseIPv4ToSegments","segmentsToIPv4","join","IPInput","forwardRef","originalProps","ref","props","useDefaultProps","_useConfig","useConfig","classPrefix","onChangeProp","onChange","onBlurProp","onBlur","onFocusProp","onFocus","_props$allowIPv","_props$allowCIDR","placeholder","disabled","_props$readOnly","_props$showClear","_props$autoFocus","_props$showSegmentSep","formatter","id","name","ariaLabel","segmentClassName","inputStyle","separator","tips","className","style","_useControlled","useControlled","_useControlled2","_slicedToArray","value","_useState","useState","parsed","_useState2","setSegments","_useState3","includes","_useState4","cidrMask","setCidrMask","_useState5","_useState6","ipv6Value","setIpv6Value","segmentRefs","useRef","cidrRef","ipv6Ref","_useState7","_useState8","isFocused","setIsFocused","_useState9","_useState0","isHover","setIsHover","_useState1","_useState10","focusedSegmentIndex","setFocusedSegmentIndex","isIPv6Mode","useEffect","getCurrentValue","useCallback","concat","triggerChange","newValue","formattedValue","handleSegmentChange","index","numericValue","replace","finalValue","slice","newSegments","_toConsumableArray","_segmentRefs$current","current","focus","fullValue","handleSegmentKeyDown","e","input","currentTarget","cursorPos","selectionStart","key","_segmentRefs$current2","preventDefault","_segmentRefs$current3","prevInput","setSelectionRange","_segmentRefs$current4","handleSegmentPaste","pasteText","clipboardData","getData","extracted","handleCIDRChange","newMask","target","maxLength","finalMask","handleIPv6Change","handleIPv6Paste","handleFocus","handleBlur","currentValue","handleClear","stopPropagation","useImperativeHandle","_ipv6Ref$current","_segmentRefs$current$","blur","_cidrRef$current","_ipv6Ref$current2","forEach","clear","getValue","_ipv6Ref$current3","_segmentRefs$current$2","showClearButton","displaySeparator","renderIPv4Input","React","createElement","map","Fragment","el","type","inputMode","pattern","onKeyDown","onPaste","classNames","_defineProperty","renderIPv6Input","onMouseEnter","onMouseLeave","IconClose","onClick","onMouseDown","displayName"],"mappings":"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"}
@@ -71,7 +71,7 @@ import '../../config-provider/ConfigProvider.js';
71
71
  import '../../layout/index.js';
72
72
  import '../../layout/Layout.js';
73
73
  import '../../layout/Aside.js';
74
- import './css.js';
74
+ import '../../layout/style/css.js';
75
75
  import '../../tag/index.js';
76
76
  import '../../tag/Tag.js';
77
77
  import '../../_chunks/dep-zOZQ0R9g.js';
@@ -130,7 +130,8 @@ import '../../_chunks/dep-BuIAffJt.js';
130
130
  import '../../form/FormList.js';
131
131
  import '../../form/style/css.js';
132
132
  import '../../ip-input/index.js';
133
- import '../../_chunks/dep-COy5g3FT.js';
133
+ import '../../_chunks/dep-D68MD94M.js';
134
+ import '../../ip-input/style/css.js';
134
135
  import '../../fireworks/index.js';
135
136
  import '../../fireworks/Fireworks.js';
136
137
  import '../../fireworks/style/css.js';
@@ -155,6 +156,7 @@ import '../../color-picker/components/panel/saturation.js';
155
156
  import '../../color-picker/components/panel/swatches.js';
156
157
  import '../../color-picker/ColorPicker.js';
157
158
  import '../../color-picker/components/trigger.js';
159
+ import './css.js';
158
160
 
159
161
  function Base() {
160
162
  return /* @__PURE__ */React.createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sources":["../../../../components/button/_example/base.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"../../../components\";\n\nexport default function Base() {\n return (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <Button theme=\"primary\">Primary</Button>\n </div>\n );\n}\n"],"names":["Base","React","createElement","style","display","gap","Button","theme"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,SAAwBA,IAAAA,GAAO;AAC7B,EAAA,sBACEC,KAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,SAAS,MAAA;AAAQC,MAAAA,GAAA,EAAK;AAAM;AAAA,GAAA,iBACxCJ,KAAA,CAAAC,aAAA,CAACI,MAAA,EAAA;AAAOC,IAAAA,KAAA,EAAM;GAAA,EAAU,SAAO,CACjC,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"base.js","sources":["../../../../components/button/_example/base.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"../../../components\";\n\nexport default function Base() {\n return (\n <div style={{ display: \"flex\", gap: \"8px\" }}>\n <Button theme=\"primary\">Primary</Button>\n </div>\n );\n}\n"],"names":["Base","React","createElement","style","display","gap","Button","theme"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,SAAwBA,IAAAA,GAAO;AAC7B,EAAA,sBACEC,KAAA,CAAAC,aAAA,CAAC,KAAA,EAAA;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,SAAS,MAAA;AAAQC,MAAAA,GAAA,EAAK;AAAM;AAAA,GAAA,iBACxCJ,KAAA,CAAAC,aAAA,CAACI,MAAA,EAAA;AAAOC,IAAAA,KAAA,EAAM;GAAA,EAAU,SAAO,CACjC,CAAA;AAEJ;;;;"}
@@ -71,7 +71,7 @@ import '../../config-provider/ConfigProvider.js';
71
71
  import '../../layout/index.js';
72
72
  import '../../layout/Layout.js';
73
73
  import '../../layout/Aside.js';
74
- import './css.js';
74
+ import '../../layout/style/css.js';
75
75
  import '../../tag/index.js';
76
76
  import '../../tag/Tag.js';
77
77
  import '../../_chunks/dep-zOZQ0R9g.js';
@@ -130,7 +130,8 @@ import '../../_chunks/dep-BuIAffJt.js';
130
130
  import '../../form/FormList.js';
131
131
  import '../../form/style/css.js';
132
132
  import '../../ip-input/index.js';
133
- import '../../_chunks/dep-COy5g3FT.js';
133
+ import '../../_chunks/dep-D68MD94M.js';
134
+ import '../../ip-input/style/css.js';
134
135
  import '../../fireworks/index.js';
135
136
  import '../../fireworks/Fireworks.js';
136
137
  import '../../fireworks/style/css.js';
@@ -155,6 +156,7 @@ import '../../color-picker/components/panel/saturation.js';
155
156
  import '../../color-picker/components/panel/swatches.js';
156
157
  import '../../color-picker/ColorPicker.js';
157
158
  import '../../color-picker/components/trigger.js';
159
+ import './css.js';
158
160
 
159
161
  function Icon() {
160
162
  return /* @__PURE__ */React.createElement("div", {
@@ -1 +1 @@
1
- {"version":3,"file":"icon.js","sources":["../../../../components/button/_example/icon.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"../../../components\";\nimport { IconArrowLeft, IconDelete, IconAlertTriangle, IconCheckCircleStroked } from \"@tendaui/icons\";\n\nexport default function Icon() {\n return (\n <div style={{ display: \"flex\", gap: \"8px\", alignItems: \"center\" }}>\n <Button icon={<IconArrowLeft />}>默认按钮</Button>\n <Button icon={<IconAlertTriangle />} theme=\"warning\">\n 警告按钮\n </Button>\n <Button icon={<IconDelete />} theme=\"danger\">\n 危险按钮\n </Button>\n <Button theme=\"success\" icon={<IconCheckCircleStroked />}>\n 成功按钮\n </Button>\n </div>\n );\n}\n"],"names":["Icon","React","createElement","style","display","gap","alignItems","Button","icon","IconArrowLeft","IconAlertTriangle","theme","IconDelete","IconCheckCircleStroked"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAAwBA,IAAAA,GAAO;AAC7B,EAAA,sBACEC,KAAA,CAAAC,aAAA,CAAC;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,SAAS,MAAA;AAAQC,MAAAA,GAAA,EAAK,KAAA;AAAOC,MAAAA,UAAA,EAAY;AAAS;AAAA,GAAA,qCAC7DC,MAAA,EAAA;IAAOC,IAAA,qCAAOC,aAAA,EAAA,IAAc;GAAA,EAAI,0BAAI,CAAA,iBACrCR,KAAA,CAAAC,aAAA,CAACK,MAAA,EAAA;IAAOC,IAAA,iBAAMP,KAAA,CAAAC,aAAA,CAACQ,iBAAA,EAAA,IAAkB;AAAIC,IAAAA,KAAA,EAAM;GAAA,EAAU,0BAErD,CAAA,iBACAV,KAAA,CAAAC,aAAA,CAACK;IAAOC,IAAA,iBAAMP,KAAA,CAAAC,aAAA,CAACU,UAAA,EAAA,IAAW,CAAA;AAAID,IAAAA,KAAA,EAAM;GAAA,EAAS,0BAE7C,CAAA,iBACAV,KAAA,CAAAC,aAAA,CAACK;AAAOI,IAAAA,KAAA,EAAM,SAAA;IAAUH,qBAAMP,KAAA,CAAAC,aAAA,CAACW,sBAAA,EAAA,IAAuB;GAAA,EAAI,0BAE1D,CACF,CAAA;AAEJ;;;;"}
1
+ {"version":3,"file":"icon.js","sources":["../../../../components/button/_example/icon.tsx"],"sourcesContent":["import React from \"react\";\nimport { Button } from \"../../../components\";\nimport { IconArrowLeft, IconDelete, IconAlertTriangle, IconCheckCircleStroked } from \"@tendaui/icons\";\n\nexport default function Icon() {\n return (\n <div style={{ display: \"flex\", gap: \"8px\", alignItems: \"center\" }}>\n <Button icon={<IconArrowLeft />}>默认按钮</Button>\n <Button icon={<IconAlertTriangle />} theme=\"warning\">\n 警告按钮\n </Button>\n <Button icon={<IconDelete />} theme=\"danger\">\n 危险按钮\n </Button>\n <Button theme=\"success\" icon={<IconCheckCircleStroked />}>\n 成功按钮\n </Button>\n </div>\n );\n}\n"],"names":["Icon","React","createElement","style","display","gap","alignItems","Button","icon","IconArrowLeft","IconAlertTriangle","theme","IconDelete","IconCheckCircleStroked"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAIA,SAAwBA,IAAAA,GAAO;AAC7B,EAAA,sBACEC,KAAA,CAAAC,aAAA,CAAC;AAAIC,IAAAA,KAAA,EAAO;AAAEC,MAAAA,SAAS,MAAA;AAAQC,MAAAA,GAAA,EAAK,KAAA;AAAOC,MAAAA,UAAA,EAAY;AAAS;AAAA,GAAA,qCAC7DC,MAAA,EAAA;IAAOC,IAAA,qCAAOC,aAAA,EAAA,IAAc;GAAA,EAAI,0BAAI,CAAA,iBACrCR,KAAA,CAAAC,aAAA,CAACK,MAAA,EAAA;IAAOC,IAAA,iBAAMP,KAAA,CAAAC,aAAA,CAACQ,iBAAA,EAAA,IAAkB;AAAIC,IAAAA,KAAA,EAAM;GAAA,EAAU,0BAErD,CAAA,iBACAV,KAAA,CAAAC,aAAA,CAACK;IAAOC,IAAA,iBAAMP,KAAA,CAAAC,aAAA,CAACU,UAAA,EAAA,IAAW,CAAA;AAAID,IAAAA,KAAA,EAAM;GAAA,EAAS,0BAE7C,CAAA,iBACAV,KAAA,CAAAC,aAAA,CAACK;AAAOI,IAAAA,KAAA,EAAM,SAAA;IAAUH,qBAAMP,KAAA,CAAAC,aAAA,CAACW,sBAAA,EAAA,IAAuB;GAAA,EAAI,0BAE1D,CACF,CAAA;AAEJ;;;;"}
package/es/index.js CHANGED
@@ -26,7 +26,7 @@ export { ColorPicker, ColorPickerPanel } from './color-picker/index.js';
26
26
  export { C as ConfigContext } from './_chunks/dep-5U9UjDaf.js';
27
27
  export { default as ConfigProvider, merge } from './config-provider/ConfigProvider.js';
28
28
  export { NotificationProvider, useNotification } from './notification/NotifyContext.js';
29
- export { I as IPInput, e as extractIPFromText, b as isValidCIDRMask, a as isValidIPv4, i as isValidIPv4Segment, c as isValidIPv6, p as parseIPv4ToSegments, s as segmentsToIPv4 } from './_chunks/dep-COy5g3FT.js';
29
+ export { I as IPInput, e as extractIPFromText, b as isValidCIDRMask, a as isValidIPv4, i as isValidIPv4Segment, c as isValidIPv6, p as parseIPv4ToSegments, s as segmentsToIPv4 } from './_chunks/dep-D68MD94M.js';
30
30
  import './loading/Loading.js';
31
31
  import './_chunks/dep-Cwish4GD.js';
32
32
  import './_chunks/dep-D-UKOauR.js';
@@ -85,7 +85,7 @@ import './utils/log/index.js';
85
85
  import './input-number/style/css.js';
86
86
  import './layout/Layout.js';
87
87
  import './layout/Aside.js';
88
- import './css.js';
88
+ import './layout/style/css.js';
89
89
  import './tag/Tag.js';
90
90
  import './_chunks/dep-zOZQ0R9g.js';
91
91
  import './tag/style/css.js';
@@ -151,7 +151,9 @@ import './color-picker/components/panel/saturation.js';
151
151
  import './color-picker/components/panel/swatches.js';
152
152
  import './color-picker/ColorPicker.js';
153
153
  import './color-picker/components/trigger.js';
154
+ import './css.js';
154
155
  import 'dayjs';
155
156
  import './notification/NotifyContainer.js';
156
157
  import './notification/NotifyItem.js';
158
+ import './ip-input/style/css.js';
157
159
  //# sourceMappingURL=index.js.map
package/es/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
1
+ {"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;"}
@@ -7,10 +7,10 @@ import '@tendaui/icons';
7
7
  import '../_chunks/dep-DGvfel3I.js';
8
8
  import '../_chunks/dep-DwWrhxkd.js';
9
9
  import '../_chunks/dep-gy8uvBaS.js';
10
- export { I as default } from '../_chunks/dep-COy5g3FT.js';
10
+ export { I as default } from '../_chunks/dep-D68MD94M.js';
11
11
  import '../_chunks/dep-D-UKOauR.js';
12
12
  import 'lodash-es';
13
13
  import '../_chunks/dep-5U9UjDaf.js';
14
14
  import 'dayjs';
15
- import './css.js';
15
+ import './style/css.js';
16
16
  //# sourceMappingURL=IPInput.js.map
@@ -1,4 +1,4 @@
1
- export { I as IPInput, e as extractIPFromText, b as isValidCIDRMask, a as isValidIPv4, i as isValidIPv4Segment, c as isValidIPv6, p as parseIPv4ToSegments, s as segmentsToIPv4 } from '../_chunks/dep-COy5g3FT.js';
1
+ export { I as IPInput, e as extractIPFromText, b as isValidCIDRMask, a as isValidIPv4, i as isValidIPv4Segment, c as isValidIPv6, p as parseIPv4ToSegments, s as segmentsToIPv4 } from '../_chunks/dep-D68MD94M.js';
2
2
  import '../_chunks/dep-Cwish4GD.js';
3
3
  import '../_chunks/dep-D-UKOauR.js';
4
4
  import '../_chunks/dep-CgyDw_YI.js';
@@ -12,5 +12,5 @@ import 'lodash-es';
12
12
  import '../_chunks/dep-gy8uvBaS.js';
13
13
  import '../_chunks/dep-5U9UjDaf.js';
14
14
  import 'dayjs';
15
- import './css.js';
15
+ import './style/css.js';
16
16
  //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ import "./index.css";
@@ -1,5 +1,5 @@
1
1
  import Layout$1 from './Layout.js';
2
- import './css.js';
2
+ import './style/css.js';
3
3
  import '../_chunks/dep-D-UKOauR.js';
4
4
  import '../_chunks/dep-Cwish4GD.js';
5
5
  import '../_chunks/dep-DN7d1SzH.js';
@@ -0,0 +1 @@
1
+ import "./index.css";
package/package.json CHANGED
@@ -1,59 +1,59 @@
1
- {
2
- "name": "@tendaui/react",
3
- "version": "1.1.3",
4
- "description": "a react ui component library",
5
- "main": "es/index.js",
6
- "module": "es/index.js",
7
- "types": "es/index.d.ts",
8
- "scripts": {
9
- "test": "echo \"Error: no test specified\" && exit 1",
10
- "prebuild": "rimraf es lib",
11
- "build": "pnpm run prebuild && cd ../.. && rollup -c rollup.config.mjs"
12
- },
13
- "peerDependencies": {
14
- "react": ">=16.13.1",
15
- "react-dom": ">=16.13.1"
16
- },
17
- "keywords": [
18
- "react",
19
- "ui",
20
- "component",
21
- "tendaui"
22
- ],
23
- "author": "ajiangz",
24
- "license": "MIT",
25
- "repository": {
26
- "type": "git",
27
- "url": "https://github.com/ajiangpz/react-ui.git",
28
- "directory": "packages/tendaui-react"
29
- },
30
- "homepage": "https://github.com/ajiangpz/react-ui#readme",
31
- "publishConfig": {
32
- "access": "public",
33
- "registry": "https://registry.npmjs.org/"
34
- },
35
- "files": [
36
- "es",
37
- "README.md"
38
- ],
39
- "dependencies": {
40
- "@babel/runtime": "~7.26.7",
41
- "@popperjs/core": "~2.11.2",
42
- "@types/sortablejs": "^1.10.7",
43
- "@types/validator": "^13.1.3",
44
- "classnames": "~2.5.1",
45
- "dayjs": "1.11.10",
46
- "hoist-non-react-statics": "~3.3.2",
47
- "lodash-es": "^4.17.21",
48
- "mitt": "^3.0.0",
49
- "raf": "~3.4.1",
50
- "react-fast-compare": "^3.2.2",
51
- "react-is": "^18.2.0",
52
- "react-transition-group": "~4.4.1",
53
- "sortablejs": "^1.15.0",
54
- "@tendaui/icons": "^1.2.2",
55
- "tslib": "~2.3.1",
56
- "validator": "~13.15.0"
57
- },
58
- "gitHead": "52c9a98c9bf2beb255cd87a24a17914a92b2ac08"
59
- }
1
+ {
2
+ "name": "@tendaui/react",
3
+ "version": "1.1.4",
4
+ "description": "a react ui component library",
5
+ "main": "es/index.js",
6
+ "module": "es/index.js",
7
+ "types": "es/index.d.ts",
8
+ "scripts": {
9
+ "test": "echo \"Error: no test specified\" && exit 1",
10
+ "prebuild": "rimraf es lib",
11
+ "build": "pnpm run prebuild && cd ../.. && rollup -c rollup.config.mjs"
12
+ },
13
+ "peerDependencies": {
14
+ "react": ">=16.13.1",
15
+ "react-dom": ">=16.13.1"
16
+ },
17
+ "keywords": [
18
+ "react",
19
+ "ui",
20
+ "component",
21
+ "tendaui"
22
+ ],
23
+ "author": "ajiangz",
24
+ "license": "MIT",
25
+ "repository": {
26
+ "type": "git",
27
+ "url": "https://github.com/ajiangpz/react-ui.git",
28
+ "directory": "packages/tendaui-react"
29
+ },
30
+ "homepage": "https://github.com/ajiangpz/react-ui#readme",
31
+ "publishConfig": {
32
+ "access": "public",
33
+ "registry": "https://registry.npmjs.org/"
34
+ },
35
+ "files": [
36
+ "es",
37
+ "README.md"
38
+ ],
39
+ "dependencies": {
40
+ "@babel/runtime": "~7.26.7",
41
+ "@popperjs/core": "~2.11.2",
42
+ "@types/sortablejs": "^1.10.7",
43
+ "@types/validator": "^13.1.3",
44
+ "classnames": "~2.5.1",
45
+ "dayjs": "1.11.10",
46
+ "hoist-non-react-statics": "~3.3.2",
47
+ "lodash-es": "^4.17.21",
48
+ "mitt": "^3.0.0",
49
+ "raf": "~3.4.1",
50
+ "react-fast-compare": "^3.2.2",
51
+ "react-is": "^18.2.0",
52
+ "react-transition-group": "~4.4.1",
53
+ "sortablejs": "^1.15.0",
54
+ "@tendaui/icons": "^1.2.2",
55
+ "tslib": "~2.3.1",
56
+ "validator": "~13.15.0"
57
+ },
58
+ "gitHead": "52c9a98c9bf2beb255cd87a24a17914a92b2ac08"
59
+ }
@@ -1,7 +0,0 @@
1
- import React from "react";
2
- import { TdAlertProps } from "./type";
3
- import { StyledProps } from "../common";
4
- export interface AlertProps extends TdAlertProps, StyledProps {
5
- }
6
- declare const Alert: React.ForwardRefExoticComponent<AlertProps & React.RefAttributes<HTMLDivElement>>;
7
- export default Alert;
@@ -1,2 +0,0 @@
1
- import { TdAlertProps } from "./type";
2
- export declare const alertDefaultProps: TdAlertProps;
@@ -1,5 +0,0 @@
1
- import "./style/index.js";
2
- export type { AlertProps } from "./Alert";
3
- export * from "./type";
4
- export declare const Alert: import("react").ForwardRefExoticComponent<import("./Alert").AlertProps & import("react").RefAttributes<HTMLDivElement>>;
5
- export default Alert;
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};
@@ -1,45 +0,0 @@
1
- import { TNode, TElement } from "../common";
2
- import { MouseEvent } from "react";
3
- export interface TdAlertProps {
4
- /**
5
- * 关闭按钮。值为 true 则显示默认关闭按钮;值为 false 则不显示按钮;值类型为 string 则直接显示;值类型为 Function 则可以自定关闭按钮
6
- * @default false
7
- */
8
- closeBtn?: TNode;
9
- /**
10
- * 图标
11
- */
12
- icon?: TElement;
13
- /**
14
- * 内容显示最大行数,超出的内容会折叠收起,用户点击后再展开。值为 0 表示不折叠
15
- * @default 0
16
- */
17
- maxLine?: number;
18
- /**
19
- * 内容(子元素)
20
- */
21
- message?: TNode;
22
- /**
23
- * 跟在告警内容后面的操作区
24
- */
25
- operation?: TElement;
26
- /**
27
- * 组件风格
28
- * @default info
29
- */
30
- theme?: "success" | "info" | "warning" | "error";
31
- /**
32
- * 标题
33
- */
34
- title?: TNode;
35
- /**
36
- * 关闭按钮点击时触发
37
- */
38
- onClose?: (context: {
39
- e: MouseEvent<HTMLDivElement>;
40
- }) => void;
41
- /**
42
- * 告警提示框关闭动画结束后触发
43
- */
44
- onClosed?: () => void;
45
- }
@@ -1,7 +0,0 @@
1
- import React from "react";
2
- import { StyledProps } from "../common";
3
- import { TdBadgeProps } from "./type";
4
- export interface BadgeProps extends TdBadgeProps, StyledProps {
5
- }
6
- declare const Badge: React.ForwardRefExoticComponent<BadgeProps & React.RefAttributes<HTMLSpanElement>>;
7
- export default Badge;
@@ -1,2 +0,0 @@
1
- import { TdBadgeProps } from "./type";
2
- export declare const badgeDefaultProps: TdBadgeProps;
@@ -1,5 +0,0 @@
1
- import "./style/index.js";
2
- export type { BadgeProps } from "./Badge";
3
- export * from "./type";
4
- export declare const Badge: import("react").ForwardRefExoticComponent<import("./Badge").BadgeProps & import("react").RefAttributes<HTMLSpanElement>>;
5
- export default Badge;
@@ -1 +0,0 @@
1
- export {};
@@ -1 +0,0 @@
1
- export {};