@televet/kibble-ui 3.0.13-franklin-1 → 3.0.13

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 (145) hide show
  1. package/build/{alert.component-08e02a01.js → alert.component-4d48d218.js} +2 -2
  2. package/build/{alert.component-08e02a01.js.map → alert.component-4d48d218.js.map} +1 -1
  3. package/build/{avatar.component-92acde54.js → avatar.component-dd61be1f.js} +2 -2
  4. package/build/{avatar.component-92acde54.js.map → avatar.component-dd61be1f.js.map} +1 -1
  5. package/build/avatarGroup.component-50a37594.js +2 -0
  6. package/build/{avatarGroup.component-2e4d7707.js.map → avatarGroup.component-50a37594.js.map} +1 -1
  7. package/build/button.component-15b49687.js +2 -0
  8. package/build/{button.component-c427cfcc.js.map → button.component-15b49687.js.map} +1 -1
  9. package/build/chakra/index.js +1 -1
  10. package/build/{chakra-ui-modal.esm-8092955a.js → chakra-ui-modal.esm-2c76cb7b.js} +2 -2
  11. package/build/{chakra-ui-modal.esm-8092955a.js.map → chakra-ui-modal.esm-2c76cb7b.js.map} +1 -1
  12. package/build/{chakra-ui-skeleton.esm-521bb4b7.js → chakra-ui-skeleton.esm-93e41d9f.js} +2 -2
  13. package/build/{chakra-ui-skeleton.esm-521bb4b7.js.map → chakra-ui-skeleton.esm-93e41d9f.js.map} +1 -1
  14. package/build/{checkbox.component-ff4a4003.js → checkbox.component-ca33f17c.js} +2 -2
  15. package/build/{checkbox.component-ff4a4003.js.map → checkbox.component-ca33f17c.js.map} +1 -1
  16. package/build/checkboxGroup.component-7a918704.js +2 -0
  17. package/build/{checkboxGroup.component-1d74ce5c.js.map → checkboxGroup.component-7a918704.js.map} +1 -1
  18. package/build/{color.record-cc264e0d.js → color.record-f5dba322.js} +2 -2
  19. package/build/{color.record-cc264e0d.js.map → color.record-f5dba322.js.map} +1 -1
  20. package/build/components/Alert/index.js +1 -1
  21. package/build/components/Avatar/index.js +1 -1
  22. package/build/components/AvatarGroup/index.js +1 -1
  23. package/build/components/Button/index.js +1 -1
  24. package/build/components/Checkbox/index.js +1 -1
  25. package/build/components/CheckboxGroup/index.js +1 -1
  26. package/build/components/DatePicker/index.js +1 -1
  27. package/build/components/Icon/index.js +1 -1
  28. package/build/components/Link/index.js +1 -1
  29. package/build/components/Menu/components/MenuButton/index.js +1 -1
  30. package/build/components/Menu/components/MenuItem/index.js +1 -1
  31. package/build/components/Menu/components/MenuList/index.js +1 -1
  32. package/build/components/Menu/index.js +1 -1
  33. package/build/components/Modal/components/ModalBody/index.js +1 -1
  34. package/build/components/Modal/components/ModalCloseButton/index.js +1 -1
  35. package/build/components/Modal/components/ModalExpandButton/index.js +1 -1
  36. package/build/components/Modal/components/ModalFooter/index.js +1 -1
  37. package/build/components/Modal/components/ModalFooterButtons/index.js +1 -1
  38. package/build/components/Modal/components/ModalHeader/index.js +1 -1
  39. package/build/components/Modal/index.js +1 -1
  40. package/build/components/Popover/components/PopoverFooter/index.js +1 -1
  41. package/build/components/Popover/components/PopoverHeader/index.js +1 -1
  42. package/build/components/Popover/index.js +1 -1
  43. package/build/components/RadioButtonGroup/index.js +1 -1
  44. package/build/components/RadioGroup/index.js +1 -1
  45. package/build/components/Select/index.js +1 -1
  46. package/build/components/SortableList/components/DragHandle/index.js +1 -1
  47. package/build/components/SortableList/index.js +1 -1
  48. package/build/components/Switch/index.js +1 -1
  49. package/build/components/Tabs/components/Tab/index.js +1 -1
  50. package/build/components/Tabs/index.js +1 -1
  51. package/build/components/TabsLayout/index.js +1 -1
  52. package/build/components/TextInput/index.js +1 -1
  53. package/build/components/Textarea/index.js +1 -1
  54. package/build/components/TimePicker/index.js +1 -1
  55. package/build/components/TimeRange/index.js +1 -1
  56. package/build/components/Toast/index.js +1 -1
  57. package/build/components/index.js +1 -1
  58. package/build/{conversationCard.component-461817c2.js → conversationCard.component-8cf3cb66.js} +2 -2
  59. package/build/{conversationCard.component-461817c2.js.map → conversationCard.component-8cf3cb66.js.map} +1 -1
  60. package/build/{datepicker.component-99f9007e.js → datepicker.component-c38c1102.js} +2 -2
  61. package/build/{datepicker.component-99f9007e.js.map → datepicker.component-c38c1102.js.map} +1 -1
  62. package/build/dragHandle.component-87559e3a.js +2 -0
  63. package/build/{dragHandle.component-4180e134.js.map → dragHandle.component-87559e3a.js.map} +1 -1
  64. package/build/{icon.component-8fca09a3.js → icon.component-8d0ca544.js} +1 -1
  65. package/build/{icon.component-8fca09a3.js.map → icon.component-8d0ca544.js.map} +1 -1
  66. package/build/icons/index.d.ts +1 -1
  67. package/build/icons/index.js +1 -1
  68. package/build/icons/index.js.map +1 -1
  69. package/build/{index-c47ce06b.js → index-8fecff45.js} +1 -1
  70. package/build/{index-c47ce06b.js.map → index-8fecff45.js.map} +1 -1
  71. package/build/index.js +1 -1
  72. package/build/{link.component-a60b8009.js → link.component-a45bd0f4.js} +2 -2
  73. package/build/{link.component-a60b8009.js.map → link.component-a45bd0f4.js.map} +1 -1
  74. package/build/{menu.component-76107342.js → menu.component-6addfd4a.js} +2 -2
  75. package/build/{menu.component-76107342.js.map → menu.component-6addfd4a.js.map} +1 -1
  76. package/build/{menuButton.component-12b5fa03.js → menuButton.component-4552e39b.js} +2 -2
  77. package/build/{menuButton.component-12b5fa03.js.map → menuButton.component-4552e39b.js.map} +1 -1
  78. package/build/{menuItem.component-d31b4803.js → menuItem.component-5d94368e.js} +2 -2
  79. package/build/{menuItem.component-d31b4803.js.map → menuItem.component-5d94368e.js.map} +1 -1
  80. package/build/{menuList.component-d7f4a7ff.js → menuList.component-1f658cfe.js} +2 -2
  81. package/build/{menuList.component-d7f4a7ff.js.map → menuList.component-1f658cfe.js.map} +1 -1
  82. package/build/{modalBody.component-bbf482ce.js → modalBody.component-64a6b636.js} +2 -2
  83. package/build/{modalBody.component-bbf482ce.js.map → modalBody.component-64a6b636.js.map} +1 -1
  84. package/build/modalCloseButton.component-b8750057.js +2 -0
  85. package/build/{modalCloseButton.component-3e2893c2.js.map → modalCloseButton.component-b8750057.js.map} +1 -1
  86. package/build/{modalExpandButton.component-b2298efc.js → modalExpandButton.component-e82f4fca.js} +2 -2
  87. package/build/{modalExpandButton.component-b2298efc.js.map → modalExpandButton.component-e82f4fca.js.map} +1 -1
  88. package/build/{modalFooter.component-15697294.js → modalFooter.component-87129be4.js} +2 -2
  89. package/build/{modalFooter.component-15697294.js.map → modalFooter.component-87129be4.js.map} +1 -1
  90. package/build/{modalFooterButtons.component-ff5a744a.js → modalFooterButtons.component-43364bf5.js} +2 -2
  91. package/build/{modalFooterButtons.component-ff5a744a.js.map → modalFooterButtons.component-43364bf5.js.map} +1 -1
  92. package/build/{modalHeader.component-cd4f489b.js → modalHeader.component-5876efa7.js} +2 -2
  93. package/build/{modalHeader.component-cd4f489b.js.map → modalHeader.component-5876efa7.js.map} +1 -1
  94. package/build/patterns/ConversationCard/index.js +1 -1
  95. package/build/patterns/StyledAvatar/index.js +1 -1
  96. package/build/patterns/TagBlock/index.js +1 -1
  97. package/build/patterns/index.js +1 -1
  98. package/build/{popover.component-1f2af454.js → popover.component-902fefb6.js} +2 -2
  99. package/build/{popover.component-1f2af454.js.map → popover.component-902fefb6.js.map} +1 -1
  100. package/build/{popoverFooter.component-ce63a294.js → popoverFooter.component-c68647aa.js} +2 -2
  101. package/build/{popoverFooter.component-ce63a294.js.map → popoverFooter.component-c68647aa.js.map} +1 -1
  102. package/build/{popoverHeader.component-d397c037.js → popoverHeader.component-8d58bacd.js} +2 -2
  103. package/build/{popoverHeader.component-d397c037.js.map → popoverHeader.component-8d58bacd.js.map} +1 -1
  104. package/build/{radioGroup.component-f070a4be.js → radioGroup.component-32f61d36.js} +2 -2
  105. package/build/{radioGroup.component-f070a4be.js.map → radioGroup.component-32f61d36.js.map} +1 -1
  106. package/build/{select.component-180e4c49.js → select.component-455fdcbd.js} +2 -2
  107. package/build/{select.component-180e4c49.js.map → select.component-455fdcbd.js.map} +1 -1
  108. package/build/{styledAvatar.types-ce7a7adb.js → styledAvatar.types-2540b39f.js} +2 -2
  109. package/build/{styledAvatar.types-ce7a7adb.js.map → styledAvatar.types-2540b39f.js.map} +1 -1
  110. package/build/{switch.component-502828b6.js → switch.component-b10c0f86.js} +2 -2
  111. package/build/{switch.component-502828b6.js.map → switch.component-b10c0f86.js.map} +1 -1
  112. package/build/{tab.component-f8d9cbe2.js → tab.component-bf82a8a4.js} +2 -2
  113. package/build/{tab.component-f8d9cbe2.js.map → tab.component-bf82a8a4.js.map} +1 -1
  114. package/build/{tabs.component-4cc8d121.js → tabs.component-7130dcff.js} +2 -2
  115. package/build/{tabs.component-4cc8d121.js.map → tabs.component-7130dcff.js.map} +1 -1
  116. package/build/{tabsLayout.component-ce3d001f.js → tabsLayout.component-87f867f4.js} +2 -2
  117. package/build/{tabsLayout.component-ce3d001f.js.map → tabsLayout.component-87f867f4.js.map} +1 -1
  118. package/build/{tagBlock.component-b656f24e.js → tagBlock.component-995091dd.js} +2 -2
  119. package/build/{tagBlock.component-b656f24e.js.map → tagBlock.component-995091dd.js.map} +1 -1
  120. package/build/{textInput.component-03cdf2a9.js → textInput.component-daebc8ef.js} +2 -2
  121. package/build/{textInput.component-03cdf2a9.js.map → textInput.component-daebc8ef.js.map} +1 -1
  122. package/build/{textarea.component-e62b5ac2.js → textarea.component-4975fe4e.js} +2 -2
  123. package/build/{textarea.component-e62b5ac2.js.map → textarea.component-4975fe4e.js.map} +1 -1
  124. package/build/theme/index.js +1 -1
  125. package/build/theme/tokens/colors/index.js +1 -1
  126. package/build/theme/tokens/index.js +1 -1
  127. package/build/{theme.provider-774244a4.js → theme.provider-6802032a.js} +2 -2
  128. package/build/{theme.provider-774244a4.js.map → theme.provider-6802032a.js.map} +1 -1
  129. package/build/{timePicker.component-c5df3bfb.js → timePicker.component-6265ee22.js} +2 -2
  130. package/build/{timePicker.component-c5df3bfb.js.map → timePicker.component-6265ee22.js.map} +1 -1
  131. package/build/{timeRange.component-78df9aac.js → timeRange.component-a5b363c7.js} +2 -2
  132. package/build/{timeRange.component-78df9aac.js.map → timeRange.component-a5b363c7.js.map} +1 -1
  133. package/build/{useExpandButton-9cffadc3.js → useExpandButton-478244d5.js} +2 -2
  134. package/build/{useExpandButton-9cffadc3.js.map → useExpandButton-478244d5.js.map} +1 -1
  135. package/build/{useToast-567c9d25.js → useToast-6a6f0bf3.js} +2 -2
  136. package/build/{useToast-567c9d25.js.map → useToast-6a6f0bf3.js.map} +1 -1
  137. package/build/{withFormControl-7a1e24fb.js → withFormControl-a4a73b4d.js} +2 -2
  138. package/build/{withFormControl-7a1e24fb.js.map → withFormControl-a4a73b4d.js.map} +1 -1
  139. package/package.json +1 -1
  140. package/build/avatarGroup.component-2e4d7707.js +0 -2
  141. package/build/button.component-c427cfcc.js +0 -2
  142. package/build/checkboxGroup.component-1d74ce5c.js +0 -2
  143. package/build/dragHandle.component-4180e134.js +0 -2
  144. package/build/icons/FormsFilled.d.ts +0 -10
  145. package/build/modalCloseButton.component-3e2893c2.js +0 -2
@@ -1 +1 @@
1
- {"version":3,"file":"chakra-ui-modal.esm-8092955a.js","sources":["../node_modules/@chakra-ui/transition/dist/chakra-ui-transition.esm.js","../node_modules/@chakra-ui/close-button/dist/chakra-ui-close-button.esm.js","../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../node_modules/use-callback-ref/dist/es2015/useRef.js","../node_modules/use-callback-ref/dist/es2015/assignRef.js","../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../node_modules/use-sidecar/dist/es2015/medium.js","../node_modules/use-sidecar/dist/es2015/exports.js","../node_modules/react-focus-lock/dist/es2015/medium.js","../node_modules/react-focus-lock/dist/es2015/Lock.js","../node_modules/focus-lock/dist/es2015/constants.js","../node_modules/focus-lock/dist/es2015/utils/array.js","../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../node_modules/focus-lock/dist/es2015/utils/is.js","../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../node_modules/focus-lock/dist/es2015/utils/parenting.js","../node_modules/focus-lock/dist/es2015/focusInside.js","../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../node_modules/focus-lock/dist/es2015/solver.js","../node_modules/focus-lock/dist/es2015/focusMerge.js","../node_modules/focus-lock/dist/es2015/setFocus.js","../node_modules/focus-lock/dist/es2015/index.js","../node_modules/react-focus-lock/dist/es2015/util.js","../node_modules/react-focus-lock/dist/es2015/Trap.js","../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../node_modules/focus-lock/dist/es2015/focusables.js","../node_modules/react-clientside-effect/lib/index.es.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/react-focus-lock/dist/es2015/Combination.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@chakra-ui/focus-lock/dist/chakra-ui-focus-lock.esm.js","../node_modules/react-remove-scroll/node_modules/tslib/tslib.es6.js","../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../node_modules/react-remove-scroll/dist/es2015/medium.js","../node_modules/react-remove-scroll/dist/es2015/UI.js","../node_modules/react-style-singleton/dist/es2015/singleton.js","../node_modules/get-nonce/dist/es2015/index.js","../node_modules/react-style-singleton/dist/es2015/component.js","../node_modules/react-style-singleton/dist/es2015/hook.js","../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../node_modules/react-remove-scroll/dist/es2015/Combination.js","../node_modules/aria-hidden/dist/es2015/index.js","../node_modules/@chakra-ui/modal/dist/chakra-ui-modal.esm.js"],"sourcesContent":["import { isNumber, warn, mergeWith, cx, __DEV__ } from '@chakra-ui/utils';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport * as React from 'react';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar TransitionEasings = {\n ease: [0.25, 0.1, 0.25, 1],\n easeIn: [0.4, 0, 1, 1],\n easeOut: [0, 0, 0.2, 1],\n easeInOut: [0.4, 0, 0.2, 1]\n};\nvar TransitionVariants = {\n scale: {\n enter: {\n scale: 1\n },\n exit: {\n scale: 0.95\n }\n },\n fade: {\n enter: {\n opacity: 1\n },\n exit: {\n opacity: 0\n }\n },\n pushLeft: {\n enter: {\n x: \"100%\"\n },\n exit: {\n x: \"-30%\"\n }\n },\n pushRight: {\n enter: {\n x: \"-100%\"\n },\n exit: {\n x: \"30%\"\n }\n },\n pushUp: {\n enter: {\n y: \"100%\"\n },\n exit: {\n y: \"-30%\"\n }\n },\n pushDown: {\n enter: {\n y: \"-100%\"\n },\n exit: {\n y: \"30%\"\n }\n },\n slideLeft: {\n position: {\n left: 0,\n top: 0,\n bottom: 0,\n width: \"100%\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: \"-100%\",\n y: 0\n }\n },\n slideRight: {\n position: {\n right: 0,\n top: 0,\n bottom: 0,\n width: \"100%\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: \"100%\",\n y: 0\n }\n },\n slideUp: {\n position: {\n top: 0,\n left: 0,\n right: 0,\n maxWidth: \"100vw\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: 0,\n y: \"-100%\"\n }\n },\n slideDown: {\n position: {\n bottom: 0,\n left: 0,\n right: 0,\n maxWidth: \"100vw\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: 0,\n y: \"100%\"\n }\n }\n};\nfunction slideTransition(options) {\n var _options$direction;\n\n var side = (_options$direction = options == null ? void 0 : options.direction) != null ? _options$direction : \"right\";\n\n switch (side) {\n case \"right\":\n return TransitionVariants.slideRight;\n\n case \"left\":\n return TransitionVariants.slideLeft;\n\n case \"bottom\":\n return TransitionVariants.slideDown;\n\n case \"top\":\n return TransitionVariants.slideUp;\n\n default:\n return TransitionVariants.slideRight;\n }\n}\nvar TransitionDefaults = {\n enter: {\n duration: 0.2,\n ease: TransitionEasings.easeOut\n },\n exit: {\n duration: 0.1,\n ease: TransitionEasings.easeIn\n }\n};\nvar withDelay = {\n enter: function enter(transition, delay) {\n return _extends({}, transition, {\n delay: isNumber(delay) ? delay : delay == null ? void 0 : delay[\"enter\"]\n });\n },\n exit: function exit(transition, delay) {\n return _extends({}, transition, {\n delay: isNumber(delay) ? delay : delay == null ? void 0 : delay[\"exit\"]\n });\n }\n};\n\nvar _excluded$4 = [\"in\", \"unmountOnExit\", \"animateOpacity\", \"startingHeight\", \"endingHeight\", \"style\", \"className\", \"transition\", \"transitionEnd\"];\n\nvar isNumeric = function isNumeric(value) {\n return value != null && parseInt(value.toString(), 10) > 0;\n};\n\nvar defaultTransitions = {\n exit: {\n height: {\n duration: 0.2,\n ease: TransitionEasings.ease\n },\n opacity: {\n duration: 0.3,\n ease: TransitionEasings.ease\n }\n },\n enter: {\n height: {\n duration: 0.3,\n ease: TransitionEasings.ease\n },\n opacity: {\n duration: 0.4,\n ease: TransitionEasings.ease\n }\n }\n};\nvar variants$4 = {\n exit: function exit(_ref) {\n var _transition$exit;\n\n var animateOpacity = _ref.animateOpacity,\n startingHeight = _ref.startingHeight,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n return _extends({}, animateOpacity && {\n opacity: isNumeric(startingHeight) ? 1 : 0\n }, {\n height: startingHeight,\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit,\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(defaultTransitions.exit, delay)\n });\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var animateOpacity = _ref2.animateOpacity,\n endingHeight = _ref2.endingHeight,\n transition = _ref2.transition,\n transitionEnd = _ref2.transitionEnd,\n delay = _ref2.delay;\n return _extends({}, animateOpacity && {\n opacity: 1\n }, {\n height: endingHeight,\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(defaultTransitions.enter, delay)\n });\n }\n};\nvar Collapse = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var isOpen = props[\"in\"],\n unmountOnExit = props.unmountOnExit,\n _props$animateOpacity = props.animateOpacity,\n animateOpacity = _props$animateOpacity === void 0 ? true : _props$animateOpacity,\n _props$startingHeight = props.startingHeight,\n startingHeight = _props$startingHeight === void 0 ? 0 : _props$startingHeight,\n _props$endingHeight = props.endingHeight,\n endingHeight = _props$endingHeight === void 0 ? \"auto\" : _props$endingHeight,\n style = props.style,\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n rest = _objectWithoutPropertiesLoose(props, _excluded$4);\n\n var _React$useState = React.useState(false),\n mounted = _React$useState[0],\n setMounted = _React$useState[1];\n\n React.useEffect(function () {\n var timeout = setTimeout(function () {\n setMounted(true);\n });\n return function () {\n return clearTimeout(timeout);\n };\n }, []);\n /**\n * Warn 🚨: `startingHeight` and `unmountOnExit` are mutually exclusive\n *\n * If you specify a starting height, the collapsed needs to be mounted\n * for the height to take effect.\n */\n\n warn({\n condition: Boolean(startingHeight > 0 && unmountOnExit),\n message: \"startingHeight and unmountOnExit are mutually exclusive. You can't use them together\"\n });\n var hasStartingHeight = parseFloat(startingHeight.toString()) > 0;\n var custom = {\n startingHeight: startingHeight,\n endingHeight: endingHeight,\n animateOpacity: animateOpacity,\n transition: !mounted ? {\n enter: {\n duration: 0\n }\n } : transition,\n transitionEnd: mergeWith(transitionEnd, {\n exit: unmountOnExit ? undefined : {\n display: hasStartingHeight ? \"block\" : \"none\"\n }\n })\n };\n var show = unmountOnExit ? isOpen : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n initial: false,\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref\n }, rest, {\n className: cx(\"chakra-collapse\", className),\n style: _extends({\n overflow: \"hidden\",\n display: \"block\"\n }, style),\n custom: custom,\n variants: variants$4,\n initial: unmountOnExit ? \"exit\" : false,\n animate: animate,\n exit: \"exit\"\n })));\n});\n\nif (__DEV__) {\n Collapse.displayName = \"Collapse\";\n}\n\nvar _excluded$3 = [\"unmountOnExit\", \"in\", \"className\", \"transition\", \"transitionEnd\", \"delay\"];\nvar variants$3 = {\n enter: function enter(_temp) {\n var _transition$enter;\n\n var _ref = _temp === void 0 ? {} : _temp,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n\n return {\n opacity: 1,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(TransitionDefaults.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n };\n },\n exit: function exit(_temp2) {\n var _transition$exit;\n\n var _ref2 = _temp2 === void 0 ? {} : _temp2,\n transition = _ref2.transition,\n transitionEnd = _ref2.transitionEnd,\n delay = _ref2.delay;\n\n return {\n opacity: 0,\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(TransitionDefaults.exit, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n };\n }\n};\nvar fadeConfig = {\n initial: \"exit\",\n animate: \"enter\",\n exit: \"exit\",\n variants: variants$3\n};\nvar Fade = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded$3);\n\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var custom = {\n transition: transition,\n transitionEnd: transitionEnd,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref,\n className: cx(\"chakra-fade\", className),\n custom: custom\n }, fadeConfig, {\n animate: animate\n }, rest)));\n});\n\nif (__DEV__) {\n Fade.displayName = \"Fade\";\n}\n\nvar _excluded$2 = [\"unmountOnExit\", \"in\", \"reverse\", \"initialScale\", \"className\", \"transition\", \"transitionEnd\", \"delay\"];\nvar variants$2 = {\n exit: function exit(_ref) {\n var _transition$exit;\n\n var reverse = _ref.reverse,\n initialScale = _ref.initialScale,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n return _extends({\n opacity: 0\n }, reverse ? {\n scale: initialScale,\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n } : {\n transitionEnd: _extends({\n scale: initialScale\n }, transitionEnd == null ? void 0 : transitionEnd.exit)\n }, {\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(TransitionDefaults.exit, delay)\n });\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var transitionEnd = _ref2.transitionEnd,\n transition = _ref2.transition,\n delay = _ref2.delay;\n return {\n opacity: 1,\n scale: 1,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(TransitionDefaults.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n };\n }\n};\nvar scaleFadeConfig = {\n initial: \"exit\",\n animate: \"enter\",\n exit: \"exit\",\n variants: variants$2\n};\nvar ScaleFade = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n _props$reverse = props.reverse,\n reverse = _props$reverse === void 0 ? true : _props$reverse,\n _props$initialScale = props.initialScale,\n initialScale = _props$initialScale === void 0 ? 0.95 : _props$initialScale,\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded$2);\n\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var custom = {\n initialScale: initialScale,\n reverse: reverse,\n transition: transition,\n transitionEnd: transitionEnd,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref,\n className: cx(\"chakra-offset-slide\", className)\n }, scaleFadeConfig, {\n animate: animate,\n custom: custom\n }, rest)));\n});\n\nif (__DEV__) {\n ScaleFade.displayName = \"ScaleFade\";\n}\n\nvar _excluded$1 = [\"direction\", \"style\", \"unmountOnExit\", \"in\", \"className\", \"transition\", \"transitionEnd\", \"delay\"];\nvar defaultTransition = {\n exit: {\n duration: 0.15,\n ease: TransitionEasings.easeInOut\n },\n enter: {\n type: \"spring\",\n damping: 25,\n stiffness: 180\n }\n};\nvar variants$1 = {\n exit: function exit(_ref) {\n var _transition$exit;\n\n var direction = _ref.direction,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n\n var _slideTransition = slideTransition({\n direction: direction\n }),\n exitStyles = _slideTransition.exit;\n\n return _extends({}, exitStyles, {\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(defaultTransition.exit, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n });\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var direction = _ref2.direction,\n transitionEnd = _ref2.transitionEnd,\n transition = _ref2.transition,\n delay = _ref2.delay;\n\n var _slideTransition2 = slideTransition({\n direction: direction\n }),\n enterStyles = _slideTransition2.enter;\n\n return _extends({}, enterStyles, {\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(defaultTransition.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n });\n }\n};\nvar Slide = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$direction = props.direction,\n direction = _props$direction === void 0 ? \"right\" : _props$direction,\n style = props.style,\n unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded$1);\n\n var transitionStyles = slideTransition({\n direction: direction\n });\n var computedStyle = Object.assign({\n position: \"fixed\"\n }, transitionStyles.position, style);\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var custom = {\n transitionEnd: transitionEnd,\n transition: transition,\n direction: direction,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({}, rest, {\n ref: ref,\n initial: \"exit\",\n className: cx(\"chakra-slide\", className),\n animate: animate,\n exit: \"exit\",\n custom: custom,\n variants: variants$1,\n style: computedStyle\n })));\n});\n\nif (__DEV__) {\n Slide.displayName = \"Slide\";\n}\n\nvar _excluded = [\"unmountOnExit\", \"in\", \"reverse\", \"className\", \"offsetX\", \"offsetY\", \"transition\", \"transitionEnd\", \"delay\"];\nvar variants = {\n initial: function initial(_ref) {\n var _transition$exit;\n\n var offsetX = _ref.offsetX,\n offsetY = _ref.offsetY,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n return {\n opacity: 0,\n x: offsetX,\n y: offsetY,\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(TransitionDefaults.exit, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n };\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var transition = _ref2.transition,\n transitionEnd = _ref2.transitionEnd,\n delay = _ref2.delay;\n return {\n opacity: 1,\n x: 0,\n y: 0,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(TransitionDefaults.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n };\n },\n exit: function exit(_ref3) {\n var _transition$exit2;\n\n var offsetY = _ref3.offsetY,\n offsetX = _ref3.offsetX,\n transition = _ref3.transition,\n transitionEnd = _ref3.transitionEnd,\n reverse = _ref3.reverse,\n delay = _ref3.delay;\n var offset = {\n x: offsetX,\n y: offsetY\n };\n return _extends({\n opacity: 0,\n transition: (_transition$exit2 = transition == null ? void 0 : transition.exit) != null ? _transition$exit2 : withDelay.exit(TransitionDefaults.exit, delay)\n }, reverse ? _extends({}, offset, {\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n }) : {\n transitionEnd: _extends({}, offset, transitionEnd == null ? void 0 : transitionEnd.exit)\n });\n }\n};\nvar slideFadeConfig = {\n initial: \"initial\",\n animate: \"enter\",\n exit: \"exit\",\n variants: variants\n};\nvar SlideFade = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n _props$reverse = props.reverse,\n reverse = _props$reverse === void 0 ? true : _props$reverse,\n className = props.className,\n _props$offsetX = props.offsetX,\n offsetX = _props$offsetX === void 0 ? 0 : _props$offsetX,\n _props$offsetY = props.offsetY,\n offsetY = _props$offsetY === void 0 ? 8 : _props$offsetY,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var custom = {\n offsetX: offsetX,\n offsetY: offsetY,\n reverse: reverse,\n transition: transition,\n transitionEnd: transitionEnd,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref,\n className: cx(\"chakra-offset-slide\", className),\n custom: custom\n }, slideFadeConfig, {\n animate: animate\n }, rest)));\n});\n\nif (__DEV__) {\n SlideFade.displayName = \"SlideFade\";\n}\n\nexport { Collapse, TransitionEasings as EASINGS, Fade, ScaleFade, Slide, SlideFade, fadeConfig, scaleFadeConfig, slideFadeConfig };\n","import { Icon } from '@chakra-ui/icon';\nimport { forwardRef, useStyleConfig, omitThemingProps, chakra } from '@chakra-ui/system';\nimport { __DEV__ } from '@chakra-ui/utils';\nimport * as React from 'react';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar _excluded = [\"children\", \"isDisabled\", \"__css\"];\n\nvar CloseIcon = function CloseIcon(props) {\n return /*#__PURE__*/React.createElement(Icon, _extends({\n focusable: \"false\",\n \"aria-hidden\": true\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z\"\n }));\n};\n\n/**\n * A button with a close icon.\n *\n * It is used to handle the close functionality in feedback and overlay components\n * like Alerts, Toasts, Drawers and Modals.\n */\nvar CloseButton = /*#__PURE__*/forwardRef(function (props, ref) {\n var styles = useStyleConfig(\"CloseButton\", props);\n\n var _omitThemingProps = omitThemingProps(props),\n children = _omitThemingProps.children,\n isDisabled = _omitThemingProps.isDisabled,\n __css = _omitThemingProps.__css,\n rest = _objectWithoutPropertiesLoose(_omitThemingProps, _excluded);\n\n var baseStyle = {\n outline: 0,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0\n };\n return /*#__PURE__*/React.createElement(chakra.button, _extends({\n type: \"button\",\n \"aria-label\": \"Close\",\n ref: ref,\n disabled: isDisabled,\n __css: _extends({}, baseStyle, styles, __css)\n }, rest), children || /*#__PURE__*/React.createElement(CloseIcon, {\n width: \"1em\",\n height: \"1em\"\n }));\n});\n\nif (__DEV__) {\n CloseButton.displayName = \"CloseButton\";\n}\n\nexport { CloseButton };\n","import { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n return useCallbackRef(defaultValue || null, function (newValue) { return refs.forEach(function (ref) { return assignRef(ref, newValue); }); });\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nexport var hiddenGuard = {\n width: '1px',\n height: '0px',\n padding: 0,\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px'\n};\n\nvar InFocusGuard = function InFocusGuard(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }), children, children && /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-last\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }));\n};\n\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nInFocusGuard.defaultProps = {\n children: null\n};\nexport default InFocusGuard;","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nvar SideCar = function (_a) {\n var sideCar = _a.sideCar, rest = __rest(_a, [\"sideCar\"]);\n if (!sideCar) {\n throw new Error('Sidecar: please provide `sideCar` property to import the right car');\n }\n var Target = sideCar.read();\n if (!Target) {\n throw new Error('Sidecar medium not found');\n }\n return React.createElement(Target, __assign({}, rest));\n};\nSideCar.isSideCarExport = true;\nexport function exportSidecar(medium, exported) {\n medium.useMedium(exported);\n return SideCar;\n}\n","import { createMedium, createSidecarMedium } from 'use-sidecar';\nexport var mediumFocus = createMedium({}, function (_ref) {\n var target = _ref.target,\n currentTarget = _ref.currentTarget;\n return {\n target: target,\n currentTarget: currentTarget\n };\n});\nexport var mediumBlur = createMedium();\nexport var mediumEffect = createMedium();\nexport var mediumSidecar = createSidecarMedium({\n async: true\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { node, bool, string, any, arrayOf, oneOfType, object, func } from 'prop-types';\nimport * as constants from 'focus-lock/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { hiddenGuard } from './FocusGuard';\nimport { mediumFocus, mediumBlur, mediumSidecar } from './medium';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/React.forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n\n var _React$useState = React.useState(),\n realObserved = _React$useState[0],\n setObserved = _React$useState[1];\n\n var observed = React.useRef();\n var isActive = React.useRef(false);\n var originalFocusedElement = React.useRef(null);\n var children = props.children,\n disabled = props.disabled,\n noFocusGuards = props.noFocusGuards,\n persistentFocus = props.persistentFocus,\n crossFrame = props.crossFrame,\n autoFocus = props.autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n _props$shards = props.shards,\n shards = _props$shards === void 0 ? emptyArray : _props$shards,\n _props$as = props.as,\n Container = _props$as === void 0 ? 'div' : _props$as,\n _props$lockProps = props.lockProps,\n containerProps = _props$lockProps === void 0 ? {} : _props$lockProps,\n SideCar = props.sideCar,\n shouldReturnFocus = props.returnFocus,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n\n var _React$useState2 = React.useState({}),\n id = _React$useState2[0]; // SIDE EFFECT CALLBACKS\n\n\n var onActivation = React.useCallback(function () {\n originalFocusedElement.current = originalFocusedElement.current || document && document.activeElement;\n\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n\n isActive.current = true;\n }, [onActivationCallback]);\n var onDeactivation = React.useCallback(function () {\n isActive.current = false;\n\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n }, [onDeactivationCallback]);\n var returnFocus = React.useCallback(function (allowDefer) {\n var current = originalFocusedElement.current;\n\n if (Boolean(shouldReturnFocus) && current && current.focus) {\n var focusOptions = typeof shouldReturnFocus === 'object' ? shouldReturnFocus : undefined;\n originalFocusedElement.current = null;\n\n if (allowDefer) {\n // React might return focus after update\n // it's safer to defer the action\n Promise.resolve().then(function () {\n return current.focus(focusOptions);\n });\n } else {\n current.focus(focusOptions);\n }\n }\n }, [shouldReturnFocus]); // MEDIUM CALLBACKS\n\n var onFocus = React.useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium; // REF PROPAGATION\n // not using real refs due to race conditions\n\n var setObserveNode = React.useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n\n React.useEffect(function () {\n if (!observed.current) {\n // eslint-disable-next-line no-console\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, hasLeadingGuards && [/*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }),\n /*#__PURE__*/\n // nearest focus guard\n React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) // first tabbed element guard\n ], !disabled && /*#__PURE__*/React.createElement(SideCar, {\n id: id,\n sideCar: mediumSidecar,\n observed: realObserved,\n disabled: disabled,\n persistentFocus: persistentFocus,\n crossFrame: crossFrame,\n autoFocus: autoFocus,\n whiteList: whiteList,\n shards: shards,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), children), hasTailingGuards && /*#__PURE__*/React.createElement(\"div\", {\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }));\n});\nFocusLock.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: node,\n disabled: bool,\n returnFocus: oneOfType([bool, object]),\n noFocusGuards: bool,\n allowTextSelection: bool,\n autoFocus: bool,\n persistentFocus: bool,\n crossFrame: bool,\n group: string,\n className: string,\n whiteList: func,\n shards: arrayOf(any),\n as: oneOfType([string, func, object]),\n lockProps: object,\n onActivation: func,\n onDeactivation: func,\n sideCar: any.isRequired\n} : {};\nFocusLock.defaultProps = {\n children: undefined,\n disabled: false,\n returnFocus: false,\n noFocusGuards: false,\n autoFocus: true,\n persistentFocus: false,\n crossFrame: true,\n allowTextSelection: undefined,\n group: undefined,\n className: undefined,\n whiteList: undefined,\n shards: undefined,\n as: 'div',\n lockProps: {},\n onActivation: undefined,\n onDeactivation: undefined\n};\nexport default FocusLock;","export var FOCUS_GROUP = 'data-focus-lock';\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n","export var toArray = function (a) {\n var ret = Array(a.length);\n for (var i = 0; i < a.length; ++i) {\n ret[i] = a[i];\n }\n return ret;\n};\nexport var asArray = function (a) { return (Array.isArray(a) ? a : [a]); };\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\nvar filterNested = function (nodes) {\n var contained = new Set();\n var l = nodes.length;\n for (var i = 0; i < l; i += 1) {\n for (var j = i + 1; j < l; j += 1) {\n var position = nodes[i].compareDocumentPosition(nodes[j]);\n if ((position & Node.DOCUMENT_POSITION_CONTAINED_BY) > 0) {\n contained.add(j);\n }\n if ((position & Node.DOCUMENT_POSITION_CONTAINS) > 0) {\n contained.add(i);\n }\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\nexport var getAllAffectedNodes = function (node) {\n var nodes = asArray(node);\n return nodes.filter(Boolean).reduce(function (acc, currentNode) {\n var group = currentNode.getAttribute(FOCUS_GROUP);\n acc.push.apply(acc, (group\n ? filterNested(toArray(getTopParent(currentNode).querySelectorAll(\"[\" + FOCUS_GROUP + \"=\\\"\" + group + \"\\\"]:not([\" + FOCUS_DISABLED + \"=\\\"disabled\\\"])\")))\n : [currentNode]));\n return acc;\n }, []);\n};\n","var isElementHidden = function (node) {\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n var computedStyle = window.getComputedStyle(node, null);\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nvar isVisibleUncached = function (node, checkParent) {\n return !node ||\n node === document ||\n (node && node.nodeType === Node.DOCUMENT_NODE) ||\n (!isElementHidden(node) &&\n checkParent(node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? node.parentNode.host\n : node.parentNode));\n};\nexport var isVisibleCached = function (visibilityCache, node) {\n var cached = visibilityCache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isVisibleUncached(node, isVisibleCached.bind(undefined, visibilityCache));\n visibilityCache.set(node, result);\n return result;\n};\nexport var notHiddenInput = function (node) {\n return !((node.tagName === 'INPUT' || node.tagName === 'BUTTON') && (node.type === 'hidden' || node.disabled));\n};\nexport var isGuard = function (node) { return Boolean(node && node.dataset && node.dataset.focusGuard); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var tabDiff = a.tabIndex - b.tabIndex;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!a.tabIndex) {\n return 1;\n }\n if (!b.tabIndex) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) { return ({\n node: node,\n index: index,\n tabIndex: keepGuards && node.tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : node.tabIndex,\n }); })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","import { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = queryTabbables + \", [data-focus-guard]\";\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n return acc.concat(toArray(parent.querySelectorAll(withGuards ? queryGuardTabbables : queryTabbables)), parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\" + FOCUS_AUTO + \"]\");\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","export var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[tabindex]',\n '[contenteditable]',\n '[autofocus]',\n];\n","import { toArray } from './array';\nimport { isVisibleCached, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\nexport var filterFocusable = function (nodes, visibilityCache) {\n return toArray(nodes)\n .filter(function (node) { return isVisibleCached(visibilityCache, node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var getTabbableNodes = function (topNodes, visibilityCache, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards), visibilityCache), true, withGuards);\n};\nexport var getAllTabbableNodes = function (topNodes, visibilityCache) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes), visibilityCache), false);\n};\nexport var parentAutofocusables = function (topNode, visibilityCache) {\n return filterFocusable(getParentAutofocusables(topNode), visibilityCache);\n};\n","import { asArray } from './array';\nimport { parentAutofocusables } from './DOMutils';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode, parents);\n }\n return parents;\n};\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n for (var i = 0; i < parentsA.length; i += 1) {\n var currentParent = parentsA[i];\n if (parentsB.indexOf(currentParent) >= 0) {\n return currentParent;\n }\n }\n return false;\n};\nexport var getTopCommonParent = function (baseActiveElement, leftEntry, rightEntries) {\n var activeElements = asArray(baseActiveElement);\n var leftEntries = asArray(leftEntry);\n var activeElement = activeElements[0];\n var topCommon = false;\n leftEntries.filter(Boolean).forEach(function (entry) {\n topCommon = getCommonParent(topCommon || entry, entry) || topCommon;\n rightEntries.filter(Boolean).forEach(function (subEntry) {\n var common = getCommonParent(activeElement, subEntry);\n if (common) {\n if (!topCommon || common.contains(topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n return topCommon;\n};\nexport var allParentAutofocusables = function (entries, visibilityCache) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node, visibilityCache)); }, []);\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { toArray } from './utils/array';\nvar focusInFrame = function (frame) { return frame === document.activeElement; };\nvar focusInsideIframe = function (topNode) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node); }));\n};\nexport var focusInside = function (topNode) {\n var activeElement = document && document.activeElement;\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).reduce(function (result, node) { return result || node.contains(activeElement) || focusInsideIframe(node); }, false);\n};\n","var isRadio = function (node) { return node.tagName === 'INPUT' && node.type === 'radio'; };\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadio)\n .filter(function (el) { return el.name === node.name; })\n .filter(function (el) { return el.checked; })[0] || node;\n};\nexport var correctNode = function (node, nodes) {\n if (isRadio(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\nexport var correctNodes = function (nodes) {\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n return nodes.filter(function (node) { return resultSet.has(node); });\n};\n","import { correctNode } from './correctFocus';\nexport var pickFirstFocus = function (nodes) {\n if (nodes[0] && nodes.length > 1) {\n return correctNode(nodes[0], nodes);\n }\n return nodes[0];\n};\nexport var pickFocusable = function (nodes, index) {\n if (nodes.length > 1) {\n return nodes.indexOf(correctNode(nodes[index], nodes));\n }\n return index;\n};\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\nexport var newFocus = function (innerNodes, outerNodes, activeElement, lastNode) {\n var cnt = innerNodes.length;\n var firstFocus = innerNodes[0];\n var lastFocus = innerNodes[cnt - 1];\n var isOnGuard = isGuard(activeElement);\n if (innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = outerNodes.indexOf(activeElement);\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var correctedIndexDiff = correctedNodes.indexOf(activeElement) - (lastNode ? correctedNodes.indexOf(lastNode) : activeIndex);\n var returnFirstNode = pickFocusable(innerNodes, 0);\n var returnLastNode = pickFocusable(innerNodes, cnt - 1);\n if (activeIndex === -1 || lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n if (indexDiff && Math.abs(correctedIndexDiff) > 1) {\n return lastNodeInside;\n }\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n return undefined;\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getAllTabbableNodes, getTabbableNodes } from './utils/DOMutils';\nimport { pickFirstFocus } from './utils/firstFocus';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar findAutoFocused = function (autoFocusables) { return function (node) {\n return node.autofocus || (node.dataset && !!node.dataset.autofocus) || autoFocusables.indexOf(node) >= 0;\n}; };\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\nexport var getFocusMerge = function (topNode, lastNode) {\n var activeElement = (document && document.activeElement);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var visibilityCache = new Map();\n var anyFocusable = getAllTabbableNodes(entries, visibilityCache);\n var innerElements = getTabbableNodes(entries, visibilityCache).filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n innerElements = anyFocusable;\n if (!innerElements[0]) {\n return undefined;\n }\n }\n var outerNodes = getAllTabbableNodes([commonParent], visibilityCache).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n var innerNodes = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerNodes, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var autoFocusable = anyFocusable\n .map(function (_a) {\n var node = _a.node;\n return node;\n })\n .filter(findAutoFocused(allParentAutofocusables(entries, visibilityCache)));\n return {\n node: autoFocusable && autoFocusable.length ? pickFirstFocus(autoFocusable) : pickFirstFocus(innerNodes),\n };\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { getFocusMerge } from './focusMerge';\nexport var focusOn = function (target) {\n target.focus();\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\nvar guardCount = 0;\nvar lockDisabled = false;\nexport var setFocus = function (topNode, lastNode) {\n var focusable = getFocusMerge(topNode, lastNode);\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n if (guardCount > 2) {\n console.error('FocusLock: focus-fighting detected. Only one focus management system could be active. ' +\n 'See https://github.com/theKashey/focus-lock/#focus-fighting');\n lockDisabled = true;\n setTimeout(function () {\n lockDisabled = false;\n }, 1);\n return;\n }\n guardCount++;\n focusOn(focusable.node);\n guardCount--;\n }\n};\n","import * as constants from './constants';\nimport { getFocusabledIn } from './focusables';\nimport { focusInside } from './focusInside';\nimport { focusIsHidden } from './focusIsHidden';\nimport { getFocusMerge as focusMerge } from './focusMerge';\nimport { setFocus } from './setFocus';\nimport { focusNextElement, focusPrevElement } from './sibling';\nimport tabHook from './tabHook';\nimport { getAllAffectedNodes } from './utils/all-affected';\nexport { tabHook, focusInside, focusIsHidden, focusMerge, getFocusabledIn, constants, getAllAffectedNodes, focusNextElement, focusPrevElement, };\nexport default setFocus;\n","export function deferAction(action) {\n // Hidding setImmediate from Webpack to avoid inserting polyfill\n var _window = window,\n setImmediate = _window.setImmediate;\n\n if (typeof setImmediate !== 'undefined') {\n setImmediate(action);\n } else {\n setTimeout(action, 1);\n }\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport moveFocusInside, { focusInside, focusIsHidden, getFocusabledIn } from 'focus-lock';\nimport { deferAction } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\n\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\n\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\n\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\n\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\n\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\n\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\n\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\n\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n\n do {\n var item = allNodes[i];\n\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n // we will tab to the next element\n return;\n }\n\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\n\nvar extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\n\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n // with cross frame return true for any value\n return Boolean(focusWasOutsideWindow);\n } // in other case return only of focus went a while aho\n\n\n return focusWasOutsideWindow === 'meanwhile';\n};\n\nvar activateTrap = function activateTrap() {\n var result = false;\n\n if (lastActiveTrap) {\n var _lastActiveTrap = lastActiveTrap,\n observed = _lastActiveTrap.observed,\n persistentFocus = _lastActiveTrap.persistentFocus,\n autoFocus = _lastActiveTrap.autoFocus,\n shards = _lastActiveTrap.shards,\n crossFrame = _lastActiveTrap.crossFrame;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n var activeElement = document && document.activeElement;\n\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || focusWasOutside(crossFrame) || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n // Check if blur() exists, which is missing on certain elements on IE\n if (activeElement.blur) {\n activeElement.blur();\n }\n\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus);\n lastPortaledElement = {};\n }\n }\n\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n }\n }\n\n if (document) {\n var newActiveElement = document && document.activeElement;\n var allNodes = getFocusabledIn(workingArea);\n var focusedIndex = allNodes.map(function (_ref) {\n var node = _ref.node;\n return node;\n }).indexOf(newActiveElement);\n\n if (focusedIndex > -1) {\n // remove old focus\n allNodes.filter(function (_ref2) {\n var guard = _ref2.guard,\n node = _ref2.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref3) {\n var node = _ref3.node;\n return node.removeAttribute('tabIndex');\n });\n autoGuard(focusedIndex, allNodes.length, +1, allNodes);\n autoGuard(focusedIndex, -1, -1, allNodes);\n }\n }\n }\n }\n\n return result;\n};\n\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n // prevent scroll jump\n event.stopPropagation();\n event.preventDefault();\n }\n};\n\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\n\nvar onFocus = function onFocus(event) {\n // detect portal\n var source = event.target;\n var currentNode = event.currentTarget;\n\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\n\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\n\nvar FocusTrap = function FocusTrap(_ref4) {\n var children = _ref4.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\n\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\n\nvar onWindowBlur = function onWindowBlur() {\n focusWasOutsideWindow = 'just'; // using setTimeout to set this variable after React/sidecar reaction\n\n setTimeout(function () {\n focusWasOutsideWindow = 'meanwhile';\n }, 0);\n};\n\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap, true);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('blur', onWindowBlur);\n};\n\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap, true);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('blur', onWindowBlur);\n};\n\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref5) {\n var disabled = _ref5.disabled;\n return !disabled;\n });\n}\n\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation(); // return focus only of last trap was removed\n\n if (!traps.filter(function (_ref6) {\n var id = _ref6.id;\n return id === lastTrap.id;\n }).length) {\n // allow defer is no other trap is awaiting restore\n lastTrap.returnFocus(!trap);\n }\n }\n\n if (trap) {\n lastActiveFocus = null;\n\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation();\n }\n\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n} // bind medium\n\n\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb({\n moveFocusInside: moveFocusInside,\n focusInside: focusInside\n });\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","import { FOCUS_ALLOW } from './constants';\nimport { toArray } from './utils/array';\nexport var focusIsHidden = function () {\n return document &&\n toArray(document.querySelectorAll(\"[\" + FOCUS_ALLOW + \"]\")).some(function (node) { return node.contains(document.activeElement); });\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { getTabbableNodes } from './utils/DOMutils';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\nexport var getFocusabledIn = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var visibilityCache = new Map();\n var outerNodes = getTabbableNodes([commonParent], visibilityCache, true);\n var innerElements = getTabbableNodes(entries, visibilityCache)\n .filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n })\n .map(function (_a) {\n var node = _a.node;\n return node;\n });\n return outerNodes.map(function (_a) {\n var node = _a.node, index = _a.index;\n return ({\n node: node,\n index: index,\n lockItem: innerElements.indexOf(node) >= 0,\n guard: isGuard(node),\n });\n });\n};\n","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { PureComponent } from 'react';\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n handleStateChangeOnClient(state);\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n return SideEffect;\n };\n}\n\nexport default withSideEffect;\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport FocusLockUI from './Lock';\nimport FocusTrap from './Trap';\n/* that would be a BREAKING CHANGE!\n// delaying sidecar execution till the first usage\nconst RequireSideCar = (props) => {\n // eslint-disable-next-line global-require\n const SideCar = require('./Trap').default;\n return <SideCar {...props} />;\n};\n*/\n\nvar FocusLockCombination = /*#__PURE__*/React.forwardRef(function FocusLockUICombination(props, ref) {\n return /*#__PURE__*/React.createElement(FocusLockUI, _extends({\n sideCar: FocusTrap,\n ref: ref\n }, props));\n});\n\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\n\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","import * as React from 'react';\nimport ReactFocusLock from 'react-focus-lock';\nimport { getAllFocusable, focus, __DEV__ } from '@chakra-ui/utils';\n\nvar FocusLock = function FocusLock(props) {\n var initialFocusRef = props.initialFocusRef,\n finalFocusRef = props.finalFocusRef,\n contentRef = props.contentRef,\n restoreFocus = props.restoreFocus,\n children = props.children,\n isDisabled = props.isDisabled,\n autoFocus = props.autoFocus,\n persistentFocus = props.persistentFocus,\n lockFocusAcrossFrames = props.lockFocusAcrossFrames;\n var onActivation = React.useCallback(function () {\n if (initialFocusRef != null && initialFocusRef.current) {\n initialFocusRef.current.focus();\n } else if (contentRef != null && contentRef.current) {\n var focusables = getAllFocusable(contentRef.current);\n\n if (focusables.length === 0) {\n focus(contentRef.current, {\n nextTick: true\n });\n }\n }\n }, [initialFocusRef, contentRef]);\n var onDeactivation = React.useCallback(function () {\n var _finalFocusRef$curren;\n\n finalFocusRef == null ? void 0 : (_finalFocusRef$curren = finalFocusRef.current) == null ? void 0 : _finalFocusRef$curren.focus();\n }, [finalFocusRef]);\n var returnFocus = restoreFocus && !finalFocusRef;\n return /*#__PURE__*/React.createElement(ReactFocusLock, {\n crossFrame: lockFocusAcrossFrames,\n persistentFocus: persistentFocus,\n autoFocus: autoFocus,\n disabled: isDisabled,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus\n }, children);\n};\n\nif (__DEV__) {\n FocusLock.displayName = \"FocusLock\";\n}\n\nexport { FocusLock, FocusLock as default };\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","export var zeroRightClassName = 'right-scroll-bar-position';\nexport var fullWidthClassName = 'width-before-scroll-bar';\nexport var noScrollbarsClassName = 'with-scroll-bars-hidden';\n/**\n * Name of a CSS variable containing the amount of \"hidden\" scrollbar\n * ! might be undefined ! use will fallback!\n */\nexport var removedBarSizeVariable = '--removed-body-scroll-bar-size';\n","import { createSidecarMedium } from 'use-sidecar';\nexport var effectCar = createSidecarMedium();\n","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { fullWidthClassName, zeroRightClassName } from 'react-remove-scroll-bar/constants';\nimport { effectCar } from './medium';\nimport { useMergeRefs } from 'use-callback-ref';\nvar nothing = function () {\n return;\n};\n/**\n * Removes scrollbar from the page and contain the scroll within the Lock\n */\nvar RemoveScroll = React.forwardRef(function (props, parentRef) {\n var ref = React.useRef(null);\n var _a = React.useState({\n onScrollCapture: nothing,\n onWheelCapture: nothing,\n onTouchMoveCapture: nothing\n }), callbacks = _a[0], setCallbacks = _a[1];\n var forwardProps = props.forwardProps, children = props.children, className = props.className, removeScrollBar = props.removeScrollBar, enabled = props.enabled, shards = props.shards, sideCar = props.sideCar, noIsolation = props.noIsolation, inert = props.inert, allowPinchZoom = props.allowPinchZoom, _b = props.as, Container = _b === void 0 ? 'div' : _b, rest = tslib_1.__rest(props, [\"forwardProps\", \"children\", \"className\", \"removeScrollBar\", \"enabled\", \"shards\", \"sideCar\", \"noIsolation\", \"inert\", \"allowPinchZoom\", \"as\"]);\n var SideCar = sideCar;\n var containerRef = useMergeRefs([\n ref,\n parentRef\n ]);\n var containerProps = tslib_1.__assign({}, rest, callbacks);\n return (React.createElement(React.Fragment, null,\n enabled && (React.createElement(SideCar, { sideCar: effectCar, removeScrollBar: removeScrollBar, shards: shards, noIsolation: noIsolation, inert: inert, setCallbacks: setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref })),\n forwardProps ? (React.cloneElement(React.Children.only(children), tslib_1.__assign({}, containerProps, { ref: containerRef }))) : (React.createElement(Container, tslib_1.__assign({}, containerProps, { className: className, ref: containerRef }), children))));\n});\nRemoveScroll.defaultProps = {\n enabled: true,\n removeScrollBar: true,\n inert: false\n};\nRemoveScroll.classNames = {\n fullWidth: fullWidthClassName,\n zeroRight: zeroRightClassName\n};\nexport { RemoveScroll };\n","import { getNonce } from 'get-nonce';\nfunction makeStyleTag() {\n if (!document)\n return null;\n var tag = document.createElement('style');\n tag.type = 'text/css';\n var nonce = getNonce();\n if (nonce) {\n tag.setAttribute('nonce', nonce);\n }\n return tag;\n}\nfunction injectStyles(tag, css) {\n // @ts-ignore\n if (tag.styleSheet) {\n // @ts-ignore\n tag.styleSheet.cssText = css;\n }\n else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n var head = document.head || document.getElementsByTagName('head')[0];\n head.appendChild(tag);\n}\nexport var stylesheetSingleton = function () {\n var counter = 0;\n var stylesheet = null;\n return {\n add: function (style) {\n if (counter == 0) {\n if ((stylesheet = makeStyleTag())) {\n injectStyles(stylesheet, style);\n insertStyleTag(stylesheet);\n }\n }\n counter++;\n },\n remove: function () {\n counter--;\n if (!counter && stylesheet) {\n stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);\n stylesheet = null;\n }\n },\n };\n};\n","var currentNonce;\nexport var setNonce = function (nonce) {\n currentNonce = nonce;\n};\nexport var getNonce = function () {\n if (currentNonce) {\n return currentNonce;\n }\n if (typeof __webpack_nonce__ !== 'undefined') {\n return __webpack_nonce__;\n }\n return undefined;\n};\n","import { styleHookSingleton } from './hook';\nexport var styleSingleton = function () {\n var useStyle = styleHookSingleton();\n var Sheet = function (_a) {\n var styles = _a.styles;\n useStyle(styles);\n return null;\n };\n return Sheet;\n};\n","import * as React from 'react';\nimport { stylesheetSingleton } from './singleton';\nexport var styleHookSingleton = function () {\n var sheet = stylesheetSingleton();\n return function (styles) {\n React.useEffect(function () {\n sheet.add(styles);\n return function () {\n sheet.remove();\n };\n }, [styles]);\n };\n};\n","export var zeroGap = {\n left: 0,\n top: 0,\n right: 0,\n gap: 0,\n};\nvar parse = function (x) { return parseInt(x || '', 10) || 0; };\nvar getOffset = function (gapMode) {\n var cs = window.getComputedStyle(document.body);\n var left = cs[gapMode === 'padding' ? 'paddingLeft' : 'marginLeft'];\n var top = cs[gapMode === 'padding' ? 'paddingTop' : 'marginTop'];\n var right = cs[gapMode === 'padding' ? 'paddingRight' : 'marginRight'];\n return [parse(left), parse(top), parse(right)];\n};\nexport var getGapWidth = function (gapMode) {\n if (gapMode === void 0) { gapMode = 'margin'; }\n if (typeof window === 'undefined') {\n return zeroGap;\n }\n var offsets = getOffset(gapMode);\n var documentWidth = document.documentElement.clientWidth;\n var windowWidth = window.innerWidth;\n return {\n left: offsets[0],\n top: offsets[1],\n right: offsets[2],\n gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0]),\n };\n};\n","import * as React from 'react';\nimport { styleSingleton } from 'react-style-singleton';\nimport { fullWidthClassName, zeroRightClassName, noScrollbarsClassName, removedBarSizeVariable } from './constants';\nimport { getGapWidth } from './utils';\nvar Style = styleSingleton();\n// important tip - once we measure scrollBar width and remove them\n// we could not repeat this operation\n// thus we are using style-singleton - only the first \"yet correct\" style will be applied.\nvar getStyles = function (_a, allowRelative, gapMode, important) {\n var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;\n if (gapMode === void 0) { gapMode = 'margin'; }\n return \"\\n .\".concat(noScrollbarsClassName, \" {\\n overflow: hidden \").concat(important, \";\\n padding-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n body {\\n overflow: hidden \").concat(important, \";\\n \").concat([\n allowRelative && \"position: relative \".concat(important, \";\"),\n gapMode === 'margin' &&\n \"\\n padding-left: \".concat(left, \"px;\\n padding-top: \").concat(top, \"px;\\n padding-right: \").concat(right, \"px;\\n margin-left:0;\\n margin-top:0;\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n \"),\n gapMode === 'padding' && \"padding-right: \".concat(gap, \"px \").concat(important, \";\"),\n ]\n .filter(Boolean)\n .join(''), \"\\n }\\n \\n .\").concat(zeroRightClassName, \" {\\n right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" {\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(zeroRightClassName, \" .\").concat(zeroRightClassName, \" {\\n right: 0 \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" .\").concat(fullWidthClassName, \" {\\n margin-right: 0 \").concat(important, \";\\n }\\n \\n body {\\n \").concat(removedBarSizeVariable, \": \").concat(gap, \"px;\\n }\\n\");\n};\n/**\n * Removes page scrollbar and blocks page scroll when mounted\n */\nexport var RemoveScrollBar = function (props) {\n var _a = React.useState(getGapWidth(props.gapMode)), gap = _a[0], setGap = _a[1];\n React.useEffect(function () {\n setGap(getGapWidth(props.gapMode));\n }, [props.gapMode]);\n var noRelative = props.noRelative, noImportant = props.noImportant, _b = props.gapMode, gapMode = _b === void 0 ? 'margin' : _b;\n return React.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? '!important' : '') });\n};\n","var elementCouldBeVScrolled = function (node) {\n var styles = window.getComputedStyle(node);\n return (styles.overflowY !== 'hidden' && // not-not-scrollable\n !(styles.overflowY === styles.overflowX && styles.overflowY === 'visible') // scrollable\n );\n};\nvar elementCouldBeHScrolled = function (node) {\n var styles = window.getComputedStyle(node);\n return (styles.overflowX !== 'hidden' && // not-not-scrollable\n !(styles.overflowY === styles.overflowX && styles.overflowX === 'visible') // scrollable\n );\n};\nexport var locationCouldBeScrolled = function (axis, node) {\n var current = node;\n do {\n var isScrollable = elementCouldBeScrolled(axis, current);\n if (isScrollable) {\n var _a = getScrollVariables(axis, current), s = _a[1], d = _a[2];\n if (s > d) {\n return true;\n }\n }\n current = current.parentNode;\n } while (current && current !== document.body);\n return false;\n};\nvar getVScrollVariables = function (_a) {\n var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;\n return [scrollTop, scrollHeight, clientHeight];\n};\nvar getHScrollVariables = function (_a) {\n var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;\n return [scrollLeft, scrollWidth, clientWidth];\n};\nvar elementCouldBeScrolled = function (axis, node) {\n return axis === 'v' ? elementCouldBeVScrolled(node) : elementCouldBeHScrolled(node);\n};\nvar getScrollVariables = function (axis, node) {\n return axis === 'v' ? getVScrollVariables(node) : getHScrollVariables(node);\n};\nexport var handleScroll = function (axis, endTarget, event, sourceDelta, noOverscroll) {\n var delta = sourceDelta;\n // find scrollable target\n var target = event.target;\n var targetInLock = endTarget.contains(target);\n var shouldCancelScroll = false;\n var isDeltaPositive = delta > 0;\n var availableScroll = 0;\n var availableScrollTop = 0;\n do {\n var _a = getScrollVariables(axis, target), position = _a[0], scroll_1 = _a[1], capacity = _a[2];\n var elementScroll = scroll_1 - capacity - position;\n if (position || elementScroll) {\n if (elementCouldBeScrolled(axis, target)) {\n availableScroll += elementScroll;\n availableScrollTop += position;\n }\n }\n target = target.parentNode;\n } while (\n // portaled content\n (!targetInLock && target !== document.body) ||\n // self content\n (targetInLock && (endTarget.contains(target) || endTarget === target)));\n if (isDeltaPositive &&\n ((noOverscroll && availableScroll === 0) ||\n (!noOverscroll && delta > availableScroll))) {\n shouldCancelScroll = true;\n }\n else if (!isDeltaPositive &&\n ((noOverscroll && availableScrollTop === 0) ||\n (!noOverscroll && -delta > availableScrollTop))) {\n shouldCancelScroll = true;\n }\n return shouldCancelScroll;\n};\n","var passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n return true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\nexport var nonPassive = passiveSupported ? { passive: false } : false;\n","import * as React from 'react';\nimport { RemoveScrollBar } from 'react-remove-scroll-bar';\nimport { styleSingleton } from 'react-style-singleton';\nimport { handleScroll, locationCouldBeScrolled } from './handleScroll';\nimport { nonPassive } from './aggresiveCapture';\nexport var getTouchXY = function (event) {\n return 'changedTouches' in event\n ? [event.changedTouches[0].clientX, event.changedTouches[0].clientY]\n : [0, 0];\n};\nexport var getDeltaXY = function (event) { return [event.deltaX, event.deltaY]; };\nvar extractRef = function (ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\nvar deltaCompare = function (x, y) {\n return x[0] === y[0] && x[1] === y[1];\n};\nvar generateStyle = function (id) { return \"\\n .block-interactivity-\" + id + \" {pointer-events: none;}\\n .allow-interactivity-\" + id + \" {pointer-events: all;}\\n\"; };\nvar idCounter = 0;\nvar lockStack = [];\nexport function RemoveScrollSideCar(props) {\n var shouldPreventQueue = React.useRef([]);\n var touchStartRef = React.useRef([0, 0]);\n var activeAxis = React.useRef();\n var id = React.useState(idCounter++)[0];\n var Style = React.useState(function () { return styleSingleton(); })[0];\n var lastProps = React.useRef(props);\n React.useEffect(function () {\n lastProps.current = props;\n }, [props]);\n React.useEffect(function () {\n if (props.inert) {\n document.body.classList.add(\"block-interactivity-\" + id);\n var allow_1 = [\n props.lockRef.current\n ].concat((props.shards || []).map(extractRef)).filter(Boolean);\n allow_1.forEach(function (el) { return el.classList.add(\"allow-interactivity-\" + id); });\n return function () {\n document.body.classList.remove(\"block-interactivity-\" + id);\n allow_1.forEach(function (el) {\n return el.classList.remove(\"allow-interactivity-\" + id);\n });\n };\n }\n return;\n }, [props.inert, props.lockRef.current, props.shards]);\n var shouldCancelEvent = React.useCallback(function (event, parent) {\n if ('touches' in event && event.touches.length === 2) {\n return !lastProps.current.allowPinchZoom;\n }\n var touch = getTouchXY(event);\n var touchStart = touchStartRef.current;\n var deltaX = 'deltaX' in event ? event.deltaX : touchStart[0] - touch[0];\n var deltaY = 'deltaY' in event ? event.deltaY : touchStart[1] - touch[1];\n var currentAxis;\n var target = event.target;\n var moveDirection = Math.abs(deltaX) > Math.abs(deltaY) ? 'h' : 'v';\n var canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n if (!canBeScrolledInMainDirection) {\n return true;\n }\n if (canBeScrolledInMainDirection) {\n currentAxis = moveDirection;\n }\n else {\n currentAxis = moveDirection === 'v' ? 'h' : 'v';\n canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n // other axis might be not scrollable\n }\n if (!canBeScrolledInMainDirection) {\n return false;\n }\n if (!activeAxis.current &&\n 'changedTouches' in event &&\n (deltaX || deltaY)) {\n activeAxis.current = currentAxis;\n }\n if (!currentAxis) {\n return true;\n }\n var cancelingAxis = activeAxis.current || currentAxis;\n return handleScroll(cancelingAxis, parent, event, cancelingAxis === 'h' ? deltaX : deltaY, true);\n }, []);\n var shouldPrevent = React.useCallback(function (_event) {\n var event = _event;\n if (!lockStack.length || lockStack[lockStack.length - 1] !== Style) {\n // not the last active\n return;\n }\n var delta = 'deltaY' in event ? getDeltaXY(event) : getTouchXY(event);\n var sourceEvent = shouldPreventQueue.current.filter(function (e) {\n return e.name === event.type &&\n e.target === event.target &&\n deltaCompare(e.delta, delta);\n })[0];\n // self event, and should be canceled\n if (sourceEvent && sourceEvent.should) {\n event.preventDefault();\n return;\n }\n // outside or shard event\n if (!sourceEvent) {\n var shardNodes = (lastProps.current.shards || [])\n .map(extractRef)\n .filter(Boolean)\n .filter(function (node) { return node.contains(event.target); });\n var shouldStop = shardNodes.length > 0\n ? shouldCancelEvent(event, shardNodes[0])\n : !lastProps.current.noIsolation;\n if (shouldStop) {\n event.preventDefault();\n }\n }\n }, []);\n var shouldCancel = React.useCallback(function (name, delta, target, should) {\n var event = { name: name, delta: delta, target: target, should: should };\n shouldPreventQueue.current.push(event);\n setTimeout(function () {\n shouldPreventQueue.current = shouldPreventQueue.current.filter(function (e) { return e !== event; });\n }, 1);\n }, []);\n var scrollTouchStart = React.useCallback(function (event) {\n touchStartRef.current = getTouchXY(event);\n activeAxis.current = undefined;\n }, []);\n var scrollWheel = React.useCallback(function (event) {\n shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n var scrollTouchMove = React.useCallback(function (event) {\n shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n React.useEffect(function () {\n lockStack.push(Style);\n props.setCallbacks({\n onScrollCapture: scrollWheel,\n onWheelCapture: scrollWheel,\n onTouchMoveCapture: scrollTouchMove\n });\n document.addEventListener('wheel', shouldPrevent, nonPassive);\n document.addEventListener('touchmove', shouldPrevent, nonPassive);\n document.addEventListener('touchstart', scrollTouchStart, nonPassive);\n return function () {\n lockStack = lockStack.filter(function (inst) { return inst !== Style; });\n document.removeEventListener('wheel', shouldPrevent, nonPassive);\n document.removeEventListener('touchmove', shouldPrevent, nonPassive);\n document.removeEventListener('touchstart', scrollTouchStart, nonPassive);\n };\n }, []);\n var removeScrollBar = props.removeScrollBar, inert = props.inert;\n return (React.createElement(React.Fragment, null,\n inert ? React.createElement(Style, { styles: generateStyle(id) }) : null,\n removeScrollBar ? React.createElement(RemoveScrollBar, { gapMode: \"margin\" }) : null));\n}\n","import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, tslib_1.__assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n","var getDefaultParent = function (originalTarget) {\n if (typeof document === 'undefined') {\n return null;\n }\n var sampleTarget = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;\n return sampleTarget.ownerDocument.body;\n};\nvar counterMap = new WeakMap();\nvar uncontrolledNodes = new WeakMap();\nvar markerMap = {};\nvar lockCount = 0;\nexport var hideOthers = function (originalTarget, parentNode, markerName) {\n if (parentNode === void 0) { parentNode = getDefaultParent(originalTarget); }\n if (markerName === void 0) { markerName = \"data-aria-hidden\"; }\n var targets = Array.isArray(originalTarget) ? originalTarget : [originalTarget];\n if (!markerMap[markerName]) {\n markerMap[markerName] = new WeakMap();\n }\n var markerCounter = markerMap[markerName];\n var hiddenNodes = [];\n var elementsToKeep = new Set();\n var keep = (function (el) {\n if (!el || elementsToKeep.has(el)) {\n return;\n }\n elementsToKeep.add(el);\n keep(el.parentNode);\n });\n targets.forEach(keep);\n var deep = function (parent) {\n if (!parent || targets.indexOf(parent) >= 0) {\n return;\n }\n Array.prototype.forEach.call(parent.children, function (node) {\n if (elementsToKeep.has(node)) {\n deep(node);\n }\n else {\n var attr = node.getAttribute('aria-hidden');\n var alreadyHidden = attr !== null && attr !== 'false';\n var counterValue = (counterMap.get(node) || 0) + 1;\n var markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenNodes.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledNodes.set(node, true);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, 'true');\n }\n if (!alreadyHidden) {\n node.setAttribute('aria-hidden', 'true');\n }\n }\n });\n };\n deep(parentNode);\n elementsToKeep.clear();\n lockCount++;\n return function () {\n hiddenNodes.forEach(function (node) {\n var counterValue = counterMap.get(node) - 1;\n var markerValue = markerCounter.get(node) - 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n if (!counterValue) {\n if (!uncontrolledNodes.has(node)) {\n node.removeAttribute('aria-hidden');\n }\n uncontrolledNodes.delete(node);\n }\n if (!markerValue) {\n node.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n counterMap = new WeakMap();\n counterMap = new WeakMap();\n uncontrolledNodes = new WeakMap();\n markerMap = {};\n }\n };\n};\n","import { CloseButton } from '@chakra-ui/close-button';\nimport { FocusLock } from '@chakra-ui/focus-lock';\nimport { Portal } from '@chakra-ui/portal';\nimport { chakra, useMultiStyleConfig, StylesProvider, forwardRef, useStyles, useTheme } from '@chakra-ui/system';\nimport { slideFadeConfig, scaleFadeConfig, fadeConfig, Slide } from '@chakra-ui/transition';\nimport { callAllHandlers, __DEV__, cx } from '@chakra-ui/utils';\nimport { mergeRefs, createContext } from '@chakra-ui/react-utils';\nimport { motion, AnimatePresence, usePresence } from 'framer-motion';\nimport * as React from 'react';\nimport { useEffect, useRef, useCallback, useState } from 'react';\nimport { RemoveScroll } from 'react-remove-scroll';\nimport { useIds } from '@chakra-ui/hooks';\nimport { hideOthers } from 'aria-hidden';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar _excluded$3 = [\"preset\"];\nvar transitions = {\n slideInBottom: _extends({}, slideFadeConfig, {\n custom: {\n offsetY: 16,\n reverse: true\n }\n }),\n slideInRight: _extends({}, slideFadeConfig, {\n custom: {\n offsetX: 16,\n reverse: true\n }\n }),\n scale: _extends({}, scaleFadeConfig, {\n custom: {\n initialScale: 0.95,\n reverse: true\n }\n }),\n none: {}\n};\nvar Motion = chakra(motion.section);\nvar ModalTransition = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var preset = props.preset,\n rest = _objectWithoutPropertiesLoose(props, _excluded$3);\n\n var motionProps = transitions[preset];\n return /*#__PURE__*/React.createElement(Motion, _extends({\n ref: ref\n }, motionProps, rest));\n});\n\n/**\n * Proper state management for nested modals.\n * Simplified, but inspired by material-ui's ModalManager class.\n */\n\nvar ModalManager = /*#__PURE__*/function () {\n function ModalManager() {\n this.modals = void 0;\n this.modals = [];\n }\n\n var _proto = ModalManager.prototype;\n\n _proto.add = function add(modal) {\n this.modals.push(modal);\n };\n\n _proto.remove = function remove(modal) {\n this.modals = this.modals.filter(function (_modal) {\n return _modal !== modal;\n });\n };\n\n _proto.isTopModal = function isTopModal(modal) {\n var topmostModal = this.modals[this.modals.length - 1];\n return topmostModal === modal;\n };\n\n return ModalManager;\n}();\n\nvar manager = new ModalManager();\nfunction useModalManager(ref, isOpen) {\n useEffect(function () {\n if (isOpen) {\n manager.add(ref);\n }\n\n return function () {\n manager.remove(ref);\n };\n }, [isOpen, ref]);\n}\n\n/**\n * Modal hook that manages all the logic for the modal dialog widget\n * and returns prop getters, state and actions.\n *\n * @param props\n */\nfunction useModal(props) {\n var isOpen = props.isOpen,\n onClose = props.onClose,\n id = props.id,\n _props$closeOnOverlay = props.closeOnOverlayClick,\n closeOnOverlayClick = _props$closeOnOverlay === void 0 ? true : _props$closeOnOverlay,\n _props$closeOnEsc = props.closeOnEsc,\n closeOnEsc = _props$closeOnEsc === void 0 ? true : _props$closeOnEsc,\n _props$useInert = props.useInert,\n useInert = _props$useInert === void 0 ? true : _props$useInert,\n onOverlayClickProp = props.onOverlayClick,\n onEsc = props.onEsc;\n var dialogRef = useRef(null);\n var overlayRef = useRef(null);\n\n var _useIds = useIds(id, \"chakra-modal\", \"chakra-modal--header\", \"chakra-modal--body\"),\n dialogId = _useIds[0],\n headerId = _useIds[1],\n bodyId = _useIds[2];\n /**\n * Hook used to polyfill `aria-modal` for older browsers.\n * It uses `aria-hidden` to all other nodes.\n *\n * @see https://developer.paciellogroup.com/blog/2018/06/the-current-state-of-modal-dialog-accessibility/\n */\n\n\n useAriaHidden(dialogRef, isOpen && useInert);\n /**\n * Hook used to manage multiple or nested modals\n */\n\n useModalManager(dialogRef, isOpen);\n var mouseDownTarget = useRef(null);\n var onMouseDown = useCallback(function (event) {\n mouseDownTarget.current = event.target;\n }, []);\n var onKeyDown = useCallback(function (event) {\n if (event.key === \"Escape\") {\n event.stopPropagation();\n\n if (closeOnEsc) {\n onClose == null ? void 0 : onClose();\n }\n\n onEsc == null ? void 0 : onEsc();\n }\n }, [closeOnEsc, onClose, onEsc]);\n\n var _useState = useState(false),\n headerMounted = _useState[0],\n setHeaderMounted = _useState[1];\n\n var _useState2 = useState(false),\n bodyMounted = _useState2[0],\n setBodyMounted = _useState2[1];\n\n var getDialogProps = useCallback(function (props, ref) {\n if (props === void 0) {\n props = {};\n }\n\n if (ref === void 0) {\n ref = null;\n }\n\n return _extends({\n role: \"dialog\"\n }, props, {\n ref: mergeRefs(ref, dialogRef),\n id: dialogId,\n tabIndex: -1,\n \"aria-modal\": true,\n \"aria-labelledby\": headerMounted ? headerId : undefined,\n \"aria-describedby\": bodyMounted ? bodyId : undefined,\n onClick: callAllHandlers(props.onClick, function (event) {\n return event.stopPropagation();\n })\n });\n }, [bodyId, bodyMounted, dialogId, headerId, headerMounted]);\n var onOverlayClick = useCallback(function (event) {\n event.stopPropagation();\n /**\n * Make sure the event starts and ends on the same DOM element.\n *\n * This is used to prevent the modal from closing when you\n * start dragging from the content, and release drag outside the content.\n *\n * We prevent this because it is technically not a considered \"click outside\"\n */\n\n if (mouseDownTarget.current !== event.target) return;\n /**\n * When you click on the overlay, we want to remove only the topmost modal\n */\n\n if (!manager.isTopModal(dialogRef)) return;\n\n if (closeOnOverlayClick) {\n onClose == null ? void 0 : onClose();\n }\n\n onOverlayClickProp == null ? void 0 : onOverlayClickProp();\n }, [onClose, closeOnOverlayClick, onOverlayClickProp]);\n var getDialogContainerProps = useCallback(function (props, ref) {\n if (props === void 0) {\n props = {};\n }\n\n if (ref === void 0) {\n ref = null;\n }\n\n return _extends({}, props, {\n ref: mergeRefs(ref, overlayRef),\n onClick: callAllHandlers(props.onClick, onOverlayClick),\n onKeyDown: callAllHandlers(props.onKeyDown, onKeyDown),\n onMouseDown: callAllHandlers(props.onMouseDown, onMouseDown)\n });\n }, [onKeyDown, onMouseDown, onOverlayClick]);\n return {\n isOpen: isOpen,\n onClose: onClose,\n headerId: headerId,\n bodyId: bodyId,\n setBodyMounted: setBodyMounted,\n setHeaderMounted: setHeaderMounted,\n dialogRef: dialogRef,\n overlayRef: overlayRef,\n getDialogProps: getDialogProps,\n getDialogContainerProps: getDialogContainerProps\n };\n}\n\n/**\n * Modal hook to polyfill `aria-modal`.\n *\n * It applies `aria-hidden` to elements behind the modal\n * to indicate that they're `inert`.\n *\n * @param ref React ref of the node\n * @param shouldHide whether `aria-hidden` should be applied\n */\nfunction useAriaHidden(ref, shouldHide) {\n // save current ref in a local var to trigger the effect on identity change\n var currentElement = ref.current;\n useEffect(function () {\n // keep using `ref.current` inside the effect\n // it may have changed during render and the execution of the effect\n if (!ref.current || !shouldHide) return undefined;\n return hideOthers(ref.current);\n }, [shouldHide, ref, currentElement]);\n}\n\nvar _excluded$2 = [\"className\", \"children\", \"containerProps\"],\n _excluded2$1 = [\"className\", \"transition\"],\n _excluded3 = [\"className\"],\n _excluded4 = [\"className\"],\n _excluded5 = [\"className\"],\n _excluded6 = [\"onClick\", \"className\"];\n\nvar _createContext$1 = createContext({\n strict: true,\n name: \"ModalContext\",\n errorMessage: \"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in `<Modal />`\"\n}),\n ModalContextProvider = _createContext$1[0],\n useModalContext = _createContext$1[1];\n/**\n * Modal provides context, theming, and accessibility properties\n * to all other modal components.\n *\n * It doesn't render any DOM node.\n */\n\nvar Modal = function Modal(props) {\n var portalProps = props.portalProps,\n children = props.children,\n autoFocus = props.autoFocus,\n trapFocus = props.trapFocus,\n initialFocusRef = props.initialFocusRef,\n finalFocusRef = props.finalFocusRef,\n returnFocusOnClose = props.returnFocusOnClose,\n blockScrollOnMount = props.blockScrollOnMount,\n allowPinchZoom = props.allowPinchZoom,\n preserveScrollBarGap = props.preserveScrollBarGap,\n motionPreset = props.motionPreset,\n lockFocusAcrossFrames = props.lockFocusAcrossFrames,\n onCloseComplete = props.onCloseComplete;\n var styles = useMultiStyleConfig(\"Modal\", props);\n var modal = useModal(props);\n\n var context = _extends({}, modal, {\n autoFocus: autoFocus,\n trapFocus: trapFocus,\n initialFocusRef: initialFocusRef,\n finalFocusRef: finalFocusRef,\n returnFocusOnClose: returnFocusOnClose,\n blockScrollOnMount: blockScrollOnMount,\n allowPinchZoom: allowPinchZoom,\n preserveScrollBarGap: preserveScrollBarGap,\n motionPreset: motionPreset,\n lockFocusAcrossFrames: lockFocusAcrossFrames\n });\n\n return /*#__PURE__*/React.createElement(ModalContextProvider, {\n value: context\n }, /*#__PURE__*/React.createElement(StylesProvider, {\n value: styles\n }, /*#__PURE__*/React.createElement(AnimatePresence, {\n onExitComplete: onCloseComplete\n }, context.isOpen && /*#__PURE__*/React.createElement(Portal, portalProps, children))));\n};\nModal.defaultProps = {\n lockFocusAcrossFrames: true,\n returnFocusOnClose: true,\n scrollBehavior: \"outside\",\n trapFocus: true,\n autoFocus: true,\n blockScrollOnMount: true,\n allowPinchZoom: false,\n motionPreset: \"scale\"\n};\n\nif (__DEV__) {\n Modal.displayName = \"Modal\";\n}\n\nvar MotionDiv = chakra(motion.div);\n/**\n * ModalContent is used to group modal's content. It has all the\n * necessary `aria-*` properties to indicate that it is a modal\n */\n\nvar ModalContent = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n children = props.children,\n rootProps = props.containerProps,\n rest = _objectWithoutPropertiesLoose(props, _excluded$2);\n\n var _useModalContext = useModalContext(),\n getDialogProps = _useModalContext.getDialogProps,\n getDialogContainerProps = _useModalContext.getDialogContainerProps;\n\n var dialogProps = getDialogProps(rest, ref);\n var containerProps = getDialogContainerProps(rootProps);\n\n var _className = cx(\"chakra-modal__content\", className);\n\n var styles = useStyles();\n\n var dialogStyles = _extends({\n display: \"flex\",\n flexDirection: \"column\",\n position: \"relative\",\n width: \"100%\",\n outline: 0\n }, styles.dialog);\n\n var dialogContainerStyles = _extends({\n display: \"flex\",\n width: \"100vw\",\n height: \"100vh\",\n \"@supports(height: -webkit-fill-available)\": {\n height: \"-webkit-fill-available\"\n },\n position: \"fixed\",\n left: 0,\n top: 0\n }, styles.dialogContainer);\n\n var _useModalContext2 = useModalContext(),\n motionPreset = _useModalContext2.motionPreset;\n\n return /*#__PURE__*/React.createElement(ModalFocusScope, null, /*#__PURE__*/React.createElement(chakra.div, _extends({}, containerProps, {\n className: \"chakra-modal__content-container\" // tabindex=\"-1\" means that the element is not reachable via sequential keyboard navigation, @see #4686\n ,\n tabIndex: -1,\n __css: dialogContainerStyles\n }), /*#__PURE__*/React.createElement(ModalTransition, _extends({\n preset: motionPreset,\n className: _className\n }, dialogProps, {\n __css: dialogStyles\n }), children)));\n});\n\nif (__DEV__) {\n ModalContent.displayName = \"ModalContent\";\n}\n\nfunction ModalFocusScope(props) {\n var _useModalContext3 = useModalContext(),\n autoFocus = _useModalContext3.autoFocus,\n trapFocus = _useModalContext3.trapFocus,\n dialogRef = _useModalContext3.dialogRef,\n initialFocusRef = _useModalContext3.initialFocusRef,\n blockScrollOnMount = _useModalContext3.blockScrollOnMount,\n allowPinchZoom = _useModalContext3.allowPinchZoom,\n finalFocusRef = _useModalContext3.finalFocusRef,\n returnFocusOnClose = _useModalContext3.returnFocusOnClose,\n preserveScrollBarGap = _useModalContext3.preserveScrollBarGap,\n lockFocusAcrossFrames = _useModalContext3.lockFocusAcrossFrames;\n\n var _usePresence = usePresence(),\n isPresent = _usePresence[0],\n safeToRemove = _usePresence[1];\n\n React.useEffect(function () {\n if (!isPresent && safeToRemove) {\n setTimeout(safeToRemove);\n }\n }, [isPresent, safeToRemove]);\n return /*#__PURE__*/React.createElement(FocusLock, {\n autoFocus: autoFocus,\n isDisabled: !trapFocus,\n initialFocusRef: initialFocusRef,\n finalFocusRef: finalFocusRef,\n restoreFocus: returnFocusOnClose,\n contentRef: dialogRef,\n lockFocusAcrossFrames: lockFocusAcrossFrames\n }, /*#__PURE__*/React.createElement(RemoveScroll, {\n removeScrollBar: !preserveScrollBarGap,\n allowPinchZoom: allowPinchZoom,\n enabled: blockScrollOnMount,\n forwardProps: true\n }, props.children));\n}\n\n/**\n * ModalOverlay renders a backdrop behind the modal. It is\n * also used as a wrapper for the modal content for better positioning.\n *\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalOverlay = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className;\n props.transition;\n var rest = _objectWithoutPropertiesLoose(props, _excluded2$1);\n\n var _className = cx(\"chakra-modal__overlay\", className);\n\n var styles = useStyles();\n\n var overlayStyle = _extends({\n pos: \"fixed\",\n left: \"0\",\n top: \"0\",\n w: \"100vw\",\n h: \"100vh\"\n }, styles.overlay);\n\n var _useModalContext4 = useModalContext(),\n motionPreset = _useModalContext4.motionPreset;\n\n var motionProps = motionPreset === \"none\" ? {} : fadeConfig;\n return /*#__PURE__*/React.createElement(MotionDiv, _extends({}, motionProps, {\n __css: overlayStyle,\n ref: ref,\n className: _className\n }, rest));\n});\n\nif (__DEV__) {\n ModalOverlay.displayName = \"ModalOverlay\";\n}\n\n/**\n * ModalHeader\n *\n * React component that houses the title of the modal.\n *\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalHeader = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded3);\n\n var _useModalContext5 = useModalContext(),\n headerId = _useModalContext5.headerId,\n setHeaderMounted = _useModalContext5.setHeaderMounted;\n /**\n * Notify us if this component was rendered or used,\n * so we can append `aria-labelledby` automatically\n */\n\n\n React.useEffect(function () {\n setHeaderMounted(true);\n return function () {\n return setHeaderMounted(false);\n };\n }, [setHeaderMounted]);\n\n var _className = cx(\"chakra-modal__header\", className);\n\n var styles = useStyles();\n\n var headerStyles = _extends({\n flex: 0\n }, styles.header);\n\n return /*#__PURE__*/React.createElement(chakra.header, _extends({\n ref: ref,\n className: _className,\n id: headerId\n }, rest, {\n __css: headerStyles\n }));\n});\n\nif (__DEV__) {\n ModalHeader.displayName = \"ModalHeader\";\n}\n\n/**\n * ModalBody\n *\n * React component that houses the main content of the modal.\n *\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalBody = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded4);\n\n var _useModalContext6 = useModalContext(),\n bodyId = _useModalContext6.bodyId,\n setBodyMounted = _useModalContext6.setBodyMounted;\n /**\n * Notify us if this component was rendered or used,\n * so we can append `aria-describedby` automatically\n */\n\n\n React.useEffect(function () {\n setBodyMounted(true);\n return function () {\n return setBodyMounted(false);\n };\n }, [setBodyMounted]);\n\n var _className = cx(\"chakra-modal__body\", className);\n\n var styles = useStyles();\n return /*#__PURE__*/React.createElement(chakra.div, _extends({\n ref: ref,\n className: _className,\n id: bodyId\n }, rest, {\n __css: styles.body\n }));\n});\n\nif (__DEV__) {\n ModalBody.displayName = \"ModalBody\";\n}\n\n/**\n * ModalFooter houses the action buttons of the modal.\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalFooter = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded5);\n\n var _className = cx(\"chakra-modal__footer\", className);\n\n var styles = useStyles();\n\n var footerStyles = _extends({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\"\n }, styles.footer);\n\n return /*#__PURE__*/React.createElement(chakra.footer, _extends({\n ref: ref\n }, rest, {\n __css: footerStyles,\n className: _className\n }));\n});\n\nif (__DEV__) {\n ModalFooter.displayName = \"ModalFooter\";\n}\n/**\n * ModalCloseButton is used closes the modal.\n *\n * You don't need to pass the `onClick` to it, it reads the\n * `onClose` action from the modal context.\n */\n\n\nvar ModalCloseButton = /*#__PURE__*/forwardRef(function (props, ref) {\n var onClick = props.onClick,\n className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded6);\n\n var _useModalContext7 = useModalContext(),\n onClose = _useModalContext7.onClose;\n\n var _className = cx(\"chakra-modal__close-btn\", className);\n\n var styles = useStyles();\n return /*#__PURE__*/React.createElement(CloseButton, _extends({\n ref: ref,\n __css: styles.closeButton,\n className: _className,\n onClick: callAllHandlers(onClick, function (event) {\n event.stopPropagation();\n onClose();\n })\n }, rest));\n});\n\nif (__DEV__) {\n ModalCloseButton.displayName = \"ModalCloseButton\";\n}\n\nvar _excluded$1 = [\"leastDestructiveRef\"];\nfunction AlertDialog(props) {\n var leastDestructiveRef = props.leastDestructiveRef,\n rest = _objectWithoutPropertiesLoose(props, _excluded$1);\n\n return /*#__PURE__*/React.createElement(Modal, _extends({}, rest, {\n initialFocusRef: leastDestructiveRef\n }));\n}\nvar AlertDialogContent = /*#__PURE__*/forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(ModalContent, _extends({\n ref: ref,\n role: \"alertdialog\"\n }, props));\n});\n\nvar _excluded = [\"isOpen\", \"onClose\", \"placement\", \"children\"],\n _excluded2 = [\"className\", \"children\"];\n\nvar _createContext = createContext(),\n DrawerContextProvider = _createContext[0],\n useDrawerContext = _createContext[1];\n\nvar placementMap = {\n start: {\n ltr: \"left\",\n rtl: \"right\"\n },\n end: {\n ltr: \"right\",\n rtl: \"left\"\n }\n};\n\nfunction getDrawerPlacement(placement, dir) {\n var _placementMap$placeme, _placementMap$placeme2;\n\n if (!placement) return;\n return (_placementMap$placeme = (_placementMap$placeme2 = placementMap[placement]) == null ? void 0 : _placementMap$placeme2[dir]) != null ? _placementMap$placeme : placement;\n}\n\nfunction Drawer(props) {\n var _theme$components;\n\n var isOpen = props.isOpen,\n onClose = props.onClose,\n _props$placement = props.placement,\n placementProp = _props$placement === void 0 ? \"right\" : _props$placement,\n children = props.children,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n\n var theme = useTheme();\n var drawerStyleConfig = (_theme$components = theme.components) == null ? void 0 : _theme$components.Drawer;\n var placement = getDrawerPlacement(placementProp, theme.direction);\n return /*#__PURE__*/React.createElement(DrawerContextProvider, {\n value: {\n placement: placement\n }\n }, /*#__PURE__*/React.createElement(Modal, _extends({\n isOpen: isOpen,\n onClose: onClose,\n styleConfig: drawerStyleConfig\n }, rest), children));\n}\nvar StyledSlide = chakra(Slide);\n\n/**\n * ModalContent is used to group modal's content. It has all the\n * necessary `aria-*` properties to indicate that it is a modal\n */\nvar DrawerContent = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n children = props.children,\n rest = _objectWithoutPropertiesLoose(props, _excluded2);\n\n var _useModalContext = useModalContext(),\n getDialogProps = _useModalContext.getDialogProps,\n getDialogContainerProps = _useModalContext.getDialogContainerProps,\n isOpen = _useModalContext.isOpen;\n\n var dialogProps = getDialogProps(rest, ref);\n var containerProps = getDialogContainerProps();\n\n var _className = cx(\"chakra-modal__content\", className);\n\n var styles = useStyles();\n\n var dialogStyles = _extends({\n display: \"flex\",\n flexDirection: \"column\",\n position: \"relative\",\n width: \"100%\",\n outline: 0\n }, styles.dialog);\n\n var dialogContainerStyles = _extends({\n display: \"flex\",\n width: \"100vw\",\n height: \"100vh\",\n position: \"fixed\",\n left: 0,\n top: 0\n }, styles.dialogContainer);\n\n var _useDrawerContext = useDrawerContext(),\n placement = _useDrawerContext.placement;\n\n return /*#__PURE__*/React.createElement(chakra.div, _extends({}, containerProps, {\n className: \"chakra-modal__content-container\",\n __css: dialogContainerStyles\n }), /*#__PURE__*/React.createElement(ModalFocusScope, null, /*#__PURE__*/React.createElement(StyledSlide, _extends({\n direction: placement,\n \"in\": isOpen,\n className: _className\n }, dialogProps, {\n __css: dialogStyles\n }), children)));\n});\n\nif (__DEV__) {\n DrawerContent.displayName = \"DrawerContent\";\n}\n\nexport { AlertDialog, ModalBody as AlertDialogBody, ModalCloseButton as AlertDialogCloseButton, AlertDialogContent, ModalFooter as AlertDialogFooter, ModalHeader as AlertDialogHeader, ModalOverlay as AlertDialogOverlay, Drawer, ModalBody as DrawerBody, ModalCloseButton as DrawerCloseButton, DrawerContent, ModalFooter as DrawerFooter, ModalHeader as DrawerHeader, ModalOverlay as DrawerOverlay, Modal, ModalBody, ModalCloseButton, ModalContent, ModalContextProvider, ModalFocusScope, ModalFooter, ModalHeader, ModalOverlay, useAriaHidden, useModal, useModalContext };\n"],"names":["_objectWithoutPropertiesLoose","source","excluded","key","i","target","sourceKeys","Object","keys","length","indexOf","_extends","assign","arguments","prototype","hasOwnProperty","call","apply","this","TransitionEasings","ease","easeIn","easeOut","easeInOut","TransitionVariants","position","left","top","bottom","width","enter","x","y","exit","right","maxWidth","slideTransition","options","_options$direction","direction","TransitionDefaults","duration","withDelay","transition","delay","isNumber","_excluded$4","defaultTransitions","height","opacity","variants$4","_ref","_transition$exit","value","animateOpacity","startingHeight","transitionEnd","parseInt","toString","_ref2","_transition$enter","endingHeight","Collapse","React","forwardRef","props","ref","isOpen","unmountOnExit","_props$animateOpacity","_props$startingHeight","_props$endingHeight","style","className","rest","_React$useState","useState","mounted","setMounted","useEffect","timeout","setTimeout","clearTimeout","warn","condition","Boolean","message","hasStartingHeight","parseFloat","custom","mergeWith","undefined","display","show","animate","createElement","AnimatePresence","initial","motion","div","cx","overflow","variants","__DEV__","displayName","_excluded$3","variants$3","_temp","_temp2","fadeConfig","Fade","_excluded$2","variants$2","reverse","initialScale","scale","scaleFadeConfig","ScaleFade","_props$reverse","_props$initialScale","_excluded$1","defaultTransition","type","damping","stiffness","variants$1","Slide","_props$direction","transitionStyles","computedStyle","_excluded","offsetX","offsetY","_ref3","_transition$exit2","offset","slideFadeConfig","SlideFade","_props$offsetX","_props$offsetY","CloseIcon","Icon","focusable","fill","d","CloseButton","styles","useStyleConfig","_omitThemingProps","omitThemingProps","children","isDisabled","__css","chakra","button","disabled","outline","alignItems","justifyContent","flexShrink","useMergeRefs","refs","defaultValue","initialValue","callback","newValue","forEach","current","assignRef","facade","last","hiddenGuard","padding","ItoI","a","innerCreateMedium","defaults","middleware","buffer","assigned","read","Error","useMedium","data","item","push","filter","assignSyncMedium","cb","cbs","assignMedium","pendingQueue","executeQueue","cycle","Promise","resolve","then","createMedium","createSidecarMedium","medium","__assign","async","ssr","process","env","NODE_ENV","PropTypes","node","SideCar","_a","sideCar","__rest","Target","isSideCarExport","mediumFocus","currentTarget","mediumBlur","mediumEffect","mediumSidecar","emptyArray","FocusLock","parentRef","_extends2","realObserved","setObserved","observed","useRef","isActive","originalFocusedElement","noFocusGuards","persistentFocus","crossFrame","autoFocus","allowTextSelection","group","whiteList","_props$shards","shards","_props$as","as","Container","_props$lockProps","lockProps","containerProps","shouldReturnFocus","returnFocus","onActivationCallback","onActivation","onDeactivationCallback","onDeactivation","id","useCallback","document","activeElement","allowDefer","focus","focusOptions","onFocus","event","onBlur","setObserveNode","newObserved","console","error","hasLeadingGuards","hasTailingGuards","mergedRef","Fragment","tabIndex","propTypes","exports","bool","oneOfType","object","string","func","arrayOf","any","isRequired","defaultProps","FocusLockUI","toArray","ret","Array","asArray","isArray","getTopParent","parentNode","getAllAffectedNodes","reduce","acc","currentNode","getAttribute","nodes","contained","Set","l","j","compareDocumentPosition","Node","DOCUMENT_POSITION_CONTAINED_BY","add","DOCUMENT_POSITION_CONTAINS","_","index","has","filterNested","querySelectorAll","isVisibleUncached","checkParent","nodeType","DOCUMENT_NODE","ELEMENT_NODE","window","getComputedStyle","getPropertyValue","isElementHidden","DOCUMENT_FRAGMENT_NODE","host","isVisibleCached","visibilityCache","cached","get","result","bind","set","isGuard","dataset","focusGuard","isNotAGuard","isDefined","tabSort","b","tabDiff","indexDiff","orderByTabIndex","filterNegative","keepGuards","map","sort","queryTabbables","join","queryGuardTabbables","getFocusables","parents","withGuards","parent","concat","filterFocusable","tagName","notHiddenInput","getTabbableNodes","topNodes","getAllTabbableNodes","parentAutofocusables","topNode","parentFocus","getParents","getCommonParent","nodeA","nodeB","parentsA","parentsB","currentParent","getTopCommonParent","baseActiveElement","leftEntry","rightEntries","activeElements","leftEntries","topCommon","entry","subEntry","common","contains","focusInsideIframe","some","focusInside","isRadio","correctNode","name","el","checked","findSelectedRadio","pickFirstFocus","pickFocusable","newFocus","innerNodes","outerNodes","lastNode","cnt","firstFocus","lastFocus","isOnGuard","resultSet","activeIndex","lastIndex","lastNodeInside","firstNodeIndex","lastNodeIndex","correctedNodes","correctedIndexDiff","returnFirstNode","returnLastNode","Math","abs","getFocusMerge","entries","commonParent","Map","anyFocusable","innerElements","srcNodes","dstNodes","remap","autoFocusables","orderedInnerElements","entity","newId","autoFocusable","allParentAutofocusables","autofocus","guardCount","lockDisabled","moveFocusInside","contentWindow","deferAction","action","setImmediate","isFreeFocus","body","lastActiveTrap","lastActiveFocus","lastPortaledElement","focusWasOutsideWindow","defaultWhitelist","autoGuard","startIndex","end","step","allNodes","lastGuard","guard","focusAutoGuard","lockItem","extractRef","activateTrap","element","_lastActiveTrap","workingNode","portaledElement","workingArea","focusWhitelisted","blur","newActiveElement","focusedIndex","removeAttribute","onTrap","stopPropagation","preventDefault","onWindowBlur","observerNode","FocusTrap","reducePropsToState","handleStateChangeOnClient","WrappedComponent","state","mountedInstances","emitChange","instance","obj","SideEffect","_PureComponent","_inheritsLoose","peek","_proto","componentDidMount","componentDidUpdate","componentWillUnmount","splice","render","PureComponent","getDisplayName","defineProperty","enumerable","configurable","writable","withSideEffect","propsList","_ref5","traps","trap","slice","addEventListener","lastTrap","sameTrap","_ref6","removeEventListener","FocusLockCombination","FocusLock$1","initialFocusRef","finalFocusRef","contentRef","restoreFocus","lockFocusAcrossFrames","getAllFocusable","nextTick","_finalFocusRef$curren","ReactFocusLock","t","s","n","p","effectCar","nothing","RemoveScroll","onScrollCapture","onWheelCapture","onTouchMoveCapture","callbacks","setCallbacks","forwardProps","removeScrollBar","enabled","noIsolation","inert","allowPinchZoom","_b","e","getOwnPropertySymbols","propertyIsEnumerable","tslib_1.__rest","containerRef","tslib_1.__assign","lockRef","cloneElement","Children","only","classNames","fullWidth","zeroRight","makeStyleTag","tag","nonce","__webpack_nonce__","getNonce","setAttribute","stylesheetSingleton","counter","stylesheet","css","styleSheet","cssText","appendChild","createTextNode","head","getElementsByTagName","insertStyleTag","remove","removeChild","styleSingleton","sheet","useStyle","zeroGap","gap","parse","getGapWidth","gapMode","offsets","cs","getOffset","documentWidth","documentElement","clientWidth","windowWidth","innerWidth","max","Style","getStyles","allowRelative","important","RemoveScrollBar","setGap","noRelative","noImportant","locationCouldBeScrolled","axis","elementCouldBeScrolled","getScrollVariables","overflowY","overflowX","elementCouldBeVScrolled","elementCouldBeHScrolled","scrollTop","scrollHeight","clientHeight","scrollLeft","scrollWidth","getHScrollVariables","passiveSupported","err","nonPassive","passive","getTouchXY","changedTouches","clientX","clientY","getDeltaXY","deltaX","deltaY","generateStyle","idCounter","lockStack","exported","shouldPreventQueue","touchStartRef","activeAxis","lastProps","classList","allow_1","shouldCancelEvent","touches","currentAxis","touch","touchStart","moveDirection","canBeScrolledInMainDirection","cancelingAxis","endTarget","sourceDelta","noOverscroll","delta","targetInLock","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","elementScroll","handleScroll","shouldPrevent","_event","sourceEvent","should","shardNodes","shouldCancel","scrollTouchStart","scrollWheel","scrollTouchMove","inst","ReactRemoveScroll","counterMap","WeakMap","uncontrolledNodes","markerMap","lockCount","hideOthers","originalTarget","markerName","ownerDocument","getDefaultParent","targets","markerCounter","hiddenNodes","elementsToKeep","keep","deep","attr","alreadyHidden","counterValue","markerValue","clear","delete","transitions","slideInBottom","slideInRight","none","Motion","section","ModalTransition","preset","motionProps","manager","ModalManager","modals","modal","_modal","isTopModal","useModal","shouldHide","currentElement","onClose","_props$closeOnOverlay","closeOnOverlayClick","_props$closeOnEsc","closeOnEsc","_props$useInert","useInert","onOverlayClickProp","onOverlayClick","onEsc","dialogRef","overlayRef","_useIds","useIds","dialogId","headerId","bodyId","useModalManager","mouseDownTarget","onMouseDown","onKeyDown","_useState","headerMounted","setHeaderMounted","_useState2","bodyMounted","setBodyMounted","getDialogProps","role","mergeRefs","onClick","callAllHandlers","getDialogContainerProps","_excluded2$1","_excluded3","_excluded4","_excluded5","_excluded6","_createContext$1","createContext","strict","errorMessage","ModalContextProvider","useModalContext","Modal","portalProps","trapFocus","returnFocusOnClose","blockScrollOnMount","preserveScrollBarGap","motionPreset","onCloseComplete","useMultiStyleConfig","context","StylesProvider","onExitComplete","Portal","scrollBehavior","MotionDiv","ModalContent","rootProps","_useModalContext","dialogProps","_className","useStyles","dialogStyles","flexDirection","dialog","dialogContainerStyles","dialogContainer","ModalFocusScope","_useModalContext3","_usePresence","usePresence","isPresent","safeToRemove","ModalOverlay","overlayStyle","pos","w","h","overlay","ModalHeader","_useModalContext5","headerStyles","flex","header","ModalBody","_useModalContext6","ModalFooter","footerStyles","footer","ModalCloseButton","closeButton","AlertDialogContent","_excluded2","_createContext","DrawerContextProvider","useDrawerContext","placementMap","start","ltr","rtl","StyledSlide","DrawerContent","placement","in","leastDestructiveRef","_theme$components","_props$placement","placementProp","theme","useTheme","drawerStyleConfig","components","Drawer","dir","_placementMap$placeme","_placementMap$placeme2","getDrawerPlacement","styleConfig"],"mappings":"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"}
1
+ {"version":3,"file":"chakra-ui-modal.esm-2c76cb7b.js","sources":["../node_modules/@chakra-ui/transition/dist/chakra-ui-transition.esm.js","../node_modules/@chakra-ui/close-button/dist/chakra-ui-close-button.esm.js","../node_modules/use-callback-ref/dist/es2015/useMergeRef.js","../node_modules/use-callback-ref/dist/es2015/useRef.js","../node_modules/use-callback-ref/dist/es2015/assignRef.js","../node_modules/react-focus-lock/dist/es2015/FocusGuard.js","../node_modules/use-sidecar/dist/es2015/medium.js","../node_modules/use-sidecar/dist/es2015/exports.js","../node_modules/react-focus-lock/dist/es2015/medium.js","../node_modules/react-focus-lock/dist/es2015/Lock.js","../node_modules/focus-lock/dist/es2015/constants.js","../node_modules/focus-lock/dist/es2015/utils/array.js","../node_modules/focus-lock/dist/es2015/utils/all-affected.js","../node_modules/focus-lock/dist/es2015/utils/is.js","../node_modules/focus-lock/dist/es2015/utils/tabOrder.js","../node_modules/focus-lock/dist/es2015/utils/tabUtils.js","../node_modules/focus-lock/dist/es2015/utils/tabbables.js","../node_modules/focus-lock/dist/es2015/utils/DOMutils.js","../node_modules/focus-lock/dist/es2015/utils/parenting.js","../node_modules/focus-lock/dist/es2015/focusInside.js","../node_modules/focus-lock/dist/es2015/utils/correctFocus.js","../node_modules/focus-lock/dist/es2015/utils/firstFocus.js","../node_modules/focus-lock/dist/es2015/solver.js","../node_modules/focus-lock/dist/es2015/focusMerge.js","../node_modules/focus-lock/dist/es2015/setFocus.js","../node_modules/focus-lock/dist/es2015/index.js","../node_modules/react-focus-lock/dist/es2015/util.js","../node_modules/react-focus-lock/dist/es2015/Trap.js","../node_modules/focus-lock/dist/es2015/focusIsHidden.js","../node_modules/focus-lock/dist/es2015/focusables.js","../node_modules/react-clientside-effect/lib/index.es.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/react-focus-lock/dist/es2015/Combination.js","../node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","../node_modules/@chakra-ui/focus-lock/dist/chakra-ui-focus-lock.esm.js","../node_modules/react-remove-scroll/node_modules/tslib/tslib.es6.js","../node_modules/react-remove-scroll-bar/dist/es2015/constants.js","../node_modules/react-remove-scroll/dist/es2015/medium.js","../node_modules/react-remove-scroll/dist/es2015/UI.js","../node_modules/react-style-singleton/dist/es2015/singleton.js","../node_modules/get-nonce/dist/es2015/index.js","../node_modules/react-style-singleton/dist/es2015/component.js","../node_modules/react-style-singleton/dist/es2015/hook.js","../node_modules/react-remove-scroll-bar/dist/es2015/utils.js","../node_modules/react-remove-scroll-bar/dist/es2015/component.js","../node_modules/react-remove-scroll/dist/es2015/handleScroll.js","../node_modules/react-remove-scroll/dist/es2015/aggresiveCapture.js","../node_modules/react-remove-scroll/dist/es2015/SideEffect.js","../node_modules/react-remove-scroll/dist/es2015/sidecar.js","../node_modules/react-remove-scroll/dist/es2015/Combination.js","../node_modules/aria-hidden/dist/es2015/index.js","../node_modules/@chakra-ui/modal/dist/chakra-ui-modal.esm.js"],"sourcesContent":["import { isNumber, warn, mergeWith, cx, __DEV__ } from '@chakra-ui/utils';\nimport { AnimatePresence, motion } from 'framer-motion';\nimport * as React from 'react';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar TransitionEasings = {\n ease: [0.25, 0.1, 0.25, 1],\n easeIn: [0.4, 0, 1, 1],\n easeOut: [0, 0, 0.2, 1],\n easeInOut: [0.4, 0, 0.2, 1]\n};\nvar TransitionVariants = {\n scale: {\n enter: {\n scale: 1\n },\n exit: {\n scale: 0.95\n }\n },\n fade: {\n enter: {\n opacity: 1\n },\n exit: {\n opacity: 0\n }\n },\n pushLeft: {\n enter: {\n x: \"100%\"\n },\n exit: {\n x: \"-30%\"\n }\n },\n pushRight: {\n enter: {\n x: \"-100%\"\n },\n exit: {\n x: \"30%\"\n }\n },\n pushUp: {\n enter: {\n y: \"100%\"\n },\n exit: {\n y: \"-30%\"\n }\n },\n pushDown: {\n enter: {\n y: \"-100%\"\n },\n exit: {\n y: \"30%\"\n }\n },\n slideLeft: {\n position: {\n left: 0,\n top: 0,\n bottom: 0,\n width: \"100%\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: \"-100%\",\n y: 0\n }\n },\n slideRight: {\n position: {\n right: 0,\n top: 0,\n bottom: 0,\n width: \"100%\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: \"100%\",\n y: 0\n }\n },\n slideUp: {\n position: {\n top: 0,\n left: 0,\n right: 0,\n maxWidth: \"100vw\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: 0,\n y: \"-100%\"\n }\n },\n slideDown: {\n position: {\n bottom: 0,\n left: 0,\n right: 0,\n maxWidth: \"100vw\"\n },\n enter: {\n x: 0,\n y: 0\n },\n exit: {\n x: 0,\n y: \"100%\"\n }\n }\n};\nfunction slideTransition(options) {\n var _options$direction;\n\n var side = (_options$direction = options == null ? void 0 : options.direction) != null ? _options$direction : \"right\";\n\n switch (side) {\n case \"right\":\n return TransitionVariants.slideRight;\n\n case \"left\":\n return TransitionVariants.slideLeft;\n\n case \"bottom\":\n return TransitionVariants.slideDown;\n\n case \"top\":\n return TransitionVariants.slideUp;\n\n default:\n return TransitionVariants.slideRight;\n }\n}\nvar TransitionDefaults = {\n enter: {\n duration: 0.2,\n ease: TransitionEasings.easeOut\n },\n exit: {\n duration: 0.1,\n ease: TransitionEasings.easeIn\n }\n};\nvar withDelay = {\n enter: function enter(transition, delay) {\n return _extends({}, transition, {\n delay: isNumber(delay) ? delay : delay == null ? void 0 : delay[\"enter\"]\n });\n },\n exit: function exit(transition, delay) {\n return _extends({}, transition, {\n delay: isNumber(delay) ? delay : delay == null ? void 0 : delay[\"exit\"]\n });\n }\n};\n\nvar _excluded$4 = [\"in\", \"unmountOnExit\", \"animateOpacity\", \"startingHeight\", \"endingHeight\", \"style\", \"className\", \"transition\", \"transitionEnd\"];\n\nvar isNumeric = function isNumeric(value) {\n return value != null && parseInt(value.toString(), 10) > 0;\n};\n\nvar defaultTransitions = {\n exit: {\n height: {\n duration: 0.2,\n ease: TransitionEasings.ease\n },\n opacity: {\n duration: 0.3,\n ease: TransitionEasings.ease\n }\n },\n enter: {\n height: {\n duration: 0.3,\n ease: TransitionEasings.ease\n },\n opacity: {\n duration: 0.4,\n ease: TransitionEasings.ease\n }\n }\n};\nvar variants$4 = {\n exit: function exit(_ref) {\n var _transition$exit;\n\n var animateOpacity = _ref.animateOpacity,\n startingHeight = _ref.startingHeight,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n return _extends({}, animateOpacity && {\n opacity: isNumeric(startingHeight) ? 1 : 0\n }, {\n height: startingHeight,\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit,\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(defaultTransitions.exit, delay)\n });\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var animateOpacity = _ref2.animateOpacity,\n endingHeight = _ref2.endingHeight,\n transition = _ref2.transition,\n transitionEnd = _ref2.transitionEnd,\n delay = _ref2.delay;\n return _extends({}, animateOpacity && {\n opacity: 1\n }, {\n height: endingHeight,\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(defaultTransitions.enter, delay)\n });\n }\n};\nvar Collapse = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var isOpen = props[\"in\"],\n unmountOnExit = props.unmountOnExit,\n _props$animateOpacity = props.animateOpacity,\n animateOpacity = _props$animateOpacity === void 0 ? true : _props$animateOpacity,\n _props$startingHeight = props.startingHeight,\n startingHeight = _props$startingHeight === void 0 ? 0 : _props$startingHeight,\n _props$endingHeight = props.endingHeight,\n endingHeight = _props$endingHeight === void 0 ? \"auto\" : _props$endingHeight,\n style = props.style,\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n rest = _objectWithoutPropertiesLoose(props, _excluded$4);\n\n var _React$useState = React.useState(false),\n mounted = _React$useState[0],\n setMounted = _React$useState[1];\n\n React.useEffect(function () {\n var timeout = setTimeout(function () {\n setMounted(true);\n });\n return function () {\n return clearTimeout(timeout);\n };\n }, []);\n /**\n * Warn 🚨: `startingHeight` and `unmountOnExit` are mutually exclusive\n *\n * If you specify a starting height, the collapsed needs to be mounted\n * for the height to take effect.\n */\n\n warn({\n condition: Boolean(startingHeight > 0 && unmountOnExit),\n message: \"startingHeight and unmountOnExit are mutually exclusive. You can't use them together\"\n });\n var hasStartingHeight = parseFloat(startingHeight.toString()) > 0;\n var custom = {\n startingHeight: startingHeight,\n endingHeight: endingHeight,\n animateOpacity: animateOpacity,\n transition: !mounted ? {\n enter: {\n duration: 0\n }\n } : transition,\n transitionEnd: mergeWith(transitionEnd, {\n exit: unmountOnExit ? undefined : {\n display: hasStartingHeight ? \"block\" : \"none\"\n }\n })\n };\n var show = unmountOnExit ? isOpen : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n initial: false,\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref\n }, rest, {\n className: cx(\"chakra-collapse\", className),\n style: _extends({\n overflow: \"hidden\",\n display: \"block\"\n }, style),\n custom: custom,\n variants: variants$4,\n initial: unmountOnExit ? \"exit\" : false,\n animate: animate,\n exit: \"exit\"\n })));\n});\n\nif (__DEV__) {\n Collapse.displayName = \"Collapse\";\n}\n\nvar _excluded$3 = [\"unmountOnExit\", \"in\", \"className\", \"transition\", \"transitionEnd\", \"delay\"];\nvar variants$3 = {\n enter: function enter(_temp) {\n var _transition$enter;\n\n var _ref = _temp === void 0 ? {} : _temp,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n\n return {\n opacity: 1,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(TransitionDefaults.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n };\n },\n exit: function exit(_temp2) {\n var _transition$exit;\n\n var _ref2 = _temp2 === void 0 ? {} : _temp2,\n transition = _ref2.transition,\n transitionEnd = _ref2.transitionEnd,\n delay = _ref2.delay;\n\n return {\n opacity: 0,\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(TransitionDefaults.exit, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n };\n }\n};\nvar fadeConfig = {\n initial: \"exit\",\n animate: \"enter\",\n exit: \"exit\",\n variants: variants$3\n};\nvar Fade = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded$3);\n\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var custom = {\n transition: transition,\n transitionEnd: transitionEnd,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref,\n className: cx(\"chakra-fade\", className),\n custom: custom\n }, fadeConfig, {\n animate: animate\n }, rest)));\n});\n\nif (__DEV__) {\n Fade.displayName = \"Fade\";\n}\n\nvar _excluded$2 = [\"unmountOnExit\", \"in\", \"reverse\", \"initialScale\", \"className\", \"transition\", \"transitionEnd\", \"delay\"];\nvar variants$2 = {\n exit: function exit(_ref) {\n var _transition$exit;\n\n var reverse = _ref.reverse,\n initialScale = _ref.initialScale,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n return _extends({\n opacity: 0\n }, reverse ? {\n scale: initialScale,\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n } : {\n transitionEnd: _extends({\n scale: initialScale\n }, transitionEnd == null ? void 0 : transitionEnd.exit)\n }, {\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(TransitionDefaults.exit, delay)\n });\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var transitionEnd = _ref2.transitionEnd,\n transition = _ref2.transition,\n delay = _ref2.delay;\n return {\n opacity: 1,\n scale: 1,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(TransitionDefaults.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n };\n }\n};\nvar scaleFadeConfig = {\n initial: \"exit\",\n animate: \"enter\",\n exit: \"exit\",\n variants: variants$2\n};\nvar ScaleFade = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n _props$reverse = props.reverse,\n reverse = _props$reverse === void 0 ? true : _props$reverse,\n _props$initialScale = props.initialScale,\n initialScale = _props$initialScale === void 0 ? 0.95 : _props$initialScale,\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded$2);\n\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var custom = {\n initialScale: initialScale,\n reverse: reverse,\n transition: transition,\n transitionEnd: transitionEnd,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref,\n className: cx(\"chakra-offset-slide\", className)\n }, scaleFadeConfig, {\n animate: animate,\n custom: custom\n }, rest)));\n});\n\nif (__DEV__) {\n ScaleFade.displayName = \"ScaleFade\";\n}\n\nvar _excluded$1 = [\"direction\", \"style\", \"unmountOnExit\", \"in\", \"className\", \"transition\", \"transitionEnd\", \"delay\"];\nvar defaultTransition = {\n exit: {\n duration: 0.15,\n ease: TransitionEasings.easeInOut\n },\n enter: {\n type: \"spring\",\n damping: 25,\n stiffness: 180\n }\n};\nvar variants$1 = {\n exit: function exit(_ref) {\n var _transition$exit;\n\n var direction = _ref.direction,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n\n var _slideTransition = slideTransition({\n direction: direction\n }),\n exitStyles = _slideTransition.exit;\n\n return _extends({}, exitStyles, {\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(defaultTransition.exit, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n });\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var direction = _ref2.direction,\n transitionEnd = _ref2.transitionEnd,\n transition = _ref2.transition,\n delay = _ref2.delay;\n\n var _slideTransition2 = slideTransition({\n direction: direction\n }),\n enterStyles = _slideTransition2.enter;\n\n return _extends({}, enterStyles, {\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(defaultTransition.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n });\n }\n};\nvar Slide = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var _props$direction = props.direction,\n direction = _props$direction === void 0 ? \"right\" : _props$direction,\n style = props.style,\n unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n className = props.className,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded$1);\n\n var transitionStyles = slideTransition({\n direction: direction\n });\n var computedStyle = Object.assign({\n position: \"fixed\"\n }, transitionStyles.position, style);\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var custom = {\n transitionEnd: transitionEnd,\n transition: transition,\n direction: direction,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({}, rest, {\n ref: ref,\n initial: \"exit\",\n className: cx(\"chakra-slide\", className),\n animate: animate,\n exit: \"exit\",\n custom: custom,\n variants: variants$1,\n style: computedStyle\n })));\n});\n\nif (__DEV__) {\n Slide.displayName = \"Slide\";\n}\n\nvar _excluded = [\"unmountOnExit\", \"in\", \"reverse\", \"className\", \"offsetX\", \"offsetY\", \"transition\", \"transitionEnd\", \"delay\"];\nvar variants = {\n initial: function initial(_ref) {\n var _transition$exit;\n\n var offsetX = _ref.offsetX,\n offsetY = _ref.offsetY,\n transition = _ref.transition,\n transitionEnd = _ref.transitionEnd,\n delay = _ref.delay;\n return {\n opacity: 0,\n x: offsetX,\n y: offsetY,\n transition: (_transition$exit = transition == null ? void 0 : transition.exit) != null ? _transition$exit : withDelay.exit(TransitionDefaults.exit, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n };\n },\n enter: function enter(_ref2) {\n var _transition$enter;\n\n var transition = _ref2.transition,\n transitionEnd = _ref2.transitionEnd,\n delay = _ref2.delay;\n return {\n opacity: 1,\n x: 0,\n y: 0,\n transition: (_transition$enter = transition == null ? void 0 : transition.enter) != null ? _transition$enter : withDelay.enter(TransitionDefaults.enter, delay),\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.enter\n };\n },\n exit: function exit(_ref3) {\n var _transition$exit2;\n\n var offsetY = _ref3.offsetY,\n offsetX = _ref3.offsetX,\n transition = _ref3.transition,\n transitionEnd = _ref3.transitionEnd,\n reverse = _ref3.reverse,\n delay = _ref3.delay;\n var offset = {\n x: offsetX,\n y: offsetY\n };\n return _extends({\n opacity: 0,\n transition: (_transition$exit2 = transition == null ? void 0 : transition.exit) != null ? _transition$exit2 : withDelay.exit(TransitionDefaults.exit, delay)\n }, reverse ? _extends({}, offset, {\n transitionEnd: transitionEnd == null ? void 0 : transitionEnd.exit\n }) : {\n transitionEnd: _extends({}, offset, transitionEnd == null ? void 0 : transitionEnd.exit)\n });\n }\n};\nvar slideFadeConfig = {\n initial: \"initial\",\n animate: \"enter\",\n exit: \"exit\",\n variants: variants\n};\nvar SlideFade = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var unmountOnExit = props.unmountOnExit,\n isOpen = props[\"in\"],\n _props$reverse = props.reverse,\n reverse = _props$reverse === void 0 ? true : _props$reverse,\n className = props.className,\n _props$offsetX = props.offsetX,\n offsetX = _props$offsetX === void 0 ? 0 : _props$offsetX,\n _props$offsetY = props.offsetY,\n offsetY = _props$offsetY === void 0 ? 8 : _props$offsetY,\n transition = props.transition,\n transitionEnd = props.transitionEnd,\n delay = props.delay,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n\n var show = unmountOnExit ? isOpen && unmountOnExit : true;\n var animate = isOpen || unmountOnExit ? \"enter\" : \"exit\";\n var custom = {\n offsetX: offsetX,\n offsetY: offsetY,\n reverse: reverse,\n transition: transition,\n transitionEnd: transitionEnd,\n delay: delay\n };\n return /*#__PURE__*/React.createElement(AnimatePresence, {\n custom: custom\n }, show && /*#__PURE__*/React.createElement(motion.div, _extends({\n ref: ref,\n className: cx(\"chakra-offset-slide\", className),\n custom: custom\n }, slideFadeConfig, {\n animate: animate\n }, rest)));\n});\n\nif (__DEV__) {\n SlideFade.displayName = \"SlideFade\";\n}\n\nexport { Collapse, TransitionEasings as EASINGS, Fade, ScaleFade, Slide, SlideFade, fadeConfig, scaleFadeConfig, slideFadeConfig };\n","import { Icon } from '@chakra-ui/icon';\nimport { forwardRef, useStyleConfig, omitThemingProps, chakra } from '@chakra-ui/system';\nimport { __DEV__ } from '@chakra-ui/utils';\nimport * as React from 'react';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar _excluded = [\"children\", \"isDisabled\", \"__css\"];\n\nvar CloseIcon = function CloseIcon(props) {\n return /*#__PURE__*/React.createElement(Icon, _extends({\n focusable: \"false\",\n \"aria-hidden\": true\n }, props), /*#__PURE__*/React.createElement(\"path\", {\n fill: \"currentColor\",\n d: \"M.439,21.44a1.5,1.5,0,0,0,2.122,2.121L11.823,14.3a.25.25,0,0,1,.354,0l9.262,9.263a1.5,1.5,0,1,0,2.122-2.121L14.3,12.177a.25.25,0,0,1,0-.354l9.263-9.262A1.5,1.5,0,0,0,21.439.44L12.177,9.7a.25.25,0,0,1-.354,0L2.561.44A1.5,1.5,0,0,0,.439,2.561L9.7,11.823a.25.25,0,0,1,0,.354Z\"\n }));\n};\n\n/**\n * A button with a close icon.\n *\n * It is used to handle the close functionality in feedback and overlay components\n * like Alerts, Toasts, Drawers and Modals.\n */\nvar CloseButton = /*#__PURE__*/forwardRef(function (props, ref) {\n var styles = useStyleConfig(\"CloseButton\", props);\n\n var _omitThemingProps = omitThemingProps(props),\n children = _omitThemingProps.children,\n isDisabled = _omitThemingProps.isDisabled,\n __css = _omitThemingProps.__css,\n rest = _objectWithoutPropertiesLoose(_omitThemingProps, _excluded);\n\n var baseStyle = {\n outline: 0,\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n flexShrink: 0\n };\n return /*#__PURE__*/React.createElement(chakra.button, _extends({\n type: \"button\",\n \"aria-label\": \"Close\",\n ref: ref,\n disabled: isDisabled,\n __css: _extends({}, baseStyle, styles, __css)\n }, rest), children || /*#__PURE__*/React.createElement(CloseIcon, {\n width: \"1em\",\n height: \"1em\"\n }));\n});\n\nif (__DEV__) {\n CloseButton.displayName = \"CloseButton\";\n}\n\nexport { CloseButton };\n","import { assignRef } from './assignRef';\nimport { useCallbackRef } from './useRef';\n/**\n * Merges two or more refs together providing a single interface to set their value\n * @param {RefObject|Ref} refs\n * @returns {MutableRefObject} - a new ref, which translates all changes to {refs}\n *\n * @see {@link mergeRefs} a version without buit-in memoization\n * @see https://github.com/theKashey/use-callback-ref#usemergerefs\n * @example\n * const Component = React.forwardRef((props, ref) => {\n * const ownRef = useRef();\n * const domRef = useMergeRefs([ref, ownRef]); // 👈 merge together\n * return <div ref={domRef}>...</div>\n * }\n */\nexport function useMergeRefs(refs, defaultValue) {\n return useCallbackRef(defaultValue || null, function (newValue) { return refs.forEach(function (ref) { return assignRef(ref, newValue); }); });\n}\n","import { useState } from 'react';\n/**\n * creates a MutableRef with ref change callback\n * @param initialValue - initial ref value\n * @param {Function} callback - a callback to run when value changes\n *\n * @example\n * const ref = useCallbackRef(0, (newValue, oldValue) => console.log(oldValue, '->', newValue);\n * ref.current = 1;\n * // prints 0 -> 1\n *\n * @see https://reactjs.org/docs/hooks-reference.html#useref\n * @see https://github.com/theKashey/use-callback-ref#usecallbackref---to-replace-reactuseref\n * @returns {MutableRefObject}\n */\nexport function useCallbackRef(initialValue, callback) {\n var ref = useState(function () { return ({\n // value\n value: initialValue,\n // last callback\n callback: callback,\n // \"memoized\" public interface\n facade: {\n get current() {\n return ref.value;\n },\n set current(value) {\n var last = ref.value;\n if (last !== value) {\n ref.value = value;\n ref.callback(value, last);\n }\n },\n },\n }); })[0];\n // update callback\n ref.callback = callback;\n return ref.facade;\n}\n","/**\n * Assigns a value for a given ref, no matter of the ref format\n * @param {RefObject} ref - a callback function or ref object\n * @param value - a new value\n *\n * @see https://github.com/theKashey/use-callback-ref#assignref\n * @example\n * const refObject = useRef();\n * const refFn = (ref) => {....}\n *\n * assignRef(refObject, \"refValue\");\n * assignRef(refFn, \"refValue\");\n */\nexport function assignRef(ref, value) {\n if (typeof ref === 'function') {\n ref(value);\n }\n else if (ref) {\n ref.current = value;\n }\n return ref;\n}\n","import * as React from 'react';\nimport PropTypes from 'prop-types';\nexport var hiddenGuard = {\n width: '1px',\n height: '0px',\n padding: 0,\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px'\n};\n\nvar InFocusGuard = function InFocusGuard(_ref) {\n var children = _ref.children;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }), children, children && /*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-last\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }));\n};\n\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nInFocusGuard.defaultProps = {\n children: null\n};\nexport default InFocusGuard;","import { __assign } from \"tslib\";\nfunction ItoI(a) {\n return a;\n}\nfunction innerCreateMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n var buffer = [];\n var assigned = false;\n var medium = {\n read: function () {\n if (assigned) {\n throw new Error('Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.');\n }\n if (buffer.length) {\n return buffer[buffer.length - 1];\n }\n return defaults;\n },\n useMedium: function (data) {\n var item = middleware(data, assigned);\n buffer.push(item);\n return function () {\n buffer = buffer.filter(function (x) { return x !== item; });\n };\n },\n assignSyncMedium: function (cb) {\n assigned = true;\n while (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n }\n buffer = {\n push: function (x) { return cb(x); },\n filter: function () { return buffer; },\n };\n },\n assignMedium: function (cb) {\n assigned = true;\n var pendingQueue = [];\n if (buffer.length) {\n var cbs = buffer;\n buffer = [];\n cbs.forEach(cb);\n pendingQueue = buffer;\n }\n var executeQueue = function () {\n var cbs = pendingQueue;\n pendingQueue = [];\n cbs.forEach(cb);\n };\n var cycle = function () { return Promise.resolve().then(executeQueue); };\n cycle();\n buffer = {\n push: function (x) {\n pendingQueue.push(x);\n cycle();\n },\n filter: function (filter) {\n pendingQueue = pendingQueue.filter(filter);\n return buffer;\n },\n };\n },\n };\n return medium;\n}\nexport function createMedium(defaults, middleware) {\n if (middleware === void 0) { middleware = ItoI; }\n return innerCreateMedium(defaults, middleware);\n}\n// eslint-disable-next-line @typescript-eslint/ban-types\nexport function createSidecarMedium(options) {\n if (options === void 0) { options = {}; }\n var medium = innerCreateMedium(null);\n medium.options = __assign({ async: true, ssr: false }, options);\n return medium;\n}\n","import { __assign, __rest } from \"tslib\";\nimport * as React from 'react';\nvar SideCar = function (_a) {\n var sideCar = _a.sideCar, rest = __rest(_a, [\"sideCar\"]);\n if (!sideCar) {\n throw new Error('Sidecar: please provide `sideCar` property to import the right car');\n }\n var Target = sideCar.read();\n if (!Target) {\n throw new Error('Sidecar medium not found');\n }\n return React.createElement(Target, __assign({}, rest));\n};\nSideCar.isSideCarExport = true;\nexport function exportSidecar(medium, exported) {\n medium.useMedium(exported);\n return SideCar;\n}\n","import { createMedium, createSidecarMedium } from 'use-sidecar';\nexport var mediumFocus = createMedium({}, function (_ref) {\n var target = _ref.target,\n currentTarget = _ref.currentTarget;\n return {\n target: target,\n currentTarget: currentTarget\n };\n});\nexport var mediumBlur = createMedium();\nexport var mediumEffect = createMedium();\nexport var mediumSidecar = createSidecarMedium({\n async: true\n});","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport { node, bool, string, any, arrayOf, oneOfType, object, func } from 'prop-types';\nimport * as constants from 'focus-lock/constants';\nimport { useMergeRefs } from 'use-callback-ref';\nimport { hiddenGuard } from './FocusGuard';\nimport { mediumFocus, mediumBlur, mediumSidecar } from './medium';\nvar emptyArray = [];\nvar FocusLock = /*#__PURE__*/React.forwardRef(function FocusLockUI(props, parentRef) {\n var _extends2;\n\n var _React$useState = React.useState(),\n realObserved = _React$useState[0],\n setObserved = _React$useState[1];\n\n var observed = React.useRef();\n var isActive = React.useRef(false);\n var originalFocusedElement = React.useRef(null);\n var children = props.children,\n disabled = props.disabled,\n noFocusGuards = props.noFocusGuards,\n persistentFocus = props.persistentFocus,\n crossFrame = props.crossFrame,\n autoFocus = props.autoFocus,\n allowTextSelection = props.allowTextSelection,\n group = props.group,\n className = props.className,\n whiteList = props.whiteList,\n _props$shards = props.shards,\n shards = _props$shards === void 0 ? emptyArray : _props$shards,\n _props$as = props.as,\n Container = _props$as === void 0 ? 'div' : _props$as,\n _props$lockProps = props.lockProps,\n containerProps = _props$lockProps === void 0 ? {} : _props$lockProps,\n SideCar = props.sideCar,\n shouldReturnFocus = props.returnFocus,\n onActivationCallback = props.onActivation,\n onDeactivationCallback = props.onDeactivation;\n\n var _React$useState2 = React.useState({}),\n id = _React$useState2[0]; // SIDE EFFECT CALLBACKS\n\n\n var onActivation = React.useCallback(function () {\n originalFocusedElement.current = originalFocusedElement.current || document && document.activeElement;\n\n if (observed.current && onActivationCallback) {\n onActivationCallback(observed.current);\n }\n\n isActive.current = true;\n }, [onActivationCallback]);\n var onDeactivation = React.useCallback(function () {\n isActive.current = false;\n\n if (onDeactivationCallback) {\n onDeactivationCallback(observed.current);\n }\n }, [onDeactivationCallback]);\n var returnFocus = React.useCallback(function (allowDefer) {\n var current = originalFocusedElement.current;\n\n if (Boolean(shouldReturnFocus) && current && current.focus) {\n var focusOptions = typeof shouldReturnFocus === 'object' ? shouldReturnFocus : undefined;\n originalFocusedElement.current = null;\n\n if (allowDefer) {\n // React might return focus after update\n // it's safer to defer the action\n Promise.resolve().then(function () {\n return current.focus(focusOptions);\n });\n } else {\n current.focus(focusOptions);\n }\n }\n }, [shouldReturnFocus]); // MEDIUM CALLBACKS\n\n var onFocus = React.useCallback(function (event) {\n if (isActive.current) {\n mediumFocus.useMedium(event);\n }\n }, []);\n var onBlur = mediumBlur.useMedium; // REF PROPAGATION\n // not using real refs due to race conditions\n\n var setObserveNode = React.useCallback(function (newObserved) {\n if (observed.current !== newObserved) {\n observed.current = newObserved;\n setObserved(newObserved);\n }\n }, []);\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n\n React.useEffect(function () {\n if (!observed.current) {\n // eslint-disable-next-line no-console\n console.error('FocusLock: could not obtain ref to internal node');\n }\n }, []);\n }\n\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n var mergedRef = useMergeRefs([parentRef, setObserveNode]);\n return /*#__PURE__*/React.createElement(React.Fragment, null, hasLeadingGuards && [/*#__PURE__*/React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }),\n /*#__PURE__*/\n // nearest focus guard\n React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n }) // first tabbed element guard\n ], !disabled && /*#__PURE__*/React.createElement(SideCar, {\n id: id,\n sideCar: mediumSidecar,\n observed: realObserved,\n disabled: disabled,\n persistentFocus: persistentFocus,\n crossFrame: crossFrame,\n autoFocus: autoFocus,\n whiteList: whiteList,\n shards: shards,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus\n }), /*#__PURE__*/React.createElement(Container, _extends({\n ref: mergedRef\n }, lockProps, {\n className: className,\n onBlur: onBlur,\n onFocus: onFocus\n }), children), hasTailingGuards && /*#__PURE__*/React.createElement(\"div\", {\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }));\n});\nFocusLock.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: node,\n disabled: bool,\n returnFocus: oneOfType([bool, object]),\n noFocusGuards: bool,\n allowTextSelection: bool,\n autoFocus: bool,\n persistentFocus: bool,\n crossFrame: bool,\n group: string,\n className: string,\n whiteList: func,\n shards: arrayOf(any),\n as: oneOfType([string, func, object]),\n lockProps: object,\n onActivation: func,\n onDeactivation: func,\n sideCar: any.isRequired\n} : {};\nFocusLock.defaultProps = {\n children: undefined,\n disabled: false,\n returnFocus: false,\n noFocusGuards: false,\n autoFocus: true,\n persistentFocus: false,\n crossFrame: true,\n allowTextSelection: undefined,\n group: undefined,\n className: undefined,\n whiteList: undefined,\n shards: undefined,\n as: 'div',\n lockProps: {},\n onActivation: undefined,\n onDeactivation: undefined\n};\nexport default FocusLock;","export var FOCUS_GROUP = 'data-focus-lock';\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\nexport var FOCUS_AUTO = 'data-autofocus-inside';\n","export var toArray = function (a) {\n var ret = Array(a.length);\n for (var i = 0; i < a.length; ++i) {\n ret[i] = a[i];\n }\n return ret;\n};\nexport var asArray = function (a) { return (Array.isArray(a) ? a : [a]); };\n","import { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\nvar filterNested = function (nodes) {\n var contained = new Set();\n var l = nodes.length;\n for (var i = 0; i < l; i += 1) {\n for (var j = i + 1; j < l; j += 1) {\n var position = nodes[i].compareDocumentPosition(nodes[j]);\n if ((position & Node.DOCUMENT_POSITION_CONTAINED_BY) > 0) {\n contained.add(j);\n }\n if ((position & Node.DOCUMENT_POSITION_CONTAINS) > 0) {\n contained.add(i);\n }\n }\n }\n return nodes.filter(function (_, index) { return !contained.has(index); });\n};\nvar getTopParent = function (node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\nexport var getAllAffectedNodes = function (node) {\n var nodes = asArray(node);\n return nodes.filter(Boolean).reduce(function (acc, currentNode) {\n var group = currentNode.getAttribute(FOCUS_GROUP);\n acc.push.apply(acc, (group\n ? filterNested(toArray(getTopParent(currentNode).querySelectorAll(\"[\" + FOCUS_GROUP + \"=\\\"\" + group + \"\\\"]:not([\" + FOCUS_DISABLED + \"=\\\"disabled\\\"])\")))\n : [currentNode]));\n return acc;\n }, []);\n};\n","var isElementHidden = function (node) {\n if (node.nodeType !== Node.ELEMENT_NODE) {\n return false;\n }\n var computedStyle = window.getComputedStyle(node, null);\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return (computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden');\n};\nvar isVisibleUncached = function (node, checkParent) {\n return !node ||\n node === document ||\n (node && node.nodeType === Node.DOCUMENT_NODE) ||\n (!isElementHidden(node) &&\n checkParent(node.parentNode && node.parentNode.nodeType === Node.DOCUMENT_FRAGMENT_NODE\n ? node.parentNode.host\n : node.parentNode));\n};\nexport var isVisibleCached = function (visibilityCache, node) {\n var cached = visibilityCache.get(node);\n if (cached !== undefined) {\n return cached;\n }\n var result = isVisibleUncached(node, isVisibleCached.bind(undefined, visibilityCache));\n visibilityCache.set(node, result);\n return result;\n};\nexport var notHiddenInput = function (node) {\n return !((node.tagName === 'INPUT' || node.tagName === 'BUTTON') && (node.type === 'hidden' || node.disabled));\n};\nexport var isGuard = function (node) { return Boolean(node && node.dataset && node.dataset.focusGuard); };\nexport var isNotAGuard = function (node) { return !isGuard(node); };\nexport var isDefined = function (x) { return Boolean(x); };\n","import { toArray } from './array';\nexport var tabSort = function (a, b) {\n var tabDiff = a.tabIndex - b.tabIndex;\n var indexDiff = a.index - b.index;\n if (tabDiff) {\n if (!a.tabIndex) {\n return 1;\n }\n if (!b.tabIndex) {\n return -1;\n }\n }\n return tabDiff || indexDiff;\n};\nexport var orderByTabIndex = function (nodes, filterNegative, keepGuards) {\n return toArray(nodes)\n .map(function (node, index) { return ({\n node: node,\n index: index,\n tabIndex: keepGuards && node.tabIndex === -1 ? ((node.dataset || {}).focusGuard ? 0 : -1) : node.tabIndex,\n }); })\n .filter(function (data) { return !filterNegative || data.tabIndex >= 0; })\n .sort(tabSort);\n};\n","import { FOCUS_AUTO } from '../constants';\nimport { toArray } from './array';\nimport { tabbables } from './tabbables';\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = queryTabbables + \", [data-focus-guard]\";\nexport var getFocusables = function (parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n return acc.concat(toArray(parent.querySelectorAll(withGuards ? queryGuardTabbables : queryTabbables)), parent.parentNode\n ? toArray(parent.parentNode.querySelectorAll(queryTabbables)).filter(function (node) { return node === parent; })\n : []);\n }, []);\n};\nexport var getParentAutofocusables = function (parent) {\n var parentFocus = parent.querySelectorAll(\"[\" + FOCUS_AUTO + \"]\");\n return toArray(parentFocus)\n .map(function (node) { return getFocusables([node]); })\n .reduce(function (acc, nodes) { return acc.concat(nodes); }, []);\n};\n","export var tabbables = [\n 'button:enabled',\n 'select:enabled',\n 'textarea:enabled',\n 'input:enabled',\n 'a[href]',\n 'area[href]',\n 'summary',\n 'iframe',\n 'object',\n 'embed',\n 'audio[controls]',\n 'video[controls]',\n '[tabindex]',\n '[contenteditable]',\n '[autofocus]',\n];\n","import { toArray } from './array';\nimport { isVisibleCached, notHiddenInput } from './is';\nimport { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\nexport var filterFocusable = function (nodes, visibilityCache) {\n return toArray(nodes)\n .filter(function (node) { return isVisibleCached(visibilityCache, node); })\n .filter(function (node) { return notHiddenInput(node); });\n};\nexport var getTabbableNodes = function (topNodes, visibilityCache, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards), visibilityCache), true, withGuards);\n};\nexport var getAllTabbableNodes = function (topNodes, visibilityCache) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes), visibilityCache), false);\n};\nexport var parentAutofocusables = function (topNode, visibilityCache) {\n return filterFocusable(getParentAutofocusables(topNode), visibilityCache);\n};\n","import { asArray } from './array';\nimport { parentAutofocusables } from './DOMutils';\nvar getParents = function (node, parents) {\n if (parents === void 0) { parents = []; }\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode, parents);\n }\n return parents;\n};\nexport var getCommonParent = function (nodeA, nodeB) {\n var parentsA = getParents(nodeA);\n var parentsB = getParents(nodeB);\n for (var i = 0; i < parentsA.length; i += 1) {\n var currentParent = parentsA[i];\n if (parentsB.indexOf(currentParent) >= 0) {\n return currentParent;\n }\n }\n return false;\n};\nexport var getTopCommonParent = function (baseActiveElement, leftEntry, rightEntries) {\n var activeElements = asArray(baseActiveElement);\n var leftEntries = asArray(leftEntry);\n var activeElement = activeElements[0];\n var topCommon = false;\n leftEntries.filter(Boolean).forEach(function (entry) {\n topCommon = getCommonParent(topCommon || entry, entry) || topCommon;\n rightEntries.filter(Boolean).forEach(function (subEntry) {\n var common = getCommonParent(activeElement, subEntry);\n if (common) {\n if (!topCommon || common.contains(topCommon)) {\n topCommon = common;\n }\n else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n return topCommon;\n};\nexport var allParentAutofocusables = function (entries, visibilityCache) {\n return entries.reduce(function (acc, node) { return acc.concat(parentAutofocusables(node, visibilityCache)); }, []);\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { toArray } from './utils/array';\nvar focusInFrame = function (frame) { return frame === document.activeElement; };\nvar focusInsideIframe = function (topNode) {\n return Boolean(toArray(topNode.querySelectorAll('iframe')).some(function (node) { return focusInFrame(node); }));\n};\nexport var focusInside = function (topNode) {\n var activeElement = document && document.activeElement;\n if (!activeElement || (activeElement.dataset && activeElement.dataset.focusGuard)) {\n return false;\n }\n return getAllAffectedNodes(topNode).reduce(function (result, node) { return result || node.contains(activeElement) || focusInsideIframe(node); }, false);\n};\n","var isRadio = function (node) { return node.tagName === 'INPUT' && node.type === 'radio'; };\nvar findSelectedRadio = function (node, nodes) {\n return nodes\n .filter(isRadio)\n .filter(function (el) { return el.name === node.name; })\n .filter(function (el) { return el.checked; })[0] || node;\n};\nexport var correctNode = function (node, nodes) {\n if (isRadio(node) && node.name) {\n return findSelectedRadio(node, nodes);\n }\n return node;\n};\nexport var correctNodes = function (nodes) {\n var resultSet = new Set();\n nodes.forEach(function (node) { return resultSet.add(correctNode(node, nodes)); });\n return nodes.filter(function (node) { return resultSet.has(node); });\n};\n","import { correctNode } from './correctFocus';\nexport var pickFirstFocus = function (nodes) {\n if (nodes[0] && nodes.length > 1) {\n return correctNode(nodes[0], nodes);\n }\n return nodes[0];\n};\nexport var pickFocusable = function (nodes, index) {\n if (nodes.length > 1) {\n return nodes.indexOf(correctNode(nodes[index], nodes));\n }\n return index;\n};\n","import { correctNodes } from './utils/correctFocus';\nimport { pickFocusable } from './utils/firstFocus';\nimport { isGuard } from './utils/is';\nexport var NEW_FOCUS = 'NEW_FOCUS';\nexport var newFocus = function (innerNodes, outerNodes, activeElement, lastNode) {\n var cnt = innerNodes.length;\n var firstFocus = innerNodes[0];\n var lastFocus = innerNodes[cnt - 1];\n var isOnGuard = isGuard(activeElement);\n if (innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n var activeIndex = outerNodes.indexOf(activeElement);\n var lastIndex = lastNode ? outerNodes.indexOf(lastNode) : activeIndex;\n var lastNodeInside = lastNode ? innerNodes.indexOf(lastNode) : -1;\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n var correctedNodes = correctNodes(outerNodes);\n var correctedIndexDiff = correctedNodes.indexOf(activeElement) - (lastNode ? correctedNodes.indexOf(lastNode) : activeIndex);\n var returnFirstNode = pickFocusable(innerNodes, 0);\n var returnLastNode = pickFocusable(innerNodes, cnt - 1);\n if (activeIndex === -1 || lastNodeInside === -1) {\n return NEW_FOCUS;\n }\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n if (activeIndex >= lastNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n if (indexDiff && Math.abs(correctedIndexDiff) > 1) {\n return lastNodeInside;\n }\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n return undefined;\n};\n","import { NEW_FOCUS, newFocus } from './solver';\nimport { getAllAffectedNodes } from './utils/all-affected';\nimport { getAllTabbableNodes, getTabbableNodes } from './utils/DOMutils';\nimport { pickFirstFocus } from './utils/firstFocus';\nimport { isDefined, isNotAGuard } from './utils/is';\nimport { allParentAutofocusables, getTopCommonParent } from './utils/parenting';\nvar findAutoFocused = function (autoFocusables) { return function (node) {\n return node.autofocus || (node.dataset && !!node.dataset.autofocus) || autoFocusables.indexOf(node) >= 0;\n}; };\nvar reorderNodes = function (srcNodes, dstNodes) {\n var remap = new Map();\n dstNodes.forEach(function (entity) { return remap.set(entity.node, entity); });\n return srcNodes.map(function (node) { return remap.get(node); }).filter(isDefined);\n};\nexport var getFocusMerge = function (topNode, lastNode) {\n var activeElement = (document && document.activeElement);\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n var visibilityCache = new Map();\n var anyFocusable = getAllTabbableNodes(entries, visibilityCache);\n var innerElements = getTabbableNodes(entries, visibilityCache).filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n });\n if (!innerElements[0]) {\n innerElements = anyFocusable;\n if (!innerElements[0]) {\n return undefined;\n }\n }\n var outerNodes = getAllTabbableNodes([commonParent], visibilityCache).map(function (_a) {\n var node = _a.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n var innerNodes = orderedInnerElements.map(function (_a) {\n var node = _a.node;\n return node;\n });\n var newId = newFocus(innerNodes, outerNodes, activeElement, lastNode);\n if (newId === NEW_FOCUS) {\n var autoFocusable = anyFocusable\n .map(function (_a) {\n var node = _a.node;\n return node;\n })\n .filter(findAutoFocused(allParentAutofocusables(entries, visibilityCache)));\n return {\n node: autoFocusable && autoFocusable.length ? pickFirstFocus(autoFocusable) : pickFirstFocus(innerNodes),\n };\n }\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n","import { getFocusMerge } from './focusMerge';\nexport var focusOn = function (target) {\n target.focus();\n if ('contentWindow' in target && target.contentWindow) {\n target.contentWindow.focus();\n }\n};\nvar guardCount = 0;\nvar lockDisabled = false;\nexport var setFocus = function (topNode, lastNode) {\n var focusable = getFocusMerge(topNode, lastNode);\n if (lockDisabled) {\n return;\n }\n if (focusable) {\n if (guardCount > 2) {\n console.error('FocusLock: focus-fighting detected. Only one focus management system could be active. ' +\n 'See https://github.com/theKashey/focus-lock/#focus-fighting');\n lockDisabled = true;\n setTimeout(function () {\n lockDisabled = false;\n }, 1);\n return;\n }\n guardCount++;\n focusOn(focusable.node);\n guardCount--;\n }\n};\n","import * as constants from './constants';\nimport { getFocusabledIn } from './focusables';\nimport { focusInside } from './focusInside';\nimport { focusIsHidden } from './focusIsHidden';\nimport { getFocusMerge as focusMerge } from './focusMerge';\nimport { setFocus } from './setFocus';\nimport { focusNextElement, focusPrevElement } from './sibling';\nimport tabHook from './tabHook';\nimport { getAllAffectedNodes } from './utils/all-affected';\nexport { tabHook, focusInside, focusIsHidden, focusMerge, getFocusabledIn, constants, getAllAffectedNodes, focusNextElement, focusPrevElement, };\nexport default setFocus;\n","export function deferAction(action) {\n // Hidding setImmediate from Webpack to avoid inserting polyfill\n var _window = window,\n setImmediate = _window.setImmediate;\n\n if (typeof setImmediate !== 'undefined') {\n setImmediate(action);\n } else {\n setTimeout(action, 1);\n }\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};","import * as React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport moveFocusInside, { focusInside, focusIsHidden, getFocusabledIn } from 'focus-lock';\nimport { deferAction } from './util';\nimport { mediumFocus, mediumBlur, mediumEffect } from './medium';\n\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\n\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\n\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\n\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\n\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\n\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\n\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\n\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n\n do {\n var item = allNodes[i];\n\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n // we will tab to the next element\n return;\n }\n\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\n\nvar extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\n\nvar focusWasOutside = function focusWasOutside(crossFrameOption) {\n if (crossFrameOption) {\n // with cross frame return true for any value\n return Boolean(focusWasOutsideWindow);\n } // in other case return only of focus went a while aho\n\n\n return focusWasOutsideWindow === 'meanwhile';\n};\n\nvar activateTrap = function activateTrap() {\n var result = false;\n\n if (lastActiveTrap) {\n var _lastActiveTrap = lastActiveTrap,\n observed = _lastActiveTrap.observed,\n persistentFocus = _lastActiveTrap.persistentFocus,\n autoFocus = _lastActiveTrap.autoFocus,\n shards = _lastActiveTrap.shards,\n crossFrame = _lastActiveTrap.crossFrame;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n var activeElement = document && document.activeElement;\n\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || focusWasOutside(crossFrame) || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n // Check if blur() exists, which is missing on certain elements on IE\n if (activeElement.blur) {\n activeElement.blur();\n }\n\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus);\n lastPortaledElement = {};\n }\n }\n\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n }\n }\n\n if (document) {\n var newActiveElement = document && document.activeElement;\n var allNodes = getFocusabledIn(workingArea);\n var focusedIndex = allNodes.map(function (_ref) {\n var node = _ref.node;\n return node;\n }).indexOf(newActiveElement);\n\n if (focusedIndex > -1) {\n // remove old focus\n allNodes.filter(function (_ref2) {\n var guard = _ref2.guard,\n node = _ref2.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref3) {\n var node = _ref3.node;\n return node.removeAttribute('tabIndex');\n });\n autoGuard(focusedIndex, allNodes.length, +1, allNodes);\n autoGuard(focusedIndex, -1, -1, allNodes);\n }\n }\n }\n }\n\n return result;\n};\n\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n // prevent scroll jump\n event.stopPropagation();\n event.preventDefault();\n }\n};\n\nvar onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\n\nvar onFocus = function onFocus(event) {\n // detect portal\n var source = event.target;\n var currentNode = event.currentTarget;\n\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\n\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\n\nvar FocusTrap = function FocusTrap(_ref4) {\n var children = _ref4.children;\n return /*#__PURE__*/React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\n\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\n\nvar onWindowBlur = function onWindowBlur() {\n focusWasOutsideWindow = 'just'; // using setTimeout to set this variable after React/sidecar reaction\n\n setTimeout(function () {\n focusWasOutsideWindow = 'meanwhile';\n }, 0);\n};\n\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap, true);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('blur', onWindowBlur);\n};\n\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap, true);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('blur', onWindowBlur);\n};\n\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref5) {\n var disabled = _ref5.disabled;\n return !disabled;\n });\n}\n\nfunction handleStateChangeOnClient(traps) {\n var trap = traps.slice(-1)[0];\n\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.id === lastTrap.id;\n lastActiveTrap = trap;\n\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation(); // return focus only of last trap was removed\n\n if (!traps.filter(function (_ref6) {\n var id = _ref6.id;\n return id === lastTrap.id;\n }).length) {\n // allow defer is no other trap is awaiting restore\n lastTrap.returnFocus(!trap);\n }\n }\n\n if (trap) {\n lastActiveFocus = null;\n\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation();\n }\n\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n} // bind medium\n\n\nmediumFocus.assignSyncMedium(onFocus);\nmediumBlur.assignMedium(onBlur);\nmediumEffect.assignMedium(function (cb) {\n return cb({\n moveFocusInside: moveFocusInside,\n focusInside: focusInside\n });\n});\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","import { FOCUS_ALLOW } from './constants';\nimport { toArray } from './utils/array';\nexport var focusIsHidden = function () {\n return document &&\n toArray(document.querySelectorAll(\"[\" + FOCUS_ALLOW + \"]\")).some(function (node) { return node.contains(document.activeElement); });\n};\n","import { getAllAffectedNodes } from './utils/all-affected';\nimport { getTabbableNodes } from './utils/DOMutils';\nimport { isGuard, isNotAGuard } from './utils/is';\nimport { getTopCommonParent } from './utils/parenting';\nexport var getFocusabledIn = function (topNode) {\n var entries = getAllAffectedNodes(topNode).filter(isNotAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var visibilityCache = new Map();\n var outerNodes = getTabbableNodes([commonParent], visibilityCache, true);\n var innerElements = getTabbableNodes(entries, visibilityCache)\n .filter(function (_a) {\n var node = _a.node;\n return isNotAGuard(node);\n })\n .map(function (_a) {\n var node = _a.node;\n return node;\n });\n return outerNodes.map(function (_a) {\n var node = _a.node, index = _a.index;\n return ({\n node: node,\n index: index,\n lockItem: innerElements.indexOf(node) >= 0,\n guard: isGuard(node),\n });\n });\n};\n","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { PureComponent } from 'react';\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n handleStateChangeOnClient(state);\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n return SideEffect;\n };\n}\n\nexport default withSideEffect;\n","export default function _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport * as React from 'react';\nimport FocusLockUI from './Lock';\nimport FocusTrap from './Trap';\n/* that would be a BREAKING CHANGE!\n// delaying sidecar execution till the first usage\nconst RequireSideCar = (props) => {\n // eslint-disable-next-line global-require\n const SideCar = require('./Trap').default;\n return <SideCar {...props} />;\n};\n*/\n\nvar FocusLockCombination = /*#__PURE__*/React.forwardRef(function FocusLockUICombination(props, ref) {\n return /*#__PURE__*/React.createElement(FocusLockUI, _extends({\n sideCar: FocusTrap,\n ref: ref\n }, props));\n});\n\nvar _ref = FocusLockUI.propTypes || {},\n sideCar = _ref.sideCar,\n propTypes = _objectWithoutPropertiesLoose(_ref, [\"sideCar\"]);\n\nFocusLockCombination.propTypes = process.env.NODE_ENV !== \"production\" ? propTypes : {};\nexport default FocusLockCombination;","export default function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}","import * as React from 'react';\nimport ReactFocusLock from 'react-focus-lock';\nimport { getAllFocusable, focus, __DEV__ } from '@chakra-ui/utils';\n\nvar FocusLock = function FocusLock(props) {\n var initialFocusRef = props.initialFocusRef,\n finalFocusRef = props.finalFocusRef,\n contentRef = props.contentRef,\n restoreFocus = props.restoreFocus,\n children = props.children,\n isDisabled = props.isDisabled,\n autoFocus = props.autoFocus,\n persistentFocus = props.persistentFocus,\n lockFocusAcrossFrames = props.lockFocusAcrossFrames;\n var onActivation = React.useCallback(function () {\n if (initialFocusRef != null && initialFocusRef.current) {\n initialFocusRef.current.focus();\n } else if (contentRef != null && contentRef.current) {\n var focusables = getAllFocusable(contentRef.current);\n\n if (focusables.length === 0) {\n focus(contentRef.current, {\n nextTick: true\n });\n }\n }\n }, [initialFocusRef, contentRef]);\n var onDeactivation = React.useCallback(function () {\n var _finalFocusRef$curren;\n\n finalFocusRef == null ? void 0 : (_finalFocusRef$curren = finalFocusRef.current) == null ? void 0 : _finalFocusRef$curren.focus();\n }, [finalFocusRef]);\n var returnFocus = restoreFocus && !finalFocusRef;\n return /*#__PURE__*/React.createElement(ReactFocusLock, {\n crossFrame: lockFocusAcrossFrames,\n persistentFocus: persistentFocus,\n autoFocus: autoFocus,\n disabled: isDisabled,\n onActivation: onActivation,\n onDeactivation: onDeactivation,\n returnFocus: returnFocus\n }, children);\n};\n\nif (__DEV__) {\n FocusLock.displayName = \"FocusLock\";\n}\n\nexport { FocusLock, FocusLock as default };\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","export var zeroRightClassName = 'right-scroll-bar-position';\nexport var fullWidthClassName = 'width-before-scroll-bar';\nexport var noScrollbarsClassName = 'with-scroll-bars-hidden';\n/**\n * Name of a CSS variable containing the amount of \"hidden\" scrollbar\n * ! might be undefined ! use will fallback!\n */\nexport var removedBarSizeVariable = '--removed-body-scroll-bar-size';\n","import { createSidecarMedium } from 'use-sidecar';\nexport var effectCar = createSidecarMedium();\n","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { fullWidthClassName, zeroRightClassName } from 'react-remove-scroll-bar/constants';\nimport { effectCar } from './medium';\nimport { useMergeRefs } from 'use-callback-ref';\nvar nothing = function () {\n return;\n};\n/**\n * Removes scrollbar from the page and contain the scroll within the Lock\n */\nvar RemoveScroll = React.forwardRef(function (props, parentRef) {\n var ref = React.useRef(null);\n var _a = React.useState({\n onScrollCapture: nothing,\n onWheelCapture: nothing,\n onTouchMoveCapture: nothing\n }), callbacks = _a[0], setCallbacks = _a[1];\n var forwardProps = props.forwardProps, children = props.children, className = props.className, removeScrollBar = props.removeScrollBar, enabled = props.enabled, shards = props.shards, sideCar = props.sideCar, noIsolation = props.noIsolation, inert = props.inert, allowPinchZoom = props.allowPinchZoom, _b = props.as, Container = _b === void 0 ? 'div' : _b, rest = tslib_1.__rest(props, [\"forwardProps\", \"children\", \"className\", \"removeScrollBar\", \"enabled\", \"shards\", \"sideCar\", \"noIsolation\", \"inert\", \"allowPinchZoom\", \"as\"]);\n var SideCar = sideCar;\n var containerRef = useMergeRefs([\n ref,\n parentRef\n ]);\n var containerProps = tslib_1.__assign({}, rest, callbacks);\n return (React.createElement(React.Fragment, null,\n enabled && (React.createElement(SideCar, { sideCar: effectCar, removeScrollBar: removeScrollBar, shards: shards, noIsolation: noIsolation, inert: inert, setCallbacks: setCallbacks, allowPinchZoom: !!allowPinchZoom, lockRef: ref })),\n forwardProps ? (React.cloneElement(React.Children.only(children), tslib_1.__assign({}, containerProps, { ref: containerRef }))) : (React.createElement(Container, tslib_1.__assign({}, containerProps, { className: className, ref: containerRef }), children))));\n});\nRemoveScroll.defaultProps = {\n enabled: true,\n removeScrollBar: true,\n inert: false\n};\nRemoveScroll.classNames = {\n fullWidth: fullWidthClassName,\n zeroRight: zeroRightClassName\n};\nexport { RemoveScroll };\n","import { getNonce } from 'get-nonce';\nfunction makeStyleTag() {\n if (!document)\n return null;\n var tag = document.createElement('style');\n tag.type = 'text/css';\n var nonce = getNonce();\n if (nonce) {\n tag.setAttribute('nonce', nonce);\n }\n return tag;\n}\nfunction injectStyles(tag, css) {\n // @ts-ignore\n if (tag.styleSheet) {\n // @ts-ignore\n tag.styleSheet.cssText = css;\n }\n else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n var head = document.head || document.getElementsByTagName('head')[0];\n head.appendChild(tag);\n}\nexport var stylesheetSingleton = function () {\n var counter = 0;\n var stylesheet = null;\n return {\n add: function (style) {\n if (counter == 0) {\n if ((stylesheet = makeStyleTag())) {\n injectStyles(stylesheet, style);\n insertStyleTag(stylesheet);\n }\n }\n counter++;\n },\n remove: function () {\n counter--;\n if (!counter && stylesheet) {\n stylesheet.parentNode && stylesheet.parentNode.removeChild(stylesheet);\n stylesheet = null;\n }\n },\n };\n};\n","var currentNonce;\nexport var setNonce = function (nonce) {\n currentNonce = nonce;\n};\nexport var getNonce = function () {\n if (currentNonce) {\n return currentNonce;\n }\n if (typeof __webpack_nonce__ !== 'undefined') {\n return __webpack_nonce__;\n }\n return undefined;\n};\n","import { styleHookSingleton } from './hook';\nexport var styleSingleton = function () {\n var useStyle = styleHookSingleton();\n var Sheet = function (_a) {\n var styles = _a.styles;\n useStyle(styles);\n return null;\n };\n return Sheet;\n};\n","import * as React from 'react';\nimport { stylesheetSingleton } from './singleton';\nexport var styleHookSingleton = function () {\n var sheet = stylesheetSingleton();\n return function (styles) {\n React.useEffect(function () {\n sheet.add(styles);\n return function () {\n sheet.remove();\n };\n }, [styles]);\n };\n};\n","export var zeroGap = {\n left: 0,\n top: 0,\n right: 0,\n gap: 0,\n};\nvar parse = function (x) { return parseInt(x || '', 10) || 0; };\nvar getOffset = function (gapMode) {\n var cs = window.getComputedStyle(document.body);\n var left = cs[gapMode === 'padding' ? 'paddingLeft' : 'marginLeft'];\n var top = cs[gapMode === 'padding' ? 'paddingTop' : 'marginTop'];\n var right = cs[gapMode === 'padding' ? 'paddingRight' : 'marginRight'];\n return [parse(left), parse(top), parse(right)];\n};\nexport var getGapWidth = function (gapMode) {\n if (gapMode === void 0) { gapMode = 'margin'; }\n if (typeof window === 'undefined') {\n return zeroGap;\n }\n var offsets = getOffset(gapMode);\n var documentWidth = document.documentElement.clientWidth;\n var windowWidth = window.innerWidth;\n return {\n left: offsets[0],\n top: offsets[1],\n right: offsets[2],\n gap: Math.max(0, windowWidth - documentWidth + offsets[2] - offsets[0]),\n };\n};\n","import * as React from 'react';\nimport { styleSingleton } from 'react-style-singleton';\nimport { fullWidthClassName, zeroRightClassName, noScrollbarsClassName, removedBarSizeVariable } from './constants';\nimport { getGapWidth } from './utils';\nvar Style = styleSingleton();\n// important tip - once we measure scrollBar width and remove them\n// we could not repeat this operation\n// thus we are using style-singleton - only the first \"yet correct\" style will be applied.\nvar getStyles = function (_a, allowRelative, gapMode, important) {\n var left = _a.left, top = _a.top, right = _a.right, gap = _a.gap;\n if (gapMode === void 0) { gapMode = 'margin'; }\n return \"\\n .\".concat(noScrollbarsClassName, \" {\\n overflow: hidden \").concat(important, \";\\n padding-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n body {\\n overflow: hidden \").concat(important, \";\\n \").concat([\n allowRelative && \"position: relative \".concat(important, \";\"),\n gapMode === 'margin' &&\n \"\\n padding-left: \".concat(left, \"px;\\n padding-top: \").concat(top, \"px;\\n padding-right: \").concat(right, \"px;\\n margin-left:0;\\n margin-top:0;\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n \"),\n gapMode === 'padding' && \"padding-right: \".concat(gap, \"px \").concat(important, \";\"),\n ]\n .filter(Boolean)\n .join(''), \"\\n }\\n \\n .\").concat(zeroRightClassName, \" {\\n right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" {\\n margin-right: \").concat(gap, \"px \").concat(important, \";\\n }\\n \\n .\").concat(zeroRightClassName, \" .\").concat(zeroRightClassName, \" {\\n right: 0 \").concat(important, \";\\n }\\n \\n .\").concat(fullWidthClassName, \" .\").concat(fullWidthClassName, \" {\\n margin-right: 0 \").concat(important, \";\\n }\\n \\n body {\\n \").concat(removedBarSizeVariable, \": \").concat(gap, \"px;\\n }\\n\");\n};\n/**\n * Removes page scrollbar and blocks page scroll when mounted\n */\nexport var RemoveScrollBar = function (props) {\n var _a = React.useState(getGapWidth(props.gapMode)), gap = _a[0], setGap = _a[1];\n React.useEffect(function () {\n setGap(getGapWidth(props.gapMode));\n }, [props.gapMode]);\n var noRelative = props.noRelative, noImportant = props.noImportant, _b = props.gapMode, gapMode = _b === void 0 ? 'margin' : _b;\n return React.createElement(Style, { styles: getStyles(gap, !noRelative, gapMode, !noImportant ? '!important' : '') });\n};\n","var elementCouldBeVScrolled = function (node) {\n var styles = window.getComputedStyle(node);\n return (styles.overflowY !== 'hidden' && // not-not-scrollable\n !(styles.overflowY === styles.overflowX && styles.overflowY === 'visible') // scrollable\n );\n};\nvar elementCouldBeHScrolled = function (node) {\n var styles = window.getComputedStyle(node);\n return (styles.overflowX !== 'hidden' && // not-not-scrollable\n !(styles.overflowY === styles.overflowX && styles.overflowX === 'visible') // scrollable\n );\n};\nexport var locationCouldBeScrolled = function (axis, node) {\n var current = node;\n do {\n var isScrollable = elementCouldBeScrolled(axis, current);\n if (isScrollable) {\n var _a = getScrollVariables(axis, current), s = _a[1], d = _a[2];\n if (s > d) {\n return true;\n }\n }\n current = current.parentNode;\n } while (current && current !== document.body);\n return false;\n};\nvar getVScrollVariables = function (_a) {\n var scrollTop = _a.scrollTop, scrollHeight = _a.scrollHeight, clientHeight = _a.clientHeight;\n return [scrollTop, scrollHeight, clientHeight];\n};\nvar getHScrollVariables = function (_a) {\n var scrollLeft = _a.scrollLeft, scrollWidth = _a.scrollWidth, clientWidth = _a.clientWidth;\n return [scrollLeft, scrollWidth, clientWidth];\n};\nvar elementCouldBeScrolled = function (axis, node) {\n return axis === 'v' ? elementCouldBeVScrolled(node) : elementCouldBeHScrolled(node);\n};\nvar getScrollVariables = function (axis, node) {\n return axis === 'v' ? getVScrollVariables(node) : getHScrollVariables(node);\n};\nexport var handleScroll = function (axis, endTarget, event, sourceDelta, noOverscroll) {\n var delta = sourceDelta;\n // find scrollable target\n var target = event.target;\n var targetInLock = endTarget.contains(target);\n var shouldCancelScroll = false;\n var isDeltaPositive = delta > 0;\n var availableScroll = 0;\n var availableScrollTop = 0;\n do {\n var _a = getScrollVariables(axis, target), position = _a[0], scroll_1 = _a[1], capacity = _a[2];\n var elementScroll = scroll_1 - capacity - position;\n if (position || elementScroll) {\n if (elementCouldBeScrolled(axis, target)) {\n availableScroll += elementScroll;\n availableScrollTop += position;\n }\n }\n target = target.parentNode;\n } while (\n // portaled content\n (!targetInLock && target !== document.body) ||\n // self content\n (targetInLock && (endTarget.contains(target) || endTarget === target)));\n if (isDeltaPositive &&\n ((noOverscroll && availableScroll === 0) ||\n (!noOverscroll && delta > availableScroll))) {\n shouldCancelScroll = true;\n }\n else if (!isDeltaPositive &&\n ((noOverscroll && availableScrollTop === 0) ||\n (!noOverscroll && -delta > availableScrollTop))) {\n shouldCancelScroll = true;\n }\n return shouldCancelScroll;\n};\n","var passiveSupported = false;\nif (typeof window !== 'undefined') {\n try {\n var options = Object.defineProperty({}, 'passive', {\n get: function () {\n passiveSupported = true;\n return true;\n }\n });\n window.addEventListener('test', options, options);\n window.removeEventListener('test', options, options);\n }\n catch (err) {\n passiveSupported = false;\n }\n}\nexport var nonPassive = passiveSupported ? { passive: false } : false;\n","import * as React from 'react';\nimport { RemoveScrollBar } from 'react-remove-scroll-bar';\nimport { styleSingleton } from 'react-style-singleton';\nimport { handleScroll, locationCouldBeScrolled } from './handleScroll';\nimport { nonPassive } from './aggresiveCapture';\nexport var getTouchXY = function (event) {\n return 'changedTouches' in event\n ? [event.changedTouches[0].clientX, event.changedTouches[0].clientY]\n : [0, 0];\n};\nexport var getDeltaXY = function (event) { return [event.deltaX, event.deltaY]; };\nvar extractRef = function (ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\nvar deltaCompare = function (x, y) {\n return x[0] === y[0] && x[1] === y[1];\n};\nvar generateStyle = function (id) { return \"\\n .block-interactivity-\" + id + \" {pointer-events: none;}\\n .allow-interactivity-\" + id + \" {pointer-events: all;}\\n\"; };\nvar idCounter = 0;\nvar lockStack = [];\nexport function RemoveScrollSideCar(props) {\n var shouldPreventQueue = React.useRef([]);\n var touchStartRef = React.useRef([0, 0]);\n var activeAxis = React.useRef();\n var id = React.useState(idCounter++)[0];\n var Style = React.useState(function () { return styleSingleton(); })[0];\n var lastProps = React.useRef(props);\n React.useEffect(function () {\n lastProps.current = props;\n }, [props]);\n React.useEffect(function () {\n if (props.inert) {\n document.body.classList.add(\"block-interactivity-\" + id);\n var allow_1 = [\n props.lockRef.current\n ].concat((props.shards || []).map(extractRef)).filter(Boolean);\n allow_1.forEach(function (el) { return el.classList.add(\"allow-interactivity-\" + id); });\n return function () {\n document.body.classList.remove(\"block-interactivity-\" + id);\n allow_1.forEach(function (el) {\n return el.classList.remove(\"allow-interactivity-\" + id);\n });\n };\n }\n return;\n }, [props.inert, props.lockRef.current, props.shards]);\n var shouldCancelEvent = React.useCallback(function (event, parent) {\n if ('touches' in event && event.touches.length === 2) {\n return !lastProps.current.allowPinchZoom;\n }\n var touch = getTouchXY(event);\n var touchStart = touchStartRef.current;\n var deltaX = 'deltaX' in event ? event.deltaX : touchStart[0] - touch[0];\n var deltaY = 'deltaY' in event ? event.deltaY : touchStart[1] - touch[1];\n var currentAxis;\n var target = event.target;\n var moveDirection = Math.abs(deltaX) > Math.abs(deltaY) ? 'h' : 'v';\n var canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n if (!canBeScrolledInMainDirection) {\n return true;\n }\n if (canBeScrolledInMainDirection) {\n currentAxis = moveDirection;\n }\n else {\n currentAxis = moveDirection === 'v' ? 'h' : 'v';\n canBeScrolledInMainDirection = locationCouldBeScrolled(moveDirection, target);\n // other axis might be not scrollable\n }\n if (!canBeScrolledInMainDirection) {\n return false;\n }\n if (!activeAxis.current &&\n 'changedTouches' in event &&\n (deltaX || deltaY)) {\n activeAxis.current = currentAxis;\n }\n if (!currentAxis) {\n return true;\n }\n var cancelingAxis = activeAxis.current || currentAxis;\n return handleScroll(cancelingAxis, parent, event, cancelingAxis === 'h' ? deltaX : deltaY, true);\n }, []);\n var shouldPrevent = React.useCallback(function (_event) {\n var event = _event;\n if (!lockStack.length || lockStack[lockStack.length - 1] !== Style) {\n // not the last active\n return;\n }\n var delta = 'deltaY' in event ? getDeltaXY(event) : getTouchXY(event);\n var sourceEvent = shouldPreventQueue.current.filter(function (e) {\n return e.name === event.type &&\n e.target === event.target &&\n deltaCompare(e.delta, delta);\n })[0];\n // self event, and should be canceled\n if (sourceEvent && sourceEvent.should) {\n event.preventDefault();\n return;\n }\n // outside or shard event\n if (!sourceEvent) {\n var shardNodes = (lastProps.current.shards || [])\n .map(extractRef)\n .filter(Boolean)\n .filter(function (node) { return node.contains(event.target); });\n var shouldStop = shardNodes.length > 0\n ? shouldCancelEvent(event, shardNodes[0])\n : !lastProps.current.noIsolation;\n if (shouldStop) {\n event.preventDefault();\n }\n }\n }, []);\n var shouldCancel = React.useCallback(function (name, delta, target, should) {\n var event = { name: name, delta: delta, target: target, should: should };\n shouldPreventQueue.current.push(event);\n setTimeout(function () {\n shouldPreventQueue.current = shouldPreventQueue.current.filter(function (e) { return e !== event; });\n }, 1);\n }, []);\n var scrollTouchStart = React.useCallback(function (event) {\n touchStartRef.current = getTouchXY(event);\n activeAxis.current = undefined;\n }, []);\n var scrollWheel = React.useCallback(function (event) {\n shouldCancel(event.type, getDeltaXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n var scrollTouchMove = React.useCallback(function (event) {\n shouldCancel(event.type, getTouchXY(event), event.target, shouldCancelEvent(event, props.lockRef.current));\n }, []);\n React.useEffect(function () {\n lockStack.push(Style);\n props.setCallbacks({\n onScrollCapture: scrollWheel,\n onWheelCapture: scrollWheel,\n onTouchMoveCapture: scrollTouchMove\n });\n document.addEventListener('wheel', shouldPrevent, nonPassive);\n document.addEventListener('touchmove', shouldPrevent, nonPassive);\n document.addEventListener('touchstart', scrollTouchStart, nonPassive);\n return function () {\n lockStack = lockStack.filter(function (inst) { return inst !== Style; });\n document.removeEventListener('wheel', shouldPrevent, nonPassive);\n document.removeEventListener('touchmove', shouldPrevent, nonPassive);\n document.removeEventListener('touchstart', scrollTouchStart, nonPassive);\n };\n }, []);\n var removeScrollBar = props.removeScrollBar, inert = props.inert;\n return (React.createElement(React.Fragment, null,\n inert ? React.createElement(Style, { styles: generateStyle(id) }) : null,\n removeScrollBar ? React.createElement(RemoveScrollBar, { gapMode: \"margin\" }) : null));\n}\n","import { exportSidecar } from 'use-sidecar';\nimport { RemoveScrollSideCar } from './SideEffect';\nimport { effectCar } from './medium';\nexport default exportSidecar(effectCar, RemoveScrollSideCar);\n","import * as tslib_1 from \"tslib\";\nimport * as React from 'react';\nimport { RemoveScroll } from './UI';\nimport SideCar from './sidecar';\nvar ReactRemoveScroll = React.forwardRef(function (props, ref) { return (React.createElement(RemoveScroll, tslib_1.__assign({}, props, { ref: ref, sideCar: SideCar }))); });\nReactRemoveScroll.classNames = RemoveScroll.classNames;\nexport default ReactRemoveScroll;\n","var getDefaultParent = function (originalTarget) {\n if (typeof document === 'undefined') {\n return null;\n }\n var sampleTarget = Array.isArray(originalTarget) ? originalTarget[0] : originalTarget;\n return sampleTarget.ownerDocument.body;\n};\nvar counterMap = new WeakMap();\nvar uncontrolledNodes = new WeakMap();\nvar markerMap = {};\nvar lockCount = 0;\nexport var hideOthers = function (originalTarget, parentNode, markerName) {\n if (parentNode === void 0) { parentNode = getDefaultParent(originalTarget); }\n if (markerName === void 0) { markerName = \"data-aria-hidden\"; }\n var targets = Array.isArray(originalTarget) ? originalTarget : [originalTarget];\n if (!markerMap[markerName]) {\n markerMap[markerName] = new WeakMap();\n }\n var markerCounter = markerMap[markerName];\n var hiddenNodes = [];\n var elementsToKeep = new Set();\n var keep = (function (el) {\n if (!el || elementsToKeep.has(el)) {\n return;\n }\n elementsToKeep.add(el);\n keep(el.parentNode);\n });\n targets.forEach(keep);\n var deep = function (parent) {\n if (!parent || targets.indexOf(parent) >= 0) {\n return;\n }\n Array.prototype.forEach.call(parent.children, function (node) {\n if (elementsToKeep.has(node)) {\n deep(node);\n }\n else {\n var attr = node.getAttribute('aria-hidden');\n var alreadyHidden = attr !== null && attr !== 'false';\n var counterValue = (counterMap.get(node) || 0) + 1;\n var markerValue = (markerCounter.get(node) || 0) + 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n hiddenNodes.push(node);\n if (counterValue === 1 && alreadyHidden) {\n uncontrolledNodes.set(node, true);\n }\n if (markerValue === 1) {\n node.setAttribute(markerName, 'true');\n }\n if (!alreadyHidden) {\n node.setAttribute('aria-hidden', 'true');\n }\n }\n });\n };\n deep(parentNode);\n elementsToKeep.clear();\n lockCount++;\n return function () {\n hiddenNodes.forEach(function (node) {\n var counterValue = counterMap.get(node) - 1;\n var markerValue = markerCounter.get(node) - 1;\n counterMap.set(node, counterValue);\n markerCounter.set(node, markerValue);\n if (!counterValue) {\n if (!uncontrolledNodes.has(node)) {\n node.removeAttribute('aria-hidden');\n }\n uncontrolledNodes.delete(node);\n }\n if (!markerValue) {\n node.removeAttribute(markerName);\n }\n });\n lockCount--;\n if (!lockCount) {\n counterMap = new WeakMap();\n counterMap = new WeakMap();\n uncontrolledNodes = new WeakMap();\n markerMap = {};\n }\n };\n};\n","import { CloseButton } from '@chakra-ui/close-button';\nimport { FocusLock } from '@chakra-ui/focus-lock';\nimport { Portal } from '@chakra-ui/portal';\nimport { chakra, useMultiStyleConfig, StylesProvider, forwardRef, useStyles, useTheme } from '@chakra-ui/system';\nimport { slideFadeConfig, scaleFadeConfig, fadeConfig, Slide } from '@chakra-ui/transition';\nimport { callAllHandlers, __DEV__, cx } from '@chakra-ui/utils';\nimport { mergeRefs, createContext } from '@chakra-ui/react-utils';\nimport { motion, AnimatePresence, usePresence } from 'framer-motion';\nimport * as React from 'react';\nimport { useEffect, useRef, useCallback, useState } from 'react';\nimport { RemoveScroll } from 'react-remove-scroll';\nimport { useIds } from '@chakra-ui/hooks';\nimport { hideOthers } from 'aria-hidden';\n\nfunction _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nvar _excluded$3 = [\"preset\"];\nvar transitions = {\n slideInBottom: _extends({}, slideFadeConfig, {\n custom: {\n offsetY: 16,\n reverse: true\n }\n }),\n slideInRight: _extends({}, slideFadeConfig, {\n custom: {\n offsetX: 16,\n reverse: true\n }\n }),\n scale: _extends({}, scaleFadeConfig, {\n custom: {\n initialScale: 0.95,\n reverse: true\n }\n }),\n none: {}\n};\nvar Motion = chakra(motion.section);\nvar ModalTransition = /*#__PURE__*/React.forwardRef(function (props, ref) {\n var preset = props.preset,\n rest = _objectWithoutPropertiesLoose(props, _excluded$3);\n\n var motionProps = transitions[preset];\n return /*#__PURE__*/React.createElement(Motion, _extends({\n ref: ref\n }, motionProps, rest));\n});\n\n/**\n * Proper state management for nested modals.\n * Simplified, but inspired by material-ui's ModalManager class.\n */\n\nvar ModalManager = /*#__PURE__*/function () {\n function ModalManager() {\n this.modals = void 0;\n this.modals = [];\n }\n\n var _proto = ModalManager.prototype;\n\n _proto.add = function add(modal) {\n this.modals.push(modal);\n };\n\n _proto.remove = function remove(modal) {\n this.modals = this.modals.filter(function (_modal) {\n return _modal !== modal;\n });\n };\n\n _proto.isTopModal = function isTopModal(modal) {\n var topmostModal = this.modals[this.modals.length - 1];\n return topmostModal === modal;\n };\n\n return ModalManager;\n}();\n\nvar manager = new ModalManager();\nfunction useModalManager(ref, isOpen) {\n useEffect(function () {\n if (isOpen) {\n manager.add(ref);\n }\n\n return function () {\n manager.remove(ref);\n };\n }, [isOpen, ref]);\n}\n\n/**\n * Modal hook that manages all the logic for the modal dialog widget\n * and returns prop getters, state and actions.\n *\n * @param props\n */\nfunction useModal(props) {\n var isOpen = props.isOpen,\n onClose = props.onClose,\n id = props.id,\n _props$closeOnOverlay = props.closeOnOverlayClick,\n closeOnOverlayClick = _props$closeOnOverlay === void 0 ? true : _props$closeOnOverlay,\n _props$closeOnEsc = props.closeOnEsc,\n closeOnEsc = _props$closeOnEsc === void 0 ? true : _props$closeOnEsc,\n _props$useInert = props.useInert,\n useInert = _props$useInert === void 0 ? true : _props$useInert,\n onOverlayClickProp = props.onOverlayClick,\n onEsc = props.onEsc;\n var dialogRef = useRef(null);\n var overlayRef = useRef(null);\n\n var _useIds = useIds(id, \"chakra-modal\", \"chakra-modal--header\", \"chakra-modal--body\"),\n dialogId = _useIds[0],\n headerId = _useIds[1],\n bodyId = _useIds[2];\n /**\n * Hook used to polyfill `aria-modal` for older browsers.\n * It uses `aria-hidden` to all other nodes.\n *\n * @see https://developer.paciellogroup.com/blog/2018/06/the-current-state-of-modal-dialog-accessibility/\n */\n\n\n useAriaHidden(dialogRef, isOpen && useInert);\n /**\n * Hook used to manage multiple or nested modals\n */\n\n useModalManager(dialogRef, isOpen);\n var mouseDownTarget = useRef(null);\n var onMouseDown = useCallback(function (event) {\n mouseDownTarget.current = event.target;\n }, []);\n var onKeyDown = useCallback(function (event) {\n if (event.key === \"Escape\") {\n event.stopPropagation();\n\n if (closeOnEsc) {\n onClose == null ? void 0 : onClose();\n }\n\n onEsc == null ? void 0 : onEsc();\n }\n }, [closeOnEsc, onClose, onEsc]);\n\n var _useState = useState(false),\n headerMounted = _useState[0],\n setHeaderMounted = _useState[1];\n\n var _useState2 = useState(false),\n bodyMounted = _useState2[0],\n setBodyMounted = _useState2[1];\n\n var getDialogProps = useCallback(function (props, ref) {\n if (props === void 0) {\n props = {};\n }\n\n if (ref === void 0) {\n ref = null;\n }\n\n return _extends({\n role: \"dialog\"\n }, props, {\n ref: mergeRefs(ref, dialogRef),\n id: dialogId,\n tabIndex: -1,\n \"aria-modal\": true,\n \"aria-labelledby\": headerMounted ? headerId : undefined,\n \"aria-describedby\": bodyMounted ? bodyId : undefined,\n onClick: callAllHandlers(props.onClick, function (event) {\n return event.stopPropagation();\n })\n });\n }, [bodyId, bodyMounted, dialogId, headerId, headerMounted]);\n var onOverlayClick = useCallback(function (event) {\n event.stopPropagation();\n /**\n * Make sure the event starts and ends on the same DOM element.\n *\n * This is used to prevent the modal from closing when you\n * start dragging from the content, and release drag outside the content.\n *\n * We prevent this because it is technically not a considered \"click outside\"\n */\n\n if (mouseDownTarget.current !== event.target) return;\n /**\n * When you click on the overlay, we want to remove only the topmost modal\n */\n\n if (!manager.isTopModal(dialogRef)) return;\n\n if (closeOnOverlayClick) {\n onClose == null ? void 0 : onClose();\n }\n\n onOverlayClickProp == null ? void 0 : onOverlayClickProp();\n }, [onClose, closeOnOverlayClick, onOverlayClickProp]);\n var getDialogContainerProps = useCallback(function (props, ref) {\n if (props === void 0) {\n props = {};\n }\n\n if (ref === void 0) {\n ref = null;\n }\n\n return _extends({}, props, {\n ref: mergeRefs(ref, overlayRef),\n onClick: callAllHandlers(props.onClick, onOverlayClick),\n onKeyDown: callAllHandlers(props.onKeyDown, onKeyDown),\n onMouseDown: callAllHandlers(props.onMouseDown, onMouseDown)\n });\n }, [onKeyDown, onMouseDown, onOverlayClick]);\n return {\n isOpen: isOpen,\n onClose: onClose,\n headerId: headerId,\n bodyId: bodyId,\n setBodyMounted: setBodyMounted,\n setHeaderMounted: setHeaderMounted,\n dialogRef: dialogRef,\n overlayRef: overlayRef,\n getDialogProps: getDialogProps,\n getDialogContainerProps: getDialogContainerProps\n };\n}\n\n/**\n * Modal hook to polyfill `aria-modal`.\n *\n * It applies `aria-hidden` to elements behind the modal\n * to indicate that they're `inert`.\n *\n * @param ref React ref of the node\n * @param shouldHide whether `aria-hidden` should be applied\n */\nfunction useAriaHidden(ref, shouldHide) {\n // save current ref in a local var to trigger the effect on identity change\n var currentElement = ref.current;\n useEffect(function () {\n // keep using `ref.current` inside the effect\n // it may have changed during render and the execution of the effect\n if (!ref.current || !shouldHide) return undefined;\n return hideOthers(ref.current);\n }, [shouldHide, ref, currentElement]);\n}\n\nvar _excluded$2 = [\"className\", \"children\", \"containerProps\"],\n _excluded2$1 = [\"className\", \"transition\"],\n _excluded3 = [\"className\"],\n _excluded4 = [\"className\"],\n _excluded5 = [\"className\"],\n _excluded6 = [\"onClick\", \"className\"];\n\nvar _createContext$1 = createContext({\n strict: true,\n name: \"ModalContext\",\n errorMessage: \"useModalContext: `context` is undefined. Seems you forgot to wrap modal components in `<Modal />`\"\n}),\n ModalContextProvider = _createContext$1[0],\n useModalContext = _createContext$1[1];\n/**\n * Modal provides context, theming, and accessibility properties\n * to all other modal components.\n *\n * It doesn't render any DOM node.\n */\n\nvar Modal = function Modal(props) {\n var portalProps = props.portalProps,\n children = props.children,\n autoFocus = props.autoFocus,\n trapFocus = props.trapFocus,\n initialFocusRef = props.initialFocusRef,\n finalFocusRef = props.finalFocusRef,\n returnFocusOnClose = props.returnFocusOnClose,\n blockScrollOnMount = props.blockScrollOnMount,\n allowPinchZoom = props.allowPinchZoom,\n preserveScrollBarGap = props.preserveScrollBarGap,\n motionPreset = props.motionPreset,\n lockFocusAcrossFrames = props.lockFocusAcrossFrames,\n onCloseComplete = props.onCloseComplete;\n var styles = useMultiStyleConfig(\"Modal\", props);\n var modal = useModal(props);\n\n var context = _extends({}, modal, {\n autoFocus: autoFocus,\n trapFocus: trapFocus,\n initialFocusRef: initialFocusRef,\n finalFocusRef: finalFocusRef,\n returnFocusOnClose: returnFocusOnClose,\n blockScrollOnMount: blockScrollOnMount,\n allowPinchZoom: allowPinchZoom,\n preserveScrollBarGap: preserveScrollBarGap,\n motionPreset: motionPreset,\n lockFocusAcrossFrames: lockFocusAcrossFrames\n });\n\n return /*#__PURE__*/React.createElement(ModalContextProvider, {\n value: context\n }, /*#__PURE__*/React.createElement(StylesProvider, {\n value: styles\n }, /*#__PURE__*/React.createElement(AnimatePresence, {\n onExitComplete: onCloseComplete\n }, context.isOpen && /*#__PURE__*/React.createElement(Portal, portalProps, children))));\n};\nModal.defaultProps = {\n lockFocusAcrossFrames: true,\n returnFocusOnClose: true,\n scrollBehavior: \"outside\",\n trapFocus: true,\n autoFocus: true,\n blockScrollOnMount: true,\n allowPinchZoom: false,\n motionPreset: \"scale\"\n};\n\nif (__DEV__) {\n Modal.displayName = \"Modal\";\n}\n\nvar MotionDiv = chakra(motion.div);\n/**\n * ModalContent is used to group modal's content. It has all the\n * necessary `aria-*` properties to indicate that it is a modal\n */\n\nvar ModalContent = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n children = props.children,\n rootProps = props.containerProps,\n rest = _objectWithoutPropertiesLoose(props, _excluded$2);\n\n var _useModalContext = useModalContext(),\n getDialogProps = _useModalContext.getDialogProps,\n getDialogContainerProps = _useModalContext.getDialogContainerProps;\n\n var dialogProps = getDialogProps(rest, ref);\n var containerProps = getDialogContainerProps(rootProps);\n\n var _className = cx(\"chakra-modal__content\", className);\n\n var styles = useStyles();\n\n var dialogStyles = _extends({\n display: \"flex\",\n flexDirection: \"column\",\n position: \"relative\",\n width: \"100%\",\n outline: 0\n }, styles.dialog);\n\n var dialogContainerStyles = _extends({\n display: \"flex\",\n width: \"100vw\",\n height: \"100vh\",\n \"@supports(height: -webkit-fill-available)\": {\n height: \"-webkit-fill-available\"\n },\n position: \"fixed\",\n left: 0,\n top: 0\n }, styles.dialogContainer);\n\n var _useModalContext2 = useModalContext(),\n motionPreset = _useModalContext2.motionPreset;\n\n return /*#__PURE__*/React.createElement(ModalFocusScope, null, /*#__PURE__*/React.createElement(chakra.div, _extends({}, containerProps, {\n className: \"chakra-modal__content-container\" // tabindex=\"-1\" means that the element is not reachable via sequential keyboard navigation, @see #4686\n ,\n tabIndex: -1,\n __css: dialogContainerStyles\n }), /*#__PURE__*/React.createElement(ModalTransition, _extends({\n preset: motionPreset,\n className: _className\n }, dialogProps, {\n __css: dialogStyles\n }), children)));\n});\n\nif (__DEV__) {\n ModalContent.displayName = \"ModalContent\";\n}\n\nfunction ModalFocusScope(props) {\n var _useModalContext3 = useModalContext(),\n autoFocus = _useModalContext3.autoFocus,\n trapFocus = _useModalContext3.trapFocus,\n dialogRef = _useModalContext3.dialogRef,\n initialFocusRef = _useModalContext3.initialFocusRef,\n blockScrollOnMount = _useModalContext3.blockScrollOnMount,\n allowPinchZoom = _useModalContext3.allowPinchZoom,\n finalFocusRef = _useModalContext3.finalFocusRef,\n returnFocusOnClose = _useModalContext3.returnFocusOnClose,\n preserveScrollBarGap = _useModalContext3.preserveScrollBarGap,\n lockFocusAcrossFrames = _useModalContext3.lockFocusAcrossFrames;\n\n var _usePresence = usePresence(),\n isPresent = _usePresence[0],\n safeToRemove = _usePresence[1];\n\n React.useEffect(function () {\n if (!isPresent && safeToRemove) {\n setTimeout(safeToRemove);\n }\n }, [isPresent, safeToRemove]);\n return /*#__PURE__*/React.createElement(FocusLock, {\n autoFocus: autoFocus,\n isDisabled: !trapFocus,\n initialFocusRef: initialFocusRef,\n finalFocusRef: finalFocusRef,\n restoreFocus: returnFocusOnClose,\n contentRef: dialogRef,\n lockFocusAcrossFrames: lockFocusAcrossFrames\n }, /*#__PURE__*/React.createElement(RemoveScroll, {\n removeScrollBar: !preserveScrollBarGap,\n allowPinchZoom: allowPinchZoom,\n enabled: blockScrollOnMount,\n forwardProps: true\n }, props.children));\n}\n\n/**\n * ModalOverlay renders a backdrop behind the modal. It is\n * also used as a wrapper for the modal content for better positioning.\n *\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalOverlay = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className;\n props.transition;\n var rest = _objectWithoutPropertiesLoose(props, _excluded2$1);\n\n var _className = cx(\"chakra-modal__overlay\", className);\n\n var styles = useStyles();\n\n var overlayStyle = _extends({\n pos: \"fixed\",\n left: \"0\",\n top: \"0\",\n w: \"100vw\",\n h: \"100vh\"\n }, styles.overlay);\n\n var _useModalContext4 = useModalContext(),\n motionPreset = _useModalContext4.motionPreset;\n\n var motionProps = motionPreset === \"none\" ? {} : fadeConfig;\n return /*#__PURE__*/React.createElement(MotionDiv, _extends({}, motionProps, {\n __css: overlayStyle,\n ref: ref,\n className: _className\n }, rest));\n});\n\nif (__DEV__) {\n ModalOverlay.displayName = \"ModalOverlay\";\n}\n\n/**\n * ModalHeader\n *\n * React component that houses the title of the modal.\n *\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalHeader = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded3);\n\n var _useModalContext5 = useModalContext(),\n headerId = _useModalContext5.headerId,\n setHeaderMounted = _useModalContext5.setHeaderMounted;\n /**\n * Notify us if this component was rendered or used,\n * so we can append `aria-labelledby` automatically\n */\n\n\n React.useEffect(function () {\n setHeaderMounted(true);\n return function () {\n return setHeaderMounted(false);\n };\n }, [setHeaderMounted]);\n\n var _className = cx(\"chakra-modal__header\", className);\n\n var styles = useStyles();\n\n var headerStyles = _extends({\n flex: 0\n }, styles.header);\n\n return /*#__PURE__*/React.createElement(chakra.header, _extends({\n ref: ref,\n className: _className,\n id: headerId\n }, rest, {\n __css: headerStyles\n }));\n});\n\nif (__DEV__) {\n ModalHeader.displayName = \"ModalHeader\";\n}\n\n/**\n * ModalBody\n *\n * React component that houses the main content of the modal.\n *\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalBody = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded4);\n\n var _useModalContext6 = useModalContext(),\n bodyId = _useModalContext6.bodyId,\n setBodyMounted = _useModalContext6.setBodyMounted;\n /**\n * Notify us if this component was rendered or used,\n * so we can append `aria-describedby` automatically\n */\n\n\n React.useEffect(function () {\n setBodyMounted(true);\n return function () {\n return setBodyMounted(false);\n };\n }, [setBodyMounted]);\n\n var _className = cx(\"chakra-modal__body\", className);\n\n var styles = useStyles();\n return /*#__PURE__*/React.createElement(chakra.div, _extends({\n ref: ref,\n className: _className,\n id: bodyId\n }, rest, {\n __css: styles.body\n }));\n});\n\nif (__DEV__) {\n ModalBody.displayName = \"ModalBody\";\n}\n\n/**\n * ModalFooter houses the action buttons of the modal.\n * @see Docs https://chakra-ui.com/modal\n */\nvar ModalFooter = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded5);\n\n var _className = cx(\"chakra-modal__footer\", className);\n\n var styles = useStyles();\n\n var footerStyles = _extends({\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"flex-end\"\n }, styles.footer);\n\n return /*#__PURE__*/React.createElement(chakra.footer, _extends({\n ref: ref\n }, rest, {\n __css: footerStyles,\n className: _className\n }));\n});\n\nif (__DEV__) {\n ModalFooter.displayName = \"ModalFooter\";\n}\n/**\n * ModalCloseButton is used closes the modal.\n *\n * You don't need to pass the `onClick` to it, it reads the\n * `onClose` action from the modal context.\n */\n\n\nvar ModalCloseButton = /*#__PURE__*/forwardRef(function (props, ref) {\n var onClick = props.onClick,\n className = props.className,\n rest = _objectWithoutPropertiesLoose(props, _excluded6);\n\n var _useModalContext7 = useModalContext(),\n onClose = _useModalContext7.onClose;\n\n var _className = cx(\"chakra-modal__close-btn\", className);\n\n var styles = useStyles();\n return /*#__PURE__*/React.createElement(CloseButton, _extends({\n ref: ref,\n __css: styles.closeButton,\n className: _className,\n onClick: callAllHandlers(onClick, function (event) {\n event.stopPropagation();\n onClose();\n })\n }, rest));\n});\n\nif (__DEV__) {\n ModalCloseButton.displayName = \"ModalCloseButton\";\n}\n\nvar _excluded$1 = [\"leastDestructiveRef\"];\nfunction AlertDialog(props) {\n var leastDestructiveRef = props.leastDestructiveRef,\n rest = _objectWithoutPropertiesLoose(props, _excluded$1);\n\n return /*#__PURE__*/React.createElement(Modal, _extends({}, rest, {\n initialFocusRef: leastDestructiveRef\n }));\n}\nvar AlertDialogContent = /*#__PURE__*/forwardRef(function (props, ref) {\n return /*#__PURE__*/React.createElement(ModalContent, _extends({\n ref: ref,\n role: \"alertdialog\"\n }, props));\n});\n\nvar _excluded = [\"isOpen\", \"onClose\", \"placement\", \"children\"],\n _excluded2 = [\"className\", \"children\"];\n\nvar _createContext = createContext(),\n DrawerContextProvider = _createContext[0],\n useDrawerContext = _createContext[1];\n\nvar placementMap = {\n start: {\n ltr: \"left\",\n rtl: \"right\"\n },\n end: {\n ltr: \"right\",\n rtl: \"left\"\n }\n};\n\nfunction getDrawerPlacement(placement, dir) {\n var _placementMap$placeme, _placementMap$placeme2;\n\n if (!placement) return;\n return (_placementMap$placeme = (_placementMap$placeme2 = placementMap[placement]) == null ? void 0 : _placementMap$placeme2[dir]) != null ? _placementMap$placeme : placement;\n}\n\nfunction Drawer(props) {\n var _theme$components;\n\n var isOpen = props.isOpen,\n onClose = props.onClose,\n _props$placement = props.placement,\n placementProp = _props$placement === void 0 ? \"right\" : _props$placement,\n children = props.children,\n rest = _objectWithoutPropertiesLoose(props, _excluded);\n\n var theme = useTheme();\n var drawerStyleConfig = (_theme$components = theme.components) == null ? void 0 : _theme$components.Drawer;\n var placement = getDrawerPlacement(placementProp, theme.direction);\n return /*#__PURE__*/React.createElement(DrawerContextProvider, {\n value: {\n placement: placement\n }\n }, /*#__PURE__*/React.createElement(Modal, _extends({\n isOpen: isOpen,\n onClose: onClose,\n styleConfig: drawerStyleConfig\n }, rest), children));\n}\nvar StyledSlide = chakra(Slide);\n\n/**\n * ModalContent is used to group modal's content. It has all the\n * necessary `aria-*` properties to indicate that it is a modal\n */\nvar DrawerContent = /*#__PURE__*/forwardRef(function (props, ref) {\n var className = props.className,\n children = props.children,\n rest = _objectWithoutPropertiesLoose(props, _excluded2);\n\n var _useModalContext = useModalContext(),\n getDialogProps = _useModalContext.getDialogProps,\n getDialogContainerProps = _useModalContext.getDialogContainerProps,\n isOpen = _useModalContext.isOpen;\n\n var dialogProps = getDialogProps(rest, ref);\n var containerProps = getDialogContainerProps();\n\n var _className = cx(\"chakra-modal__content\", className);\n\n var styles = useStyles();\n\n var dialogStyles = _extends({\n display: \"flex\",\n flexDirection: \"column\",\n position: \"relative\",\n width: \"100%\",\n outline: 0\n }, styles.dialog);\n\n var dialogContainerStyles = _extends({\n display: \"flex\",\n width: \"100vw\",\n height: \"100vh\",\n position: \"fixed\",\n left: 0,\n top: 0\n }, styles.dialogContainer);\n\n var _useDrawerContext = useDrawerContext(),\n placement = _useDrawerContext.placement;\n\n return /*#__PURE__*/React.createElement(chakra.div, _extends({}, containerProps, {\n className: \"chakra-modal__content-container\",\n __css: dialogContainerStyles\n }), /*#__PURE__*/React.createElement(ModalFocusScope, null, /*#__PURE__*/React.createElement(StyledSlide, _extends({\n direction: placement,\n \"in\": isOpen,\n className: _className\n }, dialogProps, {\n __css: dialogStyles\n }), children)));\n});\n\nif (__DEV__) {\n DrawerContent.displayName = \"DrawerContent\";\n}\n\nexport { AlertDialog, ModalBody as AlertDialogBody, ModalCloseButton as AlertDialogCloseButton, AlertDialogContent, ModalFooter as AlertDialogFooter, ModalHeader as AlertDialogHeader, ModalOverlay as AlertDialogOverlay, Drawer, ModalBody as DrawerBody, ModalCloseButton as DrawerCloseButton, DrawerContent, ModalFooter as DrawerFooter, ModalHeader as DrawerHeader, ModalOverlay as DrawerOverlay, Modal, ModalBody, ModalCloseButton, ModalContent, ModalContextProvider, ModalFocusScope, ModalFooter, ModalHeader, ModalOverlay, useAriaHidden, useModal, useModalContext };\n"],"names":["_objectWithoutPropertiesLoose","source","excluded","key","i","target","sourceKeys","Object","keys","length","indexOf","_extends","assign","arguments","prototype","hasOwnProperty","call","apply","this","TransitionEasings","ease","easeIn","easeOut","easeInOut","TransitionVariants","position","left","top","bottom","width","enter","x","y","exit","right","maxWidth","slideTransition","options","_options$direction","direction","TransitionDefaults","duration","withDelay","transition","delay","isNumber","_excluded$4","defaultTransitions","height","opacity","variants$4","_ref","_transition$exit","value","animateOpacity","startingHeight","transitionEnd","parseInt","toString","_ref2","_transition$enter","endingHeight","Collapse","React","forwardRef","props","ref","isOpen","unmountOnExit","_props$animateOpacity","_props$startingHeight","_props$endingHeight","style","className","rest","_React$useState","useState","mounted","setMounted","useEffect","timeout","setTimeout","clearTimeout","warn","condition","Boolean","message","hasStartingHeight","parseFloat","custom","mergeWith","undefined","display","show","animate","createElement","AnimatePresence","initial","motion","div","cx","overflow","variants","__DEV__","displayName","_excluded$3","variants$3","_temp","_temp2","fadeConfig","Fade","_excluded$2","variants$2","reverse","initialScale","scale","scaleFadeConfig","ScaleFade","_props$reverse","_props$initialScale","_excluded$1","defaultTransition","type","damping","stiffness","variants$1","Slide","_props$direction","transitionStyles","computedStyle","_excluded","offsetX","offsetY","_ref3","_transition$exit2","offset","slideFadeConfig","SlideFade","_props$offsetX","_props$offsetY","CloseIcon","Icon","focusable","fill","d","CloseButton","styles","useStyleConfig","_omitThemingProps","omitThemingProps","children","isDisabled","__css","chakra","button","disabled","outline","alignItems","justifyContent","flexShrink","useMergeRefs","refs","defaultValue","initialValue","callback","newValue","forEach","current","assignRef","facade","last","hiddenGuard","padding","ItoI","a","innerCreateMedium","defaults","middleware","buffer","assigned","read","Error","useMedium","data","item","push","filter","assignSyncMedium","cb","cbs","assignMedium","pendingQueue","executeQueue","cycle","Promise","resolve","then","createMedium","createSidecarMedium","medium","__assign","async","ssr","process","env","NODE_ENV","PropTypes","node","SideCar","_a","sideCar","__rest","Target","isSideCarExport","mediumFocus","currentTarget","mediumBlur","mediumEffect","mediumSidecar","emptyArray","FocusLock","parentRef","_extends2","realObserved","setObserved","observed","useRef","isActive","originalFocusedElement","noFocusGuards","persistentFocus","crossFrame","autoFocus","allowTextSelection","group","whiteList","_props$shards","shards","_props$as","as","Container","_props$lockProps","lockProps","containerProps","shouldReturnFocus","returnFocus","onActivationCallback","onActivation","onDeactivationCallback","onDeactivation","id","useCallback","document","activeElement","allowDefer","focus","focusOptions","onFocus","event","onBlur","setObserveNode","newObserved","console","error","hasLeadingGuards","hasTailingGuards","mergedRef","Fragment","tabIndex","propTypes","exports","bool","oneOfType","object","string","func","arrayOf","any","isRequired","defaultProps","FocusLockUI","toArray","ret","Array","asArray","isArray","getTopParent","parentNode","getAllAffectedNodes","reduce","acc","currentNode","getAttribute","nodes","contained","Set","l","j","compareDocumentPosition","Node","DOCUMENT_POSITION_CONTAINED_BY","add","DOCUMENT_POSITION_CONTAINS","_","index","has","filterNested","querySelectorAll","isVisibleUncached","checkParent","nodeType","DOCUMENT_NODE","ELEMENT_NODE","window","getComputedStyle","getPropertyValue","isElementHidden","DOCUMENT_FRAGMENT_NODE","host","isVisibleCached","visibilityCache","cached","get","result","bind","set","isGuard","dataset","focusGuard","isNotAGuard","isDefined","tabSort","b","tabDiff","indexDiff","orderByTabIndex","filterNegative","keepGuards","map","sort","queryTabbables","join","queryGuardTabbables","getFocusables","parents","withGuards","parent","concat","filterFocusable","tagName","notHiddenInput","getTabbableNodes","topNodes","getAllTabbableNodes","parentAutofocusables","topNode","parentFocus","getParents","getCommonParent","nodeA","nodeB","parentsA","parentsB","currentParent","getTopCommonParent","baseActiveElement","leftEntry","rightEntries","activeElements","leftEntries","topCommon","entry","subEntry","common","contains","focusInsideIframe","some","focusInside","isRadio","correctNode","name","el","checked","findSelectedRadio","pickFirstFocus","pickFocusable","newFocus","innerNodes","outerNodes","lastNode","cnt","firstFocus","lastFocus","isOnGuard","resultSet","activeIndex","lastIndex","lastNodeInside","firstNodeIndex","lastNodeIndex","correctedNodes","correctedIndexDiff","returnFirstNode","returnLastNode","Math","abs","getFocusMerge","entries","commonParent","Map","anyFocusable","innerElements","srcNodes","dstNodes","remap","autoFocusables","orderedInnerElements","entity","newId","autoFocusable","allParentAutofocusables","autofocus","guardCount","lockDisabled","moveFocusInside","contentWindow","deferAction","action","setImmediate","isFreeFocus","body","lastActiveTrap","lastActiveFocus","lastPortaledElement","focusWasOutsideWindow","defaultWhitelist","autoGuard","startIndex","end","step","allNodes","lastGuard","guard","focusAutoGuard","lockItem","extractRef","activateTrap","element","_lastActiveTrap","workingNode","portaledElement","workingArea","focusWhitelisted","blur","newActiveElement","focusedIndex","removeAttribute","onTrap","stopPropagation","preventDefault","onWindowBlur","observerNode","FocusTrap","reducePropsToState","handleStateChangeOnClient","WrappedComponent","state","mountedInstances","emitChange","instance","obj","SideEffect","_PureComponent","_inheritsLoose","peek","_proto","componentDidMount","componentDidUpdate","componentWillUnmount","splice","render","PureComponent","getDisplayName","defineProperty","enumerable","configurable","writable","withSideEffect","propsList","_ref5","traps","trap","slice","addEventListener","lastTrap","sameTrap","_ref6","removeEventListener","FocusLockCombination","FocusLock$1","initialFocusRef","finalFocusRef","contentRef","restoreFocus","lockFocusAcrossFrames","getAllFocusable","nextTick","_finalFocusRef$curren","ReactFocusLock","t","s","n","p","effectCar","nothing","RemoveScroll","onScrollCapture","onWheelCapture","onTouchMoveCapture","callbacks","setCallbacks","forwardProps","removeScrollBar","enabled","noIsolation","inert","allowPinchZoom","_b","e","getOwnPropertySymbols","propertyIsEnumerable","tslib_1.__rest","containerRef","tslib_1.__assign","lockRef","cloneElement","Children","only","classNames","fullWidth","zeroRight","makeStyleTag","tag","nonce","__webpack_nonce__","getNonce","setAttribute","stylesheetSingleton","counter","stylesheet","css","styleSheet","cssText","appendChild","createTextNode","head","getElementsByTagName","insertStyleTag","remove","removeChild","styleSingleton","sheet","useStyle","zeroGap","gap","parse","getGapWidth","gapMode","offsets","cs","getOffset","documentWidth","documentElement","clientWidth","windowWidth","innerWidth","max","Style","getStyles","allowRelative","important","RemoveScrollBar","setGap","noRelative","noImportant","locationCouldBeScrolled","axis","elementCouldBeScrolled","getScrollVariables","overflowY","overflowX","elementCouldBeVScrolled","elementCouldBeHScrolled","scrollTop","scrollHeight","clientHeight","scrollLeft","scrollWidth","getHScrollVariables","passiveSupported","err","nonPassive","passive","getTouchXY","changedTouches","clientX","clientY","getDeltaXY","deltaX","deltaY","generateStyle","idCounter","lockStack","exported","shouldPreventQueue","touchStartRef","activeAxis","lastProps","classList","allow_1","shouldCancelEvent","touches","currentAxis","touch","touchStart","moveDirection","canBeScrolledInMainDirection","cancelingAxis","endTarget","sourceDelta","noOverscroll","delta","targetInLock","shouldCancelScroll","isDeltaPositive","availableScroll","availableScrollTop","elementScroll","handleScroll","shouldPrevent","_event","sourceEvent","should","shardNodes","shouldCancel","scrollTouchStart","scrollWheel","scrollTouchMove","inst","ReactRemoveScroll","counterMap","WeakMap","uncontrolledNodes","markerMap","lockCount","hideOthers","originalTarget","markerName","ownerDocument","getDefaultParent","targets","markerCounter","hiddenNodes","elementsToKeep","keep","deep","attr","alreadyHidden","counterValue","markerValue","clear","delete","transitions","slideInBottom","slideInRight","none","Motion","section","ModalTransition","preset","motionProps","manager","ModalManager","modals","modal","_modal","isTopModal","useModal","shouldHide","currentElement","onClose","_props$closeOnOverlay","closeOnOverlayClick","_props$closeOnEsc","closeOnEsc","_props$useInert","useInert","onOverlayClickProp","onOverlayClick","onEsc","dialogRef","overlayRef","_useIds","useIds","dialogId","headerId","bodyId","useModalManager","mouseDownTarget","onMouseDown","onKeyDown","_useState","headerMounted","setHeaderMounted","_useState2","bodyMounted","setBodyMounted","getDialogProps","role","mergeRefs","onClick","callAllHandlers","getDialogContainerProps","_excluded2$1","_excluded3","_excluded4","_excluded5","_excluded6","_createContext$1","createContext","strict","errorMessage","ModalContextProvider","useModalContext","Modal","portalProps","trapFocus","returnFocusOnClose","blockScrollOnMount","preserveScrollBarGap","motionPreset","onCloseComplete","useMultiStyleConfig","context","StylesProvider","onExitComplete","Portal","scrollBehavior","MotionDiv","ModalContent","rootProps","_useModalContext","dialogProps","_className","useStyles","dialogStyles","flexDirection","dialog","dialogContainerStyles","dialogContainer","ModalFocusScope","_useModalContext3","_usePresence","usePresence","isPresent","safeToRemove","ModalOverlay","overlayStyle","pos","w","h","overlay","ModalHeader","_useModalContext5","headerStyles","flex","header","ModalBody","_useModalContext6","ModalFooter","footerStyles","footer","ModalCloseButton","closeButton","AlertDialogContent","_excluded2","_createContext","DrawerContextProvider","useDrawerContext","placementMap","start","ltr","rtl","StyledSlide","DrawerContent","placement","in","leastDestructiveRef","_theme$components","_props$placement","placementProp","theme","useTheme","drawerStyleConfig","components","Drawer","dir","_placementMap$placeme","_placementMap$placeme2","getDrawerPlacement","styleConfig"],"mappings":"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"}