@onepercentio/one-ui 1.3.3 → 1.3.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (310) hide show
  1. package/README.md +1 -1
  2. package/dist/assets/img/svg/checkbox.svg +3 -0
  3. package/dist/assets/styles/index.scss +2 -0
  4. package/dist/assets/styles/mixins.scss +15 -0
  5. package/dist/assets/styles/variables.scss +49 -0
  6. package/dist/components/AdaptiveButton/AdaptiveButton.js +32 -0
  7. package/dist/components/AdaptiveButton/AdaptiveButton.module.scss +7 -0
  8. package/dist/components/AdaptiveButton/index.js +27 -0
  9. package/dist/components/AdaptiveContainer/AdaptiveContainer.js +152 -0
  10. package/dist/components/AdaptiveContainer/AdaptiveContainer.module.scss +53 -0
  11. package/dist/components/AdaptiveContainer/index.js +27 -0
  12. package/dist/components/AdaptiveDialog/AdaptiveDialog.js +81 -0
  13. package/dist/components/AdaptiveDialog/AdaptiveDialog.module.scss +145 -0
  14. package/dist/components/AdaptiveDialog/index.js +27 -0
  15. package/dist/components/AdaptiveSidebar/AdaptiveSidebar.js +77 -0
  16. package/dist/components/AdaptiveSidebar/AdaptiveSidebar.module.scss +49 -0
  17. package/dist/components/AdaptiveSidebar/AdaptiveSidebar.sample.js +13 -0
  18. package/dist/components/AdaptiveSidebar/index.js +27 -0
  19. package/dist/components/AnchoredTooltip/AnchoredTooltip.js +168 -0
  20. package/dist/components/AnchoredTooltip/AnchoredTooltip.module.scss +64 -0
  21. package/dist/components/AnchoredTooltip/index.js +27 -0
  22. package/dist/components/AnimatedEntrance/AnimatedEntrance.js +166 -0
  23. package/dist/components/AnimatedEntrance/AnimatedEntrance.module.scss +108 -0
  24. package/dist/components/AnimatedEntrance/index.js +27 -0
  25. package/dist/components/AsyncTriggerContainer/AsyncTriggerContainer.js +95 -0
  26. package/dist/components/AsyncTriggerContainer/AsyncTriggerContainer.module.scss +22 -0
  27. package/dist/components/AsyncTriggerContainer/index.js +27 -0
  28. package/dist/components/AsyncWrapper/AsyncWrapper.js +42 -0
  29. package/dist/components/AsyncWrapper/index.js +27 -0
  30. package/dist/components/Avatar/Avatar.js +40 -0
  31. package/dist/components/Avatar/Avatar.module.scss +22 -0
  32. package/dist/components/Avatar/index.js +27 -0
  33. package/dist/components/BucketFill/BucketFill.js +56 -0
  34. package/dist/components/BucketFill/BucketFill.module.scss +36 -0
  35. package/dist/components/BucketFill/index.js +27 -0
  36. package/dist/components/Button/Button.js +39 -0
  37. package/dist/components/Button/Button.module.scss +45 -0
  38. package/dist/components/Button/index.js +27 -0
  39. package/dist/components/Card/Card.js +22 -0
  40. package/dist/components/Card/Card.module.scss +12 -0
  41. package/dist/components/Card/index.js +27 -0
  42. package/dist/components/Chart/Chart.js +27 -0
  43. package/dist/components/Chart/Chart.logic.js +14 -0
  44. package/dist/components/Chart/Chart.module.scss +58 -0
  45. package/dist/components/Chart/Chart.types.js +6 -0
  46. package/dist/components/Chart/Chart.view.js +184 -0
  47. package/dist/components/Chart/index.js +27 -0
  48. package/dist/components/CheckBox/CheckBox.js +52 -0
  49. package/dist/components/CheckBox/CheckBox.module.scss +36 -0
  50. package/dist/components/CheckBox/index.js +27 -0
  51. package/dist/components/CodeInput/CodeInput.js +84 -0
  52. package/dist/components/CodeInput/CodeInput.module.scss +5 -0
  53. package/dist/components/CodeInput/index.js +27 -0
  54. package/dist/components/Collapsable/Collapsable.js +186 -0
  55. package/dist/components/Collapsable/Collapsable.module.scss +42 -0
  56. package/dist/components/Collapsable/index.js +27 -0
  57. package/dist/components/Countdown/Countdown.js +83 -0
  58. package/dist/components/Countdown/index.js +27 -0
  59. package/dist/components/CurrencyInput/CurrencyInput.hook.js +28 -0
  60. package/dist/components/CurrencyInput/CurrencyInput.js +54 -0
  61. package/dist/components/CurrencyInput/index.js +27 -0
  62. package/dist/components/Divider/Divider.js +21 -0
  63. package/dist/components/Divider/Divider.module.scss +7 -0
  64. package/dist/components/Divider/index.js +27 -0
  65. package/dist/components/EmailInput/EmailInput.js +48 -0
  66. package/dist/components/EmailInput/EmailInput.module.scss +0 -0
  67. package/dist/components/EmailInput/index.js +27 -0
  68. package/dist/components/FadeIn/FadeIn.js +64 -0
  69. package/dist/components/FadeIn/FadeIn.module.scss +9 -0
  70. package/dist/components/FadeIn/index.js +27 -0
  71. package/dist/components/FileInput/FileInput.js +53 -0
  72. package/dist/components/FileInput/FileInput.module.scss +6 -0
  73. package/dist/components/FileInput/View/BigFactory/BigFactory.js +54 -0
  74. package/dist/components/FileInput/View/BigFactory/BigFactory.module.scss +20 -0
  75. package/dist/components/FileInput/View/BigFactory/index.js +27 -0
  76. package/dist/components/FileInput/View/Compact/Compact.js +120 -0
  77. package/dist/components/FileInput/View/Compact/Compact.module.scss +68 -0
  78. package/dist/components/FileInput/View/Compact/index.js +27 -0
  79. package/dist/components/FileInput/View/View.types.js +6 -0
  80. package/dist/components/FileInput/index.js +27 -0
  81. package/dist/components/FlowController/FlowController.js +66 -0
  82. package/dist/components/FlowController/FlowController.module.scss +47 -0
  83. package/dist/components/FlowController/index.js +27 -0
  84. package/dist/components/Form/Form.hook.js +234 -0
  85. package/dist/components/Form/Form.js +115 -0
  86. package/dist/components/Form/Form.module.scss +0 -0
  87. package/dist/components/Form/Form.types.js +40 -0
  88. package/dist/components/Form/FormField/Extensions/DateField/DateField.js +75 -0
  89. package/dist/components/Form/FormField/Extensions/DateField/DateField.module.scss +0 -0
  90. package/dist/components/Form/FormField/Extensions/DateField/index.js +27 -0
  91. package/dist/components/Form/FormField/Extensions/PhoneField/PhoneField.js +91 -0
  92. package/dist/components/Form/FormField/Extensions/PhoneField/PhoneField.module.scss +0 -0
  93. package/dist/components/Form/FormField/Extensions/PhoneField/index.js +27 -0
  94. package/dist/components/Form/FormField/FormField.js +296 -0
  95. package/dist/components/Form/FormField/FormField.types.js +12 -0
  96. package/dist/components/Form/FormField/index.js +27 -0
  97. package/dist/components/Form/index.js +27 -0
  98. package/dist/components/Freeze/Freeze.js +18 -0
  99. package/dist/components/Freeze/index.js +27 -0
  100. package/dist/components/HSForms/HSForms.js +55 -0
  101. package/dist/components/HSForms/index.js +27 -0
  102. package/dist/components/HeaderCloseBtn/HeaderCloseBtn.js +25 -0
  103. package/dist/components/HeaderCloseBtn/HeaderCloseBtn.module.scss +44 -0
  104. package/dist/components/HeaderCloseBtn/index.js +27 -0
  105. package/dist/components/InfinityScroll/InfinityScroll.js +128 -0
  106. package/dist/components/InfinityScroll/InfinityScroll.module.scss +30 -0
  107. package/dist/components/InfinityScroll/index.js +27 -0
  108. package/dist/components/Input/Input.js +110 -0
  109. package/dist/components/Input/Input.module.scss +31 -0
  110. package/dist/components/Input/index.js +27 -0
  111. package/dist/components/InstantCounter/InstantCounter.js +55 -0
  112. package/dist/components/InstantCounter/index.js +27 -0
  113. package/dist/components/LavaLamp/LavaLamp.data.js +89 -0
  114. package/dist/components/LavaLamp/LavaLamp.js +125 -0
  115. package/dist/components/LavaLamp/LavaLamp.module.scss +26 -0
  116. package/dist/components/LavaLamp/index.js +27 -0
  117. package/dist/components/LavaLamp/v2/LavaLamp.js +154 -0
  118. package/dist/components/LavaLamp/v2/LavaLamp.module.scss +23 -0
  119. package/dist/components/LinkToId/LinkToId.js +45 -0
  120. package/dist/components/LinkToId/LinkToId.module.scss +4 -0
  121. package/dist/components/LinkToId/index.js +27 -0
  122. package/dist/components/Loader/Loader.js +27 -0
  123. package/dist/components/Loader/Loader.module.scss +40 -0
  124. package/dist/components/Loader/index.js +27 -0
  125. package/dist/components/LoaderDotsIndicator/LoaderDotsIndicator.js +36 -0
  126. package/dist/components/LoaderDotsIndicator/index.js +27 -0
  127. package/dist/components/LoopableVideo/LoopableVideo.js +41 -0
  128. package/dist/components/LoopableVideo/index.js +27 -0
  129. package/dist/components/MainGrid/MainGrid.js +55 -0
  130. package/dist/components/MainGrid/MainGrid.module.scss +28 -0
  131. package/dist/components/MainGrid/index.js +27 -0
  132. package/dist/components/MutableHamburgerButton/MutableHamburgerButton.js +32 -0
  133. package/dist/components/MutableHamburgerButton/MutableHamburgerButton.module.scss +220 -0
  134. package/dist/components/MutableHamburgerButton/index.js +27 -0
  135. package/dist/components/Notification/Notification.js +24 -0
  136. package/dist/components/Notification/Notification.module.scss +25 -0
  137. package/dist/components/Notification/index.js +27 -0
  138. package/dist/components/NumberInput/NumberInput.js +50 -0
  139. package/dist/components/NumberInput/index.js +27 -0
  140. package/dist/components/OrderableList/OrderableList.js +439 -0
  141. package/dist/components/OrderableList/OrderableList.module.scss +98 -0
  142. package/dist/components/OrderableList/index.js +27 -0
  143. package/dist/components/PaginationIndicator/PaginationIndicator.js +261 -0
  144. package/dist/components/PaginationIndicator/index.js +27 -0
  145. package/dist/components/Parallax/Parallax.js +169 -0
  146. package/dist/components/Parallax/Parallax.module.scss +28 -0
  147. package/dist/components/Parallax/index.js +27 -0
  148. package/dist/components/Parallax/math/helpers.js +134 -0
  149. package/dist/components/PasswordInput/PasswordInput.js +97 -0
  150. package/dist/components/PasswordInput/PasswordInput.module.scss +17 -0
  151. package/dist/components/PasswordInput/index.js +27 -0
  152. package/dist/components/PingPongText/PingPongText.js +76 -0
  153. package/dist/components/PingPongText/PingPongText.module.scss +4 -0
  154. package/dist/components/PingPongText/index.js +27 -0
  155. package/dist/components/PixelatedScan/PixelatedScan.js +139 -0
  156. package/dist/components/PixelatedScan/PixelatedScan.module.scss +86 -0
  157. package/dist/components/PixelatedScan/index.js +27 -0
  158. package/dist/components/Portal/Portal.js +62 -0
  159. package/dist/components/Portal/Portal.module.scss +3 -0
  160. package/dist/components/Portal/index.js +27 -0
  161. package/dist/components/ProgressBar/ProgressBar.js +113 -0
  162. package/dist/components/ProgressBar/ProgressBar.module.scss +44 -0
  163. package/dist/components/ProgressBar/index.js +27 -0
  164. package/dist/components/ProgressTexts/ProgressTexts.js +52 -0
  165. package/dist/components/ProgressTexts/ProgressTexts.module.scss +37 -0
  166. package/dist/components/ProgressTexts/index.js +27 -0
  167. package/dist/components/Radio/Radio.js +53 -0
  168. package/dist/components/Radio/Radio.module.scss +20 -0
  169. package/dist/components/Radio/index.js +27 -0
  170. package/dist/components/Radio/variants/Checkmark/Checkmark.js +20 -0
  171. package/dist/components/Radio/variants/Checkmark/Checkmark.module.scss +24 -0
  172. package/dist/components/Radio/variants/Checkmark/index.js +27 -0
  173. package/dist/components/Radio/variants/Generic/Generic.js +22 -0
  174. package/dist/components/Radio/variants/Generic/Generic.module.scss +38 -0
  175. package/dist/components/Radio/variants/Generic/index.js +27 -0
  176. package/dist/components/SectionContainer/SectionContainer.js +49 -0
  177. package/dist/components/SectionContainer/SectionContainer.module.scss +30 -0
  178. package/dist/components/SectionContainer/index.js +27 -0
  179. package/dist/components/Select/Select.js +138 -0
  180. package/dist/components/Select/Select.module.scss +60 -0
  181. package/dist/components/Select/index.js +27 -0
  182. package/dist/components/Skeleton/Skeleton.js +30 -0
  183. package/dist/components/Skeleton/Skeleton.module.scss +21 -0
  184. package/dist/components/Skeleton/index.js +27 -0
  185. package/dist/components/Slider/Slider.js +70 -0
  186. package/dist/components/Slider/Slider.module.scss +7 -0
  187. package/dist/components/Slider/index.js +27 -0
  188. package/dist/components/Spacing/Spacing.js +34 -0
  189. package/dist/components/Spacing/Spacing.module.scss +13 -0
  190. package/dist/components/Spacing/index.js +27 -0
  191. package/dist/components/StaticScroller/StaticScroller.js +72 -0
  192. package/dist/components/StaticScroller/StaticScroller.module.scss +14 -0
  193. package/dist/components/StaticScroller/index.js +27 -0
  194. package/dist/components/Switch/Switch.js +47 -0
  195. package/dist/components/Switch/Switch.module.scss +46 -0
  196. package/dist/components/Switch/index.js +27 -0
  197. package/dist/components/Table/Table.js +115 -0
  198. package/dist/components/Table/Table.module.scss +74 -0
  199. package/dist/components/Table/index.js +27 -0
  200. package/dist/components/Tabs/Tabs.js +67 -0
  201. package/dist/components/Tabs/Tabs.module.scss +40 -0
  202. package/dist/components/Tabs/index.js +27 -0
  203. package/dist/components/Text/Text.js +44 -0
  204. package/dist/components/Text/Text.module.scss +13 -0
  205. package/dist/components/Text/index.js +27 -0
  206. package/dist/components/Transition/MasksFactory/DiagonalReveal.js +49 -0
  207. package/dist/components/Transition/MasksFactory/DiagonalSquareToBalls.js +78 -0
  208. package/dist/components/Transition/MasksFactory/PhysicsSquares.js +96 -0
  209. package/dist/components/Transition/MasksFactory/SquareToBalls.js +67 -0
  210. package/dist/components/Transition/MasksFactory/utils.js +30 -0
  211. package/dist/components/Transition/Transition.js +323 -0
  212. package/dist/components/Transition/Transition.module.scss +211 -0
  213. package/dist/components/Transition/index.js +27 -0
  214. package/dist/components/UncontrolledTransition/UncontrolledTransition.ai.md +9 -0
  215. package/dist/components/UncontrolledTransition/UncontrolledTransition.js +110 -0
  216. package/dist/components/UncontrolledTransition/UncontrolledTransition.sample.js +32 -0
  217. package/dist/components/UncontrolledTransition/index.js +27 -0
  218. package/dist/components/WalletConnectionWrapper/WalletConnectionWrapper.js +115 -0
  219. package/dist/components/WalletConnectionWrapper/index.js +27 -0
  220. package/dist/components/utilitary/ScrollAndFocusLock/ScrollAndFocusLock.js +59 -0
  221. package/dist/components/utilitary/ScrollAndFocusLock/ScrollAndFocusLock.module.scss +5 -0
  222. package/dist/components/utilitary/ScrollAndFocusLock/index.js +27 -0
  223. package/dist/context/AsyncProcess.js +74 -0
  224. package/dist/context/ContextAsyncControl.js +92 -0
  225. package/dist/context/CustomBrowserRouter.js +50 -0
  226. package/dist/context/OneUIProvider.js +129 -0
  227. package/dist/hooks/logs/useDependencyChangeDetection.js +20 -0
  228. package/dist/hooks/logs/useIsMounting.js +13 -0
  229. package/dist/hooks/persistence/useLocalStorage.js +48 -0
  230. package/dist/hooks/shims/ObjectWatchShim.js +54 -0
  231. package/dist/hooks/ui/useAdaptiveImage.js +36 -0
  232. package/dist/hooks/ui/useAlternating.js +24 -0
  233. package/dist/hooks/ui/useBreakpoint.js +26 -0
  234. package/dist/hooks/ui/useCustomScrollbar.js +28 -0
  235. package/dist/hooks/ui/useCustomScrollbar.module.scss +20 -0
  236. package/dist/hooks/ui/useEffectIf.js +14 -0
  237. package/dist/hooks/ui/useMouseHover.js +32 -0
  238. package/dist/hooks/ui/usePaginationControls.js +136 -0
  239. package/dist/hooks/ui/usePaginationControls.module.scss +16 -0
  240. package/dist/hooks/ui/useSnapToViewport.js +26 -0
  241. package/dist/hooks/ui/useSnapToViewport.module.scss +6 -0
  242. package/dist/hooks/ui/useTilt.js +161 -0
  243. package/dist/hooks/ui/useZoomable.js +135 -0
  244. package/dist/hooks/ui/useZoomable.module.scss +34 -0
  245. package/dist/hooks/useAsyncControl.ai.md +25 -0
  246. package/dist/hooks/useAsyncControl.js +79 -0
  247. package/dist/hooks/useContainedRepositioning.js +83 -0
  248. package/dist/hooks/useCustomHistory.js +24 -0
  249. package/dist/hooks/useElementFit.js +54 -0
  250. package/dist/hooks/useFirestoreWatch.js +45 -0
  251. package/dist/hooks/useFreeze.js +17 -0
  252. package/dist/hooks/useHero.js +273 -0
  253. package/dist/hooks/useHero.module.scss +41 -0
  254. package/dist/hooks/useIntersection.js +39 -0
  255. package/dist/hooks/useMergeRefs.js +36 -0
  256. package/dist/hooks/useObserve.js +25 -0
  257. package/dist/hooks/usePagination.js +163 -0
  258. package/dist/hooks/usePooledOperation.js +52 -0
  259. package/dist/hooks/usePooling.js +52 -0
  260. package/dist/hooks/useRebound.js +32 -0
  261. package/dist/hooks/useShortIntl.ai.md +5 -0
  262. package/dist/hooks/useShortIntl.js +82 -0
  263. package/dist/hooks/utility/useAsyncMemo.js +45 -0
  264. package/dist/hooks/utility/useDepChange.js +17 -0
  265. package/dist/hooks/utility/useEvents.js +33 -0
  266. package/dist/hooks/utility/useImmediate.js +14 -0
  267. package/dist/hooks/utility/useManualInit.js +25 -0
  268. package/dist/hooks/utility/useModule.js +18 -0
  269. package/dist/hooks/utility/useQuery.js +20 -0
  270. package/dist/hooks/utility/useUniqueEffect.js +20 -0
  271. package/dist/index.js +2149 -0
  272. package/dist/index.preprocess.js +42 -0
  273. package/dist/models/DebugLogger.js +16 -0
  274. package/dist/models/GenericContract.js +51 -0
  275. package/dist/models/Orbs.js +67 -0
  276. package/dist/reac-app-env.d.js +2 -0
  277. package/dist/storybook/assets/video/txt-reversed.mp4 +0 -0
  278. package/dist/storybookUtils/index.js +44 -0
  279. package/dist/type-utils.js +6 -0
  280. package/dist/types.js +6 -0
  281. package/dist/utility.d.js +2 -0
  282. package/dist/utils/blockchain.js +46 -0
  283. package/dist/utils/e2e.js +33 -0
  284. package/dist/utils/flatten.js +19 -0
  285. package/dist/utils/formatters.js +63 -0
  286. package/dist/utils/html.utils.js +15 -0
  287. package/dist/utils/ownEvent.js +16 -0
  288. package/dist/utils/test.js +19 -0
  289. package/dist-ts/components/AnchoredTooltip/AnchoredTooltip.module.scss +13 -10
  290. package/dist-ts/components/CheckBox/CheckBox.d.ts +3 -1
  291. package/dist-ts/components/CheckBox/CheckBox.js +7 -4
  292. package/dist-ts/components/CheckBox/CheckBox.js.map +1 -1
  293. package/dist-ts/components/CheckBox/CheckBox.module.scss +5 -0
  294. package/dist-ts/components/Input/Input.js +1 -1
  295. package/dist-ts/components/Input/Input.js.map +1 -1
  296. package/dist-ts/context/OneUIProvider.d.ts +3 -1
  297. package/dist-ts/context/OneUIProvider.js.map +1 -1
  298. package/dist-ts/hooks/ui/useAdaptiveImage.d.ts +1 -1
  299. package/dist-ts/hooks/ui/useAdaptiveImage.js +1 -1
  300. package/dist-ts/hooks/ui/useAdaptiveImage.js.map +1 -1
  301. package/dist-ts/hooks/ui/useMouseHover.d.ts +2 -3
  302. package/dist-ts/hooks/ui/useMouseHover.js +6 -8
  303. package/dist-ts/hooks/ui/useMouseHover.js.map +1 -1
  304. package/dist-ts/index.d.ts +1 -0
  305. package/dist-ts/index.js +1 -0
  306. package/dist-ts/index.js.map +1 -1
  307. package/dist-ts/models/ImageScales.d.ts +7 -0
  308. package/dist-ts/models/ImageScales.js +9 -0
  309. package/dist-ts/models/ImageScales.js.map +1 -0
  310. package/package.json +1 -1
@@ -0,0 +1,68 @@
1
+ @use "../../../../assets/styles/index.scss" as *;
2
+
3
+ .root {
4
+ padding: 14px 22px;
5
+ background-color: $fileInputBackgroundColor;
6
+ display: flex;
7
+ align-items: center;
8
+ cursor: pointer;
9
+ .button {
10
+ margin-right: 24px;
11
+ }
12
+ }
13
+
14
+ .root,
15
+ .icon {
16
+ &.disabled {
17
+ pointer-events: none;
18
+ cursor: initial;
19
+ }
20
+ .button {
21
+ padding: 0px;
22
+ min-width: initial;
23
+ }
24
+ > :first-child svg {
25
+ height: 46px;
26
+ }
27
+ > div {
28
+ p {
29
+ margin: 0px;
30
+ }
31
+ p:nth-child(1) {
32
+ font-weight: bold;
33
+ font-size: 14px;
34
+ font-family: $mainFontFamily;
35
+ }
36
+ p:nth-child(2) {
37
+ font-size: 12px;
38
+ font-family: $mainFontFamily;
39
+ }
40
+ p:nth-child(3) {
41
+ margin-top: 8px;
42
+ font-size: 16px;
43
+ font-family: $mainFontFamily;
44
+ }
45
+ }
46
+ svg {
47
+ --svg-color: #{$digitalBlue};
48
+ &.loading {
49
+ circle {
50
+ transition: stroke-dasharray 250ms ease-out;
51
+ stroke-dasharray: var(--progress-stroke-dasharray);
52
+ }
53
+ }
54
+ &.completed {
55
+ circle {
56
+ fill: var(--svg-color);
57
+ }
58
+ polyline {
59
+ stroke-width: 3;
60
+ }
61
+ }
62
+ &.waiting {
63
+ circle {
64
+ stroke-dasharray: 10%;
65
+ }
66
+ }
67
+ }
68
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {};
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _Compact.default;
11
+ }
12
+ });
13
+ var _Compact = _interopRequireWildcard(require("./Compact"));
14
+ Object.keys(_Compact).forEach(function (key) {
15
+ if (key === "default" || key === "__esModule") return;
16
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
17
+ if (key in exports && exports[key] === _Compact[key]) return;
18
+ Object.defineProperty(exports, key, {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _Compact[key];
22
+ }
23
+ });
24
+ });
25
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfQ29tcGFjdCIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIk9iamVjdCIsImtleXMiLCJmb3JFYWNoIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiX2V4cG9ydE5hbWVzIiwiZXhwb3J0cyIsImRlZmluZVByb3BlcnR5IiwiZW51bWVyYWJsZSIsImdldCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiY2FjaGUiLCJoYXMiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJkZXNjIiwic2V0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRmlsZUlucHV0L1ZpZXcvQ29tcGFjdC9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgZGVmYXVsdCB9IGZyb20gXCIuL0NvbXBhY3RcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0NvbXBhY3RcIjsiXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7OztBQUFBLElBQUFBLFFBQUEsR0FBQUMsdUJBQUEsQ0FBQUMsT0FBQTtBQUNBQyxNQUFBLENBQUFDLElBQUEsQ0FBQUosUUFBQSxFQUFBSyxPQUFBLFdBQUFDLEdBQUE7RUFBQSxJQUFBQSxHQUFBLGtCQUFBQSxHQUFBO0VBQUEsSUFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBQyxZQUFBLEVBQUFKLEdBQUE7RUFBQSxJQUFBQSxHQUFBLElBQUFLLE9BQUEsSUFBQUEsT0FBQSxDQUFBTCxHQUFBLE1BQUFOLFFBQUEsQ0FBQU0sR0FBQTtFQUFBSCxNQUFBLENBQUFTLGNBQUEsQ0FBQUQsT0FBQSxFQUFBTCxHQUFBO0lBQUFPLFVBQUE7SUFBQUMsR0FBQSxXQUFBQSxDQUFBO01BQUEsT0FBQWQsUUFBQSxDQUFBTSxHQUFBO0lBQUE7RUFBQTtBQUFBO0FBQTBCLFNBQUFTLHlCQUFBQyxXQUFBLGVBQUFDLE9BQUEsa0NBQUFDLGlCQUFBLE9BQUFELE9BQUEsUUFBQUUsZ0JBQUEsT0FBQUYsT0FBQSxZQUFBRix3QkFBQSxZQUFBQSxDQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFmLHdCQUFBbUIsR0FBQSxFQUFBSixXQUFBLFNBQUFBLFdBQUEsSUFBQUksR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVBQUEsV0FBQUQsR0FBQSxRQUFBQSxHQUFBLG9CQUFBQSxHQUFBLHdCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQUcsS0FBQSxHQUFBUix3QkFBQSxDQUFBQyxXQUFBLE9BQUFPLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFKLEdBQUEsWUFBQUcsS0FBQSxDQUFBVCxHQUFBLENBQUFNLEdBQUEsU0FBQUssTUFBQSxXQUFBQyxxQkFBQSxHQUFBdkIsTUFBQSxDQUFBUyxjQUFBLElBQUFULE1BQUEsQ0FBQXdCLHdCQUFBLFdBQUFyQixHQUFBLElBQUFjLEdBQUEsUUFBQWQsR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBVyxHQUFBLEVBQUFkLEdBQUEsU0FBQXNCLElBQUEsR0FBQUYscUJBQUEsR0FBQXZCLE1BQUEsQ0FBQXdCLHdCQUFBLENBQUFQLEdBQUEsRUFBQWQsR0FBQSxjQUFBc0IsSUFBQSxLQUFBQSxJQUFBLENBQUFkLEdBQUEsSUFBQWMsSUFBQSxDQUFBQyxHQUFBLEtBQUExQixNQUFBLENBQUFTLGNBQUEsQ0FBQWEsTUFBQSxFQUFBbkIsR0FBQSxFQUFBc0IsSUFBQSxZQUFBSCxNQUFBLENBQUFuQixHQUFBLElBQUFjLEdBQUEsQ0FBQWQsR0FBQSxTQUFBbUIsTUFBQSxDQUFBSCxPQUFBLEdBQUFGLEdBQUEsTUFBQUcsS0FBQSxJQUFBQSxLQUFBLENBQUFNLEdBQUEsQ0FBQVQsR0FBQSxFQUFBSyxNQUFBLFlBQUFBLE1BQUEifQ==
@@ -0,0 +1,6 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6W10sInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRmlsZUlucHV0L1ZpZXcvVmlldy50eXBlcy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgeyBSZWFjdE5vZGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IEZpbGVJbnB1dFByb3BzIH0gZnJvbSBcIi4uL0ZpbGVJbnB1dFwiO1xuXG5leHBvcnQgdHlwZSBGaWxlSW5wdXRWaWV3UHJvcHMgPSB7XG4gIGlucHV0RWw6IFJlYWN0Tm9kZTtcbiAgb25BY3Rpb246ICgpID0+IHZvaWQ7XG4gIC8qKiBBIHJhbmdlIGZyb20gMC0xMDAgdG8gaW5kaWNhdGUgc29tZSBmaWxlIHVwbG9hZCBwcm9ncmVzcyAqL1xuICBwcm9ncmVzcz86IG51bWJlcjtcbn0gJiBQaWNrPFxuICBGaWxlSW5wdXRQcm9wcyxcbiAgXCJzdGF0ZXNcIiB8IFwiZmlsZVwiIHwgXCJmb290ZXJcIiB8IFwiY2xhc3NOYW1lXCIgfCBcImRpc2FibGVkXCJcbj47XG4iXSwibWFwcGluZ3MiOiIifQ==
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {};
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _FileInput.default;
11
+ }
12
+ });
13
+ var _FileInput = _interopRequireWildcard(require("./FileInput"));
14
+ Object.keys(_FileInput).forEach(function (key) {
15
+ if (key === "default" || key === "__esModule") return;
16
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
17
+ if (key in exports && exports[key] === _FileInput[key]) return;
18
+ Object.defineProperty(exports, key, {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _FileInput[key];
22
+ }
23
+ });
24
+ });
25
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfRmlsZUlucHV0IiwiX2ludGVyb3BSZXF1aXJlV2lsZGNhcmQiLCJyZXF1aXJlIiwiT2JqZWN0Iiwia2V5cyIsImZvckVhY2giLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJfZXhwb3J0TmFtZXMiLCJleHBvcnRzIiwiZGVmaW5lUHJvcGVydHkiLCJlbnVtZXJhYmxlIiwiZ2V0IiwiX2dldFJlcXVpcmVXaWxkY2FyZENhY2hlIiwibm9kZUludGVyb3AiLCJXZWFrTWFwIiwiY2FjaGVCYWJlbEludGVyb3AiLCJjYWNoZU5vZGVJbnRlcm9wIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJjYWNoZSIsImhhcyIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImRlc2MiLCJzZXQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9GaWxlSW5wdXQvaW5kZXgudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCB7IGRlZmF1bHQgfSBmcm9tIFwiLi9GaWxlSW5wdXRcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0ZpbGVJbnB1dFwiOyJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsVUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBQ0FDLE1BQUEsQ0FBQUMsSUFBQSxDQUFBSixVQUFBLEVBQUFLLE9BQUEsV0FBQUMsR0FBQTtFQUFBLElBQUFBLEdBQUEsa0JBQUFBLEdBQUE7RUFBQSxJQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFDLFlBQUEsRUFBQUosR0FBQTtFQUFBLElBQUFBLEdBQUEsSUFBQUssT0FBQSxJQUFBQSxPQUFBLENBQUFMLEdBQUEsTUFBQU4sVUFBQSxDQUFBTSxHQUFBO0VBQUFILE1BQUEsQ0FBQVMsY0FBQSxDQUFBRCxPQUFBLEVBQUFMLEdBQUE7SUFBQU8sVUFBQTtJQUFBQyxHQUFBLFdBQUFBLENBQUE7TUFBQSxPQUFBZCxVQUFBLENBQUFNLEdBQUE7SUFBQTtFQUFBO0FBQUE7QUFBNEIsU0FBQVMseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLENBQUFDLFdBQUEsV0FBQUEsV0FBQSxHQUFBRyxnQkFBQSxHQUFBRCxpQkFBQSxLQUFBRixXQUFBO0FBQUEsU0FBQWYsd0JBQUFtQixHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsb0JBQUFBLEdBQUEsd0JBQUFBLEdBQUEsNEJBQUFFLE9BQUEsRUFBQUYsR0FBQSxVQUFBRyxLQUFBLEdBQUFSLHdCQUFBLENBQUFDLFdBQUEsT0FBQU8sS0FBQSxJQUFBQSxLQUFBLENBQUFDLEdBQUEsQ0FBQUosR0FBQSxZQUFBRyxLQUFBLENBQUFULEdBQUEsQ0FBQU0sR0FBQSxTQUFBSyxNQUFBLFdBQUFDLHFCQUFBLEdBQUF2QixNQUFBLENBQUFTLGNBQUEsSUFBQVQsTUFBQSxDQUFBd0Isd0JBQUEsV0FBQXJCLEdBQUEsSUFBQWMsR0FBQSxRQUFBZCxHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFXLEdBQUEsRUFBQWQsR0FBQSxTQUFBc0IsSUFBQSxHQUFBRixxQkFBQSxHQUFBdkIsTUFBQSxDQUFBd0Isd0JBQUEsQ0FBQVAsR0FBQSxFQUFBZCxHQUFBLGNBQUFzQixJQUFBLEtBQUFBLElBQUEsQ0FBQWQsR0FBQSxJQUFBYyxJQUFBLENBQUFDLEdBQUEsS0FBQTFCLE1BQUEsQ0FBQVMsY0FBQSxDQUFBYSxNQUFBLEVBQUFuQixHQUFBLEVBQUFzQixJQUFBLFlBQUFILE1BQUEsQ0FBQW5CLEdBQUEsSUFBQWMsR0FBQSxDQUFBZCxHQUFBLFNBQUFtQixNQUFBLENBQUFILE9BQUEsR0FBQUYsR0FBQSxNQUFBRyxLQUFBLElBQUFBLEtBQUEsQ0FBQU0sR0FBQSxDQUFBVCxHQUFBLEVBQUFLLE1BQUEsWUFBQUEsTUFBQSJ9
@@ -0,0 +1,66 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.HeadingImage = HeadingImage;
7
+ exports.default = FlowController;
8
+ var _react = _interopRequireDefault(require("react"));
9
+ var _Button = _interopRequireDefault(require("../Button"));
10
+ var _HeaderCloseBtn = _interopRequireDefault(require("../HeaderCloseBtn"));
11
+ var _Transition = _interopRequireDefault(require("../Transition"));
12
+ var _FlowControllerModule = _interopRequireDefault(require("./FlowController.module.scss"));
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ /**
15
+ * Container for a flow, managing the go back and close controller
16
+ **/
17
+ /**
18
+ * A container that manages navigation controls for a multi-step flow.
19
+ * It handles showing back buttons, close buttons, and manages the transition between steps.
20
+ */
21
+ function FlowController(_ref) {
22
+ let {
23
+ children,
24
+ buttons,
25
+ step,
26
+ onClose,
27
+ onBack,
28
+ fullPage,
29
+ firstStep = 0,
30
+ style,
31
+ wrapper: Wrapper = "div"
32
+ } = _ref;
33
+ function _handleBackPress() {
34
+ if (isAtFirstStep) onClose && onClose();else if (onBack) onBack();
35
+ }
36
+ const isAtFirstStep = step === firstStep;
37
+ const shouldDisplayHeaderButton = isAtFirstStep && onClose || !isAtFirstStep && onBack;
38
+ return /*#__PURE__*/_react.default.createElement(Wrapper, {
39
+ onClick: e => e.stopPropagation(),
40
+ className: _FlowControllerModule.default.container,
41
+ style: style
42
+ }, /*#__PURE__*/_react.default.createElement("header", null, shouldDisplayHeaderButton && /*#__PURE__*/_react.default.createElement(_HeaderCloseBtn.default, {
43
+ mode: isAtFirstStep ? "close" : "back",
44
+ hidden: !onBack,
45
+ onClick: _handleBackPress
46
+ })), /*#__PURE__*/_react.default.createElement(_Transition.default, {
47
+ step: step,
48
+ className: _FlowControllerModule.default.transition,
49
+ contentClassName: "".concat(fullPage ? _FlowControllerModule.default.fullHeight : "", " ").concat(_FlowControllerModule.default.content)
50
+ }, children), /*#__PURE__*/_react.default.createElement("footer", {
51
+ className: buttons.find(b => b.state === "hidden") ? _FlowControllerModule.default.hidden : undefined
52
+ }, buttons.map(b => /*#__PURE__*/_react.default.createElement(_Button.default, {
53
+ onClick: b.onClick,
54
+ disabled: b.state === "hidden" || b.state === "disabled"
55
+ }, b.label))));
56
+ }
57
+ function HeadingImage(_ref2) {
58
+ let {
59
+ src
60
+ } = _ref2;
61
+ return /*#__PURE__*/_react.default.createElement("img", {
62
+ src: src,
63
+ className: _FlowControllerModule.default.headingImg
64
+ });
65
+ }
66
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVEZWZhdWx0IiwicmVxdWlyZSIsIl9CdXR0b24iLCJfSGVhZGVyQ2xvc2VCdG4iLCJfVHJhbnNpdGlvbiIsIl9GbG93Q29udHJvbGxlck1vZHVsZSIsIm9iaiIsIl9fZXNNb2R1bGUiLCJkZWZhdWx0IiwiRmxvd0NvbnRyb2xsZXIiLCJfcmVmIiwiY2hpbGRyZW4iLCJidXR0b25zIiwic3RlcCIsIm9uQ2xvc2UiLCJvbkJhY2siLCJmdWxsUGFnZSIsImZpcnN0U3RlcCIsInN0eWxlIiwid3JhcHBlciIsIldyYXBwZXIiLCJfaGFuZGxlQmFja1ByZXNzIiwiaXNBdEZpcnN0U3RlcCIsInNob3VsZERpc3BsYXlIZWFkZXJCdXR0b24iLCJjcmVhdGVFbGVtZW50Iiwib25DbGljayIsImUiLCJzdG9wUHJvcGFnYXRpb24iLCJjbGFzc05hbWUiLCJTdHlsZXMiLCJjb250YWluZXIiLCJtb2RlIiwiaGlkZGVuIiwidHJhbnNpdGlvbiIsImNvbnRlbnRDbGFzc05hbWUiLCJjb25jYXQiLCJmdWxsSGVpZ2h0IiwiY29udGVudCIsImZpbmQiLCJiIiwic3RhdGUiLCJ1bmRlZmluZWQiLCJtYXAiLCJkaXNhYmxlZCIsImxhYmVsIiwiSGVhZGluZ0ltYWdlIiwiX3JlZjIiLCJzcmMiLCJoZWFkaW5nSW1nIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvRmxvd0NvbnRyb2xsZXIvRmxvd0NvbnRyb2xsZXIudHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwgeyBKU1gsIE1vdXNlRXZlbnQsIHVzZUVmZmVjdCwgdXNlTWVtbywgdXNlUmVmLCB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuaW1wb3J0IEJ1dHRvbiBmcm9tIFwiLi4vQnV0dG9uXCI7XG5pbXBvcnQgSGVhZGVyQ2xvc2VCdG4gZnJvbSBcIi4uL0hlYWRlckNsb3NlQnRuXCI7XG5pbXBvcnQgVHJhbnNpdGlvbiBmcm9tIFwiLi4vVHJhbnNpdGlvblwiO1xuaW1wb3J0IFN0eWxlcyBmcm9tIFwiLi9GbG93Q29udHJvbGxlci5tb2R1bGUuc2Nzc1wiO1xuXG5leHBvcnQgdHlwZSBGbG93Q29udHJvbFN0YXRlID0gXCJkaXNhYmxlZFwiIHwgXCJlbmFibGVkXCIgfCBcImhpZGRlblwiO1xuLyoqXG4gKiBDb250YWluZXIgZm9yIGEgZmxvdywgbWFuYWdpbmcgdGhlIGdvIGJhY2sgYW5kIGNsb3NlIGNvbnRyb2xsZXJcbiAqKi9cbi8qKlxuICogQSBjb250YWluZXIgdGhhdCBtYW5hZ2VzIG5hdmlnYXRpb24gY29udHJvbHMgZm9yIGEgbXVsdGktc3RlcCBmbG93LlxuICogSXQgaGFuZGxlcyBzaG93aW5nIGJhY2sgYnV0dG9ucywgY2xvc2UgYnV0dG9ucywgYW5kIG1hbmFnZXMgdGhlIHRyYW5zaXRpb24gYmV0d2VlbiBzdGVwcy5cbiAqL1xuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRmxvd0NvbnRyb2xsZXI8XG4gIEUgZXh0ZW5kcyBQaWNrPEpTWC5JbnRyaW5zaWNFbGVtZW50cywgXCJkaXZcIiB8IFwiZm9ybVwiPixcbiAgVyBleHRlbmRzIGtleW9mIEVcbj4oe1xuICBjaGlsZHJlbixcbiAgYnV0dG9ucyxcbiAgc3RlcCxcbiAgb25DbG9zZSxcbiAgb25CYWNrLFxuICBmdWxsUGFnZSxcbiAgZmlyc3RTdGVwID0gMCxcbiAgc3R5bGUsXG4gIHdyYXBwZXI6IFdyYXBwZXIgPSBcImRpdlwiIGFzIGFueSxcbn06IHtcbiAgb25DbG9zZT86ICgpID0+IHZvaWQ7XG4gIG9uQmFjaz86ICgpID0+IHZvaWQ7XG4gIHN0ZXA6IG51bWJlcjtcbiAgZmlyc3RTdGVwPzogbnVtYmVyO1xuICBidXR0b25zOiB7XG4gICAgbGFiZWw6IHN0cmluZztcbiAgICBvbkNsaWNrOiAoKSA9PiB2b2lkO1xuICAgIHN0YXRlOiBGbG93Q29udHJvbFN0YXRlO1xuICB9W107XG4gIGNoaWxkcmVuOiBSZWFjdC5SZWFjdEVsZW1lbnRbXTtcbiAgZnVsbFBhZ2U/OiBib29sZWFuO1xuICBzdHlsZT86IFJlYWN0LkNTU1Byb3BlcnRpZXM7XG4gIHdyYXBwZXI/OiBSZWFjdC5FbGVtZW50VHlwZTtcbn0gJiBFW1ddKSB7XG4gIGZ1bmN0aW9uIF9oYW5kbGVCYWNrUHJlc3MoKSB7XG4gICAgaWYgKGlzQXRGaXJzdFN0ZXApIG9uQ2xvc2UgJiYgb25DbG9zZSgpO1xuICAgIGVsc2UgaWYgKG9uQmFjaykgb25CYWNrKCk7XG4gIH1cblxuICBjb25zdCBpc0F0Rmlyc3RTdGVwID0gc3RlcCA9PT0gZmlyc3RTdGVwO1xuXG4gIGNvbnN0IHNob3VsZERpc3BsYXlIZWFkZXJCdXR0b24gPVxuICAgIChpc0F0Rmlyc3RTdGVwICYmIG9uQ2xvc2UpIHx8ICghaXNBdEZpcnN0U3RlcCAmJiBvbkJhY2spO1xuXG4gIHJldHVybiAoXG4gICAgPFdyYXBwZXJcbiAgICAgIG9uQ2xpY2s9eyhlOiBNb3VzZUV2ZW50KSA9PiBlLnN0b3BQcm9wYWdhdGlvbigpfVxuICAgICAgY2xhc3NOYW1lPXtTdHlsZXMuY29udGFpbmVyfVxuICAgICAgc3R5bGU9e3N0eWxlfVxuICAgID5cbiAgICAgIDxoZWFkZXI+XG4gICAgICAgIHtzaG91bGREaXNwbGF5SGVhZGVyQnV0dG9uICYmIChcbiAgICAgICAgICA8SGVhZGVyQ2xvc2VCdG5cbiAgICAgICAgICAgIG1vZGU9e2lzQXRGaXJzdFN0ZXAgPyBcImNsb3NlXCIgOiBcImJhY2tcIn1cbiAgICAgICAgICAgIGhpZGRlbj17IW9uQmFja31cbiAgICAgICAgICAgIG9uQ2xpY2s9e19oYW5kbGVCYWNrUHJlc3N9XG4gICAgICAgICAgLz5cbiAgICAgICAgKX1cbiAgICAgIDwvaGVhZGVyPlxuICAgICAgPFRyYW5zaXRpb25cbiAgICAgICAgc3RlcD17c3RlcH1cbiAgICAgICAgY2xhc3NOYW1lPXtTdHlsZXMudHJhbnNpdGlvbn1cbiAgICAgICAgY29udGVudENsYXNzTmFtZT17YCR7ZnVsbFBhZ2UgPyBTdHlsZXMuZnVsbEhlaWdodCA6IFwiXCJ9ICR7XG4gICAgICAgICAgU3R5bGVzLmNvbnRlbnRcbiAgICAgICAgfWB9XG4gICAgICA+XG4gICAgICAgIHtjaGlsZHJlbn1cbiAgICAgIDwvVHJhbnNpdGlvbj5cbiAgICAgIDxmb290ZXJcbiAgICAgICAgY2xhc3NOYW1lPXtcbiAgICAgICAgICBidXR0b25zLmZpbmQoKGIpID0+IGIuc3RhdGUgPT09IFwiaGlkZGVuXCIpID8gU3R5bGVzLmhpZGRlbiA6IHVuZGVmaW5lZFxuICAgICAgICB9XG4gICAgICA+XG4gICAgICAgIHtidXR0b25zLm1hcCgoYikgPT4gKFxuICAgICAgICAgIDxCdXR0b25cbiAgICAgICAgICAgIG9uQ2xpY2s9e2Iub25DbGlja31cbiAgICAgICAgICAgIGRpc2FibGVkPXtiLnN0YXRlID09PSBcImhpZGRlblwiIHx8IGIuc3RhdGUgPT09IFwiZGlzYWJsZWRcIn1cbiAgICAgICAgICA+XG4gICAgICAgICAgICB7Yi5sYWJlbH1cbiAgICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgKSl9XG4gICAgICA8L2Zvb3Rlcj5cbiAgICA8L1dyYXBwZXI+XG4gICk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBIZWFkaW5nSW1hZ2UoeyBzcmMgfTogeyBzcmM6IHN0cmluZyB9KSB7XG4gIHJldHVybiA8aW1nIHNyYz17c3JjfSBjbGFzc05hbWU9e1N0eWxlcy5oZWFkaW5nSW1nfSAvPjtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFBLElBQUFBLE1BQUEsR0FBQUMsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFDLE9BQUEsR0FBQUYsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFFLGVBQUEsR0FBQUgsc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFHLFdBQUEsR0FBQUosc0JBQUEsQ0FBQUMsT0FBQTtBQUNBLElBQUFJLHFCQUFBLEdBQUFMLHNCQUFBLENBQUFDLE9BQUE7QUFBa0QsU0FBQUQsdUJBQUFNLEdBQUEsV0FBQUEsR0FBQSxJQUFBQSxHQUFBLENBQUFDLFVB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
@@ -0,0 +1,47 @@
1
+ @use "../../assets/styles/index.scss" as *;
2
+
3
+ .container {
4
+ .headingImg {
5
+ width: 100%;
6
+ margin: 0px -33px;
7
+ }
8
+ height: 100%;
9
+ display: flex;
10
+ flex-direction: column;
11
+ justify-content: space-between;
12
+ button {
13
+ width: 100%;
14
+ border-top: 1px solid $lightGray;
15
+ }
16
+ .transition {
17
+ margin-top: -105px;
18
+ height: 100%;
19
+ .content {
20
+ padding: 0px 33px 33px 33px;
21
+ margin-top: 105px;
22
+ max-height: calc(100% - 105px);
23
+
24
+ &.fullHeight {
25
+ margin-top: 0px;
26
+ max-height: 100%;
27
+ height: 100%;
28
+ }
29
+ }
30
+ section {
31
+ border-top: 1px solid $lightGray;
32
+ margin: 0px -33px;
33
+ padding: 0px 33px;
34
+ }
35
+ }
36
+ header {
37
+ margin: 55px 33px;
38
+ margin-bottom: 33px;
39
+ }
40
+ footer {
41
+ transition: opacity $fast;
42
+ opacity: 1;
43
+ }
44
+ footer.hidden {
45
+ opacity: 0;
46
+ }
47
+ }
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ var _exportNames = {};
7
+ Object.defineProperty(exports, "default", {
8
+ enumerable: true,
9
+ get: function () {
10
+ return _FlowController.default;
11
+ }
12
+ });
13
+ var _FlowController = _interopRequireWildcard(require("./FlowController"));
14
+ Object.keys(_FlowController).forEach(function (key) {
15
+ if (key === "default" || key === "__esModule") return;
16
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
17
+ if (key in exports && exports[key] === _FlowController[key]) return;
18
+ Object.defineProperty(exports, key, {
19
+ enumerable: true,
20
+ get: function () {
21
+ return _FlowController[key];
22
+ }
23
+ });
24
+ });
25
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function (nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
26
+ function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || typeof obj !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
27
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfRmxvd0NvbnRyb2xsZXIiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJPYmplY3QiLCJrZXlzIiwiZm9yRWFjaCIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsIl9leHBvcnROYW1lcyIsImV4cG9ydHMiLCJkZWZpbmVQcm9wZXJ0eSIsImVudW1lcmFibGUiLCJnZXQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwiZGVzYyIsInNldCJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0Zsb3dDb250cm9sbGVyL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBkZWZhdWx0IH0gZnJvbSBcIi4vRmxvd0NvbnRyb2xsZXJcIjtcbmV4cG9ydCAqIGZyb20gXCIuL0Zsb3dDb250cm9sbGVyXCI7Il0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxlQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQUMsTUFBQSxDQUFBQyxJQUFBLENBQUFKLGVBQUEsRUFBQUssT0FBQSxXQUFBQyxHQUFBO0VBQUEsSUFBQUEsR0FBQSxrQkFBQUEsR0FBQTtFQUFBLElBQUFILE1BQUEsQ0FBQUksU0FBQSxDQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQUMsWUFBQSxFQUFBSixHQUFBO0VBQUEsSUFBQUEsR0FBQSxJQUFBSyxPQUFBLElBQUFBLE9BQUEsQ0FBQUwsR0FBQSxNQUFBTixlQUFBLENBQUFNLEdBQUE7RUFBQUgsTUFBQSxDQUFBUyxjQUFBLENBQUFELE9BQUEsRUFBQUwsR0FBQTtJQUFBTyxVQUFBO0lBQUFDLEdBQUEsV0FBQUEsQ0FBQTtNQUFBLE9BQUFkLGVBQUEsQ0FBQU0sR0FBQTtJQUFBO0VBQUE7QUFBQTtBQUFpQyxTQUFBUyx5QkFBQUMsV0FBQSxlQUFBQyxPQUFBLGtDQUFBQyxpQkFBQSxPQUFBRCxPQUFBLFFBQUFFLGdCQUFBLE9BQUFGLE9BQUEsWUFBQUYsd0JBQUEsWUFBQUEsQ0FBQUMsV0FBQSxXQUFBQSxXQUFBLEdBQUFHLGdCQUFBLEdBQUFELGlCQUFBLEtBQUFGLFdBQUE7QUFBQSxTQUFBZix3QkFBQW1CLEdBQUEsRUFBQUosV0FBQSxTQUFBQSxXQUFBLElBQUFJLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLFdBQUFELEdBQUEsUUFBQUEsR0FBQSxvQkFBQUEsR0FBQSx3QkFBQUEsR0FBQSw0QkFBQUUsT0FBQSxFQUFBRixHQUFBLFVBQUFHLEtBQUEsR0FBQVIsd0JBQUEsQ0FBQUMsV0FBQSxPQUFBTyxLQUFBLElBQUFBLEtBQUEsQ0FBQUMsR0FBQSxDQUFBSixHQUFBLFlBQUFHLEtBQUEsQ0FBQVQsR0FBQSxDQUFBTSxHQUFBLFNBQUFLLE1BQUEsV0FBQUMscUJBQUEsR0FBQXZCLE1BQUEsQ0FBQVMsY0FBQSxJQUFBVCxNQUFBLENBQUF3Qix3QkFBQSxXQUFBckIsR0FBQSxJQUFBYyxHQUFBLFFBQUFkLEdBQUEsa0JBQUFILE1BQUEsQ0FBQUksU0FBQSxDQUFBQyxjQUFBLENBQUFDLElBQUEsQ0FBQVcsR0FBQSxFQUFBZCxHQUFBLFNBQUFzQixJQUFBLEdBQUFGLHFCQUFBLEdBQUF2QixNQUFBLENBQUF3Qix3QkFBQSxDQUFBUCxHQUFBLEVBQUFkLEdBQUEsY0FBQXNCLElBQUEsS0FBQUEsSUFBQSxDQUFBZCxHQUFBLElBQUFjLElBQUEsQ0FBQUMsR0FBQSxLQUFBMUIsTUFBQSxDQUFBUyxjQUFBLENBQUFhLE1BQUEsRUFBQW5CLEdBQUEsRUFBQXNCLElBQUEsWUFBQUgsTUFBQSxDQUFBbkIsR0FBQSxJQUFBYyxHQUFBLENBQUFkLEdBQUEsU0FBQW1CLE1BQUEsQ0FBQUgsT0FBQSxHQUFBRixHQUFBLE1BQUFHLEtBQUEsSUFBQUEsS0FBQSxDQUFBTSxHQUFBLENBQUFULEdBQUEsRUFBQUssTUFBQSxZQUFBQSxNQUFBIn0=
@@ -0,0 +1,234 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.areAllQuestionsAnswered = areAllQuestionsAnswered;
7
+ exports.isValidated = void 0;
8
+ exports.useFieldErrors = useFieldErrors;
9
+ exports.useForm = useForm;
10
+ exports.useFormAnswers = useFormAnswers;
11
+ exports.useFormState = useFormState;
12
+ var _react = require("react");
13
+ var _OneUIProvider = require("../../context/OneUIProvider");
14
+ var _FormField = require("./FormField/FormField.types");
15
+ function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
16
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
17
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
18
+ function _toPropertyKey(arg) { var key = _toPrimitive(arg, "string"); return typeof key === "symbol" ? key : String(key); }
19
+ function _toPrimitive(input, hint) { if (typeof input !== "object" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || "default"); if (typeof res !== "object") return res; throw new TypeError("@@toPrimitive must return a primitive value."); } return (hint === "string" ? String : Number)(input); }
20
+ function useFormAnswers(defaultAnswers, mode) {
21
+ const [answers, setAnswers] = (0, _react.useState)(() => {
22
+ const clone = _objectSpread({}, defaultAnswers);
23
+ if (mode === _FormField.FormMode.READ_ONLY) return clone;
24
+ return clone;
25
+ });
26
+ return {
27
+ answers,
28
+ setAnswers
29
+ };
30
+ }
31
+ function useFormState(currentQuestions, _ref) {
32
+ let {
33
+ answers,
34
+ setAnswers
35
+ } = _ref;
36
+ const formConfig = (0, _OneUIProvider.useOneUIConfig)("component.form");
37
+ const {
38
+ isValid: isQuestionsAnswered
39
+ } = (0, _react.useMemo)(() => {
40
+ return areAllQuestionsAnswered(currentQuestions, answers, formConfig.requiredLabel, formConfig.extensions);
41
+ }, [answers, currentQuestions]);
42
+ const onAnswerAction = (questionType, id, answer) => {
43
+ switch (questionType) {
44
+ case "file":
45
+ const {
46
+ onFileUpload
47
+ } = formConfig;
48
+ setAnswers(prev => {
49
+ const file = answer;
50
+ if (file) return _objectSpread(_objectSpread({}, prev), {}, {
51
+ [id]: onFileUpload(id, file)
52
+ });
53
+ delete prev[id];
54
+ return _objectSpread({}, prev);
55
+ });
56
+ break;
57
+ default:
58
+ setAnswers(prev => {
59
+ if (prev[id] === answer) return prev;
60
+ return _objectSpread(_objectSpread({}, prev), {}, {
61
+ [id]: answer
62
+ });
63
+ });
64
+ }
65
+ };
66
+ const isFilesUploaded = useFileUploads(currentQuestions, answers);
67
+ return {
68
+ answers,
69
+ isQuestionsAnswered,
70
+ isFilesUploaded,
71
+ onAnswerAction,
72
+ questions: currentQuestions
73
+ };
74
+ }
75
+ function useForm(currentQuestions, defaultAnswers, mode) {
76
+ const answers = useFormAnswers(defaultAnswers, mode);
77
+ return useFormState(currentQuestions, answers);
78
+ }
79
+ function useFileUploads(questions, answers) {
80
+ const fileUploadQuestions = (0, _react.useMemo)(() => questions.filter(a => a.type === "file"), [questions]);
81
+ const [fileUploadStatus, setFileUploadStatus] = (0, _react.useState)({});
82
+ (0, _react.useLayoutEffect)(() => {
83
+ const unsubs = [];
84
+ for (let fileQuestion of fileUploadQuestions) {
85
+ const uploadTask = answers[fileQuestion.id];
86
+ if (!uploadTask) setFileUploadStatus(prev => _objectSpread(_objectSpread({}, prev), {}, {
87
+ [fileQuestion.id]: "running"
88
+ }));else if (typeof uploadTask === "boolean") {
89
+ setFileUploadStatus(prev => _objectSpread(_objectSpread({}, prev), {}, {
90
+ [fileQuestion.id]: "success"
91
+ }));
92
+ } else unsubs.push(uploadTask.on("state_changed", r => {
93
+ setFileUploadStatus(prev => _objectSpread(_objectSpread({}, prev), {}, {
94
+ [fileQuestion.id]: r.totalBytes === r.bytesTransferred ? "success" : "running"
95
+ }));
96
+ }));
97
+ }
98
+ return () => {
99
+ unsubs.forEach(unsub => unsub());
100
+ };
101
+ }, [answers, fileUploadQuestions]);
102
+ const areAllFileUploaded = (0, _react.useMemo)(() => {
103
+ return fileUploadQuestions.reduce((r, question) => {
104
+ const uploadStatus = fileUploadStatus[question.id];
105
+ return r && uploadStatus === "success";
106
+ }, true);
107
+ }, [fileUploadStatus, fileUploadQuestions]);
108
+ return areAllFileUploaded;
109
+ }
110
+ function useFieldErrors(currentQuestions, answers, showAllErrors) {
111
+ const {
112
+ requiredLabel,
113
+ extensions
114
+ } = (0, _OneUIProvider.useOneUIConfig)("component.form");
115
+ const errorMap = (0, _react.useMemo)(() => {
116
+ const ans = question => answers[question.id];
117
+ const errorsMap = {};
118
+ for (let question of currentQuestions) {
119
+ const _isValidated = () => {
120
+ return isValidated(ans(question), !!question.optional, question.validator, requiredLabel);
121
+ };
122
+ const updateDefaultError = () => {
123
+ const validation = _isValidated();
124
+ errorsMap[question.id] = validation.error;
125
+ };
126
+ switch (question.type) {
127
+ case "check":
128
+ case "rawcheck":
129
+ updateDefaultError();
130
+ if (question.validator) errorsMap[question.id] = question.validator(ans(question));
131
+ break;
132
+ case "number":
133
+ case "text":
134
+ case "select":
135
+ case "radio":
136
+ case "file":
137
+ updateDefaultError();
138
+ const validationResult = _isValidated();
139
+ if (validationResult.error) errorsMap[question.id] = validationResult.error;
140
+ break;
141
+ default:
142
+ const extendedSupport = extensions === null || extensions === void 0 ? void 0 : extensions[question.type];
143
+ if (extendedSupport) {
144
+ const validationResultExtend = extendedSupport.validator ? extendedSupport.validator(ans(question), question) : _isValidated();
145
+ if (validationResultExtend.error) errorsMap[question.id] = validationResultExtend.error;
146
+ } else {
147
+ updateDefaultError();
148
+ }
149
+ }
150
+ }
151
+ return errorsMap;
152
+ }, [currentQuestions, answers]);
153
+ const currentErrors = (0, _react.useMemo)(() => {
154
+ return Object.entries(errorMap).reduce((r, _ref2) => {
155
+ let [k, v] = _ref2;
156
+ return _objectSpread(_objectSpread({}, r), {}, {
157
+ [k]: showAllErrors ? v : v !== requiredLabel ? v : undefined
158
+ });
159
+ }, {});
160
+ }, [showAllErrors, errorMap]);
161
+ return currentErrors;
162
+ }
163
+ function areAllQuestionsAnswered(currentQuestions, answers, requiredLabel, extensions) {
164
+ const isValid = currentQuestions.reduce((answeredAll, question) => {
165
+ const ans = question => answers[question.id];
166
+ const isFieldAnswered = (() => {
167
+ switch (question.type) {
168
+ case "accept":
169
+ const checks = ans(question) || [];
170
+ return question.accept.reduce((r, _ref3, idx) => {
171
+ let {
172
+ optional
173
+ } = _ref3;
174
+ return r && (optional ? true : checks[idx]);
175
+ }, true);
176
+ case "check":
177
+ case "rawcheck":
178
+ if (question.optional) return true;
179
+ if (question.validator) return question.validator(ans(question)) === true;
180
+ const checkmarks = ans(question) || [];
181
+ return checkmarks.includes(true);
182
+ case "number":
183
+ case "text":
184
+ case "select":
185
+ case "radio":
186
+ case "file":
187
+ if (!answers[question.id]) return !!question.optional;
188
+ const validationResult = isValidated(ans(question), !!question.optional, question.validator, requiredLabel);
189
+ return validationResult.isValid && answeredAll;
190
+ default:
191
+ const extendedSupport = extensions === null || extensions === void 0 ? void 0 : extensions[question.type];
192
+ if (extendedSupport) {
193
+ const validationResultExtend = extendedSupport.validator ? extendedSupport.validator(ans(question), question) : isValidated(ans(question), !!question.optional, question.validator, requiredLabel);
194
+ return validationResultExtend.isValid;
195
+ } else return question.validator ? !!question.validator(ans(question)) : !!ans(question);
196
+ }
197
+ })();
198
+ const result = answeredAll && isFieldAnswered;
199
+ return result;
200
+ }, true);
201
+ return {
202
+ isValid: !!isValid
203
+ };
204
+ }
205
+ const isValidated = (_answer, isOptional, validator, requiredFieldLabel) => {
206
+ const answer = Array.isArray(_answer) ? _answer[0] : _answer;
207
+ if (!answer && !isOptional) return {
208
+ isValid: false,
209
+ error: requiredFieldLabel
210
+ };
211
+ if (!validator) if (Array.isArray(_answer)) {
212
+ const [_, isValid, error] = _answer;
213
+ return {
214
+ isValid,
215
+ error
216
+ };
217
+ } else {
218
+ return {
219
+ isValid: true,
220
+ error: ""
221
+ };
222
+ }
223
+ const validationResult = validator(_answer);
224
+ if (typeof validationResult === "string") return {
225
+ isValid: false,
226
+ error: validationResult
227
+ };
228
+ return {
229
+ isValid: validationResult,
230
+ error: ""
231
+ };
232
+ };
233
+ exports.isValidated = isValidated;
234
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJyZXF1aXJlIiwiX09uZVVJUHJvdmlkZXIiLCJfRm9ybUZpZWxkIiwib3duS2V5cyIsIm9iamVjdCIsImVudW1lcmFibGVPbmx5Iiwia2V5cyIsIk9iamVjdCIsImdldE93blByb3BlcnR5U3ltYm9scyIsInN5bWJvbHMiLCJmaWx0ZXIiLCJzeW0iLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJlbnVtZXJhYmxlIiwicHVzaCIsImFwcGx5IiwiX29iamVjdFNwcmVhZCIsInRhcmdldCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJzb3VyY2UiLCJmb3JFYWNoIiwia2V5IiwiX2RlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9ycyIsImRlZmluZVByb3BlcnRpZXMiLCJkZWZpbmVQcm9wZXJ0eSIsIm9iaiIsInZhbHVlIiwiX3RvUHJvcGVydHlLZXkiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImFyZyIsIl90b1ByaW1pdGl2ZSIsIlN0cmluZyIsImlucHV0IiwiaGludCIsInByaW0iLCJTeW1ib2wiLCJ0b1ByaW1pdGl2ZSIsInVuZGVmaW5lZCIsInJlcyIsImNhbGwiLCJUeXBlRXJyb3IiLCJOdW1iZXIiLCJ1c2VGb3JtQW5zd2VycyIsImRlZmF1bHRBbnN3ZXJzIiwibW9kZSIsImFuc3dlcnMiLCJzZXRBbnN3ZXJzIiwidXNlU3RhdGUiLCJjbG9uZSIsIkZvcm1Nb2RlIiwiUkVBRF9PTkxZIiwidXNlRm9ybVN0YXRlIiwiY3VycmVudFF1ZXN0aW9ucyIsIl9yZWYiLCJmb3JtQ29uZmlnIiwidXNlT25lVUlDb25maWciLCJpc1ZhbGlkIiwiaXNRdWVzdGlvbnNBbnN3ZXJlZCIsInVzZU1lbW8iLCJhcmVBbGxRdWVzdGlvbnNBbnN3ZXJlZCIsInJlcXVpcmVkTGFiZWwiLCJleHRlbnNpb25zIiwib25BbnN3ZXJBY3Rpb24iLCJxdWVzdGlvblR5cGUiLCJpZCIsImFuc3dlciIsIm9uRmlsZVVwbG9hZCIsInByZXYiLCJmaWxlIiwiaXNGaWxlc1VwbG9hZGVkIiwidXNlRmlsZVVwbG9hZHMiLCJxdWVzdGlvbnMiLCJ1c2VGb3JtIiwiZmlsZVVwbG9hZFF1ZXN0aW9ucyIsImEiLCJ0eXBlIiwiZmlsZVVwbG9hZFN0YXR1cyIsInNldEZpbGVVcGxvYWRTdGF0dXMiLCJ1c2VMYXlvdXRFZmZlY3QiLCJ1bnN1YnMiLCJmaWxlUXVlc3Rpb24iLCJ1cGxvYWRUYXNrIiwib24iLCJyIiwidG90YWxCeXRlcyIsImJ5dGVzVHJhbnNmZXJyZWQiLCJ1bnN1YiIsImFyZUFsbEZpbGVVcGxvYWRlZCIsInJlZHVjZSIsInF1ZXN0aW9uIiwidXBsb2FkU3RhdHVzIiwidXNlRmllbGRFcnJvcnMiLCJzaG93QWxsRXJyb3JzIiwiZXJyb3JNYXAiLCJhbnMiLCJlcnJvcnNNYXAiLCJfaXNWYWxpZGF0ZWQiLCJpc1ZhbGlkYXRlZCIsIm9wdGlvbmFsIiwidmFsaWRhdG9yIiwidXBkYXRlRGVmYXVsdEVycm9yIiwidmFsaWRhdGlvbiIsImVycm9yIiwidmFsaWRhdGlvblJlc3VsdCIsImV4dGVuZGVkU3VwcG9ydCIsInZhbGlkYXRpb25SZXN1bHRFeHRlbmQiLCJjdXJyZW50RXJyb3JzIiwiZW50cmllcyIsIl9yZWYyIiwiayIsInYiLCJhbnN3ZXJlZEFsbCIsImlzRmllbGRBbnN3ZXJlZCIsImNoZWNrcyIsImFjY2VwdCIsIl9yZWYzIiwiaWR4IiwiY2hlY2ttYXJrcyIsImluY2x1ZGVzIiwicmVzdWx0IiwiX2Fuc3dlciIsImlzT3B0aW9uYWwiLCJyZXF1aXJlZEZpZWxkTGFiZWwiLCJBcnJheSIsImlzQXJyYXkiLCJfIiwiZXhwb3J0cyJdLCJzb3VyY2VzIjpbIi4uLy4uLy4uL3NyYy9jb21wb25lbnRzL0Zvcm0vRm9ybS5ob29rLnRzIl0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IHVzZUxheW91dEVmZmVjdCwgdXNlTWVtbywgdXNlU3RhdGUgfSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCB7IE9uZVVJQ29udGV4dFNwZWNzLCB1c2VPbmVVSUNvbmZpZyB9IGZyb20gXCIuLi8uLi9jb250ZXh0L09uZVVJUHJvdmlkZXJcIjtcbmltcG9ydCB7XG4gIEFuc3dlckFjdGlvbixcbiAgQW5zd2VyQnlGaWVsZCxcbiAgRm9ybUZpZWxkLFxuICBGb3JtRmllbGRUeXBlcyxcbiAgRm9ybUZpZWxkVmlldyxcbiAgRm9ybU1vZGUsXG59IGZyb20gXCIuL0Zvcm1GaWVsZC9Gb3JtRmllbGQudHlwZXNcIjtcbmltcG9ydCB7IEFuc3dlcnNNYXAgfSBmcm9tIFwiLi9Gb3JtLnR5cGVzXCI7XG5pbXBvcnQgeyBVcGxvYWRUYXNrLCBVcGxvYWRUYXNrU25hcHNob3QgfSBmcm9tIFwiZmlyZWJhc2Uvc3RvcmFnZVwiO1xuaW1wb3J0IHsgRnJvbU9uZVBlcmNlbnRVdGlsaXR5IH0gZnJvbSBcIi4uLy4uL3R5cGUtdXRpbHNcIjtcblxuZXhwb3J0IGZ1bmN0aW9uIHVzZUZvcm1BbnN3ZXJzPEEgZXh0ZW5kcyBBbnN3ZXJzTWFwPGFueT4gPSBBbnN3ZXJzTWFwPihcbiAgZGVmYXVsdEFuc3dlcnM6IEEsXG4gIG1vZGU6IEZvcm1Nb2RlLFxuKSB7XG4gIGNvbnN0IFthbnN3ZXJzLCBzZXRBbnN3ZXJzXSA9IHVzZVN0YXRlPEE+KCgpID0+IHtcbiAgICBjb25zdCBjbG9uZSA9IHtcbiAgICAgIC4uLmRlZmF1bHRBbnN3ZXJzLFxuICAgIH07XG4gICAgaWYgKG1vZGUgPT09IEZvcm1Nb2RlLlJFQURfT05MWSkgcmV0dXJuIGNsb25lO1xuICAgIHJldHVybiBjbG9uZTtcbiAgfSk7XG4gIHJldHVybiB7XG4gICAgYW5zd2VycyxcbiAgICBzZXRBbnN3ZXJzLFxuICB9O1xufVxuZXhwb3J0IGZ1bmN0aW9uIHVzZUZvcm1TdGF0ZTxRIGV4dGVuZHMgRm9ybUZpZWxkVmlld1tdPihcbiAgY3VycmVudFF1ZXN0aW9uczogUSxcbiAgeyBhbnN3ZXJzLCBzZXRBbnN3ZXJzIH06IFJldHVyblR5cGU8dHlwZW9mIHVzZUZvcm1BbnN3ZXJzPEFuc3dlcnNNYXA8UT4+Pixcbikge1xuICBjb25zdCBmb3JtQ29uZmlnID0gdXNlT25lVUlDb25maWcoXCJjb21wb25lbnQuZm9ybVwiKTtcblxuICBjb25zdCB7IGlzVmFsaWQ6IGlzUXVlc3Rpb25zQW5zd2VyZWQgfSA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBhcmVBbGxRdWVzdGlvbnNBbnN3ZXJlZChcbiAgICAgIGN1cnJlbnRRdWVzdGlvbnMsXG4gICAgICBhbnN3ZXJzLFxuICAgICAgZm9ybUNvbmZpZy5yZXF1aXJlZExhYmVsLFxuICAgICAgZm9ybUNvbmZpZy5leHRlbnNpb25zLFxuICAgICk7XG4gIH0sIFthbnN3ZXJzLCBjdXJyZW50UXVlc3Rpb25zXSk7XG5cbiAgY29uc3Qgb25BbnN3ZXJBY3Rpb24gPSA8VCBleHRlbmRzIEZvcm1GaWVsZFR5cGVzPihcbiAgICBxdWVzdGlvblR5cGU6IFQsXG4gICAgaWQ6IHN0cmluZyxcbiAgICBhbnN3ZXI6XG4gICAgICB8IEFuc3dlckFjdGlvbjx7XG4gICAgICAgICAgdHlwZTogVDtcbiAgICAgICAgfT5cbiAgICAgIHwgdW5kZWZpbmVkLFxuICApID0+IHtcbiAgICBzd2l0Y2ggKHF1ZXN0aW9uVHlwZSkge1xuICAgICAgY2FzZSBcImZpbGVcIjpcbiAgICAgICAgY29uc3QgeyBvbkZpbGVVcGxvYWQgfSA9IGZvcm1Db25maWc7XG4gICAgICAgIHNldEFuc3dlcnMoKHByZXY6IGFueSkgPT4ge1xuICAgICAgICAgIGNvbnN0IGZpbGUgPSBhbnN3ZXIgYXMgRmlsZSB8IHVuZGVmaW5lZDtcbiAgICAgICAgICBpZiAoZmlsZSlcbiAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICAgIFtpZF06IG9uRmlsZVVwbG9hZChpZCwgZmlsZSksXG4gICAgICAgICAgICB9O1xuICAgICAgICAgIGRlbGV0ZSBwcmV2W2lkXTtcbiAgICAgICAgICByZXR1cm4geyAuLi5wcmV2IH07XG4gICAgICAgIH0pO1xuICAgICAgICBicmVhaztcbiAgICAgIGRlZmF1bHQ6XG4gICAgICAgIHNldEFuc3dlcnMoKHByZXYpID0+IHtcbiAgICAgICAgICBpZiAocHJldltpZCBhcyBrZXlvZiB0eXBlb2YgcHJldl0gPT09IGFuc3dlcikgcmV0dXJuIHByZXY7XG4gICAgICAgICAgcmV0dXJuIHtcbiAgICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgICBbaWRdOiBhbnN3ZXIgYXMgc3RyaW5nLFxuICAgICAgICAgIH07XG4gICAgICAgIH0pO1xuICAgIH1cbiAgfTtcblxuICBjb25zdCBpc0ZpbGVzVXBsb2FkZWQgPSB1c2VGaWxlVXBsb2FkcyhjdXJyZW50UXVlc3Rpb25zLCBhbnN3ZXJzKTtcblxuICByZXR1cm4ge1xuICAgIGFuc3dlcnMsXG4gICAgaXNRdWVzdGlvbnNBbnN3ZXJlZCxcbiAgICBpc0ZpbGVzVXBsb2FkZWQsXG4gICAgb25BbnN3ZXJBY3Rpb24sXG4gICAgcXVlc3Rpb25zOiBjdXJyZW50UXVlc3Rpb25zLFxuICB9O1xufVxuXG5leHBvcnQgZnVuY3Rpb24gdXNlRm9ybTxRIGV4dGVuZHMgRm9ybUZpZWxkVmlld1tdPihcbiAgY3VycmVudFF1ZXN0aW9uczogUSxcbiAgZGVmYXVsdEFuc3dlcnM6IEFuc3dlcnNNYXAsXG4gIG1vZGU6IEZvcm1Nb2RlLFxuKSB7XG4gIGNvbnN0IGFuc3dlcnMgPSB1c2VGb3JtQW5zd2VycyhkZWZhdWx0QW5zd2VycywgbW9kZSk7XG4gIHJldHVybiB1c2VGb3JtU3RhdGUoY3VycmVudFF1ZXN0aW9ucywgYW5zd2VycyBhcyBhbnkpO1xufVxuXG5mdW5jdGlvbiB1c2VGaWxlVXBsb2FkcyhxdWVzdGlvbnM6IEZvcm1GaWVsZFtdLCBhbnN3ZXJzOiBBbnN3ZXJzTWFwKSB7XG4gIGNvbnN0IGZpbGVVcGxvYWRRdWVzdGlvbnMgPSB1c2VNZW1vKFxuICAgICgpID0+IHF1ZXN0aW9ucy5maWx0ZXIoKGEpID0+IGEudHlwZSA9PT0gXCJmaWxlXCIpLFxuICAgIFtxdWVzdGlvbnNdLFxuICApO1xuICBjb25zdCBbZmlsZVVwbG9hZFN0YXR1cywgc2V0RmlsZVVwbG9hZFN0YXR1c10gPSB1c2VTdGF0ZTx7XG4gICAgW3F1ZXN0aW9uSUQ6IHN0cmluZ106IFVwbG9hZFRhc2tTbmFwc2hvdFtcInN0YXRlXCJdO1xuICB9Pih7fSk7XG4gIHVzZUxheW91dEVmZmVjdCgoKSA9PiB7XG4gICAgY29uc3QgdW5zdWJzOiBSZXR1cm5UeXBlPFVwbG9hZFRhc2tbXCJvblwiXT5bXSA9IFtdO1xuICAgIGZvciAobGV0IGZpbGVRdWVzdGlvbiBvZiBmaWxlVXBsb2FkUXVlc3Rpb25zKSB7XG4gICAgICBjb25zdCB1cGxvYWRUYXNrID0gYW5zd2Vyc1tmaWxlUXVlc3Rpb24uaWRdIGFzXG4gICAgICAgIHwgQW5zd2VyQnlGaWVsZDx7XG4gICAgICAgICAgICB0eXBlOiBcImZpbGVcIjtcbiAgICAgICAgICB9PlxuICAgICAgICB8IHVuZGVmaW5lZDtcblxuICAgICAgaWYgKCF1cGxvYWRUYXNrKVxuICAgICAgICBzZXRGaWxlVXBsb2FkU3RhdHVzKChwcmV2KSA9PiAoe1xuICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgW2ZpbGVRdWVzdGlvbi5pZF06IFwicnVubmluZ1wiLFxuICAgICAgICB9KSk7XG4gICAgICBlbHNlIGlmICh0eXBlb2YgdXBsb2FkVGFzayA9PT0gXCJib29sZWFuXCIpIHtcbiAgICAgICAgc2V0RmlsZVVwbG9hZFN0YXR1cygocHJldikgPT4gKHtcbiAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgIFtmaWxlUXVlc3Rpb24uaWRdOiBcInN1Y2Nlc3NcIixcbiAgICAgICAgfSkpO1xuICAgICAgfSBlbHNlXG4gICAgICAgIHVuc3Vicy5wdXNoKFxuICAgICAgICAgIHVwbG9hZFRhc2sub24oXCJzdGF0ZV9jaGFuZ2VkXCIsIChyKSA9PiB7XG4gICAgICAgICAgICBzZXRGaWxlVXBsb2FkU3RhdHVzKChwcmV2KSA9PiAoe1xuICAgICAgICAgICAgICAuLi5wcmV2LFxuICAgICAgICAgICAgICBbZmlsZVF1ZXN0aW9uLmlkXTpcbiAgICAgICAgICAgICAgICByLnRvdGFsQnl0ZXMgPT09IHIuYnl0ZXNUcmFuc2ZlcnJlZCA/IFwic3VjY2Vzc1wiIDogXCJydW5uaW5nXCIsXG4gICAgICAgICAgICB9KSk7XG4gICAgICAgICAgfSksXG4gICAgICAgICk7XG4gICAgfVxuXG4gICAgcmV0dXJuICgpID0+IHtcbiAgICAgIHVuc3Vicy5mb3JFYWNoKCh1bnN1YikgPT4gdW5zdWIoKSk7XG4gICAgfTtcbiAgfSwgW2Fuc3dlcnMsIGZpbGVVcGxvYWRRdWVzdGlvbnNdKTtcblxuICBjb25zdCBhcmVBbGxGaWxlVXBsb2FkZWQgPSB1c2VNZW1vKCgpID0+IHtcbiAgICByZXR1cm4gZmlsZVVwbG9hZFF1ZXN0aW9ucy5yZWR1Y2UoKHIsIHF1ZXN0aW9uKSA9PiB7XG4gICAgICBjb25zdCB1cGxvYWRTdGF0dXMgPSBmaWxlVXBsb2FkU3RhdHVzW3F1ZXN0aW9uLmlkXTtcbiAgICAgIHJldHVybiByICYmIHVwbG9hZFN0YXR1cyA9PT0gXCJzdWNjZXNzXCI7XG4gICAgfSwgdHJ1ZSk7XG4gIH0sIFtmaWxlVXBsb2FkU3RhdHVzLCBmaWxlVXBsb2FkUXVlc3Rpb25zXSk7XG5cbiAgcmV0dXJuIGFyZUFsbEZpbGVVcGxvYWRlZDtcbn1cblxuZXhwb3J0IGZ1bmN0aW9uIHVzZUZpZWxkRXJyb3JzPFxuICBRIGV4dGVuZHMgUmVhZG9ubHk8XG4gICAgUGljazxGb3JtRmllbGQsIFwidHlwZVwiIHwgXCJpZFwiIHwgXCJvcHRpb25hbFwiIHwgXCJ2YWxpZGF0b3JcIj5bXVxuICA+LFxuPihjdXJyZW50UXVlc3Rpb25zOiBRLCBhbnN3ZXJzOiBBbnN3ZXJzTWFwLCBzaG93QWxsRXJyb3JzOiBib29sZWFuKSB7XG4gIGNvbnN0IHsgcmVxdWlyZWRMYWJlbCwgZXh0ZW5zaW9ucyB9ID0gdXNlT25lVUlDb25maWcoXCJjb21wb25lbnQuZm9ybVwiKTtcbiAgY29uc3QgZXJyb3JNYXAgPSB1c2VNZW1vKCgpID0+IHtcbiAgICBjb25zdCBhbnMgPSA8VCBleHRlbmRzIEZvcm1GaWVsZFZpZXdbXCJ0eXBlXCJdPihcbiAgICAgIHF1ZXN0aW9uOiBQaWNrPEZvcm1GaWVsZCwgXCJpZFwiPiAmIHtcbiAgICAgICAgdHlwZTogVDtcbiAgICAgIH0sXG4gICAgKSA9PlxuICAgICAgYW5zd2Vyc1txdWVzdGlvbi5pZF0gYXMgQW5zd2VyQnlGaWVsZDx7XG4gICAgICAgIHR5cGU6IFQ7XG4gICAgICB9PjtcbiAgICBjb25zdCBlcnJvcnNNYXA6IHtcbiAgICAgIFtxdWVzdGlvbklkOiBzdHJpbmddOiBzdHJpbmcgfCB1bmRlZmluZWQ7XG4gICAgfSA9IHt9O1xuICAgIGZvciAobGV0IHF1ZXN0aW9uIG9mIGN1cnJlbnRRdWVzdGlvbnMpIHtcbiAgICAgIGNvbnN0IF9pc1ZhbGlkYXRlZCA9ICgpID0+IHtcbiAgICAgICAgcmV0dXJuIGlzVmFsaWRhdGVkKFxuICAgICAgICAgIGFucyhxdWVzdGlvbiksXG4gICAgICAgICAgISFxdWVzdGlvbi5vcHRpb25hbCxcbiAgICAgICAgICBxdWVzdGlvbi52YWxpZGF0b3IsXG4gICAgICAgICAgcmVxdWlyZWRMYWJlbCxcbiAgICAgICAgKTtcbiAgICAgIH07XG4gICAgICBjb25zdCB1cGRhdGVEZWZhdWx0RXJyb3IgPSAoKSA9PiB7XG4gICAgICAgIGNvbnN0IHZhbGlkYXRpb24gPSBfaXNWYWxpZGF0ZWQoKTtcbiAgICAgICAgZXJyb3JzTWFwW3F1ZXN0aW9uLmlkXSA9IHZhbGlkYXRpb24uZXJyb3I7XG4gICAgICB9O1xuICAgICAgc3dpdGNoIChxdWVzdGlvbi50eXBlKSB7XG4gICAgICAgIGNhc2UgXCJjaGVja1wiOlxuICAgICAgICBjYXNlIFwicmF3Y2hlY2tcIjpcbiAgICAgICAgICB1cGRhdGVEZWZhdWx0RXJyb3IoKTtcbiAgICAgICAgICBpZiAocXVlc3Rpb24udmFsaWRhdG9yKVxuICAgICAgICAgICAgZXJyb3JzTWFwW3F1ZXN0aW9uLmlkXSA9IHF1ZXN0aW9uLnZhbGlkYXRvcihcbiAgICAgICAgICAgICAgYW5zKHF1ZXN0aW9uKSBhcyBhbnksXG4gICAgICAgICAgICApIGFzIHN0cmluZztcbiAgICAgICAgICBicmVhaztcbiAgICAgICAgY2FzZSBcIm51bWJlclwiOlxuICAgICAgICBjYXNlIFwidGV4dFwiOlxuICAgICAgICBjYXNlIFwic2VsZWN0XCI6XG4gICAgICAgIGNhc2UgXCJyYWRpb1wiOlxuICAgICAgICBjYXNlIFwiZmlsZVwiOlxuICAgICAgICAgIHVwZGF0ZURlZmF1bHRFcnJvcigpO1xuICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBfaXNWYWxpZGF0ZWQoKTtcbiAgICAgICAgICBpZiAodmFsaWRhdGlvblJlc3VsdC5lcnJvcilcbiAgICAgICAgICAgIGVycm9yc01hcFtxdWVzdGlvbi5pZF0gPSB2YWxpZGF0aW9uUmVzdWx0LmVycm9yO1xuICAgICAgICAgIGJyZWFrO1xuICAgICAgICBkZWZhdWx0OlxuICAgICAgICAgIGNvbnN0IGV4dGVuZGVkU3VwcG9ydCA9XG4gICAgICAgICAgICBleHRlbnNpb25zPy5bXG4gICAgICAgICAgICAgIHF1ZXN0aW9uLnR5cGUgYXMgRnJvbU9uZVBlcmNlbnRVdGlsaXR5PFwiVUlFbGVtZW50cy5Gb3JtRXh0ZW5zaW9uXCI+W1wiZmllbGRzXCJdW1widHlwZVwiXVxuICAgICAgICAgICAgXTtcbiAgICAgICAgICBpZiAoZXh0ZW5kZWRTdXBwb3J0KSB7XG4gICAgICAgICAgICBjb25zdCB2YWxpZGF0aW9uUmVzdWx0RXh0ZW5kID0gZXh0ZW5kZWRTdXBwb3J0LnZhbGlkYXRvclxuICAgICAgICAgICAgICA/IGV4dGVuZGVkU3VwcG9ydC52YWxpZGF0b3IoYW5zKHF1ZXN0aW9uKSBhcyBhbnksIHF1ZXN0aW9uIGFzIGFueSlcbiAgICAgICAgICAgICAgOiBfaXNWYWxpZGF0ZWQoKTtcbiAgICAgICAgICAgIGlmICh2YWxpZGF0aW9uUmVzdWx0RXh0ZW5kLmVycm9yKVxuICAgICAgICAgICAgICBlcnJvcnNNYXBbcXVlc3Rpb24uaWRdID0gdmFsaWRhdGlvblJlc3VsdEV4dGVuZC5lcnJvcjtcbiAgICAgICAgICB9IGVsc2Uge1xuICAgICAgICAgICAgdXBkYXRlRGVmYXVsdEVycm9yKCk7XG4gICAgICAgICAgfVxuICAgICAgfVxuICAgIH1cblxuICAgIHJldHVybiBlcnJvcnNNYXA7XG4gIH0sIFtjdXJyZW50UXVlc3Rpb25zLCBhbnN3ZXJzXSk7XG5cbiAgY29uc3QgY3VycmVudEVycm9ycyA9IHVzZU1lbW8oKCkgPT4ge1xuICAgIHJldHVybiBPYmplY3QuZW50cmllcyhlcnJvck1hcCkucmVkdWNlKFxuICAgICAgKHIsIFtrLCB2XSkgPT4gKHtcbiAgICAgICAgLi4ucixcbiAgICAgICAgW2tdOiBzaG93QWxsRXJyb3JzID8gdiA6IHYgIT09IHJlcXVpcmVkTGFiZWwgPyB2IDogdW5kZWZpbmVkLFxuICAgICAgfSksXG4gICAgICB7fSxcbiAgICApO1xuICB9LCBbc2hvd0FsbEVycm9ycywgZXJyb3JNYXBdKTtcblxuICByZXR1cm4gY3VycmVudEVycm9ycyBhcyB7IFtrIGluIFFbbnVtYmVyXVtcImlkXCJdXTogc3RyaW5nIH07XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBhcmVBbGxRdWVzdGlvbnNBbnN3ZXJlZChcbiAgY3VycmVudFF1ZXN0aW9uczogRm9ybUZpZWxkW10sXG4gIGFuc3dlcnM6IEFuc3dlcnNNYXAsXG4gIHJlcXVpcmVkTGFiZWw6IHN0cmluZyxcbiAgZXh0ZW5zaW9uczogT25lVUlDb250ZXh0U3BlY3NbXCJjb21wb25lbnRcIl1bXCJmb3JtXCJdW1wiZXh0ZW5zaW9uc1wiXSxcbikge1xuICBjb25zdCBpc1ZhbGlkID0gY3VycmVudFF1ZXN0aW9ucy5yZWR1Y2UoKGFuc3dlcmVkQWxsLCBxdWVzdGlvbikgPT4ge1xuICAgIGNvbnN0IGFucyA9IDxUIGV4dGVuZHMgRm9ybUZpZWxkVmlld1tcInR5cGVcIl0+KFxuICAgICAgcXVlc3Rpb246IEZvcm1GaWVsZCAmIHtcbiAgICAgICAgdHlwZTogVDtcbiAgICAgIH0sXG4gICAgKSA9PlxuICAgICAgYW5zd2Vyc1txdWVzdGlvbi5pZF0gYXMgdW5rbm93biBhcyBBbnN3ZXJCeUZpZWxkPHtcbiAgICAgICAgdHlwZTogVDtcbiAgICAgIH0+O1xuXG4gICAgY29uc3QgaXNGaWVsZEFuc3dlcmVkID0gKCgpID0+IHtcbiAgICAgIHN3aXRjaCAocXVlc3Rpb24udHlwZSkge1xuICAgICAgICBjYXNlIFwiYWNjZXB0XCI6XG4gICAgICAgICAgY29uc3QgY2hlY2tzID0gYW5zKHF1ZXN0aW9uKSB8fCBbXTtcbiAgICAgICAgICByZXR1cm4gcXVlc3Rpb24uYWNjZXB0LnJlZHVjZShcbiAgICAgICAgICAgIChyLCB7IG9wdGlvbmFsIH0sIGlkeCkgPT4gciAmJiAob3B0aW9uYWwgPyB0cnVlIDogY2hlY2tzW2lkeF0pLFxuICAgICAgICAgICAgdHJ1ZSxcbiAgICAgICAgICApO1xuICAgICAgICBjYXNlIFwiY2hlY2tcIjpcbiAgICAgICAgY2FzZSBcInJhd2NoZWNrXCI6XG4gICAgICAgICAgaWYgKHF1ZXN0aW9uLm9wdGlvbmFsKSByZXR1cm4gdHJ1ZTtcbiAgICAgICAgICBpZiAocXVlc3Rpb24udmFsaWRhdG9yKVxuICAgICAgICAgICAgcmV0dXJuIHF1ZXN0aW9uLnZhbGlkYXRvcihhbnMocXVlc3Rpb24pIGFzIGFueSkgPT09IHRydWUgYXMgYm9vbGVhbjtcbiAgICAgICAgICBjb25zdCBjaGVja21hcmtzID0gYW5zKHF1ZXN0aW9uKSB8fCBbXTtcbiAgICAgICAgICByZXR1cm4gY2hlY2ttYXJrcy5pbmNsdWRlcyh0cnVlKTtcbiAgICAgICAgY2FzZSBcIm51bWJlclwiOlxuICAgICAgICBjYXNlIFwidGV4dFwiOlxuICAgICAgICBjYXNlIFwic2VsZWN0XCI6XG4gICAgICAgIGNhc2UgXCJyYWRpb1wiOlxuICAgICAgICBjYXNlIFwiZmlsZVwiOlxuICAgICAgICAgIGlmICghYW5zd2Vyc1txdWVzdGlvbi5pZF0pIHJldHVybiAhIXF1ZXN0aW9uLm9wdGlvbmFsO1xuICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHQgPSBpc1ZhbGlkYXRlZChcbiAgICAgICAgICAgIGFucyhxdWVzdGlvbiksXG4gICAgICAgICAgICAhIXF1ZXN0aW9uLm9wdGlvbmFsLFxuICAgICAgICAgICAgcXVlc3Rpb24udmFsaWRhdG9yLFxuICAgICAgICAgICAgcmVxdWlyZWRMYWJlbCxcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiB2YWxpZGF0aW9uUmVzdWx0LmlzVmFsaWQgJiYgYW5zd2VyZWRBbGw7XG4gICAgICAgIGRlZmF1bHQ6XG4gICAgICAgICAgY29uc3QgZXh0ZW5kZWRTdXBwb3J0ID1cbiAgICAgICAgICAgIGV4dGVuc2lvbnM/LltcbiAgICAgICAgICAgICAgcXVlc3Rpb24udHlwZSBhcyBGcm9tT25lUGVyY2VudFV0aWxpdHk8XCJVSUVsZW1lbnRzLkZvcm1FeHRlbnNpb25cIj5bXCJmaWVsZHNcIl1bXCJ0eXBlXCJdXG4gICAgICAgICAgICBdO1xuICAgICAgICAgIGlmIChleHRlbmRlZFN1cHBvcnQpIHtcbiAgICAgICAgICAgIGNvbnN0IHZhbGlkYXRpb25SZXN1bHRFeHRlbmQgPSBleHRlbmRlZFN1cHBvcnQudmFsaWRhdG9yXG4gICAgICAgICAgICAgID8gZXh0ZW5kZWRTdXBwb3J0LnZhbGlkYXRvcihhbnMocXVlc3Rpb24pIGFzIGFueSwgcXVlc3Rpb24gYXMgYW55KVxuICAgICAgICAgICAgICA6IGlzVmFsaWRhdGVkKFxuICAgICAgICAgICAgICAgICAgYW5zKHF1ZXN0aW9uKSxcbiAgICAgICAgICAgICAgICAgICEhcXVlc3Rpb24ub3B0aW9uYWwsXG4gICAgICAgICAgICAgICAgICBxdWVzdGlvbi52YWxpZGF0b3IsXG4gICAgICAgICAgICAgICAgICByZXF1aXJlZExhYmVsLFxuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICByZXR1cm4gdmFsaWRhdGlvblJlc3VsdEV4dGVuZC5pc1ZhbGlkO1xuICAgICAgICAgIH0gZWxzZVxuICAgICAgICAgICAgcmV0dXJuIHF1ZXN0aW9uLnZhbGlkYXRvclxuICAgICAgICAgICAgICA/ICEhcXVlc3Rpb24udmFsaWRhdG9yKGFucyhxdWVzdGlvbikgYXMgYW55KVxuICAgICAgICAgICAgICA6ICEhYW5zKHF1ZXN0aW9uKTtcbiAgICAgIH1cbiAgICB9KSgpO1xuXG4gICAgY29uc3QgcmVzdWx0ID0gYW5zd2VyZWRBbGwgJiYgaXNGaWVsZEFuc3dlcmVkO1xuICAgIHJldHVybiByZXN1bHQ7XG4gIH0sIHRydWUpO1xuXG4gIHJldHVybiB7IGlzVmFsaWQ6ICEhaXNWYWxpZCB9O1xufVxuXG5leHBvcnQgY29uc3QgaXNWYWxpZGF0ZWQgPSAoXG4gIF9hbnN3ZXI6IEFuc3dlckJ5RmllbGQ8eyB0eXBlOiBGb3JtRmllbGRUeXBlcyB9PixcbiAgaXNPcHRpb25hbDogYm9vbGVhbixcbiAgdmFsaWRhdG9yOiAoKHZhbDogYW55KSA9PiBzdHJpbmcgfCBib29sZWFuKSB8IHVuZGVmaW5lZCxcbiAgcmVxdWlyZWRGaWVsZExhYmVsOiBzdHJpbmcsXG4pID0+IHtcbiAgY29uc3QgYW5zd2VyID0gQXJyYXkuaXNBcnJheShfYW5zd2VyKSA/IF9hbnN3ZXJbMF0gOiBfYW5zd2VyO1xuICBpZiAoIWFuc3dlciAmJiAhaXNPcHRpb25hbClcbiAgICByZXR1cm4ge1xuICAgICAgaXNWYWxpZDogZmFsc2UsXG4gICAgICBlcnJvcjogcmVxdWlyZWRGaWVsZExhYmVsLFxuICAgIH07XG4gIGlmICghdmFsaWRhdG9yKVxuICAgIGlmIChBcnJheS5pc0FycmF5KF9hbnN3ZXIpKSB7XG4gICAgICBjb25zdCBbXywgaXNWYWxpZCwgZXJyb3JdID0gX2Fuc3dlcjtcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGlzVmFsaWQsXG4gICAgICAgIGVycm9yLFxuICAgICAgfTtcbiAgICB9IGVsc2Uge1xuICAgICAgcmV0dXJuIHtcbiAgICAgICAgaXNWYWxpZDogdHJ1ZSxcbiAgICAgICAgZXJyb3I6IFwiXCIsXG4gICAgICB9O1xuICAgIH1cbiAgY29uc3QgdmFsaWRhdGlvblJlc3VsdCA9IHZhbGlkYXRvcihfYW5zd2VyKTtcbiAgaWYgKHR5cGVvZiB2YWxpZGF0aW9uUmVzdWx0ID09PSBcInN0cmluZ1wiKVxuICAgIHJldHVybiB7XG4gICAgICBpc1ZhbGlkOiBmYWxzZSxcbiAgICAgIGVycm9yOiB2YWxpZGF0aW9uUmVzdWx0LFxuICAgIH07XG4gIHJldHVybiB7XG4gICAgaXNWYWxpZDogdmFsaWRhdGlvblJlc3VsdCxcbiAgICBlcnJvcjogXCJcIixcbiAgfTtcbn07XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyxPQUFBO0FBQ0EsSUFBQUMsY0FBQSxHQUFBRCxPQUFBO0FBQ0EsSUFBQUUsVUFBQSxHQUFBRixPQUFBO0FBT3FDLFNBQUFHLFFBQUFDLE1BQUEsRUFBQUMsY0FBQSxRQUFBQyxJQUFBLEdBQUFDLE1BQUEsQ0FBQUQsSUFBQSxDQUFBRixNQUFBLE9BQUFHLE1BQUEsQ0FBQUMscUJBQUEsUUFBQUMsT0FBQSxHQUFBRixNQUFBLENBQUFDLHFCQUFBLENBQUFKLE1BQUEsR0FBQUMsY0FBQSxLQUFBSSxPQUFBLEdBQUFBLE9BQUEsQ0FBQUMsTUFBQSxXQUFBQyxHQUFBLFdBQUFKLE1BQUEsQ0FBQUssd0JBQUEsQ0FBQVIsTUFBQSxFQUFBTyxHQUFBLEVBQUFFLFVBQUEsT0FBQVAsSUFBQSxDQUFBUSxJQUFBLENBQUFDLEtBQUEsQ0FBQVQsSUFBQSxFQUFBRyxPQUFBLFlBQUFILElBQUE7QUFBQSxTQUFBVSxjQUFBQyxNQUFBLGFBQUFDLENBQUEsTUFBQUEsQ0FBQSxHQUFBQyxTQUFBLENBQUFDLE1BQUEsRUFBQUYsQ0FBQSxVQUFBRyxNQUFBLFdBQUFGLFNBQUEsQ0FBQUQsQ0FBQSxJQUFBQyxTQUFBLENBQUFELENBQUEsUUFBQUEsQ0FBQSxPQUFBZixPQUFBLENBQUFJLE1BQUEsQ0FBQWMsTUFBQSxPQUFB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