@onepercentio/one-ui 0.21.1 → 0.21.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 (315) hide show
  1. package/.prod.babelrc +2 -1
  2. package/ai/components/UncontrolledTransition/UncontrolledTransition.ai.d.ts +15 -0
  3. package/ai/components/UncontrolledTransition/UncontrolledTransition.ai.js +37 -0
  4. package/ai/components/UncontrolledTransition/UncontrolledTransition.ai.js.map +1 -0
  5. package/ai/hooks/ui/useAlternating.ai.d.ts +9 -0
  6. package/ai/hooks/ui/useAlternating.ai.js +17 -0
  7. package/ai/hooks/ui/useAlternating.ai.js.map +1 -0
  8. package/ai/hooks/useHero.ai.d.ts +9 -0
  9. package/ai/hooks/useHero.ai.js +21 -0
  10. package/ai/hooks/useHero.ai.js.map +1 -0
  11. package/ai/types.d.ts +9 -0
  12. package/ai/types.js +3 -0
  13. package/ai/types.js.map +1 -0
  14. package/dist/assets/styles/variables.scss +0 -5
  15. package/dist/components/AdaptiveButton/AdaptiveButton.d.ts +2 -2
  16. package/dist/components/AdaptiveButton/AdaptiveButton.js +2 -1
  17. package/dist/components/AdaptiveButton/index.js +2 -1
  18. package/dist/components/AdaptiveContainer/AdaptiveContainer.d.ts +2 -2
  19. package/dist/components/AdaptiveContainer/AdaptiveContainer.js +2 -1
  20. package/dist/components/AdaptiveContainer/index.js +2 -1
  21. package/dist/components/AdaptiveDialog/AdaptiveDialog.d.ts +4 -3
  22. package/dist/components/AdaptiveDialog/AdaptiveDialog.js +7 -3
  23. package/dist/components/AdaptiveDialog/index.js +2 -1
  24. package/dist/components/AdaptiveSidebar/AdaptiveSidebar.d.ts +3 -0
  25. package/dist/components/AdaptiveSidebar/AdaptiveSidebar.js +8 -6
  26. package/dist/components/AdaptiveSidebar/AdaptiveSidebar.sample.d.ts +2 -0
  27. package/dist/components/AdaptiveSidebar/AdaptiveSidebar.sample.js +13 -0
  28. package/dist/components/AdaptiveSidebar/index.js +2 -1
  29. package/dist/components/AnchoredTooltip/AnchoredTooltip.d.ts +3 -0
  30. package/dist/components/AnchoredTooltip/AnchoredTooltip.js +11 -6
  31. package/dist/components/AnchoredTooltip/index.js +2 -1
  32. package/dist/components/AnimatedEntrance/AnimatedEntrance.d.ts +3 -3
  33. package/dist/components/AnimatedEntrance/AnimatedEntrance.js +2 -1
  34. package/dist/components/AnimatedEntrance/index.js +2 -1
  35. package/dist/components/AsyncWrapper/AsyncWrapper.d.ts +2 -2
  36. package/dist/components/AsyncWrapper/AsyncWrapper.js +2 -1
  37. package/dist/components/AsyncWrapper/index.js +2 -1
  38. package/dist/components/Avatar/Avatar.d.ts +2 -1
  39. package/dist/components/Avatar/Avatar.js +2 -1
  40. package/dist/components/Avatar/index.js +2 -1
  41. package/dist/components/BucketFill/BucketFill.d.ts +3 -3
  42. package/dist/components/BucketFill/BucketFill.js +2 -1
  43. package/dist/components/BucketFill/index.js +2 -1
  44. package/dist/components/Button/Button.d.ts +2 -2
  45. package/dist/components/Button/Button.js +6 -4
  46. package/dist/components/Button/Button.module.scss +5 -2
  47. package/dist/components/Button/index.js +2 -1
  48. package/dist/components/Card/Card.d.ts +2 -2
  49. package/dist/components/Card/Card.js +2 -1
  50. package/dist/components/Card/index.js +2 -1
  51. package/dist/components/Chart/Chart.logic.d.ts +3 -1
  52. package/dist/components/Chart/Chart.logic.js +3 -1
  53. package/dist/components/Chart/Chart.types.js +2 -1
  54. package/dist/components/Chart/Chart.view.d.ts +2 -1
  55. package/dist/components/Chart/Chart.view.js +2 -1
  56. package/dist/components/Chart/index.js +2 -1
  57. package/dist/components/CheckBox/CheckBox.d.ts +1 -1
  58. package/dist/components/CheckBox/CheckBox.js +2 -1
  59. package/dist/components/CheckBox/index.js +2 -1
  60. package/dist/components/CodeInput/CodeInput.d.ts +9 -0
  61. package/dist/components/CodeInput/CodeInput.js +85 -0
  62. package/dist/components/CodeInput/CodeInput.module.scss +5 -0
  63. package/dist/components/CodeInput/index.d.ts +1 -0
  64. package/dist/components/CodeInput/index.js +14 -0
  65. package/dist/components/Collapsable/Collapsable.d.ts +5 -2
  66. package/dist/components/Collapsable/Collapsable.js +23 -7
  67. package/dist/components/Collapsable/index.js +2 -1
  68. package/dist/components/Countdown/Countdown.d.ts +2 -1
  69. package/dist/components/Countdown/Countdown.js +2 -1
  70. package/dist/components/Countdown/index.js +2 -1
  71. package/dist/components/Divider/Divider.d.ts +2 -1
  72. package/dist/components/Divider/Divider.js +2 -1
  73. package/dist/components/Divider/index.js +2 -1
  74. package/dist/components/EmailInput/EmailInput.d.ts +3 -0
  75. package/dist/components/EmailInput/EmailInput.js +6 -5
  76. package/dist/components/EmailInput/index.js +2 -1
  77. package/dist/components/FadeIn/FadeIn.d.ts +3 -0
  78. package/dist/components/FadeIn/FadeIn.js +9 -5
  79. package/dist/components/FadeIn/FadeIn.module.scss +0 -9
  80. package/dist/components/FadeIn/index.js +2 -1
  81. package/dist/components/FileInput/FileInput.d.ts +1 -1
  82. package/dist/components/FileInput/FileInput.js +2 -1
  83. package/dist/components/FileInput/View/BigFactory/BigFactory.d.ts +2 -2
  84. package/dist/components/FileInput/View/BigFactory/BigFactory.js +2 -1
  85. package/dist/components/FileInput/View/BigFactory/index.js +2 -1
  86. package/dist/components/FileInput/View/Compact/Compact.d.ts +2 -1
  87. package/dist/components/FileInput/View/Compact/Compact.js +2 -1
  88. package/dist/components/FileInput/View/Compact/index.js +2 -1
  89. package/dist/components/FileInput/View/View.types.js +2 -1
  90. package/dist/components/FileInput/index.js +2 -1
  91. package/dist/components/FlowController/FlowController.d.ts +2 -2
  92. package/dist/components/FlowController/FlowController.js +2 -1
  93. package/dist/components/FlowController/index.js +2 -1
  94. package/dist/components/Form/Form.js +2 -1
  95. package/dist/components/Form/index.js +2 -1
  96. package/dist/components/Form/v2/Form.d.ts +18 -0
  97. package/dist/components/Form/v2/Form.hook.d.ts +21 -0
  98. package/dist/components/Form/v2/Form.hook.js +214 -0
  99. package/dist/components/Form/v2/Form.js +69 -0
  100. package/dist/components/Form/v2/Form.module.scss +0 -0
  101. package/dist/components/Form/v2/Form.types.d.ts +97 -0
  102. package/dist/components/Form/v2/Form.types.js +45 -0
  103. package/dist/components/Form/v2/FormField/Extensions/DateField/DateField.d.ts +12 -0
  104. package/dist/components/Form/v2/FormField/Extensions/DateField/DateField.js +74 -0
  105. package/dist/components/Form/v2/FormField/Extensions/DateField/DateField.module.scss +0 -0
  106. package/dist/components/Form/v2/FormField/Extensions/DateField/index.d.ts +1 -0
  107. package/dist/components/Form/v2/FormField/Extensions/DateField/index.js +14 -0
  108. package/dist/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.d.ts +10 -0
  109. package/dist/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.js +92 -0
  110. package/dist/components/Form/v2/FormField/Extensions/PhoneField/PhoneField.module.scss +0 -0
  111. package/dist/components/Form/v2/FormField/Extensions/PhoneField/index.d.ts +1 -0
  112. package/dist/components/Form/v2/FormField/Extensions/PhoneField/index.js +14 -0
  113. package/dist/components/Form/v2/FormField/FormField.d.ts +6 -0
  114. package/dist/components/Form/v2/FormField/FormField.js +309 -0
  115. package/dist/components/Form/v2/FormField/FormField.module.scss +0 -0
  116. package/dist/components/Form/v2/FormField/FormField.types.d.ts +83 -0
  117. package/dist/components/Form/v2/FormField/FormField.types.js +13 -0
  118. package/dist/components/Form/v2/FormField/index.d.ts +1 -0
  119. package/dist/components/Form/v2/FormField/index.js +14 -0
  120. package/dist/components/Form/v2/index.d.ts +1 -0
  121. package/dist/components/Form/v2/index.js +14 -0
  122. package/dist/components/Freeze/Freeze.js +2 -1
  123. package/dist/components/Freeze/index.js +2 -1
  124. package/dist/components/HSForms/HSForms.d.ts +2 -1
  125. package/dist/components/HSForms/HSForms.js +2 -1
  126. package/dist/components/HSForms/index.js +2 -1
  127. package/dist/components/Header/Header.d.ts +2 -2
  128. package/dist/components/Header/Header.js +2 -1
  129. package/dist/components/Header/index.js +2 -1
  130. package/dist/components/HeaderCloseBtn/HeaderCloseBtn.d.ts +2 -1
  131. package/dist/components/HeaderCloseBtn/HeaderCloseBtn.js +2 -1
  132. package/dist/components/HeaderCloseBtn/index.js +2 -1
  133. package/dist/components/InfinityScroll/InfinityScroll.d.ts +3 -0
  134. package/dist/components/InfinityScroll/InfinityScroll.js +6 -5
  135. package/dist/components/InfinityScroll/index.js +2 -1
  136. package/dist/components/Input/Input.d.ts +3 -0
  137. package/dist/components/Input/Input.js +5 -4
  138. package/dist/components/Input/index.js +2 -1
  139. package/dist/components/InstantCounter/InstantCounter.d.ts +3 -0
  140. package/dist/components/InstantCounter/InstantCounter.js +6 -4
  141. package/dist/components/InstantCounter/index.js +2 -1
  142. package/dist/components/LavaLamp/LavaLamp.d.ts +2 -2
  143. package/dist/components/LavaLamp/LavaLamp.data.js +2 -1
  144. package/dist/components/LavaLamp/LavaLamp.js +2 -1
  145. package/dist/components/LavaLamp/index.js +2 -1
  146. package/dist/components/LavaLamp/v2/LavaLamp.d.ts +2 -2
  147. package/dist/components/LavaLamp/v2/LavaLamp.js +2 -1
  148. package/dist/components/LinkToId/LinkToId.d.ts +2 -2
  149. package/dist/components/LinkToId/LinkToId.js +2 -1
  150. package/dist/components/LinkToId/index.js +2 -1
  151. package/dist/components/Loader/Loader.d.ts +1 -1
  152. package/dist/components/Loader/Loader.js +2 -1
  153. package/dist/components/Loader/index.js +2 -1
  154. package/dist/components/LoaderDotsIndicator/LoaderDotsIndicator.d.ts +2 -1
  155. package/dist/components/LoaderDotsIndicator/LoaderDotsIndicator.js +2 -1
  156. package/dist/components/LoaderDotsIndicator/index.js +2 -1
  157. package/dist/components/LoopableVideo/LoopableVideo.d.ts +2 -2
  158. package/dist/components/LoopableVideo/LoopableVideo.js +2 -1
  159. package/dist/components/LoopableVideo/index.js +2 -1
  160. package/dist/components/MainGrid/MainGrid.d.ts +3 -0
  161. package/dist/components/MainGrid/MainGrid.js +6 -4
  162. package/dist/components/MainGrid/index.js +2 -1
  163. package/dist/components/MutableHamburgerButton/MutableHamburgerButton.d.ts +1 -1
  164. package/dist/components/MutableHamburgerButton/MutableHamburgerButton.js +2 -1
  165. package/dist/components/MutableHamburgerButton/index.js +2 -1
  166. package/dist/components/Notification/Notification.d.ts +2 -2
  167. package/dist/components/Notification/Notification.js +2 -1
  168. package/dist/components/Notification/index.js +2 -1
  169. package/dist/components/OrderableList/OrderableList.d.ts +1 -1
  170. package/dist/components/OrderableList/OrderableList.js +2 -1
  171. package/dist/components/OrderableList/index.js +2 -1
  172. package/dist/components/PaginationIndicator/PaginationIndicator.d.ts +9 -6
  173. package/dist/components/PaginationIndicator/PaginationIndicator.js +50 -11
  174. package/dist/components/PaginationIndicator/index.js +2 -1
  175. package/dist/components/Parallax/Parallax.d.ts +3 -0
  176. package/dist/components/Parallax/Parallax.js +6 -4
  177. package/dist/components/Parallax/index.js +2 -1
  178. package/dist/components/Parallax/math/helpers.js +2 -1
  179. package/dist/components/PasswordInput/PasswordInput.d.ts +3 -0
  180. package/dist/components/PasswordInput/PasswordInput.js +6 -5
  181. package/dist/components/PasswordInput/index.js +2 -1
  182. package/dist/components/PingPongText/PingPongText.d.ts +2 -2
  183. package/dist/components/PingPongText/PingPongText.js +2 -1
  184. package/dist/components/PingPongText/index.js +2 -1
  185. package/dist/components/PixelatedScan/PixelatedScan.d.ts +2 -1
  186. package/dist/components/PixelatedScan/PixelatedScan.js +2 -1
  187. package/dist/components/PixelatedScan/index.js +2 -1
  188. package/dist/components/Portal/Portal.d.ts +1 -1
  189. package/dist/components/Portal/Portal.js +2 -1
  190. package/dist/components/Portal/index.js +2 -1
  191. package/dist/components/ProgressBar/ProgressBar.d.ts +3 -3
  192. package/dist/components/ProgressBar/ProgressBar.js +2 -1
  193. package/dist/components/ProgressBar/index.js +2 -1
  194. package/dist/components/ProgressTexts/ProgressTexts.d.ts +1 -1
  195. package/dist/components/ProgressTexts/ProgressTexts.js +2 -1
  196. package/dist/components/ProgressTexts/index.js +2 -1
  197. package/dist/components/Radio/Radio.d.ts +1 -1
  198. package/dist/components/Radio/Radio.js +2 -1
  199. package/dist/components/Radio/index.js +2 -1
  200. package/dist/components/SectionContainer/SectionContainer.d.ts +3 -0
  201. package/dist/components/SectionContainer/SectionContainer.js +6 -4
  202. package/dist/components/SectionContainer/index.js +2 -1
  203. package/dist/components/Select/Select.d.ts +3 -3
  204. package/dist/components/Select/Select.js +2 -1
  205. package/dist/components/Select/index.js +2 -1
  206. package/dist/components/Skeleton/Skeleton.d.ts +2 -1
  207. package/dist/components/Skeleton/Skeleton.js +2 -1
  208. package/dist/components/Skeleton/index.js +2 -1
  209. package/dist/components/Spacing/Spacing.d.ts +2 -1
  210. package/dist/components/Spacing/Spacing.js +2 -1
  211. package/dist/components/Spacing/index.js +2 -1
  212. package/dist/components/StaticScroller/StaticScroller.d.ts +3 -0
  213. package/dist/components/StaticScroller/StaticScroller.js +6 -4
  214. package/dist/components/StaticScroller/index.js +2 -1
  215. package/dist/components/Switch/Switch.d.ts +2 -2
  216. package/dist/components/Switch/Switch.js +2 -1
  217. package/dist/components/Switch/index.js +2 -1
  218. package/dist/components/Table/Table.d.ts +2 -1
  219. package/dist/components/Table/Table.js +2 -1
  220. package/dist/components/Table/index.js +2 -1
  221. package/dist/components/Tabs/Tabs.d.ts +2 -2
  222. package/dist/components/Tabs/Tabs.js +2 -1
  223. package/dist/components/Tabs/index.js +2 -1
  224. package/dist/components/Text/Text.d.ts +7 -5
  225. package/dist/components/Text/Text.js +6 -4
  226. package/dist/components/Text/Text.module.scss +4 -0
  227. package/dist/components/Text/index.js +2 -1
  228. package/dist/components/Transition/MasksFactory/DiagonalReveal.js +2 -1
  229. package/dist/components/Transition/MasksFactory/DiagonalSquareToBalls.js +2 -1
  230. package/dist/components/Transition/MasksFactory/PhysicsSquares.js +2 -1
  231. package/dist/components/Transition/MasksFactory/SquareToBalls.js +2 -1
  232. package/dist/components/Transition/MasksFactory/utils.js +2 -1
  233. package/dist/components/Transition/Transition.d.ts +8 -5
  234. package/dist/components/Transition/Transition.js +19 -16
  235. package/dist/components/Transition/Transition.module.scss +1 -1
  236. package/dist/components/Transition/index.js +2 -1
  237. package/dist/components/UncontrolledTransition/UncontrolledTransition.d.ts +3 -0
  238. package/dist/components/UncontrolledTransition/UncontrolledTransition.js +26 -13
  239. package/dist/components/UncontrolledTransition/UncontrolledTransition.sample.d.ts +2 -0
  240. package/dist/components/UncontrolledTransition/UncontrolledTransition.sample.js +44 -0
  241. package/dist/components/UncontrolledTransition/index.js +2 -1
  242. package/dist/components/WalletConnectionWrapper/WalletConnectionWrapper.d.ts +4 -1
  243. package/dist/components/WalletConnectionWrapper/WalletConnectionWrapper.js +7 -5
  244. package/dist/components/WalletConnectionWrapper/index.js +2 -1
  245. package/dist/components/utilitary/ScrollAndFocusLock/ScrollAndFocusLock.d.ts +2 -2
  246. package/dist/components/utilitary/ScrollAndFocusLock/ScrollAndFocusLock.js +2 -1
  247. package/dist/components/utilitary/ScrollAndFocusLock/index.js +2 -1
  248. package/dist/context/AsyncProcess.d.ts +2 -1
  249. package/dist/context/AsyncProcess.js +2 -1
  250. package/dist/context/ContextAsyncControl.d.ts +24 -0
  251. package/dist/context/ContextAsyncControl.js +101 -0
  252. package/dist/context/CustomBrowserRouter.d.ts +2 -2
  253. package/dist/context/CustomBrowserRouter.js +2 -1
  254. package/dist/context/OneUIProvider.d.ts +29 -1
  255. package/dist/context/OneUIProvider.js +2 -1
  256. package/dist/hooks/logs/useDependencyChangeDetection.js +2 -1
  257. package/dist/hooks/logs/useIsMounting.js +2 -1
  258. package/dist/hooks/persistence/useLocalStorage.d.ts +1 -1
  259. package/dist/hooks/persistence/useLocalStorage.js +6 -1
  260. package/dist/hooks/shims/ObjectWatchShim.js +2 -1
  261. package/dist/hooks/ui/useAdaptiveImage.js +2 -1
  262. package/dist/hooks/ui/useAlternating.d.ts +4 -0
  263. package/dist/hooks/ui/useAlternating.js +34 -0
  264. package/dist/hooks/ui/useBreakpoint.js +2 -1
  265. package/dist/hooks/ui/useCustomScrollbar.js +2 -1
  266. package/dist/hooks/ui/useMouseHover.d.ts +2 -2
  267. package/dist/hooks/ui/useMouseHover.js +8 -5
  268. package/dist/hooks/ui/usePaginationControls.d.ts +2 -2
  269. package/dist/hooks/ui/usePaginationControls.js +2 -1
  270. package/dist/hooks/ui/useSnapToViewport.js +2 -1
  271. package/dist/hooks/ui/useTilt.js +2 -1
  272. package/dist/hooks/ui/useZoomable.js +2 -1
  273. package/dist/hooks/useAsyncControl.d.ts +15 -3
  274. package/dist/hooks/useAsyncControl.js +25 -20
  275. package/dist/hooks/useContainedRepositioning.js +2 -1
  276. package/dist/hooks/useCustomHistory.js +2 -1
  277. package/dist/hooks/useElementFit.js +2 -1
  278. package/dist/hooks/useFirestoreWatch.js +2 -1
  279. package/dist/hooks/useForm.js +2 -1
  280. package/dist/hooks/useFreeze.js +2 -1
  281. package/dist/hooks/useHero.d.ts +4 -2
  282. package/dist/hooks/useHero.js +40 -15
  283. package/dist/hooks/useHero.module.scss +1 -1
  284. package/dist/hooks/useIntersection.js +2 -1
  285. package/dist/hooks/useMergeRefs.js +2 -1
  286. package/dist/hooks/useObserve.js +2 -1
  287. package/dist/hooks/usePagination.js +2 -1
  288. package/dist/hooks/usePooledOperation.js +2 -1
  289. package/dist/hooks/usePooling.js +2 -1
  290. package/dist/hooks/useRebound.js +2 -1
  291. package/dist/hooks/useShortIntl.d.ts +1 -1
  292. package/dist/hooks/useShortIntl.js +2 -1
  293. package/dist/hooks/utility/useEvents.js +2 -1
  294. package/dist/hooks/utility/useModule.js +2 -1
  295. package/dist/hooks/utility/useQuery.js +2 -1
  296. package/dist/models/DebugLogger.js +2 -1
  297. package/dist/models/GenericContract.d.ts +3 -3
  298. package/dist/models/GenericContract.js +5 -2
  299. package/dist/reac-app-env.d.js +2 -1
  300. package/dist/storybookUtils/index.d.ts +2 -2
  301. package/dist/storybookUtils/index.js +2 -1
  302. package/dist/type-utils.d.ts +5 -0
  303. package/dist/type-utils.js +2 -1
  304. package/dist/types.js +2 -1
  305. package/dist/utility.d.js +2 -1
  306. package/dist/utils/blockchain.js +2 -1
  307. package/dist/utils/flatten.js +2 -1
  308. package/dist/utils/html.utils.js +2 -1
  309. package/dist/utils/ownEvent.js +2 -1
  310. package/package.json +16 -4
  311. package/src_ai/components/UncontrolledTransition/UncontrolledTransition.ai.ts +35 -0
  312. package/src_ai/hooks/ui/useAlternating.ai.ts +15 -0
  313. package/src_ai/hooks/useHero.ai.ts +18 -0
  314. package/src_ai/types.ts +10 -0
  315. package/tsconfig-ai.json +9 -0
@@ -26,4 +26,5 @@ function getTime(el) {
26
26
  const _time = getComputedStyle(el.firstElementChild).getPropertyValue("--animation-speed-transition") || "250ms";
27
27
  const __time = _time.endsWith("ms") ? Number(_time.replace("ms", "")) : Number(_time.replace("s", "")) * 1000;
28
28
  return __time + 50;
29
- }
29
+ }
30
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJidWlsZEdyaWQiLCJhbW91bnRPZlZlcnRpY2FsU3F1YXJlcyIsImhvd01hbnlIb3Jpem9udGFsU3F1YXJlIiwiYmFsbFNpemUiLCJBcnJheSIsImZpbGwiLCJ1bmRlZmluZWQiLCJtYXAiLCJfIiwiaSIsIm1vZFgiLCJNYXRoIiwiZmxvb3IiLCJtb2RZIiwiYmFsbHNpemUiLCJwYWRkaW5nIiwieCIsInkiLCJjb2x1bW4iLCJyb3ciLCJnZXRUaW1lIiwiZWwiLCJfdGltZSIsImdldENvbXB1dGVkU3R5bGUiLCJmaXJzdEVsZW1lbnRDaGlsZCIsImdldFByb3BlcnR5VmFsdWUiLCJfX3RpbWUiLCJlbmRzV2l0aCIsIk51bWJlciIsInJlcGxhY2UiXSwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9zcmMvY29tcG9uZW50cy9UcmFuc2l0aW9uL01hc2tzRmFjdG9yeS91dGlscy50cyJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgZGVmYXVsdCBmdW5jdGlvbiBidWlsZEdyaWQoXG4gIGFtb3VudE9mVmVydGljYWxTcXVhcmVzOiBudW1iZXIsXG4gIGhvd01hbnlIb3Jpem9udGFsU3F1YXJlOiBudW1iZXIsXG4gIGJhbGxTaXplOiBudW1iZXJcbikge1xuICByZXR1cm4gbmV3IEFycmF5KGhvd01hbnlIb3Jpem9udGFsU3F1YXJlICogYW1vdW50T2ZWZXJ0aWNhbFNxdWFyZXMpXG4gICAgLmZpbGwodW5kZWZpbmVkKVxuICAgIC5tYXAoKF8sIGkpID0+IHtcbiAgICAgIGNvbnN0IG1vZFggPSBNYXRoLmZsb29yKGkgLyBob3dNYW55SG9yaXpvbnRhbFNxdWFyZSk7XG4gICAgICBjb25zdCBtb2RZID0gaSAtIG1vZFggKiBob3dNYW55SG9yaXpvbnRhbFNxdWFyZTtcbiAgICAgIGNvbnN0IGJhbGxzaXplID0gYmFsbFNpemUgKiAxLjE7XG4gICAgICBjb25zdCBwYWRkaW5nID0gKGJhbGxzaXplIC0gYmFsbFNpemUpIC8gMjtcbiAgICAgIGNvbnN0IHggPSBtb2RZICogYmFsbFNpemUgLSBwYWRkaW5nO1xuICAgICAgY29uc3QgeSA9IG1vZFggKiBiYWxsU2l6ZSAtIHBhZGRpbmc7XG5cbiAgICAgIHJldHVybiB7XG4gICAgICAgIHgsXG4gICAgICAgIHksXG4gICAgICAgIGJhbGxTaXplLFxuICAgICAgICBjb2x1bW46IG1vZFksXG4gICAgICAgIHJvdzogbW9kWCxcbiAgICAgIH07XG4gICAgfSk7XG59XG5cbmV4cG9ydCBmdW5jdGlvbiBnZXRUaW1lKGVsOiBIVE1MRGl2RWxlbWVudCkge1xuICBjb25zdCBfdGltZSA9XG4gICAgZ2V0Q29tcHV0ZWRTdHlsZShlbC5maXJzdEVsZW1lbnRDaGlsZCEpLmdldFByb3BlcnR5VmFsdWUoXG4gICAgICBcIi0tYW5pbWF0aW9uLXNwZWVkLXRyYW5zaXRpb25cIlxuICAgICkgfHwgXCIyNTBtc1wiO1xuICBjb25zdCBfX3RpbWUgPSBfdGltZS5lbmRzV2l0aChcIm1zXCIpXG4gICAgPyBOdW1iZXIoX3RpbWUucmVwbGFjZShcIm1zXCIsIFwiXCIpKVxuICAgIDogTnVtYmVyKF90aW1lLnJlcGxhY2UoXCJzXCIsIFwiXCIpKSAqIDEwMDA7XG4gIHJldHVybiBfX3RpbWUgKyA1MDtcbn1cbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUFlLFNBQVNBLFNBQVNBLENBQy9CQyx1QkFBK0IsRUFDL0JDLHVCQUErQixFQUMvQkMsUUFBZ0IsRUFDaEI7RUFDQSxPQUFPLElBQUlDLEtBQUssQ0FBQ0YsdUJBQXVCLEdBQUdELHVCQUF1QixDQUFDLENBQ2hFSSxJQUFJLENBQUNDLFNBQVMsQ0FBQyxDQUNmQyxHQUFHLENBQUMsVUFBQ0MsQ0FBQyxFQUFFQyxDQUFDLEVBQUs7SUFDYixNQUFNQyxJQUFJLEdBQUdDLElBQUksQ0FBQ0MsS0FBSyxDQUFDSCxDQUFDLEdBQUdQLHVCQUF1QixDQUFDO0lBQ3BELE1BQU1XLElBQUksR0FBR0osQ0FBQyxHQUFHQyxJQUFJLEdBQUdSLHVCQUF1QjtJQUMvQyxNQUFNWSxRQUFRLEdBQUdYLFFBQVEsR0FBRyxHQUFHO0lBQy9CLE1BQU1ZLE9BQU8sR0FBRyxDQUFDRCxRQUFRLEdBQUdYLFFBQVEsSUFBSSxDQUFDO0lBQ3pDLE1BQU1hLENBQUMsR0FBR0gsSUFBSSxHQUFHVixRQUFRLEdBQUdZLE9BQU87SUFDbkMsTUFBTUUsQ0FBQyxHQUFHUCxJQUFJLEdBQUdQLFFBQVEsR0FBR1ksT0FBTztJQUVuQyxPQUFPO01BQ0xDLENBQUMsRUFBREEsQ0FBQztNQUNEQyxDQUFDLEVBQURBLENBQUM7TUFDRGQsUUFBUSxFQUFSQSxRQUFRO01BQ1JlLE1BQU0sRUFBRUwsSUFBSTtNQUNaTSxHQUFHLEVBQUVUO0lBQ1AsQ0FBQztFQUNILENBQUMsQ0FBQztBQUNOO0FBRU8sU0FBU1UsT0FBT0EsQ0FBQ0MsRUFBa0IsRUFBRTtFQUMxQyxNQUFNQyxLQUFLLEdBQ1RDLGdCQUFnQixDQUFDRixFQUFFLENBQUNHLGlCQUFrQixDQUFDLENBQUNDLGdCQUFnQixDQUN0RCw4QkFDRixDQUFDLElBQUksT0FBTztFQUNkLE1BQU1DLE1BQU0sR0FBR0osS0FBSyxDQUFDSyxRQUFRLENBQUMsSUFBSSxDQUFDLEdBQy9CQyxNQUFNLENBQUNOLEtBQUssQ0FBQ08sT0FBTyxDQUFDLElBQUksRUFBRSxFQUFFLENBQUMsQ0FBQyxHQUMvQkQsTUFBTSxDQUFDTixLQUFLLENBQUNPLE9BQU8sQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLENBQUMsR0FBRyxJQUFJO0VBQ3pDLE9BQU9ILE1BQU0sR0FBRyxFQUFFO0FBQ3BCIn0=
@@ -20,7 +20,7 @@ export declare type TransitionProps = {
20
20
  contentStyle?: React.CSSProperties;
21
21
  contentClassName?: string;
22
22
  children: (React.ReactElement | undefined)[];
23
- onDiscardStep?: (discardedKey: React.Key) => void;
23
+ onDiscardStep?: (discardedKey: React.Key, startedAnimationAt: number) => void;
24
24
  lockTransitionWidth?: boolean;
25
25
  lockTransitionHeight?: boolean;
26
26
  } & TransitionTypeDefinitions & Omit<DetailedHTMLProps<React.HTMLAttributes<HTMLDivElement>, any>, "className" | "children">;
@@ -49,13 +49,16 @@ export declare enum TransitionAnimationTypes {
49
49
  MASK = 5,
50
50
  CUSTOM = 6
51
51
  }
52
+ /**
53
+ * Handles the transition between multiple children and recycling of elements
54
+ **/
52
55
  declare const Transition: React.ForwardRefExoticComponent<(Omit<{
53
56
  step: number;
54
57
  className?: string | undefined;
55
58
  contentStyle?: React.CSSProperties | undefined;
56
59
  contentClassName?: string | undefined;
57
60
  children: (React.ReactElement | undefined)[];
58
- onDiscardStep?: ((discardedKey: React.Key) => void) | undefined;
61
+ onDiscardStep?: ((discardedKey: React.Key, startedAnimationAt: number) => void) | undefined;
59
62
  lockTransitionWidth?: boolean | undefined;
60
63
  lockTransitionHeight?: boolean | undefined;
61
64
  } & {
@@ -66,7 +69,7 @@ declare const Transition: React.ForwardRefExoticComponent<(Omit<{
66
69
  contentStyle?: React.CSSProperties | undefined;
67
70
  contentClassName?: string | undefined;
68
71
  children: (React.ReactElement | undefined)[];
69
- onDiscardStep?: ((discardedKey: React.Key) => void) | undefined;
72
+ onDiscardStep?: ((discardedKey: React.Key, startedAnimationAt: number) => void) | undefined;
70
73
  lockTransitionWidth?: boolean | undefined;
71
74
  lockTransitionHeight?: boolean | undefined;
72
75
  } & {
@@ -78,7 +81,7 @@ declare const Transition: React.ForwardRefExoticComponent<(Omit<{
78
81
  contentStyle?: React.CSSProperties | undefined;
79
82
  contentClassName?: string | undefined;
80
83
  children: (React.ReactElement | undefined)[];
81
- onDiscardStep?: ((discardedKey: React.Key) => void) | undefined;
84
+ onDiscardStep?: ((discardedKey: React.Key, startedAnimationAt: number) => void) | undefined;
82
85
  lockTransitionWidth?: boolean | undefined;
83
86
  lockTransitionHeight?: boolean | undefined;
84
87
  } & {
@@ -93,7 +96,7 @@ declare const Transition: React.ForwardRefExoticComponent<(Omit<{
93
96
  contentStyle?: React.CSSProperties | undefined;
94
97
  contentClassName?: string | undefined;
95
98
  children: (React.ReactElement | undefined)[];
96
- onDiscardStep?: ((discardedKey: React.Key) => void) | undefined;
99
+ onDiscardStep?: ((discardedKey: React.Key, startedAnimationAt: number) => void) | undefined;
97
100
  lockTransitionWidth?: boolean | undefined;
98
101
  lockTransitionHeight?: boolean | undefined;
99
102
  } & {
@@ -90,16 +90,14 @@ function TransitionClasses(type) {
90
90
  };
91
91
  }
92
92
  }
93
- function ChildrenWrapperFactory(func, key, externalPropsContainer, toRemoveKeys) {
93
+ function ChildrenWrapperFactory(func, key, externalPropsContainer, /** This is used to prevent newer "duplicated" keys from being removed after the new element finished animation */
94
+ timestamp, toRemoveKeys) {
95
+ func.createdAt = timestamp;
94
96
  func.associatedKey = key;
95
97
  func.toRemoveKeys = toRemoveKeys;
96
98
  func.externalProps = externalPropsContainer;
97
99
  return func;
98
100
  }
99
-
100
- /**
101
- * Handles the transition between multiple children and recycling of elements
102
- **/
103
101
  function _Transition(_ref, _containerRef) {
104
102
  let step = _ref.step,
105
103
  contentStyle = _ref.contentStyle,
@@ -129,7 +127,7 @@ function _Transition(_ref, _containerRef) {
129
127
  const func = ChildrenWrapperFactory(function (_ref2) {
130
128
  let children = _ref2.children;
131
129
  return /*#__PURE__*/_react.default.createElement("div", externalProps, children);
132
- }, children[step].key || step, externalProps, []);
130
+ }, children[step].key || step, externalProps, Date.now(), []);
133
131
  return [func];
134
132
  }),
135
133
  _useState2 = _slicedToArray(_useState, 2),
@@ -156,6 +154,7 @@ function _Transition(_ref, _containerRef) {
156
154
  if (prevStep.current !== step && lockTransitionWidth) containerRef.current.style.width = "".concat(containerRef.current.clientWidth, "px");
157
155
  if (prevStep.current !== step && lockTransitionHeight) containerRef.current.style.height = "".concat(containerRef.current.clientHeight, "px");
158
156
  const transitionMask = props.transitionType === TransitionAnimationTypes.MASK ? props.maskFactory(containerRef.current) : "";
157
+ const insertedAt = Date.now();
159
158
 
160
159
  /** This runs on backwards */
161
160
  if (prevStep.current > step) {
@@ -185,14 +184,14 @@ function _Transition(_ref, _containerRef) {
185
184
  (_enteringScreenRef$cu2 = enteringScreenRef.current) === null || _enteringScreenRef$cu2 === void 0 ? void 0 : _enteringScreenRef$cu2.classList.remove(transitionClasses.backward.elementEntering);
186
185
  setChildrenWrappers(function (screensAfterTheCurrentStepEntered) {
187
186
  if (onDiscardStep) {
188
- if (isAnimationFromExpectedState) onDiscardStep(prevKeyToRemove);
187
+ if (isAnimationFromExpectedState) onDiscardStep(prevKeyToRemove, insertedAt);
189
188
  if (FirstNextScreen && FirstNextScreen.toRemoveKeys) FirstNextScreen.toRemoveKeys.forEach(onDiscardStep);
190
189
  }
191
190
  return screensAfterTheCurrentStepEntered.filter(function (s) {
192
191
  var _FirstNextScreen$toRe;
193
192
  const shouldKeep = (s === null || s === void 0 ? void 0 : s.associatedKey) !== String(prevKeyToRemove) && !(FirstNextScreen !== null && FirstNextScreen !== void 0 && (_FirstNextScreen$toRe = FirstNextScreen.toRemoveKeys) !== null && _FirstNextScreen$toRe !== void 0 && _FirstNextScreen$toRe.some(function (k) {
194
193
  return String(k) === String(s === null || s === void 0 ? void 0 : s.associatedKey);
195
- }));
194
+ })) || s.createdAt > insertedAt;
196
195
  return shouldKeep;
197
196
  });
198
197
  });
@@ -208,10 +207,10 @@ function _Transition(_ref, _containerRef) {
208
207
  const newWrapper = ChildrenWrapperFactory(function (_ref3) {
209
208
  let children = _ref3.children;
210
209
  return /*#__PURE__*/_react.default.createElement("div", propsContainer, children);
211
- }, key, propsContainer, [prevKeyToRemove].concat(_toConsumableArray((FirstNextScreen === null || FirstNextScreen === void 0 ? void 0 : FirstNextScreen.toRemoveKeys) || [])));
210
+ }, key, propsContainer, insertedAt, [prevKeyToRemove].concat(_toConsumableArray((FirstNextScreen === null || FirstNextScreen === void 0 ? void 0 : FirstNextScreen.toRemoveKeys) || [])));
212
211
  if (FirstNextScreen) return [newWrapper, FirstNextScreen || ChildrenWrapperFactory(function () {
213
212
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
214
- }, "", {})].concat(_toConsumableArray(restOfScreens));else return [newWrapper];
213
+ }, "", {}, insertedAt)].concat(_toConsumableArray(restOfScreens));else return [newWrapper];
215
214
  });
216
215
  } else if (prevStep.current < step) {
217
216
  var _prevChild$current3;
@@ -231,10 +230,10 @@ function _Transition(_ref, _containerRef) {
231
230
  var _nextScreenRef$curren;
232
231
  if (e.target !== e.currentTarget) return;
233
232
  if (transitionClasses.forward.elementEntering) (_nextScreenRef$curren = nextScreenRef.current) === null || _nextScreenRef$curren === void 0 ? void 0 : _nextScreenRef$curren.classList.remove(transitionClasses.forward.elementEntering);
234
- if (onDiscardStep) onDiscardStep(prevKeyToRemove);
233
+ if (onDiscardStep) onDiscardStep(prevKeyToRemove, insertedAt);
235
234
  setChildrenWrappers(function (screensAfterTheCurrentStepEntered) {
236
235
  const nextState = screensAfterTheCurrentStepEntered.filter(function (s) {
237
- const shouldMantain = (s === null || s === void 0 ? void 0 : s.associatedKey) !== String(prevKeyToRemove);
236
+ const shouldMantain = (s === null || s === void 0 ? void 0 : s.associatedKey) !== String(prevKeyToRemove) || s.createdAt > insertedAt;
238
237
  return shouldMantain;
239
238
  });
240
239
  return nextState;
@@ -251,10 +250,10 @@ function _Transition(_ref, _containerRef) {
251
250
  const newWrapper = ChildrenWrapperFactory(function (_ref4) {
252
251
  let children = _ref4.children;
253
252
  return /*#__PURE__*/_react.default.createElement("div", propsContainer, children);
254
- }, key, propsContainer);
253
+ }, key, propsContainer, insertedAt);
255
254
  return [].concat(_toConsumableArray(screensBeforeChangingStep.slice(0, lastIndex)), [lastWrapper || ChildrenWrapperFactory(function () {
256
255
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null);
257
- }, "fallback", {}), newWrapper]);
256
+ }, "fallback", {}, insertedAt), newWrapper]);
258
257
  });
259
258
  }
260
259
  return function () {
@@ -314,7 +313,7 @@ function _Transition(_ref, _containerRef) {
314
313
  return ((a === null || a === void 0 ? void 0 : a.key) || i) === (Wrapper === null || Wrapper === void 0 ? void 0 : Wrapper.associatedKey);
315
314
  });
316
315
  return /*#__PURE__*/_react.default.createElement(Wrapper, {
317
- key: Wrapper === null || Wrapper === void 0 ? void 0 : Wrapper.associatedKey
316
+ key: "".concat(Wrapper.associatedKey, " ").concat(Wrapper.createdAt)
318
317
  }, /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, childToRender));
319
318
  })));
320
319
  }
@@ -328,7 +327,11 @@ let TransitionAnimationTypes = /*#__PURE__*/function (TransitionAnimationTypes)
328
327
  TransitionAnimationTypes[TransitionAnimationTypes["CUSTOM"] = 6] = "CUSTOM";
329
328
  return TransitionAnimationTypes;
330
329
  }({});
330
+ /**
331
+ * Handles the transition between multiple children and recycling of elements
332
+ **/
331
333
  exports.TransitionAnimationTypes = TransitionAnimationTypes;
332
334
  const Transition = /*#__PURE__*/(0, _react.forwardRef)(_Transition);
333
335
  var _default = Transition;
334
- exports.default = _default;
336
+ exports.default = _default;
337
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfVHJhbnNpdGlvbk1vZHVsZSIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZXhjbHVkZWQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIl90eXBlb2YiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIl9leHRlbmRzIiwiYXNzaWduIiwiYmluZCIsInRhcmdldCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJzb3VyY2UiLCJhcHBseSIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJUeXBlRXJyb3IiLCJBcnJheSIsImlzQXJyYXkiLCJfYXJyYXlMaWtlVG9BcnJheSIsIm93bktleXMiLCJvYmplY3QiLCJlbnVtZXJhYmxlT25seSIsImtleXMiLCJnZXRPd25Qcm9wZXJ0eVN5bWJvbHMiLCJzeW1ib2xzIiwiZmlsdGVyIiwic3ltIiwiZW51bWVyYWJsZSIsInB1c2giLCJfb2JqZWN0U3ByZWFkIiwiZm9yRWFjaCIsIl9kZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvcnMiLCJkZWZpbmVQcm9wZXJ0aWVzIiwidmFsdWUiLCJfdG9Qcm9wZXJ0eUtleSIsImNvbmZpZ3VyYWJsZSIsIndyaXRhYmxlIiwiYXJnIiwiX3RvUHJpbWl0aXZlIiwiU3RyaW5nIiwiaW5wdXQiLCJoaW50IiwicHJpbSIsIlN5bWJvbCIsInRvUHJpbWl0aXZlIiwidW5kZWZpbmVkIiwicmVzIiwiTnVtYmVyIiwiX3RvQXJyYXkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfbm9uSXRlcmFibGVSZXN0IiwiaXRlciIsIml0ZXJhdG9yIiwiZnJvbSIsIl9zbGljZWRUb0FycmF5IiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwibyIsIm1pbkxlbiIsIm4iLCJ0b1N0cmluZyIsInNsaWNlIiwiY29uc3RydWN0b3IiLCJuYW1lIiwidGVzdCIsImxlbiIsImFycjIiLCJfaSIsIl9zIiwiX2UiLCJfeCIsIl9yIiwiX2FyciIsIl9uIiwiX2QiLCJuZXh0IiwiZG9uZSIsImVyciIsInJldHVybiIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllcyIsImV4Y2x1ZGVkIiwiX29iamVjdFdpdGhvdXRQcm9wZXJ0aWVzTG9vc2UiLCJzb3VyY2VTeW1ib2xLZXlzIiwiaW5kZXhPZiIsInByb3BlcnR5SXNFbnVtZXJhYmxlIiwic291cmNlS2V5cyIsIlRyYW5zaXRpb25DbGFzc2VzIiwidHlwZSIsIlRyYW5zaXRpb25BbmltYXRpb25UeXBlcyIsIkNPSU5fRkxJUCIsImJhY2t3YXJkIiwiZWxlbWVudEV4aXRpbmciLCJTdHlsZXMiLCJmbGlwQm90dG9tVXBPdXQiLCJlbGVtZW50RW50ZXJpbmciLCJmbGlwQm90dG9tVXBJbiIsImZvcndhcmQiLCJGQURFIiwiZmFkZU91dEFic29sdXRlIiwiZmFkZUluRGVsYXllZCIsIlNMSURFIiwiZW50cmFuY2VMZWZ0IiwiZXhpdExlZnQiLCJQT1BfRlJPTV9DTElDS19PUklHSU4iLCJQT1BfRlJPTV9FTEVNRU5UX0lEIiwiZmFkZUluIiwic2NhbGVPdXQiLCJzY2FsZUluIiwiZmFkZU91dCIsIk1BU0siLCJzdHViRW50ZXJpbmciLCJzdHViIiwiQ2hpbGRyZW5XcmFwcGVyRmFjdG9yeSIsImZ1bmMiLCJleHRlcm5hbFByb3BzQ29udGFpbmVyIiwidGltZXN0YW1wIiwidG9SZW1vdmVLZXlzIiwiY3JlYXRlZEF0IiwiYXNzb2NpYXRlZEtleSIsImV4dGVybmFsUHJvcHMiLCJfVHJhbnNpdGlvbiIsIl9yZWYiLCJfY29udGFpbmVyUmVmIiwic3RlcCIsImNvbnRlbnRTdHlsZSIsIl9yZWYkY29udGVudENsYXNzTmFtZSIsImNvbnRlbnRDbGFzc05hbWUiLCJjaGlsZHJlbiIsImNsYXNzTmFtZSIsIm9uRGlzY2FyZFN0ZXAiLCJfcmVmJGxvY2tUcmFuc2l0aW9uV2kiLCJsb2NrVHJhbnNpdGlvbldpZHRoIiwiX3JlZiRsb2NrVHJhbnNpdGlvbkhlIiwibG9ja1RyYW5zaXRpb25IZWlnaHQiLCJwcm9wcyIsImNvbnRhaW5lclJlZiIsInVzZU1lbW8iLCJjcmVhdGVSZWYiLCJwcmVUcmFuc2l0aW9uRGV0YWlscyIsInVzZVJlZiIsInRyYW5zZm9ybU9yaWdpbiIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX2NoaWxkcmVuJHN0ZXAiLCJzdHlsZSIsIl9yZWYyIiwiY3JlYXRlRWxlbWVudCIsIkRhdGUiLCJub3ciLCJfdXNlU3RhdGUyIiwiY2hpbGRyZW5XcmFwcGVycyIsInNldENoaWxkcmVuV3JhcHBlcnMiLCJwcmV2U3RlcCIsInByZXZDaGlsZCIsInVzZUVmZmVjdCIsImN1cnJlbnQiLCJfY2hpbGRyZW4kc3RlcDIiLCJfcHJldkNoaWxkJGN1cnJlbnQiLCJfY2hpbGRyZW4kc3RlcDMiLCJvdmVyZmxvdyIsInRyYW5zaXRpb25DbGFzc2VzIiwidHJhbnNpdGlvblR5cGUiLCJDVVNUT00iLCJjb25maWciLCJ3aWR0aCIsImNvbmNhdCIsImNsaWVudFdpZHRoIiwiaGVpZ2h0IiwiY2xpZW50SGVpZ2h0IiwidHJhbnNpdGlvbk1hc2siLCJtYXNrRmFjdG9yeSIsImluc2VydGVkQXQiLCJfcHJldkNoaWxkJGN1cnJlbnQyIiwic3RlcFRvUmVtb3ZlIiwicHJldktleVRvUmVtb3ZlIiwic2NyZWVuc0JlZm9yZUNoYW5naW5nU3RlcCIsImVudGVyaW5nU2NyZWVuUmVmIiwiX3NjcmVlbnNCZWZvcmVDaGFuZ2luIiwiYSIsIl9zY3JlZW5zQmVmb3JlQ2hhbmdpbjIiLCJGaXJzdE5leHRTY3JlZW4iLCJyZXN0T2ZTY3JlZW5zIiwiV2Via2l0TWFza0ltYWdlIiwiYW5pbWF0aW9uRW5kTGlzdGVuZXIiLCJldmVudCIsIl9lbnRlcmluZ1NjcmVlblJlZiRjdSIsIl9lbnRlcmluZ1NjcmVlblJlZiRjdTIiLCJjdXJyZW50VGFyZ2V0IiwiaXNBbmltYXRpb25Gcm9tRXhwZWN0ZWRTdGF0ZSIsImNsYXNzTGlzdCIsImNvbnRhaW5zIiwicmVtb3ZlIiwic2NyZWVuc0FmdGVyVGhlQ3VycmVudFN0ZXBFbnRlcmVkIiwicyIsIl9GaXJzdE5leHRTY3JlZW4kdG9SZSIsInNob3VsZEtlZXAiLCJzb21lIiwiayIsInJlbW92ZUV2ZW50TGlzdGVuZXIiLCJwcm9wc0NvbnRhaW5lciIsInJlZiIsIm9uQW5pbWF0aW9uRW5kIiwibmV3V3JhcHBlciIsIl9yZWYzIiwiRnJhZ21lbnQiLCJfcHJldkNoaWxkJGN1cnJlbnQzIiwic3RlcFRvRGVsZXRlIiwibGFzdEluZGV4IiwibGFzdFdyYXBwZXIiLCJuZXh0U2NyZWVuUmVmIiwiZSIsIl9uZXh0U2NyZWVuUmVmJGN1cnJlbiIsIm5leHRTdGF0ZSIsInNob3VsZE1hbnRhaW4iLCJfcmVmNCIsImVsZW1lbnQiLCJkb2N1bWVudCIsInF1ZXJ5U2VsZWN0b3IiLCJlbGVtZW50SWQiLCJfcmVmNSIsIm9mZnNldFgiLCJjbGllbnRMZWZ0Iiwib2Zmc2V0TGVmdCIsIm9mZnNldFkiLCJjbGllbnRUb3AiLCJvZmZzZXRUb3AiLCJwZXJjZW50WCIsInBlcmNlbnRZIiwicHJvcHNUb1NwcmVhZCIsIm9uQ2xpY2siLCJfZSRjdXJyZW50VGFyZ2V0IiwiY2xpZW50WCIsImNsaWVudFkiLCJzZWN0aW9uIiwibWFwIiwiV3JhcHBlciIsImNoaWxkVG9SZW5kZXIiLCJmaW5kIiwiZXhwb3J0cyIsIlRyYW5zaXRpb24iLCJmb3J3YXJkUmVmIiwiX2RlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9UcmFuc2l0aW9uL1RyYW5zaXRpb24udHN4Il0sInNvdXJjZXNDb250ZW50IjpbImltcG9ydCBSZWFjdCwge1xuICBBbmltYXRpb25FdmVudCxcbiAgY3JlYXRlUmVmLFxuICBDU1NQcm9wZXJ0aWVzLFxuICBEZXRhaWxlZEhUTUxQcm9wcyxcbiAgRm9yd2FyZGVkUmVmLFxuICBmb3J3YXJkUmVmLFxuICBLZXksXG4gIE11dGFibGVSZWZPYmplY3QsXG4gIFJlYWN0RWxlbWVudCxcbiAgdXNlRWZmZWN0LFxuICB1c2VNZW1vLFxuICB1c2VSZWYsXG4gIHVzZVN0YXRlLFxufSBmcm9tIFwicmVhY3RcIjtcbmltcG9ydCBTdHlsZXMgZnJvbSBcIi4vVHJhbnNpdGlvbi5tb2R1bGUuc2Nzc1wiO1xuXG5leHBvcnQgdHlwZSBUcmFuc2l0aW9uVHlwZURlZmluaXRpb25zID1cbiAgfCB7XG4gICAgICB0cmFuc2l0aW9uVHlwZT86XG4gICAgICAgIHwgVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLlNMSURFXG4gICAgICAgIHwgVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLlBPUF9GUk9NX0NMSUNLX09SSUdJTlxuICAgICAgICB8IFRyYW5zaXRpb25BbmltYXRpb25UeXBlcy5GQURFXG4gICAgICAgIHwgVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLkNPSU5fRkxJUDtcbiAgICB9XG4gIHwge1xuICAgICAgdHJhbnNpdGlvblR5cGU/OiBUcmFuc2l0aW9uQW5pbWF0aW9uVHlwZXMuUE9QX0ZST01fRUxFTUVOVF9JRDtcbiAgICAgIGVsZW1lbnRJZDogc3RyaW5nO1xuICAgIH1cbiAgfCB7XG4gICAgICB0cmFuc2l0aW9uVHlwZT86IFRyYW5zaXRpb25BbmltYXRpb25UeXBlcy5NQVNLO1xuICAgICAgLyoqXG4gICAgICAgKiBJdCBwcm92aWRlcyB0aGUgdHJhbnNpdGlvbiBjb250YWluZXIgc28geW91IGNhbiBjcmVhdGUgYSBkeW5hbWljIHN2ZyB0byBtYXNrIHdpdGhcbiAgICAgICAqL1xuICAgICAgbWFza0ZhY3Rvcnk6IChjb250YWluZXI6IEhUTUxEaXZFbGVtZW50KSA9PiBzdHJpbmc7XG4gICAgfVxuICB8IHtcbiAgICAgIHRyYW5zaXRpb25UeXBlPzogVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLkNVU1RPTTtcbiAgICAgIGNvbmZpZzogUmV0dXJuVHlwZTx0eXBlb2YgVHJhbnNpdGlvbkNsYXNzZXM+O1xuICAgIH07XG5cbmV4cG9ydCB0eXBlIFRyYW5zaXRpb25Qcm9wcyA9IHtcbiAgc3RlcDogbnVtYmVyO1xuICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gIGNvbnRlbnRTdHlsZT86IFJlYWN0LkNTU1Byb3BlcnRpZXM7XG4gIGNvbnRlbnRDbGFzc05hbWU/OiBzdHJpbmc7XG4gIGNoaWxkcmVuOiAoUmVhY3QuUmVhY3RFbGVtZW50IHwgdW5kZWZpbmVkKVtdO1xuICBvbkRpc2NhcmRTdGVwPzogKGRpc2NhcmRlZEtleTogUmVhY3QuS2V5LCBzdGFydGVkQW5pbWF0aW9uQXQ6IG51bWJlcikgPT4gdm9pZDtcbiAgbG9ja1RyYW5zaXRpb25XaWR0aD86IGJvb2xlYW47XG4gIGxvY2tUcmFuc2l0aW9uSGVpZ2h0PzogYm9vbGVhbjtcbn0gJiBUcmFuc2l0aW9uVHlwZURlZmluaXRpb25zICZcbiAgT21pdDxcbiAgICBEZXRhaWxlZEhUTUxQcm9wczxSZWFjdC5IVE1MQXR0cmlidXRlczxIVE1MRGl2RWxlbWVudD4sIGFueT4sXG4gICAgXCJjbGFzc05hbWVcIiB8IFwiY2hpbGRyZW5cIlxuICA+O1xuXG5mdW5jdGlvbiBUcmFuc2l0aW9uQ2xhc3NlcyhcbiAgdHlwZTogTm9uTnVsbGFibGU8XG4gICAgRXhjbHVkZTxUcmFuc2l0aW9uUHJvcHNbXCJ0cmFuc2l0aW9uVHlwZVwiXSwgVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLkNVU1RPTT5cbiAgPlxuKToge1xuICAvKipcbiAgICogQXBwbGllZCB0byB0aGUgZWxlbWVudCB0aGF0IHdhcyBub3QgdmlzaWJsZSBhbmQgaXMgbm93IGVudGVyaW5nIHRoZSBzY3JlZW5cbiAgICovXG4gIGJhY2t3YXJkOiB7XG4gICAgZWxlbWVudEVudGVyaW5nOiBzdHJpbmc7XG4gICAgZWxlbWVudEV4aXRpbmc6IHN0cmluZztcbiAgfTtcbiAgLyoqXG4gICAqIEFwcGxpZWQgdG8gdGhlIGVsZW1lbnQgdGhhdCB3YXMgdmlzaWJsZSBhbmQgbm93IGlzIGV4aXRpbmcgdGhlIHNjcmVlblxuICAgKi9cbiAgZm9yd2FyZDoge1xuICAgIGVsZW1lbnRFbnRlcmluZzogc3RyaW5nO1xuICAgIGVsZW1lbnRFeGl0aW5nOiBzdHJpbmc7XG4gIH07XG59IHtcbiAgc3dpdGNoICh0eXBlKSB7XG4gICAgY2FzZSBUcmFuc2l0aW9uQW5pbWF0aW9uVHlwZXMuQ09JTl9GTElQOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYmFja3dhcmQ6IHtcbiAgICAgICAgICBlbGVtZW50RXhpdGluZzogU3R5bGVzLmZsaXBCb3R0b21VcE91dCxcbiAgICAgICAgICBlbGVtZW50RW50ZXJpbmc6IFN0eWxlcy5mbGlwQm90dG9tVXBJbixcbiAgICAgICAgfSxcbiAgICAgICAgZm9yd2FyZDoge1xuICAgICAgICAgIGVsZW1lbnRFeGl0aW5nOiBTdHlsZXMuZmxpcEJvdHRvbVVwT3V0LFxuICAgICAgICAgIGVsZW1lbnRFbnRlcmluZzogU3R5bGVzLmZsaXBCb3R0b21VcEluLFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICBjYXNlIFRyYW5zaXRpb25BbmltYXRpb25UeXBlcy5GQURFOlxuICAgICAgcmV0dXJuIHtcbiAgICAgICAgYmFja3dhcmQ6IHtcbiAgICAgICAgICBlbGVtZW50RXhpdGluZzogU3R5bGVzLmZhZGVPdXRBYnNvbHV0ZSxcbiAgICAgICAgICBlbGVtZW50RW50ZXJpbmc6IFN0eWxlcy5mYWRlSW5EZWxheWVkLFxuICAgICAgICB9LFxuICAgICAgICBmb3J3YXJkOiB7XG4gICAgICAgICAgZWxlbWVudEV4aXRpbmc6IFN0eWxlcy5mYWRlT3V0QWJzb2x1dGUsXG4gICAgICAgICAgZWxlbWVudEVudGVyaW5nOiBTdHlsZXMuZmFkZUluRGVsYXllZCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgY2FzZSBUcmFuc2l0aW9uQW5pbWF0aW9uVHlwZXMuU0xJREU6XG4gICAgICByZXR1cm4ge1xuICAgICAgICBiYWNrd2FyZDoge1xuICAgICAgICAgIGVsZW1lbnRFbnRlcmluZzogU3R5bGVzLmVudHJhbmNlTGVmdCxcbiAgICAgICAgICBlbGVtZW50RXhpdGluZzogXCJcIixcbiAgICAgICAgfSxcbiAgICAgICAgZm9yd2FyZDoge1xuICAgICAgICAgIGVsZW1lbnRFbnRlcmluZzogXCJcIixcbiAgICAgICAgICBlbGVtZW50RXhpdGluZzogU3R5bGVzLmV4aXRMZWZ0LFxuICAgICAgICB9LFxuICAgICAgfTtcbiAgICBjYXNlIFRyYW5zaXRpb25BbmltYXRpb25UeXBlcy5QT1BfRlJPTV9DTElDS19PUklHSU46XG4gICAgY2FzZSBUcmFuc2l0aW9uQW5pbWF0aW9uVHlwZXMuUE9QX0ZST01fRUxFTUVOVF9JRDpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGJhY2t3YXJkOiB7XG4gICAgICAgICAgZWxlbWVudEVudGVyaW5nOiBTdHlsZXMuZmFkZUluLFxuICAgICAgICAgIGVsZW1lbnRFeGl0aW5nOiBTdHlsZXMuc2NhbGVPdXQsXG4gICAgICAgIH0sXG4gICAgICAgIGZvcndhcmQ6IHtcbiAgICAgICAgICBlbGVtZW50RW50ZXJpbmc6IFN0eWxlcy5zY2FsZUluLFxuICAgICAgICAgIGVsZW1lbnRFeGl0aW5nOiBTdHlsZXMuZmFkZU91dCxcbiAgICAgICAgfSxcbiAgICAgIH07XG4gICAgY2FzZSBUcmFuc2l0aW9uQW5pbWF0aW9uVHlwZXMuTUFTSzpcbiAgICAgIHJldHVybiB7XG4gICAgICAgIGJhY2t3YXJkOiB7XG4gICAgICAgICAgZWxlbWVudEVudGVyaW5nOiBTdHlsZXMuc3R1YkVudGVyaW5nLFxuICAgICAgICAgIGVsZW1lbnRFeGl0aW5nOiBTdHlsZXMuc3R1YixcbiAgICAgICAgfSxcbiAgICAgICAgZm9yd2FyZDoge1xuICAgICAgICAgIGVsZW1lbnRFbnRlcmluZzogU3R5bGVzLnN0dWJFbnRlcmluZyxcbiAgICAgICAgICBlbGVtZW50RXhpdGluZzogU3R5bGVzLnN0dWIsXG4gICAgICAgIH0sXG4gICAgICB9O1xuICB9XG59XG5cbnR5cGUgQ2hpbGRyZW5XcmFwcGVyID0gKChwcm9wczoge1xuICBjaGlsZHJlbjogVHJhbnNpdGlvblByb3BzW1wiY2hpbGRyZW5cIl1bbnVtYmVyXTtcbn0pID0+IFJlYWN0RWxlbWVudCkgJiB7XG4gIGNyZWF0ZWRBdDogbnVtYmVyO1xuICBhc3NvY2lhdGVkS2V5OiBLZXk7XG4gIHRvUmVtb3ZlS2V5cz86IEtleVtdO1xuICBleHRlcm5hbFByb3BzOiB7IFtrOiBzdHJpbmddOiBhbnkgfTtcbn07XG5cbmZ1bmN0aW9uIENoaWxkcmVuV3JhcHBlckZhY3RvcnkoXG4gIGZ1bmM6IChwOiB7IGNoaWxkcmVuOiBUcmFuc2l0aW9uUHJvcHNbXCJjaGlsZHJlblwiXSB9KSA9PiBSZWFjdEVsZW1lbnQsXG4gIGtleTogS2V5LFxuICBleHRlcm5hbFByb3BzQ29udGFpbmVyOiB7IFtrOiBzdHJpbmddOiBhbnkgfSxcbiAgLyoqIFRoaXMgaXMgdXNlZCB0byBwcmV2ZW50IG5ld2VyIFwiZHVwbGljYXRlZFwiIGtleXMgZnJvbSBiZWluZyByZW1vdmVkIGFmdGVyIHRoZSBuZXcgZWxlbWVudCBmaW5pc2hlZCBhbmltYXRpb24gKi9cbiAgdGltZXN0YW1wOiBudW1iZXIsXG4gIHRvUmVtb3ZlS2V5cz86IEtleVtdXG4pOiBDaGlsZHJlbldyYXBwZXIge1xuICAoZnVuYyBhcyBhbnkpLmNyZWF0ZWRBdCA9IHRpbWVzdGFtcDtcbiAgKGZ1bmMgYXMgYW55KS5hc3NvY2lhdGVkS2V5ID0ga2V5O1xuICAoZnVuYyBhcyBhbnkpLnRvUmVtb3ZlS2V5cyA9IHRvUmVtb3ZlS2V5cztcbiAgKGZ1bmMgYXMgYW55KS5leHRlcm5hbFByb3BzID0gZXh0ZXJuYWxQcm9wc0NvbnRhaW5lcjtcbiAgcmV0dXJuIGZ1bmMgYXMgdW5rbm93biBhcyBDaGlsZHJlbldyYXBwZXI7XG59XG5mdW5jdGlvbiBfVHJhbnNpdGlvbihcbiAge1xuICAgIHN0ZXAsXG4gICAgY29udGVudFN0eWxlLFxuICAgIGNvbnRlbnRDbGFzc05hbWUgPSBcIlwiLFxuICAgIGNoaWxkcmVuLFxuICAgIGNsYXNzTmFtZSxcbiAgICBvbkRpc2NhcmRTdGVwLFxuICAgIGxvY2tUcmFuc2l0aW9uV2lkdGggPSBmYWxzZSxcbiAgICBsb2NrVHJhbnNpdGlvbkhlaWdodCA9IGZhbHNlLFxuICAgIC4uLnByb3BzXG4gIH06IFRyYW5zaXRpb25Qcm9wcyxcbiAgX2NvbnRhaW5lclJlZjogRm9yd2FyZGVkUmVmPEhUTUxEaXZFbGVtZW50IHwgbnVsbD5cbikge1xuICBjb25zdCBjb250YWluZXJSZWYgPSB1c2VNZW1vKFxuICAgICgpID0+XG4gICAgICAoX2NvbnRhaW5lclJlZiBhcyBNdXRhYmxlUmVmT2JqZWN0PEhUTUxEaXZFbGVtZW50IHwgbnVsbD4pIHx8IGNyZWF0ZVJlZigpLFxuICAgIFtfY29udGFpbmVyUmVmXVxuICApO1xuICBjb25zdCBwcmVUcmFuc2l0aW9uRGV0YWlscyA9IHVzZVJlZjxDU1NQcm9wZXJ0aWVzPih7XG4gICAgdHJhbnNmb3JtT3JpZ2luOiBcImluaXRpYWxcIixcbiAgfSk7XG4gIGNvbnN0IFtjaGlsZHJlbldyYXBwZXJzLCBzZXRDaGlsZHJlbldyYXBwZXJzXSA9IHVzZVN0YXRlPFxuICAgIChDaGlsZHJlbldyYXBwZXIgfCB1bmRlZmluZWQpW11cbiAgPigoKSA9PiB7XG4gICAgY29uc3QgZXh0ZXJuYWxQcm9wcyA9IHtcbiAgICAgIFwiZGF0YS10ZXN0aWRcIjogXCJ0cmFuc2l0aW9uLWNvbnRhaW5lclwiLFxuICAgICAga2V5OiBTdHJpbmcoY2hpbGRyZW5bc3RlcF0/LmtleSB8fCBzdGVwKSxcbiAgICAgIHN0eWxlOiBjb250ZW50U3R5bGUsXG4gICAgICBjbGFzc05hbWU6IGNvbnRlbnRDbGFzc05hbWUsXG4gICAgfTtcbiAgICBjb25zdCBmdW5jID0gQ2hpbGRyZW5XcmFwcGVyRmFjdG9yeShcbiAgICAgICh7IGNoaWxkcmVuIH0pID0+IDxkaXYgey4uLmV4dGVybmFsUHJvcHN9PntjaGlsZHJlbn08L2Rpdj4sXG4gICAgICBjaGlsZHJlbltzdGVwXSEua2V5IHx8IHN0ZXAsXG4gICAgICBleHRlcm5hbFByb3BzLFxuICAgICAgRGF0ZS5ub3coKSxcbiAgICAgIFtdXG4gICAgKTtcbiAgICByZXR1cm4gW2Z1bmNdO1xuICB9KTtcblxuICBjb25zdCBwcmV2U3RlcCA9IHVzZVJlZihzdGVwKTtcbiAgY29uc3QgcHJldkNoaWxkID0gdXNlUmVmKGNoaWxkcmVuW3N0ZXBdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4gKCkgPT4ge1xuICAgIHByZXZDaGlsZC5jdXJyZW50ID0gY2hpbGRyZW5bc3RlcF07XG4gIH0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgY29udGFpbmVyUmVmLmN1cnJlbnQhLnN0eWxlLm92ZXJmbG93ID0gXCJoaWRkZW5cIjtcbiAgICBjb25zdCB0cmFuc2l0aW9uQ2xhc3NlcyA9XG4gICAgICBwcm9wcy50cmFuc2l0aW9uVHlwZSA9PT0gVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLkNVU1RPTVxuICAgICAgICA/IHByb3BzLmNvbmZpZ1xuICAgICAgICA6IFRyYW5zaXRpb25DbGFzc2VzKFxuICAgICAgICAgICAgcHJvcHMudHJhbnNpdGlvblR5cGUgfHwgVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLlNMSURFXG4gICAgICAgICAgKTtcblxuICAgIGlmIChcbiAgICAgIHByZXZDaGlsZC5jdXJyZW50ICE9PSBudWxsICYmXG4gICAgICBjaGlsZHJlbltzdGVwXT8ua2V5ID09PSBwcmV2Q2hpbGQuY3VycmVudD8ua2V5IC8vIEknbSByZW5kZXJpbmcgdGhlIHNhbWUgc2NyZWVuXG4gICAgKSB7XG4gICAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgICBwcmV2U3RlcC5jdXJyZW50ID0gc3RlcDtcbiAgICAgIH07XG4gICAgfVxuXG4gICAgY29uc3Qga2V5ID0gY2hpbGRyZW5bc3RlcF0/LmtleSB8fCBzdGVwO1xuXG4gICAgaWYgKHByZXZTdGVwLmN1cnJlbnQgIT09IHN0ZXAgJiYgbG9ja1RyYW5zaXRpb25XaWR0aClcbiAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50IS5zdHlsZS53aWR0aCA9IGAke1xuICAgICAgICBjb250YWluZXJSZWYuY3VycmVudCEuY2xpZW50V2lkdGhcbiAgICAgIH1weGA7XG5cbiAgICBpZiAocHJldlN0ZXAuY3VycmVudCAhPT0gc3RlcCAmJiBsb2NrVHJhbnNpdGlvbkhlaWdodClcbiAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50IS5zdHlsZS5oZWlnaHQgPSBgJHtcbiAgICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQhLmNsaWVudEhlaWdodFxuICAgICAgfXB4YDtcbiAgICBjb25zdCB0cmFuc2l0aW9uTWFzayA9XG4gICAgICBwcm9wcy50cmFuc2l0aW9uVHlwZSA9PT0gVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLk1BU0tcbiAgICAgICAgPyBwcm9wcy5tYXNrRmFjdG9yeShjb250YWluZXJSZWYuY3VycmVudCEpXG4gICAgICAgIDogXCJcIjtcbiAgICBjb25zdCBpbnNlcnRlZEF0ID0gRGF0ZS5ub3coKTtcblxuICAgIC8qKiBUaGlzIHJ1bnMgb24gYmFja3dhcmRzICovXG4gICAgaWYgKHByZXZTdGVwLmN1cnJlbnQgPiBzdGVwKSB7XG4gICAgICBjb25zdCBzdGVwVG9SZW1vdmUgPSBwcmV2U3RlcC5jdXJyZW50O1xuICAgICAgY29uc3QgcHJldktleVRvUmVtb3ZlID0gcHJldkNoaWxkLmN1cnJlbnQ/LmtleSB8fCBzdGVwVG9SZW1vdmU7XG4gICAgICBzZXRDaGlsZHJlbldyYXBwZXJzKChzY3JlZW5zQmVmb3JlQ2hhbmdpbmdTdGVwKSA9PiB7XG4gICAgICAgIGNvbnN0IGVudGVyaW5nU2NyZWVuUmVmID0gY3JlYXRlUmVmPEhUTUxEaXZFbGVtZW50PigpO1xuICAgICAgICBjb25zdCBbRmlyc3ROZXh0U2NyZWVuLCAuLi5yZXN0T2ZTY3JlZW5zXSA9XG4gICAgICAgICAgc2NyZWVuc0JlZm9yZUNoYW5naW5nU3RlcC5maWx0ZXIoXG4gICAgICAgICAgICAoYSkgPT4gYT8uYXNzb2NpYXRlZEtleSAhPT0gU3RyaW5nKGtleSlcbiAgICAgICAgICApO1xuXG4gICAgICAgIGlmIChGaXJzdE5leHRTY3JlZW4pIHtcbiAgICAgICAgICBPYmplY3QuYXNzaWduKEZpcnN0TmV4dFNjcmVlbi5leHRlcm5hbFByb3BzLCB7XG4gICAgICAgICAgICBcImRhdGEtdGVzdGlkXCI6IFwidHJhbnNpdGlvbi1jb250YWluZXJcIixcbiAgICAgICAgICAgIHN0eWxlOiB7IC4uLmNvbnRlbnRTdHlsZSwgV2Via2l0TWFza0ltYWdlOiB0cmFuc2l0aW9uTWFzayB9LFxuICAgICAgICAgICAgY2xhc3NOYW1lOiBgJHt0cmFuc2l0aW9uQ2xhc3Nlcy5iYWNrd2FyZC5lbGVtZW50RXhpdGluZ31gLFxuICAgICAgICAgIH0pO1xuICAgICAgICB9XG4gICAgICAgIGZ1bmN0aW9uIGFuaW1hdGlvbkVuZExpc3RlbmVyKGV2ZW50OiBBbmltYXRpb25FdmVudDxIVE1MRGl2RWxlbWVudD4pIHtcbiAgICAgICAgICBpZiAoZXZlbnQudGFyZ2V0ICE9PSBldmVudC5jdXJyZW50VGFyZ2V0KSByZXR1cm47XG5cbiAgICAgICAgICBjb25zdCBpc0FuaW1hdGlvbkZyb21FeHBlY3RlZFN0YXRlID1cbiAgICAgICAgICAgIGVudGVyaW5nU2NyZWVuUmVmLmN1cnJlbnQ/LmNsYXNzTGlzdC5jb250YWlucyhcbiAgICAgICAgICAgICAgdHJhbnNpdGlvbkNsYXNzZXMuYmFja3dhcmQuZWxlbWVudEVudGVyaW5nXG4gICAgICAgICAgICApO1xuICAgICAgICAgIGVudGVyaW5nU2NyZWVuUmVmLmN1cnJlbnQ/LmNsYXNzTGlzdC5yZW1vdmUoXG4gICAgICAgICAgICB0cmFuc2l0aW9uQ2xhc3Nlcy5iYWNrd2FyZC5lbGVtZW50RW50ZXJpbmdcbiAgICAgICAgICApO1xuICAgICAgICAgIHNldENoaWxkcmVuV3JhcHBlcnMoKHNjcmVlbnNBZnRlclRoZUN1cnJlbnRTdGVwRW50ZXJlZCkgPT4ge1xuICAgICAgICAgICAgaWYgKG9uRGlzY2FyZFN0ZXApIHtcbiAgICAgICAgICAgICAgaWYgKGlzQW5pbWF0aW9uRnJvbUV4cGVjdGVkU3RhdGUpXG4gICAgICAgICAgICAgICAgb25EaXNjYXJkU3RlcChwcmV2S2V5VG9SZW1vdmUsIGluc2VydGVkQXQpO1xuICAgICAgICAgICAgICBpZiAoRmlyc3ROZXh0U2NyZWVuICYmIEZpcnN0TmV4dFNjcmVlbi50b1JlbW92ZUtleXMpXG4gICAgICAgICAgICAgICAgRmlyc3ROZXh0U2NyZWVuLnRvUmVtb3ZlS2V5cy5mb3JFYWNoKG9uRGlzY2FyZFN0ZXApO1xuICAgICAgICAgICAgfVxuICAgICAgICAgICAgcmV0dXJuIHNjcmVlbnNBZnRlclRoZUN1cnJlbnRTdGVwRW50ZXJlZC5maWx0ZXIoKHMpID0+IHtcbiAgICAgICAgICAgICAgY29uc3Qgc2hvdWxkS2VlcCA9XG4gICAgICAgICAgICAgICAgKHM/LmFzc29jaWF0ZWRLZXkgIT09IFN0cmluZyhwcmV2S2V5VG9SZW1vdmUpICYmXG4gICAgICAgICAgICAgICAgICAhRmlyc3ROZXh0U2NyZWVuPy50b1JlbW92ZUtleXM/LnNvbWUoXG4gICAgICAgICAgICAgICAgICAgIChrKSA9PiBTdHJpbmcoaykgPT09IFN0cmluZyhzPy5hc3NvY2lhdGVkS2V5KVxuICAgICAgICAgICAgICAgICAgKSkgfHxcbiAgICAgICAgICAgICAgICBzIS5jcmVhdGVkQXQhID4gaW5zZXJ0ZWRBdDtcbiAgICAgICAgICAgICAgcmV0dXJuIHNob3VsZEtlZXA7XG4gICAgICAgICAgICB9KTtcbiAgICAgICAgICB9KTtcbiAgICAgICAgICBldmVudC5jdXJyZW50VGFyZ2V0LnJlbW92ZUV2ZW50TGlzdGVuZXIoXG4gICAgICAgICAgICBcImFuaW1hdGlvbmVuZFwiLFxuICAgICAgICAgICAgYW5pbWF0aW9uRW5kTGlzdGVuZXIgYXMgYW55XG4gICAgICAgICAgKTtcbiAgICAgICAgfVxuICAgICAgICBjb25zdCBwcm9wc0NvbnRhaW5lciA9IHtcbiAgICAgICAgICByZWY6IGVudGVyaW5nU2NyZWVuUmVmLFxuICAgICAgICAgIFwiZGF0YS10ZXN0aWRcIjogXCJ0cmFuc2l0aW9uLWNvbnRhaW5lclwiLFxuICAgICAgICAgIGtleSxcbiAgICAgICAgICBjbGFzc05hbWU6IGAke3RyYW5zaXRpb25DbGFzc2VzLmJhY2t3YXJkLmVsZW1lbnRFbnRlcmluZ30gJHtjb250ZW50Q2xhc3NOYW1lfWAsXG4gICAgICAgICAgc3R5bGU6IHtcbiAgICAgICAgICAgIC4uLmNvbnRlbnRTdHlsZSxcbiAgICAgICAgICB9LFxuICAgICAgICAgIG9uQW5pbWF0aW9uRW5kOiBhbmltYXRpb25FbmRMaXN0ZW5lcixcbiAgICAgICAgfTtcbiAgICAgICAgY29uc3QgbmV3V3JhcHBlciA9IENoaWxkcmVuV3JhcHBlckZhY3RvcnkoXG4gICAgICAgICAgKHsgY2hpbGRyZW4gfSkgPT4ge1xuICAgICAgICAgICAgcmV0dXJuIDxkaXYgey4uLnByb3BzQ29udGFpbmVyfT57Y2hpbGRyZW59PC9kaXY+O1xuICAgICAgICAgIH0sXG4gICAgICAgICAga2V5LFxuICAgICAgICAgIHByb3BzQ29udGFpbmVyLFxuICAgICAgICAgIGluc2VydGVkQXQsXG4gICAgICAgICAgW3ByZXZLZXlUb1JlbW92ZSwgLi4uKEZpcnN0TmV4dFNjcmVlbj8udG9SZW1vdmVLZXlzIHx8IFtdKV1cbiAgICAgICAgKTtcbiAgICAgICAgaWYgKEZpcnN0TmV4dFNjcmVlbilcbiAgICAgICAgICByZXR1cm4gW1xuICAgICAgICAgICAgbmV3V3JhcHBlcixcbiAgICAgICAgICAgIEZpcnN0TmV4dFNjcmVlbiB8fFxuICAgICAgICAgICAgICBDaGlsZHJlbldyYXBwZXJGYWN0b3J5KFxuICAgICAgICAgICAgICAgICgpID0+IDxSZWFjdC5GcmFnbWVudCAvPixcbiAgICAgICAgICAgICAgICBcIlwiLFxuICAgICAgICAgICAgICAgIHt9LFxuICAgICAgICAgICAgICAgIGluc2VydGVkQXRcbiAgICAgICAgICAgICAgKSxcbiAgICAgICAgICAgIC4uLnJlc3RPZlNjcmVlbnMsXG4gICAgICAgICAgXTtcbiAgICAgICAgZWxzZSByZXR1cm4gW25ld1dyYXBwZXJdO1xuICAgICAgfSk7XG4gICAgfSBlbHNlIGlmIChwcmV2U3RlcC5jdXJyZW50IDwgc3RlcCkge1xuICAgICAgY29uc3Qgc3RlcFRvRGVsZXRlID0gcHJldlN0ZXAuY3VycmVudDtcbiAgICAgIGNvbnN0IHByZXZLZXlUb1JlbW92ZSA9IFN0cmluZyhwcmV2Q2hpbGQuY3VycmVudD8ua2V5IHx8IHN0ZXBUb0RlbGV0ZSk7XG4gICAgICBzZXRDaGlsZHJlbldyYXBwZXJzKChzY3JlZW5zQmVmb3JlQ2hhbmdpbmdTdGVwKSA9PiB7XG4gICAgICAgIGNvbnN0IGxhc3RJbmRleCA9IHNjcmVlbnNCZWZvcmVDaGFuZ2luZ1N0ZXAubGVuZ3RoIC0gMTtcbiAgICAgICAgY29uc3QgbGFzdFdyYXBwZXIgPSBzY3JlZW5zQmVmb3JlQ2hhbmdpbmdTdGVwW2xhc3RJbmRleF07XG4gICAgICAgIGNvbnN0IG5leHRTY3JlZW5SZWYgPSBjcmVhdGVSZWY8SFRNTERpdkVsZW1lbnQ+KCk7XG4gICAgICAgIGlmIChsYXN0V3JhcHBlcikge1xuICAgICAgICAgIE9iamVjdC5hc3NpZ24obGFzdFdyYXBwZXIuZXh0ZXJuYWxQcm9wcywge1xuICAgICAgICAgICAgXCJkYXRhLXRlc3RpZFwiOiBcInRyYW5zaXRpb24tY29udGFpbmVyXCIsXG4gICAgICAgICAgICBzdHlsZTogeyAuLi5jb250ZW50U3R5bGUsIFdlYmtpdE1hc2tJbWFnZTogdHJhbnNpdGlvbk1hc2sgfSxcbiAgICAgICAgICAgIGNsYXNzTmFtZTogYCR7Y29udGVudENsYXNzTmFtZX0gJHt0cmFuc2l0aW9uQ2xhc3Nlcy5mb3J3YXJkLmVsZW1lbnRFeGl0aW5nfWAsXG4gICAgICAgICAgICBvbkFuaW1hdGlvbkVuZDogKGU6IEFuaW1hdGlvbkV2ZW50KSA9PiB7XG4gICAgICAgICAgICAgIGlmIChlLnRhcmdldCAhPT0gZS5jdXJyZW50VGFyZ2V0KSByZXR1cm47XG4gICAgICAgICAgICAgIGlmICh0cmFuc2l0aW9uQ2xhc3Nlcy5mb3J3YXJkLmVsZW1lbnRFbnRlcmluZylcbiAgICAgICAgICAgICAgICBuZXh0U2NyZWVuUmVmLmN1cnJlbnQ/LmNsYXNzTGlzdC5yZW1vdmUoXG4gICAgICAgICAgICAgICAgICB0cmFuc2l0aW9uQ2xhc3Nlcy5mb3J3YXJkLmVsZW1lbnRFbnRlcmluZ1xuICAgICAgICAgICAgICAgICk7XG4gICAgICAgICAgICAgIGlmIChvbkRpc2NhcmRTdGVwKSBvbkRpc2NhcmRTdGVwKHByZXZLZXlUb1JlbW92ZSwgaW5zZXJ0ZWRBdCk7XG4gICAgICAgICAgICAgIHNldENoaWxkcmVuV3JhcHBlcnMoKHNjcmVlbnNBZnRlclRoZUN1cnJlbnRTdGVwRW50ZXJlZCkgPT4ge1xuICAgICAgICAgICAgICAgIGNvbnN0IG5leHRTdGF0ZSA9IHNjcmVlbnNBZnRlclRoZUN1cnJlbnRTdGVwRW50ZXJlZC5maWx0ZXIoXG4gICAgICAgICAgICAgICAgICAocykgPT4ge1xuICAgICAgICAgICAgICAgICAgICBjb25zdCBzaG91bGRNYW50YWluID1cbiAgICAgICAgICAgICAgICAgICAgICBzPy5hc3NvY2lhdGVkS2V5ICE9PSBTdHJpbmcocHJldktleVRvUmVtb3ZlKSB8fFxuICAgICAgICAgICAgICAgICAgICAgIHMuY3JlYXRlZEF0ID4gaW5zZXJ0ZWRBdDtcbiAgICAgICAgICAgICAgICAgICAgcmV0dXJuIHNob3VsZE1hbnRhaW47XG4gICAgICAgICAgICAgICAgICB9XG4gICAgICAgICAgICAgICAgKTtcbiAgICAgICAgICAgICAgICByZXR1cm4gbmV4dFN0YXRlO1xuICAgICAgICAgICAgICB9KTtcbiAgICAgICAgICAgIH0sXG4gICAgICAgICAgfSk7XG4gICAgICAgIH1cbiAgICAgICAgY29uc3QgcHJvcHNDb250YWluZXIgPSB7XG4gICAgICAgICAgcmVmOiBuZXh0U2NyZWVuUmVmLFxuICAgICAgICAgIFwiZGF0YS10ZXN0aWRcIjogXCJ0cmFuc2l0aW9uLWNvbnRhaW5lclwiLFxuICAgICAgICAgIGtleSxcbiAgICAgICAgICBzdHlsZToge1xuICAgICAgICAgICAgLi4uY29udGVudFN0eWxlLFxuICAgICAgICAgIH0sXG4gICAgICAgICAgY2xhc3NOYW1lOiBgJHtjb250ZW50Q2xhc3NOYW1lfSAke3RyYW5zaXRpb25DbGFzc2VzLmZvcndhcmQuZWxlbWVudEVudGVyaW5nfWAsXG4gICAgICAgIH07XG4gICAgICAgIGNvbnN0IG5ld1dyYXBwZXIgPSBDaGlsZHJlbldyYXBwZXJGYWN0b3J5KFxuICAgICAgICAgICh7IGNoaWxkcmVuIH0pID0+IHtcbiAgICAgICAgICAgIHJldHVybiA8ZGl2IHsuLi5wcm9wc0NvbnRhaW5lcn0+e2NoaWxkcmVufTwvZGl2PjtcbiAgICAgICAgICB9LFxuICAgICAgICAgIGtleSxcbiAgICAgICAgICBwcm9wc0NvbnRhaW5lcixcbiAgICAgICAgICBpbnNlcnRlZEF0XG4gICAgICAgICk7XG4gICAgICAgIHJldHVybiBbXG4gICAgICAgICAgLi4uc2NyZWVuc0JlZm9yZUNoYW5naW5nU3RlcC5zbGljZSgwLCBsYXN0SW5kZXgpLFxuICAgICAgICAgIGxhc3RXcmFwcGVyIHx8XG4gICAgICAgICAgICBDaGlsZHJlbldyYXBwZXJGYWN0b3J5KFxuICAgICAgICAgICAgICAoKSA9PiA8UmVhY3QuRnJhZ21lbnQgLz4sXG4gICAgICAgICAgICAgIFwiZmFsbGJhY2tcIixcbiAgICAgICAgICAgICAge30sXG4gICAgICAgICAgICAgIGluc2VydGVkQXRcbiAgICAgICAgICAgICksXG4gICAgICAgICAgbmV3V3JhcHBlcixcbiAgICAgICAgXTtcbiAgICAgIH0pO1xuICAgIH1cbiAgICByZXR1cm4gKCkgPT4ge1xuICAgICAgcHJldlN0ZXAuY3VycmVudCA9IHN0ZXA7XG4gICAgfTtcbiAgfSwgW3N0ZXBdKTtcblxuICB1c2VFZmZlY3QoKCkgPT4ge1xuICAgIGlmIChjaGlsZHJlbldyYXBwZXJzLmxlbmd0aCA9PT0gMSAmJiBsb2NrVHJhbnNpdGlvbldpZHRoKVxuICAgICAgY29udGFpbmVyUmVmLmN1cnJlbnQhLnN0eWxlLndpZHRoID0gXCJcIjtcbiAgICBpZiAoY2hpbGRyZW5XcmFwcGVycy5sZW5ndGggPT09IDEgJiYgbG9ja1RyYW5zaXRpb25IZWlnaHQpXG4gICAgICBjb250YWluZXJSZWYuY3VycmVudCEuc3R5bGUuaGVpZ2h0ID0gXCJcIjtcbiAgfSwgW2NoaWxkcmVuV3JhcHBlcnMubGVuZ3RoICE9PSAxXSk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAoXG4gICAgICBwcm9wcy50cmFuc2l0aW9uVHlwZSA9PT0gVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLlBPUF9GUk9NX0VMRU1FTlRfSUQgJiZcbiAgICAgIFwiZWxlbWVudElkXCIgaW4gcHJvcHNcbiAgICApIHtcbiAgICAgIGNvbnN0IGVsZW1lbnQgPSBkb2N1bWVudC5xdWVyeVNlbGVjdG9yKFxuICAgICAgICBgIyR7cHJvcHMuZWxlbWVudElkfWBcbiAgICAgICkgYXMgSFRNTERpdkVsZW1lbnQ7XG5cbiAgICAgIGlmIChlbGVtZW50KSB7XG4gICAgICAgIGNvbnN0IHsgY2xpZW50V2lkdGgsIGNsaWVudEhlaWdodCB9ID0gY29udGFpbmVyUmVmLmN1cnJlbnQhO1xuXG4gICAgICAgIGNvbnN0IG9mZnNldFggPVxuICAgICAgICAgIGVsZW1lbnQuY2xpZW50TGVmdCArIGVsZW1lbnQub2Zmc2V0TGVmdCArIGVsZW1lbnQuY2xpZW50V2lkdGggLyAyO1xuICAgICAgICBjb25zdCBvZmZzZXRZID1cbiAgICAgICAgICBlbGVtZW50LmNsaWVudFRvcCArIGVsZW1lbnQub2Zmc2V0VG9wICsgZWxlbWVudC5jbGllbnRIZWlnaHQgLyAyO1xuICAgICAgICBjb25zdCBwZXJjZW50WCA9IChvZmZzZXRYICogMTAwKSAvIGNsaWVudFdpZHRoO1xuICAgICAgICBjb25zdCBwZXJjZW50WSA9IChvZmZzZXRZICogMTAwKSAvIGNsaWVudEhlaWdodDtcbiAgICAgICAgcHJlVHJhbnNpdGlvbkRldGFpbHMuY3VycmVudC50cmFuc2Zvcm1PcmlnaW4gPSBgJHtwZXJjZW50WH0lICR7cGVyY2VudFl9JWA7XG5cbiAgICAgICAgT2JqZWN0LmFzc2lnbihjb250YWluZXJSZWYuY3VycmVudCEuc3R5bGUsIHtcbiAgICAgICAgICB0cmFuc2Zvcm1PcmlnaW46IGAke3BlcmNlbnRYfSUgJHtwZXJjZW50WX0lYCxcbiAgICAgICAgfSk7XG4gICAgICB9XG4gICAgfSBlbHNlIHtcbiAgICAgIE9iamVjdC5hc3NpZ24oY29udGFpbmVyUmVmLmN1cnJlbnQhLnN0eWxlLCBwcmVUcmFuc2l0aW9uRGV0YWlscy5jdXJyZW50KTtcbiAgICB9XG5cbiAgICBpZiAoY2hpbGRyZW5XcmFwcGVycy5sZW5ndGggPT09IDEpIHtcbiAgICAgIGNvbnRhaW5lclJlZi5jdXJyZW50IS5zdHlsZS5vdmVyZmxvdyA9IFwiXCI7XG4gICAgfVxuICB9LCBbY2hpbGRyZW5XcmFwcGVycy5sZW5ndGhdKTtcblxuICBjb25zdCBwcm9wc1RvU3ByZWFkID0geyAuLi5wcm9wcyB9IGFzIGFueTtcbiAgZGVsZXRlIHByb3BzVG9TcHJlYWQudHJhbnNpdGlvblR5cGU7XG4gIGRlbGV0ZSBwcm9wc1RvU3ByZWFkLmNvbmZpZztcblxuICByZXR1cm4gKFxuICAgIDw+XG4gICAgICA8c2VjdGlvblxuICAgICAgICB7Li4ucHJvcHNUb1NwcmVhZH1cbiAgICAgICAgb25DbGljaz17KGUpID0+IHtcbiAgICAgICAgICBjb25zdCB7XG4gICAgICAgICAgICBjdXJyZW50VGFyZ2V0OiB7IG9mZnNldFRvcCwgb2Zmc2V0TGVmdCwgY2xpZW50V2lkdGgsIGNsaWVudEhlaWdodCB9LFxuICAgICAgICAgICAgY2xpZW50WCxcbiAgICAgICAgICAgIGNsaWVudFksXG4gICAgICAgICAgfSA9IGU7XG4gICAgICAgICAgY29uc3Qgb2Zmc2V0WCA9IGNsaWVudFggLSBvZmZzZXRMZWZ0O1xuICAgICAgICAgIGNvbnN0IG9mZnNldFkgPSBjbGllbnRZIC0gb2Zmc2V0VG9wO1xuICAgICAgICAgIGNvbnN0IHBlcmNlbnRYID0gKG9mZnNldFggKiAxMDApIC8gY2xpZW50V2lkdGg7XG4gICAgICAgICAgY29uc3QgcGVyY2VudFkgPSAob2Zmc2V0WSAqIDEwMCkgLyBjbGllbnRIZWlnaHQ7XG5cbiAgICAgICAgICBpZiAoXG4gICAgICAgICAgICBwcm9wcy50cmFuc2l0aW9uVHlwZSA9PT1cbiAgICAgICAgICAgICAgVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzLlBPUF9GUk9NX0VMRU1FTlRfSUQgfHxcbiAgICAgICAgICAgIHByb3BzLnRyYW5zaXRpb25UeXBlID09PVxuICAgICAgICAgICAgICBUcmFuc2l0aW9uQW5pbWF0aW9uVHlwZXMuUE9QX0ZST01fQ0xJQ0tfT1JJR0lOXG4gICAgICAgICAgKVxuICAgICAgICAgICAgcHJlVHJhbnNpdGlvbkRldGFpbHMuY3VycmVudC50cmFuc2Zvcm1PcmlnaW4gPSBgJHtwZXJjZW50WH0lICR7cGVyY2VudFl9JWA7XG4gICAgICAgICAgaWYgKHByb3BzLm9uQ2xpY2spIHByb3BzLm9uQ2xpY2soZSBhcyBhbnkpO1xuICAgICAgICB9fVxuICAgICAgICBkYXRhLXRlc3RpZD1cInRyYW5zaXRpb24tY29udHJvbGxlclwiXG4gICAgICAgIHJlZj17Y29udGFpbmVyUmVmfVxuICAgICAgICBjbGFzc05hbWU9e2Ake1N0eWxlcy5zZWN0aW9ufSAke2NsYXNzTmFtZX1gfVxuICAgICAgPlxuICAgICAgICB7KGNoaWxkcmVuV3JhcHBlcnMgYXMgQ2hpbGRyZW5XcmFwcGVyW10pLm1hcCgoV3JhcHBlcikgPT4ge1xuICAgICAgICAgIGNvbnN0IGNoaWxkVG9SZW5kZXIgPSBjaGlsZHJlbi5maW5kKFxuICAgICAgICAgICAgKGEsIGkpID0+IChhPy5rZXkgfHwgaSkgPT09IFdyYXBwZXI/LmFzc29jaWF0ZWRLZXlcbiAgICAgICAgICApO1xuICAgICAgICAgIHJldHVybiAoXG4gICAgICAgICAgICA8V3JhcHBlciBrZXk9e2Ake1dyYXBwZXIhLmFzc29jaWF0ZWRLZXl9ICR7V3JhcHBlci5jcmVhdGVkQXR9YH0+XG4gICAgICAgICAgICAgIDw+e2NoaWxkVG9SZW5kZXJ9PC8+XG4gICAgICAgICAgICA8L1dyYXBwZXI+XG4gICAgICAgICAgKTtcbiAgICAgICAgfSl9XG4gICAgICA8L3NlY3Rpb24+XG4gICAgPC8+XG4gICk7XG59XG5cbmV4cG9ydCBlbnVtIFRyYW5zaXRpb25BbmltYXRpb25UeXBlcyB7XG4gIFNMSURFLFxuICBQT1BfRlJPTV9DTElDS19PUklHSU4sXG4gIFBPUF9GUk9NX0VMRU1FTlRfSUQsXG4gIEZBREUsXG4gIENPSU5fRkxJUCxcbiAgTUFTSyxcbiAgQ1VTVE9NLFxufVxuXG4vKipcbiAqIEhhbmRsZXMgdGhlIHRyYW5zaXRpb24gYmV0d2VlbiBtdWx0aXBsZSBjaGlsZHJlbiBhbmQgcmVjeWNsaW5nIG9mIGVsZW1lbnRzXG4gKiovXG5jb25zdCBUcmFuc2l0aW9uID0gZm9yd2FyZFJlZihfVHJhbnNpdGlvbik7XG5leHBvcnQgZGVmYXVsdCBUcmFuc2l0aW9uO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7O0FBQUEsSUFBQUEsTUFBQSxHQUFBQyx1QkFBQSxDQUFBQyxPQUFBO0FBZUEsSUFBQUMsaUJBQUEsR0FBQUMsc0JBQUEsQ0FBQUYsT0FBQTtBQUE4QyxNQUFBRyxTQUFBO0FBQUEs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
@@ -6,7 +6,7 @@
6
6
  }
7
7
  position: relative;
8
8
  display: flex;
9
- align-items: center;
9
+ align-items: flex-start;
10
10
  > div {
11
11
  display: flex;
12
12
  flex-direction: column;
@@ -18,4 +18,5 @@ Object.defineProperty(exports, "default", {
18
18
  });
19
19
  var _Transition = _interopRequireWildcard(require("./Transition"));
20
20
  function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
21
- 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; }
21
+ 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; }
22
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfVHJhbnNpdGlvbiIsIl9pbnRlcm9wUmVxdWlyZVdpbGRjYXJkIiwicmVxdWlyZSIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIm9iaiIsIl9fZXNNb2R1bGUiLCJfdHlwZW9mIiwiZGVmYXVsdCIsImNhY2hlIiwiaGFzIiwiZ2V0IiwibmV3T2JqIiwiaGFzUHJvcGVydHlEZXNjcmlwdG9yIiwiT2JqZWN0IiwiZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3IiLCJrZXkiLCJwcm90b3R5cGUiLCJoYXNPd25Qcm9wZXJ0eSIsImNhbGwiLCJkZXNjIiwic2V0Il0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVHJhbnNpdGlvbi9pbmRleC50c3giXSwic291cmNlc0NvbnRlbnQiOlsiZXhwb3J0IHsgZGVmYXVsdCwgVHJhbnNpdGlvbkFuaW1hdGlvblR5cGVzIH0gZnJvbSBcIi4vVHJhbnNpdGlvblwiO1xuIl0sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSxXQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFBaUUsU0FBQUMseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFILHdCQUFBTyxHQUFBLEVBQUFKLFdBQUEsU0FBQUEsV0FBQSxJQUFBSSxHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQUUsT0FBQSxDQUFBRixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRyxPQUFBLEVBQUFILEdBQUEsVUFBQUksS0FBQSxHQUFBVCx3QkFBQSxDQUFBQyxXQUFBLE9BQUFRLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFMLEdBQUEsWUFBQUksS0FBQSxDQUFBRSxHQUFBLENBQUFOLEdBQUEsU0FBQU8sTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFaLEdBQUEsUUFBQVksR0FBQSxrQkFBQUgsTUFBQSxDQUFBSSxTQUFBLENBQUFDLGNBQUEsQ0FBQUMsSUFBQSxDQUFBZixHQUFBLEVBQUFZLEdBQUEsU0FBQUksSUFBQSxHQUFBUixxQkFBQSxHQUFBQyxNQUFBLENBQUFFLHdCQUFBLENBQUFYLEdBQUEsRUFBQVksR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBWixHQUFBLENBQUFZLEdBQUEsU0FBQUwsTUFBQSxDQUFBSixPQUFBLEdBQUFILEdBQUEsTUFBQUksS0FBQSxJQUFBQSxLQUFBLENBQUFhLEdBQUEsQ0FBQWpCLEdBQUEsRUFBQU8sTUFBQSxZQUFBQSxNQUFBIn0=
@@ -1,5 +1,8 @@
1
1
  import React, { Key, RefObject } from "react";
2
2
  import { TransitionProps, TransitionTypeDefinitions } from "../Transition/Transition";
3
+ /**
4
+ * This component receives child with key and applies a transition when the key changes, allowing to swap elements with a fine transition.
5
+ **/
3
6
  declare const UncontrolledTransition: React.ForwardRefExoticComponent<({
4
7
  className?: string | undefined;
5
8
  contentClassName?: string | undefined;
@@ -29,9 +29,6 @@ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefine
29
29
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
30
30
  function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
31
31
  function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
32
- /**
33
- * This component handles when a child changes and transition this child change, allowing the finest experiences
34
- **/
35
32
  function _UncontrolledTransition(_ref, ref) {
36
33
  let _ref$className = _ref.className,
37
34
  className = _ref$className === void 0 ? "" : _ref$className,
@@ -48,9 +45,13 @@ function _UncontrolledTransition(_ref, ref) {
48
45
  _onDiscardStep = _ref.onDiscardStep,
49
46
  props = _objectWithoutProperties(_ref, _excluded);
50
47
  const sectionRef = (0, _react.useRef)(null);
51
- const _useState = (0, _react.useState)({
52
- childStack: [children],
53
- offset: 1
48
+ const _useState = (0, _react.useState)(function () {
49
+ return {
50
+ childStack: [_objectSpread(_objectSpread({}, children), {}, {
51
+ createdAt: Date.now()
52
+ })],
53
+ offset: 1
54
+ };
54
55
  }),
55
56
  _useState2 = _slicedToArray(_useState, 2),
56
57
  _useState2$ = _useState2[0],
@@ -72,11 +73,15 @@ function _UncontrolledTransition(_ref, ref) {
72
73
  if (childStack.length === 1 && childStack[0].key === children.key) return;
73
74
  if (orientation.current === "forward") setChildStack(function (p) {
74
75
  return _objectSpread(_objectSpread({}, p), {}, {
75
- childStack: [].concat(_toConsumableArray(p.childStack), [children])
76
+ childStack: [].concat(_toConsumableArray(p.childStack), [_objectSpread(_objectSpread({}, children), {}, {
77
+ createdAt: Date.now()
78
+ })])
76
79
  });
77
80
  });else setChildStack(function (p) {
78
81
  return _objectSpread(_objectSpread({}, p), {}, {
79
- childStack: [children].concat(_toConsumableArray(p.childStack))
82
+ childStack: [_objectSpread(_objectSpread({}, children), {}, {
83
+ createdAt: Date.now()
84
+ })].concat(_toConsumableArray(p.childStack))
80
85
  });
81
86
  });
82
87
  }, [children.key]);
@@ -90,20 +95,23 @@ function _UncontrolledTransition(_ref, ref) {
90
95
  }
91
96
  }, [childStack.length]);
92
97
  childStack.forEach(function (a, i, arr) {
93
- if (a.key === children.key) arr[i] = children;
98
+ if (a.key === children.key) arr[i] = _objectSpread(_objectSpread({}, children), {}, {
99
+ createdAt: a.createdAt
100
+ });
94
101
  });
102
+ const predictedStep = childStack.length - offset;
95
103
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, childStack.length ? /*#__PURE__*/_react.default.createElement(_Transition.default, _extends({
96
104
  ref: sectionRef,
97
105
  contentStyle: contentStyle,
98
106
  className: className,
99
- step: childStack.length - offset,
100
- onDiscardStep: function onDiscardStep(discardedKey) {
107
+ step: predictedStep,
108
+ onDiscardStep: function onDiscardStep(discardedKey, animatedAt) {
101
109
  if (_onDiscardStep) _onDiscardStep(discardedKey);
102
110
  orientation.current = "forward";
103
111
  setChildStack(function (prev) {
104
112
  return {
105
113
  childStack: prev.childStack.filter(function (a) {
106
- return a.key !== discardedKey;
114
+ return a.key !== discardedKey || a.createdAt > animatedAt;
107
115
  }),
108
116
  offset: prev.offset === 1 ? 1 : prev.offset - 1
109
117
  };
@@ -114,6 +122,11 @@ function _UncontrolledTransition(_ref, ref) {
114
122
  contentClassName: contentClassName
115
123
  }, props), childStack) : null);
116
124
  }
125
+
126
+ /**
127
+ * This component receives child with key and applies a transition when the key changes, allowing to swap elements with a fine transition.
128
+ **/
117
129
  const UncontrolledTransition = /*#__PURE__*/(0, _react.forwardRef)(_UncontrolledTransition);
118
130
  var _default = UncontrolledTransition;
119
- exports.default = _default;
131
+ exports.default = _default;
132
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfVHJhbnNpdGlvbiIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfZXhjbHVkZWQiLCJvYmoiLCJfX2VzTW9kdWxlIiwiZGVmYXVsdCIsIl9nZXRSZXF1aXJlV2lsZGNhcmRDYWNoZSIsIm5vZGVJbnRlcm9wIiwiV2Vha01hcCIsImNhY2hlQmFiZWxJbnRlcm9wIiwiY2FjaGVOb2RlSW50ZXJvcCIsIl90eXBlb2YiLCJjYWNoZSIsImhhcyIsImdldCIsIm5ld09iaiIsImhhc1Byb3BlcnR5RGVzY3JpcHRvciIsIk9iamVjdCIsImRlZmluZVByb3BlcnR5IiwiZ2V0T3duUHJvcGVydHlEZXNjcmlwdG9yIiwia2V5IiwicHJvdG90eXBlIiwiaGFzT3duUHJvcGVydHkiLCJjYWxsIiwiZGVzYyIsInNldCIsIl9leHRlbmRzIiwiYXNzaWduIiwiYmluZCIsInRhcmdldCIsImkiLCJhcmd1bWVudHMiLCJsZW5ndGgiLCJzb3VyY2UiLCJhcHBseSIsIl90b0NvbnN1bWFibGVBcnJheSIsImFyciIsIl9hcnJheVdpdGhvdXRIb2xlcyIsIl9pdGVyYWJsZVRvQXJyYXkiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVTcHJlYWQiLCJUeXBlRXJyb3IiLCJpdGVyIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJBcnJheSIsImZyb20iLCJpc0FycmF5IiwiX2FycmF5TGlrZVRvQXJyYXkiLCJvd25LZXlzIiwib2JqZWN0IiwiZW51bWVyYWJsZU9ubHkiLCJrZXlzIiwiZ2V0T3duUHJvcGVydHlTeW1ib2xzIiwic3ltYm9scyIsImZpbHRlciIsInN5bSIsImVudW1lcmFibGUiLCJwdXNoIiwiX29iamVjdFNwcmVhZCIsImZvckVhY2giLCJfZGVmaW5lUHJvcGVydHkiLCJnZXRPd25Qcm9wZXJ0eURlc2NyaXB0b3JzIiwiZGVmaW5lUHJvcGVydGllcyIsInZhbHVlIiwiX3RvUHJvcGVydHlLZXkiLCJjb25maWd1cmFibGUiLCJ3cml0YWJsZSIsImFyZyIsIl90b1ByaW1pdGl2ZSIsIlN0cmluZyIsImlucHV0IiwiaGludCIsInByaW0iLCJ0b1ByaW1pdGl2ZSIsInVuZGVmaW5lZCIsInJlcyIsIk51bWJlciIsIl9zbGljZWRUb0FycmF5IiwiX2FycmF5V2l0aEhvbGVzIiwiX2l0ZXJhYmxlVG9BcnJheUxpbWl0IiwiX25vbkl0ZXJhYmxlUmVzdCIsIm8iLCJtaW5MZW4iLCJuIiwidG9TdHJpbmciLCJzbGljZSIsImNvbnN0cnVjdG9yIiwibmFtZSIsInRlc3QiLCJsZW4iLCJhcnIyIiwiX2kiLCJfcyIsIl9lIiwiX3giLCJfciIsIl9hcnIiLCJfbiIsIl9kIiwibmV4dCIsImRvbmUiLCJlcnIiLCJyZXR1cm4iLCJfb2JqZWN0V2l0aG91dFByb3BlcnRpZXMiLCJleGNsdWRlZCIsIl9vYmplY3RXaXRob3V0UHJvcGVydGllc0xvb3NlIiwic291cmNlU3ltYm9sS2V5cyIsImluZGV4T2YiLCJwcm9wZXJ0eUlzRW51bWVyYWJsZSIsInNvdXJjZUtleXMiLCJfVW5jb250cm9sbGVkVHJhbnNpdGlvbiIsIl9yZWYiLCJyZWYiLCJfcmVmJGNsYXNzTmFtZSIsImNsYXNzTmFtZSIsImNvbnRlbnRDbGFzc05hbWUiLCJfcmVmJGNoaWxkcmVuIiwiY2hpbGRyZW4iLCJjcmVhdGVFbGVtZW50IiwiRnJhZ21lbnQiLCJfcmVmJGxvY2tUcmFuc2l0aW9uV2kiLCJsb2NrVHJhbnNpdGlvbldpZHRoIiwiX3JlZiRsb2NrVHJhbnNpdGlvbkhlIiwibG9ja1RyYW5zaXRpb25IZWlnaHQiLCJjb250ZW50U3R5bGUiLCJvbkRpc2NhcmRTdGVwIiwicHJvcHMiLCJzZWN0aW9uUmVmIiwidXNlUmVmIiwiX3VzZVN0YXRlIiwidXNlU3RhdGUiLCJjaGlsZFN0YWNrIiwiY3JlYXRlZEF0IiwiRGF0ZSIsIm5vdyIsIm9mZnNldCIsIl91c2VTdGF0ZTIiLCJfdXNlU3RhdGUyJCIsInNldENoaWxkU3RhY2siLCJvcmllbnRhdGlvbiIsInNldE9yaWVudGF0aW9uIiwiYSIsImN1cnJlbnQiLCJ1c2VJbXBlcmF0aXZlSGFuZGxlIiwidXNlRWZmZWN0IiwicHJvY2VzcyIsImVudiIsIk5PREVfRU5WIiwiRXJyb3IiLCJwIiwiY29uY2F0IiwicHJldiIsInByZWRpY3RlZFN0ZXAiLCJzdGVwIiwiZGlzY2FyZGVkS2V5IiwiYW5pbWF0ZWRBdCIsIlVuY29udHJvbGxlZFRyYW5zaXRpb24iLCJmb3J3YXJkUmVmIiwiX2RlZmF1bHQiLCJleHBvcnRzIl0sInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbXBvbmVudHMvVW5jb250cm9sbGVkVHJhbnNpdGlvbi9VbmNvbnRyb2xsZWRUcmFuc2l0aW9uLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QsIHtcbiAgRGV0YWlsZWRIVE1MUHJvcHMsXG4gIEZvcndhcmRlZFJlZixcbiAgZm9yd2FyZFJlZixcbiAgS2V5LFxuICBSZWZPYmplY3QsXG4gIHVzZUVmZmVjdCxcbiAgdXNlSW1wZXJhdGl2ZUhhbmRsZSxcbiAgdXNlUmVmLFxuICB1c2VTdGF0ZSxcbn0gZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgVHJhbnNpdGlvbiBmcm9tIFwiLi4vVHJhbnNpdGlvblwiO1xuaW1wb3J0IHtcbiAgVHJhbnNpdGlvblByb3BzLFxuICBUcmFuc2l0aW9uVHlwZURlZmluaXRpb25zLFxufSBmcm9tIFwiLi4vVHJhbnNpdGlvbi9UcmFuc2l0aW9uXCI7XG5cbmZ1bmN0aW9uIF9VbmNvbnRyb2xsZWRUcmFuc2l0aW9uKFxuICB7XG4gICAgY2xhc3NOYW1lID0gXCJcIixcbiAgICBjb250ZW50Q2xhc3NOYW1lLFxuICAgIGNoaWxkcmVuID0gPFJlYWN0LkZyYWdtZW50IGtleT1cImRlZmF1bHRcIj48L1JlYWN0LkZyYWdtZW50PixcbiAgICBsb2NrVHJhbnNpdGlvbldpZHRoID0gdHJ1ZSxcbiAgICBsb2NrVHJhbnNpdGlvbkhlaWdodCA9IGZhbHNlLFxuICAgIGNvbnRlbnRTdHlsZSxcbiAgICBvbkRpc2NhcmRTdGVwLFxuICAgIC4uLnByb3BzXG4gIH06IHtcbiAgICBjbGFzc05hbWU/OiBzdHJpbmc7XG4gICAgY29udGVudENsYXNzTmFtZT86IHN0cmluZztcbiAgICBjaGlsZHJlbj86IFJlYWN0LlJlYWN0RWxlbWVudDtcbiAgICBsb2NrVHJhbnNpdGlvbldpZHRoPzogYm9vbGVhbjtcbiAgICBsb2NrVHJhbnNpdGlvbkhlaWdodD86IGJvb2xlYW47XG4gICAgb25EaXNjYXJkU3RlcD86IChrZXk6IEtleSkgPT4gdm9pZDtcbiAgfSAmIFBpY2s8VHJhbnNpdGlvblByb3BzLCBcImNvbnRlbnRTdHlsZVwiPiAmXG4gICAgVHJhbnNpdGlvblR5cGVEZWZpbml0aW9ucyAmXG4gICAgT21pdDxcbiAgICAgIERldGFpbGVkSFRNTFByb3BzPFJlYWN0LkhUTUxBdHRyaWJ1dGVzPEhUTUxEaXZFbGVtZW50PiwgYW55PixcbiAgICAgIFwiY2xhc3NOYW1lXCIgfCBcImNoaWxkcmVuXCIgfCBcInJlZlwiXG4gICAgPixcbiAgcmVmOiBGb3J3YXJkZWRSZWY8e1xuICAgIHNldE9yaWVudGF0aW9uOiAob3JpZW50YXRpb246IFwiZm9yd2FyZFwiIHwgXCJiYWNrd2FyZFwiKSA9PiB2b2lkO1xuICAgIHNlY3Rpb25SZWY6IFJlZk9iamVjdDxIVE1MRGl2RWxlbWVudD47XG4gIH0+XG4pIHtcbiAgY29uc3Qgc2VjdGlvblJlZiA9IHVzZVJlZjxIVE1MRGl2RWxlbWVudD4obnVsbCk7XG4gIGNvbnN0IFt7IGNoaWxkU3RhY2ssIG9mZnNldCB9LCBzZXRDaGlsZFN0YWNrXSA9IHVzZVN0YXRlPHtcbiAgICBjaGlsZFN0YWNrOiAoUmVhY3QuUmVhY3RFbGVtZW50ICYgeyBjcmVhdGVkQXQ6IG51bWJlciB9KVtdO1xuICAgIG9mZnNldDogbnVtYmVyO1xuICB9PigoKSA9PiAoe1xuICAgIGNoaWxkU3RhY2s6IFt7IC4uLmNoaWxkcmVuLCBjcmVhdGVkQXQ6IERhdGUubm93KCkgfV0sXG4gICAgb2Zmc2V0OiAxLFxuICB9KSk7XG4gIGNvbnN0IG9yaWVudGF0aW9uID0gdXNlUmVmPFwiZm9yd2FyZFwiIHwgXCJiYWNrd2FyZFwiPihcImZvcndhcmRcIik7XG4gIGZ1bmN0aW9uIHNldE9yaWVudGF0aW9uKGE6IHR5cGVvZiBvcmllbnRhdGlvbi5jdXJyZW50KSB7XG4gICAgb3JpZW50YXRpb24uY3VycmVudCA9IGE7XG4gIH1cblxuICB1c2VJbXBlcmF0aXZlSGFuZGxlKFxuICAgIHJlZixcbiAgICAoKSA9PiAoe1xuICAgICAgc2V0T3JpZW50YXRpb24sXG4gICAgICBzZWN0aW9uUmVmLFxuICAgIH0pLFxuICAgIFtdXG4gICk7XG5cbiAgdXNlRWZmZWN0KCgpID0+IHtcbiAgICBpZiAocHJvY2Vzcy5lbnYuTk9ERV9FTlYgIT09IFwicHJvZHVjdGlvblwiICYmICFjaGlsZHJlbi5rZXkpXG4gICAgICB0aHJvdyBuZXcgRXJyb3IoXG4gICAgICAgIFwiVGhlIHByb3ZpZGVkIGNoaWxkIHNob3VsZCBoYXZlIGEga2V5IHByb3BlcnR5LCBwbGVhc2UgcHJvdmlkZSBpdFwiXG4gICAgICApO1xuICAgIGlmIChjaGlsZFN0YWNrLmxlbmd0aCA9PT0gMSAmJiBjaGlsZFN0YWNrWzBdLmtleSA9PT0gY2hpbGRyZW4ua2V5KSByZXR1cm47XG4gICAgaWYgKG9yaWVudGF0aW9uLmN1cnJlbnQgPT09IFwiZm9yd2FyZFwiKVxuICAgICAgc2V0Q2hpbGRTdGFjaygocCkgPT4gKHtcbiAgICAgICAgLi4ucCxcbiAgICAgICAgY2hpbGRTdGFjazogWy4uLnAuY2hpbGRTdGFjaywgeyAuLi5jaGlsZHJlbiwgY3JlYXRlZEF0OiBEYXRlLm5vdygpIH1dLFxuICAgICAgfSkpO1xuICAgIGVsc2VcbiAgICAgIHNldENoaWxkU3RhY2soKHApID0+ICh7XG4gICAgICAgIC4uLnAsXG4gICAgICAgIGNoaWxkU3RhY2s6IFt7IC4uLmNoaWxkcmVuLCBjcmVhdGVkQXQ6IERhdGUubm93KCkgfSwgLi4ucC5jaGlsZFN0YWNrXSxcbiAgICAgIH0pKTtcbiAgfSwgW2NoaWxkcmVuLmtleV0pO1xuXG4gIHVzZUVmZmVjdCgoKSA9PiB7XG4gICAgaWYgKG9yaWVudGF0aW9uLmN1cnJlbnQgPT09IFwiYmFja3dhcmRcIikge1xuICAgICAgc2V0Q2hpbGRTdGFjaygocHJldikgPT4ge1xuICAgICAgICByZXR1cm4ge1xuICAgICAgICAgIC4uLnByZXYsXG4gICAgICAgICAgb2Zmc2V0OiBwcmV2LmNoaWxkU3RhY2subGVuZ3RoLFxuICAgICAgICB9O1xuICAgICAgfSk7XG4gICAgfVxuICB9LCBbY2hpbGRTdGFjay5sZW5ndGhdKTtcblxuICBjaGlsZFN0YWNrLmZvckVhY2goKGEsIGksIGFycikgPT4ge1xuICAgIGlmIChhLmtleSA9PT0gY2hpbGRyZW4ua2V5KVxuICAgICAgYXJyW2ldID0geyAuLi5jaGlsZHJlbiwgY3JlYXRlZEF0OiBhLmNyZWF0ZWRBdCB9O1xuICB9KTtcblxuICBjb25zdCBwcmVkaWN0ZWRTdGVwID0gY2hpbGRTdGFjay5sZW5ndGggLSBvZmZzZXQ7XG5cbiAgcmV0dXJuIChcbiAgICA8PlxuICAgICAge2NoaWxkU3RhY2subGVuZ3RoID8gKFxuICAgICAgICA8VHJhbnNpdGlvblxuICAgICAgICAgIHJlZj17c2VjdGlvblJlZn1cbiAgICAgICAgICBjb250ZW50U3R5bGU9e2NvbnRlbnRTdHlsZX1cbiAgICAgICAgICBjbGFzc05hbWU9e2NsYXNzTmFtZX1cbiAgICAgICAgICBzdGVwPXtwcmVkaWN0ZWRTdGVwfVxuICAgICAgICAgIG9uRGlzY2FyZFN0ZXA9eyhkaXNjYXJkZWRLZXksIGFuaW1hdGVkQXQpID0+IHtcbiAgICAgICAgICAgIGlmIChvbkRpc2NhcmRTdGVwKSBvbkRpc2NhcmRTdGVwKGRpc2NhcmRlZEtleSk7XG4gICAgICAgICAgICBvcmllbnRhdGlvbi5jdXJyZW50ID0gXCJmb3J3YXJkXCI7XG4gICAgICAgICAgICBzZXRDaGlsZFN0YWNrKChwcmV2KSA9PiB7XG4gICAgICAgICAgICAgIHJldHVybiB7XG4gICAgICAgICAgICAgICAgY2hpbGRTdGFjazogcHJldi5jaGlsZFN0YWNrLmZpbHRlcigoYSkgPT4ge1xuICAgICAgICAgICAgICAgICAgcmV0dXJuIGEua2V5ICE9PSBkaXNjYXJkZWRLZXkgfHwgYS5jcmVhdGVkQXQgPiBhbmltYXRlZEF0O1xuICAgICAgICAgICAgICAgIH0pLFxuICAgICAgICAgICAgICAgIG9mZnNldDogcHJldi5vZmZzZXQgPT09IDEgPyAxIDogcHJldi5vZmZzZXQgLSAxLFxuICAgICAgICAgICAgICB9O1xuICAgICAgICAgICAgfSk7XG4gICAgICAgICAgfX1cbiAgICAgICAgICBsb2NrVHJhbnNpdGlvbldpZHRoPXtsb2NrVHJhbnNpdGlvbldpZHRofVxuICAgICAgICAgIGxvY2tUcmFuc2l0aW9uSGVpZ2h0PXtsb2NrVHJhbnNpdGlvbkhlaWdodH1cbiAgICAgICAgICBjb250ZW50Q2xhc3NOYW1lPXtjb250ZW50Q2xhc3NOYW1lfVxuICAgICAgICAgIHsuLi5wcm9wc31cbiAgICAgICAgPlxuICAgICAgICAgIHtjaGlsZFN0YWNrfVxuICAgICAgICA8L1RyYW5zaXRpb24+XG4gICAgICApIDogbnVsbH1cbiAgICA8Lz5cbiAgKTtcbn1cblxuLyoqXG4gKiBUaGlzIGNvbXBvbmVudCByZWNlaXZlcyBjaGlsZCB3aXRoIGtleSBhbmQgYXBwbGllcyBhIHRyYW5zaXRpb24gd2hlbiB0aGUga2V5IGNoYW5nZXMsIGFsbG93aW5nIHRvIHN3YXAgZWxlbWVudHMgd2l0aCBhIGZpbmUgdHJhbnNpdGlvbi5cbiAqKi9cbmNvbnN0IFVuY29udHJvbGxlZFRyYW5zaXRpb24gPSBmb3J3YXJkUmVmKF9VbmNvbnRyb2xsZWRUcmFuc2l0aW9uKTtcbmV4cG9ydCBkZWZhdWx0IFVuY29udHJvbGxlZFRyYW5zaXRpb247XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFXQSxJQUFBQyxXQUFB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
@@ -0,0 +1,2 @@
1
+ import React from "react";
2
+ export default function Example(): React.JSX.Element;
@@ -0,0 +1,44 @@
1
+ "use strict";
2
+
3
+ function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
4
+ Object.defineProperty(exports, "__esModule", {
5
+ value: true
6
+ });
7
+ exports.default = Example;
8
+ var _react = _interopRequireWildcard(require("react"));
9
+ var _UncontrolledTransition = _interopRequireDefault(require("../UncontrolledTransition"));
10
+ var _Button = _interopRequireDefault(require("../Button"));
11
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
12
+ function _getRequireWildcardCache(nodeInterop) { if (typeof WeakMap !== "function") return null; var cacheBabelInterop = new WeakMap(); var cacheNodeInterop = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
13
+ 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; }
14
+ function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
15
+ function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
16
+ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
17
+ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
18
+ function _iterableToArrayLimit(arr, i) { var _i = null == arr ? null : "undefined" != typeof Symbol && arr[Symbol.iterator] || arr["@@iterator"]; if (null != _i) { var _s, _e, _x, _r, _arr = [], _n = !0, _d = !1; try { if (_x = (_i = _i.call(arr)).next, 0 === i) { if (Object(_i) !== _i) return; _n = !1; } else for (; !(_n = (_s = _x.call(_i)).done) && (_arr.push(_s.value), _arr.length !== i); _n = !0); } catch (err) { _d = !0, _e = err; } finally { try { if (!_n && null != _i.return && (_r = _i.return(), Object(_r) !== _r)) return; } finally { if (_d) throw _e; } } return _arr; } }
19
+ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
20
+ function colorGen() {
21
+ return [255 * Math.random(), 255 * Math.random(), 255 * Math.random()];
22
+ }
23
+ function Example() {
24
+ const _useState = (0, _react.useState)(colorGen),
25
+ _useState2 = _slicedToArray(_useState, 2),
26
+ color = _useState2[0],
27
+ setColor = _useState2[1];
28
+ const rgb = "rgb(".concat(color.join(","), ")");
29
+ return /*#__PURE__*/_react.default.createElement(_UncontrolledTransition.default, null, /*#__PURE__*/_react.default.createElement("div", {
30
+ key: color.join(""),
31
+ style: {
32
+ width: "100vw",
33
+ height: "100vh",
34
+ backgroundColor: rgb,
35
+ textAlign: "center"
36
+ }
37
+ }, /*#__PURE__*/_react.default.createElement(_Button.default, {
38
+ variant: "filled",
39
+ onClick: function onClick() {
40
+ return setColor(colorGen());
41
+ }
42
+ }, "Click to transition"), /*#__PURE__*/_react.default.createElement("h2", null, "RGB"), /*#__PURE__*/_react.default.createElement("p", null, color[0].toFixed(0)), /*#__PURE__*/_react.default.createElement("p", null, color[1].toFixed(0)), /*#__PURE__*/_react.default.createElement("p", null, color[2].toFixed(0))));
43
+ }
44
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfcmVhY3QiLCJfaW50ZXJvcFJlcXVpcmVXaWxkY2FyZCIsInJlcXVpcmUiLCJfVW5jb250cm9sbGVkVHJhbnNpdGlvbiIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJfQnV0dG9uIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiLCJfZ2V0UmVxdWlyZVdpbGRjYXJkQ2FjaGUiLCJub2RlSW50ZXJvcCIsIldlYWtNYXAiLCJjYWNoZUJhYmVsSW50ZXJvcCIsImNhY2hlTm9kZUludGVyb3AiLCJfdHlwZW9mIiwiY2FjaGUiLCJoYXMiLCJnZXQiLCJuZXdPYmoiLCJoYXNQcm9wZXJ0eURlc2NyaXB0b3IiLCJPYmplY3QiLCJkZWZpbmVQcm9wZXJ0eSIsImdldE93blByb3BlcnR5RGVzY3JpcHRvciIsImtleSIsInByb3RvdHlwZSIsImhhc093blByb3BlcnR5IiwiY2FsbCIsImRlc2MiLCJzZXQiLCJfc2xpY2VkVG9BcnJheSIsImFyciIsImkiLCJfYXJyYXlXaXRoSG9sZXMiLCJfaXRlcmFibGVUb0FycmF5TGltaXQiLCJfdW5zdXBwb3J0ZWRJdGVyYWJsZVRvQXJyYXkiLCJfbm9uSXRlcmFibGVSZXN0IiwiVHlwZUVycm9yIiwibyIsIm1pbkxlbiIsIl9hcnJheUxpa2VUb0FycmF5IiwibiIsInRvU3RyaW5nIiwic2xpY2UiLCJjb25zdHJ1Y3RvciIsIm5hbWUiLCJBcnJheSIsImZyb20iLCJ0ZXN0IiwibGVuIiwibGVuZ3RoIiwiYXJyMiIsIl9pIiwiU3ltYm9sIiwiaXRlcmF0b3IiLCJfcyIsIl9lIiwiX3giLCJfciIsIl9hcnIiLCJfbiIsIl9kIiwibmV4dCIsImRvbmUiLCJwdXNoIiwidmFsdWUiLCJlcnIiLCJyZXR1cm4iLCJpc0FycmF5IiwiY29sb3JHZW4iLCJNYXRoIiwicmFuZG9tIiwiRXhhbXBsZSIsIl91c2VTdGF0ZSIsInVzZVN0YXRlIiwiX3VzZVN0YXRlMiIsImNvbG9yIiwic2V0Q29sb3IiLCJyZ2IiLCJjb25jYXQiLCJqb2luIiwiY3JlYXRlRWxlbWVudCIsInN0eWxlIiwid2lkdGgiLCJoZWlnaHQiLCJiYWNrZ3JvdW5kQ29sb3IiLCJ0ZXh0QWxpZ24iLCJ2YXJpYW50Iiwib25DbGljayIsInRvRml4ZWQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9VbmNvbnRyb2xsZWRUcmFuc2l0aW9uL1VuY29udHJvbGxlZFRyYW5zaXRpb24uc2FtcGxlLnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJpbXBvcnQgUmVhY3QgZnJvbSBcInJlYWN0XCI7XG5pbXBvcnQgVW5jb250cm9sbGVkVHJhbnNpdGlvbiBmcm9tIFwiLi4vVW5jb250cm9sbGVkVHJhbnNpdGlvblwiO1xuaW1wb3J0IEJ1dHRvbiBmcm9tIFwiLi4vQnV0dG9uXCI7XG5pbXBvcnQgeyB1c2VTdGF0ZSB9IGZyb20gXCJyZWFjdFwiO1xuXG5mdW5jdGlvbiBjb2xvckdlbigpIHtcbiAgcmV0dXJuIFsyNTUgKiBNYXRoLnJhbmRvbSgpLCAyNTUgKiBNYXRoLnJhbmRvbSgpLCAyNTUgKiBNYXRoLnJhbmRvbSgpXTtcbn1cblxuZXhwb3J0IGRlZmF1bHQgZnVuY3Rpb24gRXhhbXBsZSgpIHtcbiAgY29uc3QgW2NvbG9yLCBzZXRDb2xvcl0gPSB1c2VTdGF0ZShjb2xvckdlbik7XG4gIGNvbnN0IHJnYiA9IGByZ2IoJHtjb2xvci5qb2luKFwiLFwiKX0pYDtcbiAgcmV0dXJuIChcbiAgICA8VW5jb250cm9sbGVkVHJhbnNpdGlvbj5cbiAgICAgIDxkaXZcbiAgICAgICAga2V5PXtjb2xvci5qb2luKFwiXCIpfVxuICAgICAgICBzdHlsZT17e1xuICAgICAgICAgIHdpZHRoOiBcIjEwMHZ3XCIsXG4gICAgICAgICAgaGVpZ2h0OiBcIjEwMHZoXCIsXG4gICAgICAgICAgYmFja2dyb3VuZENvbG9yOiByZ2IsXG4gICAgICAgICAgdGV4dEFsaWduOiBcImNlbnRlclwiLFxuICAgICAgICB9fVxuICAgICAgPlxuICAgICAgICA8QnV0dG9uIHZhcmlhbnQ9XCJmaWxsZWRcIiBvbkNsaWNrPXsoKSA9PiBzZXRDb2xvcihjb2xvckdlbigpKX0+XG4gICAgICAgICAgQ2xpY2sgdG8gdHJhbnNpdGlvblxuICAgICAgICA8L0J1dHRvbj5cbiAgICAgICAgPGgyPlJHQjwvaDI+XG4gICAgICAgIDxwPntjb2xvclswXS50b0ZpeGVkKDApfTwvcD5cbiAgICAgICAgPHA+e2NvbG9yWzFdLnRvRml4ZWQoMCl9PC9wPlxuICAgICAgICA8cD57Y29sb3JbMl0udG9GaXhlZCgwKX08L3A+XG4gICAgICA8L2Rpdj5cbiAgICA8L1VuY29udHJvbGxlZFRyYW5zaXRpb24+XG4gICk7XG59XG4iXSwibWFwcGluZ3MiOiI7Ozs7Ozs7QUFBQSxJQUFBQSxNQUFBLEdBQUFDLHVCQUFBLENBQUFDLE9BQUE7QUFDQSxJQUFBQyx1QkFBQSxHQUFBQyxzQkFBQSxDQUFBRixPQUFBO0FBQ0EsSUFBQUcsT0FBQSxHQUFBRCxzQkFBQSxDQUFBRixPQUFBO0FBQStCLFNBQUFFLHVCQUFBRSxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBO0FBQUEsU0FBQUcseUJBQUFDLFdBQUEsZUFBQUMsT0FBQSxrQ0FBQUMsaUJBQUEsT0FBQUQsT0FBQSxRQUFBRSxnQkFBQSxPQUFBRixPQUFBLFlBQUFGLHdCQUFBLFlBQUFBLHlCQUFBQyxXQUFBLFdBQUFBLFdBQUEsR0FBQUcsZ0JBQUEsR0FBQUQsaUJBQUEsS0FBQUYsV0FBQTtBQUFBLFNBQUFULHdCQUFBSyxHQUFBLEVBQUFJLFdBQUEsU0FBQUEsV0FBQSxJQUFBSixHQUFBLElBQUFBLEdBQUEsQ0FBQUMsVUFBQSxXQUFBRCxHQUFBLFFBQUFBLEdBQUEsYUFBQVEsT0FBQSxDQUFBUixHQUFBLHlCQUFBQSxHQUFBLDRCQUFBRSxPQUFBLEVBQUFGLEdBQUEsVUFBQVMsS0FBQSxHQUFBTix3QkFBQSxDQUFBQyxXQUFBLE9BQUFLLEtBQUEsSUFBQUEsS0FBQSxDQUFBQyxHQUFBLENBQUFWLEdBQUEsWUFBQVMsS0FBQSxDQUFBRSxHQUFBLENBQUFYLEdBQUEsU0FBQVksTUFBQSxXQUFBQyxxQkFBQSxHQUFBQyxNQUFBLENBQUFDLGNBQUEsSUFBQUQsTUFBQSxDQUFBRSx3QkFBQSxXQUFBQyxHQUFBLElBQUFqQixHQUFBLFFBQUFpQixHQUFBLGtCQUFBSCxNQUFBLENBQUFJLFNBQUEsQ0FBQUMsY0FBQSxDQUFBQyxJQUFBLENBQUFwQixHQUFBLEVBQUFpQixHQUFBLFNBQUFJLElBQUEsR0FBQVIscUJBQUEsR0FBQUMsTUFBQSxDQUFBRSx3QkFBQSxDQUFBaEIsR0FBQSxFQUFBaUIsR0FBQSxjQUFBSSxJQUFBLEtBQUFBLElBQUEsQ0FBQVYsR0FBQSxJQUFBVSxJQUFBLENBQUFDLEdBQUEsS0FBQVIsTUFBQSxDQUFBQyxjQUFBLENBQUFILE1BQUEsRUFBQUssR0FBQSxFQUFBSSxJQUFBLFlBQUFULE1BQUEsQ0FBQUssR0FBQSxJQUFBakIsR0FBQSxDQUFBaUIsR0FBQSxTQUFBTCxNQUFBLENBQUFWLE9BQUEsR0FBQUYsR0FBQSxNQUFBUyxLQUFBLElBQUFBLEtBQUEsQ0FBQWEsR0FBQSxDQUFBdEIsR0FBQSxFQUFBWSxNQUFBLFlBQUFBLE1BQUE7QUFBQSxTQUFBVyxlQUFBQyxHQUFBLEVBQUFDLENBQUEsV0FBQUMsZUFBQSxDQUFBRixHQUFBLEtBQUFHLHFCQUFBLENBQUFILEdBQUEsRUFBQUMsQ0FBQSxLQUFBRywyQkFBQSxDQUFBSixHQUFBLEVBQUFDLENBQUEsS0FBQUksZ0JBQUE7QUFBQSxTQUFBQSxpQkFBQSxjQUFBQyxTQUFBO0FBQUEsU0FBQUYsNEJBQUFHLENBQUEsRUFBQUMsTUFBQSxTQUFBRCxDQUFBLHFCQUFBQSxDQUFBLHNCQUFBRSxpQkFBQSxDQUFBRixDQUFBLEVBQUFDLE1BQUEsT0FBQUUsQ0FBQSxHQUFBcEIsTUFBQSxDQUFBSSxTQUFBLENBQUFpQixRQUFBLENBQUFmLElBQUEsQ0FBQVcsQ0FBQSxFQUFBSyxLQUFBLGFBQUFGLENBQUEsaUJBQUFILENBQUEsQ0FBQU0sV0FBQSxFQUFBSCxDQUFBLEdBQUFILENBQUEsQ0FBQU0sV0FBQSxDQUFBQyxJQUFBLE1BQUFKLENBQUEsY0FBQUEsQ0FBQSxtQkFBQUssS0FBQSxDQUFBQyxJQUFBLENBQUFULENBQUEsT0FBQUcsQ0FBQSwrREFBQU8sSUFBQSxDQUFBUCxDQUFBLFVBQUFELGlCQUFBLENBQUFGLENBQUEsRUFBQUMsTUFBQTtBQUFBLFNBQUFDLGtCQUFBVCxHQUFBLEVBQUFrQixHQUFBLFFBQUFBLEdBQUEsWUFBQUEsR0FBQSxHQUFBbEIsR0FBQSxDQUFBbUIsTUFBQSxFQUFBRCxHQUFBLEdBQUFsQixHQUFBLENBQUFtQixNQUFBLFdBQUFsQixDQUFBLE1BQUFtQixJQUFBLE9BQUFMLEtBQUEsQ0FBQUcsR0FBQSxHQUFBakIsQ0FBQSxHQUFBaUIsR0FBQSxFQUFBakIsQ0FBQSxJQUFBbUIsSUFBQSxDQUFBbkIsQ0FBQSxJQUFBRCxHQUFBLENBQUFDLENBQUEsVUFBQW1CLElBQUE7QUFBQSxTQUFBakIsc0JBQUFILEdBQUEsRUFBQUMsQ0FBQSxRQUFBb0IsRUFBQSxXQUFBckIsR0FBQSxnQ0FBQXNCLE1BQUEsSUFBQXRCLEdBQUEsQ0FBQXNCLE1BQUEsQ0FBQUMsUUFBQSxLQUFBdkIsR0FBQSw0QkFBQXFCLEVBQUEsUUFBQUcsRUFBQSxFQUFBQyxFQUFBLEVBQUFDLEVBQUEsRUFBQUMsRUFBQSxFQUFBQyxJQUFBLE9BQUFDLEVBQUEsT0FBQUMsRUFBQSxpQkFBQUosRUFBQSxJQUFBTCxFQUFBLEdBQUFBLEVBQUEsQ0FBQXpCLElBQUEsQ0FBQUksR0FBQSxHQUFBK0IsSUFBQSxRQUFBOUIsQ0FBQSxRQUFBWCxNQUFBLENBQUErQixFQUFBLE1BQUFBLEVBQUEsVUFBQVEsRUFBQSx1QkFBQUEsRUFBQSxJQUFBTCxFQUFBLEdBQUFFLEVBQUEsQ0FBQTlCLElBQUEsQ0FBQXlCLEVBQUEsR0FBQVcsSUFBQSxNQUFBSixJQUFBLENBQUFLLElBQUEsQ0FBQVQsRUFBQSxDQUFBVSxLQUFBLEdBQUFOLElBQUEsQ0FBQVQsTUFBQSxLQUFBbEIsQ0FBQSxHQUFBNEIsRUFBQSxpQkFBQU0sR0FBQSxJQUFBTCxFQUFBLE9BQUFMLEVBQUEsR0FBQVUsR0FBQSx5QkFBQU4sRUFBQSxZQUFBUixFQUFBLENBQUFlLE1BQUEsS0FBQVQsRUFBQSxHQUFBTixFQUFBLENBQUFlLE1BQUEsSUFBQTlDLE1BQUEsQ0FBQXFDLEVBQUEsTUFBQUEsRUFBQSwyQkFBQUcsRUFBQSxRQUFBTCxFQUFBLGFBQUFHLElBQUE7QUFBQSxTQUFBMUIsZ0JBQUFGLEdBQUEsUUFBQWUsS0FBQSxDQUFBc0IsT0FBQSxDQUFBckMsR0FBQSxVQUFBQSxHQUFBO0FBRy9CLFNBQVNzQyxRQUFRQSxDQUFBLEVBQUc7RUFDbEIsT0FBTyxDQUFDLEdBQUcsR0FBR0MsSUFBSSxDQUFDQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsR0FBR0QsSUFBSSxDQUFDQyxNQUFNLENBQUMsQ0FBQyxFQUFFLEdBQUcsR0FBR0QsSUFBSSxDQUFDQyxNQUFNLENBQUMsQ0FBQyxDQUFDO0FBQ3hFO0FBRWUsU0FBU0MsT0FBT0EsQ0FBQSxFQUFHO0VBQ2hDLE1BQUFDLFNBQUEsR0FBMEIsSUFBQUMsZUFBUSxFQUFDTCxRQUFRLENBQUM7SUFBQU0sVUFBQSxHQUFBN0MsY0FBQSxDQUFBMkMsU0FBQTtJQUFyQ0csS0FBSyxHQUFBRCxVQUFBO0lBQUVFLFFBQVEsR0FBQUYsVUFBQTtFQUN0QixNQUFNRyxHQUFHLFVBQUFDLE1BQUEsQ0FBVUgsS0FBSyxDQUFDSSxJQUFJLENBQUMsR0FBRyxDQUFDLE1BQUc7RUFDckMsb0JBQ0UvRSxNQUFBLENBQUFRLE9BQUEsQ0FBQXdFLGFBQUEsQ0FBQzdFLHVCQUFBLENBQUFLLE9BQXNCLHFCQUNyQlIsTUFBQSxDQUFBUSxPQUFBLENBQUF3RSxhQUFBO0lBQ0V6RCxHQUFHLEVBQUVvRCxLQUFLLENBQUNJLElBQUksQ0FBQyxFQUFFLENBQUU7SUFDcEJFLEtBQUssRUFBRTtNQUNMQyxLQUFLLEVBQUUsT0FBTztNQUNkQyxNQUFNLEVBQUUsT0FBTztNQUNmQyxlQUFlLEVBQUVQLEdBQUc7TUFDcEJRLFNBQVMsRUFBRTtJQUNiO0VBQUUsZ0JBRUZyRixNQUFBLENBQUFRLE9BQUEsQ0FBQXdFLGFBQUEsQ0FBQzNFLE9BQUEsQ0FBQUcsT0FBTTtJQUFDOEUsT0FBTyxFQUFDLFFBQVE7SUFBQ0MsT0FBTyxFQUFFLFNBQUFBLFFBQUE7TUFBQSxPQUFNWCxRQUFRLENBQUNSLFFBQVEsQ0FBQyxDQUFDLENBQUM7SUFBQTtFQUFDLHdCQUVyRCxDQUFDLGVBQ1RwRSxNQUFBLENBQUFRLE9BQUEsQ0FBQXdFLGFBQUEsa0JBQVcsQ0FBQyxlQUNaaEYsTUFBQSxDQUFBUSxPQUFBLENBQUF3RSxhQUFBLFlBQUlMLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQ2EsT0FBTyxDQUFDLENBQUMsQ0FBSyxDQUFDLGVBQzVCeEYsTUFBQSxDQUFBUSxPQUFBLENBQUF3RSxhQUFBLFlBQUlMLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQ2EsT0FBTyxDQUFDLENBQUMsQ0FBSyxDQUFDLGVBQzVCeEYsTUFBQSxDQUFBUSxPQUFBLENBQUF3RSxhQUFBLFlBQUlMLEtBQUssQ0FBQyxDQUFDLENBQUMsQ0FBQ2EsT0FBTyxDQUFDLENBQUMsQ0FBSyxDQUN4QixDQUNpQixDQUFDO0FBRTdCIn0=
@@ -10,4 +10,5 @@ Object.defineProperty(exports, "default", {
10
10
  }
11
11
  });
12
12
  var _UncontrolledTransition = _interopRequireDefault(require("./UncontrolledTransition"));
13
- function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
13
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
14
+ //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJuYW1lcyI6WyJfVW5jb250cm9sbGVkVHJhbnNpdGlvbiIsIl9pbnRlcm9wUmVxdWlyZURlZmF1bHQiLCJyZXF1aXJlIiwib2JqIiwiX19lc01vZHVsZSIsImRlZmF1bHQiXSwic291cmNlcyI6WyIuLi8uLi8uLi9zcmMvY29tcG9uZW50cy9VbmNvbnRyb2xsZWRUcmFuc2l0aW9uL2luZGV4LnRzeCJdLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgeyBkZWZhdWx0IH0gZnJvbSAnLi9VbmNvbnRyb2xsZWRUcmFuc2l0aW9uJztcbiJdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7QUFBQSxJQUFBQSx1QkFBQSxHQUFBQyxzQkFBQSxDQUFBQyxPQUFBO0FBQW1ELFNBQUFELHVCQUFBRSxHQUFBLFdBQUFBLEdBQUEsSUFBQUEsR0FBQSxDQUFBQyxVQUFBLEdBQUFELEdBQUEsS0FBQUUsT0FBQSxFQUFBRixHQUFBIn0=
@@ -7,7 +7,7 @@ export declare type WalletConnectionProps = PropsWithChildren<Omit<ReturnType<ty
7
7
  isConnectedAndValidChain: boolean;
8
8
  isConnected: boolean;
9
9
  wallet?: string;
10
- connect: () => void;
10
+ connect: () => Promise<void>;
11
11
  disconnect: () => void;
12
12
  changeChainId: () => void;
13
13
  }>;
@@ -37,6 +37,9 @@ declare type Props = {
37
37
  */
38
38
  Content: (props: WalletConnectionProps) => ReactElement;
39
39
  };
40
+ /**
41
+ * This component handles some cenarios when dealing with the wallet connection to different providers (ex: Metamask)
42
+ **/
40
43
  declare const WalletConnectionWrapper: React.ForwardRefExoticComponent<Props & {
41
44
  children?: React.ReactNode;
42
45
  } & React.RefAttributes<{