@1money/component-ui 0.0.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (1943) hide show
  1. package/.agents/skills/1money-component-dev/SKILL.md +224 -0
  2. package/.agents/skills/1money-component-dev/checklist.md +159 -0
  3. package/.agents/skills/1money-component-dev/references/ComponentPatterns.md +478 -0
  4. package/.agents/skills/1money-component-dev/references/FigmaExtractionChecklist.md +144 -0
  5. package/.agents/skills/1money-component-dev/references/HooksGuide.md +360 -0
  6. package/.agents/skills/1money-component-dev/references/SemanticColors.md +215 -0
  7. package/.agents/skills/1money-component-dev/references/StyleSystemAPI.md +389 -0
  8. package/.claude/settings.local.json +103 -0
  9. package/.claude/skills/1money-component-dev/SKILL.md +229 -0
  10. package/.claude/skills/1money-component-dev/checklist.md +159 -0
  11. package/.claude/skills/1money-component-dev/references/ComponentPatterns.md +478 -0
  12. package/.claude/skills/1money-component-dev/references/FigmaExtractionChecklist.md +144 -0
  13. package/.claude/skills/1money-component-dev/references/HooksGuide.md +360 -0
  14. package/.claude/skills/1money-component-dev/references/SemanticColors.md +215 -0
  15. package/.claude/skills/1money-component-dev/references/StyleSystemAPI.md +389 -0
  16. package/.claude/skills/1money-component-review/SKILL.md +316 -0
  17. package/.claude/skills/component-pipeline/SKILL.md +116 -0
  18. package/.claude/skills/component-pipeline/checklist.md +125 -0
  19. package/.hintrc +13 -0
  20. package/@types/global.d.ts +28 -0
  21. package/AGENTS.md +540 -0
  22. package/CLAUDE.md +1 -0
  23. package/LICENSE +21 -0
  24. package/README.md +169 -0
  25. package/es/components/Accordion/Accordion.d.ts +6 -0
  26. package/es/components/Accordion/Accordion.js +102 -0
  27. package/es/components/Accordion/index.d.ts +4 -0
  28. package/es/components/Accordion/index.js +5 -0
  29. package/es/components/Accordion/interface.d.ts +29 -0
  30. package/es/components/Accordion/interface.js +2 -0
  31. package/es/components/Accordion/style/Accordion.css +1 -0
  32. package/es/components/Accordion/style/Accordion.scss +127 -0
  33. package/es/components/Accordion/style/css.js +2 -0
  34. package/es/components/Accordion/style/index.d.ts +1 -0
  35. package/es/components/Accordion/style/index.js +2 -0
  36. package/es/components/Alert/Alert.d.ts +6 -0
  37. package/es/components/Alert/Alert.js +94 -0
  38. package/es/components/Alert/index.d.ts +4 -0
  39. package/es/components/Alert/index.js +5 -0
  40. package/es/components/Alert/interface.d.ts +40 -0
  41. package/es/components/Alert/interface.js +6 -0
  42. package/es/components/Alert/style/Alert.css +1 -0
  43. package/es/components/Alert/style/Alert.scss +89 -0
  44. package/es/components/Alert/style/css.js +3 -0
  45. package/es/components/Alert/style/index.d.ts +2 -0
  46. package/es/components/Alert/style/index.js +3 -0
  47. package/es/components/Button/Button.d.ts +4 -0
  48. package/es/components/Button/Button.js +121 -0
  49. package/es/components/Button/constants.d.ts +56 -0
  50. package/es/components/Button/constants.js +69 -0
  51. package/es/components/Button/index.d.ts +5 -0
  52. package/es/components/Button/index.js +6 -0
  53. package/es/components/Button/interface.d.ts +14 -0
  54. package/es/components/Button/interface.js +2 -0
  55. package/es/components/Button/style/Button.css +1 -0
  56. package/es/components/Button/style/Button.scss +190 -0
  57. package/es/components/Button/style/css.js +2 -0
  58. package/es/components/Button/style/index.d.ts +1 -0
  59. package/es/components/Button/style/index.js +2 -0
  60. package/es/components/Calendar/Calendar.d.ts +7 -0
  61. package/es/components/Calendar/Calendar.js +112 -0
  62. package/es/components/Calendar/index.d.ts +4 -0
  63. package/es/components/Calendar/index.js +5 -0
  64. package/es/components/Calendar/interface.d.ts +29 -0
  65. package/es/components/Calendar/interface.js +2 -0
  66. package/es/components/Calendar/style/Calendar.css +1 -0
  67. package/es/components/Calendar/style/Calendar.scss +377 -0
  68. package/es/components/Calendar/style/css.js +2 -0
  69. package/es/components/Calendar/style/index.d.ts +1 -0
  70. package/es/components/Calendar/style/index.js +2 -0
  71. package/es/components/Carousel/Carousel.d.ts +6 -0
  72. package/es/components/Carousel/Carousel.js +46 -0
  73. package/es/components/Carousel/index.d.ts +4 -0
  74. package/es/components/Carousel/index.js +5 -0
  75. package/es/components/Carousel/interface.d.ts +15 -0
  76. package/es/components/Carousel/interface.js +2 -0
  77. package/es/components/Carousel/style/Carousel.css +1 -0
  78. package/es/components/Carousel/style/Carousel.scss +63 -0
  79. package/es/components/Carousel/style/css.js +2 -0
  80. package/es/components/Carousel/style/index.d.ts +1 -0
  81. package/es/components/Carousel/style/index.js +2 -0
  82. package/es/components/Checkbox/BaseCheckbox.d.ts +6 -0
  83. package/es/components/Checkbox/BaseCheckbox.js +84 -0
  84. package/es/components/Checkbox/Checkbox.d.ts +6 -0
  85. package/es/components/Checkbox/Checkbox.js +120 -0
  86. package/es/components/Checkbox/CheckboxGroup.d.ts +5 -0
  87. package/es/components/Checkbox/CheckboxGroup.js +140 -0
  88. package/es/components/Checkbox/CheckboxGroupContext.d.ts +14 -0
  89. package/es/components/Checkbox/CheckboxGroupContext.js +3 -0
  90. package/es/components/Checkbox/constants.d.ts +7 -0
  91. package/es/components/Checkbox/constants.js +8 -0
  92. package/es/components/Checkbox/index.d.ts +10 -0
  93. package/es/components/Checkbox/index.js +10 -0
  94. package/es/components/Checkbox/interface.d.ts +77 -0
  95. package/es/components/Checkbox/interface.js +2 -0
  96. package/es/components/Checkbox/style/Checkbox.css +1 -0
  97. package/es/components/Checkbox/style/Checkbox.scss +235 -0
  98. package/es/components/Checkbox/style/css.js +2 -0
  99. package/es/components/Checkbox/style/index.d.ts +1 -0
  100. package/es/components/Checkbox/style/index.js +2 -0
  101. package/es/components/CoachMark/CoachMark.d.ts +4 -0
  102. package/es/components/CoachMark/CoachMark.js +142 -0
  103. package/es/components/CoachMark/index.d.ts +4 -0
  104. package/es/components/CoachMark/index.js +5 -0
  105. package/es/components/CoachMark/interface.d.ts +47 -0
  106. package/es/components/CoachMark/interface.js +2 -0
  107. package/es/components/CoachMark/style/CoachMark.css +1 -0
  108. package/es/components/CoachMark/style/CoachMark.scss +176 -0
  109. package/es/components/CoachMark/style/css.js +5 -0
  110. package/es/components/CoachMark/style/index.d.ts +4 -0
  111. package/es/components/CoachMark/style/index.js +5 -0
  112. package/es/components/Copy/Copy.d.ts +6 -0
  113. package/es/components/Copy/Copy.js +70 -0
  114. package/es/components/Copy/index.d.ts +4 -0
  115. package/es/components/Copy/index.js +5 -0
  116. package/es/components/Copy/interface.d.ts +20 -0
  117. package/es/components/Copy/interface.js +2 -0
  118. package/es/components/Copy/style/Copy.css +1 -0
  119. package/es/components/Copy/style/Copy.scss +35 -0
  120. package/es/components/Copy/style/css.js +2 -0
  121. package/es/components/Copy/style/index.d.ts +1 -0
  122. package/es/components/Copy/style/index.js +2 -0
  123. package/es/components/Divider/Divider.d.ts +4 -0
  124. package/es/components/Divider/Divider.js +53 -0
  125. package/es/components/Divider/index.d.ts +4 -0
  126. package/es/components/Divider/index.js +5 -0
  127. package/es/components/Divider/interface.d.ts +20 -0
  128. package/es/components/Divider/interface.js +2 -0
  129. package/es/components/Divider/style/Divider.css +1 -0
  130. package/es/components/Divider/style/Divider.scss +149 -0
  131. package/es/components/Divider/style/css.js +2 -0
  132. package/es/components/Divider/style/index.d.ts +1 -0
  133. package/es/components/Divider/style/index.js +2 -0
  134. package/es/components/Drawer/Drawer.d.ts +4 -0
  135. package/es/components/Drawer/Drawer.js +271 -0
  136. package/es/components/Drawer/constants.d.ts +15 -0
  137. package/es/components/Drawer/constants.js +16 -0
  138. package/es/components/Drawer/index.d.ts +3 -0
  139. package/es/components/Drawer/index.js +4 -0
  140. package/es/components/Drawer/interface.d.ts +79 -0
  141. package/es/components/Drawer/interface.js +2 -0
  142. package/es/components/Drawer/style/Drawer.css +1 -0
  143. package/es/components/Drawer/style/Drawer.scss +163 -0
  144. package/es/components/Drawer/style/css.js +2 -0
  145. package/es/components/Drawer/style/index.d.ts +1 -0
  146. package/es/components/Drawer/style/index.js +2 -0
  147. package/es/components/Dropdown/Dropdown.d.ts +5 -0
  148. package/es/components/Dropdown/Dropdown.js +24 -0
  149. package/es/components/Dropdown/index.d.ts +3 -0
  150. package/es/components/Dropdown/index.js +4 -0
  151. package/es/components/Dropdown/interface.d.ts +8 -0
  152. package/es/components/Dropdown/interface.js +2 -0
  153. package/es/components/Dropdown/style/Dropdown.css +0 -0
  154. package/es/components/Dropdown/style/Dropdown.scss +2 -0
  155. package/es/components/Dropdown/style/css.js +3 -0
  156. package/es/components/Dropdown/style/index.d.ts +2 -0
  157. package/es/components/Dropdown/style/index.js +3 -0
  158. package/es/components/Empty/Empty.d.ts +6 -0
  159. package/es/components/Empty/Empty.js +68 -0
  160. package/es/components/Empty/index.d.ts +4 -0
  161. package/es/components/Empty/index.js +5 -0
  162. package/es/components/Empty/interface.d.ts +11 -0
  163. package/es/components/Empty/interface.js +2 -0
  164. package/es/components/Empty/style/Empty.css +1 -0
  165. package/es/components/Empty/style/Empty.scss +53 -0
  166. package/es/components/Empty/style/css.js +3 -0
  167. package/es/components/Empty/style/index.d.ts +2 -0
  168. package/es/components/Empty/style/index.js +3 -0
  169. package/es/components/Flex/Flex.d.ts +5 -0
  170. package/es/components/Flex/Flex.js +50 -0
  171. package/es/components/Flex/constants.d.ts +41 -0
  172. package/es/components/Flex/constants.js +45 -0
  173. package/es/components/Flex/index.d.ts +5 -0
  174. package/es/components/Flex/index.js +6 -0
  175. package/es/components/Flex/interface.d.ts +13 -0
  176. package/es/components/Flex/interface.js +2 -0
  177. package/es/components/Flex/style/Flex.css +1 -0
  178. package/es/components/Flex/style/Flex.scss +70 -0
  179. package/es/components/Flex/style/css.js +2 -0
  180. package/es/components/Flex/style/index.d.ts +1 -0
  181. package/es/components/Flex/style/index.js +2 -0
  182. package/es/components/Form/Form.d.ts +4 -0
  183. package/es/components/Form/Form.js +73 -0
  184. package/es/components/Form/FormItem.d.ts +4 -0
  185. package/es/components/Form/FormItem.js +183 -0
  186. package/es/components/Form/constants.d.ts +19 -0
  187. package/es/components/Form/constants.js +19 -0
  188. package/es/components/Form/context.d.ts +5 -0
  189. package/es/components/Form/context.js +19 -0
  190. package/es/components/Form/hooks/useForm.d.ts +3 -0
  191. package/es/components/Form/hooks/useForm.js +541 -0
  192. package/es/components/Form/hooks/useFormCore.d.ts +3 -0
  193. package/es/components/Form/hooks/useFormCore.js +348 -0
  194. package/es/components/Form/index.d.ts +10 -0
  195. package/es/components/Form/index.js +17 -0
  196. package/es/components/Form/interface.d.ts +166 -0
  197. package/es/components/Form/interface.js +2 -0
  198. package/es/components/Form/style/Form.css +1 -0
  199. package/es/components/Form/style/Form.scss +57 -0
  200. package/es/components/Form/style/css.js +2 -0
  201. package/es/components/Form/style/index.d.ts +1 -0
  202. package/es/components/Form/style/index.js +2 -0
  203. package/es/components/Grid/Col.d.ts +4 -0
  204. package/es/components/Grid/Col.js +83 -0
  205. package/es/components/Grid/Grid.d.ts +10 -0
  206. package/es/components/Grid/Grid.js +15 -0
  207. package/es/components/Grid/Row.d.ts +4 -0
  208. package/es/components/Grid/Row.js +41 -0
  209. package/es/components/Grid/constants.d.ts +48 -0
  210. package/es/components/Grid/constants.js +71 -0
  211. package/es/components/Grid/helper.d.ts +15 -0
  212. package/es/components/Grid/helper.js +87 -0
  213. package/es/components/Grid/index.d.ts +7 -0
  214. package/es/components/Grid/index.js +8 -0
  215. package/es/components/Grid/interface.d.ts +38 -0
  216. package/es/components/Grid/interface.js +2 -0
  217. package/es/components/Grid/style/Grid.css +1 -0
  218. package/es/components/Grid/style/Grid.scss +184 -0
  219. package/es/components/Grid/style/css.js +2 -0
  220. package/es/components/Grid/style/index.d.ts +1 -0
  221. package/es/components/Grid/style/index.js +2 -0
  222. package/es/components/Icons/Icons.d.ts +192 -0
  223. package/es/components/Icons/Icons.js +192 -0
  224. package/es/components/Icons/Illustrations.d.ts +18 -0
  225. package/es/components/Icons/Illustrations.js +874 -0
  226. package/es/components/Icons/Logo.d.ts +36 -0
  227. package/es/components/Icons/Logo.js +209 -0
  228. package/es/components/Icons/SVGs.d.ts +265 -0
  229. package/es/components/Icons/SVGs.js +1918 -0
  230. package/es/components/Icons/Wrapper.d.ts +6 -0
  231. package/es/components/Icons/Wrapper.js +100 -0
  232. package/es/components/Icons/index.d.ts +4 -0
  233. package/es/components/Icons/index.js +4 -0
  234. package/es/components/Icons/interface.d.ts +27 -0
  235. package/es/components/Icons/interface.js +2 -0
  236. package/es/components/Icons/style/Icons.css +1 -0
  237. package/es/components/Icons/style/Icons.scss +85 -0
  238. package/es/components/Icons/style/css.js +2 -0
  239. package/es/components/Icons/style/index.d.ts +1 -0
  240. package/es/components/Icons/style/index.js +2 -0
  241. package/es/components/Input/Amount/Amount.d.ts +6 -0
  242. package/es/components/Input/Amount/Amount.js +192 -0
  243. package/es/components/Input/Amount/helper.d.ts +35 -0
  244. package/es/components/Input/Amount/helper.js +95 -0
  245. package/es/components/Input/Amount/index.d.ts +3 -0
  246. package/es/components/Input/Amount/index.js +4 -0
  247. package/es/components/Input/Amount/style/Amount.css +1 -0
  248. package/es/components/Input/Amount/style/Amount.scss +89 -0
  249. package/es/components/Input/Amount/style/css.js +2 -0
  250. package/es/components/Input/Amount/style/index.d.ts +1 -0
  251. package/es/components/Input/Amount/style/index.js +2 -0
  252. package/es/components/Input/FieldShell/FieldShell.css +1 -0
  253. package/es/components/Input/FieldShell/FieldShell.d.ts +19 -0
  254. package/es/components/Input/FieldShell/FieldShell.js +76 -0
  255. package/es/components/Input/FieldShell/FieldShell.scss +62 -0
  256. package/es/components/Input/FieldShell/index.d.ts +3 -0
  257. package/es/components/Input/FieldShell/index.js +3 -0
  258. package/es/components/Input/Input/Input.css +1 -0
  259. package/es/components/Input/Input/Input.d.ts +3 -0
  260. package/es/components/Input/Input/Input.js +158 -0
  261. package/es/components/Input/Input/Input.scss +131 -0
  262. package/es/components/Input/Input/index.d.ts +2 -0
  263. package/es/components/Input/Input/index.js +3 -0
  264. package/es/components/Input/Mask/Mask.d.ts +5 -0
  265. package/es/components/Input/Mask/Mask.js +337 -0
  266. package/es/components/Input/Mask/index.d.ts +2 -0
  267. package/es/components/Input/Mask/index.js +3 -0
  268. package/es/components/Input/OTP/OTP.css +1 -0
  269. package/es/components/Input/OTP/OTP.d.ts +5 -0
  270. package/es/components/Input/OTP/OTP.js +150 -0
  271. package/es/components/Input/OTP/OTP.scss +75 -0
  272. package/es/components/Input/OTP/index.d.ts +2 -0
  273. package/es/components/Input/OTP/index.js +3 -0
  274. package/es/components/Input/Password/Password.d.ts +5 -0
  275. package/es/components/Input/Password/Password.js +121 -0
  276. package/es/components/Input/Password/index.d.ts +2 -0
  277. package/es/components/Input/Password/index.js +3 -0
  278. package/es/components/Input/Search/Search.d.ts +5 -0
  279. package/es/components/Input/Search/Search.js +144 -0
  280. package/es/components/Input/Search/index.d.ts +2 -0
  281. package/es/components/Input/Search/index.js +3 -0
  282. package/es/components/Input/TextArea/TextArea.css +1 -0
  283. package/es/components/Input/TextArea/TextArea.d.ts +5 -0
  284. package/es/components/Input/TextArea/TextArea.js +93 -0
  285. package/es/components/Input/TextArea/TextArea.scss +87 -0
  286. package/es/components/Input/TextArea/index.d.ts +2 -0
  287. package/es/components/Input/TextArea/index.js +3 -0
  288. package/es/components/Input/Trade/Trade.css +1 -0
  289. package/es/components/Input/Trade/Trade.d.ts +5 -0
  290. package/es/components/Input/Trade/Trade.js +130 -0
  291. package/es/components/Input/Trade/Trade.scss +184 -0
  292. package/es/components/Input/Trade/index.d.ts +2 -0
  293. package/es/components/Input/Trade/index.js +3 -0
  294. package/es/components/Input/constants.d.ts +15 -0
  295. package/es/components/Input/constants.js +16 -0
  296. package/es/components/Input/index.d.ts +4 -0
  297. package/es/components/Input/index.js +5 -0
  298. package/es/components/Input/interface.d.ts +153 -0
  299. package/es/components/Input/interface.js +2 -0
  300. package/es/components/Input/style/css.js +7 -0
  301. package/es/components/Input/style/index.d.ts +6 -0
  302. package/es/components/Input/style/index.js +7 -0
  303. package/es/components/Input/useAmountInput.d.ts +35 -0
  304. package/es/components/Input/useAmountInput.js +207 -0
  305. package/es/components/Input/useSyncRef.d.ts +2 -0
  306. package/es/components/Input/useSyncRef.js +13 -0
  307. package/es/components/Modal/Modal.d.ts +4 -0
  308. package/es/components/Modal/Modal.js +383 -0
  309. package/es/components/Modal/constants.d.ts +58 -0
  310. package/es/components/Modal/constants.js +55 -0
  311. package/es/components/Modal/index.d.ts +4 -0
  312. package/es/components/Modal/index.js +5 -0
  313. package/es/components/Modal/interface.d.ts +37 -0
  314. package/es/components/Modal/interface.js +2 -0
  315. package/es/components/Modal/style/Modal.css +1 -0
  316. package/es/components/Modal/style/Modal.scss +254 -0
  317. package/es/components/Modal/style/css.js +2 -0
  318. package/es/components/Modal/style/index.d.ts +1 -0
  319. package/es/components/Modal/style/index.js +2 -0
  320. package/es/components/Navigation/Nav.d.ts +5 -0
  321. package/es/components/Navigation/Nav.js +198 -0
  322. package/es/components/Navigation/Navigation.d.ts +5 -0
  323. package/es/components/Navigation/Navigation.js +299 -0
  324. package/es/components/Navigation/NavigationLogo.d.ts +7 -0
  325. package/es/components/Navigation/NavigationLogo.js +36 -0
  326. package/es/components/Navigation/index.d.ts +5 -0
  327. package/es/components/Navigation/index.js +6 -0
  328. package/es/components/Navigation/interface.d.ts +95 -0
  329. package/es/components/Navigation/interface.js +2 -0
  330. package/es/components/Navigation/style/Nav.css +1 -0
  331. package/es/components/Navigation/style/Nav.scss +174 -0
  332. package/es/components/Navigation/style/Navigation.css +1 -0
  333. package/es/components/Navigation/style/Navigation.scss +443 -0
  334. package/es/components/Navigation/style/css.js +3 -0
  335. package/es/components/Navigation/style/index.d.ts +2 -0
  336. package/es/components/Navigation/style/index.js +3 -0
  337. package/es/components/Notification/Notification.d.ts +6 -0
  338. package/es/components/Notification/Notification.js +114 -0
  339. package/es/components/Notification/NotificationStatic.d.ts +4 -0
  340. package/es/components/Notification/NotificationStatic.js +501 -0
  341. package/es/components/Notification/constants.d.ts +5 -0
  342. package/es/components/Notification/constants.js +7 -0
  343. package/es/components/Notification/index.d.ts +5 -0
  344. package/es/components/Notification/index.js +5 -0
  345. package/es/components/Notification/interface.d.ts +70 -0
  346. package/es/components/Notification/interface.js +7 -0
  347. package/es/components/Notification/style/Notification.css +1 -0
  348. package/es/components/Notification/style/Notification.scss +200 -0
  349. package/es/components/Notification/style/css.js +2 -0
  350. package/es/components/Notification/style/index.d.ts +1 -0
  351. package/es/components/Notification/style/index.js +2 -0
  352. package/es/components/Pagination/Pagination.d.ts +5 -0
  353. package/es/components/Pagination/Pagination.js +137 -0
  354. package/es/components/Pagination/constants.d.ts +53 -0
  355. package/es/components/Pagination/constants.js +56 -0
  356. package/es/components/Pagination/index.d.ts +6 -0
  357. package/es/components/Pagination/index.js +7 -0
  358. package/es/components/Pagination/interface.d.ts +54 -0
  359. package/es/components/Pagination/interface.js +2 -0
  360. package/es/components/Pagination/style/Pagination.css +1 -0
  361. package/es/components/Pagination/style/Pagination.scss +95 -0
  362. package/es/components/Pagination/style/css.js +2 -0
  363. package/es/components/Pagination/style/index.d.ts +1 -0
  364. package/es/components/Pagination/style/index.js +2 -0
  365. package/es/components/Pagination/usePagination.d.ts +3 -0
  366. package/es/components/Pagination/usePagination.js +154 -0
  367. package/es/components/Popconfirm/Popconfirm.d.ts +6 -0
  368. package/es/components/Popconfirm/Popconfirm.js +131 -0
  369. package/es/components/Popconfirm/constants.d.ts +72 -0
  370. package/es/components/Popconfirm/constants.js +71 -0
  371. package/es/components/Popconfirm/index.d.ts +4 -0
  372. package/es/components/Popconfirm/index.js +5 -0
  373. package/es/components/Popconfirm/interface.d.ts +40 -0
  374. package/es/components/Popconfirm/interface.js +2 -0
  375. package/es/components/Popconfirm/style/Popconfirm.css +1 -0
  376. package/es/components/Popconfirm/style/Popconfirm.scss +264 -0
  377. package/es/components/Popconfirm/style/css.js +5 -0
  378. package/es/components/Popconfirm/style/index.d.ts +4 -0
  379. package/es/components/Popconfirm/style/index.js +5 -0
  380. package/es/components/Portal/Portal.d.ts +3 -0
  381. package/es/components/Portal/Portal.js +54 -0
  382. package/es/components/Portal/index.d.ts +4 -0
  383. package/es/components/Portal/index.js +5 -0
  384. package/es/components/Portal/interface.d.ts +7 -0
  385. package/es/components/Portal/interface.js +2 -0
  386. package/es/components/ProForm/ProForm.d.ts +3 -0
  387. package/es/components/ProForm/ProForm.js +254 -0
  388. package/es/components/ProForm/ProFormDependency.d.ts +3 -0
  389. package/es/components/ProForm/ProFormDependency.js +69 -0
  390. package/es/components/ProForm/ProFormGroup.d.ts +3 -0
  391. package/es/components/ProForm/ProFormGroup.js +78 -0
  392. package/es/components/ProForm/ProFormList.d.ts +3 -0
  393. package/es/components/ProForm/ProFormList.js +253 -0
  394. package/es/components/ProForm/Submitter.d.ts +6 -0
  395. package/es/components/ProForm/Submitter.js +67 -0
  396. package/es/components/ProForm/constants.d.ts +18 -0
  397. package/es/components/ProForm/constants.js +23 -0
  398. package/es/components/ProForm/context.d.ts +5 -0
  399. package/es/components/ProForm/context.js +26 -0
  400. package/es/components/ProForm/fields/ProFormCheckbox.d.ts +3 -0
  401. package/es/components/ProForm/fields/ProFormCheckbox.js +11 -0
  402. package/es/components/ProForm/fields/ProFormCheckboxGroup.d.ts +3 -0
  403. package/es/components/ProForm/fields/ProFormCheckboxGroup.js +12 -0
  404. package/es/components/ProForm/fields/ProFormDatePicker.d.ts +3 -0
  405. package/es/components/ProForm/fields/ProFormDatePicker.js +23 -0
  406. package/es/components/ProForm/fields/ProFormFieldSet.d.ts +4 -0
  407. package/es/components/ProForm/fields/ProFormFieldSet.js +62 -0
  408. package/es/components/ProForm/fields/ProFormPassword.d.ts +3 -0
  409. package/es/components/ProForm/fields/ProFormPassword.js +11 -0
  410. package/es/components/ProForm/fields/ProFormRadioGroup.d.ts +3 -0
  411. package/es/components/ProForm/fields/ProFormRadioGroup.js +10 -0
  412. package/es/components/ProForm/fields/ProFormSelect.d.ts +3 -0
  413. package/es/components/ProForm/fields/ProFormSelect.js +40 -0
  414. package/es/components/ProForm/fields/ProFormSlider.d.ts +3 -0
  415. package/es/components/ProForm/fields/ProFormSlider.js +10 -0
  416. package/es/components/ProForm/fields/ProFormSwitch.d.ts +3 -0
  417. package/es/components/ProForm/fields/ProFormSwitch.js +11 -0
  418. package/es/components/ProForm/fields/ProFormText.d.ts +3 -0
  419. package/es/components/ProForm/fields/ProFormText.js +10 -0
  420. package/es/components/ProForm/fields/ProFormTextArea.d.ts +3 -0
  421. package/es/components/ProForm/fields/ProFormTextArea.js +10 -0
  422. package/es/components/ProForm/fields/ProFormUpload.d.ts +3 -0
  423. package/es/components/ProForm/fields/ProFormUpload.js +25 -0
  424. package/es/components/ProForm/fields/createProFormField.d.ts +4 -0
  425. package/es/components/ProForm/fields/createProFormField.js +229 -0
  426. package/es/components/ProForm/fields/index.d.ts +13 -0
  427. package/es/components/ProForm/fields/index.js +14 -0
  428. package/es/components/ProForm/hooks/useFieldRequest.d.ts +7 -0
  429. package/es/components/ProForm/hooks/useFieldRequest.js +90 -0
  430. package/es/components/ProForm/index.d.ts +30 -0
  431. package/es/components/ProForm/index.js +37 -0
  432. package/es/components/ProForm/interface.d.ts +240 -0
  433. package/es/components/ProForm/interface.js +2 -0
  434. package/es/components/ProForm/layouts/DrawerForm.d.ts +3 -0
  435. package/es/components/ProForm/layouts/DrawerForm.js +73 -0
  436. package/es/components/ProForm/layouts/ModalForm.d.ts +3 -0
  437. package/es/components/ProForm/layouts/ModalForm.js +74 -0
  438. package/es/components/ProForm/layouts/QueryFilter.d.ts +4 -0
  439. package/es/components/ProForm/layouts/QueryFilter.js +158 -0
  440. package/es/components/ProForm/layouts/index.d.ts +4 -0
  441. package/es/components/ProForm/layouts/index.js +5 -0
  442. package/es/components/ProForm/layouts/useOverlayForm.d.ts +17 -0
  443. package/es/components/ProForm/layouts/useOverlayForm.js +107 -0
  444. package/es/components/ProForm/style/ProForm.css +1 -0
  445. package/es/components/ProForm/style/ProForm.scss +118 -0
  446. package/es/components/ProForm/style/css.js +2 -0
  447. package/es/components/ProForm/style/index.d.ts +1 -0
  448. package/es/components/ProForm/style/index.js +2 -0
  449. package/es/components/ProForm/utils.d.ts +22 -0
  450. package/es/components/ProForm/utils.js +211 -0
  451. package/es/components/Progress/Progress.d.ts +6 -0
  452. package/es/components/Progress/Progress.js +94 -0
  453. package/es/components/Progress/constants.d.ts +26 -0
  454. package/es/components/Progress/constants.js +32 -0
  455. package/es/components/Progress/index.d.ts +5 -0
  456. package/es/components/Progress/index.js +6 -0
  457. package/es/components/Progress/interface.d.ts +26 -0
  458. package/es/components/Progress/interface.js +2 -0
  459. package/es/components/Progress/style/Progress.css +1 -0
  460. package/es/components/Progress/style/Progress.scss +120 -0
  461. package/es/components/Progress/style/css.js +2 -0
  462. package/es/components/Progress/style/index.d.ts +1 -0
  463. package/es/components/Progress/style/index.js +2 -0
  464. package/es/components/Radio/BaseRadio.d.ts +16 -0
  465. package/es/components/Radio/BaseRadio.js +58 -0
  466. package/es/components/Radio/Radio.d.ts +6 -0
  467. package/es/components/Radio/Radio.js +179 -0
  468. package/es/components/Radio/RadioGroup.d.ts +5 -0
  469. package/es/components/Radio/RadioGroup.js +100 -0
  470. package/es/components/Radio/RadioGroupContext.d.ts +22 -0
  471. package/es/components/Radio/RadioGroupContext.js +7 -0
  472. package/es/components/Radio/constants.d.ts +36 -0
  473. package/es/components/Radio/constants.js +63 -0
  474. package/es/components/Radio/index.d.ts +5 -0
  475. package/es/components/Radio/index.js +6 -0
  476. package/es/components/Radio/interface.d.ts +115 -0
  477. package/es/components/Radio/interface.js +2 -0
  478. package/es/components/Radio/style/Radio.css +1 -0
  479. package/es/components/Radio/style/Radio.scss +431 -0
  480. package/es/components/Radio/style/css.js +3 -0
  481. package/es/components/Radio/style/index.d.ts +2 -0
  482. package/es/components/Radio/style/index.js +3 -0
  483. package/es/components/ResizeObserver/Collection.d.ts +19 -0
  484. package/es/components/ResizeObserver/Collection.js +41 -0
  485. package/es/components/ResizeObserver/ResizeObserver.d.ts +7 -0
  486. package/es/components/ResizeObserver/ResizeObserver.js +31 -0
  487. package/es/components/ResizeObserver/SingleObserver/index.d.ts +7 -0
  488. package/es/components/ResizeObserver/SingleObserver/index.js +38 -0
  489. package/es/components/ResizeObserver/index.d.ts +7 -0
  490. package/es/components/ResizeObserver/index.js +6 -0
  491. package/es/components/ResizeObserver/interface.d.ts +16 -0
  492. package/es/components/ResizeObserver/interface.js +2 -0
  493. package/es/components/ResizeObserver/useResizeObserver.d.ts +2 -0
  494. package/es/components/ResizeObserver/useResizeObserver.js +70 -0
  495. package/es/components/ResizeObserver/utils/observerUtil.d.ts +7 -0
  496. package/es/components/ResizeObserver/utils/observerUtil.js +39 -0
  497. package/es/components/ResizeObserver/utils/reactUtil.d.ts +19 -0
  498. package/es/components/ResizeObserver/utils/reactUtil.js +78 -0
  499. package/es/components/Segment/Segment.d.ts +6 -0
  500. package/es/components/Segment/Segment.js +100 -0
  501. package/es/components/Segment/index.d.ts +4 -0
  502. package/es/components/Segment/index.js +5 -0
  503. package/es/components/Segment/interface.d.ts +23 -0
  504. package/es/components/Segment/interface.js +2 -0
  505. package/es/components/Segment/style/Segment.css +1 -0
  506. package/es/components/Segment/style/Segment.scss +80 -0
  507. package/es/components/Segment/style/css.js +2 -0
  508. package/es/components/Segment/style/index.d.ts +1 -0
  509. package/es/components/Segment/style/index.js +2 -0
  510. package/es/components/Select/Select.d.ts +6 -0
  511. package/es/components/Select/Select.js +520 -0
  512. package/es/components/Select/SelectFieldShell.d.ts +22 -0
  513. package/es/components/Select/SelectFieldShell.js +73 -0
  514. package/es/components/Select/SelectOptionContent.d.ts +9 -0
  515. package/es/components/Select/SelectOptionContent.js +36 -0
  516. package/es/components/Select/SelectSearchControl.d.ts +12 -0
  517. package/es/components/Select/SelectSearchControl.js +38 -0
  518. package/es/components/Select/SelectValueContent.d.ts +18 -0
  519. package/es/components/Select/SelectValueContent.js +99 -0
  520. package/es/components/Select/constants.d.ts +14 -0
  521. package/es/components/Select/constants.js +20 -0
  522. package/es/components/Select/index.d.ts +4 -0
  523. package/es/components/Select/index.js +5 -0
  524. package/es/components/Select/interface.d.ts +83 -0
  525. package/es/components/Select/interface.js +4 -0
  526. package/es/components/Select/style/Select.css +1 -0
  527. package/es/components/Select/style/Select.scss +480 -0
  528. package/es/components/Select/style/css.js +4 -0
  529. package/es/components/Select/style/index.d.ts +3 -0
  530. package/es/components/Select/style/index.js +4 -0
  531. package/es/components/Select/utils.d.ts +21 -0
  532. package/es/components/Select/utils.js +140 -0
  533. package/es/components/Skeleton/Skeleton.d.ts +6 -0
  534. package/es/components/Skeleton/Skeleton.js +49 -0
  535. package/es/components/Skeleton/index.d.ts +4 -0
  536. package/es/components/Skeleton/index.js +5 -0
  537. package/es/components/Skeleton/interface.d.ts +19 -0
  538. package/es/components/Skeleton/interface.js +2 -0
  539. package/es/components/Skeleton/style/Skeleton.css +1 -0
  540. package/es/components/Skeleton/style/Skeleton.scss +47 -0
  541. package/es/components/Skeleton/style/css.js +2 -0
  542. package/es/components/Skeleton/style/index.d.ts +1 -0
  543. package/es/components/Skeleton/style/index.js +2 -0
  544. package/es/components/Slider/Slider.d.ts +6 -0
  545. package/es/components/Slider/Slider.js +116 -0
  546. package/es/components/Slider/index.d.ts +4 -0
  547. package/es/components/Slider/index.js +5 -0
  548. package/es/components/Slider/interface.d.ts +39 -0
  549. package/es/components/Slider/interface.js +2 -0
  550. package/es/components/Slider/style/Slider.css +1 -0
  551. package/es/components/Slider/style/Slider.scss +182 -0
  552. package/es/components/Slider/style/css.js +2 -0
  553. package/es/components/Slider/style/index.d.ts +1 -0
  554. package/es/components/Slider/style/index.js +2 -0
  555. package/es/components/Space/Space.d.ts +5 -0
  556. package/es/components/Space/Space.js +78 -0
  557. package/es/components/Space/constants.d.ts +33 -0
  558. package/es/components/Space/constants.js +37 -0
  559. package/es/components/Space/index.d.ts +5 -0
  560. package/es/components/Space/index.js +6 -0
  561. package/es/components/Space/interface.d.ts +12 -0
  562. package/es/components/Space/interface.js +2 -0
  563. package/es/components/Space/style/Space.css +1 -0
  564. package/es/components/Space/style/Space.scss +40 -0
  565. package/es/components/Space/style/css.js +2 -0
  566. package/es/components/Space/style/index.d.ts +1 -0
  567. package/es/components/Space/style/index.js +2 -0
  568. package/es/components/Spinner/Spinner.d.ts +6 -0
  569. package/es/components/Spinner/Spinner.js +83 -0
  570. package/es/components/Spinner/index.d.ts +4 -0
  571. package/es/components/Spinner/index.js +5 -0
  572. package/es/components/Spinner/interface.d.ts +14 -0
  573. package/es/components/Spinner/interface.js +2 -0
  574. package/es/components/Spinner/style/Spinner.css +1 -0
  575. package/es/components/Spinner/style/Spinner.scss +90 -0
  576. package/es/components/Spinner/style/css.js +2 -0
  577. package/es/components/Spinner/style/index.d.ts +1 -0
  578. package/es/components/Spinner/style/index.js +2 -0
  579. package/es/components/Step/Step.d.ts +5 -0
  580. package/es/components/Step/Step.js +116 -0
  581. package/es/components/Step/constants.d.ts +59 -0
  582. package/es/components/Step/constants.js +65 -0
  583. package/es/components/Step/index.d.ts +4 -0
  584. package/es/components/Step/index.js +5 -0
  585. package/es/components/Step/interface.d.ts +22 -0
  586. package/es/components/Step/interface.js +2 -0
  587. package/es/components/Step/style/Step.css +1 -0
  588. package/es/components/Step/style/Step.scss +91 -0
  589. package/es/components/Step/style/css.js +2 -0
  590. package/es/components/Step/style/index.d.ts +1 -0
  591. package/es/components/Step/style/index.js +2 -0
  592. package/es/components/Switch/Switch.d.ts +6 -0
  593. package/es/components/Switch/Switch.js +93 -0
  594. package/es/components/Switch/constants.d.ts +11 -0
  595. package/es/components/Switch/constants.js +12 -0
  596. package/es/components/Switch/index.d.ts +5 -0
  597. package/es/components/Switch/index.js +6 -0
  598. package/es/components/Switch/interface.d.ts +26 -0
  599. package/es/components/Switch/interface.js +2 -0
  600. package/es/components/Switch/style/Switch.css +1 -0
  601. package/es/components/Switch/style/Switch.scss +126 -0
  602. package/es/components/Switch/style/css.js +3 -0
  603. package/es/components/Switch/style/index.d.ts +2 -0
  604. package/es/components/Switch/style/index.js +3 -0
  605. package/es/components/Table/Table.d.ts +10 -0
  606. package/es/components/Table/Table.js +164 -0
  607. package/es/components/Table/VirtualTable.d.ts +9 -0
  608. package/es/components/Table/VirtualTable.js +166 -0
  609. package/es/components/Table/constants.d.ts +4 -0
  610. package/es/components/Table/constants.js +5 -0
  611. package/es/components/Table/core/useTableColumns.d.ts +34 -0
  612. package/es/components/Table/core/useTableColumns.js +191 -0
  613. package/es/components/Table/core/useTableDataPipeline.d.ts +50 -0
  614. package/es/components/Table/core/useTableDataPipeline.js +262 -0
  615. package/es/components/Table/core/useTableExpand.d.ts +9 -0
  616. package/es/components/Table/core/useTableExpand.js +38 -0
  617. package/es/components/Table/core/useTableSelection.d.ts +17 -0
  618. package/es/components/Table/core/useTableSelection.js +144 -0
  619. package/es/components/Table/features/ExpandTrigger.d.ts +4 -0
  620. package/es/components/Table/features/ExpandTrigger.js +24 -0
  621. package/es/components/Table/features/SelectionColumn.d.ts +11 -0
  622. package/es/components/Table/features/SelectionColumn.js +41 -0
  623. package/es/components/Table/features/SortTrigger.d.ts +7 -0
  624. package/es/components/Table/features/SortTrigger.js +26 -0
  625. package/es/components/Table/index.d.ts +6 -0
  626. package/es/components/Table/index.js +7 -0
  627. package/es/components/Table/interface.d.ts +179 -0
  628. package/es/components/Table/interface.js +2 -0
  629. package/es/components/Table/internal/index.d.ts +3 -0
  630. package/es/components/Table/internal/index.js +3 -0
  631. package/es/components/Table/internal/kernel/Body/BodyRow.d.ts +37 -0
  632. package/es/components/Table/internal/kernel/Body/BodyRow.js +174 -0
  633. package/es/components/Table/internal/kernel/Body/ExpandedRow.d.ts +15 -0
  634. package/es/components/Table/internal/kernel/Body/ExpandedRow.js +56 -0
  635. package/es/components/Table/internal/kernel/Body/MeasureCell.d.ts +8 -0
  636. package/es/components/Table/internal/kernel/Body/MeasureCell.js +39 -0
  637. package/es/components/Table/internal/kernel/Body/MeasureRow.d.ts +10 -0
  638. package/es/components/Table/internal/kernel/Body/MeasureRow.js +53 -0
  639. package/es/components/Table/internal/kernel/Body/index.d.ts +9 -0
  640. package/es/components/Table/internal/kernel/Body/index.js +124 -0
  641. package/es/components/Table/internal/kernel/Cell/index.d.ts +39 -0
  642. package/es/components/Table/internal/kernel/Cell/index.js +179 -0
  643. package/es/components/Table/internal/kernel/Cell/useCellRender.d.ts +3 -0
  644. package/es/components/Table/internal/kernel/Cell/useCellRender.js +63 -0
  645. package/es/components/Table/internal/kernel/Cell/useHoverState.d.ts +2 -0
  646. package/es/components/Table/internal/kernel/Cell/useHoverState.js +15 -0
  647. package/es/components/Table/internal/kernel/ColGroup.d.ts +8 -0
  648. package/es/components/Table/internal/kernel/ColGroup.js +56 -0
  649. package/es/components/Table/internal/kernel/FixedHolder/index.d.ts +27 -0
  650. package/es/components/Table/internal/kernel/FixedHolder/index.js +181 -0
  651. package/es/components/Table/internal/kernel/Footer/Cell.d.ts +11 -0
  652. package/es/components/Table/internal/kernel/Footer/Cell.js +50 -0
  653. package/es/components/Table/internal/kernel/Footer/Row.d.ts +8 -0
  654. package/es/components/Table/internal/kernel/Footer/Row.js +20 -0
  655. package/es/components/Table/internal/kernel/Footer/Summary.d.ts +14 -0
  656. package/es/components/Table/internal/kernel/Footer/Summary.js +13 -0
  657. package/es/components/Table/internal/kernel/Footer/SummaryContext.d.ts +11 -0
  658. package/es/components/Table/internal/kernel/Footer/SummaryContext.js +4 -0
  659. package/es/components/Table/internal/kernel/Footer/index.d.ts +16 -0
  660. package/es/components/Table/internal/kernel/Footer/index.js +36 -0
  661. package/es/components/Table/internal/kernel/Header/Header.d.ts +9 -0
  662. package/es/components/Table/internal/kernel/Header/Header.js +109 -0
  663. package/es/components/Table/internal/kernel/Header/HeaderRow.d.ts +18 -0
  664. package/es/components/Table/internal/kernel/Header/HeaderRow.js +60 -0
  665. package/es/components/Table/internal/kernel/Panel/index.d.ts +7 -0
  666. package/es/components/Table/internal/kernel/Panel/index.js +15 -0
  667. package/es/components/Table/internal/kernel/Table.d.ts +126 -0
  668. package/es/components/Table/internal/kernel/Table.js +692 -0
  669. package/es/components/Table/internal/kernel/VirtualTable/BodyGrid.d.ts +13 -0
  670. package/es/components/Table/internal/kernel/VirtualTable/BodyGrid.js +287 -0
  671. package/es/components/Table/internal/kernel/VirtualTable/BodyLine.d.ts +14 -0
  672. package/es/components/Table/internal/kernel/VirtualTable/BodyLine.js +113 -0
  673. package/es/components/Table/internal/kernel/VirtualTable/VirtualCell.d.ts +26 -0
  674. package/es/components/Table/internal/kernel/VirtualTable/VirtualCell.js +105 -0
  675. package/es/components/Table/internal/kernel/VirtualTable/context.d.ts +13 -0
  676. package/es/components/Table/internal/kernel/VirtualTable/context.js +5 -0
  677. package/es/components/Table/internal/kernel/VirtualTable/index.d.ts +17 -0
  678. package/es/components/Table/internal/kernel/VirtualTable/index.js +91 -0
  679. package/es/components/Table/internal/kernel/constant.d.ts +2 -0
  680. package/es/components/Table/internal/kernel/constant.js +4 -0
  681. package/es/components/Table/internal/kernel/context/PerfContext.d.ts +6 -0
  682. package/es/components/Table/internal/kernel/context/PerfContext.js +8 -0
  683. package/es/components/Table/internal/kernel/context/TableContext.d.ts +51 -0
  684. package/es/components/Table/internal/kernel/context/TableContext.js +10 -0
  685. package/es/components/Table/internal/kernel/hooks/useColumns/index.d.ts +31 -0
  686. package/es/components/Table/internal/kernel/hooks/useColumns/index.js +210 -0
  687. package/es/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.d.ts +5 -0
  688. package/es/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.js +69 -0
  689. package/es/components/Table/internal/kernel/hooks/useExpand.d.ts +10 -0
  690. package/es/components/Table/internal/kernel/hooks/useExpand.js +84 -0
  691. package/es/components/Table/internal/kernel/hooks/useFixedInfo.d.ts +2 -0
  692. package/es/components/Table/internal/kernel/hooks/useFixedInfo.js +18 -0
  693. package/es/components/Table/internal/kernel/hooks/useFlattenRecords.d.ts +19 -0
  694. package/es/components/Table/internal/kernel/hooks/useFlattenRecords.js +54 -0
  695. package/es/components/Table/internal/kernel/hooks/useFrame.d.ts +7 -0
  696. package/es/components/Table/internal/kernel/hooks/useFrame.js +63 -0
  697. package/es/components/Table/internal/kernel/hooks/useHover.d.ts +2 -0
  698. package/es/components/Table/internal/kernel/hooks/useHover.js +19 -0
  699. package/es/components/Table/internal/kernel/hooks/useRenderTimes.d.ts +5 -0
  700. package/es/components/Table/internal/kernel/hooks/useRenderTimes.js +41 -0
  701. package/es/components/Table/internal/kernel/hooks/useRowInfo.d.ts +11 -0
  702. package/es/components/Table/internal/kernel/hooks/useRowInfo.js +62 -0
  703. package/es/components/Table/internal/kernel/hooks/useSticky.d.ts +10 -0
  704. package/es/components/Table/internal/kernel/hooks/useSticky.js +33 -0
  705. package/es/components/Table/internal/kernel/hooks/useStickyOffsets.d.ts +6 -0
  706. package/es/components/Table/internal/kernel/hooks/useStickyOffsets.js +31 -0
  707. package/es/components/Table/internal/kernel/index.d.ts +12 -0
  708. package/es/components/Table/internal/kernel/index.js +11 -0
  709. package/es/components/Table/internal/kernel/interface.d.ts +202 -0
  710. package/es/components/Table/internal/kernel/interface.js +2 -0
  711. package/es/components/Table/internal/kernel/namePathType.d.ts +13 -0
  712. package/es/components/Table/internal/kernel/namePathType.js +3 -0
  713. package/es/components/Table/internal/kernel/selector-context/Immutable.d.ts +10 -0
  714. package/es/components/Table/internal/kernel/selector-context/Immutable.js +73 -0
  715. package/es/components/Table/internal/kernel/selector-context/context.d.ts +26 -0
  716. package/es/components/Table/internal/kernel/selector-context/context.js +83 -0
  717. package/es/components/Table/internal/kernel/selector-context/index.d.ts +7 -0
  718. package/es/components/Table/internal/kernel/selector-context/index.js +9 -0
  719. package/es/components/Table/internal/kernel/selector-context/isEqual.d.ts +5 -0
  720. package/es/components/Table/internal/kernel/selector-context/isEqual.js +48 -0
  721. package/es/components/Table/internal/kernel/stickyScrollBar.d.ts +12 -0
  722. package/es/components/Table/internal/kernel/stickyScrollBar.js +192 -0
  723. package/es/components/Table/internal/kernel/sugar/Column.d.ts +10 -0
  724. package/es/components/Table/internal/kernel/sugar/Column.js +11 -0
  725. package/es/components/Table/internal/kernel/sugar/ColumnGroup.d.ts +12 -0
  726. package/es/components/Table/internal/kernel/sugar/ColumnGroup.js +11 -0
  727. package/es/components/Table/internal/kernel/utils/dom/canUseDom.d.ts +1 -0
  728. package/es/components/Table/internal/kernel/utils/dom/canUseDom.js +4 -0
  729. package/es/components/Table/internal/kernel/utils/dom/isVisible.d.ts +2 -0
  730. package/es/components/Table/internal/kernel/utils/dom/isVisible.js +28 -0
  731. package/es/components/Table/internal/kernel/utils/expandUtil.d.ts +4 -0
  732. package/es/components/Table/internal/kernel/utils/expandUtil.js +47 -0
  733. package/es/components/Table/internal/kernel/utils/fixUtil.d.ts +21 -0
  734. package/es/components/Table/internal/kernel/utils/fixUtil.js +64 -0
  735. package/es/components/Table/internal/kernel/utils/get.d.ts +1 -0
  736. package/es/components/Table/internal/kernel/utils/get.js +11 -0
  737. package/es/components/Table/internal/kernel/utils/getScrollBarSize.d.ts +7 -0
  738. package/es/components/Table/internal/kernel/utils/getScrollBarSize.js +38 -0
  739. package/es/components/Table/internal/kernel/utils/legacyUtil.d.ts +5 -0
  740. package/es/components/Table/internal/kernel/utils/legacyUtil.js +31 -0
  741. package/es/components/Table/internal/kernel/utils/offsetUtil.d.ts +4 -0
  742. package/es/components/Table/internal/kernel/utils/offsetUtil.js +14 -0
  743. package/es/components/Table/internal/kernel/utils/pickAttrs.d.ts +6 -0
  744. package/es/components/Table/internal/kernel/utils/pickAttrs.js +33 -0
  745. package/es/components/Table/internal/kernel/utils/useMemo.d.ts +1 -0
  746. package/es/components/Table/internal/kernel/utils/useMemo.js +10 -0
  747. package/es/components/Table/internal/kernel/utils/valueUtil.d.ts +8 -0
  748. package/es/components/Table/internal/kernel/utils/valueUtil.js +30 -0
  749. package/es/components/Table/internal/kernel/utils/warning.d.ts +4 -0
  750. package/es/components/Table/internal/kernel/utils/warning.js +17 -0
  751. package/es/components/Table/renderers/BodyCell.d.ts +15 -0
  752. package/es/components/Table/renderers/BodyCell.js +40 -0
  753. package/es/components/Table/renderers/CellContent.d.ts +4 -0
  754. package/es/components/Table/renderers/CellContent.js +26 -0
  755. package/es/components/Table/renderers/EmptyState.d.ts +4 -0
  756. package/es/components/Table/renderers/EmptyState.js +15 -0
  757. package/es/components/Table/renderers/ExpandedRowContainer.d.ts +4 -0
  758. package/es/components/Table/renderers/ExpandedRowContainer.js +10 -0
  759. package/es/components/Table/renderers/HeaderCell.d.ts +7 -0
  760. package/es/components/Table/renderers/HeaderCell.js +22 -0
  761. package/es/components/Table/style/Table.css +1 -0
  762. package/es/components/Table/style/Table.scss +376 -0
  763. package/es/components/Table/style/css.js +10 -0
  764. package/es/components/Table/style/index.d.ts +9 -0
  765. package/es/components/Table/style/index.js +10 -0
  766. package/es/components/Tabs/Tabs.d.ts +6 -0
  767. package/es/components/Tabs/Tabs.js +111 -0
  768. package/es/components/Tabs/index.d.ts +4 -0
  769. package/es/components/Tabs/index.js +5 -0
  770. package/es/components/Tabs/interface.d.ts +27 -0
  771. package/es/components/Tabs/interface.js +2 -0
  772. package/es/components/Tabs/style/Tabs.css +1 -0
  773. package/es/components/Tabs/style/Tabs.scss +100 -0
  774. package/es/components/Tabs/style/css.js +2 -0
  775. package/es/components/Tabs/style/index.d.ts +1 -0
  776. package/es/components/Tabs/style/index.js +2 -0
  777. package/es/components/Tag/Tag.d.ts +6 -0
  778. package/es/components/Tag/Tag.js +80 -0
  779. package/es/components/Tag/constants.d.ts +18 -0
  780. package/es/components/Tag/constants.js +28 -0
  781. package/es/components/Tag/index.d.ts +5 -0
  782. package/es/components/Tag/index.js +6 -0
  783. package/es/components/Tag/interface.d.ts +15 -0
  784. package/es/components/Tag/interface.js +2 -0
  785. package/es/components/Tag/style/Tag.css +1 -0
  786. package/es/components/Tag/style/Tag.scss +103 -0
  787. package/es/components/Tag/style/css.js +2 -0
  788. package/es/components/Tag/style/index.d.ts +1 -0
  789. package/es/components/Tag/style/index.js +2 -0
  790. package/es/components/Tooltip/Tooltip.d.ts +6 -0
  791. package/es/components/Tooltip/Tooltip.js +62 -0
  792. package/es/components/Tooltip/index.d.ts +4 -0
  793. package/es/components/Tooltip/index.js +5 -0
  794. package/es/components/Tooltip/interface.d.ts +20 -0
  795. package/es/components/Tooltip/interface.js +2 -0
  796. package/es/components/Tooltip/style/Tooltip.css +1 -0
  797. package/es/components/Tooltip/style/Tooltip.scss +95 -0
  798. package/es/components/Tooltip/style/css.js +2 -0
  799. package/es/components/Tooltip/style/index.d.ts +1 -0
  800. package/es/components/Tooltip/style/index.js +2 -0
  801. package/es/components/Tour/Tour.d.ts +3 -0
  802. package/es/components/Tour/Tour.js +243 -0
  803. package/es/components/Tour/index.d.ts +4 -0
  804. package/es/components/Tour/index.js +5 -0
  805. package/es/components/Tour/interface.d.ts +46 -0
  806. package/es/components/Tour/interface.js +2 -0
  807. package/es/components/Trigger/Trigger.d.ts +5 -0
  808. package/es/components/Trigger/Trigger.js +151 -0
  809. package/es/components/Trigger/index.d.ts +3 -0
  810. package/es/components/Trigger/index.js +4 -0
  811. package/es/components/Trigger/interface.d.ts +52 -0
  812. package/es/components/Trigger/interface.js +2 -0
  813. package/es/components/Trigger/style/Trigger.css +1 -0
  814. package/es/components/Trigger/style/Trigger.scss +18 -0
  815. package/es/components/Trigger/style/css.js +2 -0
  816. package/es/components/Trigger/style/index.d.ts +1 -0
  817. package/es/components/Trigger/style/index.js +2 -0
  818. package/es/components/Typography/Typography.d.ts +17 -0
  819. package/es/components/Typography/Typography.js +201 -0
  820. package/es/components/Typography/constants.d.ts +33 -0
  821. package/es/components/Typography/constants.js +9 -0
  822. package/es/components/Typography/index.d.ts +4 -0
  823. package/es/components/Typography/index.js +5 -0
  824. package/es/components/Typography/interface.d.ts +72 -0
  825. package/es/components/Typography/interface.js +22 -0
  826. package/es/components/Typography/render.d.ts +328 -0
  827. package/es/components/Typography/render.js +106 -0
  828. package/es/components/Typography/style/Typography.css +1 -0
  829. package/es/components/Typography/style/Typography.scss +132 -0
  830. package/es/components/Typography/style/css.js +4 -0
  831. package/es/components/Typography/style/index.d.ts +3 -0
  832. package/es/components/Typography/style/index.js +4 -0
  833. package/es/components/Typography/useTypographyEnhancements.d.ts +43 -0
  834. package/es/components/Typography/useTypographyEnhancements.js +110 -0
  835. package/es/components/Typography/utils.d.ts +17 -0
  836. package/es/components/Typography/utils.js +88 -0
  837. package/es/components/Upload/Upload.d.ts +7 -0
  838. package/es/components/Upload/Upload.js +88 -0
  839. package/es/components/Upload/UploadFileBar.d.ts +6 -0
  840. package/es/components/Upload/UploadFileBar.js +63 -0
  841. package/es/components/Upload/index.d.ts +5 -0
  842. package/es/components/Upload/index.js +6 -0
  843. package/es/components/Upload/interface.d.ts +41 -0
  844. package/es/components/Upload/interface.js +2 -0
  845. package/es/components/Upload/style/Upload.css +1 -0
  846. package/es/components/Upload/style/Upload.scss +44 -0
  847. package/es/components/Upload/style/UploadFileBar.css +1 -0
  848. package/es/components/Upload/style/UploadFileBar.scss +94 -0
  849. package/es/components/Upload/style/css.js +3 -0
  850. package/es/components/Upload/style/index.d.ts +2 -0
  851. package/es/components/Upload/style/index.js +3 -0
  852. package/es/components/VirtualList/Filler.d.ts +21 -0
  853. package/es/components/VirtualList/Filler.js +56 -0
  854. package/es/components/VirtualList/Item.d.ts +6 -0
  855. package/es/components/VirtualList/Item.js +12 -0
  856. package/es/components/VirtualList/ScrollBar.d.ts +22 -0
  857. package/es/components/VirtualList/ScrollBar.js +237 -0
  858. package/es/components/VirtualList/VirtualList.d.ts +62 -0
  859. package/es/components/VirtualList/VirtualList.js +529 -0
  860. package/es/components/VirtualList/constants.d.ts +4 -0
  861. package/es/components/VirtualList/constants.js +5 -0
  862. package/es/components/VirtualList/hooks/useChildren.d.ts +2 -0
  863. package/es/components/VirtualList/hooks/useChildren.js +25 -0
  864. package/es/components/VirtualList/hooks/useDiffItem.d.ts +2 -0
  865. package/es/components/VirtualList/hooks/useDiffItem.js +16 -0
  866. package/es/components/VirtualList/hooks/useFrameWheel.d.ts +10 -0
  867. package/es/components/VirtualList/hooks/useFrameWheel.js +85 -0
  868. package/es/components/VirtualList/hooks/useGetSize.d.ts +7 -0
  869. package/es/components/VirtualList/hooks/useGetSize.js +47 -0
  870. package/es/components/VirtualList/hooks/useHeights.d.ts +8 -0
  871. package/es/components/VirtualList/hooks/useHeights.js +96 -0
  872. package/es/components/VirtualList/hooks/useMobileTouchMove.d.ts +2 -0
  873. package/es/components/VirtualList/hooks/useMobileTouchMove.js +85 -0
  874. package/es/components/VirtualList/hooks/useOriginScroll.d.ts +2 -0
  875. package/es/components/VirtualList/hooks/useOriginScroll.js +44 -0
  876. package/es/components/VirtualList/hooks/useScrollDrag.d.ts +3 -0
  877. package/es/components/VirtualList/hooks/useScrollDrag.js +76 -0
  878. package/es/components/VirtualList/hooks/useScrollTo.d.ts +18 -0
  879. package/es/components/VirtualList/hooks/useScrollTo.js +132 -0
  880. package/es/components/VirtualList/index.d.ts +9 -0
  881. package/es/components/VirtualList/index.js +5 -0
  882. package/es/components/VirtualList/interface.d.ts +26 -0
  883. package/es/components/VirtualList/interface.js +2 -0
  884. package/es/components/VirtualList/style/VirtualList.css +1 -0
  885. package/es/components/VirtualList/style/VirtualList.scss +5 -0
  886. package/es/components/VirtualList/style/css.js +2 -0
  887. package/es/components/VirtualList/style/index.d.ts +1 -0
  888. package/es/components/VirtualList/style/index.js +2 -0
  889. package/es/components/VirtualList/utils/CacheMap.d.ts +16 -0
  890. package/es/components/VirtualList/utils/CacheMap.js +43 -0
  891. package/es/components/VirtualList/utils/algorithmUtil.d.ts +23 -0
  892. package/es/components/VirtualList/utils/algorithmUtil.js +77 -0
  893. package/es/components/VirtualList/utils/isFirefox.d.ts +2 -0
  894. package/es/components/VirtualList/utils/isFirefox.js +4 -0
  895. package/es/components/VirtualList/utils/raf.d.ts +9 -0
  896. package/es/components/VirtualList/utils/raf.js +47 -0
  897. package/es/components/VirtualList/utils/scrollbarUtil.d.ts +1 -0
  898. package/es/components/VirtualList/utils/scrollbarUtil.js +12 -0
  899. package/es/index.css +1 -0
  900. package/es/index.d.ts +89 -0
  901. package/es/index.js +46 -0
  902. package/es/styles/_api.scss +5 -0
  903. package/es/styles/_settings.scss +5 -0
  904. package/es/styles/index.css +1 -0
  905. package/es/styles/index.scss +2 -0
  906. package/es/styles/public/_index.scss +2 -0
  907. package/es/styles/public/_system.scss +1 -0
  908. package/es/styles/public/_theme.scss +3 -0
  909. package/es/styles/recipes/_index.scss +1 -0
  910. package/es/styles/recipes/_variants.scss +110 -0
  911. package/es/styles/system/_index.scss +4 -0
  912. package/es/styles/system/_props.scss +95 -0
  913. package/es/styles/system/_public.scss +5 -0
  914. package/es/styles/system/_sx.scss +81 -0
  915. package/es/styles/theme/_breakpoints.scss +95 -0
  916. package/es/styles/theme/_functions.scss +271 -0
  917. package/es/styles/theme/_index.scss +6 -0
  918. package/es/styles/theme/_mixins.scss +37 -0
  919. package/es/styles/theme/_scales.scss +29 -0
  920. package/es/styles/theme/_values.scss +68 -0
  921. package/es/styles/tokens/_index.scss +11 -0
  922. package/es/styles/tokens/breakpoint/_index.scss +2 -0
  923. package/es/styles/tokens/breakpoint/_primitives.scss +8 -0
  924. package/es/styles/tokens/color/_index.scss +3 -0
  925. package/es/styles/tokens/color/_primitives.scss +42 -0
  926. package/es/styles/tokens/color/_semantic-color.scss +172 -0
  927. package/es/styles/tokens/opacity/_functions.scss +13 -0
  928. package/es/styles/tokens/opacity/_index.scss +3 -0
  929. package/es/styles/tokens/opacity/_primitives.scss +12 -0
  930. package/es/styles/tokens/radius/_index.scss +2 -0
  931. package/es/styles/tokens/radius/_primitives.scss +11 -0
  932. package/es/styles/tokens/shadow/_index.scss +2 -0
  933. package/es/styles/tokens/shadow/_primitives.scss +7 -0
  934. package/es/styles/tokens/sizing/_functions.scss +17 -0
  935. package/es/styles/tokens/sizing/_index.scss +4 -0
  936. package/es/styles/tokens/sizing/_primitives.scss +12 -0
  937. package/es/styles/tokens/sizing/_semantic-sizing.scss +11 -0
  938. package/es/styles/tokens/spacing/_functions.scss +51 -0
  939. package/es/styles/tokens/spacing/_index.scss +4 -0
  940. package/es/styles/tokens/spacing/_primitives.scss +22 -0
  941. package/es/styles/tokens/spacing/_semantic-spacing.scss +22 -0
  942. package/es/styles/tokens/typography/_functions.scss +31 -0
  943. package/es/styles/tokens/typography/_index.scss +4 -0
  944. package/es/styles/tokens/typography/_primitives.scss +27 -0
  945. package/es/styles/tokens/typography/_semantic-typography.scss +216 -0
  946. package/es/styles/utilities/_generator.scss +55 -0
  947. package/es/styles/utilities/_index.scss +14 -0
  948. package/es/utils/classnames.d.ts +5 -0
  949. package/es/utils/classnames.js +18 -0
  950. package/es/utils/clipboard.d.ts +2 -0
  951. package/es/utils/clipboard.js +50 -0
  952. package/es/utils/ref.d.ts +4 -0
  953. package/es/utils/ref.js +32 -0
  954. package/es/utils/uuid.d.ts +2 -0
  955. package/es/utils/uuid.js +16 -0
  956. package/jest.setup.d.ts +1 -0
  957. package/jest.setup.ts +1 -0
  958. package/lib/components/Accordion/Accordion.d.ts +6 -0
  959. package/lib/components/Accordion/Accordion.js +112 -0
  960. package/lib/components/Accordion/index.d.ts +4 -0
  961. package/lib/components/Accordion/index.js +33 -0
  962. package/lib/components/Accordion/interface.d.ts +29 -0
  963. package/lib/components/Accordion/interface.js +6 -0
  964. package/lib/components/Accordion/style/Accordion.css +1 -0
  965. package/lib/components/Accordion/style/Accordion.scss +127 -0
  966. package/lib/components/Accordion/style/css.js +4 -0
  967. package/lib/components/Accordion/style/index.d.ts +1 -0
  968. package/lib/components/Accordion/style/index.js +4 -0
  969. package/lib/components/Alert/Alert.d.ts +6 -0
  970. package/lib/components/Alert/Alert.js +103 -0
  971. package/lib/components/Alert/index.d.ts +4 -0
  972. package/lib/components/Alert/index.js +33 -0
  973. package/lib/components/Alert/interface.d.ts +40 -0
  974. package/lib/components/Alert/interface.js +12 -0
  975. package/lib/components/Alert/style/Alert.css +1 -0
  976. package/lib/components/Alert/style/Alert.scss +89 -0
  977. package/lib/components/Alert/style/css.js +5 -0
  978. package/lib/components/Alert/style/index.d.ts +2 -0
  979. package/lib/components/Alert/style/index.js +5 -0
  980. package/lib/components/Button/Button.d.ts +4 -0
  981. package/lib/components/Button/Button.js +131 -0
  982. package/lib/components/Button/constants.d.ts +56 -0
  983. package/lib/components/Button/constants.js +76 -0
  984. package/lib/components/Button/index.d.ts +5 -0
  985. package/lib/components/Button/index.js +45 -0
  986. package/lib/components/Button/interface.d.ts +14 -0
  987. package/lib/components/Button/interface.js +6 -0
  988. package/lib/components/Button/style/Button.css +1 -0
  989. package/lib/components/Button/style/Button.scss +190 -0
  990. package/lib/components/Button/style/css.js +4 -0
  991. package/lib/components/Button/style/index.d.ts +1 -0
  992. package/lib/components/Button/style/index.js +4 -0
  993. package/lib/components/Calendar/Calendar.d.ts +7 -0
  994. package/lib/components/Calendar/Calendar.js +122 -0
  995. package/lib/components/Calendar/index.d.ts +4 -0
  996. package/lib/components/Calendar/index.js +33 -0
  997. package/lib/components/Calendar/interface.d.ts +29 -0
  998. package/lib/components/Calendar/interface.js +6 -0
  999. package/lib/components/Calendar/style/Calendar.css +1 -0
  1000. package/lib/components/Calendar/style/Calendar.scss +377 -0
  1001. package/lib/components/Calendar/style/css.js +4 -0
  1002. package/lib/components/Calendar/style/index.d.ts +1 -0
  1003. package/lib/components/Calendar/style/index.js +4 -0
  1004. package/lib/components/Carousel/Carousel.d.ts +6 -0
  1005. package/lib/components/Carousel/Carousel.js +56 -0
  1006. package/lib/components/Carousel/index.d.ts +4 -0
  1007. package/lib/components/Carousel/index.js +33 -0
  1008. package/lib/components/Carousel/interface.d.ts +15 -0
  1009. package/lib/components/Carousel/interface.js +6 -0
  1010. package/lib/components/Carousel/style/Carousel.css +1 -0
  1011. package/lib/components/Carousel/style/Carousel.scss +63 -0
  1012. package/lib/components/Carousel/style/css.js +4 -0
  1013. package/lib/components/Carousel/style/index.d.ts +1 -0
  1014. package/lib/components/Carousel/style/index.js +4 -0
  1015. package/lib/components/Checkbox/BaseCheckbox.d.ts +6 -0
  1016. package/lib/components/Checkbox/BaseCheckbox.js +94 -0
  1017. package/lib/components/Checkbox/Checkbox.d.ts +6 -0
  1018. package/lib/components/Checkbox/Checkbox.js +130 -0
  1019. package/lib/components/Checkbox/CheckboxGroup.d.ts +5 -0
  1020. package/lib/components/Checkbox/CheckboxGroup.js +150 -0
  1021. package/lib/components/Checkbox/CheckboxGroupContext.d.ts +14 -0
  1022. package/lib/components/Checkbox/CheckboxGroupContext.js +9 -0
  1023. package/lib/components/Checkbox/constants.d.ts +7 -0
  1024. package/lib/components/Checkbox/constants.js +14 -0
  1025. package/lib/components/Checkbox/index.d.ts +10 -0
  1026. package/lib/components/Checkbox/index.js +52 -0
  1027. package/lib/components/Checkbox/interface.d.ts +77 -0
  1028. package/lib/components/Checkbox/interface.js +6 -0
  1029. package/lib/components/Checkbox/style/Checkbox.css +1 -0
  1030. package/lib/components/Checkbox/style/Checkbox.scss +235 -0
  1031. package/lib/components/Checkbox/style/css.js +4 -0
  1032. package/lib/components/Checkbox/style/index.d.ts +1 -0
  1033. package/lib/components/Checkbox/style/index.js +4 -0
  1034. package/lib/components/CoachMark/CoachMark.d.ts +4 -0
  1035. package/lib/components/CoachMark/CoachMark.js +152 -0
  1036. package/lib/components/CoachMark/index.d.ts +4 -0
  1037. package/lib/components/CoachMark/index.js +33 -0
  1038. package/lib/components/CoachMark/interface.d.ts +47 -0
  1039. package/lib/components/CoachMark/interface.js +8 -0
  1040. package/lib/components/CoachMark/style/CoachMark.css +1 -0
  1041. package/lib/components/CoachMark/style/CoachMark.scss +176 -0
  1042. package/lib/components/CoachMark/style/css.js +7 -0
  1043. package/lib/components/CoachMark/style/index.d.ts +4 -0
  1044. package/lib/components/CoachMark/style/index.js +7 -0
  1045. package/lib/components/Copy/Copy.d.ts +6 -0
  1046. package/lib/components/Copy/Copy.js +80 -0
  1047. package/lib/components/Copy/index.d.ts +4 -0
  1048. package/lib/components/Copy/index.js +33 -0
  1049. package/lib/components/Copy/interface.d.ts +20 -0
  1050. package/lib/components/Copy/interface.js +6 -0
  1051. package/lib/components/Copy/style/Copy.css +1 -0
  1052. package/lib/components/Copy/style/Copy.scss +35 -0
  1053. package/lib/components/Copy/style/css.js +4 -0
  1054. package/lib/components/Copy/style/index.d.ts +1 -0
  1055. package/lib/components/Copy/style/index.js +4 -0
  1056. package/lib/components/Divider/Divider.d.ts +4 -0
  1057. package/lib/components/Divider/Divider.js +62 -0
  1058. package/lib/components/Divider/index.d.ts +4 -0
  1059. package/lib/components/Divider/index.js +31 -0
  1060. package/lib/components/Divider/interface.d.ts +20 -0
  1061. package/lib/components/Divider/interface.js +6 -0
  1062. package/lib/components/Divider/style/Divider.css +1 -0
  1063. package/lib/components/Divider/style/Divider.scss +149 -0
  1064. package/lib/components/Divider/style/css.js +4 -0
  1065. package/lib/components/Divider/style/index.d.ts +1 -0
  1066. package/lib/components/Divider/style/index.js +4 -0
  1067. package/lib/components/Drawer/Drawer.d.ts +4 -0
  1068. package/lib/components/Drawer/Drawer.js +281 -0
  1069. package/lib/components/Drawer/constants.d.ts +15 -0
  1070. package/lib/components/Drawer/constants.js +22 -0
  1071. package/lib/components/Drawer/index.d.ts +3 -0
  1072. package/lib/components/Drawer/index.js +46 -0
  1073. package/lib/components/Drawer/interface.d.ts +79 -0
  1074. package/lib/components/Drawer/interface.js +6 -0
  1075. package/lib/components/Drawer/style/Drawer.css +1 -0
  1076. package/lib/components/Drawer/style/Drawer.scss +163 -0
  1077. package/lib/components/Drawer/style/css.js +4 -0
  1078. package/lib/components/Drawer/style/index.d.ts +1 -0
  1079. package/lib/components/Drawer/style/index.js +4 -0
  1080. package/lib/components/Dropdown/Dropdown.d.ts +5 -0
  1081. package/lib/components/Dropdown/Dropdown.js +31 -0
  1082. package/lib/components/Dropdown/index.d.ts +3 -0
  1083. package/lib/components/Dropdown/index.js +35 -0
  1084. package/lib/components/Dropdown/interface.d.ts +8 -0
  1085. package/lib/components/Dropdown/interface.js +6 -0
  1086. package/lib/components/Dropdown/style/Dropdown.css +0 -0
  1087. package/lib/components/Dropdown/style/Dropdown.scss +2 -0
  1088. package/lib/components/Dropdown/style/css.js +5 -0
  1089. package/lib/components/Dropdown/style/index.d.ts +2 -0
  1090. package/lib/components/Dropdown/style/index.js +5 -0
  1091. package/lib/components/Empty/Empty.d.ts +6 -0
  1092. package/lib/components/Empty/Empty.js +77 -0
  1093. package/lib/components/Empty/index.d.ts +4 -0
  1094. package/lib/components/Empty/index.js +33 -0
  1095. package/lib/components/Empty/interface.d.ts +11 -0
  1096. package/lib/components/Empty/interface.js +6 -0
  1097. package/lib/components/Empty/style/Empty.css +1 -0
  1098. package/lib/components/Empty/style/Empty.scss +53 -0
  1099. package/lib/components/Empty/style/css.js +5 -0
  1100. package/lib/components/Empty/style/index.d.ts +2 -0
  1101. package/lib/components/Empty/style/index.js +5 -0
  1102. package/lib/components/Flex/Flex.d.ts +5 -0
  1103. package/lib/components/Flex/Flex.js +60 -0
  1104. package/lib/components/Flex/constants.d.ts +41 -0
  1105. package/lib/components/Flex/constants.js +51 -0
  1106. package/lib/components/Flex/index.d.ts +5 -0
  1107. package/lib/components/Flex/index.js +60 -0
  1108. package/lib/components/Flex/interface.d.ts +13 -0
  1109. package/lib/components/Flex/interface.js +6 -0
  1110. package/lib/components/Flex/style/Flex.css +1 -0
  1111. package/lib/components/Flex/style/Flex.scss +70 -0
  1112. package/lib/components/Flex/style/css.js +4 -0
  1113. package/lib/components/Flex/style/index.d.ts +1 -0
  1114. package/lib/components/Flex/style/index.js +4 -0
  1115. package/lib/components/Form/Form.d.ts +4 -0
  1116. package/lib/components/Form/Form.js +80 -0
  1117. package/lib/components/Form/FormItem.d.ts +4 -0
  1118. package/lib/components/Form/FormItem.js +193 -0
  1119. package/lib/components/Form/constants.d.ts +19 -0
  1120. package/lib/components/Form/constants.js +25 -0
  1121. package/lib/components/Form/context.d.ts +5 -0
  1122. package/lib/components/Form/context.js +25 -0
  1123. package/lib/components/Form/hooks/useForm.d.ts +3 -0
  1124. package/lib/components/Form/hooks/useForm.js +551 -0
  1125. package/lib/components/Form/hooks/useFormCore.d.ts +3 -0
  1126. package/lib/components/Form/hooks/useFormCore.js +355 -0
  1127. package/lib/components/Form/index.d.ts +10 -0
  1128. package/lib/components/Form/index.js +83 -0
  1129. package/lib/components/Form/interface.d.ts +166 -0
  1130. package/lib/components/Form/interface.js +6 -0
  1131. package/lib/components/Form/style/Form.css +1 -0
  1132. package/lib/components/Form/style/Form.scss +57 -0
  1133. package/lib/components/Form/style/css.js +4 -0
  1134. package/lib/components/Form/style/index.d.ts +1 -0
  1135. package/lib/components/Form/style/index.js +4 -0
  1136. package/lib/components/Grid/Col.d.ts +4 -0
  1137. package/lib/components/Grid/Col.js +93 -0
  1138. package/lib/components/Grid/Grid.d.ts +10 -0
  1139. package/lib/components/Grid/Grid.js +21 -0
  1140. package/lib/components/Grid/Row.d.ts +4 -0
  1141. package/lib/components/Grid/Row.js +50 -0
  1142. package/lib/components/Grid/constants.d.ts +48 -0
  1143. package/lib/components/Grid/constants.js +77 -0
  1144. package/lib/components/Grid/helper.d.ts +15 -0
  1145. package/lib/components/Grid/helper.js +94 -0
  1146. package/lib/components/Grid/index.d.ts +7 -0
  1147. package/lib/components/Grid/index.js +62 -0
  1148. package/lib/components/Grid/interface.d.ts +38 -0
  1149. package/lib/components/Grid/interface.js +6 -0
  1150. package/lib/components/Grid/style/Grid.css +1 -0
  1151. package/lib/components/Grid/style/Grid.scss +184 -0
  1152. package/lib/components/Grid/style/css.js +4 -0
  1153. package/lib/components/Grid/style/index.d.ts +1 -0
  1154. package/lib/components/Grid/style/index.js +4 -0
  1155. package/lib/components/Icons/Icons.d.ts +192 -0
  1156. package/lib/components/Icons/Icons.js +193 -0
  1157. package/lib/components/Icons/Illustrations.d.ts +18 -0
  1158. package/lib/components/Icons/Illustrations.js +881 -0
  1159. package/lib/components/Icons/Logo.d.ts +36 -0
  1160. package/lib/components/Icons/Logo.js +219 -0
  1161. package/lib/components/Icons/SVGs.d.ts +265 -0
  1162. package/lib/components/Icons/SVGs.js +1926 -0
  1163. package/lib/components/Icons/Wrapper.d.ts +6 -0
  1164. package/lib/components/Icons/Wrapper.js +109 -0
  1165. package/lib/components/Icons/index.d.ts +4 -0
  1166. package/lib/components/Icons/index.js +52 -0
  1167. package/lib/components/Icons/interface.d.ts +27 -0
  1168. package/lib/components/Icons/interface.js +6 -0
  1169. package/lib/components/Icons/style/Icons.css +1 -0
  1170. package/lib/components/Icons/style/Icons.scss +85 -0
  1171. package/lib/components/Icons/style/css.js +4 -0
  1172. package/lib/components/Icons/style/index.d.ts +1 -0
  1173. package/lib/components/Icons/style/index.js +4 -0
  1174. package/lib/components/Input/Amount/Amount.d.ts +6 -0
  1175. package/lib/components/Input/Amount/Amount.js +201 -0
  1176. package/lib/components/Input/Amount/helper.d.ts +35 -0
  1177. package/lib/components/Input/Amount/helper.js +102 -0
  1178. package/lib/components/Input/Amount/index.d.ts +3 -0
  1179. package/lib/components/Input/Amount/index.js +18 -0
  1180. package/lib/components/Input/Amount/style/Amount.css +1 -0
  1181. package/lib/components/Input/Amount/style/Amount.scss +89 -0
  1182. package/lib/components/Input/Amount/style/css.js +4 -0
  1183. package/lib/components/Input/Amount/style/index.d.ts +1 -0
  1184. package/lib/components/Input/Amount/style/index.js +4 -0
  1185. package/lib/components/Input/FieldShell/FieldShell.css +1 -0
  1186. package/lib/components/Input/FieldShell/FieldShell.d.ts +19 -0
  1187. package/lib/components/Input/FieldShell/FieldShell.js +85 -0
  1188. package/lib/components/Input/FieldShell/FieldShell.scss +62 -0
  1189. package/lib/components/Input/FieldShell/index.d.ts +3 -0
  1190. package/lib/components/Input/FieldShell/index.js +22 -0
  1191. package/lib/components/Input/Input/Input.css +1 -0
  1192. package/lib/components/Input/Input/Input.d.ts +3 -0
  1193. package/lib/components/Input/Input/Input.js +168 -0
  1194. package/lib/components/Input/Input/Input.scss +131 -0
  1195. package/lib/components/Input/Input/index.d.ts +2 -0
  1196. package/lib/components/Input/Input/index.js +22 -0
  1197. package/lib/components/Input/Mask/Mask.d.ts +5 -0
  1198. package/lib/components/Input/Mask/Mask.js +347 -0
  1199. package/lib/components/Input/Mask/index.d.ts +2 -0
  1200. package/lib/components/Input/Mask/index.js +22 -0
  1201. package/lib/components/Input/OTP/OTP.css +1 -0
  1202. package/lib/components/Input/OTP/OTP.d.ts +5 -0
  1203. package/lib/components/Input/OTP/OTP.js +157 -0
  1204. package/lib/components/Input/OTP/OTP.scss +75 -0
  1205. package/lib/components/Input/OTP/index.d.ts +2 -0
  1206. package/lib/components/Input/OTP/index.js +22 -0
  1207. package/lib/components/Input/Password/Password.d.ts +5 -0
  1208. package/lib/components/Input/Password/Password.js +131 -0
  1209. package/lib/components/Input/Password/index.d.ts +2 -0
  1210. package/lib/components/Input/Password/index.js +22 -0
  1211. package/lib/components/Input/Search/Search.d.ts +5 -0
  1212. package/lib/components/Input/Search/Search.js +154 -0
  1213. package/lib/components/Input/Search/index.d.ts +2 -0
  1214. package/lib/components/Input/Search/index.js +22 -0
  1215. package/lib/components/Input/TextArea/TextArea.css +1 -0
  1216. package/lib/components/Input/TextArea/TextArea.d.ts +5 -0
  1217. package/lib/components/Input/TextArea/TextArea.js +103 -0
  1218. package/lib/components/Input/TextArea/TextArea.scss +87 -0
  1219. package/lib/components/Input/TextArea/index.d.ts +2 -0
  1220. package/lib/components/Input/TextArea/index.js +22 -0
  1221. package/lib/components/Input/Trade/Trade.css +1 -0
  1222. package/lib/components/Input/Trade/Trade.d.ts +5 -0
  1223. package/lib/components/Input/Trade/Trade.js +139 -0
  1224. package/lib/components/Input/Trade/Trade.scss +184 -0
  1225. package/lib/components/Input/Trade/index.d.ts +2 -0
  1226. package/lib/components/Input/Trade/index.js +22 -0
  1227. package/lib/components/Input/constants.d.ts +15 -0
  1228. package/lib/components/Input/constants.js +22 -0
  1229. package/lib/components/Input/index.d.ts +4 -0
  1230. package/lib/components/Input/index.js +49 -0
  1231. package/lib/components/Input/interface.d.ts +153 -0
  1232. package/lib/components/Input/interface.js +6 -0
  1233. package/lib/components/Input/style/css.js +9 -0
  1234. package/lib/components/Input/style/index.d.ts +6 -0
  1235. package/lib/components/Input/style/index.js +9 -0
  1236. package/lib/components/Input/useAmountInput.d.ts +35 -0
  1237. package/lib/components/Input/useAmountInput.js +214 -0
  1238. package/lib/components/Input/useSyncRef.d.ts +2 -0
  1239. package/lib/components/Input/useSyncRef.js +19 -0
  1240. package/lib/components/Modal/Modal.d.ts +4 -0
  1241. package/lib/components/Modal/Modal.js +390 -0
  1242. package/lib/components/Modal/constants.d.ts +58 -0
  1243. package/lib/components/Modal/constants.js +62 -0
  1244. package/lib/components/Modal/index.d.ts +4 -0
  1245. package/lib/components/Modal/index.js +33 -0
  1246. package/lib/components/Modal/interface.d.ts +37 -0
  1247. package/lib/components/Modal/interface.js +6 -0
  1248. package/lib/components/Modal/style/Modal.css +1 -0
  1249. package/lib/components/Modal/style/Modal.scss +254 -0
  1250. package/lib/components/Modal/style/css.js +4 -0
  1251. package/lib/components/Modal/style/index.d.ts +1 -0
  1252. package/lib/components/Modal/style/index.js +4 -0
  1253. package/lib/components/Navigation/Nav.d.ts +5 -0
  1254. package/lib/components/Navigation/Nav.js +208 -0
  1255. package/lib/components/Navigation/Navigation.d.ts +5 -0
  1256. package/lib/components/Navigation/Navigation.js +309 -0
  1257. package/lib/components/Navigation/NavigationLogo.d.ts +7 -0
  1258. package/lib/components/Navigation/NavigationLogo.js +42 -0
  1259. package/lib/components/Navigation/index.d.ts +5 -0
  1260. package/lib/components/Navigation/index.js +41 -0
  1261. package/lib/components/Navigation/interface.d.ts +95 -0
  1262. package/lib/components/Navigation/interface.js +6 -0
  1263. package/lib/components/Navigation/style/Nav.css +1 -0
  1264. package/lib/components/Navigation/style/Nav.scss +174 -0
  1265. package/lib/components/Navigation/style/Navigation.css +1 -0
  1266. package/lib/components/Navigation/style/Navigation.scss +443 -0
  1267. package/lib/components/Navigation/style/css.js +5 -0
  1268. package/lib/components/Navigation/style/index.d.ts +2 -0
  1269. package/lib/components/Navigation/style/index.js +5 -0
  1270. package/lib/components/Notification/Notification.d.ts +6 -0
  1271. package/lib/components/Notification/Notification.js +122 -0
  1272. package/lib/components/Notification/NotificationStatic.d.ts +4 -0
  1273. package/lib/components/Notification/NotificationStatic.js +515 -0
  1274. package/lib/components/Notification/constants.d.ts +5 -0
  1275. package/lib/components/Notification/constants.js +13 -0
  1276. package/lib/components/Notification/index.d.ts +5 -0
  1277. package/lib/components/Notification/index.js +52 -0
  1278. package/lib/components/Notification/interface.d.ts +70 -0
  1279. package/lib/components/Notification/interface.js +13 -0
  1280. package/lib/components/Notification/style/Notification.css +1 -0
  1281. package/lib/components/Notification/style/Notification.scss +200 -0
  1282. package/lib/components/Notification/style/css.js +4 -0
  1283. package/lib/components/Notification/style/index.d.ts +1 -0
  1284. package/lib/components/Notification/style/index.js +4 -0
  1285. package/lib/components/Pagination/Pagination.d.ts +5 -0
  1286. package/lib/components/Pagination/Pagination.js +146 -0
  1287. package/lib/components/Pagination/constants.d.ts +53 -0
  1288. package/lib/components/Pagination/constants.js +63 -0
  1289. package/lib/components/Pagination/index.d.ts +6 -0
  1290. package/lib/components/Pagination/index.js +53 -0
  1291. package/lib/components/Pagination/interface.d.ts +54 -0
  1292. package/lib/components/Pagination/interface.js +6 -0
  1293. package/lib/components/Pagination/style/Pagination.css +1 -0
  1294. package/lib/components/Pagination/style/Pagination.scss +95 -0
  1295. package/lib/components/Pagination/style/css.js +4 -0
  1296. package/lib/components/Pagination/style/index.d.ts +1 -0
  1297. package/lib/components/Pagination/style/index.js +4 -0
  1298. package/lib/components/Pagination/usePagination.d.ts +3 -0
  1299. package/lib/components/Pagination/usePagination.js +161 -0
  1300. package/lib/components/Popconfirm/Popconfirm.d.ts +6 -0
  1301. package/lib/components/Popconfirm/Popconfirm.js +141 -0
  1302. package/lib/components/Popconfirm/constants.d.ts +72 -0
  1303. package/lib/components/Popconfirm/constants.js +78 -0
  1304. package/lib/components/Popconfirm/index.d.ts +4 -0
  1305. package/lib/components/Popconfirm/index.js +33 -0
  1306. package/lib/components/Popconfirm/interface.d.ts +40 -0
  1307. package/lib/components/Popconfirm/interface.js +6 -0
  1308. package/lib/components/Popconfirm/style/Popconfirm.css +1 -0
  1309. package/lib/components/Popconfirm/style/Popconfirm.scss +264 -0
  1310. package/lib/components/Popconfirm/style/css.js +7 -0
  1311. package/lib/components/Popconfirm/style/index.d.ts +4 -0
  1312. package/lib/components/Popconfirm/style/index.js +7 -0
  1313. package/lib/components/Portal/Portal.d.ts +3 -0
  1314. package/lib/components/Portal/Portal.js +61 -0
  1315. package/lib/components/Portal/index.d.ts +4 -0
  1316. package/lib/components/Portal/index.js +33 -0
  1317. package/lib/components/Portal/interface.d.ts +7 -0
  1318. package/lib/components/Portal/interface.js +6 -0
  1319. package/lib/components/ProForm/ProForm.d.ts +3 -0
  1320. package/lib/components/ProForm/ProForm.js +264 -0
  1321. package/lib/components/ProForm/ProFormDependency.d.ts +3 -0
  1322. package/lib/components/ProForm/ProFormDependency.js +75 -0
  1323. package/lib/components/ProForm/ProFormGroup.d.ts +3 -0
  1324. package/lib/components/ProForm/ProFormGroup.js +85 -0
  1325. package/lib/components/ProForm/ProFormList.d.ts +3 -0
  1326. package/lib/components/ProForm/ProFormList.js +260 -0
  1327. package/lib/components/ProForm/Submitter.d.ts +6 -0
  1328. package/lib/components/ProForm/Submitter.js +74 -0
  1329. package/lib/components/ProForm/constants.d.ts +18 -0
  1330. package/lib/components/ProForm/constants.js +29 -0
  1331. package/lib/components/ProForm/context.d.ts +5 -0
  1332. package/lib/components/ProForm/context.js +32 -0
  1333. package/lib/components/ProForm/fields/ProFormCheckbox.d.ts +3 -0
  1334. package/lib/components/ProForm/fields/ProFormCheckbox.js +17 -0
  1335. package/lib/components/ProForm/fields/ProFormCheckboxGroup.d.ts +3 -0
  1336. package/lib/components/ProForm/fields/ProFormCheckboxGroup.js +18 -0
  1337. package/lib/components/ProForm/fields/ProFormDatePicker.d.ts +3 -0
  1338. package/lib/components/ProForm/fields/ProFormDatePicker.js +29 -0
  1339. package/lib/components/ProForm/fields/ProFormFieldSet.d.ts +4 -0
  1340. package/lib/components/ProForm/fields/ProFormFieldSet.js +72 -0
  1341. package/lib/components/ProForm/fields/ProFormPassword.d.ts +3 -0
  1342. package/lib/components/ProForm/fields/ProFormPassword.js +17 -0
  1343. package/lib/components/ProForm/fields/ProFormRadioGroup.d.ts +3 -0
  1344. package/lib/components/ProForm/fields/ProFormRadioGroup.js +16 -0
  1345. package/lib/components/ProForm/fields/ProFormSelect.d.ts +3 -0
  1346. package/lib/components/ProForm/fields/ProFormSelect.js +46 -0
  1347. package/lib/components/ProForm/fields/ProFormSlider.d.ts +3 -0
  1348. package/lib/components/ProForm/fields/ProFormSlider.js +16 -0
  1349. package/lib/components/ProForm/fields/ProFormSwitch.d.ts +3 -0
  1350. package/lib/components/ProForm/fields/ProFormSwitch.js +17 -0
  1351. package/lib/components/ProForm/fields/ProFormText.d.ts +3 -0
  1352. package/lib/components/ProForm/fields/ProFormText.js +16 -0
  1353. package/lib/components/ProForm/fields/ProFormTextArea.d.ts +3 -0
  1354. package/lib/components/ProForm/fields/ProFormTextArea.js +16 -0
  1355. package/lib/components/ProForm/fields/ProFormUpload.d.ts +3 -0
  1356. package/lib/components/ProForm/fields/ProFormUpload.js +32 -0
  1357. package/lib/components/ProForm/fields/createProFormField.d.ts +4 -0
  1358. package/lib/components/ProForm/fields/createProFormField.js +237 -0
  1359. package/lib/components/ProForm/fields/index.d.ts +13 -0
  1360. package/lib/components/ProForm/fields/index.js +97 -0
  1361. package/lib/components/ProForm/hooks/useFieldRequest.d.ts +7 -0
  1362. package/lib/components/ProForm/hooks/useFieldRequest.js +98 -0
  1363. package/lib/components/ProForm/index.d.ts +30 -0
  1364. package/lib/components/ProForm/index.js +187 -0
  1365. package/lib/components/ProForm/interface.d.ts +240 -0
  1366. package/lib/components/ProForm/interface.js +6 -0
  1367. package/lib/components/ProForm/layouts/DrawerForm.d.ts +3 -0
  1368. package/lib/components/ProForm/layouts/DrawerForm.js +80 -0
  1369. package/lib/components/ProForm/layouts/ModalForm.d.ts +3 -0
  1370. package/lib/components/ProForm/layouts/ModalForm.js +81 -0
  1371. package/lib/components/ProForm/layouts/QueryFilter.d.ts +4 -0
  1372. package/lib/components/ProForm/layouts/QueryFilter.js +167 -0
  1373. package/lib/components/ProForm/layouts/index.d.ts +4 -0
  1374. package/lib/components/ProForm/layouts/index.js +34 -0
  1375. package/lib/components/ProForm/layouts/useOverlayForm.d.ts +17 -0
  1376. package/lib/components/ProForm/layouts/useOverlayForm.js +117 -0
  1377. package/lib/components/ProForm/style/ProForm.css +1 -0
  1378. package/lib/components/ProForm/style/ProForm.scss +118 -0
  1379. package/lib/components/ProForm/style/css.js +4 -0
  1380. package/lib/components/ProForm/style/index.d.ts +1 -0
  1381. package/lib/components/ProForm/style/index.js +4 -0
  1382. package/lib/components/ProForm/utils.d.ts +22 -0
  1383. package/lib/components/ProForm/utils.js +228 -0
  1384. package/lib/components/Progress/Progress.d.ts +6 -0
  1385. package/lib/components/Progress/Progress.js +103 -0
  1386. package/lib/components/Progress/constants.d.ts +26 -0
  1387. package/lib/components/Progress/constants.js +38 -0
  1388. package/lib/components/Progress/index.d.ts +5 -0
  1389. package/lib/components/Progress/index.js +45 -0
  1390. package/lib/components/Progress/interface.d.ts +26 -0
  1391. package/lib/components/Progress/interface.js +6 -0
  1392. package/lib/components/Progress/style/Progress.css +1 -0
  1393. package/lib/components/Progress/style/Progress.scss +120 -0
  1394. package/lib/components/Progress/style/css.js +4 -0
  1395. package/lib/components/Progress/style/index.d.ts +1 -0
  1396. package/lib/components/Progress/style/index.js +4 -0
  1397. package/lib/components/Radio/BaseRadio.d.ts +16 -0
  1398. package/lib/components/Radio/BaseRadio.js +65 -0
  1399. package/lib/components/Radio/Radio.d.ts +6 -0
  1400. package/lib/components/Radio/Radio.js +189 -0
  1401. package/lib/components/Radio/RadioGroup.d.ts +5 -0
  1402. package/lib/components/Radio/RadioGroup.js +110 -0
  1403. package/lib/components/Radio/RadioGroupContext.d.ts +22 -0
  1404. package/lib/components/Radio/RadioGroupContext.js +13 -0
  1405. package/lib/components/Radio/constants.d.ts +36 -0
  1406. package/lib/components/Radio/constants.js +69 -0
  1407. package/lib/components/Radio/index.d.ts +5 -0
  1408. package/lib/components/Radio/index.js +41 -0
  1409. package/lib/components/Radio/interface.d.ts +115 -0
  1410. package/lib/components/Radio/interface.js +6 -0
  1411. package/lib/components/Radio/style/Radio.css +1 -0
  1412. package/lib/components/Radio/style/Radio.scss +431 -0
  1413. package/lib/components/Radio/style/css.js +5 -0
  1414. package/lib/components/Radio/style/index.d.ts +2 -0
  1415. package/lib/components/Radio/style/index.js +5 -0
  1416. package/lib/components/ResizeObserver/Collection.d.ts +19 -0
  1417. package/lib/components/ResizeObserver/Collection.js +51 -0
  1418. package/lib/components/ResizeObserver/ResizeObserver.d.ts +7 -0
  1419. package/lib/components/ResizeObserver/ResizeObserver.js +41 -0
  1420. package/lib/components/ResizeObserver/SingleObserver/index.d.ts +7 -0
  1421. package/lib/components/ResizeObserver/SingleObserver/index.js +48 -0
  1422. package/lib/components/ResizeObserver/index.d.ts +7 -0
  1423. package/lib/components/ResizeObserver/index.js +30 -0
  1424. package/lib/components/ResizeObserver/interface.d.ts +16 -0
  1425. package/lib/components/ResizeObserver/interface.js +6 -0
  1426. package/lib/components/ResizeObserver/useResizeObserver.d.ts +2 -0
  1427. package/lib/components/ResizeObserver/useResizeObserver.js +79 -0
  1428. package/lib/components/ResizeObserver/utils/observerUtil.d.ts +7 -0
  1429. package/lib/components/ResizeObserver/utils/observerUtil.js +47 -0
  1430. package/lib/components/ResizeObserver/utils/reactUtil.d.ts +19 -0
  1431. package/lib/components/ResizeObserver/utils/reactUtil.js +91 -0
  1432. package/lib/components/Segment/Segment.d.ts +6 -0
  1433. package/lib/components/Segment/Segment.js +110 -0
  1434. package/lib/components/Segment/index.d.ts +4 -0
  1435. package/lib/components/Segment/index.js +33 -0
  1436. package/lib/components/Segment/interface.d.ts +23 -0
  1437. package/lib/components/Segment/interface.js +6 -0
  1438. package/lib/components/Segment/style/Segment.css +1 -0
  1439. package/lib/components/Segment/style/Segment.scss +80 -0
  1440. package/lib/components/Segment/style/css.js +4 -0
  1441. package/lib/components/Segment/style/index.d.ts +1 -0
  1442. package/lib/components/Segment/style/index.js +4 -0
  1443. package/lib/components/Select/Select.d.ts +6 -0
  1444. package/lib/components/Select/Select.js +530 -0
  1445. package/lib/components/Select/SelectFieldShell.d.ts +22 -0
  1446. package/lib/components/Select/SelectFieldShell.js +79 -0
  1447. package/lib/components/Select/SelectOptionContent.d.ts +9 -0
  1448. package/lib/components/Select/SelectOptionContent.js +42 -0
  1449. package/lib/components/Select/SelectSearchControl.d.ts +12 -0
  1450. package/lib/components/Select/SelectSearchControl.js +44 -0
  1451. package/lib/components/Select/SelectValueContent.d.ts +18 -0
  1452. package/lib/components/Select/SelectValueContent.js +105 -0
  1453. package/lib/components/Select/constants.d.ts +14 -0
  1454. package/lib/components/Select/constants.js +26 -0
  1455. package/lib/components/Select/index.d.ts +4 -0
  1456. package/lib/components/Select/index.js +49 -0
  1457. package/lib/components/Select/interface.d.ts +83 -0
  1458. package/lib/components/Select/interface.js +10 -0
  1459. package/lib/components/Select/style/Select.css +1 -0
  1460. package/lib/components/Select/style/Select.scss +480 -0
  1461. package/lib/components/Select/style/css.js +6 -0
  1462. package/lib/components/Select/style/index.d.ts +3 -0
  1463. package/lib/components/Select/style/index.js +6 -0
  1464. package/lib/components/Select/utils.d.ts +21 -0
  1465. package/lib/components/Select/utils.js +161 -0
  1466. package/lib/components/Skeleton/Skeleton.d.ts +6 -0
  1467. package/lib/components/Skeleton/Skeleton.js +58 -0
  1468. package/lib/components/Skeleton/index.d.ts +4 -0
  1469. package/lib/components/Skeleton/index.js +33 -0
  1470. package/lib/components/Skeleton/interface.d.ts +19 -0
  1471. package/lib/components/Skeleton/interface.js +6 -0
  1472. package/lib/components/Skeleton/style/Skeleton.css +1 -0
  1473. package/lib/components/Skeleton/style/Skeleton.scss +47 -0
  1474. package/lib/components/Skeleton/style/css.js +4 -0
  1475. package/lib/components/Skeleton/style/index.d.ts +1 -0
  1476. package/lib/components/Skeleton/style/index.js +4 -0
  1477. package/lib/components/Slider/Slider.d.ts +6 -0
  1478. package/lib/components/Slider/Slider.js +126 -0
  1479. package/lib/components/Slider/index.d.ts +4 -0
  1480. package/lib/components/Slider/index.js +33 -0
  1481. package/lib/components/Slider/interface.d.ts +39 -0
  1482. package/lib/components/Slider/interface.js +6 -0
  1483. package/lib/components/Slider/style/Slider.css +1 -0
  1484. package/lib/components/Slider/style/Slider.scss +182 -0
  1485. package/lib/components/Slider/style/css.js +4 -0
  1486. package/lib/components/Slider/style/index.d.ts +1 -0
  1487. package/lib/components/Slider/style/index.js +4 -0
  1488. package/lib/components/Space/Space.d.ts +5 -0
  1489. package/lib/components/Space/Space.js +88 -0
  1490. package/lib/components/Space/constants.d.ts +33 -0
  1491. package/lib/components/Space/constants.js +43 -0
  1492. package/lib/components/Space/index.d.ts +5 -0
  1493. package/lib/components/Space/index.js +53 -0
  1494. package/lib/components/Space/interface.d.ts +12 -0
  1495. package/lib/components/Space/interface.js +6 -0
  1496. package/lib/components/Space/style/Space.css +1 -0
  1497. package/lib/components/Space/style/Space.scss +40 -0
  1498. package/lib/components/Space/style/css.js +4 -0
  1499. package/lib/components/Space/style/index.d.ts +1 -0
  1500. package/lib/components/Space/style/index.js +4 -0
  1501. package/lib/components/Spinner/Spinner.d.ts +6 -0
  1502. package/lib/components/Spinner/Spinner.js +91 -0
  1503. package/lib/components/Spinner/index.d.ts +4 -0
  1504. package/lib/components/Spinner/index.js +33 -0
  1505. package/lib/components/Spinner/interface.d.ts +14 -0
  1506. package/lib/components/Spinner/interface.js +8 -0
  1507. package/lib/components/Spinner/style/Spinner.css +1 -0
  1508. package/lib/components/Spinner/style/Spinner.scss +90 -0
  1509. package/lib/components/Spinner/style/css.js +4 -0
  1510. package/lib/components/Spinner/style/index.d.ts +1 -0
  1511. package/lib/components/Spinner/style/index.js +4 -0
  1512. package/lib/components/Step/Step.d.ts +5 -0
  1513. package/lib/components/Step/Step.js +126 -0
  1514. package/lib/components/Step/constants.d.ts +59 -0
  1515. package/lib/components/Step/constants.js +72 -0
  1516. package/lib/components/Step/index.d.ts +4 -0
  1517. package/lib/components/Step/index.js +33 -0
  1518. package/lib/components/Step/interface.d.ts +22 -0
  1519. package/lib/components/Step/interface.js +6 -0
  1520. package/lib/components/Step/style/Step.css +1 -0
  1521. package/lib/components/Step/style/Step.scss +91 -0
  1522. package/lib/components/Step/style/css.js +4 -0
  1523. package/lib/components/Step/style/index.d.ts +1 -0
  1524. package/lib/components/Step/style/index.js +4 -0
  1525. package/lib/components/Switch/Switch.d.ts +6 -0
  1526. package/lib/components/Switch/Switch.js +103 -0
  1527. package/lib/components/Switch/constants.d.ts +11 -0
  1528. package/lib/components/Switch/constants.js +18 -0
  1529. package/lib/components/Switch/index.d.ts +5 -0
  1530. package/lib/components/Switch/index.js +45 -0
  1531. package/lib/components/Switch/interface.d.ts +26 -0
  1532. package/lib/components/Switch/interface.js +6 -0
  1533. package/lib/components/Switch/style/Switch.css +1 -0
  1534. package/lib/components/Switch/style/Switch.scss +126 -0
  1535. package/lib/components/Switch/style/css.js +5 -0
  1536. package/lib/components/Switch/style/index.d.ts +2 -0
  1537. package/lib/components/Switch/style/index.js +5 -0
  1538. package/lib/components/Table/Table.d.ts +10 -0
  1539. package/lib/components/Table/Table.js +173 -0
  1540. package/lib/components/Table/VirtualTable.d.ts +9 -0
  1541. package/lib/components/Table/VirtualTable.js +175 -0
  1542. package/lib/components/Table/constants.d.ts +4 -0
  1543. package/lib/components/Table/constants.js +11 -0
  1544. package/lib/components/Table/core/useTableColumns.d.ts +34 -0
  1545. package/lib/components/Table/core/useTableColumns.js +198 -0
  1546. package/lib/components/Table/core/useTableDataPipeline.d.ts +50 -0
  1547. package/lib/components/Table/core/useTableDataPipeline.js +269 -0
  1548. package/lib/components/Table/core/useTableExpand.d.ts +9 -0
  1549. package/lib/components/Table/core/useTableExpand.js +45 -0
  1550. package/lib/components/Table/core/useTableSelection.d.ts +17 -0
  1551. package/lib/components/Table/core/useTableSelection.js +151 -0
  1552. package/lib/components/Table/features/ExpandTrigger.d.ts +4 -0
  1553. package/lib/components/Table/features/ExpandTrigger.js +30 -0
  1554. package/lib/components/Table/features/SelectionColumn.d.ts +11 -0
  1555. package/lib/components/Table/features/SelectionColumn.js +47 -0
  1556. package/lib/components/Table/features/SortTrigger.d.ts +7 -0
  1557. package/lib/components/Table/features/SortTrigger.js +32 -0
  1558. package/lib/components/Table/index.d.ts +6 -0
  1559. package/lib/components/Table/index.js +47 -0
  1560. package/lib/components/Table/interface.d.ts +179 -0
  1561. package/lib/components/Table/interface.js +6 -0
  1562. package/lib/components/Table/internal/index.d.ts +3 -0
  1563. package/lib/components/Table/internal/index.js +52 -0
  1564. package/lib/components/Table/internal/kernel/Body/BodyRow.d.ts +37 -0
  1565. package/lib/components/Table/internal/kernel/Body/BodyRow.js +186 -0
  1566. package/lib/components/Table/internal/kernel/Body/ExpandedRow.d.ts +15 -0
  1567. package/lib/components/Table/internal/kernel/Body/ExpandedRow.js +67 -0
  1568. package/lib/components/Table/internal/kernel/Body/MeasureCell.d.ts +8 -0
  1569. package/lib/components/Table/internal/kernel/Body/MeasureCell.js +50 -0
  1570. package/lib/components/Table/internal/kernel/Body/MeasureRow.d.ts +10 -0
  1571. package/lib/components/Table/internal/kernel/Body/MeasureRow.js +64 -0
  1572. package/lib/components/Table/internal/kernel/Body/index.d.ts +9 -0
  1573. package/lib/components/Table/internal/kernel/Body/index.js +135 -0
  1574. package/lib/components/Table/internal/kernel/Cell/index.d.ts +39 -0
  1575. package/lib/components/Table/internal/kernel/Cell/index.js +190 -0
  1576. package/lib/components/Table/internal/kernel/Cell/useCellRender.d.ts +3 -0
  1577. package/lib/components/Table/internal/kernel/Cell/useCellRender.js +74 -0
  1578. package/lib/components/Table/internal/kernel/Cell/useHoverState.d.ts +2 -0
  1579. package/lib/components/Table/internal/kernel/Cell/useHoverState.js +23 -0
  1580. package/lib/components/Table/internal/kernel/ColGroup.d.ts +8 -0
  1581. package/lib/components/Table/internal/kernel/ColGroup.js +68 -0
  1582. package/lib/components/Table/internal/kernel/FixedHolder/index.d.ts +27 -0
  1583. package/lib/components/Table/internal/kernel/FixedHolder/index.js +193 -0
  1584. package/lib/components/Table/internal/kernel/Footer/Cell.d.ts +11 -0
  1585. package/lib/components/Table/internal/kernel/Footer/Cell.js +60 -0
  1586. package/lib/components/Table/internal/kernel/Footer/Row.d.ts +8 -0
  1587. package/lib/components/Table/internal/kernel/Footer/Row.js +31 -0
  1588. package/lib/components/Table/internal/kernel/Footer/Summary.d.ts +14 -0
  1589. package/lib/components/Table/internal/kernel/Footer/Summary.js +20 -0
  1590. package/lib/components/Table/internal/kernel/Footer/SummaryContext.d.ts +11 -0
  1591. package/lib/components/Table/internal/kernel/Footer/SummaryContext.js +13 -0
  1592. package/lib/components/Table/internal/kernel/Footer/index.d.ts +16 -0
  1593. package/lib/components/Table/internal/kernel/Footer/index.js +47 -0
  1594. package/lib/components/Table/internal/kernel/Header/Header.d.ts +9 -0
  1595. package/lib/components/Table/internal/kernel/Header/Header.js +120 -0
  1596. package/lib/components/Table/internal/kernel/Header/HeaderRow.d.ts +18 -0
  1597. package/lib/components/Table/internal/kernel/Header/HeaderRow.js +71 -0
  1598. package/lib/components/Table/internal/kernel/Panel/index.d.ts +7 -0
  1599. package/lib/components/Table/internal/kernel/Panel/index.js +25 -0
  1600. package/lib/components/Table/internal/kernel/Table.d.ts +126 -0
  1601. package/lib/components/Table/internal/kernel/Table.js +701 -0
  1602. package/lib/components/Table/internal/kernel/VirtualTable/BodyGrid.d.ts +13 -0
  1603. package/lib/components/Table/internal/kernel/VirtualTable/BodyGrid.js +299 -0
  1604. package/lib/components/Table/internal/kernel/VirtualTable/BodyLine.d.ts +14 -0
  1605. package/lib/components/Table/internal/kernel/VirtualTable/BodyLine.js +125 -0
  1606. package/lib/components/Table/internal/kernel/VirtualTable/VirtualCell.d.ts +26 -0
  1607. package/lib/components/Table/internal/kernel/VirtualTable/VirtualCell.js +117 -0
  1608. package/lib/components/Table/internal/kernel/VirtualTable/context.d.ts +13 -0
  1609. package/lib/components/Table/internal/kernel/VirtualTable/context.js +12 -0
  1610. package/lib/components/Table/internal/kernel/VirtualTable/index.d.ts +17 -0
  1611. package/lib/components/Table/internal/kernel/VirtualTable/index.js +101 -0
  1612. package/lib/components/Table/internal/kernel/constant.d.ts +2 -0
  1613. package/lib/components/Table/internal/kernel/constant.js +10 -0
  1614. package/lib/components/Table/internal/kernel/context/PerfContext.d.ts +6 -0
  1615. package/lib/components/Table/internal/kernel/context/PerfContext.js +18 -0
  1616. package/lib/components/Table/internal/kernel/context/TableContext.d.ts +51 -0
  1617. package/lib/components/Table/internal/kernel/context/TableContext.js +16 -0
  1618. package/lib/components/Table/internal/kernel/hooks/useColumns/index.d.ts +31 -0
  1619. package/lib/components/Table/internal/kernel/hooks/useColumns/index.js +223 -0
  1620. package/lib/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.d.ts +5 -0
  1621. package/lib/components/Table/internal/kernel/hooks/useColumns/useWidthColumns.js +79 -0
  1622. package/lib/components/Table/internal/kernel/hooks/useExpand.d.ts +10 -0
  1623. package/lib/components/Table/internal/kernel/hooks/useExpand.js +95 -0
  1624. package/lib/components/Table/internal/kernel/hooks/useFixedInfo.d.ts +2 -0
  1625. package/lib/components/Table/internal/kernel/hooks/useFixedInfo.js +29 -0
  1626. package/lib/components/Table/internal/kernel/hooks/useFlattenRecords.d.ts +19 -0
  1627. package/lib/components/Table/internal/kernel/hooks/useFlattenRecords.js +64 -0
  1628. package/lib/components/Table/internal/kernel/hooks/useFrame.d.ts +7 -0
  1629. package/lib/components/Table/internal/kernel/hooks/useFrame.js +72 -0
  1630. package/lib/components/Table/internal/kernel/hooks/useHover.d.ts +2 -0
  1631. package/lib/components/Table/internal/kernel/hooks/useHover.js +30 -0
  1632. package/lib/components/Table/internal/kernel/hooks/useRenderTimes.d.ts +5 -0
  1633. package/lib/components/Table/internal/kernel/hooks/useRenderTimes.js +51 -0
  1634. package/lib/components/Table/internal/kernel/hooks/useRowInfo.d.ts +11 -0
  1635. package/lib/components/Table/internal/kernel/hooks/useRowInfo.js +70 -0
  1636. package/lib/components/Table/internal/kernel/hooks/useSticky.d.ts +10 -0
  1637. package/lib/components/Table/internal/kernel/hooks/useSticky.js +44 -0
  1638. package/lib/components/Table/internal/kernel/hooks/useStickyOffsets.d.ts +6 -0
  1639. package/lib/components/Table/internal/kernel/hooks/useStickyOffsets.js +38 -0
  1640. package/lib/components/Table/internal/kernel/index.d.ts +12 -0
  1641. package/lib/components/Table/internal/kernel/index.js +74 -0
  1642. package/lib/components/Table/internal/kernel/interface.d.ts +202 -0
  1643. package/lib/components/Table/internal/kernel/interface.js +6 -0
  1644. package/lib/components/Table/internal/kernel/namePathType.d.ts +13 -0
  1645. package/lib/components/Table/internal/kernel/namePathType.js +6 -0
  1646. package/lib/components/Table/internal/kernel/selector-context/Immutable.d.ts +10 -0
  1647. package/lib/components/Table/internal/kernel/selector-context/Immutable.js +82 -0
  1648. package/lib/components/Table/internal/kernel/selector-context/context.d.ts +26 -0
  1649. package/lib/components/Table/internal/kernel/selector-context/context.js +93 -0
  1650. package/lib/components/Table/internal/kernel/selector-context/index.d.ts +7 -0
  1651. package/lib/components/Table/internal/kernel/selector-context/index.js +34 -0
  1652. package/lib/components/Table/internal/kernel/selector-context/isEqual.d.ts +5 -0
  1653. package/lib/components/Table/internal/kernel/selector-context/isEqual.js +55 -0
  1654. package/lib/components/Table/internal/kernel/stickyScrollBar.d.ts +12 -0
  1655. package/lib/components/Table/internal/kernel/stickyScrollBar.js +203 -0
  1656. package/lib/components/Table/internal/kernel/sugar/Column.d.ts +10 -0
  1657. package/lib/components/Table/internal/kernel/sugar/Column.js +17 -0
  1658. package/lib/components/Table/internal/kernel/sugar/ColumnGroup.d.ts +12 -0
  1659. package/lib/components/Table/internal/kernel/sugar/ColumnGroup.js +17 -0
  1660. package/lib/components/Table/internal/kernel/utils/dom/canUseDom.d.ts +1 -0
  1661. package/lib/components/Table/internal/kernel/utils/dom/canUseDom.js +10 -0
  1662. package/lib/components/Table/internal/kernel/utils/dom/isVisible.d.ts +2 -0
  1663. package/lib/components/Table/internal/kernel/utils/dom/isVisible.js +34 -0
  1664. package/lib/components/Table/internal/kernel/utils/expandUtil.d.ts +4 -0
  1665. package/lib/components/Table/internal/kernel/utils/expandUtil.js +60 -0
  1666. package/lib/components/Table/internal/kernel/utils/fixUtil.d.ts +21 -0
  1667. package/lib/components/Table/internal/kernel/utils/fixUtil.js +70 -0
  1668. package/lib/components/Table/internal/kernel/utils/get.d.ts +1 -0
  1669. package/lib/components/Table/internal/kernel/utils/get.js +17 -0
  1670. package/lib/components/Table/internal/kernel/utils/getScrollBarSize.d.ts +7 -0
  1671. package/lib/components/Table/internal/kernel/utils/getScrollBarSize.js +45 -0
  1672. package/lib/components/Table/internal/kernel/utils/legacyUtil.d.ts +5 -0
  1673. package/lib/components/Table/internal/kernel/utils/legacyUtil.js +40 -0
  1674. package/lib/components/Table/internal/kernel/utils/offsetUtil.d.ts +4 -0
  1675. package/lib/components/Table/internal/kernel/utils/offsetUtil.js +21 -0
  1676. package/lib/components/Table/internal/kernel/utils/pickAttrs.d.ts +6 -0
  1677. package/lib/components/Table/internal/kernel/utils/pickAttrs.js +39 -0
  1678. package/lib/components/Table/internal/kernel/utils/useMemo.d.ts +1 -0
  1679. package/lib/components/Table/internal/kernel/utils/useMemo.js +19 -0
  1680. package/lib/components/Table/internal/kernel/utils/valueUtil.d.ts +8 -0
  1681. package/lib/components/Table/internal/kernel/utils/valueUtil.js +38 -0
  1682. package/lib/components/Table/internal/kernel/utils/warning.d.ts +4 -0
  1683. package/lib/components/Table/internal/kernel/utils/warning.js +26 -0
  1684. package/lib/components/Table/renderers/BodyCell.d.ts +15 -0
  1685. package/lib/components/Table/renderers/BodyCell.js +47 -0
  1686. package/lib/components/Table/renderers/CellContent.d.ts +4 -0
  1687. package/lib/components/Table/renderers/CellContent.js +32 -0
  1688. package/lib/components/Table/renderers/EmptyState.d.ts +4 -0
  1689. package/lib/components/Table/renderers/EmptyState.js +21 -0
  1690. package/lib/components/Table/renderers/ExpandedRowContainer.d.ts +4 -0
  1691. package/lib/components/Table/renderers/ExpandedRowContainer.js +16 -0
  1692. package/lib/components/Table/renderers/HeaderCell.d.ts +7 -0
  1693. package/lib/components/Table/renderers/HeaderCell.js +28 -0
  1694. package/lib/components/Table/style/Table.css +1 -0
  1695. package/lib/components/Table/style/Table.scss +376 -0
  1696. package/lib/components/Table/style/css.js +12 -0
  1697. package/lib/components/Table/style/index.d.ts +9 -0
  1698. package/lib/components/Table/style/index.js +12 -0
  1699. package/lib/components/Tabs/Tabs.d.ts +6 -0
  1700. package/lib/components/Tabs/Tabs.js +121 -0
  1701. package/lib/components/Tabs/index.d.ts +4 -0
  1702. package/lib/components/Tabs/index.js +33 -0
  1703. package/lib/components/Tabs/interface.d.ts +27 -0
  1704. package/lib/components/Tabs/interface.js +6 -0
  1705. package/lib/components/Tabs/style/Tabs.css +1 -0
  1706. package/lib/components/Tabs/style/Tabs.scss +100 -0
  1707. package/lib/components/Tabs/style/css.js +4 -0
  1708. package/lib/components/Tabs/style/index.d.ts +1 -0
  1709. package/lib/components/Tabs/style/index.js +4 -0
  1710. package/lib/components/Tag/Tag.d.ts +6 -0
  1711. package/lib/components/Tag/Tag.js +89 -0
  1712. package/lib/components/Tag/constants.d.ts +18 -0
  1713. package/lib/components/Tag/constants.js +34 -0
  1714. package/lib/components/Tag/index.d.ts +5 -0
  1715. package/lib/components/Tag/index.js +45 -0
  1716. package/lib/components/Tag/interface.d.ts +15 -0
  1717. package/lib/components/Tag/interface.js +6 -0
  1718. package/lib/components/Tag/style/Tag.css +1 -0
  1719. package/lib/components/Tag/style/Tag.scss +103 -0
  1720. package/lib/components/Tag/style/css.js +4 -0
  1721. package/lib/components/Tag/style/index.d.ts +1 -0
  1722. package/lib/components/Tag/style/index.js +4 -0
  1723. package/lib/components/Tooltip/Tooltip.d.ts +6 -0
  1724. package/lib/components/Tooltip/Tooltip.js +71 -0
  1725. package/lib/components/Tooltip/index.d.ts +4 -0
  1726. package/lib/components/Tooltip/index.js +33 -0
  1727. package/lib/components/Tooltip/interface.d.ts +20 -0
  1728. package/lib/components/Tooltip/interface.js +6 -0
  1729. package/lib/components/Tooltip/style/Tooltip.css +1 -0
  1730. package/lib/components/Tooltip/style/Tooltip.scss +95 -0
  1731. package/lib/components/Tooltip/style/css.js +4 -0
  1732. package/lib/components/Tooltip/style/index.d.ts +1 -0
  1733. package/lib/components/Tooltip/style/index.js +4 -0
  1734. package/lib/components/Tour/Tour.d.ts +3 -0
  1735. package/lib/components/Tour/Tour.js +250 -0
  1736. package/lib/components/Tour/index.d.ts +4 -0
  1737. package/lib/components/Tour/index.js +33 -0
  1738. package/lib/components/Tour/interface.d.ts +46 -0
  1739. package/lib/components/Tour/interface.js +6 -0
  1740. package/lib/components/Trigger/Trigger.d.ts +5 -0
  1741. package/lib/components/Trigger/Trigger.js +161 -0
  1742. package/lib/components/Trigger/index.d.ts +3 -0
  1743. package/lib/components/Trigger/index.js +35 -0
  1744. package/lib/components/Trigger/interface.d.ts +52 -0
  1745. package/lib/components/Trigger/interface.js +6 -0
  1746. package/lib/components/Trigger/style/Trigger.css +1 -0
  1747. package/lib/components/Trigger/style/Trigger.scss +18 -0
  1748. package/lib/components/Trigger/style/css.js +4 -0
  1749. package/lib/components/Trigger/style/index.d.ts +1 -0
  1750. package/lib/components/Trigger/style/index.js +4 -0
  1751. package/lib/components/Typography/Typography.d.ts +17 -0
  1752. package/lib/components/Typography/Typography.js +207 -0
  1753. package/lib/components/Typography/constants.d.ts +33 -0
  1754. package/lib/components/Typography/constants.js +15 -0
  1755. package/lib/components/Typography/index.d.ts +4 -0
  1756. package/lib/components/Typography/index.js +79 -0
  1757. package/lib/components/Typography/interface.d.ts +72 -0
  1758. package/lib/components/Typography/interface.js +28 -0
  1759. package/lib/components/Typography/render.d.ts +328 -0
  1760. package/lib/components/Typography/render.js +116 -0
  1761. package/lib/components/Typography/style/Typography.css +1 -0
  1762. package/lib/components/Typography/style/Typography.scss +132 -0
  1763. package/lib/components/Typography/style/css.js +6 -0
  1764. package/lib/components/Typography/style/index.d.ts +3 -0
  1765. package/lib/components/Typography/style/index.js +6 -0
  1766. package/lib/components/Typography/useTypographyEnhancements.d.ts +43 -0
  1767. package/lib/components/Typography/useTypographyEnhancements.js +117 -0
  1768. package/lib/components/Typography/utils.d.ts +17 -0
  1769. package/lib/components/Typography/utils.js +105 -0
  1770. package/lib/components/Upload/Upload.d.ts +7 -0
  1771. package/lib/components/Upload/Upload.js +97 -0
  1772. package/lib/components/Upload/UploadFileBar.d.ts +6 -0
  1773. package/lib/components/Upload/UploadFileBar.js +72 -0
  1774. package/lib/components/Upload/index.d.ts +5 -0
  1775. package/lib/components/Upload/index.js +41 -0
  1776. package/lib/components/Upload/interface.d.ts +41 -0
  1777. package/lib/components/Upload/interface.js +6 -0
  1778. package/lib/components/Upload/style/Upload.css +1 -0
  1779. package/lib/components/Upload/style/Upload.scss +44 -0
  1780. package/lib/components/Upload/style/UploadFileBar.css +1 -0
  1781. package/lib/components/Upload/style/UploadFileBar.scss +94 -0
  1782. package/lib/components/Upload/style/css.js +5 -0
  1783. package/lib/components/Upload/style/index.d.ts +2 -0
  1784. package/lib/components/Upload/style/index.js +5 -0
  1785. package/lib/components/VirtualList/Filler.d.ts +21 -0
  1786. package/lib/components/VirtualList/Filler.js +66 -0
  1787. package/lib/components/VirtualList/Item.d.ts +6 -0
  1788. package/lib/components/VirtualList/Item.js +21 -0
  1789. package/lib/components/VirtualList/ScrollBar.d.ts +22 -0
  1790. package/lib/components/VirtualList/ScrollBar.js +247 -0
  1791. package/lib/components/VirtualList/VirtualList.d.ts +62 -0
  1792. package/lib/components/VirtualList/VirtualList.js +540 -0
  1793. package/lib/components/VirtualList/constants.d.ts +4 -0
  1794. package/lib/components/VirtualList/constants.js +11 -0
  1795. package/lib/components/VirtualList/hooks/useChildren.d.ts +2 -0
  1796. package/lib/components/VirtualList/hooks/useChildren.js +34 -0
  1797. package/lib/components/VirtualList/hooks/useDiffItem.d.ts +2 -0
  1798. package/lib/components/VirtualList/hooks/useDiffItem.js +25 -0
  1799. package/lib/components/VirtualList/hooks/useFrameWheel.d.ts +10 -0
  1800. package/lib/components/VirtualList/hooks/useFrameWheel.js +92 -0
  1801. package/lib/components/VirtualList/hooks/useGetSize.d.ts +7 -0
  1802. package/lib/components/VirtualList/hooks/useGetSize.js +57 -0
  1803. package/lib/components/VirtualList/hooks/useHeights.d.ts +8 -0
  1804. package/lib/components/VirtualList/hooks/useHeights.js +106 -0
  1805. package/lib/components/VirtualList/hooks/useMobileTouchMove.d.ts +2 -0
  1806. package/lib/components/VirtualList/hooks/useMobileTouchMove.js +91 -0
  1807. package/lib/components/VirtualList/hooks/useOriginScroll.d.ts +2 -0
  1808. package/lib/components/VirtualList/hooks/useOriginScroll.js +50 -0
  1809. package/lib/components/VirtualList/hooks/useScrollDrag.d.ts +3 -0
  1810. package/lib/components/VirtualList/hooks/useScrollDrag.js +87 -0
  1811. package/lib/components/VirtualList/hooks/useScrollTo.d.ts +18 -0
  1812. package/lib/components/VirtualList/hooks/useScrollTo.js +142 -0
  1813. package/lib/components/VirtualList/index.d.ts +9 -0
  1814. package/lib/components/VirtualList/index.js +31 -0
  1815. package/lib/components/VirtualList/interface.d.ts +26 -0
  1816. package/lib/components/VirtualList/interface.js +6 -0
  1817. package/lib/components/VirtualList/style/VirtualList.css +1 -0
  1818. package/lib/components/VirtualList/style/VirtualList.scss +5 -0
  1819. package/lib/components/VirtualList/style/css.js +4 -0
  1820. package/lib/components/VirtualList/style/index.d.ts +1 -0
  1821. package/lib/components/VirtualList/style/index.js +4 -0
  1822. package/lib/components/VirtualList/utils/CacheMap.d.ts +16 -0
  1823. package/lib/components/VirtualList/utils/CacheMap.js +50 -0
  1824. package/lib/components/VirtualList/utils/algorithmUtil.d.ts +23 -0
  1825. package/lib/components/VirtualList/utils/algorithmUtil.js +84 -0
  1826. package/lib/components/VirtualList/utils/isFirefox.d.ts +2 -0
  1827. package/lib/components/VirtualList/utils/isFirefox.js +11 -0
  1828. package/lib/components/VirtualList/utils/raf.d.ts +9 -0
  1829. package/lib/components/VirtualList/utils/raf.js +53 -0
  1830. package/lib/components/VirtualList/utils/scrollbarUtil.d.ts +1 -0
  1831. package/lib/components/VirtualList/utils/scrollbarUtil.js +18 -0
  1832. package/lib/index.css +1 -0
  1833. package/lib/index.d.ts +89 -0
  1834. package/lib/index.js +494 -0
  1835. package/lib/styles/_api.scss +5 -0
  1836. package/lib/styles/_settings.scss +5 -0
  1837. package/lib/styles/index.css +1 -0
  1838. package/lib/styles/index.scss +2 -0
  1839. package/lib/styles/public/_index.scss +2 -0
  1840. package/lib/styles/public/_system.scss +1 -0
  1841. package/lib/styles/public/_theme.scss +3 -0
  1842. package/lib/styles/recipes/_index.scss +1 -0
  1843. package/lib/styles/recipes/_variants.scss +110 -0
  1844. package/lib/styles/system/_index.scss +4 -0
  1845. package/lib/styles/system/_props.scss +95 -0
  1846. package/lib/styles/system/_public.scss +5 -0
  1847. package/lib/styles/system/_sx.scss +81 -0
  1848. package/lib/styles/theme/_breakpoints.scss +95 -0
  1849. package/lib/styles/theme/_functions.scss +271 -0
  1850. package/lib/styles/theme/_index.scss +6 -0
  1851. package/lib/styles/theme/_mixins.scss +37 -0
  1852. package/lib/styles/theme/_scales.scss +29 -0
  1853. package/lib/styles/theme/_values.scss +68 -0
  1854. package/lib/styles/tokens/_index.scss +11 -0
  1855. package/lib/styles/tokens/breakpoint/_index.scss +2 -0
  1856. package/lib/styles/tokens/breakpoint/_primitives.scss +8 -0
  1857. package/lib/styles/tokens/color/_index.scss +3 -0
  1858. package/lib/styles/tokens/color/_primitives.scss +42 -0
  1859. package/lib/styles/tokens/color/_semantic-color.scss +172 -0
  1860. package/lib/styles/tokens/opacity/_functions.scss +13 -0
  1861. package/lib/styles/tokens/opacity/_index.scss +3 -0
  1862. package/lib/styles/tokens/opacity/_primitives.scss +12 -0
  1863. package/lib/styles/tokens/radius/_index.scss +2 -0
  1864. package/lib/styles/tokens/radius/_primitives.scss +11 -0
  1865. package/lib/styles/tokens/shadow/_index.scss +2 -0
  1866. package/lib/styles/tokens/shadow/_primitives.scss +7 -0
  1867. package/lib/styles/tokens/sizing/_functions.scss +17 -0
  1868. package/lib/styles/tokens/sizing/_index.scss +4 -0
  1869. package/lib/styles/tokens/sizing/_primitives.scss +12 -0
  1870. package/lib/styles/tokens/sizing/_semantic-sizing.scss +11 -0
  1871. package/lib/styles/tokens/spacing/_functions.scss +51 -0
  1872. package/lib/styles/tokens/spacing/_index.scss +4 -0
  1873. package/lib/styles/tokens/spacing/_primitives.scss +22 -0
  1874. package/lib/styles/tokens/spacing/_semantic-spacing.scss +22 -0
  1875. package/lib/styles/tokens/typography/_functions.scss +31 -0
  1876. package/lib/styles/tokens/typography/_index.scss +4 -0
  1877. package/lib/styles/tokens/typography/_primitives.scss +27 -0
  1878. package/lib/styles/tokens/typography/_semantic-typography.scss +216 -0
  1879. package/lib/styles/utilities/_generator.scss +55 -0
  1880. package/lib/styles/utilities/_index.scss +14 -0
  1881. package/lib/utils/classnames.d.ts +5 -0
  1882. package/lib/utils/classnames.js +25 -0
  1883. package/lib/utils/clipboard.d.ts +2 -0
  1884. package/lib/utils/clipboard.js +56 -0
  1885. package/lib/utils/ref.d.ts +4 -0
  1886. package/lib/utils/ref.js +41 -0
  1887. package/lib/utils/uuid.d.ts +2 -0
  1888. package/lib/utils/uuid.js +23 -0
  1889. package/package.json +442 -0
  1890. package/patches/primereact.patch +323 -0
  1891. package/patches/react-pro-sidebar.patch +6421 -0
  1892. package/public/favicon.ico +0 -0
  1893. package/public/fonts/Aeonik/Aeonik-Air.ttf +0 -0
  1894. package/public/fonts/Aeonik/Aeonik-AirItalic.ttf +0 -0
  1895. package/public/fonts/Aeonik/Aeonik-Black.ttf +0 -0
  1896. package/public/fonts/Aeonik/Aeonik-BlackItalic.ttf +0 -0
  1897. package/public/fonts/Aeonik/Aeonik-Bold.ttf +0 -0
  1898. package/public/fonts/Aeonik/Aeonik-BoldItalic.ttf +0 -0
  1899. package/public/fonts/Aeonik/Aeonik-Light.ttf +0 -0
  1900. package/public/fonts/Aeonik/Aeonik-LightItalic.ttf +0 -0
  1901. package/public/fonts/Aeonik/Aeonik-Medium.ttf +0 -0
  1902. package/public/fonts/Aeonik/Aeonik-MediumItalic.ttf +0 -0
  1903. package/public/fonts/Aeonik/Aeonik-Regular.ttf +0 -0
  1904. package/public/fonts/Aeonik/Aeonik-RegularItalic.ttf +0 -0
  1905. package/public/fonts/Aeonik/Aeonik-Thin.ttf +0 -0
  1906. package/public/fonts/Aeonik/Aeonik-ThinItalic.ttf +0 -0
  1907. package/public/fonts/Inter/Inter-Black.ttf +0 -0
  1908. package/public/fonts/Inter/Inter-BlackItalic.ttf +0 -0
  1909. package/public/fonts/Inter/Inter-Bold.ttf +0 -0
  1910. package/public/fonts/Inter/Inter-BoldItalic.ttf +0 -0
  1911. package/public/fonts/Inter/Inter-ExtraBold.ttf +0 -0
  1912. package/public/fonts/Inter/Inter-ExtraBoldItalic.ttf +0 -0
  1913. package/public/fonts/Inter/Inter-ExtraLight.ttf +0 -0
  1914. package/public/fonts/Inter/Inter-ExtraLightItalic.ttf +0 -0
  1915. package/public/fonts/Inter/Inter-Italic.ttf +0 -0
  1916. package/public/fonts/Inter/Inter-Light.ttf +0 -0
  1917. package/public/fonts/Inter/Inter-LightItalic.ttf +0 -0
  1918. package/public/fonts/Inter/Inter-Medium.ttf +0 -0
  1919. package/public/fonts/Inter/Inter-MediumItalic.ttf +0 -0
  1920. package/public/fonts/Inter/Inter-Regular.ttf +0 -0
  1921. package/public/fonts/Inter/Inter-SemiBold.ttf +0 -0
  1922. package/public/fonts/Inter/Inter-SemiBoldItalic.ttf +0 -0
  1923. package/public/fonts/Inter/Inter-Thin.ttf +0 -0
  1924. package/public/fonts/Inter/Inter-ThinItalic.ttf +0 -0
  1925. package/public/fonts/Outfit/Outfit-Black.ttf +0 -0
  1926. package/public/fonts/Outfit/Outfit-Bold.ttf +0 -0
  1927. package/public/fonts/Outfit/Outfit-ExtraBold.ttf +0 -0
  1928. package/public/fonts/Outfit/Outfit-ExtraLight.ttf +0 -0
  1929. package/public/fonts/Outfit/Outfit-Light.ttf +0 -0
  1930. package/public/fonts/Outfit/Outfit-Medium.ttf +0 -0
  1931. package/public/fonts/Outfit/Outfit-Regular.ttf +0 -0
  1932. package/public/fonts/Outfit/Outfit-SemiBold.ttf +0 -0
  1933. package/public/fonts/Outfit/Outfit-Thin.ttf +0 -0
  1934. package/public/github-mark.svg +3 -0
  1935. package/public/tokens/GYEN.svg +9 -0
  1936. package/public/tokens/PYUSD.svg +9 -0
  1937. package/public/tokens/USDT.svg +6 -0
  1938. package/scripts/mcp-server/index.d.mts +1 -0
  1939. package/scripts/mcp-server/index.mjs +45 -0
  1940. package/scripts/mcp-server/resources.d.mts +1 -0
  1941. package/scripts/mcp-server/resources.mjs +102 -0
  1942. package/test/jsdom-global-register.d.ts +1 -0
  1943. package/test/jsdom-global-register.js +1 -0
@@ -0,0 +1,692 @@
1
+ import _defineProperty from "@babel/runtime/helpers/esm/defineProperty";
2
+ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
+ import { jsx as _jsx, Fragment as _Fragment, jsxs as _jsxs } from "react/jsx-runtime";
4
+ import { clsx } from 'clsx';
5
+ import ResizeObserver from '../../../ResizeObserver';
6
+ import { getTargetScrollBarSize } from './utils/getScrollBarSize';
7
+ import { useEventCallback as useEvent } from '@1money/hooks';
8
+ import pickAttrs from './utils/pickAttrs';
9
+ import getValue from './utils/get';
10
+ import warning from './utils/warning';
11
+ import * as React from 'react';
12
+ import Body from './Body';
13
+ import ColGroup from './ColGroup';
14
+ import { EXPAND_COLUMN, INTERNAL_HOOKS } from './constant';
15
+ import TableContext, { makeImmutable } from './context/TableContext';
16
+ import FixedHolder from './FixedHolder';
17
+ import Footer, { FooterComponents } from './Footer';
18
+ import Summary from './Footer/Summary';
19
+ import Header from './Header/Header';
20
+ import useColumns from './hooks/useColumns';
21
+ import useExpand from './hooks/useExpand';
22
+ import useFixedInfo from './hooks/useFixedInfo';
23
+ import { useTimeoutLock } from './hooks/useFrame';
24
+ import useHover from './hooks/useHover';
25
+ import useSticky from './hooks/useSticky';
26
+ import useStickyOffsets from './hooks/useStickyOffsets';
27
+ import Panel from './Panel';
28
+ import StickyScrollBar from './stickyScrollBar';
29
+ import Column from './sugar/Column';
30
+ import ColumnGroup from './sugar/ColumnGroup';
31
+ import { getColumnsKey, validateValue, validNumberValue } from './utils/valueUtil';
32
+ import { getDOM } from '../../../ResizeObserver/utils/reactUtil';
33
+ import isEqual from './selector-context/isEqual';
34
+ import { useLayoutEffect } from '@1money/hooks';
35
+ export var DEFAULT_PREFIX = 'rc-table';
36
+ // Used for conditions cache
37
+ var EMPTY_DATA = [];
38
+ // Used for customize scroll
39
+ var EMPTY_SCROLL_TARGET = {};
40
+ function defaultEmpty() {
41
+ return 'No Data';
42
+ }
43
+ var Table = function Table(tableProps, ref) {
44
+ var _clsx;
45
+ var _a, _b;
46
+ var props = Object.assign({
47
+ rowKey: 'key',
48
+ prefixCls: DEFAULT_PREFIX,
49
+ emptyText: defaultEmpty
50
+ }, tableProps);
51
+ var prefixCls = props.prefixCls,
52
+ className = props.className,
53
+ rowClassName = props.rowClassName,
54
+ style = props.style,
55
+ classNames = props.classNames,
56
+ styles = props.styles,
57
+ data = props.data,
58
+ rowKey = props.rowKey,
59
+ scroll = props.scroll,
60
+ tableLayout = props.tableLayout,
61
+ direction = props.direction,
62
+ title = props.title,
63
+ footer = props.footer,
64
+ summary = props.summary,
65
+ caption = props.caption,
66
+ id = props.id,
67
+ showHeader = props.showHeader,
68
+ components = props.components,
69
+ emptyText = props.emptyText,
70
+ onRow = props.onRow,
71
+ onHeaderRow = props.onHeaderRow,
72
+ measureRowRender = props.measureRowRender,
73
+ onScroll = props.onScroll,
74
+ internalHooks = props.internalHooks,
75
+ transformColumns = props.transformColumns,
76
+ internalRefs = props.internalRefs,
77
+ tailor = props.tailor,
78
+ getContainerWidth = props.getContainerWidth,
79
+ sticky = props.sticky,
80
+ _props$rowHoverable = props.rowHoverable,
81
+ rowHoverable = _props$rowHoverable === void 0 ? true : _props$rowHoverable;
82
+ var mergedData = data || EMPTY_DATA;
83
+ var hasData = !!mergedData.length;
84
+ var useInternalHooks = internalHooks === INTERNAL_HOOKS;
85
+ // ===================== Warning ======================
86
+ if (process.env.NODE_ENV !== 'production') {
87
+ ['onRowClick', 'onRowDoubleClick', 'onRowContextMenu', 'onRowMouseEnter', 'onRowMouseLeave'].forEach(function (name) {
88
+ warning(props[name] === undefined, "`".concat(name, "` is removed, please use `onRow` instead."));
89
+ });
90
+ warning(!('getBodyWrapper' in props), '`getBodyWrapper` is deprecated, please use custom `components` instead.');
91
+ }
92
+ // ==================== Customize =====================
93
+ var getComponent = React.useCallback(function (path, defaultComponent) {
94
+ return getValue(components, path) || defaultComponent;
95
+ }, [components]);
96
+ var getRowKey = React.useMemo(function () {
97
+ if (typeof rowKey === 'function') {
98
+ return rowKey;
99
+ }
100
+ return function (record) {
101
+ var key = record && record[rowKey];
102
+ if (process.env.NODE_ENV !== 'production') {
103
+ warning(key !== undefined, 'Each record in table should have a unique `key` prop, or set `rowKey` to an unique primary key.');
104
+ }
105
+ return key;
106
+ };
107
+ }, [rowKey]);
108
+ var customizeScrollBody = getComponent(['body']);
109
+ // ====================== Hover =======================
110
+ var _useHover = useHover(),
111
+ _useHover2 = _slicedToArray(_useHover, 3),
112
+ startRow = _useHover2[0],
113
+ endRow = _useHover2[1],
114
+ onHover = _useHover2[2];
115
+ // ====================== Expand ======================
116
+ var _useExpand = useExpand(props, mergedData, getRowKey),
117
+ _useExpand2 = _slicedToArray(_useExpand, 6),
118
+ expandableConfig = _useExpand2[0],
119
+ expandableType = _useExpand2[1],
120
+ mergedExpandedKeys = _useExpand2[2],
121
+ mergedExpandIcon = _useExpand2[3],
122
+ mergedChildrenColumnName = _useExpand2[4],
123
+ onTriggerExpand = _useExpand2[5];
124
+ // ====================== Column ======================
125
+ var scrollX = scroll === null || scroll === void 0 ? void 0 : scroll.x;
126
+ var _React$useState = React.useState(0),
127
+ _React$useState2 = _slicedToArray(_React$useState, 2),
128
+ componentWidth = _React$useState2[0],
129
+ setComponentWidth = _React$useState2[1];
130
+ var _useColumns = useColumns(Object.assign(Object.assign(Object.assign({}, props), expandableConfig), {
131
+ expandable: !!expandableConfig.expandedRowRender,
132
+ columnTitle: expandableConfig.columnTitle,
133
+ expandedKeys: mergedExpandedKeys,
134
+ getRowKey: getRowKey,
135
+ // https://github.com/ant-design/ant-design/issues/23894
136
+ onTriggerExpand: onTriggerExpand,
137
+ expandIcon: mergedExpandIcon,
138
+ expandIconColumnIndex: expandableConfig.expandIconColumnIndex,
139
+ direction: direction,
140
+ scrollWidth: useInternalHooks && tailor && typeof scrollX === 'number' ? scrollX : null,
141
+ clientWidth: componentWidth
142
+ }), useInternalHooks ? transformColumns : null),
143
+ _useColumns2 = _slicedToArray(_useColumns, 3),
144
+ columns = _useColumns2[0],
145
+ flattenColumns = _useColumns2[1],
146
+ flattenScrollX = _useColumns2[2];
147
+ var mergedScrollX = flattenScrollX !== null && flattenScrollX !== void 0 ? flattenScrollX : scrollX;
148
+ var columnContext = React.useMemo(function () {
149
+ return {
150
+ columns: columns,
151
+ flattenColumns: flattenColumns
152
+ };
153
+ }, [columns, flattenColumns]);
154
+ // ======================= Refs =======================
155
+ var fullTableRef = React.useRef(null);
156
+ var scrollHeaderRef = React.useRef(null);
157
+ var scrollBodyRef = React.useRef(null);
158
+ var scrollBodyContainerRef = React.useRef(null);
159
+ React.useImperativeHandle(ref, function () {
160
+ return {
161
+ nativeElement: fullTableRef.current,
162
+ scrollTo: function scrollTo(config) {
163
+ var _a, _b;
164
+ if (scrollBodyRef.current instanceof HTMLElement) {
165
+ // Native scroll
166
+ var index = config.index,
167
+ top = config.top,
168
+ key = config.key,
169
+ offset = config.offset;
170
+ if (validNumberValue(top)) {
171
+ // In top mode, offset is ignored
172
+ (_a = scrollBodyRef.current) === null || _a === void 0 ? void 0 : _a.scrollTo({
173
+ top: top
174
+ });
175
+ } else {
176
+ var mergedKey = key !== null && key !== void 0 ? key : getRowKey(mergedData[index]);
177
+ var targetElement = scrollBodyRef.current.querySelector("[data-row-key=\"".concat(mergedKey, "\"]"));
178
+ if (targetElement) {
179
+ if (!offset) {
180
+ // No offset, use scrollIntoView for default behavior
181
+ targetElement.scrollIntoView();
182
+ } else {
183
+ // With offset, use element's offsetTop + offset
184
+ var elementTop = targetElement.offsetTop;
185
+ scrollBodyRef.current.scrollTo({
186
+ top: elementTop + offset
187
+ });
188
+ }
189
+ }
190
+ }
191
+ } else if ((_b = scrollBodyRef.current) === null || _b === void 0 ? void 0 : _b.scrollTo) {
192
+ // Pass to proxy
193
+ scrollBodyRef.current.scrollTo(config);
194
+ }
195
+ }
196
+ };
197
+ });
198
+ // ====================== Scroll ======================
199
+ var scrollSummaryRef = React.useRef(null);
200
+ var _React$useState3 = React.useState(false),
201
+ _React$useState4 = _slicedToArray(_React$useState3, 2),
202
+ shadowStart = _React$useState4[0],
203
+ setShadowStart = _React$useState4[1];
204
+ var _React$useState5 = React.useState(false),
205
+ _React$useState6 = _slicedToArray(_React$useState5, 2),
206
+ shadowEnd = _React$useState6[0],
207
+ setShadowEnd = _React$useState6[1];
208
+ var _React$useState7 = React.useState(new Map()),
209
+ _React$useState8 = _slicedToArray(_React$useState7, 2),
210
+ colsWidths = _React$useState8[0],
211
+ updateColsWidths = _React$useState8[1];
212
+ // Convert map to number width
213
+ var colsKeys = getColumnsKey(flattenColumns);
214
+ var pureColWidths = colsKeys.map(function (columnKey) {
215
+ return colsWidths.get(columnKey);
216
+ });
217
+ var colWidths = React.useMemo(function () {
218
+ return pureColWidths;
219
+ }, [pureColWidths.join('_')]);
220
+ var stickyOffsets = useStickyOffsets(colWidths, flattenColumns);
221
+ var fixHeader = scroll && validateValue(scroll.y);
222
+ var horizonScroll = scroll && validateValue(mergedScrollX) || Boolean(expandableConfig.fixed);
223
+ var fixColumn = horizonScroll && flattenColumns.some(function (_ref) {
224
+ var fixed = _ref.fixed;
225
+ return fixed;
226
+ });
227
+ // Sticky
228
+ var stickyRef = React.useRef(null);
229
+ var _useSticky = useSticky(sticky, prefixCls),
230
+ isSticky = _useSticky.isSticky,
231
+ offsetHeader = _useSticky.offsetHeader,
232
+ offsetSummary = _useSticky.offsetSummary,
233
+ offsetScroll = _useSticky.offsetScroll,
234
+ stickyClassName = _useSticky.stickyClassName,
235
+ container = _useSticky.container;
236
+ // Footer (Fix footer must fixed header)
237
+ var summaryNode = React.useMemo(function () {
238
+ return summary === null || summary === void 0 ? void 0 : summary(mergedData);
239
+ }, [summary, mergedData]);
240
+ var fixFooter = (fixHeader || isSticky) && /*#__PURE__*/React.isValidElement(summaryNode) && summaryNode.type === Summary && summaryNode.props.fixed;
241
+ // Scroll
242
+ var scrollXStyle;
243
+ var scrollYStyle;
244
+ var scrollTableStyle;
245
+ if (fixHeader) {
246
+ scrollYStyle = {
247
+ overflowY: hasData ? 'scroll' : 'auto',
248
+ maxHeight: scroll.y
249
+ };
250
+ }
251
+ if (horizonScroll) {
252
+ scrollXStyle = {
253
+ overflowX: 'auto'
254
+ };
255
+ // When no vertical scrollbar, should hide it
256
+ // https://github.com/ant-design/ant-design/pull/20705
257
+ // https://github.com/ant-design/ant-design/issues/21879
258
+ if (!fixHeader) {
259
+ scrollYStyle = {
260
+ overflowY: 'hidden'
261
+ };
262
+ }
263
+ scrollTableStyle = {
264
+ width: mergedScrollX === true ? 'auto' : mergedScrollX,
265
+ minWidth: '100%'
266
+ };
267
+ }
268
+ var onColumnResize = React.useCallback(function (columnKey, width) {
269
+ updateColsWidths(function (widths) {
270
+ if (widths.get(columnKey) !== width) {
271
+ var newWidths = new Map(widths);
272
+ newWidths.set(columnKey, width);
273
+ return newWidths;
274
+ }
275
+ return widths;
276
+ });
277
+ }, []);
278
+ var _useTimeoutLock = useTimeoutLock(null),
279
+ _useTimeoutLock2 = _slicedToArray(_useTimeoutLock, 2),
280
+ setScrollTarget = _useTimeoutLock2[0],
281
+ getScrollTarget = _useTimeoutLock2[1];
282
+ function forceScroll(scrollLeft, target) {
283
+ if (!target) {
284
+ return;
285
+ }
286
+ if (typeof target === 'function') {
287
+ target(scrollLeft);
288
+ } else if (target.scrollLeft !== scrollLeft) {
289
+ target.scrollLeft = scrollLeft;
290
+ // Delay to force scroll position if not sync
291
+ // ref: https://github.com/ant-design/ant-design/issues/37179
292
+ if (target.scrollLeft !== scrollLeft) {
293
+ setTimeout(function () {
294
+ target.scrollLeft = scrollLeft;
295
+ }, 0);
296
+ }
297
+ }
298
+ }
299
+ var _React$useState9 = React.useState([0, 0]),
300
+ _React$useState10 = _slicedToArray(_React$useState9, 2),
301
+ scrollInfo = _React$useState10[0],
302
+ setScrollInfo = _React$useState10[1];
303
+ var onInternalScroll = useEvent(function (_ref2) {
304
+ var currentTarget = _ref2.currentTarget,
305
+ scrollLeft = _ref2.scrollLeft;
306
+ var _a;
307
+ var mergedScrollLeft = typeof scrollLeft === 'number' ? scrollLeft : currentTarget.scrollLeft;
308
+ var compareTarget = currentTarget || EMPTY_SCROLL_TARGET;
309
+ if (!getScrollTarget() || getScrollTarget() === compareTarget) {
310
+ setScrollTarget(compareTarget);
311
+ forceScroll(mergedScrollLeft, scrollHeaderRef.current);
312
+ forceScroll(mergedScrollLeft, scrollBodyRef.current);
313
+ forceScroll(mergedScrollLeft, scrollSummaryRef.current);
314
+ forceScroll(mergedScrollLeft, (_a = stickyRef.current) === null || _a === void 0 ? void 0 : _a.setScrollLeft);
315
+ }
316
+ var measureTarget = currentTarget || scrollHeaderRef.current;
317
+ if (measureTarget) {
318
+ var scrollWidth =
319
+ // Should use mergedScrollX in virtual table(useInternalHooks && tailor === true)
320
+ useInternalHooks && tailor && typeof mergedScrollX === 'number' ? mergedScrollX : measureTarget.scrollWidth;
321
+ var clientWidth = measureTarget.clientWidth;
322
+ var absScrollStart = Math.abs(mergedScrollLeft);
323
+ setScrollInfo(function (ori) {
324
+ var nextScrollInfo = [absScrollStart, scrollWidth - clientWidth];
325
+ return isEqual(ori, nextScrollInfo) ? ori : nextScrollInfo;
326
+ });
327
+ // There is no space to scroll
328
+ if (scrollWidth === clientWidth) {
329
+ setShadowStart(false);
330
+ setShadowEnd(false);
331
+ return;
332
+ }
333
+ setShadowStart(absScrollStart > 0);
334
+ setShadowEnd(absScrollStart < scrollWidth - clientWidth - 1);
335
+ }
336
+ });
337
+ var onBodyScroll = useEvent(function (e) {
338
+ onInternalScroll(e);
339
+ onScroll === null || onScroll === void 0 ? void 0 : onScroll(e);
340
+ });
341
+ var triggerOnScroll = function triggerOnScroll() {
342
+ var _a;
343
+ if (horizonScroll && scrollBodyRef.current) {
344
+ onInternalScroll({
345
+ currentTarget: getDOM(scrollBodyRef.current),
346
+ scrollLeft: (_a = scrollBodyRef.current) === null || _a === void 0 ? void 0 : _a.scrollLeft
347
+ });
348
+ } else {
349
+ setShadowStart(false);
350
+ setShadowEnd(false);
351
+ }
352
+ };
353
+ var onFullTableResize = function onFullTableResize(offsetWidth) {
354
+ var _a, _b, _c;
355
+ (_a = stickyRef.current) === null || _a === void 0 ? void 0 : _a.checkScrollBarVisible();
356
+ var mergedWidth = (_c = offsetWidth !== null && offsetWidth !== void 0 ? offsetWidth : (_b = fullTableRef.current) === null || _b === void 0 ? void 0 : _b.offsetWidth) !== null && _c !== void 0 ? _c : 0;
357
+ if (useInternalHooks && getContainerWidth && fullTableRef.current) {
358
+ mergedWidth = getContainerWidth(fullTableRef.current, mergedWidth) || mergedWidth;
359
+ }
360
+ if (mergedWidth !== componentWidth) {
361
+ triggerOnScroll();
362
+ setComponentWidth(mergedWidth);
363
+ }
364
+ };
365
+ // fix https://github.com/ant-design/ant-design/issues/49279
366
+ useLayoutEffect(function () {
367
+ if (horizonScroll) {
368
+ onFullTableResize();
369
+ }
370
+ }, [horizonScroll]);
371
+ // Sync scroll bar when init or `horizonScroll`, `data` and `columns.length` changed
372
+ var mounted = React.useRef(false);
373
+ React.useEffect(function () {
374
+ // onFullTableResize will be trigger once when ResizeObserver is mounted
375
+ // This will reduce one duplicated triggerOnScroll time
376
+ if (mounted.current) {
377
+ triggerOnScroll();
378
+ }
379
+ }, [horizonScroll, data, columns.length]);
380
+ React.useEffect(function () {
381
+ mounted.current = true;
382
+ }, []);
383
+ // ===================== Effects ======================
384
+ var _React$useState11 = React.useState(0),
385
+ _React$useState12 = _slicedToArray(_React$useState11, 2),
386
+ scrollbarSize = _React$useState12[0],
387
+ setScrollbarSize = _React$useState12[1];
388
+ useLayoutEffect(function () {
389
+ if (!tailor || !useInternalHooks) {
390
+ if (scrollBodyRef.current instanceof Element) {
391
+ setScrollbarSize(getTargetScrollBarSize(scrollBodyRef.current).width);
392
+ } else {
393
+ setScrollbarSize(getTargetScrollBarSize(scrollBodyContainerRef.current).width);
394
+ }
395
+ }
396
+ }, []);
397
+ // ================== INTERNAL HOOKS ==================
398
+ React.useEffect(function () {
399
+ if (useInternalHooks && internalRefs) {
400
+ internalRefs.body.current = scrollBodyRef.current;
401
+ }
402
+ });
403
+ // ========================================================================
404
+ // == Render ==
405
+ // ========================================================================
406
+ // =================== Render: Func ===================
407
+ var renderFixedHeaderTable = React.useCallback(function (fixedHolderPassProps) {
408
+ return _jsxs(_Fragment, {
409
+ children: [_jsx(Header, Object.assign({}, fixedHolderPassProps)), fixFooter === 'top' && _jsx(Footer, Object.assign({}, fixedHolderPassProps, {
410
+ children: summaryNode
411
+ }))]
412
+ });
413
+ }, [fixFooter, summaryNode]);
414
+ var renderFixedFooterTable = React.useCallback(function (fixedHolderPassProps) {
415
+ return _jsx(Footer, Object.assign({}, fixedHolderPassProps, {
416
+ children: summaryNode
417
+ }));
418
+ }, [summaryNode]);
419
+ // =================== Render: Node ===================
420
+ var TableComponent = getComponent(['table'], 'table');
421
+ // Table layout
422
+ var mergedTableLayout = React.useMemo(function () {
423
+ if (tableLayout) {
424
+ return tableLayout;
425
+ }
426
+ // https://github.com/ant-design/ant-design/issues/25227
427
+ // When scroll.x is max-content, no need to fix table layout
428
+ // it's width should stretch out to fit content
429
+ if (fixColumn) {
430
+ return mergedScrollX === 'max-content' ? 'auto' : 'fixed';
431
+ }
432
+ if (fixHeader || isSticky || flattenColumns.some(function (_ref3) {
433
+ var ellipsis = _ref3.ellipsis;
434
+ return ellipsis;
435
+ })) {
436
+ return 'fixed';
437
+ }
438
+ return 'auto';
439
+ }, [fixHeader, fixColumn, flattenColumns, tableLayout, isSticky]);
440
+ var groupTableNode;
441
+ // Header props
442
+ var headerProps = {
443
+ colWidths: colWidths,
444
+ columCount: flattenColumns.length,
445
+ stickyOffsets: stickyOffsets,
446
+ onHeaderRow: onHeaderRow,
447
+ fixHeader: fixHeader,
448
+ scroll: scroll
449
+ };
450
+ // Empty
451
+ var emptyNode = React.useMemo(function () {
452
+ if (hasData) {
453
+ return null;
454
+ }
455
+ if (typeof emptyText === 'function') {
456
+ return emptyText();
457
+ }
458
+ return emptyText;
459
+ }, [hasData, emptyText]);
460
+ // Body
461
+ var bodyTable = _jsx(Body, {
462
+ data: mergedData,
463
+ measureColumnWidth: fixHeader || horizonScroll || isSticky
464
+ });
465
+ var bodyColGroup = _jsx(ColGroup, {
466
+ colWidths: flattenColumns.map(function (_ref4) {
467
+ var width = _ref4.width;
468
+ return width;
469
+ }),
470
+ columns: flattenColumns
471
+ });
472
+ var captionElement = caption !== null && caption !== undefined ? _jsx("caption", {
473
+ className: "".concat(prefixCls, "-caption"),
474
+ children: caption
475
+ }) : undefined;
476
+ var dataProps = pickAttrs(props, {
477
+ data: true
478
+ });
479
+ var ariaProps = pickAttrs(props, {
480
+ aria: true
481
+ });
482
+ if (fixHeader || isSticky) {
483
+ // >>>>>> Fixed Header
484
+ var bodyContent;
485
+ if (typeof customizeScrollBody === 'function') {
486
+ bodyContent = customizeScrollBody(mergedData, {
487
+ scrollbarSize: scrollbarSize,
488
+ ref: scrollBodyRef,
489
+ onScroll: onInternalScroll
490
+ });
491
+ headerProps.colWidths = flattenColumns.map(function (_ref5, index) {
492
+ var width = _ref5.width;
493
+ var colWidth = index === flattenColumns.length - 1 ? width - scrollbarSize : width;
494
+ if (typeof colWidth === 'number' && !Number.isNaN(colWidth)) {
495
+ return colWidth;
496
+ }
497
+ if (process.env.NODE_ENV !== 'production') {
498
+ warning(props.columns.length === 0, 'When use `components.body` with render props. Each column should have a fixed `width` value.');
499
+ }
500
+ return 0;
501
+ });
502
+ } else {
503
+ bodyContent = _jsx("div", {
504
+ style: Object.assign(Object.assign({}, scrollXStyle), scrollYStyle),
505
+ onScroll: onBodyScroll,
506
+ ref: scrollBodyRef,
507
+ className: "".concat(prefixCls, "-body"),
508
+ children: _jsxs(TableComponent, Object.assign({
509
+ style: Object.assign(Object.assign({}, scrollTableStyle), {
510
+ tableLayout: mergedTableLayout
511
+ })
512
+ }, ariaProps, {
513
+ children: [captionElement, bodyColGroup, bodyTable, !fixFooter && summaryNode && _jsx(Footer, {
514
+ stickyOffsets: stickyOffsets,
515
+ flattenColumns: flattenColumns,
516
+ children: summaryNode
517
+ })]
518
+ }))
519
+ });
520
+ }
521
+ // Fixed holder share the props
522
+ var fixedHolderProps = Object.assign(Object.assign(Object.assign({
523
+ noData: !mergedData.length,
524
+ maxContentScroll: horizonScroll && mergedScrollX === 'max-content'
525
+ }, headerProps), columnContext), {
526
+ direction: direction,
527
+ stickyClassName: stickyClassName,
528
+ scrollX: mergedScrollX,
529
+ tableLayout: mergedTableLayout,
530
+ onScroll: onInternalScroll
531
+ });
532
+ groupTableNode = _jsxs(_Fragment, {
533
+ children: [showHeader !== false && _jsx(FixedHolder, Object.assign({}, fixedHolderProps, {
534
+ stickyTopOffset: offsetHeader,
535
+ className: "".concat(prefixCls, "-header"),
536
+ ref: scrollHeaderRef,
537
+ colGroup: bodyColGroup,
538
+ children: renderFixedHeaderTable
539
+ })), bodyContent, fixFooter && fixFooter !== 'top' && _jsx(FixedHolder, Object.assign({}, fixedHolderProps, {
540
+ stickyBottomOffset: offsetSummary,
541
+ className: "".concat(prefixCls, "-summary"),
542
+ ref: scrollSummaryRef,
543
+ colGroup: bodyColGroup,
544
+ children: renderFixedFooterTable
545
+ })), isSticky && scrollBodyRef.current && scrollBodyRef.current instanceof Element && _jsx(StickyScrollBar, {
546
+ ref: stickyRef,
547
+ offsetScroll: offsetScroll,
548
+ scrollBodyRef: scrollBodyRef,
549
+ onScroll: onInternalScroll,
550
+ container: container,
551
+ direction: direction
552
+ })]
553
+ });
554
+ } else {
555
+ // >>>>>> Unique table
556
+ groupTableNode = _jsx("div", {
557
+ style: Object.assign(Object.assign(Object.assign({}, scrollXStyle), scrollYStyle), styles === null || styles === void 0 ? void 0 : styles.content),
558
+ className: clsx("".concat(prefixCls, "-content"), classNames === null || classNames === void 0 ? void 0 : classNames.content),
559
+ onScroll: onInternalScroll,
560
+ ref: scrollBodyRef,
561
+ children: _jsxs(TableComponent, Object.assign({
562
+ style: Object.assign(Object.assign({}, scrollTableStyle), {
563
+ tableLayout: mergedTableLayout
564
+ })
565
+ }, ariaProps, {
566
+ children: [captionElement, bodyColGroup, showHeader !== false && _jsx(Header, Object.assign({}, headerProps, columnContext)), bodyTable, summaryNode && _jsx(Footer, {
567
+ stickyOffsets: stickyOffsets,
568
+ flattenColumns: flattenColumns,
569
+ children: summaryNode
570
+ })]
571
+ }))
572
+ });
573
+ }
574
+ var tableStyle = Object.assign({}, style);
575
+ // Add css var for sticky header `zIndex` calc
576
+ if (isSticky) {
577
+ tableStyle['--columns-count'] = flattenColumns.length;
578
+ }
579
+ var fullTable = _jsxs("div", Object.assign({
580
+ className: clsx(prefixCls, className, (_clsx = {}, _defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_defineProperty(_clsx, "".concat(prefixCls, "-rtl"), direction === 'rtl'), "".concat(prefixCls, "-fix-start-shadow"), horizonScroll), "".concat(prefixCls, "-fix-end-shadow"), horizonScroll), "".concat(prefixCls, "-fix-start-shadow-show"), horizonScroll && shadowStart), "".concat(prefixCls, "-fix-end-shadow-show"), horizonScroll && shadowEnd), "".concat(prefixCls, "-layout-fixed"), tableLayout === 'fixed'), "".concat(prefixCls, "-fixed-header"), fixHeader), "".concat(prefixCls, "-fixed-column"), fixColumn), "".concat(prefixCls, "-scroll-horizontal"), horizonScroll), "".concat(prefixCls, "-has-fix-start"), (_a = flattenColumns[0]) === null || _a === void 0 ? void 0 : _a.fixed), _defineProperty(_clsx, "".concat(prefixCls, "-has-fix-end"), ((_b = flattenColumns[flattenColumns.length - 1]) === null || _b === void 0 ? void 0 : _b.fixed) === 'end'))),
581
+ style: tableStyle,
582
+ id: id,
583
+ ref: fullTableRef
584
+ }, dataProps, {
585
+ children: [title && _jsx(Panel, {
586
+ className: clsx("".concat(prefixCls, "-title"), classNames === null || classNames === void 0 ? void 0 : classNames.title),
587
+ style: styles === null || styles === void 0 ? void 0 : styles.title,
588
+ children: title(mergedData)
589
+ }), _jsx("div", {
590
+ ref: scrollBodyContainerRef,
591
+ className: clsx("".concat(prefixCls, "-container"), classNames === null || classNames === void 0 ? void 0 : classNames.section),
592
+ style: styles === null || styles === void 0 ? void 0 : styles.section,
593
+ children: groupTableNode
594
+ }), footer && _jsx(Panel, {
595
+ className: clsx("".concat(prefixCls, "-footer"), classNames === null || classNames === void 0 ? void 0 : classNames.footer),
596
+ style: styles === null || styles === void 0 ? void 0 : styles.footer,
597
+ children: footer(mergedData)
598
+ })]
599
+ }));
600
+ if (horizonScroll) {
601
+ fullTable = _jsx(ResizeObserver, {
602
+ onResize: function onResize(_ref6) {
603
+ var offsetWidth = _ref6.offsetWidth;
604
+ return onFullTableResize(offsetWidth);
605
+ },
606
+ children: fullTable
607
+ });
608
+ }
609
+ var fixedInfoList = useFixedInfo(flattenColumns, stickyOffsets);
610
+ var TableContextValue = React.useMemo(function () {
611
+ return {
612
+ // Scroll
613
+ scrollX: mergedScrollX,
614
+ scrollInfo: scrollInfo,
615
+ classNames: classNames,
616
+ styles: styles,
617
+ // Table
618
+ prefixCls: prefixCls,
619
+ getComponent: getComponent,
620
+ scrollbarSize: scrollbarSize,
621
+ direction: direction,
622
+ fixedInfoList: fixedInfoList,
623
+ isSticky: isSticky,
624
+ componentWidth: componentWidth,
625
+ fixHeader: fixHeader,
626
+ fixColumn: fixColumn,
627
+ horizonScroll: horizonScroll,
628
+ // Body
629
+ tableLayout: mergedTableLayout,
630
+ rowClassName: rowClassName,
631
+ expandedRowClassName: expandableConfig.expandedRowClassName,
632
+ expandIcon: mergedExpandIcon,
633
+ expandableType: expandableType,
634
+ expandRowByClick: expandableConfig.expandRowByClick,
635
+ expandedRowRender: expandableConfig.expandedRowRender,
636
+ expandedRowOffset: expandableConfig.expandedRowOffset,
637
+ onTriggerExpand: onTriggerExpand,
638
+ expandIconColumnIndex: expandableConfig.expandIconColumnIndex,
639
+ indentSize: expandableConfig.indentSize,
640
+ allColumnsFixedLeft: flattenColumns.every(function (col) {
641
+ return col.fixed === 'start';
642
+ }),
643
+ emptyNode: emptyNode,
644
+ // Column
645
+ columns: columns,
646
+ flattenColumns: flattenColumns,
647
+ onColumnResize: onColumnResize,
648
+ colWidths: colWidths,
649
+ // Row
650
+ hoverStartRow: startRow,
651
+ hoverEndRow: endRow,
652
+ onHover: onHover,
653
+ rowExpandable: expandableConfig.rowExpandable,
654
+ onRow: onRow,
655
+ getRowKey: getRowKey,
656
+ expandedKeys: mergedExpandedKeys,
657
+ childrenColumnName: mergedChildrenColumnName,
658
+ rowHoverable: rowHoverable,
659
+ // Measure Row
660
+ measureRowRender: measureRowRender
661
+ };
662
+ }, [
663
+ // Scroll
664
+ mergedScrollX, scrollInfo, classNames, styles,
665
+ // Table
666
+ prefixCls, getComponent, scrollbarSize, direction, fixedInfoList, isSticky, componentWidth, fixHeader, fixColumn, horizonScroll,
667
+ // Body
668
+ mergedTableLayout, rowClassName, expandableConfig.expandedRowClassName, mergedExpandIcon, expandableType, expandableConfig.expandRowByClick, expandableConfig.expandedRowRender, expandableConfig.expandedRowOffset, onTriggerExpand, expandableConfig.expandIconColumnIndex, expandableConfig.indentSize, emptyNode,
669
+ // Column
670
+ columns, flattenColumns, onColumnResize, colWidths,
671
+ // Row
672
+ startRow, endRow, onHover, expandableConfig.rowExpandable, onRow, getRowKey, mergedExpandedKeys, mergedChildrenColumnName, rowHoverable, measureRowRender]);
673
+ return _jsx(TableContext.Provider, {
674
+ value: TableContextValue,
675
+ children: fullTable
676
+ });
677
+ };
678
+ var RefTable = /*#__PURE__*/React.forwardRef(Table);
679
+ if (process.env.NODE_ENV !== 'production') {
680
+ RefTable.displayName = 'Table';
681
+ }
682
+ export var genTable = function genTable(shouldTriggerRender) {
683
+ return makeImmutable(RefTable, shouldTriggerRender);
684
+ };
685
+ var ImmutableTable = genTable();
686
+ ImmutableTable.EXPAND_COLUMN = EXPAND_COLUMN;
687
+ ImmutableTable.INTERNAL_HOOKS = INTERNAL_HOOKS;
688
+ ImmutableTable.Column = Column;
689
+ ImmutableTable.ColumnGroup = ColumnGroup;
690
+ ImmutableTable.Summary = FooterComponents;
691
+ export default ImmutableTable;
692
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVGFibGUvaW50ZXJuYWwva2VybmVsL1RhYmxlLmpzIiwiY29tcG9uZW50cy9UYWJsZS9pbnRlcm5hbC9zcmMvY29tcG9uZW50cy9UYWJsZS9pbnRlcm5hbC9rZXJuZWwvVGFibGUudHN4Il0sIm5hbWVzIjpbImpzeCIsIl9qc3giLCJGcmFnbWVudCIsIl9GcmFnbWVudCIsImpzeHMiLCJfanN4cyIsImNsc3giLCJSZXNpemVPYnNlcnZlciIsImdldFRhcmdldFNjcm9sbEJhclNpemUiLCJ1c2VFdmVudENhbGxiYWNrIiwidXNlRXZlbnQiLCJwaWNrQXR0cnMiLCJnZXRWYWx1ZSIsIndhcm5pbmciLCJSZWFjdCIsIkJvZHkiLCJDb2xHcm91cCIsIkVYUEFORF9DT0xVTU4iLCJJTlRFUk5BTF9IT09LUyIsIlRhYmxlQ29udGV4dCIsIm1ha2VJbW11dGFibGUiLCJGaXhlZEhvbGRlciIsIkZvb3RlciIsIkZvb3RlckNvbXBvbmVudHMiLCJTdW1tYXJ5IiwiSGVhZGVyIiwidXNlQ29sdW1ucyIsInVzZUV4cGFuZCIsInVzZUZpeGVkSW5mbyIsInVzZVRpbWVvdXRMb2NrIiwidXNlSG92ZXIiLCJ1c2VTdGlja3kiLCJ1c2VTdGlja3lPZmZzZXRzIiwiUGFuZWwiLCJTdGlja3lTY3JvbGxCYXIiLCJDb2x1bW4iLCJDb2x1bW5Hcm91cCIsImdldENvbHVtbnNLZXkiLCJ2YWxpZGF0ZVZhbHVlIiwidmFsaWROdW1iZXJWYWx1ZSIsImdldERPTSIsImlzRXF1YWwiLCJ1c2VMYXlvdXRFZmZlY3QiLCJERUZBVUxUX1BSRUZJWCIsIkVNUFRZX0RBVEEiLCJFTVBUWV9TQ1JPTExfVEFSR0VUIiwiZGVmYXVsdEVtcHR5IiwiVGFibGUiLCJ0YWJsZVByb3BzIiwicmVmIiwiX2Nsc3giLCJfYSIsIl9iIiwicHJvcHMiLCJPYmplY3QiLCJhc3NpZ24iLCJyb3dLZXkiLCJwcmVmaXhDbHMiLCJlbXB0eVRleHQiLCJjbGFzc05hbWUiLCJyb3dDbGFzc05hbWUiLCJzdHlsZSIsImNsYXNzTmFtZXMiLCJzdHlsZXMiLCJkYXRhIiwic2Nyb2xsIiwidGFibGVMYXlvdXQiLCJkaXJlY3Rpb24iLCJ0aXRsZSIsImZvb3RlciIsInN1bW1hcnkiLCJjYXB0aW9uIiwiaWQiLCJzaG93SGVhZGVyIiwiY29tcG9uZW50cyIsIm9uUm93Iiwib25IZWFkZXJSb3ciLCJtZWFzdXJlUm93UmVuZGVyIiwib25TY3JvbGwiLCJpbnRlcm5hbEhvb2tzIiwidHJhbnNmb3JtQ29sdW1ucyIsImludGVybmFsUmVmcyIsInRhaWxvciIsImdldENvbnRhaW5lcldpZHRoIiwic3RpY2t5IiwiX3Byb3BzJHJvd0hvdmVyYWJsZSIsInJvd0hvdmVyYWJsZSIsIm1lcmdlZERhdGEiLCJoYXNEYXRhIiwibGVuZ3RoIiwidXNlSW50ZXJuYWxIb29rcyIsInByb2Nlc3MiLCJlbnYiLCJOT0RFX0VOViIsImZvckVhY2giLCJuYW1lIiwidW5kZWZpbmVkIiwiY29uY2F0IiwiZ2V0Q29tcG9uZW50IiwidXNlQ2FsbGJhY2siLCJwYXRoIiwiZGVmYXVsdENvbXBvbmVudCIsImdldFJvd0tleSIsInVzZU1lbW8iLCJyZWNvcmQiLCJrZXkiLCJjdXN0b21pemVTY3JvbGxCb2R5IiwiX3VzZUhvdmVyIiwiX3VzZUhvdmVyMiIsIl9zbGljZWRUb0FycmF5Iiwic3RhcnRSb3ciLCJlbmRSb3ciLCJvbkhvdmVyIiwiX3VzZUV4cGFuZCIsIl91c2VFeHBhbmQyIiwiZXhwYW5kYWJsZUNvbmZpZyIsImV4cGFuZGFibGVUeXBlIiwibWVyZ2VkRXhwYW5kZWRLZXlzIiwibWVyZ2VkRXhwYW5kSWNvbiIsIm1lcmdlZENoaWxkcmVuQ29sdW1uTmFtZSIsIm9uVHJpZ2dlckV4cGFuZCIsInNjcm9sbFgiLCJ4IiwiX1JlYWN0JHVzZVN0YXRlIiwidXNlU3RhdGUiLCJfUmVhY3QkdXNlU3RhdGUyIiwiY29tcG9uZW50V2lkdGgiLCJzZXRDb21wb25lbnRXaWR0aCIsIl91c2VDb2x1bW5zIiwiZXhwYW5kYWJsZSIsImV4cGFuZGVkUm93UmVuZGVyIiwiY29sdW1uVGl0bGUiLCJleHBhbmRlZEtleXMiLCJleHBhbmRJY29uIiwiZXhwYW5kSWNvbkNvbHVtbkluZGV4Iiwic2Nyb2xsV2lkdGgiLCJjbGllbnRXaWR0aCIsIl91c2VDb2x1bW5zMiIsImNvbHVtbnMiLCJmbGF0dGVuQ29sdW1ucyIsImZsYXR0ZW5TY3JvbGxYIiwibWVyZ2VkU2Nyb2xsWCIsImNvbHVtbkNvbnRleHQiLCJmdWxsVGFibGVSZWYiLCJ1c2VSZWYiLCJzY3JvbGxIZWFkZXJSZWYiLCJzY3JvbGxCb2R5UmVmIiwic2Nyb2xsQm9keUNvbnRhaW5lclJlZiIsInVzZUltcGVyYXRpdmVIYW5kbGUiLCJuYXRpdmVFbGVtZW50IiwiY3VycmVudCIsInNjcm9sbFRvIiwiY29uZmlnIiwiSFRNTEVsZW1lbnQiLCJpbmRleCIsInRvcCIsIm9mZnNldCIsIm1lcmdlZEtleSIsInRhcmdldEVsZW1lbnQiLCJxdWVyeVNlbGVjdG9yIiwic2Nyb2xsSW50b1ZpZXciLCJlbGVtZW50VG9wIiwib2Zmc2V0VG9wIiwic2Nyb2xsU3VtbWFyeVJlZiIsIl9SZWFjdCR1c2VTdGF0ZTMiLCJfUmVhY3QkdXNlU3RhdGU0Iiwic2hhZG93U3RhcnQiLCJzZXRTaGFkb3dTdGFydCIsIl9SZWFjdCR1c2VTdGF0ZTUiLCJfUmVhY3QkdXNlU3RhdGU2Iiwic2hhZG93RW5kIiwic2V0U2hhZG93RW5kIiwiX1JlYWN0JHVzZVN0YXRlNyIsIk1hcCIsIl9SZWFjdCR1c2VTdGF0ZTgiLCJjb2xzV2lkdGhzIiwidXBkYXRlQ29sc1dpZHRocyIsImNvbHNLZXlzIiwicHVyZUNvbFdpZHRocyIsIm1hcCIsImNvbHVtbktleSIsImdldCIsImNvbFdpZHRocyIsImpvaW4iLCJzdGlja3lPZmZzZXRzIiwiZml4SGVhZGVyIiwieSIsImhvcml6b25TY3JvbGwiLCJCb29sZWFuIiwiZml4ZWQiLCJmaXhDb2x1bW4iLCJzb21lIiwiX3JlZiIsInN0aWNreVJlZiIsIl91c2VTdGlja3kiLCJpc1N0aWNreSIsIm9mZnNldEhlYWRlciIsIm9mZnNldFN1bW1hcnkiLCJvZmZzZXRTY3JvbGwiLCJzdGlja3lDbGFzc05hbWUiLCJjb250YWluZXIiLCJzdW1tYXJ5Tm9kZSIsImZpeEZvb3RlciIsImlzVmFsaWRFbGVtZW50IiwidHlwZSIsInNjcm9sbFhTdHlsZSIsInNjcm9sbFlTdHlsZSIsInNjcm9sbFRhYmxlU3R5bGUiLCJvdmVyZmxvd1kiLCJtYXhIZWlnaHQiLCJvdmVyZmxvd1giLCJ3aWR0aCIsIm1pbldpZHRoIiwib25Db2x1bW5SZXNpemUiLCJ3aWR0aHMiLCJuZXdXaWR0aHMiLCJzZXQiLCJfdXNlVGltZW91dExvY2siLCJfdXNlVGltZW91dExvY2syIiwic2V0U2Nyb2xsVGFyZ2V0IiwiZ2V0U2Nyb2xsVGFyZ2V0IiwiZm9yY2VTY3JvbGwiLCJzY3JvbGxMZWZ0IiwidGFyZ2V0Iiwic2V0VGltZW91dCIsIl9SZWFjdCR1c2VTdGF0ZTkiLCJfUmVhY3QkdXNlU3RhdGUxMCIsInNjcm9sbEluZm8iLCJzZXRTY3JvbGxJbmZvIiwib25JbnRlcm5hbFNjcm9sbCIsIl9yZWYyIiwiY3VycmVudFRhcmdldCIsIm1lcmdlZFNjcm9sbExlZnQiLCJjb21wYXJlVGFyZ2V0Iiwic2V0U2Nyb2xsTGVmdCIsIm1lYXN1cmVUYXJnZXQiLCJhYnNTY3JvbGxTdGFydCIsIk1hdGgiLCJhYnMiLCJvcmkiLCJuZXh0U2Nyb2xsSW5mbyIsIm9uQm9keVNjcm9sbCIsImUiLCJ0cmlnZ2VyT25TY3JvbGwiLCJvbkZ1bGxUYWJsZVJlc2l6ZSIsIm9mZnNldFdpZHRoIiwiX2MiLCJjaGVja1Njcm9sbEJhclZpc2libGUiLCJtZXJnZWRXaWR0aCIsIm1vdW50ZWQiLCJ1c2VFZmZlY3QiLCJfUmVhY3QkdXNlU3RhdGUxMSIsIl9SZWFjdCR1c2VTdGF0ZTEyIiwic2Nyb2xsYmFyU2l6ZSIsInNldFNjcm9sbGJhclNpemUiLCJFbGVtZW50IiwiYm9keSIsInJlbmRlckZpeGVkSGVhZGVyVGFibGUiLCJmaXhlZEhvbGRlclBhc3NQcm9wcyIsImNoaWxkcmVuIiwicmVuZGVyRml4ZWRGb290ZXJUYWJsZSIsIlRhYmxlQ29tcG9uZW50IiwibWVyZ2VkVGFibGVMYXlvdXQiLCJfcmVmMyIsImVsbGlwc2lzIiwiZ3JvdXBUYWJsZU5vZGUiLCJoZWFkZXJQcm9wcyIsImNvbHVtQ291bnQiLCJlbXB0eU5vZGUiLCJib2R5VGFibGUiLCJtZWFzdXJlQ29sdW1uV2lkdGgiLCJib2R5Q29sR3JvdXAiLCJfcmVmNCIsImNhcHRpb25FbGVtZW50IiwiZGF0YVByb3BzIiwiYXJpYVByb3BzIiwiYXJpYSIsImJvZHlDb250ZW50IiwiX3JlZjUiLCJjb2xXaWR0aCIsIk51bWJlciIsImlzTmFOIiwiZml4ZWRIb2xkZXJQcm9wcyIsIm5vRGF0YSIsIm1heENvbnRlbnRTY3JvbGwiLCJzdGlja3lUb3BPZmZzZXQiLCJjb2xHcm91cCIsInN0aWNreUJvdHRvbU9mZnNldCIsImNvbnRlbnQiLCJ0YWJsZVN0eWxlIiwiZnVsbFRhYmxlIiwiX2RlZmluZVByb3BlcnR5Iiwic2VjdGlvbiIsIm9uUmVzaXplIiwiX3JlZjYiLCJmaXhlZEluZm9MaXN0IiwiVGFibGVDb250ZXh0VmFsdWUiLCJleHBhbmRlZFJvd0NsYXNzTmFtZSIsImV4cGFuZFJvd0J5Q2xpY2siLCJleHBhbmRlZFJvd09mZnNldCIsImluZGVudFNpemUiLCJhbGxDb2x1bW5zRml4ZWRMZWZ0IiwiZXZlcnkiLCJjb2wiLCJob3ZlclN0YXJ0Um93IiwiaG92ZXJFbmRSb3ciLCJyb3dFeHBhbmRhYmxlIiwiY2hpbGRyZW5Db2x1bW5OYW1lIiwiUHJvdmlkZXIiLCJ2YWx1ZSIsIlJlZlRhYmxlIiwiZm9yd2FyZFJlZiIsImRpc3BsYXlOYW1lIiwiZ2VuVGFibGUiLCJzaG91bGRUcmlnZ2VyUmVuZGVyIiwiSW1tdXRhYmxlVGFibGUiXSwibWFwcGluZ3MiOiI7O0FBQUEsU0FBU0EsR0FBRyxJQUFJQyxJQUFJLEVBQUVDLFFBQVEsSUFBSUMsU0FBUyxFQUFFQyxJQUFJLElBQUlDLEtBQUssUUFBUSxtQkFB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LElBQUk0QyxPQUFPLENBQUNDLEdBQUcsQ0FBQ0MsUUFBUSxLQUFLLFlBQVksRUFBRTtFQUN6Q3lOLFFBQVEsQ0FBQ0UsV0FBVyxHQUFHLE9BQU87QUFDaEM7QUFFQSxPQUFPLElBQU1DLFFBQVEsR0FBRyxTQUFYQSxRQUFRQSxDQUFJQyxtQkFBdUQsRUFBSTtFQUNsRixPQUFPdFMsYUFBYSxDQUFDa1MsUUFBUSxFQUFFSSxtQkFBbUIsQ0FBQztBQUNyRCxDQUFDO0FBRUQsSUFBTUMsY0FBYyxHQUFHRixRQUFRLENBQUEsQ0FBRTtBQVVoQ0UsY0FBcUMsQ0FBQzFTLGFBQWEsR0FBR0EsYUFBYTtBQUVuRTBTLGNBQXFDLENBQUN6UyxjQUFjLEdBQUdBLGNBQWM7QUFFckV5UyxjQUFxQyxDQUFDeFIsTUFBTSxHQUFHQSxNQUFNO0FBRXJEd1IsY0FBcUMsQ0FBQ3ZSLFdBQVcsR0FBR0EsV0FBVztBQUUvRHVSLGNBQXFDLENBQUNuUyxPQUFPLEdBQUdELGdCQUFnQjtBQUVqRSxlQUFlb1MsY0FBb0MiLCJmaWxlIjoiY29tcG9uZW50cy9UYWJsZS9pbnRlcm5hbC9rZXJuZWwvVGFibGUuanMiLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBqc3ggYXMgX2pzeCwgRnJhZ21lbnQgYXMgX0ZyYWdtZW50LCBqc3hzIGFzIF9qc3hzIH0gZnJvbSBcInJlYWN0L2pzeC1ydW50aW1lXCI7XG5pbXBvcnQgeyBjbHN4IH0gZnJvbSAnY2xzeCc7XG5pbXBvcnQgUmVzaXplT2JzZXJ2ZXIgZnJvbSAnLi4vLi4vLi4vUmVzaXplT2JzZXJ2ZXInO1xuaW1wb3J0IHsgZ2V0VGFyZ2V0U2Nyb2xsQmFyU2l6ZSB9IGZyb20gJy4vdXRpbHMvZ2V0U2Nyb2xsQmFyU2l6ZSc7XG5pbXBvcnQgeyB1c2VFdmVudENhbGxiYWNrIGFzIHVzZUV2ZW50IH0gZnJvbSAnQDFtb25leS9ob29rcyc7XG5pbXBvcnQgcGlja0F0dHJzIGZyb20gJy4vdXRpbHMvcGlja0F0dHJzJztcbmltcG9ydCBnZXRWYWx1ZSBmcm9tICcuL3V0aWxzL2dldCc7XG5pbXBvcnQgd2FybmluZyBmcm9tICcuL3V0aWxzL3dhcm5pbmcnO1xuaW1wb3J0ICogYXMgUmVhY3QgZnJvbSAncmVhY3QnO1xuaW1wb3J0IEJvZHkgZnJvbSAnLi9Cb2R5JztcbmltcG9ydCBDb2xHcm91cCBmcm9tICcuL0NvbEdyb3VwJztcbmltcG9ydCB7IEVYUEFORF9DT0xVTU4sIElOVEVSTkFMX0hPT0tTIH0gZnJvbSAnLi9jb25zdGFudCc7XG5pbXBvcnQgVGFibGVDb250ZXh0LCB7IG1ha2VJbW11dGFibGUgfSBmcm9tICcuL2NvbnRleHQvVGFibGVDb250ZXh0JztcbmltcG9ydCBGaXhlZEhvbGRlciBmcm9tICcuL0ZpeGVkSG9sZGVyJztcbmltcG9ydCBGb290ZXIsIHsgRm9vdGVyQ29tcG9uZW50cyB9IGZyb20gJy4vRm9vdGVyJztcbmltcG9ydCBTdW1tYXJ5IGZyb20gJy4vRm9vdGVyL1N1bW1hcnknO1xuaW1wb3J0IEhlYWRlciBmcm9tICcuL0hlYWRlci9IZWFkZXInO1xuaW1wb3J0IHVzZUNvbHVtbnMgZnJvbSAnLi9ob29rcy91c2VDb2x1bW5zJztcbmltcG9ydCB1c2VFeHBhbmQgZnJvbSAnLi9ob29rcy91c2VFeHBhbmQnO1xuaW1wb3J0IHVzZUZpeGVkSW5mbyBmcm9tICcuL2hvb2tzL3VzZUZpeGVkSW5mbyc7XG5pbXBvcnQgeyB1c2VUaW1lb3V0TG9jayB9IGZyb20gJy4vaG9va3MvdXNlRnJhbWUnO1xuaW1wb3J0IHVzZUhvdmVyIGZyb20gJy4vaG9va3MvdXNlSG92ZXInO1xuaW1wb3J0IHVzZVN0aWNreSBmcm9tICcuL2hvb2tzL3VzZVN0aWNreSc7XG5pbXBvcnQgdXNlU3RpY2t5T2Zmc2V0cyBmcm9tICcuL2hvb2tzL3VzZVN0aWNreU9mZnNldHMnO1xuaW1wb3J0IFBhbmVsIGZyb20gJy4vUGFuZWwnO1xuaW1wb3J0IFN0aWNreVNjcm9sbEJhciBmcm9tICcuL3N0aWNreVNjcm9sbEJhcic7XG5pbXBvcnQgQ29sdW1uIGZyb20gJy4vc3VnYXIvQ29sdW1uJztcbmltcG9ydCBDb2x1bW5Hcm91cCBmcm9tICcuL3N1Z2FyL0NvbHVtbkdyb3VwJztcbmltcG9ydCB7IGdldENvbHVtbnNLZXksIHZhbGlkYXRlVmFsdWUsIHZhbGlkTnVtYmVyVmFsdWUgfSBmcm9tICcuL3V0aWxzL3ZhbHVlVXRpbCc7XG5pbXBvcnQgeyBnZXRET00gfSBmcm9tICcuLi8uLi8uLi9SZXNpemVPYnNlcnZlci91dGlscy9yZWFjdFV0aWwnO1xuaW1wb3J0IGlzRXF1YWwgZnJvbSAnLi9zZWxlY3Rvci1jb250ZXh0L2lzRXF1YWwnO1xuaW1wb3J0IHsgdXNlTGF5b3V0RWZmZWN0IH0gZnJvbSAnQDFtb25leS9ob29rcyc7XG5leHBvcnQgY29uc3QgREVGQVVMVF9QUkVGSVggPSAncmMtdGFibGUnO1xuLy8gVXNlZCBmb3IgY29uZGl0aW9ucyBjYWNoZVxuY29uc3QgRU1QVFlfREFUQSA9IFtdO1xuLy8gVXNlZCBmb3IgY3VzdG9taXplIHNjcm9sbFxuY29uc3QgRU1QVFlfU0NST0xMX1RBUkdFVCA9IHt9O1xuZnVuY3Rpb24gZGVmYXVsdEVtcHR5KCkge1xuICAgIHJldHVybiAnTm8gRGF0YSc7XG59XG5jb25zdCBUYWJsZSA9ICh0YWJsZVByb3BzLCByZWYpID0+IHtcbiAgICB2YXIgX2EsIF9iO1xuICAgIGNvbnN0IHByb3BzID0gT2JqZWN0LmFzc2lnbih7IHJvd0tleTogJ2tleScsIHByZWZpeENsczogREVGQVVMVF9QUkVGSVgsIGVtcHR5VGV4dDogZGVmYXVsdEVtcHR5IH0sIHRhYmxlUHJvcHMpO1xuICAgIGNvbnN0IHsgcHJlZml4Q2xzLCBjbGFzc05hbWUsIHJvd0NsYXNzTmFtZSwgc3R5bGUsIGNsYXNzTmFtZXMsIHN0eWxlcywgZGF0YSwgcm93S2V5LCBzY3JvbGwsIHRhYmxlTGF5b3V0LCBkaXJlY3Rpb24sIFxuICAgIC8vIEFkZGl0aW9uYWwgUGFydFxuICAgIHRpdGxlLCBmb290ZXIsIHN1bW1hcnksIGNhcHRpb24sIFxuICAgIC8vIEN1c3RvbWl6ZVxuICAgIGlkLCBzaG93SGVhZGVyLCBjb21wb25lbnRzLCBlbXB0eVRleHQsIG9uUm93LCBvbkhlYWRlclJvdywgXG4gICAgLy8gTWVhc3VyZSBSb3dcbiAgICBtZWFzdXJlUm93UmVuZGVyLCBcbiAgICAvLyBFdmVudHNcbiAgICBvblNjcm9sbCwgXG4gICAgLy8gSW50ZXJuYWxcbiAgICBpbnRlcm5hbEhvb2tzLCB0cmFuc2Zvcm1Db2x1bW5zLCBpbnRlcm5hbFJlZnMsIHRhaWxvciwgZ2V0Q29udGFpbmVyV2lkdGgsIHN0aWNreSwgcm93SG92ZXJhYmxlID0gdHJ1ZSwgfSA9IHByb3BzO1xuICAgIGNvbnN0IG1lcmdlZERhdGEgPSBkYXRhIHx8IEVNUFRZX0RBVEE7XG4gICAgY29uc3QgaGFzRGF0YSA9ICEhbWVyZ2VkRGF0YS5sZW5ndGg7XG4gICAgY29uc3QgdXNlSW50ZXJuYWxIb29rcyA9IGludGVybmFsSG9va3MgPT09IElOVEVSTkFMX0hPT0tTO1xuICAgIC8vID09PT09PT09PT09PT09PT09PT09PSBXYXJuaW5nID09PT09PT09PT09PT09PT09PT09PT1cbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09ICdwcm9kdWN0aW9uJykge1xuICAgICAgICBbXG4gICAgICAgICAgICAnb25Sb3dDbGljaycsXG4gICAgICAgICAgICAnb25Sb3dEb3VibGVDbGljaycsXG4gICAgICAgICAgICAnb25Sb3dDb250ZXh0TWVudScsXG4gICAgICAgICAgICAnb25Sb3dNb3VzZUVudGVyJyxcbiAgICAgICAgICAgICdvblJvd01vdXNlTGVhdmUnLFxuICAgICAgICBdLmZvckVhY2gobmFtZSA9PiB7XG4gICAgICAgICAgICB3YXJuaW5nKHByb3BzW25hbWVdID09PSB1bmRlZmluZWQsIGBcXGAke25hbWV9XFxgIGlzIHJlbW92ZWQsIHBsZWFzZSB1c2UgXFxgb25Sb3dcXGAgaW5zdGVhZC5gKTtcbiAgICAgICAgfSk7XG4gICAgICAgIHdhcm5pbmcoISgnZ2V0Qm9keVdyYXBwZXInIGluIHByb3BzKSwgJ2BnZXRCb2R5V3JhcHBlcmAgaXMgZGVwcmVjYXRlZCwgcGxlYXNlIHVzZSBjdXN0b20gYGNvbXBvbmVudHNgIGluc3RlYWQuJyk7XG4gICAgfVxuICAgIC8vID09PT09PT09PT09PT09PT09PT09IEN1c3RvbWl6ZSA9PT09PT09PT09PT09PT09PT09PT1cbiAgICBjb25zdCBnZXRDb21wb25lbnQgPSBSZWFjdC51c2VDYWxsYmFjaygocGF0aCwgZGVmYXVsdENvbXBvbmVudCkgPT4gZ2V0VmFsdWUoY29tcG9uZW50cywgcGF0aCkgfHwgZGVmYXVsdENvbXBvbmVudCwgW2NvbXBvbmVudHNdKTtcbiAgICBjb25zdCBnZXRSb3dLZXkgPSBSZWFjdC51c2VNZW1vKCgpID0+IHtcbiAgICAgICAgaWYgKHR5cGVvZiByb3dLZXkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHJldHVybiByb3dLZXk7XG4gICAgICAgIH1cbiAgICAgICAgcmV0dXJuIChyZWNvcmQpID0+IHtcbiAgICAgICAgICAgIGNvbnN0IGtleSA9IHJlY29yZCAmJiByZWNvcmRbcm93S2V5XTtcbiAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgd2FybmluZyhrZXkgIT09IHVuZGVmaW5lZCwgJ0VhY2ggcmVjb3JkIGluIHRhYmxlIHNob3VsZCBoYXZlIGEgdW5pcXVlIGBrZXlgIHByb3AsIG9yIHNldCBgcm93S2V5YCB0byBhbiB1bmlxdWUgcHJpbWFyeSBrZXkuJyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICByZXR1cm4ga2V5O1xuICAgICAgICB9O1xuICAgIH0sIFtyb3dLZXldKTtcbiAgICBjb25zdCBjdXN0b21pemVTY3JvbGxCb2R5ID0gZ2V0Q29tcG9uZW50KFsnYm9keSddKTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09IEhvdmVyID09PT09PT09PT09PT09PT09PT09PT09XG4gICAgY29uc3QgW3N0YXJ0Um93LCBlbmRSb3csIG9uSG92ZXJdID0gdXNlSG92ZXIoKTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09IEV4cGFuZCA9PT09PT09PT09PT09PT09PT09PT09XG4gICAgY29uc3QgW2V4cGFuZGFibGVDb25maWcsIGV4cGFuZGFibGVUeXBlLCBtZXJnZWRFeHBhbmRlZEtleXMsIG1lcmdlZEV4cGFuZEljb24sIG1lcmdlZENoaWxkcmVuQ29sdW1uTmFtZSwgb25UcmlnZ2VyRXhwYW5kLF0gPSB1c2VFeHBhbmQocHJvcHMsIG1lcmdlZERhdGEsIGdldFJvd0tleSk7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PSBDb2x1bW4gPT09PT09PT09PT09PT09PT09PT09PVxuICAgIGNvbnN0IHNjcm9sbFggPSBzY3JvbGwgPT09IG51bGwgfHwgc2Nyb2xsID09PSB2b2lkIDAgPyB2b2lkIDAgOiBzY3JvbGwueDtcbiAgICBjb25zdCBbY29tcG9uZW50V2lkdGgsIHNldENvbXBvbmVudFdpZHRoXSA9IFJlYWN0LnVzZVN0YXRlKDApO1xuICAgIGNvbnN0IFtjb2x1bW5zLCBmbGF0dGVuQ29sdW1ucywgZmxhdHRlblNjcm9sbFhdID0gdXNlQ29sdW1ucyhPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgcHJvcHMpLCBleHBhbmRhYmxlQ29uZmlnKSwgeyBleHBhbmRhYmxlOiAhIWV4cGFuZGFibGVDb25maWcuZXhwYW5kZWRSb3dSZW5kZXIsIGNvbHVtblRpdGxlOiBleHBhbmRhYmxlQ29uZmlnLmNvbHVtblRpdGxlLCBleHBhbmRlZEtleXM6IG1lcmdlZEV4cGFuZGVkS2V5cywgZ2V0Um93S2V5LFxuICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYW50LWRlc2lnbi9hbnQtZGVzaWduL2lzc3Vlcy8yMzg5NFxuICAgICAgICBvblRyaWdnZXJFeHBhbmQsIGV4cGFuZEljb246IG1lcmdlZEV4cGFuZEljb24sIGV4cGFuZEljb25Db2x1bW5JbmRleDogZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRJY29uQ29sdW1uSW5kZXgsIGRpcmVjdGlvbiwgc2Nyb2xsV2lkdGg6IHVzZUludGVybmFsSG9va3MgJiYgdGFpbG9yICYmIHR5cGVvZiBzY3JvbGxYID09PSAnbnVtYmVyJyA/IHNjcm9sbFggOiBudWxsLCBjbGllbnRXaWR0aDogY29tcG9uZW50V2lkdGggfSksIHVzZUludGVybmFsSG9va3MgPyB0cmFuc2Zvcm1Db2x1bW5zIDogbnVsbCk7XG4gICAgY29uc3QgbWVyZ2VkU2Nyb2xsWCA9IGZsYXR0ZW5TY3JvbGxYICE9PSBudWxsICYmIGZsYXR0ZW5TY3JvbGxYICE9PSB2b2lkIDAgPyBmbGF0dGVuU2Nyb2xsWCA6IHNjcm9sbFg7XG4gICAgY29uc3QgY29sdW1uQ29udGV4dCA9IFJlYWN0LnVzZU1lbW8oKCkgPT4gKHsgY29sdW1ucywgZmxhdHRlbkNvbHVtbnMgfSksIFtjb2x1bW5zLCBmbGF0dGVuQ29sdW1uc10pO1xuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09IFJlZnMgPT09PT09PT09PT09PT09PT09PT09PT1cbiAgICBjb25zdCBmdWxsVGFibGVSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gICAgY29uc3Qgc2Nyb2xsSGVhZGVyUmVmID0gUmVhY3QudXNlUmVmKG51bGwpO1xuICAgIGNvbnN0IHNjcm9sbEJvZHlSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gICAgY29uc3Qgc2Nyb2xsQm9keUNvbnRhaW5lclJlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgICBSZWFjdC51c2VJbXBlcmF0aXZlSGFuZGxlKHJlZiwgKCkgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgICAgbmF0aXZlRWxlbWVudDogZnVsbFRhYmxlUmVmLmN1cnJlbnQsXG4gICAgICAgICAgICBzY3JvbGxUbzogY29uZmlnID0+IHtcbiAgICAgICAgICAgICAgICB2YXIgX2EsIF9iO1xuICAgICAgICAgICAgICAgIGlmIChzY3JvbGxCb2R5UmVmLmN1cnJlbnQgaW5zdGFuY2VvZiBIVE1MRWxlbWVudCkge1xuICAgICAgICAgICAgICAgICAgICAvLyBOYXRpdmUgc2Nyb2xsXG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgaW5kZXgsIHRvcCwga2V5LCBvZmZzZXQgfSA9IGNvbmZpZztcbiAgICAgICAgICAgICAgICAgICAgaWYgKHZhbGlkTnVtYmVyVmFsdWUodG9wKSkge1xuICAgICAgICAgICAgICAgICAgICAgICAgLy8gSW4gdG9wIG1vZGUsIG9mZnNldCBpcyBpZ25vcmVkXG4gICAgICAgICAgICAgICAgICAgICAgICAoX2EgPSBzY3JvbGxCb2R5UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5zY3JvbGxUbyh7IHRvcCB9KTtcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IG1lcmdlZEtleSA9IGtleSAhPT0gbnVsbCAmJiBrZXkgIT09IHZvaWQgMCA/IGtleSA6IGdldFJvd0tleShtZXJnZWREYXRhW2luZGV4XSk7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB0YXJnZXRFbGVtZW50ID0gc2Nyb2xsQm9keVJlZi5jdXJyZW50LnF1ZXJ5U2VsZWN0b3IoYFtkYXRhLXJvdy1rZXk9XCIke21lcmdlZEtleX1cIl1gKTtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmICh0YXJnZXRFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgaWYgKCFvZmZzZXQpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gTm8gb2Zmc2V0LCB1c2Ugc2Nyb2xsSW50b1ZpZXcgZm9yIGRlZmF1bHQgYmVoYXZpb3JcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0RWxlbWVudC5zY3JvbGxJbnRvVmlldygpO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgLy8gV2l0aCBvZmZzZXQsIHVzZSBlbGVtZW50J3Mgb2Zmc2V0VG9wICsgb2Zmc2V0XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IGVsZW1lbnRUb3AgPSB0YXJnZXRFbGVtZW50Lm9mZnNldFRvcDtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgc2Nyb2xsQm9keVJlZi5jdXJyZW50LnNjcm9sbFRvKHsgdG9wOiBlbGVtZW50VG9wICsgb2Zmc2V0IH0pO1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBlbHNlIGlmICgoX2IgPSBzY3JvbGxCb2R5UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9iID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYi5zY3JvbGxUbykge1xuICAgICAgICAgICAgICAgICAgICAvLyBQYXNzIHRvIHByb3h5XG4gICAgICAgICAgICAgICAgICAgIHNjcm9sbEJvZHlSZWYuY3VycmVudC5zY3JvbGxUbyhjb25maWcpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH0sXG4gICAgICAgIH07XG4gICAgfSk7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PSBTY3JvbGwgPT09PT09PT09PT09PT09PT09PT09PVxuICAgIGNvbnN0IHNjcm9sbFN1bW1hcnlSZWYgPSBSZWFjdC51c2VSZWYobnVsbCk7XG4gICAgY29uc3QgW3NoYWRvd1N0YXJ0LCBzZXRTaGFkb3dTdGFydF0gPSBSZWFjdC51c2VTdGF0ZShmYWxzZSk7XG4gICAgY29uc3QgW3NoYWRvd0VuZCwgc2V0U2hhZG93RW5kXSA9IFJlYWN0LnVzZVN0YXRlKGZhbHNlKTtcbiAgICBjb25zdCBbY29sc1dpZHRocywgdXBkYXRlQ29sc1dpZHRoc10gPSBSZWFjdC51c2VTdGF0ZShuZXcgTWFwKCkpO1xuICAgIC8vIENvbnZlcnQgbWFwIHRvIG51bWJlciB3aWR0aFxuICAgIGNvbnN0IGNvbHNLZXlzID0gZ2V0Q29sdW1uc0tleShmbGF0dGVuQ29sdW1ucyk7XG4gICAgY29uc3QgcHVyZUNvbFdpZHRocyA9IGNvbHNLZXlzLm1hcChjb2x1bW5LZXkgPT4gY29sc1dpZHRocy5nZXQoY29sdW1uS2V5KSk7XG4gICAgY29uc3QgY29sV2lkdGhzID0gUmVhY3QudXNlTWVtbygoKSA9PiBwdXJlQ29sV2lkdGhzLCBbcHVyZUNvbFdpZHRocy5qb2luKCdfJyldKTtcbiAgICBjb25zdCBzdGlja3lPZmZzZXRzID0gdXNlU3RpY2t5T2Zmc2V0cyhjb2xXaWR0aHMsIGZsYXR0ZW5Db2x1bW5zKTtcbiAgICBjb25zdCBmaXhIZWFkZXIgPSBzY3JvbGwgJiYgdmFsaWRhdGVWYWx1ZShzY3JvbGwueSk7XG4gICAgY29uc3QgaG9yaXpvblNjcm9sbCA9IChzY3JvbGwgJiYgdmFsaWRhdGVWYWx1ZShtZXJnZWRTY3JvbGxYKSkgfHwgQm9vbGVhbihleHBhbmRhYmxlQ29uZmlnLmZpeGVkKTtcbiAgICBjb25zdCBmaXhDb2x1bW4gPSBob3Jpem9uU2Nyb2xsICYmIGZsYXR0ZW5Db2x1bW5zLnNvbWUoKHsgZml4ZWQgfSkgPT4gZml4ZWQpO1xuICAgIC8vIFN0aWNreVxuICAgIGNvbnN0IHN0aWNreVJlZiA9IFJlYWN0LnVzZVJlZihudWxsKTtcbiAgICBjb25zdCB7IGlzU3RpY2t5LCBvZmZzZXRIZWFkZXIsIG9mZnNldFN1bW1hcnksIG9mZnNldFNjcm9sbCwgc3RpY2t5Q2xhc3NOYW1lLCBjb250YWluZXIgfSA9IHVzZVN0aWNreShzdGlja3ksIHByZWZpeENscyk7XG4gICAgLy8gRm9vdGVyIChGaXggZm9vdGVyIG11c3QgZml4ZWQgaGVhZGVyKVxuICAgIGNvbnN0IHN1bW1hcnlOb2RlID0gUmVhY3QudXNlTWVtbygoKSA9PiBzdW1tYXJ5ID09PSBudWxsIHx8IHN1bW1hcnkgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN1bW1hcnkobWVyZ2VkRGF0YSksIFtzdW1tYXJ5LCBtZXJnZWREYXRhXSk7XG4gICAgY29uc3QgZml4Rm9vdGVyID0gKGZpeEhlYWRlciB8fCBpc1N0aWNreSkgJiZcbiAgICAgICAgUmVhY3QuaXNWYWxpZEVsZW1lbnQoc3VtbWFyeU5vZGUpICYmXG4gICAgICAgIHN1bW1hcnlOb2RlLnR5cGUgPT09IFN1bW1hcnkgJiZcbiAgICAgICAgc3VtbWFyeU5vZGUucHJvcHMuZml4ZWQ7XG4gICAgLy8gU2Nyb2xsXG4gICAgbGV0IHNjcm9sbFhTdHlsZTtcbiAgICBsZXQgc2Nyb2xsWVN0eWxlO1xuICAgIGxldCBzY3JvbGxUYWJsZVN0eWxlO1xuICAgIGlmIChmaXhIZWFkZXIpIHtcbiAgICAgICAgc2Nyb2xsWVN0eWxlID0ge1xuICAgICAgICAgICAgb3ZlcmZsb3dZOiBoYXNEYXRhID8gJ3Njcm9sbCcgOiAnYXV0bycsXG4gICAgICAgICAgICBtYXhIZWlnaHQ6IHNjcm9sbC55LFxuICAgICAgICB9O1xuICAgIH1cbiAgICBpZiAoaG9yaXpvblNjcm9sbCkge1xuICAgICAgICBzY3JvbGxYU3R5bGUgPSB7IG92ZXJmbG93WDogJ2F1dG8nIH07XG4gICAgICAgIC8vIFdoZW4gbm8gdmVydGljYWwgc2Nyb2xsYmFyLCBzaG91bGQgaGlkZSBpdFxuICAgICAgICAvLyBodHRwczovL2dpdGh1Yi5jb20vYW50LWRlc2lnbi9hbnQtZGVzaWduL3B1bGwvMjA3MDVcbiAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FudC1kZXNpZ24vYW50LWRlc2lnbi9pc3N1ZXMvMjE4NzlcbiAgICAgICAgaWYgKCFmaXhIZWFkZXIpIHtcbiAgICAgICAgICAgIHNjcm9sbFlTdHlsZSA9IHsgb3ZlcmZsb3dZOiAnaGlkZGVuJyB9O1xuICAgICAgICB9XG4gICAgICAgIHNjcm9sbFRhYmxlU3R5bGUgPSB7XG4gICAgICAgICAgICB3aWR0aDogbWVyZ2VkU2Nyb2xsWCA9PT0gdHJ1ZSA/ICdhdXRvJyA6IG1lcmdlZFNjcm9sbFgsXG4gICAgICAgICAgICBtaW5XaWR0aDogJzEwMCUnLFxuICAgICAgICB9O1xuICAgIH1cbiAgICBjb25zdCBvbkNvbHVtblJlc2l6ZSA9IFJlYWN0LnVzZUNhbGxiYWNrKChjb2x1bW5LZXksIHdpZHRoKSA9PiB7XG4gICAgICAgIHVwZGF0ZUNvbHNXaWR0aHMod2lkdGhzID0+IHtcbiAgICAgICAgICAgIGlmICh3aWR0aHMuZ2V0KGNvbHVtbktleSkgIT09IHdpZHRoKSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbmV3V2lkdGhzID0gbmV3IE1hcCh3aWR0aHMpO1xuICAgICAgICAgICAgICAgIG5ld1dpZHRocy5zZXQoY29sdW1uS2V5LCB3aWR0aCk7XG4gICAgICAgICAgICAgICAgcmV0dXJuIG5ld1dpZHRocztcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIHJldHVybiB3aWR0aHM7XG4gICAgICAgIH0pO1xuICAgIH0sIFtdKTtcbiAgICBjb25zdCBbc2V0U2Nyb2xsVGFyZ2V0LCBnZXRTY3JvbGxUYXJnZXRdID0gdXNlVGltZW91dExvY2sobnVsbCk7XG4gICAgZnVuY3Rpb24gZm9yY2VTY3JvbGwoc2Nyb2xsTGVmdCwgdGFyZ2V0KSB7XG4gICAgICAgIGlmICghdGFyZ2V0KSB7XG4gICAgICAgICAgICByZXR1cm47XG4gICAgICAgIH1cbiAgICAgICAgaWYgKHR5cGVvZiB0YXJnZXQgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIHRhcmdldChzY3JvbGxMZWZ0KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICh0YXJnZXQuc2Nyb2xsTGVmdCAhPT0gc2Nyb2xsTGVmdCkge1xuICAgICAgICAgICAgdGFyZ2V0LnNjcm9sbExlZnQgPSBzY3JvbGxMZWZ0O1xuICAgICAgICAgICAgLy8gRGVsYXkgdG8gZm9yY2Ugc2Nyb2xsIHBvc2l0aW9uIGlmIG5vdCBzeW5jXG4gICAgICAgICAgICAvLyByZWY6IGh0dHBzOi8vZ2l0aHViLmNvbS9hbnQtZGVzaWduL2FudC1kZXNpZ24vaXNzdWVzLzM3MTc5XG4gICAgICAgICAgICBpZiAodGFyZ2V0LnNjcm9sbExlZnQgIT09IHNjcm9sbExlZnQpIHtcbiAgICAgICAgICAgICAgICBzZXRUaW1lb3V0KCgpID0+IHtcbiAgICAgICAgICAgICAgICAgICAgdGFyZ2V0LnNjcm9sbExlZnQgPSBzY3JvbGxMZWZ0O1xuICAgICAgICAgICAgICAgIH0sIDApO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfVxuICAgIGNvbnN0IFtzY3JvbGxJbmZvLCBzZXRTY3JvbGxJbmZvXSA9IFJlYWN0LnVzZVN0YXRlKFswLCAwXSk7XG4gICAgY29uc3Qgb25JbnRlcm5hbFNjcm9sbCA9IHVzZUV2ZW50KCh7IGN1cnJlbnRUYXJnZXQsIHNjcm9sbExlZnQgfSkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGNvbnN0IG1lcmdlZFNjcm9sbExlZnQgPSB0eXBlb2Ygc2Nyb2xsTGVmdCA9PT0gJ251bWJlcicgPyBzY3JvbGxMZWZ0IDogY3VycmVudFRhcmdldC5zY3JvbGxMZWZ0O1xuICAgICAgICBjb25zdCBjb21wYXJlVGFyZ2V0ID0gY3VycmVudFRhcmdldCB8fCBFTVBUWV9TQ1JPTExfVEFSR0VUO1xuICAgICAgICBpZiAoIWdldFNjcm9sbFRhcmdldCgpIHx8IGdldFNjcm9sbFRhcmdldCgpID09PSBjb21wYXJlVGFyZ2V0KSB7XG4gICAgICAgICAgICBzZXRTY3JvbGxUYXJnZXQoY29tcGFyZVRhcmdldCk7XG4gICAgICAgICAgICBmb3JjZVNjcm9sbChtZXJnZWRTY3JvbGxMZWZ0LCBzY3JvbGxIZWFkZXJSZWYuY3VycmVudCk7XG4gICAgICAgICAgICBmb3JjZVNjcm9sbChtZXJnZWRTY3JvbGxMZWZ0LCBzY3JvbGxCb2R5UmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgZm9yY2VTY3JvbGwobWVyZ2VkU2Nyb2xsTGVmdCwgc2Nyb2xsU3VtbWFyeVJlZi5jdXJyZW50KTtcbiAgICAgICAgICAgIGZvcmNlU2Nyb2xsKG1lcmdlZFNjcm9sbExlZnQsIChfYSA9IHN0aWNreVJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2Euc2V0U2Nyb2xsTGVmdCk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgbWVhc3VyZVRhcmdldCA9IGN1cnJlbnRUYXJnZXQgfHwgc2Nyb2xsSGVhZGVyUmVmLmN1cnJlbnQ7XG4gICAgICAgIGlmIChtZWFzdXJlVGFyZ2V0KSB7XG4gICAgICAgICAgICBjb25zdCBzY3JvbGxXaWR0aCA9IFxuICAgICAgICAgICAgLy8gU2hvdWxkIHVzZSBtZXJnZWRTY3JvbGxYIGluIHZpcnR1YWwgdGFibGUodXNlSW50ZXJuYWxIb29rcyAmJiB0YWlsb3IgPT09IHRydWUpXG4gICAgICAgICAgICB1c2VJbnRlcm5hbEhvb2tzICYmIHRhaWxvciAmJiB0eXBlb2YgbWVyZ2VkU2Nyb2xsWCA9PT0gJ251bWJlcidcbiAgICAgICAgICAgICAgICA/IG1lcmdlZFNjcm9sbFhcbiAgICAgICAgICAgICAgICA6IG1lYXN1cmVUYXJnZXQuc2Nyb2xsV2lkdGg7XG4gICAgICAgICAgICBjb25zdCBjbGllbnRXaWR0aCA9IG1lYXN1cmVUYXJnZXQuY2xpZW50V2lkdGg7XG4gICAgICAgICAgICBjb25zdCBhYnNTY3JvbGxTdGFydCA9IE1hdGguYWJzKG1lcmdlZFNjcm9sbExlZnQpO1xuICAgICAgICAgICAgc2V0U2Nyb2xsSW5mbyhvcmkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5leHRTY3JvbGxJbmZvID0gW2Fic1Njcm9sbFN0YXJ0LCBzY3JvbGxXaWR0aCAtIGNsaWVudFdpZHRoXTtcbiAgICAgICAgICAgICAgICByZXR1cm4gaXNFcXVhbChvcmksIG5leHRTY3JvbGxJbmZvKSA/IG9yaSA6IG5leHRTY3JvbGxJbmZvO1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgICAvLyBUaGVyZSBpcyBubyBzcGFjZSB0byBzY3JvbGxcbiAgICAgICAgICAgIGlmIChzY3JvbGxXaWR0aCA9PT0gY2xpZW50V2lkdGgpIHtcbiAgICAgICAgICAgICAgICBzZXRTaGFkb3dTdGFydChmYWxzZSk7XG4gICAgICAgICAgICAgICAgc2V0U2hhZG93RW5kKGZhbHNlKTtcbiAgICAgICAgICAgICAgICByZXR1cm47XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBzZXRTaGFkb3dTdGFydChhYnNTY3JvbGxTdGFydCA+IDApO1xuICAgICAgICAgICAgc2V0U2hhZG93RW5kKGFic1Njcm9sbFN0YXJ0IDwgc2Nyb2xsV2lkdGggLSBjbGllbnRXaWR0aCAtIDEpO1xuICAgICAgICB9XG4gICAgfSk7XG4gICAgY29uc3Qgb25Cb2R5U2Nyb2xsID0gdXNlRXZlbnQoKGUpID0+IHtcbiAgICAgICAgb25JbnRlcm5hbFNjcm9sbChlKTtcbiAgICAgICAgb25TY3JvbGwgPT09IG51bGwgfHwgb25TY3JvbGwgPT09IHZvaWQgMCA/IHZvaWQgMCA6IG9uU2Nyb2xsKGUpO1xuICAgIH0pO1xuICAgIGNvbnN0IHRyaWdnZXJPblNjcm9sbCA9ICgpID0+IHtcbiAgICAgICAgdmFyIF9hO1xuICAgICAgICBpZiAoaG9yaXpvblNjcm9sbCAmJiBzY3JvbGxCb2R5UmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIG9uSW50ZXJuYWxTY3JvbGwoe1xuICAgICAgICAgICAgICAgIGN1cnJlbnRUYXJnZXQ6IGdldERPTShzY3JvbGxCb2R5UmVmLmN1cnJlbnQpLFxuICAgICAgICAgICAgICAgIHNjcm9sbExlZnQ6IChfYSA9IHNjcm9sbEJvZHlSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLnNjcm9sbExlZnQsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgIHNldFNoYWRvd1N0YXJ0KGZhbHNlKTtcbiAgICAgICAgICAgIHNldFNoYWRvd0VuZChmYWxzZSk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGNvbnN0IG9uRnVsbFRhYmxlUmVzaXplID0gKG9mZnNldFdpZHRoKSA9PiB7XG4gICAgICAgIHZhciBfYSwgX2IsIF9jO1xuICAgICAgICAoX2EgPSBzdGlja3lSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmNoZWNrU2Nyb2xsQmFyVmlzaWJsZSgpO1xuICAgICAgICBsZXQgbWVyZ2VkV2lkdGggPSAoX2MgPSBvZmZzZXRXaWR0aCAhPT0gbnVsbCAmJiBvZmZzZXRXaWR0aCAhPT0gdm9pZCAwID8gb2Zmc2V0V2lkdGggOiAoX2IgPSBmdWxsVGFibGVSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2IgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9iLm9mZnNldFdpZHRoKSAhPT0gbnVsbCAmJiBfYyAhPT0gdm9pZCAwID8gX2MgOiAwO1xuICAgICAgICBpZiAodXNlSW50ZXJuYWxIb29rcyAmJiBnZXRDb250YWluZXJXaWR0aCAmJiBmdWxsVGFibGVSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgbWVyZ2VkV2lkdGggPSBnZXRDb250YWluZXJXaWR0aChmdWxsVGFibGVSZWYuY3VycmVudCwgbWVyZ2VkV2lkdGgpIHx8IG1lcmdlZFdpZHRoO1xuICAgICAgICB9XG4gICAgICAgIGlmIChtZXJnZWRXaWR0aCAhPT0gY29tcG9uZW50V2lkdGgpIHtcbiAgICAgICAgICAgIHRyaWdnZXJPblNjcm9sbCgpO1xuICAgICAgICAgICAgc2V0Q29tcG9uZW50V2lkdGgobWVyZ2VkV2lkdGgpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICAvLyBmaXggaHR0cHM6Ly9naXRodWIuY29tL2FudC1kZXNpZ24vYW50LWRlc2lnbi9pc3N1ZXMvNDkyNzlcbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAoaG9yaXpvblNjcm9sbCkge1xuICAgICAgICAgICAgb25GdWxsVGFibGVSZXNpemUoKTtcbiAgICAgICAgfVxuICAgIH0sIFtob3Jpem9uU2Nyb2xsXSk7XG4gICAgLy8gU3luYyBzY3JvbGwgYmFyIHdoZW4gaW5pdCBvciBgaG9yaXpvblNjcm9sbGAsIGBkYXRhYCBhbmQgYGNvbHVtbnMubGVuZ3RoYCBjaGFuZ2VkXG4gICAgY29uc3QgbW91bnRlZCA9IFJlYWN0LnVzZVJlZihmYWxzZSk7XG4gICAgUmVhY3QudXNlRWZmZWN0KCgpID0+IHtcbiAgICAgICAgLy8gb25GdWxsVGFibGVSZXNpemUgd2lsbCBiZSB0cmlnZ2VyIG9uY2Ugd2hlbiBSZXNpemVPYnNlcnZlciBpcyBtb3VudGVkXG4gICAgICAgIC8vIFRoaXMgd2lsbCByZWR1Y2Ugb25lIGR1cGxpY2F0ZWQgdHJpZ2dlck9uU2Nyb2xsIHRpbWVcbiAgICAgICAgaWYgKG1vdW50ZWQuY3VycmVudCkge1xuICAgICAgICAgICAgdHJpZ2dlck9uU2Nyb2xsKCk7XG4gICAgICAgIH1cbiAgICB9LCBbaG9yaXpvblNjcm9sbCwgZGF0YSwgY29sdW1ucy5sZW5ndGhdKTtcbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBtb3VudGVkLmN1cnJlbnQgPSB0cnVlO1xuICAgIH0sIFtdKTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT0gRWZmZWN0cyA9PT09PT09PT09PT09PT09PT09PT09XG4gICAgY29uc3QgW3Njcm9sbGJhclNpemUsIHNldFNjcm9sbGJhclNpemVdID0gUmVhY3QudXNlU3RhdGUoMCk7XG4gICAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKCF0YWlsb3IgfHwgIXVzZUludGVybmFsSG9va3MpIHtcbiAgICAgICAgICAgIGlmIChzY3JvbGxCb2R5UmVmLmN1cnJlbnQgaW5zdGFuY2VvZiBFbGVtZW50KSB7XG4gICAgICAgICAgICAgICAgc2V0U2Nyb2xsYmFyU2l6ZShnZXRUYXJnZXRTY3JvbGxCYXJTaXplKHNjcm9sbEJvZHlSZWYuY3VycmVudCkud2lkdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgc2V0U2Nyb2xsYmFyU2l6ZShnZXRUYXJnZXRTY3JvbGxCYXJTaXplKHNjcm9sbEJvZHlDb250YWluZXJSZWYuY3VycmVudCkud2lkdGgpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfSwgW10pO1xuICAgIC8vID09PT09PT09PT09PT09PT09PSBJTlRFUk5BTCBIT09LUyA9PT09PT09PT09PT09PT09PT1cbiAgICBSZWFjdC51c2VFZmZlY3QoKCkgPT4ge1xuICAgICAgICBpZiAodXNlSW50ZXJuYWxIb29rcyAmJiBpbnRlcm5hbFJlZnMpIHtcbiAgICAgICAgICAgIGludGVybmFsUmVmcy5ib2R5LmN1cnJlbnQgPSBzY3JvbGxCb2R5UmVmLmN1cnJlbnQ7XG4gICAgICAgIH1cbiAgICB9KTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAvLyA9PSAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBSZW5kZXIgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgPT1cbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICAvLyA9PT09PT09PT09PT09PT09PT09IFJlbmRlcjogRnVuYyA9PT09PT09PT09PT09PT09PT09XG4gICAgY29uc3QgcmVuZGVyRml4ZWRIZWFkZXJUYWJsZSA9IFJlYWN0LnVzZUNhbGxiYWNrKGZpeGVkSG9sZGVyUGFzc1Byb3BzID0+IChfanN4cyhfRnJhZ21lbnQsIHsgY2hpbGRyZW46IFtfanN4KEhlYWRlciwgT2JqZWN0LmFzc2lnbih7fSwgZml4ZWRIb2xkZXJQYXNzUHJvcHMpKSwgZml4Rm9vdGVyID09PSAndG9wJyAmJiBfanN4KEZvb3RlciwgT2JqZWN0LmFzc2lnbih7fSwgZml4ZWRIb2xkZXJQYXNzUHJvcHMsIHsgY2hpbGRyZW46IHN1bW1hcnlOb2RlIH0pKV0gfSkpLCBbZml4Rm9vdGVyLCBzdW1tYXJ5Tm9kZV0pO1xuICAgIGNvbnN0IHJlbmRlckZpeGVkRm9vdGVyVGFibGUgPSBSZWFjdC51c2VDYWxsYmFjayhmaXhlZEhvbGRlclBhc3NQcm9wcyA9PiBfanN4KEZvb3RlciwgT2JqZWN0LmFzc2lnbih7fSwgZml4ZWRIb2xkZXJQYXNzUHJvcHMsIHsgY2hpbGRyZW46IHN1bW1hcnlOb2RlIH0pKSwgW3N1bW1hcnlOb2RlXSk7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PSBSZW5kZXI6IE5vZGUgPT09PT09PT09PT09PT09PT09PVxuICAgIGNvbnN0IFRhYmxlQ29tcG9uZW50ID0gZ2V0Q29tcG9uZW50KFsndGFibGUnXSwgJ3RhYmxlJyk7XG4gICAgLy8gVGFibGUgbGF5b3V0XG4gICAgY29uc3QgbWVyZ2VkVGFibGVMYXlvdXQgPSBSZWFjdC51c2VNZW1vKCgpID0+IHtcbiAgICAgICAgaWYgKHRhYmxlTGF5b3V0KSB7XG4gICAgICAgICAgICByZXR1cm4gdGFibGVMYXlvdXQ7XG4gICAgICAgIH1cbiAgICAgICAgLy8gaHR0cHM6Ly9naXRodWIuY29tL2FudC1kZXNpZ24vYW50LWRlc2lnbi9pc3N1ZXMvMjUyMjdcbiAgICAgICAgLy8gV2hlbiBzY3JvbGwueCBpcyBtYXgtY29udGVudCwgbm8gbmVlZCB0byBmaXggdGFibGUgbGF5b3V0XG4gICAgICAgIC8vIGl0J3Mgd2lkdGggc2hvdWxkIHN0cmV0Y2ggb3V0IHRvIGZpdCBjb250ZW50XG4gICAgICAgIGlmIChmaXhDb2x1bW4pIHtcbiAgICAgICAgICAgIHJldHVybiBtZXJnZWRTY3JvbGxYID09PSAnbWF4LWNvbnRlbnQnID8gJ2F1dG8nIDogJ2ZpeGVkJztcbiAgICAgICAgfVxuICAgICAgICBpZiAoZml4SGVhZGVyIHx8IGlzU3RpY2t5IHx8IGZsYXR0ZW5Db2x1bW5zLnNvbWUoKHsgZWxsaXBzaXMgfSkgPT4gZWxsaXBzaXMpKSB7XG4gICAgICAgICAgICByZXR1cm4gJ2ZpeGVkJztcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gJ2F1dG8nO1xuICAgIH0sIFtmaXhIZWFkZXIsIGZpeENvbHVtbiwgZmxhdHRlbkNvbHVtbnMsIHRhYmxlTGF5b3V0LCBpc1N0aWNreV0pO1xuICAgIGxldCBncm91cFRhYmxlTm9kZTtcbiAgICAvLyBIZWFkZXIgcHJvcHNcbiAgICBjb25zdCBoZWFkZXJQcm9wcyA9IHtcbiAgICAgICAgY29sV2lkdGhzLFxuICAgICAgICBjb2x1bUNvdW50OiBmbGF0dGVuQ29sdW1ucy5sZW5ndGgsXG4gICAgICAgIHN0aWNreU9mZnNldHMsXG4gICAgICAgIG9uSGVhZGVyUm93LFxuICAgICAgICBmaXhIZWFkZXIsXG4gICAgICAgIHNjcm9sbCxcbiAgICB9O1xuICAgIC8vIEVtcHR5XG4gICAgY29uc3QgZW1wdHlOb2RlID0gUmVhY3QudXNlTWVtbygoKSA9PiB7XG4gICAgICAgIGlmIChoYXNEYXRhKSB7XG4gICAgICAgICAgICByZXR1cm4gbnVsbDtcbiAgICAgICAgfVxuICAgICAgICBpZiAodHlwZW9mIGVtcHR5VGV4dCA9PT0gJ2Z1bmN0aW9uJykge1xuICAgICAgICAgICAgcmV0dXJuIGVtcHR5VGV4dCgpO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiBlbXB0eVRleHQ7XG4gICAgfSwgW2hhc0RhdGEsIGVtcHR5VGV4dF0pO1xuICAgIC8vIEJvZHlcbiAgICBjb25zdCBib2R5VGFibGUgPSAoX2pzeChCb2R5LCB7IGRhdGE6IG1lcmdlZERhdGEsIG1lYXN1cmVDb2x1bW5XaWR0aDogZml4SGVhZGVyIHx8IGhvcml6b25TY3JvbGwgfHwgaXNTdGlja3kgfSkpO1xuICAgIGNvbnN0IGJvZHlDb2xHcm91cCA9IChfanN4KENvbEdyb3VwLCB7IGNvbFdpZHRoczogZmxhdHRlbkNvbHVtbnMubWFwKCh7IHdpZHRoIH0pID0+IHdpZHRoKSwgY29sdW1uczogZmxhdHRlbkNvbHVtbnMgfSkpO1xuICAgIGNvbnN0IGNhcHRpb25FbGVtZW50ID0gY2FwdGlvbiAhPT0gbnVsbCAmJiBjYXB0aW9uICE9PSB1bmRlZmluZWQgPyAoX2pzeChcImNhcHRpb25cIiwgeyBjbGFzc05hbWU6IGAke3ByZWZpeENsc30tY2FwdGlvbmAsIGNoaWxkcmVuOiBjYXB0aW9uIH0pKSA6IHVuZGVmaW5lZDtcbiAgICBjb25zdCBkYXRhUHJvcHMgPSBwaWNrQXR0cnMocHJvcHMsIHsgZGF0YTogdHJ1ZSB9KTtcbiAgICBjb25zdCBhcmlhUHJvcHMgPSBwaWNrQXR0cnMocHJvcHMsIHsgYXJpYTogdHJ1ZSB9KTtcbiAgICBpZiAoZml4SGVhZGVyIHx8IGlzU3RpY2t5KSB7XG4gICAgICAgIC8vID4+Pj4+PiBGaXhlZCBIZWFkZXJcbiAgICAgICAgbGV0IGJvZHlDb250ZW50O1xuICAgICAgICBpZiAodHlwZW9mIGN1c3RvbWl6ZVNjcm9sbEJvZHkgPT09ICdmdW5jdGlvbicpIHtcbiAgICAgICAgICAgIGJvZHlDb250ZW50ID0gY3VzdG9taXplU2Nyb2xsQm9keShtZXJnZWREYXRhLCB7XG4gICAgICAgICAgICAgICAgc2Nyb2xsYmFyU2l6ZSxcbiAgICAgICAgICAgICAgICByZWY6IHNjcm9sbEJvZHlSZWYsXG4gICAgICAgICAgICAgICAgb25TY3JvbGw6IG9uSW50ZXJuYWxTY3JvbGwsXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIGhlYWRlclByb3BzLmNvbFdpZHRocyA9IGZsYXR0ZW5Db2x1bW5zLm1hcCgoeyB3aWR0aCB9LCBpbmRleCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IGNvbFdpZHRoID0gaW5kZXggPT09IGZsYXR0ZW5Db2x1bW5zLmxlbmd0aCAtIDEgPyB3aWR0aCAtIHNjcm9sbGJhclNpemUgOiB3aWR0aDtcbiAgICAgICAgICAgICAgICBpZiAodHlwZW9mIGNvbFdpZHRoID09PSAnbnVtYmVyJyAmJiAhTnVtYmVyLmlzTmFOKGNvbFdpZHRoKSkge1xuICAgICAgICAgICAgICAgICAgICByZXR1cm4gY29sV2lkdGg7XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgICAgICAgICAgICAgICAgIHdhcm5pbmcocHJvcHMuY29sdW1ucy5sZW5ndGggPT09IDAsICdXaGVuIHVzZSBgY29tcG9uZW50cy5ib2R5YCB3aXRoIHJlbmRlciBwcm9wcy4gRWFjaCBjb2x1bW4gc2hvdWxkIGhhdmUgYSBmaXhlZCBgd2lkdGhgIHZhbHVlLicpO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICByZXR1cm4gMDtcbiAgICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgYm9keUNvbnRlbnQgPSAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHNjcm9sbFhTdHlsZSksIHNjcm9sbFlTdHlsZSksIG9uU2Nyb2xsOiBvbkJvZHlTY3JvbGwsIHJlZjogc2Nyb2xsQm9keVJlZiwgY2xhc3NOYW1lOiBgJHtwcmVmaXhDbHN9LWJvZHlgLCBjaGlsZHJlbjogX2pzeHMoVGFibGVDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oeyBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBzY3JvbGxUYWJsZVN0eWxlKSwgeyB0YWJsZUxheW91dDogbWVyZ2VkVGFibGVMYXlvdXQgfSkgfSwgYXJpYVByb3BzLCB7IGNoaWxkcmVuOiBbY2FwdGlvbkVsZW1lbnQsIGJvZHlDb2xHcm91cCwgYm9keVRhYmxlLCAhZml4Rm9vdGVyICYmIHN1bW1hcnlOb2RlICYmIChfanN4KEZvb3RlciwgeyBzdGlja3lPZmZzZXRzOiBzdGlja3lPZmZzZXRzLCBmbGF0dGVuQ29sdW1uczogZmxhdHRlbkNvbHVtbnMsIGNoaWxkcmVuOiBzdW1tYXJ5Tm9kZSB9KSldIH0pKSB9KSk7XG4gICAgICAgIH1cbiAgICAgICAgLy8gRml4ZWQgaG9sZGVyIHNoYXJlIHRoZSBwcm9wc1xuICAgICAgICBjb25zdCBmaXhlZEhvbGRlclByb3BzID0gT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oeyBub0RhdGE6ICFtZXJnZWREYXRhLmxlbmd0aCwgbWF4Q29udGVudFNjcm9sbDogaG9yaXpvblNjcm9sbCAmJiBtZXJnZWRTY3JvbGxYID09PSAnbWF4LWNvbnRlbnQnIH0sIGhlYWRlclByb3BzKSwgY29sdW1uQ29udGV4dCksIHsgZGlyZWN0aW9uLFxuICAgICAgICAgICAgc3RpY2t5Q2xhc3NOYW1lLCBzY3JvbGxYOiBtZXJnZWRTY3JvbGxYLCB0YWJsZUxheW91dDogbWVyZ2VkVGFibGVMYXlvdXQsIG9uU2Nyb2xsOiBvbkludGVybmFsU2Nyb2xsIH0pO1xuICAgICAgICBncm91cFRhYmxlTm9kZSA9IChfanN4cyhfRnJhZ21lbnQsIHsgY2hpbGRyZW46IFtzaG93SGVhZGVyICE9PSBmYWxzZSAmJiAoX2pzeChGaXhlZEhvbGRlciwgT2JqZWN0LmFzc2lnbih7fSwgZml4ZWRIb2xkZXJQcm9wcywgeyBzdGlja3lUb3BPZmZzZXQ6IG9mZnNldEhlYWRlciwgY2xhc3NOYW1lOiBgJHtwcmVmaXhDbHN9LWhlYWRlcmAsIHJlZjogc2Nyb2xsSGVhZGVyUmVmLCBjb2xHcm91cDogYm9keUNvbEdyb3VwLCBjaGlsZHJlbjogcmVuZGVyRml4ZWRIZWFkZXJUYWJsZSB9KSkpLCBib2R5Q29udGVudCwgZml4Rm9vdGVyICYmIGZpeEZvb3RlciAhPT0gJ3RvcCcgJiYgKF9qc3goRml4ZWRIb2xkZXIsIE9iamVjdC5hc3NpZ24oe30sIGZpeGVkSG9sZGVyUHJvcHMsIHsgc3RpY2t5Qm90dG9tT2Zmc2V0OiBvZmZzZXRTdW1tYXJ5LCBjbGFzc05hbWU6IGAke3ByZWZpeENsc30tc3VtbWFyeWAsIHJlZjogc2Nyb2xsU3VtbWFyeVJlZiwgY29sR3JvdXA6IGJvZHlDb2xHcm91cCwgY2hpbGRyZW46IHJlbmRlckZpeGVkRm9vdGVyVGFibGUgfSkpKSwgaXNTdGlja3kgJiYgc2Nyb2xsQm9keVJlZi5jdXJyZW50ICYmIHNjcm9sbEJvZHlSZWYuY3VycmVudCBpbnN0YW5jZW9mIEVsZW1lbnQgJiYgKF9qc3goU3RpY2t5U2Nyb2xsQmFyLCB7IHJlZjogc3RpY2t5UmVmLCBvZmZzZXRTY3JvbGw6IG9mZnNldFNjcm9sbCwgc2Nyb2xsQm9keVJlZjogc2Nyb2xsQm9keVJlZiwgb25TY3JvbGw6IG9uSW50ZXJuYWxTY3JvbGwsIGNvbnRhaW5lcjogY29udGFpbmVyLCBkaXJlY3Rpb246IGRpcmVjdGlvbiB9KSldIH0pKTtcbiAgICB9XG4gICAgZWxzZSB7XG4gICAgICAgIC8vID4+Pj4+PiBVbmlxdWUgdGFibGVcbiAgICAgICAgZ3JvdXBUYWJsZU5vZGUgPSAoX2pzeChcImRpdlwiLCB7IHN0eWxlOiBPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oT2JqZWN0LmFzc2lnbih7fSwgc2Nyb2xsWFN0eWxlKSwgc2Nyb2xsWVN0eWxlKSwgc3R5bGVzID09PSBudWxsIHx8IHN0eWxlcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3R5bGVzLmNvbnRlbnQpLCBjbGFzc05hbWU6IGNsc3goYCR7cHJlZml4Q2xzfS1jb250ZW50YCwgY2xhc3NOYW1lcyA9PT0gbnVsbCB8fCBjbGFzc05hbWVzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjbGFzc05hbWVzLmNvbnRlbnQpLCBvblNjcm9sbDogb25JbnRlcm5hbFNjcm9sbCwgcmVmOiBzY3JvbGxCb2R5UmVmLCBjaGlsZHJlbjogX2pzeHMoVGFibGVDb21wb25lbnQsIE9iamVjdC5hc3NpZ24oeyBzdHlsZTogT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBzY3JvbGxUYWJsZVN0eWxlKSwgeyB0YWJsZUxheW91dDogbWVyZ2VkVGFibGVMYXlvdXQgfSkgfSwgYXJpYVByb3BzLCB7IGNoaWxkcmVuOiBbY2FwdGlvbkVsZW1lbnQsIGJvZHlDb2xHcm91cCwgc2hvd0hlYWRlciAhPT0gZmFsc2UgJiYgX2pzeChIZWFkZXIsIE9iamVjdC5hc3NpZ24oe30sIGhlYWRlclByb3BzLCBjb2x1bW5Db250ZXh0KSksIGJvZHlUYWJsZSwgc3VtbWFyeU5vZGUgJiYgKF9qc3goRm9vdGVyLCB7IHN0aWNreU9mZnNldHM6IHN0aWNreU9mZnNldHMsIGZsYXR0ZW5Db2x1bW5zOiBmbGF0dGVuQ29sdW1ucywgY2hpbGRyZW46IHN1bW1hcnlOb2RlIH0pKV0gfSkpIH0pKTtcbiAgICB9XG4gICAgY29uc3QgdGFibGVTdHlsZSA9IE9iamVjdC5hc3NpZ24oe30sIHN0eWxlKTtcbiAgICAvLyBBZGQgY3NzIHZhciBmb3Igc3RpY2t5IGhlYWRlciBgekluZGV4YCBjYWxjXG4gICAgaWYgKGlzU3RpY2t5KSB7XG4gICAgICAgIHRhYmxlU3R5bGVbJy0tY29sdW1ucy1jb3VudCddID0gZmxhdHRlbkNvbHVtbnMubGVuZ3RoO1xuICAgIH1cbiAgICBsZXQgZnVsbFRhYmxlID0gKF9qc3hzKFwiZGl2XCIsIE9iamVjdC5hc3NpZ24oeyBjbGFzc05hbWU6IGNsc3gocHJlZml4Q2xzLCBjbGFzc05hbWUsIHtcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LXJ0bGBdOiBkaXJlY3Rpb24gPT09ICdydGwnLFxuICAgICAgICAgICAgW2Ake3ByZWZpeENsc30tZml4LXN0YXJ0LXNoYWRvd2BdOiBob3Jpem9uU2Nyb2xsLFxuICAgICAgICAgICAgW2Ake3ByZWZpeENsc30tZml4LWVuZC1zaGFkb3dgXTogaG9yaXpvblNjcm9sbCxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWZpeC1zdGFydC1zaGFkb3ctc2hvd2BdOiBob3Jpem9uU2Nyb2xsICYmIHNoYWRvd1N0YXJ0LFxuICAgICAgICAgICAgW2Ake3ByZWZpeENsc30tZml4LWVuZC1zaGFkb3ctc2hvd2BdOiBob3Jpem9uU2Nyb2xsICYmIHNoYWRvd0VuZCxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWxheW91dC1maXhlZGBdOiB0YWJsZUxheW91dCA9PT0gJ2ZpeGVkJyxcbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWZpeGVkLWhlYWRlcmBdOiBmaXhIZWFkZXIsXG4gICAgICAgICAgICAvKiogTm8gdXNlZCBidXQgZm9yIGNvbXBhdGlibGUgKi9cbiAgICAgICAgICAgIFtgJHtwcmVmaXhDbHN9LWZpeGVkLWNvbHVtbmBdOiBmaXhDb2x1bW4sXG4gICAgICAgICAgICBbYCR7cHJlZml4Q2xzfS1zY3JvbGwtaG9yaXpvbnRhbGBdOiBob3Jpem9uU2Nyb2xsLFxuICAgICAgICAgICAgW2Ake3ByZWZpeENsc30taGFzLWZpeC1zdGFydGBdOiAoX2EgPSBmbGF0dGVuQ29sdW1uc1swXSkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmZpeGVkLFxuICAgICAgICAgICAgW2Ake3ByZWZpeENsc30taGFzLWZpeC1lbmRgXTogKChfYiA9IGZsYXR0ZW5Db2x1bW5zW2ZsYXR0ZW5Db2x1bW5zLmxlbmd0aCAtIDFdKSA9PT0gbnVsbCB8fCBfYiA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2IuZml4ZWQpID09PSAnZW5kJyxcbiAgICAgICAgfSksIHN0eWxlOiB0YWJsZVN0eWxlLCBpZDogaWQsIHJlZjogZnVsbFRhYmxlUmVmIH0sIGRhdGFQcm9wcywgeyBjaGlsZHJlbjogW3RpdGxlICYmIChfanN4KFBhbmVsLCB7IGNsYXNzTmFtZTogY2xzeChgJHtwcmVmaXhDbHN9LXRpdGxlYCwgY2xhc3NOYW1lcyA9PT0gbnVsbCB8fCBjbGFzc05hbWVzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjbGFzc05hbWVzLnRpdGxlKSwgc3R5bGU6IHN0eWxlcyA9PT0gbnVsbCB8fCBzdHlsZXMgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN0eWxlcy50aXRsZSwgY2hpbGRyZW46IHRpdGxlKG1lcmdlZERhdGEpIH0pKSwgX2pzeChcImRpdlwiLCB7IHJlZjogc2Nyb2xsQm9keUNvbnRhaW5lclJlZiwgY2xhc3NOYW1lOiBjbHN4KGAke3ByZWZpeENsc30tY29udGFpbmVyYCwgY2xhc3NOYW1lcyA9PT0gbnVsbCB8fCBjbGFzc05hbWVzID09PSB2b2lkIDAgPyB2b2lkIDAgOiBjbGFzc05hbWVzLnNlY3Rpb24pLCBzdHlsZTogc3R5bGVzID09PSBudWxsIHx8IHN0eWxlcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3R5bGVzLnNlY3Rpb24sIGNoaWxkcmVuOiBncm91cFRhYmxlTm9kZSB9KSwgZm9vdGVyICYmIChfanN4KFBhbmVsLCB7IGNsYXNzTmFtZTogY2xzeChgJHtwcmVmaXhDbHN9LWZvb3RlcmAsIGNsYXNzTmFtZXMgPT09IG51bGwgfHwgY2xhc3NOYW1lcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogY2xhc3NOYW1lcy5mb290ZXIpLCBzdHlsZTogc3R5bGVzID09PSBudWxsIHx8IHN0eWxlcyA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3R5bGVzLmZvb3RlciwgY2hpbGRyZW46IGZvb3RlcihtZXJnZWREYXRhKSB9KSldIH0pKSk7XG4gICAgaWYgKGhvcml6b25TY3JvbGwpIHtcbiAgICAgICAgZnVsbFRhYmxlID0gKF9qc3goUmVzaXplT2JzZXJ2ZXIsIHsgb25SZXNpemU6ICh7IG9mZnNldFdpZHRoIH0pID0+IG9uRnVsbFRhYmxlUmVzaXplKG9mZnNldFdpZHRoKSwgY2hpbGRyZW46IGZ1bGxUYWJsZSB9KSk7XG4gICAgfVxuICAgIGNvbnN0IGZpeGVkSW5mb0xpc3QgPSB1c2VGaXhlZEluZm8oZmxhdHRlbkNvbHVtbnMsIHN0aWNreU9mZnNldHMpO1xuICAgIGNvbnN0IFRhYmxlQ29udGV4dFZhbHVlID0gUmVhY3QudXNlTWVtbygoKSA9PiAoe1xuICAgICAgICAvLyBTY3JvbGxcbiAgICAgICAgc2Nyb2xsWDogbWVyZ2VkU2Nyb2xsWCxcbiAgICAgICAgc2Nyb2xsSW5mbyxcbiAgICAgICAgY2xhc3NOYW1lcyxcbiAgICAgICAgc3R5bGVzLFxuICAgICAgICAvLyBUYWJsZVxuICAgICAgICBwcmVmaXhDbHMsXG4gICAgICAgIGdldENvbXBvbmVudCxcbiAgICAgICAgc2Nyb2xsYmFyU2l6ZSxcbiAgICAgICAgZGlyZWN0aW9uLFxuICAgICAgICBmaXhlZEluZm9MaXN0LFxuICAgICAgICBpc1N0aWNreSxcbiAgICAgICAgY29tcG9uZW50V2lkdGgsXG4gICAgICAgIGZpeEhlYWRlcixcbiAgICAgICAgZml4Q29sdW1uLFxuICAgICAgICBob3Jpem9uU2Nyb2xsLFxuICAgICAgICAvLyBCb2R5XG4gICAgICAgIHRhYmxlTGF5b3V0OiBtZXJnZWRUYWJsZUxheW91dCxcbiAgICAgICAgcm93Q2xhc3NOYW1lLFxuICAgICAgICBleHBhbmRlZFJvd0NsYXNzTmFtZTogZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRlZFJvd0NsYXNzTmFtZSxcbiAgICAgICAgZXhwYW5kSWNvbjogbWVyZ2VkRXhwYW5kSWNvbixcbiAgICAgICAgZXhwYW5kYWJsZVR5cGUsXG4gICAgICAgIGV4cGFuZFJvd0J5Q2xpY2s6IGV4cGFuZGFibGVDb25maWcuZXhwYW5kUm93QnlDbGljayxcbiAgICAgICAgZXhwYW5kZWRSb3dSZW5kZXI6IGV4cGFuZGFibGVDb25maWcuZXhwYW5kZWRSb3dSZW5kZXIsXG4gICAgICAgIGV4cGFuZGVkUm93T2Zmc2V0OiBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZGVkUm93T2Zmc2V0LFxuICAgICAgICBvblRyaWdnZXJFeHBhbmQsXG4gICAgICAgIGV4cGFuZEljb25Db2x1bW5JbmRleDogZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRJY29uQ29sdW1uSW5kZXgsXG4gICAgICAgIGluZGVudFNpemU6IGV4cGFuZGFibGVDb25maWcuaW5kZW50U2l6ZSxcbiAgICAgICAgYWxsQ29sdW1uc0ZpeGVkTGVmdDogZmxhdHRlbkNvbHVtbnMuZXZlcnkoY29sID0+IGNvbC5maXhlZCA9PT0gJ3N0YXJ0JyksXG4gICAgICAgIGVtcHR5Tm9kZSxcbiAgICAgICAgLy8gQ29sdW1uXG4gICAgICAgIGNvbHVtbnMsXG4gICAgICAgIGZsYXR0ZW5Db2x1bW5zLFxuICAgICAgICBvbkNvbHVtblJlc2l6ZSxcbiAgICAgICAgY29sV2lkdGhzLFxuICAgICAgICAvLyBSb3dcbiAgICAgICAgaG92ZXJTdGFydFJvdzogc3RhcnRSb3csXG4gICAgICAgIGhvdmVyRW5kUm93OiBlbmRSb3csXG4gICAgICAgIG9uSG92ZXIsXG4gICAgICAgIHJvd0V4cGFuZGFibGU6IGV4cGFuZGFibGVDb25maWcucm93RXhwYW5kYWJsZSxcbiAgICAgICAgb25Sb3csXG4gICAgICAgIGdldFJvd0tleSxcbiAgICAgICAgZXhwYW5kZWRLZXlzOiBtZXJnZWRFeHBhbmRlZEtleXMsXG4gICAgICAgIGNoaWxkcmVuQ29sdW1uTmFtZTogbWVyZ2VkQ2hpbGRyZW5Db2x1bW5OYW1lLFxuICAgICAgICByb3dIb3ZlcmFibGUsXG4gICAgICAgIC8vIE1lYXN1cmUgUm93XG4gICAgICAgIG1lYXN1cmVSb3dSZW5kZXIsXG4gICAgfSksIFtcbiAgICAgICAgLy8gU2Nyb2xsXG4gICAgICAgIG1lcmdlZFNjcm9sbFgsXG4gICAgICAgIHNjcm9sbEluZm8sXG4gICAgICAgIGNsYXNzTmFtZXMsXG4gICAgICAgIHN0eWxlcyxcbiAgICAgICAgLy8gVGFibGVcbiAgICAgICAgcHJlZml4Q2xzLFxuICAgICAgICBnZXRDb21wb25lbnQsXG4gICAgICAgIHNjcm9sbGJhclNpemUsXG4gICAgICAgIGRpcmVjdGlvbixcbiAgICAgICAgZml4ZWRJbmZvTGlzdCxcbiAgICAgICAgaXNTdGlja3ksXG4gICAgICAgIGNvbXBvbmVudFdpZHRoLFxuICAgICAgICBmaXhIZWFkZXIsXG4gICAgICAgIGZpeENvbHVtbixcbiAgICAgICAgaG9yaXpvblNjcm9sbCxcbiAgICAgICAgLy8gQm9keVxuICAgICAgICBtZXJnZWRUYWJsZUxheW91dCxcbiAgICAgICAgcm93Q2xhc3NOYW1lLFxuICAgICAgICBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZGVkUm93Q2xhc3NOYW1lLFxuICAgICAgICBtZXJnZWRFeHBhbmRJY29uLFxuICAgICAgICBleHBhbmRhYmxlVHlwZSxcbiAgICAgICAgZXhwYW5kYWJsZUNvbmZpZy5leHBhbmRSb3dCeUNsaWNrLFxuICAgICAgICBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZGVkUm93UmVuZGVyLFxuICAgICAgICBleHBhbmRhYmxlQ29uZmlnLmV4cGFuZGVkUm93T2Zmc2V0LFxuICAgICAgICBvblRyaWdnZXJFeHBhbmQsXG4gICAgICAgIGV4cGFuZGFibGVDb25maWcuZXhwYW5kSWNvbkNvbHVtbkluZGV4LFxuICAgICAgICBleHBhbmRhYmxlQ29uZmlnLmluZGVudFNpemUsXG4gICAgICAgIGVtcHR5Tm9kZSxcbiAgICAgICAgLy8gQ29sdW1uXG4gICAgICAgIGNvbHVtbnMsXG4gICAgICAgIGZsYXR0ZW5Db2x1bW5zLFxuICAgICAgICBvbkNvbHVtblJlc2l6ZSxcbiAgICAgICAgY29sV2lkdGhzLFxuICAgICAgICAvLyBSb3dcbiAgICAgICAgc3RhcnRSb3csXG4gICAgICAgIGVuZFJvdyxcbiAgICAgICAgb25Ib3ZlcixcbiAgICAgICAgZXhwYW5kYWJsZUNvbmZpZy5yb3dFeHBhbmRhYmxlLFxuICAgICAgICBvblJvdyxcbiAgICAgICAgZ2V0Um93S2V5LFxuICAgICAgICBtZXJnZWRFeHBhbmRlZEtleXMsXG4gICAgICAgIG1lcmdlZENoaWxkcmVuQ29sdW1uTmFtZSxcbiAgICAgICAgcm93SG92ZXJhYmxlLFxuICAgICAgICBtZWFzdXJlUm93UmVuZGVyLFxuICAgIF0pO1xuICAgIHJldHVybiBfanN4KFRhYmxlQ29udGV4dC5Qcm92aWRlciwgeyB2YWx1ZTogVGFibGVDb250ZXh0VmFsdWUsIGNoaWxkcmVuOiBmdWxsVGFibGUgfSk7XG59O1xuY29uc3QgUmVmVGFibGUgPSBSZWFjdC5mb3J3YXJkUmVmKFRhYmxlKTtcbmlmIChwcm9jZXNzLmVudi5OT0RFX0VOViAhPT0gJ3Byb2R1Y3Rpb24nKSB7XG4gICAgUmVmVGFibGUuZGlzcGxheU5hbWUgPSAnVGFibGUnO1xufVxuZXhwb3J0IGNvbnN0IGdlblRhYmxlID0gKHNob3VsZFRyaWdnZXJSZW5kZXIpID0+IHtcbiAgICByZXR1cm4gbWFrZUltbXV0YWJsZShSZWZUYWJsZSwgc2hvdWxkVHJpZ2dlclJlbmRlcik7XG59O1xuY29uc3QgSW1tdXRhYmxlVGFibGUgPSBnZW5UYWJsZSgpO1xuSW1tdXRhYmxlVGFibGUuRVhQQU5EX0NPTFVNTiA9IEVYUEFORF9DT0xVTU47XG5JbW11dGFibGVUYWJsZS5JTlRFUk5BTF9IT09LUyA9IElOVEVSTkFMX0hPT0tTO1xuSW1tdXRhYmxlVGFibGUuQ29sdW1uID0gQ29sdW1uO1xuSW1tdXRhYmxlVGFibGUuQ29sdW1uR3JvdXAgPSBDb2x1bW5Hcm91cDtcbkltbXV0YWJsZVRhYmxlLlN1bW1hcnkgPSBGb290ZXJDb21wb25lbnRzO1xuZXhwb3J0IGRlZmF1bHQgSW1tdXRhYmxlVGFibGU7IixudWxsXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9