@1money/component-ui 0.0.70 → 0.0.73

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 (247) hide show
  1. package/es/business/Dialog/VerificationDialog/hooks/useOtpVerification.js +3 -2
  2. package/es/business/Dialog/VerificationDialog/hooks/useResendCountdown.js +2 -2
  3. package/es/business/Select/Network/NetworkSelect.js +2 -2
  4. package/es/components/Accordion/Accordion.js +3 -2
  5. package/es/components/Calendar/Calendar.js +3 -2
  6. package/es/components/Carousel/Carousel.js +3 -2
  7. package/es/components/Checkbox/BaseCheckbox.js +3 -2
  8. package/es/components/Checkbox/Checkbox.js +2 -2
  9. package/es/components/Checkbox/CheckboxGroup.js +3 -2
  10. package/es/components/CoachMark/CoachMark.js +3 -2
  11. package/es/components/Copy/Copy.js +2 -2
  12. package/es/components/Dialog/Dialog.js +2 -2
  13. package/es/components/Drawer/Drawer.js +2 -2
  14. package/es/components/Input/Amount/Amount.js +2 -2
  15. package/es/components/Input/Input/Input.js +3 -2
  16. package/es/components/Input/Mask/Mask.js +3 -2
  17. package/es/components/Input/OTP/OTP.js +3 -2
  18. package/es/components/Input/Password/Password.js +3 -2
  19. package/es/components/Input/Search/Search.js +3 -2
  20. package/es/components/Input/TextArea/TextArea.js +3 -2
  21. package/es/components/Input/Trade/Trade.js +2 -2
  22. package/es/components/Input/useAmountInput.js +4 -2
  23. package/es/components/Input/useSyncRef.js +2 -2
  24. package/es/components/Navigation/Nav.js +2 -2
  25. package/es/components/Navigation/Navigation.js +5 -2
  26. package/es/components/Pagination/Pagination.js +2 -2
  27. package/es/components/Pagination/usePagination.js +3 -2
  28. package/es/components/Popconfirm/Popconfirm.js +2 -2
  29. package/es/components/Portal/Portal.js +2 -2
  30. package/es/components/ProForm/ProForm.d.ts +10 -2
  31. package/es/components/ProForm/ProForm.js +60 -24
  32. package/es/components/ProForm/ProFormDependency.js +4 -1
  33. package/es/components/ProForm/ProFormGroup.js +2 -2
  34. package/es/components/ProForm/ProFormItem.js +73 -36
  35. package/es/components/ProForm/ProFormList.js +3 -2
  36. package/es/components/ProForm/SchemaForm.d.ts +7 -0
  37. package/es/components/ProForm/SchemaForm.js +103 -0
  38. package/es/components/ProForm/Submitter.js +13 -3
  39. package/es/components/ProForm/context.d.ts +22 -3
  40. package/es/components/ProForm/context.js +49 -10
  41. package/es/components/ProForm/core/constants.d.ts +8 -1
  42. package/es/components/ProForm/core/constants.js +9 -6
  43. package/es/components/ProForm/core/hooks/useForm.js +174 -320
  44. package/es/components/ProForm/core/hooks/useFormCore.js +84 -178
  45. package/es/components/ProForm/core/interface.d.ts +33 -12
  46. package/es/components/ProForm/core/pathUtils.d.ts +6 -0
  47. package/es/components/ProForm/core/pathUtils.js +59 -0
  48. package/es/components/ProForm/core/runRules.d.ts +23 -0
  49. package/es/components/ProForm/core/runRules.js +233 -0
  50. package/es/components/ProForm/core/useFormItem.d.ts +10 -1
  51. package/es/components/ProForm/core/useFormItem.js +105 -61
  52. package/es/components/ProForm/fields/ProFormDatePicker.js +4 -1
  53. package/es/components/ProForm/fields/createProFormField.js +64 -59
  54. package/es/components/ProForm/hooks/useFieldRequest.js +7 -5
  55. package/es/components/ProForm/index.d.ts +11 -4
  56. package/es/components/ProForm/index.js +7 -2
  57. package/es/components/ProForm/interface.d.ts +89 -14
  58. package/es/components/ProForm/layouts/DialogForm.d.ts +5 -1
  59. package/es/components/ProForm/layouts/DialogForm.js +2 -1
  60. package/es/components/ProForm/layouts/DrawerForm.d.ts +5 -1
  61. package/es/components/ProForm/layouts/DrawerForm.js +2 -1
  62. package/es/components/ProForm/layouts/QueryFilter.d.ts +5 -2
  63. package/es/components/ProForm/layouts/QueryFilter.js +79 -13
  64. package/es/components/ProForm/layouts/useOverlayForm.js +23 -21
  65. package/es/components/ProForm/style/ProForm.css +6 -0
  66. package/es/components/ProForm/utils.d.ts +14 -3
  67. package/es/components/ProForm/utils.js +73 -70
  68. package/es/components/ProTable/ProTable.js +3 -2
  69. package/es/components/ProTable/core/useAwaitableReload.js +3 -2
  70. package/es/components/ProTable/useFetchData.js +4 -2
  71. package/es/components/Radio/Radio.js +3 -2
  72. package/es/components/Radio/RadioGroup.js +3 -2
  73. package/es/components/ResizeObserver/useResizeObserver.js +2 -2
  74. package/es/components/Segment/Segment.js +4 -2
  75. package/es/components/Select/Select.js +3 -2
  76. package/es/components/Select/SelectCustom.js +2 -2
  77. package/es/components/Select/useSelectShell.js +3 -2
  78. package/es/components/Slider/Slider.js +3 -2
  79. package/es/components/Switch/Switch.js +3 -2
  80. package/es/components/Table/Table.js +14 -28
  81. package/es/components/Table/VirtualTable.js +18 -28
  82. package/es/components/Table/core/columnUtil.d.ts +9 -0
  83. package/es/components/Table/core/columnUtil.js +34 -0
  84. package/es/components/Table/core/useTableColumns.d.ts +4 -13
  85. package/es/components/Table/core/useTableColumns.js +55 -24
  86. package/es/components/Table/core/useTableDataPipeline.d.ts +11 -16
  87. package/es/components/Table/core/useTableDataPipeline.js +66 -73
  88. package/es/components/Table/core/useTableExpand.js +3 -2
  89. package/es/components/Table/core/useTableSelection.js +7 -4
  90. package/es/components/Table/core/useTableSetup.js +4 -2
  91. package/es/components/Table/features/ExpandTrigger.d.ts +9 -3
  92. package/es/components/Table/features/ExpandTrigger.js +14 -8
  93. package/es/components/Table/features/FilterTrigger.js +21 -17
  94. package/es/components/Table/features/SelectionColumn.d.ts +11 -6
  95. package/es/components/Table/features/SelectionColumn.js +12 -5
  96. package/es/components/Table/features/SortTrigger.d.ts +4 -2
  97. package/es/components/Table/features/SortTrigger.js +8 -3
  98. package/es/components/Table/internal/kernel/Body/MeasureCell.js +2 -2
  99. package/es/components/Table/internal/kernel/Cell/index.js +2 -2
  100. package/es/components/Table/internal/kernel/Table.js +3 -3
  101. package/es/components/Table/internal/kernel/VirtualTable/index.js +2 -2
  102. package/es/components/Table/internal/kernel/hooks/useRowInfo.js +2 -2
  103. package/es/components/Table/internal/kernel/selector-context/context.js +3 -3
  104. package/es/components/Table/renderers/HeaderCell.js +3 -2
  105. package/es/components/Table/renderers/TableShell.d.ts +13 -0
  106. package/es/components/Table/renderers/TableShell.js +25 -0
  107. package/es/components/Table/style/Table.css +3 -0
  108. package/es/components/Tabs/Tabs.js +4 -2
  109. package/es/components/Tooltip/Tooltip.js +3 -2
  110. package/es/components/Tooltip/style/Tooltip.css +1 -0
  111. package/es/components/Tour/Tour.js +3 -2
  112. package/es/components/Trigger/Trigger.js +3 -2
  113. package/es/components/Typography/Typography.js +2 -2
  114. package/es/components/Typography/useTypographyEnhancements.js +3 -2
  115. package/es/components/Upload/Upload.js +2 -2
  116. package/es/components/Upload/UploadFileBar.js +2 -2
  117. package/es/components/VirtualList/VirtualList.js +3 -2
  118. package/es/components/VirtualList/hooks/useMobileTouchMove.js +2 -2
  119. package/es/components/VirtualList/hooks/useScrollTo.js +2 -2
  120. package/es/index.css +1 -1
  121. package/es/index.d.ts +2 -2
  122. package/es/index.js +2 -2
  123. package/lib/business/Dialog/VerificationDialog/hooks/useOtpVerification.js +9 -8
  124. package/lib/business/Dialog/VerificationDialog/hooks/useResendCountdown.js +3 -3
  125. package/lib/business/Select/Network/NetworkSelect.js +3 -3
  126. package/lib/components/Accordion/Accordion.js +5 -4
  127. package/lib/components/Calendar/Calendar.js +6 -5
  128. package/lib/components/Carousel/Carousel.js +5 -4
  129. package/lib/components/Checkbox/BaseCheckbox.js +5 -4
  130. package/lib/components/Checkbox/Checkbox.js +3 -3
  131. package/lib/components/Checkbox/CheckboxGroup.js +7 -6
  132. package/lib/components/CoachMark/CoachMark.js +7 -6
  133. package/lib/components/Copy/Copy.js +3 -3
  134. package/lib/components/Dialog/Dialog.js +6 -6
  135. package/lib/components/Drawer/Drawer.js +10 -10
  136. package/lib/components/Input/Amount/Amount.js +6 -5
  137. package/lib/components/Input/Input/Input.js +7 -6
  138. package/lib/components/Input/Mask/Mask.js +9 -8
  139. package/lib/components/Input/OTP/OTP.js +9 -8
  140. package/lib/components/Input/Password/Password.js +6 -5
  141. package/lib/components/Input/Search/Search.js +8 -7
  142. package/lib/components/Input/TextArea/TextArea.js +5 -4
  143. package/lib/components/Input/Trade/Trade.js +5 -4
  144. package/lib/components/Input/useAmountInput.js +13 -11
  145. package/lib/components/Input/useSyncRef.js +4 -3
  146. package/lib/components/Navigation/Nav.js +3 -3
  147. package/lib/components/Navigation/Navigation.js +10 -7
  148. package/lib/components/Pagination/Pagination.js +4 -3
  149. package/lib/components/Pagination/usePagination.js +7 -6
  150. package/lib/components/Popconfirm/Popconfirm.js +3 -3
  151. package/lib/components/Portal/Portal.js +4 -4
  152. package/lib/components/ProForm/ProForm.d.ts +10 -2
  153. package/lib/components/ProForm/ProForm.js +66 -30
  154. package/lib/components/ProForm/ProFormDependency.js +4 -1
  155. package/lib/components/ProForm/ProFormGroup.js +3 -3
  156. package/lib/components/ProForm/ProFormItem.js +72 -34
  157. package/lib/components/ProForm/ProFormList.js +10 -9
  158. package/lib/components/ProForm/SchemaForm.d.ts +7 -0
  159. package/lib/components/ProForm/SchemaForm.js +110 -0
  160. package/lib/components/ProForm/Submitter.js +15 -5
  161. package/lib/components/ProForm/context.d.ts +22 -3
  162. package/lib/components/ProForm/context.js +49 -10
  163. package/lib/components/ProForm/core/constants.d.ts +8 -1
  164. package/lib/components/ProForm/core/constants.js +10 -7
  165. package/lib/components/ProForm/core/hooks/useForm.js +181 -327
  166. package/lib/components/ProForm/core/hooks/useFormCore.js +96 -190
  167. package/lib/components/ProForm/core/interface.d.ts +33 -12
  168. package/lib/components/ProForm/core/pathUtils.d.ts +6 -0
  169. package/lib/components/ProForm/core/pathUtils.js +68 -0
  170. package/lib/components/ProForm/core/runRules.d.ts +23 -0
  171. package/lib/components/ProForm/core/runRules.js +242 -0
  172. package/lib/components/ProForm/core/useFormItem.d.ts +10 -1
  173. package/lib/components/ProForm/core/useFormItem.js +106 -62
  174. package/lib/components/ProForm/fields/ProFormDatePicker.js +4 -1
  175. package/lib/components/ProForm/fields/createProFormField.js +63 -58
  176. package/lib/components/ProForm/hooks/useFieldRequest.js +9 -7
  177. package/lib/components/ProForm/index.d.ts +11 -4
  178. package/lib/components/ProForm/index.js +16 -1
  179. package/lib/components/ProForm/interface.d.ts +89 -14
  180. package/lib/components/ProForm/layouts/DialogForm.d.ts +5 -1
  181. package/lib/components/ProForm/layouts/DialogForm.js +2 -1
  182. package/lib/components/ProForm/layouts/DrawerForm.d.ts +5 -1
  183. package/lib/components/ProForm/layouts/DrawerForm.js +2 -1
  184. package/lib/components/ProForm/layouts/QueryFilter.d.ts +5 -2
  185. package/lib/components/ProForm/layouts/QueryFilter.js +84 -18
  186. package/lib/components/ProForm/layouts/useOverlayForm.js +27 -27
  187. package/lib/components/ProForm/style/ProForm.css +6 -0
  188. package/lib/components/ProForm/utils.d.ts +14 -3
  189. package/lib/components/ProForm/utils.js +91 -74
  190. package/lib/components/ProTable/ProTable.js +10 -9
  191. package/lib/components/ProTable/core/useAwaitableReload.js +6 -5
  192. package/lib/components/ProTable/useFetchData.js +15 -13
  193. package/lib/components/Radio/Radio.js +6 -5
  194. package/lib/components/Radio/RadioGroup.js +5 -4
  195. package/lib/components/ResizeObserver/useResizeObserver.js +4 -3
  196. package/lib/components/Segment/Segment.js +7 -5
  197. package/lib/components/Select/Select.js +23 -22
  198. package/lib/components/Select/SelectCustom.js +8 -8
  199. package/lib/components/Select/useSelectShell.js +5 -4
  200. package/lib/components/Slider/Slider.js +6 -5
  201. package/lib/components/Switch/Switch.js +5 -4
  202. package/lib/components/Table/Table.js +13 -27
  203. package/lib/components/Table/VirtualTable.js +17 -27
  204. package/lib/components/Table/core/columnUtil.d.ts +9 -0
  205. package/lib/components/Table/core/columnUtil.js +42 -0
  206. package/lib/components/Table/core/useTableColumns.d.ts +4 -13
  207. package/lib/components/Table/core/useTableColumns.js +57 -26
  208. package/lib/components/Table/core/useTableDataPipeline.d.ts +11 -16
  209. package/lib/components/Table/core/useTableDataPipeline.js +73 -80
  210. package/lib/components/Table/core/useTableExpand.js +6 -5
  211. package/lib/components/Table/core/useTableSelection.js +13 -10
  212. package/lib/components/Table/core/useTableSetup.js +8 -5
  213. package/lib/components/Table/features/ExpandTrigger.d.ts +9 -3
  214. package/lib/components/Table/features/ExpandTrigger.js +14 -8
  215. package/lib/components/Table/features/FilterTrigger.js +21 -17
  216. package/lib/components/Table/features/SelectionColumn.d.ts +11 -6
  217. package/lib/components/Table/features/SelectionColumn.js +12 -5
  218. package/lib/components/Table/features/SortTrigger.d.ts +4 -2
  219. package/lib/components/Table/features/SortTrigger.js +8 -3
  220. package/lib/components/Table/internal/kernel/Body/MeasureCell.js +3 -3
  221. package/lib/components/Table/internal/kernel/Cell/index.js +4 -4
  222. package/lib/components/Table/internal/kernel/Table.js +7 -6
  223. package/lib/components/Table/internal/kernel/VirtualTable/index.js +4 -4
  224. package/lib/components/Table/internal/kernel/hooks/useRowInfo.js +3 -3
  225. package/lib/components/Table/internal/kernel/selector-context/context.js +6 -5
  226. package/lib/components/Table/renderers/HeaderCell.js +3 -2
  227. package/lib/components/Table/renderers/TableShell.d.ts +13 -0
  228. package/lib/components/Table/renderers/TableShell.js +31 -0
  229. package/lib/components/Table/style/Table.css +3 -0
  230. package/lib/components/Tabs/Tabs.js +7 -5
  231. package/lib/components/Tooltip/Tooltip.js +5 -4
  232. package/lib/components/Tooltip/style/Tooltip.css +1 -0
  233. package/lib/components/Tour/Tour.js +7 -6
  234. package/lib/components/Trigger/Trigger.js +5 -4
  235. package/lib/components/Typography/Typography.js +5 -4
  236. package/lib/components/Typography/useTypographyEnhancements.js +8 -7
  237. package/lib/components/Upload/Upload.js +5 -4
  238. package/lib/components/Upload/UploadFileBar.js +4 -3
  239. package/lib/components/VirtualList/VirtualList.js +8 -7
  240. package/lib/components/VirtualList/hooks/useMobileTouchMove.js +4 -3
  241. package/lib/components/VirtualList/hooks/useScrollTo.js +3 -3
  242. package/lib/index.css +1 -1
  243. package/lib/index.d.ts +2 -2
  244. package/lib/index.js +13 -1
  245. package/package.json +2 -2
  246. package/scripts/mcp-server/examples.generated.json +54 -0
  247. package/scripts/mcp-server/index.generated.json +1212 -80
@@ -1,4 +1,4 @@
1
- import { useLayoutEffect } from '@1money/hooks';
1
+ import useLayoutEffect from '@1money/hooks/useLayoutEffect';
2
2
  import { useRef } from 'react';
3
3
  var SMOOTH_PTG = 14 / 15;
4
4
  export default function useMobileTouchMove(inVirtual, listRef, callback) {
@@ -82,4 +82,4 @@ export default function useMobileTouchMove(inVirtual, listRef, callback) {
82
82
  };
83
83
  }, [inVirtual]);
84
84
  }
85
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVmlydHVhbExpc3Qvc3JjL2NvbXBvbmVudHMvVmlydHVhbExpc3QvaG9va3MvdXNlTW9iaWxlVG91Y2hNb3ZlLnRzIiwiY29tcG9uZW50cy9WaXJ0dWFsTGlzdC9ob29rcy91c2VNb2JpbGVUb3VjaE1vdmUuanMiXSwibmFtZXMiOlsidXNlTGF5b3V0RWZmZWN0IiwidXNlUmVmIiwiU01PT1RIX1BURyIsInVzZU1vYmlsZVRvdWNoTW92ZSIsImluVmlydHVhbCIsImxpc3RSZWYiLCJjYWxsYmFjayIsInRvdWNoZWRSZWYiLCJ0b3VjaFhSZWYiLCJ0b3VjaFlSZWYiLCJlbGVtZW50UmVmIiwiaW50ZXJ2YWxSZWYiLCJjbGVhblVwRXZlbnRzIiwib25Ub3VjaE1vdmUiLCJlIiwiY3VycmVudCIsImN1cnJlbnRYIiwiTWF0aCIsImNlaWwiLCJ0b3VjaGVzIiwicGFnZVgiLCJjdXJyZW50WSIsInBhZ2VZIiwib2Zmc2V0WCIsIm9mZnNldFkiLCJpc0hvcml6b250YWwiLCJhYnMiLCJzY3JvbGxIYW5kbGVkIiwicHJldmVudERlZmF1bHQiLCJjbGVhckludGVydmFsIiwic2V0SW50ZXJ2YWwiLCJvZmZzZXQiLCJmbG9vciIsIm9uVG91Y2hFbmQiLCJvblRvdWNoU3RhcnQiLCJsZW5ndGgiLCJ0YXJnZXQiLCJhZGRFdmVudExpc3RlbmVyIiwicGFzc2l2ZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJfYSJdLCJtYXBwaW5ncyI6IkFBQUEsU0FBU0EsZUFBZSxRQUFRLGVBQWU7QUFFL0MsU0FBU0MsTUFBTSxRQUFRLE9BQU87QUFFOUIsSUFBTUMsVUFBVSxHQUFHLEVBQUUsR0FBRyxFQUFFO0FBRTFCLGVBQWMsU0FBVUMsa0JBQWtCQSxDQUN4Q0MsU0FBa0IsRUFDbEJDLE9BQStDLEVBQy9DQyxRQUtZLEVBQUE7RUFFWixJQUFNQyxVQUFVLEdBQUdOLE1BQU0sQ0FBQyxLQUFLLENBQUM7RUFDaEMsSUFBTU8sU0FBUyxHQUFHUCxNQUFNLENBQUMs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QSxLQUFBLENBQUEsR0FBQUEsRUFBQSxDQUFFRCxtQkFBbUIsQ0FBQyxZQUFZLEVBQUVMLFlBQVksQ0FBQztNQUNoRXRCLGFBQWEsQ0FBQSxDQUFFO01BQ2ZpQixhQUFhLENBQUNsQixXQUFXLENBQUNJLE9BQVEsQ0FBQztJQUNyQyxDQUFDO0VBQ0gsQ0FBQyxFQUFFLENBQUNYLFNBQVMsQ0FBQyxDQUFDO0FBQ2pCIiwiZmlsZSI6ImNvbXBvbmVudHMvVmlydHVhbExpc3QvaG9va3MvdXNlTW9iaWxlVG91Y2hNb3ZlLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJpbXBvcnQgeyB1c2VMYXlvdXRFZmZlY3QgfSBmcm9tICdAMW1vbmV5L2hvb2tzJztcbmltcG9ydCB7IHVzZVJlZiB9IGZyb20gJ3JlYWN0JztcbmNvbnN0IFNNT09USF9QVEcgPSAxNCAvIDE1O1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlTW9iaWxlVG91Y2hNb3ZlKGluVmlydHVhbCwgbGlzdFJlZiwgY2FsbGJhY2spIHtcbiAgICBjb25zdCB0b3VjaGVkUmVmID0gdXNlUmVmKGZhbHNlKTtcbiAgICBjb25zdCB0b3VjaFhSZWYgPSB1c2VSZWYoMCk7XG4gICAgY29uc3QgdG91Y2hZUmVmID0gdXNlUmVmKDApO1xuICAgIGNvbnN0IGVsZW1lbnRSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgLy8gU21vb3RoIHNjcm9sbFxuICAgIGNvbnN0IGludGVydmFsUmVmID0gdXNlUmVmKG51bGwpO1xuICAgIGxldCBjbGVhblVwRXZlbnRzO1xuICAgIGNvbnN0IG9uVG91Y2hNb3ZlID0gKGUpID0+IHtcbiAgICAgICAgaWYgKHRvdWNoZWRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFggPSBNYXRoLmNlaWwoZS50b3VjaGVzWzBdLnBhZ2VYKTtcbiAgICAgICAgICAgIGNvbnN0IGN1cnJlbnRZID0gTWF0aC5jZWlsKGUudG91Y2hlc1swXS5wYWdlWSk7XG4gICAgICAgICAgICBsZXQgb2Zmc2V0WCA9IHRvdWNoWFJlZi5jdXJyZW50IC0gY3VycmVudFg7XG4gICAgICAgICAgICBsZXQgb2Zmc2V0WSA9IHRvdWNoWVJlZi5jdXJyZW50IC0gY3VycmVudFk7XG4gICAgICAgICAgICBjb25zdCBpc0hvcml6b250YWwgPSBNYXRoLmFicyhvZmZzZXRYKSA+IE1hdGguYWJzKG9mZnNldFkpO1xuICAgICAgICAgICAgaWYgKGlzSG9yaXpvbnRhbCkge1xuICAgICAgICAgICAgICAgIHRvdWNoWFJlZi5jdXJyZW50ID0gY3VycmVudFg7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICB0b3VjaFlSZWYuY3VycmVudCA9IGN1cnJlbnRZO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3Qgc2Nyb2xsSGFuZGxlZCA9IGNhbGxiYWNrKGlzSG9yaXpvbnRhbCwgaXNIb3Jpem9udGFsID8gb2Zmc2V0WCA6IG9mZnNldFksIGZhbHNlLCBlKTtcbiAgICAgICAgICAgIGlmIChzY3JvbGxIYW5kbGVkKSB7XG4gICAgICAgICAgICAgICAgZS5wcmV2ZW50RGVmYXVsdCgpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgLy8gU21vb3RoIGludGVydmFsXG4gICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgaWYgKHNjcm9sbEhhbmRsZWQpIHtcbiAgICAgICAgICAgICAgICBpbnRlcnZhbFJlZi5jdXJyZW50ID0gc2V0SW50ZXJ2YWwoKCkgPT4ge1xuICAgICAgICAgICAgICAgICAgICBpZiAoaXNIb3Jpem9udGFsKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXRYICo9IFNNT09USF9QVEc7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBvZmZzZXRZICo9IFNNT09USF9QVEc7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgY29uc3Qgb2Zmc2V0ID0gTWF0aC5mbG9vcihpc0hvcml6b250YWwgPyBvZmZzZXRYIDogb2Zmc2V0WSk7XG4gICAgICAgICAgICAgICAgICAgIGlmICghY2FsbGJhY2soaXNIb3Jpem9udGFsLCBvZmZzZXQsIHRydWUpIHx8IE1hdGguYWJzKG9mZnNldCkgPD0gMC4xKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsUmVmLmN1cnJlbnQpO1xuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfSwgMTYpO1xuICAgICAgICAgICAgfVxuICAgICAgICB9XG4gICAgfTtcbiAgICBjb25zdCBvblRvdWNoRW5kID0gKCkgPT4ge1xuICAgICAgICB0b3VjaGVkUmVmLmN1cnJlbnQgPSBmYWxzZTtcbiAgICAgICAgY2xlYW5VcEV2ZW50cygpO1xuICAgIH07XG4gICAgY29uc3Qgb25Ub3VjaFN0YXJ0ID0gKGUpID0+IHtcbiAgICAgICAgY2xlYW5VcEV2ZW50cygpO1xuICAgICAgICBpZiAoZS50b3VjaGVzLmxlbmd0aCA9PT0gMSAmJiAhdG91Y2hlZFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICB0b3VjaGVkUmVmLmN1cnJlbnQgPSB0cnVlO1xuICAgICAgICAgICAgdG91Y2hYUmVmLmN1cnJlbnQgPSBNYXRoLmNlaWwoZS50b3VjaGVzWzBdLnBhZ2VYKTtcbiAgICAgICAgICAgIHRvdWNoWVJlZi5jdXJyZW50ID0gTWF0aC5jZWlsKGUudG91Y2hlc1swXS5wYWdlWSk7XG4gICAgICAgICAgICBlbGVtZW50UmVmLmN1cnJlbnQgPSBlLnRhcmdldDtcbiAgICAgICAgICAgIGVsZW1lbnRSZWYuY3VycmVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaG1vdmUnLCBvblRvdWNoTW92ZSwgeyBwYXNzaXZlOiBmYWxzZSB9KTtcbiAgICAgICAgICAgIGVsZW1lbnRSZWYuY3VycmVudC5hZGRFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIG9uVG91Y2hFbmQsIHsgcGFzc2l2ZTogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgIH07XG4gICAgY2xlYW5VcEV2ZW50cyA9ICgpID0+IHtcbiAgICAgICAgaWYgKGVsZW1lbnRSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgZWxlbWVudFJlZi5jdXJyZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIG9uVG91Y2hNb3ZlKTtcbiAgICAgICAgICAgIGVsZW1lbnRSZWYuY3VycmVudC5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaGVuZCcsIG9uVG91Y2hFbmQpO1xuICAgICAgICB9XG4gICAgfTtcbiAgICB1c2VMYXlvdXRFZmZlY3QoKCkgPT4ge1xuICAgICAgICB2YXIgX2E7XG4gICAgICAgIGlmIChpblZpcnR1YWwpIHtcbiAgICAgICAgICAgIChfYSA9IGxpc3RSZWYuY3VycmVudCkgPT09IG51bGwgfHwgX2EgPT09IHZvaWQgMCA/IHZvaWQgMCA6IF9hLmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoc3RhcnQnLCBvblRvdWNoU3RhcnQsIHsgcGFzc2l2ZTogdHJ1ZSB9KTtcbiAgICAgICAgfVxuICAgICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICAgICAgdmFyIF9hO1xuICAgICAgICAgICAgKF9hID0gbGlzdFJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIG9uVG91Y2hTdGFydCk7XG4gICAgICAgICAgICBjbGVhblVwRXZlbnRzKCk7XG4gICAgICAgICAgICBjbGVhckludGVydmFsKGludGVydmFsUmVmLmN1cnJlbnQpO1xuICAgICAgICB9O1xuICAgIH0sIFtpblZpcnR1YWxdKTtcbn0iXSwic291cmNlUm9vdCI6Ii4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uLy4uL3NyYyJ9
85
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVmlydHVhbExpc3Qvc3JjL2NvbXBvbmVudHMvVmlydHVhbExpc3QvaG9va3MvdXNlTW9iaWxlVG91Y2hNb3ZlLnRzIiwiY29tcG9uZW50cy9WaXJ0dWFsTGlzdC9ob29rcy91c2VNb2JpbGVUb3VjaE1vdmUuanMiXSwibmFtZXMiOlsidXNlTGF5b3V0RWZmZWN0IiwidXNlUmVmIiwiU01PT1RIX1BURyIsInVzZU1vYmlsZVRvdWNoTW92ZSIsImluVmlydHVhbCIsImxpc3RSZWYiLCJjYWxsYmFjayIsInRvdWNoZWRSZWYiLCJ0b3VjaFhSZWYiLCJ0b3VjaFlSZWYiLCJlbGVtZW50UmVmIiwiaW50ZXJ2YWxSZWYiLCJjbGVhblVwRXZlbnRzIiwib25Ub3VjaE1vdmUiLCJlIiwiY3VycmVudCIsImN1cnJlbnRYIiwiTWF0aCIsImNlaWwiLCJ0b3VjaGVzIiwicGFnZVgiLCJjdXJyZW50WSIsInBhZ2VZIiwib2Zmc2V0WCIsIm9mZnNldFkiLCJpc0hvcml6b250YWwiLCJhYnMiLCJzY3JvbGxIYW5kbGVkIiwicHJldmVudERlZmF1bHQiLCJjbGVhckludGVydmFsIiwic2V0SW50ZXJ2YWwiLCJvZmZzZXQiLCJmbG9vciIsIm9uVG91Y2hFbmQiLCJvblRvdWNoU3RhcnQiLCJsZW5ndGgiLCJ0YXJnZXQiLCJhZGRFdmVudExpc3RlbmVyIiwicGFzc2l2ZSIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJfYSJdLCJtYXBwaW5ncyI6IkFBQUEsT0FBT0EsZUFBZSxNQUFNLCtCQUErQjtBQUUzRCxTQUFTQyxNQUFNLFFBQVEsT0FBTztBQUU5QixJQUFNQyxVQUFVLEdBQUcsRUFBRSxHQUFHLEVBQUU7QUFFMUIsZUFBYyxTQUFVQyxrQkFBa0JBLENBQ3hDQyxTQUFrQixFQUNsQkMsT0FBK0MsRUFDL0NDLFFBS1ksRUFBQTtFQUVaLElBQU1DLFVBQVUsR0FBR04sTUFBTSxDQUFDLEtBQUssQ0FBQztFQUNoQyxJQUFNTyxTQUFTLEdBQUdQLE1BQU0sQ0FB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QUFBLEtBQUEsQ0FBQSxHQUFBQSxFQUFBLENBQUVELG1CQUFtQixDQUFDLFlBQVksRUFBRUwsWUFBWSxDQUFDO01BQ2hFdEIsYUFBYSxDQUFBLENBQUU7TUFDZmlCLGFBQWEsQ0FBQ2xCLFdBQVcsQ0FBQ0ksT0FBUSxDQUFDO0lBQ3JDLENBQUM7RUFDSCxDQUFDLEVBQUUsQ0FBQ1gsU0FBUyxDQUFDLENBQUM7QUFDakIiLCJmaWxlIjoiY29tcG9uZW50cy9WaXJ0dWFsTGlzdC9ob29rcy91c2VNb2JpbGVUb3VjaE1vdmUuanMiLCJzb3VyY2VzQ29udGVudCI6W251bGwsImltcG9ydCB1c2VMYXlvdXRFZmZlY3QgZnJvbSAnQDFtb25leS9ob29rcy91c2VMYXlvdXRFZmZlY3QnO1xuaW1wb3J0IHsgdXNlUmVmIH0gZnJvbSAncmVhY3QnO1xuY29uc3QgU01PT1RIX1BURyA9IDE0IC8gMTU7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VNb2JpbGVUb3VjaE1vdmUoaW5WaXJ0dWFsLCBsaXN0UmVmLCBjYWxsYmFjaykge1xuICAgIGNvbnN0IHRvdWNoZWRSZWYgPSB1c2VSZWYoZmFsc2UpO1xuICAgIGNvbnN0IHRvdWNoWFJlZiA9IHVzZVJlZigwKTtcbiAgICBjb25zdCB0b3VjaFlSZWYgPSB1c2VSZWYoMCk7XG4gICAgY29uc3QgZWxlbWVudFJlZiA9IHVzZVJlZihudWxsKTtcbiAgICAvLyBTbW9vdGggc2Nyb2xsXG4gICAgY29uc3QgaW50ZXJ2YWxSZWYgPSB1c2VSZWYobnVsbCk7XG4gICAgbGV0IGNsZWFuVXBFdmVudHM7XG4gICAgY29uc3Qgb25Ub3VjaE1vdmUgPSAoZSkgPT4ge1xuICAgICAgICBpZiAodG91Y2hlZFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICBjb25zdCBjdXJyZW50WCA9IE1hdGguY2VpbChlLnRvdWNoZXNbMF0ucGFnZVgpO1xuICAgICAgICAgICAgY29uc3QgY3VycmVudFkgPSBNYXRoLmNlaWwoZS50b3VjaGVzWzBdLnBhZ2VZKTtcbiAgICAgICAgICAgIGxldCBvZmZzZXRYID0gdG91Y2hYUmVmLmN1cnJlbnQgLSBjdXJyZW50WDtcbiAgICAgICAgICAgIGxldCBvZmZzZXRZID0gdG91Y2hZUmVmLmN1cnJlbnQgLSBjdXJyZW50WTtcbiAgICAgICAgICAgIGNvbnN0IGlzSG9yaXpvbnRhbCA9IE1hdGguYWJzKG9mZnNldFgpID4gTWF0aC5hYnMob2Zmc2V0WSk7XG4gICAgICAgICAgICBpZiAoaXNIb3Jpem9udGFsKSB7XG4gICAgICAgICAgICAgICAgdG91Y2hYUmVmLmN1cnJlbnQgPSBjdXJyZW50WDtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGVsc2Uge1xuICAgICAgICAgICAgICAgIHRvdWNoWVJlZi5jdXJyZW50ID0gY3VycmVudFk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBjb25zdCBzY3JvbGxIYW5kbGVkID0gY2FsbGJhY2soaXNIb3Jpem9udGFsLCBpc0hvcml6b250YWwgPyBvZmZzZXRYIDogb2Zmc2V0WSwgZmFsc2UsIGUpO1xuICAgICAgICAgICAgaWYgKHNjcm9sbEhhbmRsZWQpIHtcbiAgICAgICAgICAgICAgICBlLnByZXZlbnREZWZhdWx0KCk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBTbW9vdGggaW50ZXJ2YWxcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWxSZWYuY3VycmVudCk7XG4gICAgICAgICAgICBpZiAoc2Nyb2xsSGFuZGxlZCkge1xuICAgICAgICAgICAgICAgIGludGVydmFsUmVmLmN1cnJlbnQgPSBzZXRJbnRlcnZhbCgoKSA9PiB7XG4gICAgICAgICAgICAgICAgICAgIGlmIChpc0hvcml6b250YWwpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldFggKj0gU01PT1RIX1BURztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIG9mZnNldFkgKj0gU01PT1RIX1BURztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBjb25zdCBvZmZzZXQgPSBNYXRoLmZsb29yKGlzSG9yaXpvbnRhbCA/IG9mZnNldFggOiBvZmZzZXRZKTtcbiAgICAgICAgICAgICAgICAgICAgaWYgKCFjYWxsYmFjayhpc0hvcml6b250YWwsIG9mZnNldCwgdHJ1ZSkgfHwgTWF0aC5hYnMob2Zmc2V0KSA8PSAwLjEpIHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWxSZWYuY3VycmVudCk7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9LCAxNik7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICB9O1xuICAgIGNvbnN0IG9uVG91Y2hFbmQgPSAoKSA9PiB7XG4gICAgICAgIHRvdWNoZWRSZWYuY3VycmVudCA9IGZhbHNlO1xuICAgICAgICBjbGVhblVwRXZlbnRzKCk7XG4gICAgfTtcbiAgICBjb25zdCBvblRvdWNoU3RhcnQgPSAoZSkgPT4ge1xuICAgICAgICBjbGVhblVwRXZlbnRzKCk7XG4gICAgICAgIGlmIChlLnRvdWNoZXMubGVuZ3RoID09PSAxICYmICF0b3VjaGVkUmVmLmN1cnJlbnQpIHtcbiAgICAgICAgICAgIHRvdWNoZWRSZWYuY3VycmVudCA9IHRydWU7XG4gICAgICAgICAgICB0b3VjaFhSZWYuY3VycmVudCA9IE1hdGguY2VpbChlLnRvdWNoZXNbMF0ucGFnZVgpO1xuICAgICAgICAgICAgdG91Y2hZUmVmLmN1cnJlbnQgPSBNYXRoLmNlaWwoZS50b3VjaGVzWzBdLnBhZ2VZKTtcbiAgICAgICAgICAgIGVsZW1lbnRSZWYuY3VycmVudCA9IGUudGFyZ2V0O1xuICAgICAgICAgICAgZWxlbWVudFJlZi5jdXJyZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNobW92ZScsIG9uVG91Y2hNb3ZlLCB7IHBhc3NpdmU6IGZhbHNlIH0pO1xuICAgICAgICAgICAgZWxlbWVudFJlZi5jdXJyZW50LmFkZEV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgb25Ub3VjaEVuZCwgeyBwYXNzaXZlOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgfTtcbiAgICBjbGVhblVwRXZlbnRzID0gKCkgPT4ge1xuICAgICAgICBpZiAoZWxlbWVudFJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICBlbGVtZW50UmVmLmN1cnJlbnQucmVtb3ZlRXZlbnRMaXN0ZW5lcigndG91Y2htb3ZlJywgb25Ub3VjaE1vdmUpO1xuICAgICAgICAgICAgZWxlbWVudFJlZi5jdXJyZW50LnJlbW92ZUV2ZW50TGlzdGVuZXIoJ3RvdWNoZW5kJywgb25Ub3VjaEVuZCk7XG4gICAgICAgIH1cbiAgICB9O1xuICAgIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgIHZhciBfYTtcbiAgICAgICAgaWYgKGluVmlydHVhbCkge1xuICAgICAgICAgICAgKF9hID0gbGlzdFJlZi5jdXJyZW50KSA9PT0gbnVsbCB8fCBfYSA9PT0gdm9pZCAwID8gdm9pZCAwIDogX2EuYWRkRXZlbnRMaXN0ZW5lcigndG91Y2hzdGFydCcsIG9uVG91Y2hTdGFydCwgeyBwYXNzaXZlOiB0cnVlIH0pO1xuICAgICAgICB9XG4gICAgICAgIHJldHVybiAoKSA9PiB7XG4gICAgICAgICAgICB2YXIgX2E7XG4gICAgICAgICAgICAoX2EgPSBsaXN0UmVmLmN1cnJlbnQpID09PSBudWxsIHx8IF9hID09PSB2b2lkIDAgPyB2b2lkIDAgOiBfYS5yZW1vdmVFdmVudExpc3RlbmVyKCd0b3VjaHN0YXJ0Jywgb25Ub3VjaFN0YXJ0KTtcbiAgICAgICAgICAgIGNsZWFuVXBFdmVudHMoKTtcbiAgICAgICAgICAgIGNsZWFySW50ZXJ2YWwoaW50ZXJ2YWxSZWYuY3VycmVudCk7XG4gICAgICAgIH07XG4gICAgfSwgW2luVmlydHVhbF0pO1xufSJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
@@ -2,7 +2,7 @@ import _typeof from "@babel/runtime/helpers/esm/typeof";
2
2
  import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
3
3
  import * as React from 'react';
4
4
  import raf from '../utils/raf';
5
- import { useLayoutEffect } from '@1money/hooks';
5
+ import useLayoutEffect from '@1money/hooks/useLayoutEffect';
6
6
  var MAX_TIMES = 10;
7
7
  export default function useScrollTo(containerRef, data, heights, itemHeight, getKey, collectHeight, syncScrollTop, triggerFlash) {
8
8
  var scrollRef = React.useRef(undefined);
@@ -129,4 +129,4 @@ export default function useScrollTo(containerRef, data, heights, itemHeight, get
129
129
  }
130
130
  };
131
131
  }
132
- //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVmlydHVhbExpc3Qvc3JjL2NvbXBvbmVudHMvVmlydHVhbExpc3QvaG9va3MvdXNlU2Nyb2xsVG8udHN4IiwiY29tcG9uZW50cy9WaXJ0dWFsTGlzdC9ob29rcy91c2VTY3JvbGxUby5qcyJdLCJuYW1lcyI6WyJSZWFjdCIsInJhZiIsInVzZUxheW91dEVmZmVjdCIsIk1BWF9USU1FUyIsInVzZVNjcm9sbFRvIiwiY29udGFpbmVyUmVmIiwiZGF0YSIsImhlaWdodHMiLCJpdGVtSGVpZ2h0IiwiZ2V0S2V5IiwiY29sbGVjdEhlaWdodCIsInN5bmNTY3JvbGxUb3AiLCJ0cmlnZ2VyRmxhc2giLCJzY3JvbGxSZWYiLCJ1c2VSZWYiLCJ1bmRlZmluZWQiLCJfUmVhY3QkdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl9SZWFjdCR1c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInN5bmNTdGF0ZSIsInNldFN5bmNTdGF0ZSIsInRpbWVzIiwiY3VycmVudCIsIm9yaSIsIk9iamVjdCIsImFzc2lnbiIsInRhcmdldEFsaWduIiwib3JpZ2luQWxpZ24iLCJpbmRleCIsIm9mZnNldCIsImhlaWdodCIsImNsaWVudEhlaWdodCIsIm5lZWRDb2xsZWN0SGVpZ2h0IiwibmV3VGFyZ2V0QWxpZ24iLCJ0YXJnZXRUb3AiLCJtZXJnZWRBbGlnbiIsInN0YWNrVG9wIiwiaXRlbVRvcCIsIml0ZW1Cb3R0b20iLCJtYXhMZW4iLCJNYXRoIiwibWluIiwibGVuZ3RoIiwiaSIsImtleSIsImNhY2hlSGVpZ2h0IiwiZ2V0IiwibGVmdEhlaWdodCIsInNjcm9sbFRvcCIsInNjcm9sbEJvdHRvbSIsImxhc3RUb3AiLCJjb25zb2xlIiwid2FybiIsImFyZyIsImNhbmNlbCIsIl90eXBlb2YiLCJhbGlnbiIsImZpbmRJbmRleCIsIml0ZW0iLCJfYXJnJG9mZnNldCJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLE9BQU9DLEdB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V0FBQSxjQUFHLENBQUMsR0FBQUEsV0FBQTtNQUVsQnZDLFlBQVksQ0FBQztRQUNYQyxLQUFLLEVBQUUsQ0FBQztRQUNSTyxLQUFLLEVBQUxBLEtBQUs7UUFDTEMsTUFBTSxFQUFOQSxNQUFNO1FBQ05GLFdBQVcsRUFBRTZCO01DakVULENEa0VMLENBQUM7SUFDSjtFQUNGLENBQUM7QUFDSCIsImZpbGUiOiJjb21wb25lbnRzL1ZpcnR1YWxMaXN0L2hvb2tzL3VzZVNjcm9sbFRvLmpzIiwic291cmNlc0NvbnRlbnQiOltudWxsLCJpbXBvcnQgKiBhcyBSZWFjdCBmcm9tICdyZWFjdCc7XG5pbXBvcnQgcmFmIGZyb20gJy4uL3V0aWxzL3JhZic7XG5pbXBvcnQgeyB1c2VMYXlvdXRFZmZlY3QgfSBmcm9tICdAMW1vbmV5L2hvb2tzJztcbmNvbnN0IE1BWF9USU1FUyA9IDEwO1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gdXNlU2Nyb2xsVG8oY29udGFpbmVyUmVmLCBkYXRhLCBoZWlnaHRzLCBpdGVtSGVpZ2h0LCBnZXRLZXksIGNvbGxlY3RIZWlnaHQsIHN5bmNTY3JvbGxUb3AsIHRyaWdnZXJGbGFzaCkge1xuICAgIGNvbnN0IHNjcm9sbFJlZiA9IFJlYWN0LnVzZVJlZih1bmRlZmluZWQpO1xuICAgIGNvbnN0IFtzeW5jU3RhdGUsIHNldFN5bmNTdGF0ZV0gPSBSZWFjdC51c2VTdGF0ZShudWxsKTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PSBTeW5jIFNjcm9sbCA9PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgICAgIGlmIChzeW5jU3RhdGUgJiYgc3luY1N0YXRlLnRpbWVzIDwgTUFYX1RJTUVTKSB7XG4gICAgICAgICAgICAvLyBOZXZlciByZWFjaFxuICAgICAgICAgICAgaWYgKCFjb250YWluZXJSZWYuY3VycmVudCkge1xuICAgICAgICAgICAgICAgIHNldFN5bmNTdGF0ZSgob3JpKSA9PiAoT2JqZWN0LmFzc2lnbih7fSwgb3JpKSkpO1xuICAgICAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbGxlY3RIZWlnaHQoKTtcbiAgICAgICAgICAgIGNvbnN0IHsgdGFyZ2V0QWxpZ24sIG9yaWdpbkFsaWduLCBpbmRleCwgb2Zmc2V0IH0gPSBzeW5jU3RhdGU7XG4gICAgICAgICAgICBjb25zdCBoZWlnaHQgPSBjb250YWluZXJSZWYuY3VycmVudC5jbGllbnRIZWlnaHQ7XG4gICAgICAgICAgICBsZXQgbmVlZENvbGxlY3RIZWlnaHQgPSBmYWxzZTtcbiAgICAgICAgICAgIGxldCBuZXdUYXJnZXRBbGlnbiA9IHRhcmdldEFsaWduICE9PSBudWxsICYmIHRhcmdldEFsaWduICE9PSB2b2lkIDAgPyB0YXJnZXRBbGlnbiA6IG51bGw7XG4gICAgICAgICAgICBsZXQgdGFyZ2V0VG9wID0gbnVsbDtcbiAgICAgICAgICAgIC8vIEdvIHRvIG5leHQgZnJhbWUgaWYgaGVpZ2h0IG5vdCBleGlzdFxuICAgICAgICAgICAgaWYgKGhlaWdodCkge1xuICAgICAgICAgICAgICAgIGNvbnN0IG1lcmdlZEFsaWduID0gdGFyZ2V0QWxpZ24gfHwgb3JpZ2luQWxpZ247XG4gICAgICAgICAgICAgICAgLy8gR2V0IHRvcCAmIGJvdHRvbVxuICAgICAgICAgICAgICAgIGxldCBzdGFja1RvcCA9IDA7XG4gICAgICAgICAgICAgICAgbGV0IGl0ZW1Ub3AgPSAwO1xuICAgICAgICAgICAgICAgIGxldCBpdGVtQm90dG9tID0gMDtcbiAgICAgICAgICAgICAgICBjb25zdCBtYXhMZW4gPSBNYXRoLm1pbihkYXRhLmxlbmd0aCAtIDEsIGluZGV4KTtcbiAgICAgICAgICAgICAgICBmb3IgKGxldCBpID0gMDsgaSA8PSBtYXhMZW47IGkgKz0gMSkge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBrZXkgPSBnZXRLZXkoZGF0YVtpXSk7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Ub3AgPSBzdGFja1RvcDtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2FjaGVIZWlnaHQgPSBoZWlnaHRzLmdldChrZXkpO1xuICAgICAgICAgICAgICAgICAgICBpdGVtQm90dG9tID0gaXRlbVRvcCArIChjYWNoZUhlaWdodCA9PT0gdW5kZWZpbmVkID8gaXRlbUhlaWdodCA6IGNhY2hlSGVpZ2h0KTtcbiAgICAgICAgICAgICAgICAgICAgc3RhY2tUb3AgPSBpdGVtQm90dG9tO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBDaGVjayBpZiBuZWVkIHN5bmMgaGVpZ2h0ICh2aXNpYmxlIHJhbmdlIGhhcyBpdGVtIG5vdCByZWNvcmQgaGVpZ2h0KVxuICAgICAgICAgICAgICAgIGxldCBsZWZ0SGVpZ2h0ID0gbWVyZ2VkQWxpZ24gPT09ICd0b3AnID8gb2Zmc2V0IDogaGVpZ2h0IC0gb2Zmc2V0O1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSBtYXhMZW47IGkgPj0gMDsgaSAtPSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9IGdldEtleShkYXRhW2ldKTtcbiAgICAgICAgICAgICAgICAgICAgY29uc3QgY2FjaGVIZWlnaHQgPSBoZWlnaHRzLmdldChrZXkpO1xuICAgICAgICAgICAgICAgICAgICBpZiAoY2FjaGVIZWlnaHQgPT09IHVuZGVmaW5lZCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgbmVlZENvbGxlY3RIZWlnaHQgPSB0cnVlO1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgbGVmdEhlaWdodCAtPSBjYWNoZUhlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgaWYgKGxlZnRIZWlnaHQgPD0gMCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gU2Nyb2xsIHRvXG4gICAgICAgICAgICAgICAgc3dpdGNoIChtZXJnZWRBbGlnbikge1xuICAgICAgICAgICAgICAgICAgICBjYXNlICd0b3AnOlxuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0VG9wID0gaXRlbVRvcCAtIG9mZnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBjYXNlICdib3R0b20nOlxuICAgICAgICAgICAgICAgICAgICAgICAgdGFyZ2V0VG9wID0gaXRlbUJvdHRvbSAtIGhlaWdodCArIG9mZnNldDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGJyZWFrO1xuICAgICAgICAgICAgICAgICAgICBkZWZhdWx0OiB7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCB7IHNjcm9sbFRvcCB9ID0gY29udGFpbmVyUmVmLmN1cnJlbnQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBjb25zdCBzY3JvbGxCb3R0b20gPSBzY3JvbGxUb3AgKyBoZWlnaHQ7XG4gICAgICAgICAgICAgICAgICAgICAgICBpZiAoaXRlbVRvcCA8IHNjcm9sbFRvcCkge1xuICAgICAgICAgICAgICAgICAgICAgICAgICAgIG5ld1RhcmdldEFsaWduID0gJ3RvcCc7XG4gICAgICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgICAgICAgICBlbHNlIGlmIChpdGVtQm90dG9tID4gc2Nyb2xsQm90dG9tKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3VGFyZ2V0QWxpZ24gPSAnYm90dG9tJztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICBpZiAodGFyZ2V0VG9wICE9PSBudWxsKSB7XG4gICAgICAgICAgICAgICAgICAgIHN5bmNTY3JvbGxUb3AodGFyZ2V0VG9wKTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgLy8gT25lIG1vcmUgdGltZSBmb3Igc3luY1xuICAgICAgICAgICAgICAgIGlmICh0YXJnZXRUb3AgIT09IHN5bmNTdGF0ZS5sYXN0VG9wKSB7XG4gICAgICAgICAgICAgICAgICAgIG5lZWRDb2xsZWN0SGVpZ2h0ID0gdHJ1ZTtcbiAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICAvLyBUcmlnZ2VyIG5leHQgZWZmZWN0XG4gICAgICAgICAgICBpZiAobmVlZENvbGxlY3RIZWlnaHQpIHtcbiAgICAgICAgICAgICAgICBzZXRTeW5jU3RhdGUoT2JqZWN0LmFzc2lnbihPYmplY3QuYXNzaWduKHt9LCBzeW5jU3RhdGUpLCB7IHRpbWVzOiBzeW5jU3RhdGUudGltZXMgKyAxLCB0YXJnZXRBbGlnbjogbmV3VGFyZ2V0QWxpZ24sIGxhc3RUb3A6IHRhcmdldFRvcCB9KSk7XG4gICAgICAgICAgICB9XG4gICAgICAgIH1cbiAgICAgICAgZWxzZSBpZiAoKHN5bmNTdGF0ZSA9PT0gbnVsbCB8fCBzeW5jU3RhdGUgPT09IHZvaWQgMCA/IHZvaWQgMCA6IHN5bmNTdGF0ZS50aW1lcykgPT09IE1BWF9USU1FUykge1xuICAgICAgICAgICAgY29uc29sZS53YXJuKCdbVmlydHVhbExpc3RdIGBzY3JvbGxUb2AgcmVhY2hlZCB0aGUgbWF4IGl0ZXJhdGlvbiBsaW1pdC4nKTtcbiAgICAgICAgfVxuICAgIH0sIFtzeW5jU3RhdGUsIGNvbnRhaW5lclJlZi5jdXJyZW50XSk7XG4gICAgLy8gPT09PT09PT09PT09PT09PT09PT09PT09PT09IFNjcm9sbCBUbyA9PT09PT09PT09PT09PT09PT09PT09PT09PT1cbiAgICByZXR1cm4gKGFyZykgPT4ge1xuICAgICAgICAvLyBXaGVuIG5vdCBhcmd1bWVudCBwcm92aWRlZCwgd2UgdGhpbmsgZGV2IG1heSB3YW50IHRvIHNob3cgdGhlIHNjcm9sbGJhclxuICAgICAgICBpZiAoYXJnID09PSBudWxsIHx8IGFyZyA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICB0cmlnZ2VyRmxhc2goKTtcbiAgICAgICAgICAgIHJldHVybjtcbiAgICAgICAgfVxuICAgICAgICAvLyBOb3JtYWwgc2Nyb2xsIGxvZ2ljXG4gICAgICAgIHJhZi5jYW5jZWwoc2Nyb2xsUmVmLmN1cnJlbnQpO1xuICAgICAgICBpZiAodHlwZW9mIGFyZyA9PT0gJ251bWJlcicpIHtcbiAgICAgICAgICAgIHN5bmNTY3JvbGxUb3AoYXJnKTtcbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmIChhcmcgJiYgdHlwZW9mIGFyZyA9PT0gJ29iamVjdCcpIHtcbiAgICAgICAgICAgIGxldCBpbmRleDtcbiAgICAgICAgICAgIGNvbnN0IHsgYWxpZ24gfSA9IGFyZztcbiAgICAgICAgICAgIGlmICgnaW5kZXgnIGluIGFyZykge1xuICAgICAgICAgICAgICAgICh7IGluZGV4IH0gPSBhcmcpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgZWxzZSB7XG4gICAgICAgICAgICAgICAgaW5kZXggPSBkYXRhLmZpbmRJbmRleCgoaXRlbSkgPT4gZ2V0S2V5KGl0ZW0pID09PSBhcmcua2V5KTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIGNvbnN0IHsgb2Zmc2V0ID0gMCB9ID0gYXJnO1xuICAgICAgICAgICAgc2V0U3luY1N0YXRlKHtcbiAgICAgICAgICAgICAgICB0aW1lczogMCxcbiAgICAgICAgICAgICAgICBpbmRleCxcbiAgICAgICAgICAgICAgICBvZmZzZXQsXG4gICAgICAgICAgICAgICAgb3JpZ2luQWxpZ246IGFsaWduLFxuICAgICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICB9O1xufSJdLCJzb3VyY2VSb290IjoiLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vLi4vc3JjIn0=
132
+ //# sourceMappingURL=data:application/json;charset=utf8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImNvbXBvbmVudHMvVmlydHVhbExpc3Qvc3JjL2NvbXBvbmVudHMvVmlydHVhbExpc3QvaG9va3MvdXNlU2Nyb2xsVG8udHN4IiwiY29tcG9uZW50cy9WaXJ0dWFsTGlzdC9ob29rcy91c2VTY3JvbGxUby5qcyJdLCJuYW1lcyI6WyJSZWFjdCIsInJhZiIsInVzZUxheW91dEVmZmVjdCIsIk1BWF9USU1FUyIsInVzZVNjcm9sbFRvIiwiY29udGFpbmVyUmVmIiwiZGF0YSIsImhlaWdodHMiLCJpdGVtSGVpZ2h0IiwiZ2V0S2V5IiwiY29sbGVjdEhlaWdodCIsInN5bmNTY3JvbGxUb3AiLCJ0cmlnZ2VyRmxhc2giLCJzY3JvbGxSZWYiLCJ1c2VSZWYiLCJ1bmRlZmluZWQiLCJfUmVhY3QkdXNlU3RhdGUiLCJ1c2VTdGF0ZSIsIl9SZWFjdCR1c2VTdGF0ZTIiLCJfc2xpY2VkVG9BcnJheSIsInN5bmNTdGF0ZSIsInNldFN5bmNTdGF0ZSIsInRpbWVzIiwiY3VycmVudCIsIm9yaSIsIk9iamVjdCIsImFzc2lnbiIsInRhcmdldEFsaWduIiwib3JpZ2luQWxpZ24iLCJpbmRleCIsIm9mZnNldCIsImhlaWdodCIsImNsaWVudEhlaWdodCIsIm5lZWRDb2xsZWN0SGVpZ2h0IiwibmV3VGFyZ2V0QWxpZ24iLCJ0YXJnZXRUb3AiLCJtZXJnZWRBbGlnbiIsInN0YWNrVG9wIiwiaXRlbVRvcCIsIml0ZW1Cb3R0b20iLCJtYXhMZW4iLCJNYXRoIiwibWluIiwibGVuZ3RoIiwiaSIsImtleSIsImNhY2hlSGVpZ2h0IiwiZ2V0IiwibGVmdEhlaWdodCIsInNjcm9sbFRvcCIsInNjcm9sbEJvdHRvbSIsImxhc3RUb3AiLCJjb25zb2xlIiwid2FybiIsImFyZyIsImNhbmNlbCIsIl90eXBlb2YiLCJhbGlnbiIsImZpbmRJbmRleCIsIml0ZW0iLCJfYXJnJG9mZnNldCJdLCJtYXBwaW5ncyI6Ijs7QUFBQSxPQUFPLEtBQUtBLEtBQUssTUFBTSxPQUFPO0FBQzlCLE9BQU9DLEdBQUcsTUFBTSxjQUFjO0FBRzlCLE9BQU9DLGVBQWUsTUFBTSwrQkFBK0I7QUFFM0QsSUFBTUMsU0FBUyxHQUFHLEVBQUU7QUFxQnBCLGVBQWMsU0FBVUMsV0FBV0EsQ0FDakNDLFlBQW9ELEVBQ3BEQyxJQUFTLEVBQ1RDLE9BQWlCLEVBQ2pCQyxVQUFrQixFQUNsQkMsTUFBaUIsRUFDakJDLGFBQXlCLEVBQ3pCQyxhQUF1QyxFQUN2Q0MsWUFBd0IsRUFBQTtFQUV4QixJQUFNQyxTQUFTLEdBQUdiLEtBQUssQ0FBQ2MsTUFBTSxDQUFTQyxTQUFTLENBQUM7RUFFakQsSUFBQUMsZUFBQSxHQUFrQ2hCLEtBQUssQ0FBQ2lCLFFBQVEsQ0FPdEMsSUFBSSxDQUFDO0lBQUFDLGdCQUFBLEdBQUFDLGNBQUEsQ0FBQUgsZUFBQTtJQVBSSSxTQUFTLEdBQUFGLGdCQUFBO0lBQUVHLFlBQVksR0FBQUgsZ0JBQUE7RUFTOUI7RUFDQWhCLGVBQWUsQ0FBQyxZQUFLO0lBQ25CLElBQUlrQixTQUFTLElBQUlBLFNBQVMsQ0FBQ0UsS0FBSyxHQUFHbkIsU0FBUyxFQUFFO01BQzVDO01BQ0EsSUFBSSxDQUFDRSxZQUFZLENBQUNrQixPQUFPLEVBQUU7UUFDekJGLFlBQVksQ0FBQyxVQUFDRyxHQUFHO1VBQUEsT0FBS0MsTUFBQSxDQUFBQyxNQUFBLENBQUEsQ0FBQSxDQUFBLEVBQU1GLEdBQUksQ0FBQTtRQUFBLENBQUcsQ0FBQztRQUNwQztNQUNGO01BRUFkLGFBQWEsQ0FBQSxDQUFFO01BRWYsSUFBUWlCLFdBQVcsR0FBaUNQLFNBQVMsQ0FBckRPLFdBQVc7UUFBRUMsV0FBVyxHQUFvQlIsU0FBUyxDQUF4Q1EsV0FBVztRQUFFQyxLQUFLLEdBQWFULFNBQVMsQ0FBM0JTLEtBQUs7UUFBRUMsTUFBTSxHQUFLVixTQUFTLENBQXBCVSxNQUFNO01BRS9DLElBQU1DLE1BQU0sR0FBRzFCLFlBQVksQ0FBQ2tCLE9BQU8sQ0FBQ1MsWUFBWTtNQUNoRCxJQUFJQyxpQkFBaUIsR0FBRyxLQUFLO01BQzdCLElBQUlDLGNBQWMsR0FBNEJQLFdBQVcsS0FBQSxJQUFBLElBQVhBLFdBQVcsS0FBQSxLQUFBLENBQUEsR0FBWEEsV0FBVyxHQUFJLElBQUk7TUFDakUsSUFBSVEsU0FBUyxHQUFrQixJQUFJO01BRW5DO01BQ0EsSUFBSUosTUFBTSxFQUFFO1FBQ1YsSUFBTUssV0FBVyxHQUFHVCxXQUFXLElBQUlDLFdBQVc7UUFFOUM7UUFDQSxJQUFJUyxRQUFRLEdBQUcsQ0FBQztRQUNoQixJQUFJQyxPQUFPLEdBQUcsQ0FBQztRQUNmLElBQUlDLFVBQVUsR0FBRyxDQUFDO1FBRWxCLElBQU1DLE1BQU0sR0FBR0MsSUFBSSxDQUFDQyxHQUFHLENBQUNwQyxJQUFJLENBQUNxQyxNQUFNLEdBQUcsQ0FBQyxFQUFFZCxLQUFLLENBQUM7UUFFL0MsS0FBSyxJQUFJZSxDQUFDLEdBQUcsQ0FBQyxFQUFFQSxDQUFDLElBQUlKLE1BQU0sRUFBRUksQ0FBQyxJQUFJLENBQUMsRUFBRTtVQUNuQyxJQUFNQyxHQUFHLEdBQUdwQyxNQUFNLENBQUNILElBQUksQ0FBQ3NDLENBQUMsQ0FBQyxDQUFDO1VBQzNCTixPQUFPLEdBQUdELFFBQVE7VUFDbEIsSUFBTVMsV0FBVyxHQUFHdkMsT0FBTyxDQUFDd0MsR0FBRyxDQUFDRixHQUFHLENBQUM7VUFDcENOLFVBQVUsR0FBR0QsT0FBTyxJQUFJUSxXQUFXLEtBQUsvQixTQUFTLEdBQUdQLFVBQVUsR0FBR3NDLFdBQVcsQ0FBQztVQUU3RVQsUUFBUSxHQUFHRSxVQUFVO1FBQ3ZCO1FBRUE7UUFDQSxJQUFJUyxVQUFVLEdBQUdaLFdBQVcsS0FBSyxLQUFLLEdBQUdOLE1BQU0sR0FBR0MsTUFBTSxHQUFHRCxNQUFNO1FBQ2pFLEtBQUssSUFBSWMsRUFBQyxHQUFHSixNQUFNLEVBQUVJLEVBQUMsSUFBSSxDQUFDLEVBQUVBLEVBQUMsSUFBSSxDQUFDLEVBQUU7VUFDbkMsSUFBTUMsSUFBRyxHQUFHcEMsTUFBTSxDQUFDSCxJQUFJLENBQUNzQyxFQUFDLENBQUMsQ0FBQztVQUMzQixJQUFNRSxZQUFXLEdBQUd2QyxPQUFPLENBQUN3QyxHQUFHLENBQUNGLElBQUcsQ0FBQztVQUVwQyxJQUFJQyxZQUFXLEtBQUsvQixTQUFTLEVBQUU7WUFDN0JrQixpQkFBaUIsR0FBRyxJQUFJO1lBQ3hCO1VBQ0Y7VUFFQWUsVUFBVSxJQUFJRixZQUFXO1VBQ3pCLElBQUlFLFVBQVUsSUFBSSxDQUFDLEVBQUU7WUFDbkI7VUFDRjtRQUNGO1FBRUE7UUFDQSxRQUFRWixXQUFXO1VBQ2pCLEtBQUssS0FBSztZQUNSRCxTQUFTLEdBQUdHLE9BQU8sR0FBR1IsTUFBTTtZQUM1QjtVQUNGLEtBQUssUUFBUTtZQUNYSyxTQUFTLEdBQUdJLFVBQVUsR0FBR1IsTUFBTSxHQUFHRCxNQUFNO1lBQ3hDO1VBRUY7WUFBUztjQUNQLElBQVFtQixTQUFTLEdBQUs1QyxZQUFZLENBQUNrQixPQUFPLENBQWxDMEIsU0FBUztjQUNqQixJQUFNQyxZQUFZLEdBQUdELFNBQVMsR0FBR2xCLE1BQU07Y0FDdkMsSUFBSU8sT0FBTyxHQUFHVyxTQUFTLEVBQUU7Z0JBQ3ZCZixjQUFjLEdBQUcsS0FBSztjQUN4QixDQUFDLE1BQU0sSUFBSUssVUFBVSxHQUFHVyxZQUFZLEVBQUU7Z0JBQ3BDaEIsY0FBYyxHQUFHLFFBQVE7Y0FDM0I7WUFDRjtRQUNGO1FBRUEsSUFBSUMsU0FBUyxLQUFLLElBQUksRUFBRTtVQUN0QnhCLGFBQWEsQ0FBQ3dCLFNBQVMsQ0FBQztRQUMxQjtRQUVBO1FBQ0EsSUFBSUEsU0FBUyxLQUFLZixTQUFTLENBQUMrQixPQUFPLEVBQUU7VUFDbkNsQixpQkFBaUIsR0FBRyxJQUFJO1FBQzFCO01BQ0Y7TUFFQTtNQUNBLElBQUlBLGlCQUFpQixFQUFFO1FBQ3JCWixZQUFZLENBQUFJLE1BQUEsQ0FBQUMsTUFBQSxDQUFBRCxNQUFBLENBQUFDLE1BQUEsQ0FBQSxDQUFBLENBQUEsRUFDUE4sU0FBUyxDQUFBLEVBQUE7VUFDWkUsS0FBSyxFQUFFRixTQUFTLENBQUNFLEtBQUssR0FBRyxDQUFDO1VBQzFCSyxXQUFXLEVBQUVPLGNBQWM7VUFDM0JpQixPQUFPLEVBQUVoQjtRQUFTLENBQUEsQ0FBQSxDQUNsQjtNQUNKO0lBQ0YsQ0FBQyxNQUFNLElBQUksQ0FBQWYsU0FBUyxLQUFBLElBQUEsSUFBVEEsU0FBUyxLQUFBLEtBQUEsQ0FBQSxHQUFBLEtBQUEsQ0FBQSxHQUFUQSxTQUFTLENBQUVFLEtBQUssTUFBS25CLFNBQVMsRUFBRTtNQUN6Q2lELE9BQU8sQ0FBQ0MsSUFBSSxDQUNWLDJEQUEyRCxDQUM1RDtJQUNIO0VBQ0YsQ0FBQyxFQUFFLENBQUNqQyxTQUFTLEVBQUVmLFlBQVksQ0FBQ2tCLE9BQU8sQ0FBQyxDQUFDO0VBRXJDO0VBQ0EsT0FBTyxVQUFDK0IsR0FBRyxFQUFJO0lBQ2I7SUFDQSxJQUFJQSxHQUFHLEtBQUssSUFBSSxJQUFJQSxHQUFHLEtBQUt2QyxTQUFTLEVBQUU7TUFDckNILFlBQVksQ0FBQSxDQUFFO01BQ2Q7SUFDRjtJQUVBO0lBQ0FYLEdBQUcsQ0FBQ3NELE1BQU0sQ0FBQzFDLFNBQVMsQ0FBQ1UsT0FBUSxDQUFDO0lBRTlCLElBQUksT0FBTytCLEdBQUcsS0FBSyxRQUFRLEVBQUU7TUFDM0IzQyxhQUFhLENBQUMyQyxHQUFHLENBQUM7SUFDcEIsQ0FBQyxNQUFNLElBQUlBLEdBQUcsSUFBSUUsT0FBQSxDQUFPRixHQUFHLE1BQUssUUFBUSxFQUFFO01BQ3pDLElBQUl6QixLQUFhO01BQ2pCLElBQVE0QixLQUFLLEdBQUtILEdBQUcsQ0FBYkcsS0FBSztNQUViLElBQUksT0FBTyxJQUFJSCxHQUFHLEVBQUU7UUFDZnpCLEtBQUssR0FBS3lCLEdBQUcsQ0FBYnpCLEtBQUs7TUFDVixDQUFDLE1BQU07UUFDTEEsS0FBSyxHQUFHdkIsSUFBSSxDQUFDb0QsU0FBUyxDQUFDLFVBQUNDLElBQUk7VUFBQSxPQUFLbEQsTUFBTSxDQUFDa0QsSUFBSSxDQUFDLEtBQUtMLEdBQUcsQ0FBQ1QsR0FBRztRQUFBLEVBQUM7TUFDNUQ7TUFFQSxJQUFBZSxXQUFBLEdBQXVCTixHQUFHLENBQWxCeEIsTUFBTTtRQUFOQSxNQUFNLEdBQUE4QixXQUFBLGNBQUcsQ0FBQyxHQUFBQSxXQUFBO01BRWxCdkMsWUFBWSxDQUFDO1FBQ1hDLEtBQUssRUFBRSxDQUFDO1FBQ1JPLEtBQUssRUFBTEEsS0FBSztRQUNMQyxNQUFNLEVBQU5BLE1BQU07UUFDTkYsV0FBVyxFQUFFNkI7TUNqRVQsQ0RrRUwsQ0FBQztJQUNKO0VBQ0YsQ0FBQztBQUNIIiwiZmlsZSI6ImNvbXBvbmVudHMvVmlydHVhbExpc3QvaG9va3MvdXNlU2Nyb2xsVG8uanMiLCJzb3VyY2VzQ29udGVudCI6W251bGwsImltcG9ydCAqIGFzIFJlYWN0IGZyb20gJ3JlYWN0JztcbmltcG9ydCByYWYgZnJvbSAnLi4vdXRpbHMvcmFmJztcbmltcG9ydCB1c2VMYXlvdXRFZmZlY3QgZnJvbSAnQDFtb25leS9ob29rcy91c2VMYXlvdXRFZmZlY3QnO1xuY29uc3QgTUFYX1RJTUVTID0gMTA7XG5leHBvcnQgZGVmYXVsdCBmdW5jdGlvbiB1c2VTY3JvbGxUbyhjb250YWluZXJSZWYsIGRhdGEsIGhlaWdodHMsIGl0ZW1IZWlnaHQsIGdldEtleSwgY29sbGVjdEhlaWdodCwgc3luY1Njcm9sbFRvcCwgdHJpZ2dlckZsYXNoKSB7XG4gICAgY29uc3Qgc2Nyb2xsUmVmID0gUmVhY3QudXNlUmVmKHVuZGVmaW5lZCk7XG4gICAgY29uc3QgW3N5bmNTdGF0ZSwgc2V0U3luY1N0YXRlXSA9IFJlYWN0LnVzZVN0YXRlKG51bGwpO1xuICAgIC8vID09PT09PT09PT09PT09PT09PT09PT09PT09IFN5bmMgU2Nyb2xsID09PT09PT09PT09PT09PT09PT09PT09PT09XG4gICAgdXNlTGF5b3V0RWZmZWN0KCgpID0+IHtcbiAgICAgICAgaWYgKHN5bmNTdGF0ZSAmJiBzeW5jU3RhdGUudGltZXMgPCBNQVhfVElNRVMpIHtcbiAgICAgICAgICAgIC8vIE5ldmVyIHJlYWNoXG4gICAgICAgICAgICBpZiAoIWNvbnRhaW5lclJlZi5jdXJyZW50KSB7XG4gICAgICAgICAgICAgICAgc2V0U3luY1N0YXRlKChvcmkpID0+IChPYmplY3QuYXNzaWduKHt9LCBvcmkpKSk7XG4gICAgICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29sbGVjdEhlaWdodCgpO1xuICAgICAgICAgICAgY29uc3QgeyB0YXJnZXRBbGlnbiwgb3JpZ2luQWxpZ24sIGluZGV4LCBvZmZzZXQgfSA9IHN5bmNTdGF0ZTtcbiAgICAgICAgICAgIGNvbnN0IGhlaWdodCA9IGNvbnRhaW5lclJlZi5jdXJyZW50LmNsaWVudEhlaWdodDtcbiAgICAgICAgICAgIGxldCBuZWVkQ29sbGVjdEhlaWdodCA9IGZhbHNlO1xuICAgICAgICAgICAgbGV0IG5ld1RhcmdldEFsaWduID0gdGFyZ2V0QWxpZ24gIT09IG51bGwgJiYgdGFyZ2V0QWxpZ24gIT09IHZvaWQgMCA/IHRhcmdldEFsaWduIDogbnVsbDtcbiAgICAgICAgICAgIGxldCB0YXJnZXRUb3AgPSBudWxsO1xuICAgICAgICAgICAgLy8gR28gdG8gbmV4dCBmcmFtZSBpZiBoZWlnaHQgbm90IGV4aXN0XG4gICAgICAgICAgICBpZiAoaGVpZ2h0KSB7XG4gICAgICAgICAgICAgICAgY29uc3QgbWVyZ2VkQWxpZ24gPSB0YXJnZXRBbGlnbiB8fCBvcmlnaW5BbGlnbjtcbiAgICAgICAgICAgICAgICAvLyBHZXQgdG9wICYgYm90dG9tXG4gICAgICAgICAgICAgICAgbGV0IHN0YWNrVG9wID0gMDtcbiAgICAgICAgICAgICAgICBsZXQgaXRlbVRvcCA9IDA7XG4gICAgICAgICAgICAgICAgbGV0IGl0ZW1Cb3R0b20gPSAwO1xuICAgICAgICAgICAgICAgIGNvbnN0IG1heExlbiA9IE1hdGgubWluKGRhdGEubGVuZ3RoIC0gMSwgaW5kZXgpO1xuICAgICAgICAgICAgICAgIGZvciAobGV0IGkgPSAwOyBpIDw9IG1heExlbjsgaSArPSAxKSB7XG4gICAgICAgICAgICAgICAgICAgIGNvbnN0IGtleSA9IGdldEtleShkYXRhW2ldKTtcbiAgICAgICAgICAgICAgICAgICAgaXRlbVRvcCA9IHN0YWNrVG9wO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYWNoZUhlaWdodCA9IGhlaWdodHMuZ2V0KGtleSk7XG4gICAgICAgICAgICAgICAgICAgIGl0ZW1Cb3R0b20gPSBpdGVtVG9wICsgKGNhY2hlSGVpZ2h0ID09PSB1bmRlZmluZWQgPyBpdGVtSGVpZ2h0IDogY2FjaGVIZWlnaHQpO1xuICAgICAgICAgICAgICAgICAgICBzdGFja1RvcCA9IGl0ZW1Cb3R0b207XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIC8vIENoZWNrIGlmIG5lZWQgc3luYyBoZWlnaHQgKHZpc2libGUgcmFuZ2UgaGFzIGl0ZW0gbm90IHJlY29yZCBoZWlnaHQpXG4gICAgICAgICAgICAgICAgbGV0IGxlZnRIZWlnaHQgPSBtZXJnZWRBbGlnbiA9PT0gJ3RvcCcgPyBvZmZzZXQgOiBoZWlnaHQgLSBvZmZzZXQ7XG4gICAgICAgICAgICAgICAgZm9yIChsZXQgaSA9IG1heExlbjsgaSA+PSAwOyBpIC09IDEpIHtcbiAgICAgICAgICAgICAgICAgICAgY29uc3Qga2V5ID0gZ2V0S2V5KGRhdGFbaV0pO1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBjYWNoZUhlaWdodCA9IGhlaWdodHMuZ2V0KGtleSk7XG4gICAgICAgICAgICAgICAgICAgIGlmIChjYWNoZUhlaWdodCA9PT0gdW5kZWZpbmVkKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBuZWVkQ29sbGVjdEhlaWdodCA9IHRydWU7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICBsZWZ0SGVpZ2h0IC09IGNhY2hlSGVpZ2h0O1xuICAgICAgICAgICAgICAgICAgICBpZiAobGVmdEhlaWdodCA8PSAwKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICBicmVhaztcbiAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBTY3JvbGwgdG9cbiAgICAgICAgICAgICAgICBzd2l0Y2ggKG1lcmdlZEFsaWduKSB7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ3RvcCc6XG4gICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRUb3AgPSBpdGVtVG9wIC0gb2Zmc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGNhc2UgJ2JvdHRvbSc6XG4gICAgICAgICAgICAgICAgICAgICAgICB0YXJnZXRUb3AgPSBpdGVtQm90dG9tIC0gaGVpZ2h0ICsgb2Zmc2V0O1xuICAgICAgICAgICAgICAgICAgICAgICAgYnJlYWs7XG4gICAgICAgICAgICAgICAgICAgIGRlZmF1bHQ6IHtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHsgc2Nyb2xsVG9wIH0gPSBjb250YWluZXJSZWYuY3VycmVudDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGNvbnN0IHNjcm9sbEJvdHRvbSA9IHNjcm9sbFRvcCArIGhlaWdodDtcbiAgICAgICAgICAgICAgICAgICAgICAgIGlmIChpdGVtVG9wIDwgc2Nyb2xsVG9wKSB7XG4gICAgICAgICAgICAgICAgICAgICAgICAgICAgbmV3VGFyZ2V0QWxpZ24gPSAndG9wJztcbiAgICAgICAgICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAgICAgICAgIGVsc2UgaWYgKGl0ZW1Cb3R0b20gPiBzY3JvbGxCb3R0b20pIHtcbiAgICAgICAgICAgICAgICAgICAgICAgICAgICBuZXdUYXJnZXRBbGlnbiA9ICdib3R0b20nO1xuICAgICAgICAgICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgfVxuICAgICAgICAgICAgICAgIGlmICh0YXJnZXRUb3AgIT09IG51bGwpIHtcbiAgICAgICAgICAgICAgICAgICAgc3luY1Njcm9sbFRvcCh0YXJnZXRUb3ApO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgICAgICAvLyBPbmUgbW9yZSB0aW1lIGZvciBzeW5jXG4gICAgICAgICAgICAgICAgaWYgKHRhcmdldFRvcCAhPT0gc3luY1N0YXRlLmxhc3RUb3ApIHtcbiAgICAgICAgICAgICAgICAgICAgbmVlZENvbGxlY3RIZWlnaHQgPSB0cnVlO1xuICAgICAgICAgICAgICAgIH1cbiAgICAgICAgICAgIH1cbiAgICAgICAgICAgIC8vIFRyaWdnZXIgbmV4dCBlZmZlY3RcbiAgICAgICAgICAgIGlmIChuZWVkQ29sbGVjdEhlaWdodCkge1xuICAgICAgICAgICAgICAgIHNldFN5bmNTdGF0ZShPYmplY3QuYXNzaWduKE9iamVjdC5hc3NpZ24oe30sIHN5bmNTdGF0ZSksIHsgdGltZXM6IHN5bmNTdGF0ZS50aW1lcyArIDEsIHRhcmdldEFsaWduOiBuZXdUYXJnZXRBbGlnbiwgbGFzdFRvcDogdGFyZ2V0VG9wIH0pKTtcbiAgICAgICAgICAgIH1cbiAgICAgICAgfVxuICAgICAgICBlbHNlIGlmICgoc3luY1N0YXRlID09PSBudWxsIHx8IHN5bmNTdGF0ZSA9PT0gdm9pZCAwID8gdm9pZCAwIDogc3luY1N0YXRlLnRpbWVzKSA9PT0gTUFYX1RJTUVTKSB7XG4gICAgICAgICAgICBjb25zb2xlLndhcm4oJ1tWaXJ0dWFsTGlzdF0gYHNjcm9sbFRvYCByZWFjaGVkIHRoZSBtYXggaXRlcmF0aW9uIGxpbWl0LicpO1xuICAgICAgICB9XG4gICAgfSwgW3N5bmNTdGF0ZSwgY29udGFpbmVyUmVmLmN1cnJlbnRdKTtcbiAgICAvLyA9PT09PT09PT09PT09PT09PT09PT09PT09PT0gU2Nyb2xsIFRvID09PT09PT09PT09PT09PT09PT09PT09PT09PVxuICAgIHJldHVybiAoYXJnKSA9PiB7XG4gICAgICAgIC8vIFdoZW4gbm90IGFyZ3VtZW50IHByb3ZpZGVkLCB3ZSB0aGluayBkZXYgbWF5IHdhbnQgdG8gc2hvdyB0aGUgc2Nyb2xsYmFyXG4gICAgICAgIGlmIChhcmcgPT09IG51bGwgfHwgYXJnID09PSB1bmRlZmluZWQpIHtcbiAgICAgICAgICAgIHRyaWdnZXJGbGFzaCgpO1xuICAgICAgICAgICAgcmV0dXJuO1xuICAgICAgICB9XG4gICAgICAgIC8vIE5vcm1hbCBzY3JvbGwgbG9naWNcbiAgICAgICAgcmFmLmNhbmNlbChzY3JvbGxSZWYuY3VycmVudCk7XG4gICAgICAgIGlmICh0eXBlb2YgYXJnID09PSAnbnVtYmVyJykge1xuICAgICAgICAgICAgc3luY1Njcm9sbFRvcChhcmcpO1xuICAgICAgICB9XG4gICAgICAgIGVsc2UgaWYgKGFyZyAmJiB0eXBlb2YgYXJnID09PSAnb2JqZWN0Jykge1xuICAgICAgICAgICAgbGV0IGluZGV4O1xuICAgICAgICAgICAgY29uc3QgeyBhbGlnbiB9ID0gYXJnO1xuICAgICAgICAgICAgaWYgKCdpbmRleCcgaW4gYXJnKSB7XG4gICAgICAgICAgICAgICAgKHsgaW5kZXggfSA9IGFyZyk7XG4gICAgICAgICAgICB9XG4gICAgICAgICAgICBlbHNlIHtcbiAgICAgICAgICAgICAgICBpbmRleCA9IGRhdGEuZmluZEluZGV4KChpdGVtKSA9PiBnZXRLZXkoaXRlbSkgPT09IGFyZy5rZXkpO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgY29uc3QgeyBvZmZzZXQgPSAwIH0gPSBhcmc7XG4gICAgICAgICAgICBzZXRTeW5jU3RhdGUoe1xuICAgICAgICAgICAgICAgIHRpbWVzOiAwLFxuICAgICAgICAgICAgICAgIGluZGV4LFxuICAgICAgICAgICAgICAgIG9mZnNldCxcbiAgICAgICAgICAgICAgICBvcmlnaW5BbGlnbjogYWxpZ24sXG4gICAgICAgICAgICB9KTtcbiAgICAgICAgfVxuICAgIH07XG59Il0sInNvdXJjZVJvb3QiOiIuLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi8uLi9zcmMifQ==