@1money/component-ui 0.0.49 → 0.0.50

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