{"version":3,"sources":["webpack:///webpack/bootstrap","webpack:///./node_modules/reakit-utils/es/canUseDOM.js","webpack:///./node_modules/reakit/lib/Popover/PopoverDisclosure.js","webpack:///./node_modules/reakit/lib/Form/FormGroup.js","webpack:///./node_modules/reakit-utils/es/createOnKeyDown.js","webpack:///./node_modules/reakit/lib/Disclosure/DisclosureContent.js","webpack:///./node_modules/reakit/lib/getLabelId-eba7e47b.js","webpack:///./node_modules/reakit-utils/es/isPlainObject.js","webpack:///./node_modules/reakit/lib/findEnabledItemById-03112678.js","webpack:///./node_modules/reakit/lib/Form/FormMessage.js","webpack:///./node_modules/@babel/runtime/helpers/objectSpread2.js","webpack:///./node_modules/reakit/lib/Grid/GridState.js","webpack:///./node_modules/body-scroll-lock/lib/bodyScrollLock.esm.js","webpack:///./node_modules/reakit-utils/es/isTextField.js","webpack:///./node_modules/reakit/lib/getCurrentId-eade2850.js","webpack:///./node_modules/@babel/runtime/helpers/toPrimitive.js","webpack:///./node_modules/reakit/lib/Form/FormCheckbox.js","webpack:///./node_modules/reakit-utils/es/useSealedState.js","webpack:///./node_modules/reakit/lib/Menu/MenuItem.js","webpack:///./node_modules/reakit/lib/VisuallyHidden/VisuallyHidden.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxListState.js","webpack:///./node_modules/reakit/lib/Tab/Tab.js","webpack:///./node_modules/reakit/lib/Checkbox/Checkbox.js","webpack:///./node_modules/reakit-utils/es/isButton.js","webpack:///./node_modules/reakit/lib/findVisibleSubmenu-d8b7eeab.js","webpack:///./node_modules/reakit/lib/getPushButtonId-7a4ebc40.js","webpack:///./node_modules/reakit/lib/Button/Button.js","webpack:///./node_modules/reakit/lib/__keys-a6d5cee4.js","webpack:///./node_modules/reakit-utils/es/matches.js","webpack:///./node_modules/serialize-javascript/index.js","webpack:///./node_modules/reakit/lib/Menu/MenuButton.js","webpack:///./node_modules/reakit-utils/es/hasFocus.js","webpack:///./node_modules/reakit-utils/es/ensureFocus.js","webpack:///./node_modules/reakit-utils/es/closest.js","webpack:///./node_modules/reakit-utils/es/useIsomorphicEffect.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxPopover.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxGridCell.js","webpack:///./node_modules/reakit/lib/Form/FormInput.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxGridRow.js","webpack:///./node_modules/reakit/lib/Popover/PopoverArrow.js","webpack:///./node_modules/reakit/lib/Dialog/DialogBackdrop.js","webpack:///./node_modules/reakit/lib/Radio/Radio.js","webpack:///./node_modules/reakit/lib/__keys-f41a441b.js","webpack:///./node_modules/reakit/lib/Toolbar/ToolbarItem.js","webpack:///./node_modules/redux-saga/dist/redux-saga-core-npm-proxy.cjs.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxState.js","webpack:///./node_modules/reakit/lib/Separator/Separator.js","webpack:///./node_modules/randombytes/browser.js","webpack:///./node_modules/reakit/lib/Provider.js","webpack:///./node_modules/@popperjs/core/lib/enums.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getNodeName.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getWindow.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/instanceOf.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/applyStyles.js","webpack:///./node_modules/@popperjs/core/lib/utils/getBasePlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/math.js","webpack:///./node_modules/@popperjs/core/lib/utils/userAgent.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/isLayoutViewport.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getBoundingClientRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getLayoutRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/contains.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getComputedStyle.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/isTableElement.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getDocumentElement.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getParentNode.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getOffsetParent.js","webpack:///./node_modules/@popperjs/core/lib/utils/getMainAxisFromPlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/within.js","webpack:///./node_modules/@popperjs/core/lib/utils/mergePaddingObject.js","webpack:///./node_modules/@popperjs/core/lib/utils/getFreshSideObject.js","webpack:///./node_modules/@popperjs/core/lib/utils/expandToHashMap.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/arrow.js","webpack:///./node_modules/@popperjs/core/lib/utils/getVariation.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/computeStyles.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/eventListeners.js","webpack:///./node_modules/@popperjs/core/lib/utils/getOppositePlacement.js","webpack:///./node_modules/@popperjs/core/lib/utils/getOppositeVariationPlacement.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getWindowScroll.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getWindowScrollBarX.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/isScrollParent.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/listScrollParents.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getScrollParent.js","webpack:///./node_modules/@popperjs/core/lib/utils/rectToClientRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getClippingRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getViewportRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getDocumentRect.js","webpack:///./node_modules/@popperjs/core/lib/utils/computeOffsets.js","webpack:///./node_modules/@popperjs/core/lib/utils/detectOverflow.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/flip.js","webpack:///./node_modules/@popperjs/core/lib/utils/computeAutoPlacement.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/hide.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/offset.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/popperOffsets.js","webpack:///./node_modules/@popperjs/core/lib/modifiers/preventOverflow.js","webpack:///./node_modules/@popperjs/core/lib/utils/getAltAxis.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getCompositeRect.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getNodeScroll.js","webpack:///./node_modules/@popperjs/core/lib/dom-utils/getHTMLElementScroll.js","webpack:///./node_modules/@popperjs/core/lib/utils/orderModifiers.js","webpack:///./node_modules/@popperjs/core/lib/utils/debounce.js","webpack:///./node_modules/@popperjs/core/lib/createPopper.js","webpack:///./node_modules/@popperjs/core/lib/utils/mergeByName.js","webpack:///./node_modules/@popperjs/core/lib/popper.js","webpack:///./node_modules/@popperjs/core/lib/popper-lite.js","webpack:///./node_modules/reakit/lib/Form/FormRadioGroup.js","webpack:///./node_modules/reakit/lib/DialogBackdropContext-b43e21d7.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxGridState.js","webpack:///./node_modules/reakit/lib/Tooltip/TooltipReference.js","webpack:///./node_modules/reakit/lib/Radio/RadioState.js","webpack:///./node_modules/reakit/lib/__keys-724ea0fe.js","webpack:///./node_modules/reakit-utils/es/isInteger.js","webpack:///./node_modules/reakit/lib/Input/Input.js","webpack:///./node_modules/reakit/lib/Menu/MenuArrow.js","webpack:///./node_modules/reakit-utils/es/_rollupPluginBabelHelpers-1f0bf8c2.js","webpack:///./node_modules/reakit/lib/index.js","webpack:///./node_modules/reakit-system/es/useCreateElement.js","webpack:///./node_modules/reakit/lib/Popover/PopoverBackdrop.js","webpack:///./node_modules/reakit/lib/Tooltip/Tooltip.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxItem.js","webpack:///./node_modules/reakit-warning/es/useWarning.js","webpack:///./node_modules/reakit/lib/__keys-f590d919.js","webpack:///./node_modules/reakit/lib/userFocus-0afea51a.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxList.js","webpack:///./node_modules/reakit/lib/Radio/RadioGroup.js","webpack:///./node_modules/reakit/lib/Rover/Rover.js","webpack:///./node_modules/reakit/lib/Form/Form.js","webpack:///./node_modules/reakit/lib/Id/IdState.js","webpack:///./node_modules/reakit/lib/ComboboxPopoverState-98e3f717.js","webpack:///./node_modules/reakit/lib/__keys-eddd3051.js","webpack:///./node_modules/reakit/lib/Portal/Portal.js","webpack:///./node_modules/reakit-utils/es/getActiveElement.js","webpack:///./node_modules/reakit/lib/Form/FormLabel.js","webpack:///./node_modules/reakit-utils/es/fireKeyboardEvent.js","webpack:///./node_modules/reakit/lib/Dialog/Dialog.js","webpack:///./node_modules/reakit/lib/Menu/MenuBarState.js","webpack:///./node_modules/reakit-utils/es/hasFocusWithin.js","webpack:///./node_modules/reakit-utils/es/isObject.js","webpack:///./node_modules/reakit/lib/Tab/TabState.js","webpack:///./node_modules/reakit/lib/Grid/GridRow.js","webpack:///./node_modules/reakit-system/es/_rollupPluginBabelHelpers-0c84a174.js","webpack:///./node_modules/reakit/lib/Tooltip/TooltipArrow.js","webpack:///./node_modules/reakit/lib/Id/Id.js","webpack:///./node_modules/reakit-utils/es/getWindow.js","webpack:///./node_modules/reakit/lib/__keys-087914ef.js","webpack:///./node_modules/react-helmet/lib/Helmet.js","webpack:///./node_modules/reakit/lib/Composite/CompositeItemWidget.js","webpack:///./node_modules/reakit/lib/Id/IdProvider.js","webpack:///./node_modules/reakit-utils/es/removeIndexFromArray.js","webpack:///./node_modules/reakit/lib/Menu/MenuItemRadio.js","webpack:///./node_modules/reakit/lib/getMenuId-ae301adb.js","webpack:///./node_modules/reakit-utils/es/isPortalEvent.js","webpack:///./node_modules/reakit/lib/Tab/TabPanel.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxOption.js","webpack:///./node_modules/reakit-warning/es/warning.js","webpack:///./node_modules/reakit/lib/Popover/Popover.js","webpack:///./node_modules/reakit/lib/Form/FormRadio.js","webpack:///./node_modules/reakit/lib/Group/Group.js","webpack:///./node_modules/reakit-utils/es/fireBlurEvent.js","webpack:///./node_modules/reakit/lib/Grid/Grid.js","webpack:///./node_modules/reakit/lib/Toolbar/ToolbarSeparator.js","webpack:///./node_modules/reakit-utils/es/useUpdateEffect.js","webpack:///./node_modules/reakit-utils/es/isEmpty.js","webpack:///./node_modules/reakit-utils/es/getNextActiveElementOnBlur.js","webpack:///./node_modules/reakit/lib/Form/utils/setAllIn.js","webpack:///./node_modules/reakit-utils/es/useForkRef.js","webpack:///./node_modules/reakit/lib/Menu/MenuItemCheckbox.js","webpack:///./node_modules/reakit/lib/Disclosure/DisclosureState.js","webpack:///./node_modules/reakit/lib/Grid/GridCell.js","webpack:///./node_modules/reakit/lib/Menu/MenuBar.js","webpack:///./node_modules/reakit/lib/__globalState-de564b64.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/reakit/lib/Dialog/DialogDisclosure.js","webpack:///./node_modules/reakit/lib/_rollupPluginBabelHelpers-8f9a8751.js","webpack:///./node_modules/reakit/lib/shouldShowError-880a39c9.js","webpack:///./node_modules/reakit/lib/MenuContext-2d32bb3e.js","webpack:///./node_modules/reakit-utils/es/removeItemFromArray.js","webpack:///./node_modules/reakit/lib/__keys-d2d383f0.js","webpack:///./node_modules/reakit/lib/Menu/Menu.js","webpack:///./node_modules/reakit/lib/__keys-0c8e6398.js","webpack:///./node_modules/reakit-utils/es/useLiveRef.js","webpack:///./node_modules/reakit/lib/Menu/MenuState.js","webpack:///./node_modules/reakit/lib/Form/FormPushButton.js","webpack:///./node_modules/styled-components/dist/styled-components.browser.cjs.js","webpack:///./node_modules/reakit-utils/es/isPromise.js","webpack:///./node_modules/reakit/lib/Tabbable/Tabbable.js","webpack:///./node_modules/reakit/lib/__keys-3b597476.js","webpack:///./node_modules/reakit-utils/es/splitProps.js","webpack:///./node_modules/reakit-utils/es/normalizePropsAreEqual.js","webpack:///./node_modules/reakit-system/es/createComponent.js","webpack:///./node_modules/reakit-utils/es/toArray.js","webpack:///./node_modules/reakit/lib/Checkbox/CheckboxState.js","webpack:///./node_modules/safe-buffer/index.js","webpack:///./node_modules/reakit/lib/Combobox/Combobox.js","webpack:///./node_modules/reakit/lib/Form/FormState.js","webpack:///./node_modules/reakit-utils/es/isSelfTarget.js","webpack:///./node_modules/reakit/lib/Dialog/DialogState.js","webpack:///./node_modules/reakit-utils/es/createEvent.js","webpack:///./node_modules/reakit-utils/es/tabbable.js","webpack:///./node_modules/reakit/lib/Form/utils/setIn.js","webpack:///./node_modules/reakit/lib/Menu/MenuGroup.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/reakit/lib/Composite/CompositeGroup.js","webpack:///./node_modules/reakit/lib/reverse-4756a49e.js","webpack:///./node_modules/reakit/lib/Menu/MenuSeparator.js","webpack:///./node_modules/reakit-utils/es/applyState.js","webpack:///./node_modules/react-outbrain-widget/build/index.js","webpack:///./node_modules/reakit/lib/__keys-4b3c7cdc.js","webpack:///./node_modules/@babel/runtime/helpers/toPropertyKey.js","webpack:///./node_modules/reakit/lib/Composite/CompositeItem.js","webpack:///./node_modules/reakit/lib/Combobox/ComboboxListGridState.js","webpack:///./node_modules/reakit-utils/es/getDocument.js","webpack:///./node_modules/reakit/lib/Form/utils/getIn.js","webpack:///./node_modules/reakit/lib/Composite/Composite.js","webpack:///./node_modules/redux/lib/redux.js","webpack:///./node_modules/reakit-utils/es/fireEvent.js","webpack:///./node_modules/reakit-system/es/useToken.js","webpack:///./node_modules/reakit-system/es/createHook.js","webpack:///./node_modules/reakit-system/es/useOptions.js","webpack:///./node_modules/reakit-system/es/useProps.js","webpack:///./node_modules/reakit/lib/Tooltip/TooltipState.js","webpack:///./node_modules/reakit/lib/Form/FormSubmitButton.js","webpack:///./node_modules/reakit/lib/Toolbar/Toolbar.js","webpack:///./node_modules/reakit-utils/es/dom.js","webpack:///./node_modules/reakit/lib/Tab/TabList.js","webpack:///./node_modules/reakit/lib/Box/Box.js","webpack:///./node_modules/reakit/lib/Disclosure/Disclosure.js","webpack:///./node_modules/reakit/lib/getInputId-cbd3bbcc.js","webpack:///./node_modules/reakit/lib/Form/FormRemoveButton.js","webpack:///./node_modules/reakit/lib/Toolbar/ToolbarState.js","webpack:///./node_modules/reakit/lib/__keys-403ff944.js","webpack:///./node_modules/reakit-utils/es/shallowEqual.js","webpack:///./node_modules/reakit-utils/es/contains.js","webpack:///./node_modules/reakit/lib/setTextFieldValue-b0584ae1.js","webpack:///./node_modules/reakit/lib/Menu/MenuDisclosure.js","webpack:///./node_modules/reakit/lib/Clickable/Clickable.js","webpack:///./node_modules/reakit/lib/Rover/RoverState.js","webpack:///./node_modules/reakit/lib/Popover/PopoverState.js","webpack:///./node_modules/reakit/lib/__keys-a7141fdd.js","webpack:///./node_modules/reakit/lib/Composite/CompositeState.js","webpack:///./node_modules/reakit/lib/Role/Role.js","webpack:///./node_modules/reakit/lib/ComboboxBaseState-cfd43319.js"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","60","exports","module","l","m","c","d","name","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","p","jsonpArray","window","oldJsonpFunction","slice","canUseDOM","_window","Boolean","document","createElement","checkIsBrowser","_rollupPluginBabelHelpers","createComponent","createHook","useForkRef","__keys","Dialog_DialogDisclosure","usePopoverDisclosure","compose","useDialogDisclosure","keys","POPOVER_DISCLOSURE_KEYS","useProps","options","_ref","htmlRef","ref","htmlProps","_objectWithoutPropertiesLoose","_objectSpread2","unstable_referenceRef","PopoverDisclosure","as","memo","useHook","Group_Group","getInputId","getLabelId","shouldShowError","unstable_useFormGroup","useGroup","FORM_GROUP_KEYS","id","baseId","tabIndex","getMessageId","unstable_FormGroup","createOnKeyDown","_temp","keyMap","onKey","stopPropagation","onKeyDown","_ref$shouldKeyDown","shouldKeyDown","_ref$preventDefault","preventDefault","event","_onKeyDown$current","finalKeyMap","shouldPreventDefault","shouldStopPropagation","action","current","React","useLiveRef","isSelfTarget","Role_Role","useDisclosureContent","useRole","DISCLOSURE_CONTENT_KEYS","htmlOnTransitionEnd","onTransitionEnd","htmlOnAnimationEnd","onAnimationEnd","htmlStyle","style","animating","animated","_React$useState","useState","transition","setTransition","hidden","visible","display","onTransitionEndRef","onAnimationEndRef","raf","useRef","useEffect","requestAnimationFrame","cancelAnimationFrame","onEnd","useCallback","_options$stopAnimatio","stopAnimation","_onTransitionEndRef$c","_onAnimationEndRef$cu","undefined","DisclosureContent","isPlainObject","arg","_proto$constructor","proto","getPrototypeOf","constructor","toString","findEnabledItemById","items","find","item","disabled","Form_utils_getIn","unstable_useFormMessage","FORM_MESSAGE_KEYS","children","unstable_getIn","errors","touched","messages","shouldShowMessage","role","unstable_FormMessage","ownKeys","enumerableOnly","getOwnPropertySymbols","symbols","filter","sym","getOwnPropertyDescriptor","target","arguments","source","forEach","getOwnPropertyDescriptors","defineProperties","useSealedState","Composite_CompositeState","unstable_useGridState","initialState","sealed","useCompositeState","hasPassiveEvents","passiveTestOptions","addEventListener","removeEventListener","isIosDevice","navigator","platform","test","maxTouchPoints","locks","documentListenerAdded","initialClientY","previousBodyOverflowSetting","previousBodyPaddingRight","allowTouchMove","el","some","lock","rawEvent","e","touches","restoreOverflowSetting","body","paddingRight","overflow","disableBodyScroll","targetElement","concat","arr","Array","isArray","arr2","from","_toConsumableArray","ontouchstart","targetTouches","clientY","ontouchmove","scrollTop","scrollHeight","clientHeight","isTargetElementTotallyScrolled","handleScroll","passive","_reserveScrollBarGap","reserveScrollBarGap","scrollBarGap","innerWidth","documentElement","clientWidth","setOverflowHidden","console","error","clearAllBodyScrollLocks","enableBodyScroll","isTextField","element","isTextInput","HTMLInputElement","selectionStart","isTextArea","tagName","isContentEditable","contentEditable","findFirstEnabledItem","excludeId","getCurrentId","passedId","_findFirstEnabledItem","currentId","_typeof","input","hint","prim","toPrimitive","res","TypeError","String","Number","Checkbox_Checkbox","unstable_useFormCheckbox","useCheckbox","FORM_CHECKBOX_KEYS","useOptions","state","values","setState","val","update","htmlOnBlur","onBlur","onBlurRef","isBoolean","_onBlurRef$current","_options$blur","defaultPrevented","blur","formatInputName","unstable_FormCheckbox","hasFocusWithin","Composite_CompositeItem","MenuContext","contains","findVisibleSubmenu","getTriangleArea","a","b","Math","abs","x","y","useTransitToSubmenu","menu","htmlOnMouseEnter","onMouseEnterRef","enterPointRef","submenuTopPointRef","submenuBottomPointRef","previousClientX","previousClientY","assignSubmenuAnchorPoints","visibleSubmenu","_getSubmenuAnchorPoin","_visibleSubmenu$getBo","getBoundingClientRect","top","right","bottom","left","clientX","getSubmenuAnchorPoints","isMouseInTransitToSubmenu","isMoving","isTrusted","movementX","point","hasAnchorPoints","type","onMouseEnter","_onMouseEnterRef$curr","getMouseDestination","relatedTarget","nodeType","Node","ELEMENT_NODE","toElement","useMenuItem","useCompositeItem","MENU_ITEM_KEYS","propsAreEqual","prev","next","unstable_popoverStyles","unstable_arrowStyles","prevProps","nextProps","unstable_propsAreEqual","htmlOnMouseMove","onMouseMove","htmlOnMouseLeave","onMouseLeave","useContext","onMouseMoveRef","onMouseLeaveRef","_useTransitToSubmenu","_onMouseMoveRef$curre","_options$move","currentTarget","move","_onMouseLeaveRef$curr","nextElement","hoveringInside","hoveringExpandedMenu","hoveringAnotherMenuItem","_options$move2","MenuItem","useVisuallyHidden","_","border","clip","height","margin","padding","position","whiteSpace","width","VisuallyHidden","ComboboxBaseState","unstable_useComboboxListState","_useSealedState","_useSealedState$curre","_useSealedState$orien","orientation","_useSealedState$loop","loop","composite","unstable_virtual","unstable_includesBaseElement","useComboboxBaseState","useTab","TAB_KEYS","_ref$focusable","focusable","_ref2","htmlOnClick","onClick","htmlOnFocus","onFocus","selected","selectedId","tabPanelId","useMemo","_options$panels","_options$panels$find","panels","panel","groupId","useTabPanelId","onClickRef","onFocusRef","_onClickRef$current","_options$select","select","_onFocusRef$current","_options$select2","manual","Tab","Clickable_Clickable","removeIndexFromArray","createEvent","CHECKBOX_KEYS","getChecked","checked","indexOf","useClickable","_ref$unstable_clickOn","unstable_clickOnEnter","_ref3","htmlOnChange","onChange","isNativeCheckbox","setIsNativeCheckbox","onChangeRef","indeterminate","useIndeterminateState","index","fireChange","Checkbox","buttonInputTypes","isButton","submenus","submenu","getPushButtonId","useButton","setRole","_React$useState2","setType","Button","RADIO_STATE_KEYS","RADIO_KEYS","RADIO_GROUP_KEYS","matches","selectors","msMatchesSelector","webkitMatchesSelector","randomBytes","UID","bytes","generateUID","PLACE_HOLDER_REGEXP","RegExp","IS_NATIVE_CODE_REGEXP","IS_PURE_FUNCTION","IS_ARROW_FUNCTION","UNSAFE_CHARS_REGEXP","RESERVED_SYMBOLS","ESCAPED_CHARS","escapeUnsafeChars","unsafeChar","serialize","obj","space","str","functions","regexps","dates","maps","sets","arrays","undefs","infinities","bigInts","ignoreFunction","isJSON","JSON","stringify","functionKeys","deleteFunctions","origValue","this","Date","Map","Set","isNaN","isFinite","unsafe","replace","match","backSlash","valueIndex","toISOString","flags","entries","assign","fn","serializedFn","argsStartsAt","def","substr","trim","split","join","serializeFunc","Popover_PopoverDisclosure","noop","useMenuButton","MENU_BUTTON_KEYS","unstable_moves","htmlOnKeyDown","htmlOnMouseDown","onMouseDown","parent","hasPressedMouse","dir","placement","hasParent","parentIsMenuBar","onKeyDownRef","onMouseDownRef","_onKeyDownRef$current","_options$hide","hide","_options$show","first","setTimeout","last","Enter","ArrowUp","ArrowRight","ArrowDown","ArrowLeft","show","focus","_options$show2","_onMouseDownRef$curre","_options$show3","_options$show4","_options$toggle","toggle","useComposeOptions","MenuButton","hasFocus","activeElement","getActiveElement","activeDescendant","getAttribute","ensureFocus","preventScroll","_ref$isActive","isActive","closest","parentElement","parentNode","useIsomorphicEffect","useCreateElement","Combobox_ComboboxList","Popover_Popover","unstable_useComboboxPopover","unstable_useComboboxList","usePopover","COMBOBOX_POPOVER_KEYS","unstable_disclosureRef","unstable_autoFocusOnShow","unstable_autoFocusOnHide","useComposeProps","unstable_ComboboxPopover","props","Grid_GridCell","Combobox_ComboboxItem","unstable_useComboboxGridCell","unstable_useComboboxItem","unstable_useGridCell","COMBOBOX_GRID_CELL_KEYS","unstable_ComboboxGridCell","Input_Input","unstable_useFormInput","useInput","FORM_INPUT_KEYS","_onChangeRef$current","_options$update","unstable_FormInput","Grid_GridRow","unstable_useComboboxGridRow","unstable_useGridRow","COMBOBOX_GRID_ROW_KEYS","unstable_ComboboxGridRow","usePopoverArrow","POPOVER_ARROW_KEYS","_ref$size","size","arrowStyles","transform","viewBox","className","unstable_arrowRef","fontSize","pointerEvents","PopoverArrow","Disclosure_DisclosureContent","Portal_Portal","DialogBackdropContext","useDialogBackdrop","DIALOG_BACKDROP_KEYS","_ref$modal","modal","htmlWrapElement","wrapElement","Portal","Provider","DialogBackdrop","useRadio","_options$value","_ref$unstable_checkOn","unstable_checkOnFocus","_React$useState3","isNativeRadio","setIsNativeRadio","isCurrentItemRef","initialChecked","initialCurrentId","setCurrentId","useInitialChecked","_options$setState","Radio","DISCLOSURE_KEYS","useToolbarItem","TOOLBAR_ITEM_KEYS","ToolbarItem","ex","createSagaMiddleware","createSagaMiddleware__default","k","default","ComboboxPopoverState","Combobox_ComboboxListState","unstable_useComboboxState","combobox","useComboboxPopoverState","useSeparator","_ref$orientation","Separator","Buffer","crypto","global","msCrypto","getRandomValues","cb","RangeError","allocUnsafe","generated","process","nextTick","Error","Id_IdProvider","SystemProvider","defaultSystem","prefix","unstable_prefix","_ref$unstable_system","unstable_system","system","unstable_IdProvider","auto","basePlacements","start","end","viewport","variationPlacements","reduce","acc","beforeRead","read","afterRead","beforeMain","main","afterMain","beforeWrite","write","afterWrite","modifierPhases","getNodeName","nodeName","toLowerCase","getWindow","node","ownerDocument","defaultView","isElement","Element","isHTMLElement","HTMLElement","isShadowRoot","ShadowRoot","enabled","phase","elements","styles","attributes","removeAttribute","setAttribute","effect","initialStyles","popper","strategy","arrow","reference","attribute","requires","getBasePlacement","max","min","round","getUAString","uaData","userAgentData","brands","map","brand","version","userAgent","isLayoutViewport","includeScale","isFixedStrategy","clientRect","scaleX","scaleY","offsetWidth","offsetHeight","visualViewport","addVisualOffsets","offsetLeft","offsetTop","getLayoutRect","child","rootNode","getRootNode","isSameNode","host","getComputedStyle","isTableElement","getDocumentElement","getParentNode","assignedSlot","getTrueOffsetParent","offsetParent","getOffsetParent","isFirefox","currentNode","css","perspective","contain","willChange","getContainingBlock","getMainAxisFromPlacement","within","mergePaddingObject","paddingObject","expandToHashMap","hashMap","_state$modifiersData$","arrowElement","popperOffsets","modifiersData","basePlacement","axis","len","rects","arrowRect","minProp","maxProp","endDiff","startDiff","arrowOffsetParent","clientSize","centerToReference","center","offset","axisProp","centerOffset","_options$element","querySelector","requiresIfExists","getVariation","unsetSides","mapToStyles","_Object$assign2","popperRect","variation","offsets","gpuAcceleration","adaptive","roundOffsets","isFixed","_offsets$x","_offsets$y","hasX","hasY","sideX","sideY","win","heightProp","widthProp","_Object$assign","commonStyles","_ref4","dpr","devicePixelRatio","roundOffsetsByDPR","_ref5","_options$gpuAccelerat","_options$adaptive","_options$roundOffsets","instance","_options$scroll","scroll","_options$resize","resize","scrollParents","scrollParent","hash","getOppositePlacement","matched","getOppositeVariationPlacement","getWindowScroll","scrollLeft","pageXOffset","pageYOffset","getWindowScrollBarX","isScrollParent","_getComputedStyle","overflowX","overflowY","listScrollParents","list","_element$ownerDocumen","getScrollParent","isBody","updatedList","rectToClientRect","rect","getClientRectFromMixedType","clippingParent","html","layoutViewport","getViewportRect","clientTop","clientLeft","getInnerBoundingClientRect","winScroll","scrollWidth","direction","getDocumentRect","getClippingRect","boundary","rootBoundary","mainClippingParents","clippingParents","clipperElement","getClippingParents","firstClippingParent","clippingRect","accRect","computeOffsets","commonX","commonY","mainAxis","detectOverflow","_options","_options$placement","_options$strategy","_options$boundary","_options$rootBoundary","_options$elementConte","elementContext","_options$altBoundary","altBoundary","_options$padding","altContext","clippingClientRect","contextElement","referenceClientRect","popperClientRect","elementClientRect","overflowOffsets","offsetData","multiply","_skip","_options$mainAxis","checkMainAxis","_options$altAxis","altAxis","checkAltAxis","specifiedFallbackPlacements","fallbackPlacements","_options$flipVariatio","flipVariations","allowedAutoPlacements","preferredPlacement","oppositePlacement","getExpandedFallbackPlacements","placements","_options$allowedAutoP","allowedPlacements","overflows","sort","computeAutoPlacement","referenceRect","checksMap","makeFallbackChecks","firstFittingPlacement","_basePlacement","isStartVariation","isVertical","mainVariationSide","altVariationSide","checks","every","check","set","_loop","_i","fittingPlacement","reset","getSideOffsets","preventedOffsets","isAnySideFullyClipped","side","preventOverflow","referenceOverflow","popperAltOverflow","referenceClippingOffsets","popperEscapeOffsets","isReferenceHidden","hasPopperEscaped","_options$offset","invertDistance","skidding","distance","distanceAndSkiddingToXY","_data$state$placement","_options$tether","tether","_options$tetherOffset","tetherOffset","isBasePlacement","tetherOffsetValue","normalizedTetherOffsetValue","offsetModifierState","_offsetModifierState$","mainSide","altSide","additive","minLen","maxLen","arrowPaddingObject","arrowPaddingMin","arrowPaddingMax","arrowLen","minOffset","maxOffset","clientOffset","offsetModifierValue","tetherMax","preventedOffset","_offsetModifierState$2","_mainSide","_altSide","_offset","_len","_min","_max","isOriginSide","_offsetModifierValue","_tetherMin","_tetherMax","_preventedOffset","v","withinMaxClamp","getCompositeRect","elementOrVirtualElement","isOffsetParentAnElement","offsetParentIsScaled","isElementScaled","getNodeScroll","order","modifiers","visited","modifier","has","add","dep","depModifier","debounce","pending","Promise","resolve","then","DEFAULT_OPTIONS","areValidElements","args","_key","popperGenerator","generatorOptions","_generatorOptions","_generatorOptions$def","defaultModifiers","_generatorOptions$def2","defaultOptions","orderedModifiers","effectCleanupFns","isDestroyed","setOptions","setOptionsAction","cleanupModifierEffects","orderModifiers","merged","existing","mergeByName","_ref3$options","cleanupFn","forceUpdate","_state$elements","_state$orderedModifie","_state$orderedModifie2","destroy","onFirstUpdate","eventListeners","Form_FormGroup","FormRadioGroupContext","createContext","unstable_useFormRadioGroup","FORM_RADIO_GROUP_KEYS","providerValue","unstable_FormRadioGroup","Combobox_ComboboxListGridState","unstable_useComboboxGridState","unstable_useComboboxListGridState","useTooltipReference","TOOLTIP_REFERENCE_KEYS","_options$hide2","TooltipReference","useRadioState","initialValue","TOOLTIP_STATE_KEYS","TOOLTIP_KEYS","TOOLTIP_ARROW_KEYS","isInteger","floor","Tabbable_Tabbable","useTabbable","Input","Popover_PopoverArrow","useMenuArrow","MENU_ARROW_KEYS","MenuArrow","_defineProperty","configurable","writable","excluded","sourceKeys","Box_Box","Button_Button","Checkbox_CheckboxState","Composite_Composite","Combobox_Combobox","Id_Id","Combobox_ComboboxGridCell","Composite_CompositeGroup","Combobox_ComboboxGridRow","Id_IdState","Grid_GridState","Disclosure_DisclosureState","Dialog_DialogState","Popover_PopoverState","Combobox_ComboboxGridState","Combobox_ComboboxOption","Dialog_Dialog","Combobox_ComboboxPopover","Combobox_ComboboxState","Composite_CompositeItemWidget","Dialog_DialogBackdrop","Disclosure_Disclosure","Form_Form","Form_FormCheckbox","Form_FormInput","Form_FormLabel","Form_FormMessage","Form_FormPushButton","Radio_Radio","Form_FormRadioGroup","Form_FormRadio","Form_FormRemoveButton","Form_FormState","Form_FormSubmitButton","Grid_Grid","Menu_MenuBar","Menu_Menu","Menu_MenuArrow","Menu_MenuBarState","Menu_MenuButton","Menu_MenuDisclosure","Menu_MenuGroup","Menu_MenuItem","Menu_MenuItemCheckbox","Menu_MenuItemRadio","Separator_Separator","Menu_MenuSeparator","Menu_MenuState","Popover_PopoverBackdrop","Radio_RadioGroup","Radio_RadioState","Rover_Rover","Rover_RoverState","Tab_Tab","Tab_TabList","Tab_TabPanel","Tab_TabState","Toolbar_Toolbar","Toolbar_ToolbarItem","Toolbar_ToolbarSeparator","Toolbar_ToolbarState","Tooltip_Tooltip","Tooltip_TooltipArrow","Tooltip_TooltipReference","Tooltip_TooltipState","VisuallyHidden_VisuallyHidden","Box","useBox","Role","Tabbable","Clickable","useCheckboxState","Composite","unstable_Composite","useComposite","unstable_Combobox","unstable_useCombobox","unstable_IdContext","unstable_Id","unstable_useId","CompositeItem","unstable_CompositeItem","unstable_GridCell","unstable_ComboboxItem","Group","CompositeGroup","unstable_CompositeGroup","useCompositeGroup","unstable_GridRow","unstable_useIdState","unstable_useCompositeState","useDisclosureState","useDialogState","usePopoverState","unstable_ComboboxList","unstable_ComboboxOption","unstable_useComboboxOption","PortalContext","Dialog","useDialog","Popover","unstable_CompositeItemWidget","unstable_useCompositeItemWidget","Disclosure","useDisclosure","DialogDisclosure","unstable_Form","unstable_useForm","unstable_FormLabel","unstable_useFormLabel","unstable_FormPushButton","unstable_useFormPushButton","unstable_FormRadio","unstable_useFormRadio","unstable_FormRemoveButton","unstable_useFormRemoveButton","unstable_useFormState","unstable_FormSubmitButton","unstable_useFormSubmitButton","unstable_Grid","unstable_useGrid","MenuBar","useMenuBar","Menu","useMenu","useMenuBarState","MenuDisclosure","useMenuDisclosure","MenuGroup","useMenuGroup","MenuItemCheckbox","useMenuItemCheckbox","MenuItemRadio","useMenuItemRadio","MenuSeparator","useMenuSeparator","useMenuState","PopoverBackdrop","usePopoverBackdrop","RadioGroup","useRadioGroup","Rover","useRover","useRoverState","TabList","useTabList","TabPanel","useTabPanel","useTabState","Toolbar","useToolbar","ToolbarSeparator","useToolbarSeparator","useToolbarState","Tooltip","useTooltip","TooltipArrow","useTooltipArrow","useTooltipState","context","isRenderProp","POPOVER_BACKDROP_KEYS","getDocument","__globalState","globallyHideTooltipOnEscape","globalState","_ref$unstable_portal","unstable_portal","_options$unstable_pop","unstable_popoverRef","getItemId","COMBOBOX_ITEM_KEYS","prevCurrentValue","currentValue","inputValue","nextCurrentValue","prevId","nextId","registerItem","_options$registerItem","_options$setInputValu","setInputValue","useWarning","condition","TAB_LIST_KEYS","TAB_PANEL_KEYS","hasUserFocus","userFocus","setUserFocus","getMenuId","COMBOBOX_LIST_KEYS","_ref$menuRole","menuRole","ROVER_KEYS","useAllCallbacks","callbacks","_step","fns","_iterator","_createForOfIteratorHelperLoose","done","callback","_ref$tabIndex","htmlTabIndex","stopId","trulyDisabled","noFocused","focused","isFirst","stops","shouldTabIndex","register","unregister","rover","previous","Home","End","PageUp","PageDown","FORM_KEYS","htmlOnSubmit","onSubmit","onSubmitRef","_onSubmitRef$current","_options$submit","submit","noValidate","initialBaseId","generateId","idCountRef","setBaseId","unstable_idCountRef","_ref2$gutter","gutter","_ref2$placement","popover","minValueLength","POPOVER_KEYS","ReactDOM","getBodyElement","hostNode","__className","appendChild","removeChild","createPortal","__selector","FORM_LABEL_KEYS","label","htmlFor","fireKeyboardEvent","eventInit","dispatchEvent","KeyboardEvent","initKeyboardEvent","bubbles","cancelable","location","ctrlKey","altKey","shiftKey","metaKey","createKeyboardEvent","tabbable","useUpdateEffect","getNextActiveElementOnBlur","removeItemFromArray","bodyScrollLock","isEmpty","removeFromDOM","useFocusTrap","dialogRef","visibleModals","portalRef","dialog","usePortalRef","shouldTrap","beforeElement","afterElement","portal","cloneNode","insertAdjacentElement","before","after","handleFocus","tabbable$1","getFirstTabbableIn","getLastTabbableIn","useFocusOnHide","disclosureRef","shouldFocus","_options$unstable_fin","isTabbable","hidByFocusingAnotherElement","finalFocusEl","unstable_finalFocusRef","compositeElement","DialogContext","useEventListenerOutside","containerRef","nestedDialogs","eventType","listener","shouldListen","capture","listenerRef","onEvent","container","disclosure","isInDocument","isDisclosure","_element$classList","classList","isFocusTrap","backdrop","dialogContains","useHideOnClickOutside","mouseDownRef","hideOnClickOutside","useMouseDownRef","isActualElement","DIALOG_KEYS","_ref$hideOnEsc","hideOnEsc","_ref$hideOnClickOutsi","_ref$preventBodyScrol","preventBodyScroll","_ref$unstable_autoFoc","_ref$unstable_autoFoc2","unstable_orphan","hasBackdrop","_options$unstable_dis","useDisclosureRef","focusOnBlur","_React$useReducer","useReducer","blurred","scheduleFocus","useFocusOnBlur","_useNestedDialogs","dialogs","setDialogs","setVisibleModals","addDialog","_context$addDialog","prevDialogs","removeDialog","_context$removeDialog","showDialog","_context$showDialog","hideDialog","_context$hideDialog","_context$addDialog2","_context$removeDialog2","_context$showDialog2","_context$hideDialog2","wrap","useNestedDialogs","targetRef","shouldPrevent","usePreventBodyScroll","observer","MutationObserver","mutations","observe","childList","subtree","disconnect","useFocusOnChildUnmount","initialFocusRef","unstable_initialFocusRef","useFocusOnShow","useEvent","useDisableHoverOutside","_useSealedState$unsta","unstable_values","initialValues","setValues","unstable_setValue","vals","isObject","initialSelectedId","_useSealedState$manua","setSelectedId","registerPanel","unregisterPanel","unregisterItem","GRID_ROW_KEYS","_arrayLikeToArray","allowArrayLike","it","iterator","_unsupportedIterableToArray","ID_KEYS","suffix","MENU_KEYS","MENU_BAR_KEYS","MENU_GROUP_KEYS","MENU_ITEM_CHECKBOX_KEYS","MENU_ITEM_RADIO_KEYS","MENU_SEPARATOR_KEYS","_interopDefault","PropTypes","withSideEffect","isEqual","objectAssign","ATTRIBUTE_NAMES","TAG_NAMES","BASE","BODY","HEAD","HTML","LINK","META","NOSCRIPT","SCRIPT","STYLE","TITLE","TAG_PROPERTIES","REACT_TAG_MAP","accesskey","charset","class","contenteditable","contextmenu","itemprop","tabindex","HELMET_PROPS","HTML_TAG_MAP","SELF_CLOSING_TAGS","classCallCheck","Constructor","createClass","descriptor","protoProps","staticProps","_extends","objectWithoutProperties","possibleConstructorReturn","self","ReferenceError","encodeSpecialCharacters","encode","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","tagAttrs","getBaseTagFromPropsList","primaryAttributes","reverse","innermostBaseTag","tag","lowerCaseAttributeKey","getTagsFromPropsList","approvedSeenTags","warn","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","tagUnion","rafPolyfill","clock","now","currentTime","cafPolyfill","clearTimeout","webkitRequestAnimationFrame","mozRequestAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","msg","_helmetCallback","commitTagChanges","newState","baseTag","bodyAttributes","htmlAttributes","linkTags","metaTags","noscriptTags","onChangeClientState","scriptTags","styleTags","title","titleAttributes","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","elementTag","getElementsByTagName","helmetAttributeString","helmetAttributes","attributesToRemove","attributeKeys","indexToSave","tags","headElement","head","tagNodes","querySelectorAll","indexToDelete","newElement","innerHTML","styleSheet","cssText","createTextNode","existingTag","isEqualNode","generateElementAttributesAsString","attr","convertElementAttributestoReactProps","initProps","getMethodsForTag","toComponent","_initProps","generateTitleAsReactComponent","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","content","dangerouslySetInnerHTML","__html","generateTagsAsReactComponent","attributeHtml","string","tagContent","isSelfClosing","generateTagsAsString","mapStateOnServer","_ref$title","base","link","meta","noscript","script","HelmetExport","Component","_class","_React$Component","HelmetWrapper","subClass","superClass","setPrototypeOf","__proto__","inherits","shouldComponentUpdate","mapNestedChildrenToProps","nestedChildren","flattenArrayTypeChildren","_babelHelpers$extends","arrayTypeChildren","newChildProps","mapObjectTypeChildren","_babelHelpers$extends2","_babelHelpers$extends3","newProps","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_babelHelpers$extends4","warnOnInvalidChildren","mapChildrenToProps","_this2","Children","_child$props","initAttributes","convertReactPropstoHtmlAttributes","render","_props","propTypes","oneOfType","arrayOf","defaultTitle","defer","bool","func","titleTemplate","defaultProps","peek","rewind","mappedState","Helmet","renderStatic","setTextFieldValue","focusCurrentItem","widget","_getDocument$getEleme","getElementById","COMPOSITE_ITEM_WIDGET_KEYS","_options$unstable_set","unstable_setHasActiveWidget","_options$unstable_set2","nativeEvent","isComposing","unstable_hasActiveWidget","generateRandomString","random","_ref$prefix","count","localPrefix","array","prevValues","nextValues","isPortalEvent","getTabId","_tabsWithoutPanel$pan","tabId","panelIndex","getPanelIndex","tabs","panelsTabIds","getTabsWithoutPanel","COMBOBOX_OPTION_KEYS","warning","FORM_RADIO_KEYS","createFocusEvent","FocusEvent","fireBlurEvent","defaultAllowed","bubbleInit","GRID_KEYS","TOOLBAR_SEPARATOR_KEYS","deps","mounted","isIE11","unstable_setAllIn","typedObject","_keys","setRef","refA","refB","_useSealedState$visib","initialVisible","_useSealedState$anima","initialAnimated","setVisible","setAnimated","setAnimating","lastVisible","lastValue","useLastValue","visibleHasChanged","timeout","GRID_CELL_KEYS","_ref$role","useMenuContext","menuRef","_ref$items","setKeys","timeoutId","stop","textContent","startsWith","_target$getAttribute","targetIsMenu","targetIsMenuItem","useShortcuts","currentTooltipId","listeners","subscribe","_this","delete","DIALOG_DISCLOSURE_KEYS","expanded","setExpanded","isCurrentDisclosure","orphan","setChildren","addChildToParent","addChild","removeChildFromParent","refs","ancestorMenuBar","ancestorIsHorizontal","_placement$split","DIALOG_STATE_KEYS","_useSealedState$gutte","menuBar","FORM_PUSH_BUTTON_KEYS","_options$push","inputId","selector","Stylis","_insertRulePlugin","React__default","unitless","reactIs","memoize","validAttr","merge","interleave","strings","interpolations","EMPTY_ARRAY","freeze","EMPTY_OBJECT","isFunction","getComponentName","displayName","isStyledComponent","styledComponentId","SC_ATTR","env","REACT_APP_SC_ATTR","IS_BROWSER","DISABLE_SPEEDY","SC_DISABLE_SPEEDY","REACT_APP_SC_DISABLE_SPEEDY","STATIC_EXECUTION_CONTEXT","StyledComponentsError","_Error","code","SC_COMPONENT_ID","extractComps","maybeCSS","existingComponents","componentId","matchIndex","nextComp","cssFromDOM","COMMENT_REGEX","stylisSplitter","cascade","keyframe","compress","semicolon","stylis","parsingRules","returnRulesPlugin","parsedRules","parseRulesPlugin","rule","_componentId","_selector","_selectorRegexp","selfReferenceReplacer","use","lastIndexOf","splitByRules","stringifyRules","rules","flatCSS","cssStr","getNonce","addNameForId","names","resetIdNames","hasNameForId","stringifyNames","sheetForTag","sheet","styleSheets","ownerNode","safeInsertRule","cssRule","maxIndex","cssRules","insertRule","err","makeTextMarker","addUpUntilIndex","sizes","totalUpToIndex","wrapAsHtmlTag","additionalAttrs","nonce","SC_VERSION_ATTR","wrapAsElement","getIdsFromMarkersFactory","markers","makeTextNode","targetDocument","makeServerTag","namesArg","markersArg","insertMarker","cssForId","clone","namesClone","cloneNames","markersClone","getIds","insertRules","removeRules","marker","styleTag","toHTML","makeTag","tagEl","forceServer","insertBefore","getImportRuleTag","nextSibling","makeStyleTag","extractImport","usedImportRuleTag","importRules","cssRulesSize","mayHaveImport","separator","appendData","newMarker","replaceChild","makeBrowserTag","insertIndex","injectedRules","isConnected","removalIndex","lowerBound","deleteRule","deleteRules","makeSpeedyTag","SPLIT_REGEX","MAX_SIZE","sheetRunningId","master","StyleSheet","importRuleTag","firstTag","tagMap","deferred","rehydratedNames","ignoreRehydratedNames","capacity","clones","rehydrate","els","extracted","isStreamed","nodes","nodesSize","elNames","elNamesSize","extractedSize","_extracted$i","_j","ids","newTag","sealAllTags","lastEl","getTagForId","hasId","deferredInject","inject","remove","toReactElements","cloneElement","Keyframes","getName","uppercasePattern","msPattern","hyphenateStyleName","isFalsish","chunk","objToCssArray","prevKey","flatten","executionContext","ruleSet","isReactComponent","murmurhash","charCodeAt","getAlphabeticChar","fromCharCode","generateAlphabeticName","isStaticRules","attrs","hasFunctionObjectKey","_TYPE_STATICS","hasher","ComponentStyle","isStatic","generateAndInjectStyles","lastClassName","generateName","determineTheme","fallbackTheme","isDefaultTheme","theme","escapeRegex","dashesAtEnds","escape","isTag","REACT_STATICS","childContextTypes","contextTypes","getDerivedStateFromProps","KNOWN_STATICS","caller","callee","arity","TYPE_STATICS","ForwardRef","$$typeof","defineProperty$1","getOwnPropertyNames","_Object$getOwnPropert","objectPrototype","arrayPrototype","hoistNonReactStatics","targetComponent","sourceComponent","blacklist","inheritedComponent","targetStatics","sourceStatics","ThemeContext","ThemeConsumer","Consumer","ThemeProvider","_Component","getContext","renderInner","outerTheme","getTheme","ServerStyleSheet","masterSheet","seal","collectStyles","StyleSheetManager","getStyleTags","getStyleElement","interleaveWithNodeStream","readableStream","StyleSheetContext","StyleSheetConsumer","identifiers","StyledComponent","renderOuter","forwardedComponent","componentStyle","_props$forwardedCompo","foldedComponentIds","generatedClassName","elementToBeCreated","isTargetTag","propsForElement","computedProps","buildExecutionContext","attrDef","resolvedAttrDef","attrDefWasFn","_props$forwardedCompo2","warnTooManyClasses","createStyledComponent","isTargetStyledComp","isClass","_options$displayName","generateDisplayName","_options$componentId","_ComponentStyle","_displayName","parentComponentId","nr","_options$ParentCompon","ParentComponent","_options$attrs","finalAttrs","WrappedStyledComponent","forwardRef","forwardedRef","withComponent","previousComponentId","optionsToCopy","newComponentId","_foldedDefaultProps","styled","constructWithOptions","componentConstructor","isValidElementType","templateFunction","withConfig","config","domElement","GlobalStyle","createStyles","removeStyles","renderStyles","scCGSHMRCache","replaceWhitespace","__DO_NOT_USE_OR_YOU_WILL_BE_HAUNTED_BY_SPOOKY_GHOSTS","createGlobalStyle","GlobalStyleComponent","_this$constructor","globalStyle","componentWillUnmount","keyframes","withTheme","WithTheme","themeProp","isPromise","dom","isSafariOrFirefoxOnMac","isUA","focusIfNeeded","isFocusable","getTabIndex","nativeTabbable","supportsDisabled","useDisableEvent","htmlEventRef","_htmlEventRef$current","htmlOnClickCapture","onClickCapture","htmlOnMouseDownCapture","onMouseDownCapture","htmlOnKeyPressCapture","onKeyPressCapture","onClickCaptureRef","onMouseDownCaptureRef","onKeyPressCaptureRef","setNativeTabbable","setSupportsDisabled","includes","supportsDisabledAttribute","focusImmediately","once","COMPOSITE_KEYS","COMPOSITE_GROUP_KEYS","COMPOSITE_ITEM_KEYS","__deprecatedSplitProps","picked","omitted","_propsKeys","splitProps","_deprecatedSplitProp","restPicked","normalizePropsAreEqual","component","shouldMemo","_ref$propsAreEqual","_ref$keys","_ref$useCreateElement","useCreateElement$1","Comp","_ref2$as","_as$render","_splitProps","_useHook","elementProps","asKeys","asOptions","allProps","_element","shallowEqual","toArray","_useSealedState$state","buffer","copyProps","src","dst","SafeBuffer","encodingOrOffset","alloc","allocUnsafeSlow","fill","encoding","buf","SlowBuffer","getControls","ariaControls","menuId","getAutocomplete","inline","hasCompletionString","COMBOBOX_KEYS","htmlOnKeyPress","onKeyPress","updated","onKeyPressRef","autoSelect","firstItem","isFirstItemAutoSelected","getCompletionString","useValue","hasInsertedTextRef","_items$find","getFirstEnabledItemId","setSelectionRange","_onKeyPressRef$curren","_options$setCurrentId2","_options$setCurrentId","_options$setCurrentId3","autoComplete","onKeyUp","htmlOnKeyDownCapture","onKeyDownCapture","compositeHTMLProps","onKeyDownCaptureRef","_onKeyDownCaptureRef$","_compositeHTMLProps$o","_onKeyDownRef$current2","_compositeHTMLProps$o2","Form_utils_setAllIn","Form_utils_setIn","hasMessages","getMessages","stateMessages","actionMessages","reducer","valid","validating","submitting","submitFailed","submitSucceed","_name","_value","nextValue","unstable_setIn","_array","_useSealedState$value","_useSealedState$valid","validateOnBlur","_useSealedState$valid2","validateOnChange","_useSealedState$reset","resetOnSubmitSucceed","_useSealedState$reset2","resetOnUnmount","onValidate","onValidateRef","_React$useReducer$","dispatch","validate","response","catch","validateMessages","filterAllEmpty","submitMessages","_useSealedState$modal","initialModal","setModal","Event","initEvent","htmlElement","getClientRects","isVisible","parseInt","hasNegativeTabIndex","getAllFocusableIn","allFocusable","unshift","getFirstFocusableIn","getAllTabbableIn","fallbackToFocusable","allTabbable","getNextTabbableIn","getPreviousTabbableIn","getClosestFocusable","path","pathArray","toPropertyKey","prevCurrentId","nextCurrentId","prevCurrentItem","nextCurrentItem","prevGroupId","nextGroupId","_options$registerGrou","registerGroup","_options$unregisterGr","unregisterGroup","grid","flattened","row","groupItems","groups","group","g","applyState","argument","isUpdater","767","OutbrainWidget","u","dataSrc","dataWidgetId","obUserId","obInstallationKey","obInstallationType","obAppVer","isSecured","obContentUrl","f","obPortalUrl","obBundleUrl","obLanguage","I","obPsub","obAppId","O","externalId","P","OBR","extern","renderSpaWidgets","isRequired","703","resetWarningCache","number","symbol","any","elementType","instanceOf","objectOf","oneOf","shape","exact","checkPropTypes","697","414","297","FORM_REMOVE_BUTTON_KEYS","FORM_SUBMIT_BUTTON_KEYS","getWidget","itemElement","prevMoves","nextMoves","unstable_clickOnSpace","_options$items2","htmlOnBlurCapture","onBlurCapture","isCurrentItem","hasFocusedComposite","_options$items","useItem","onBlurCaptureRef","_options$unregisterIt","shouldFocusComposite","targetIsAnotherItem","_onBlurCaptureRef$cur","isHorizontal","isGrid","up","down","_options$first","_options$previous","_options$last","_options$next","_options$up","_options$first2","_options$down","_options$last2","_widget","_useSealedState$colum","columns","initialColumns","setColumns","chunks","defaultValue","useKeyboardEventProxy","virtual","currentItem","htmlEventHandler","eventHandlerRef","_eventHandlerRef$curr","canProxyKeyboardEvent","currentElement","isItem","htmlOnFocusCapture","onFocusCapture","htmlOnKeyUpCapture","onKeyUpCapture","previousElementRef","onFocusCaptureRef","scheduleUserFocus","currentItemRef","scheduled","schedule","_currentItemRef$curre","useScheduleUserFocus","activeElementRef","elementRef","useActiveElementRef","_onFocusCaptureRef$cu","previousActiveElement","previousActiveElementWasItem","nextActiveElement","nextActiveElementIsItem","_options$groups","tabbableHTMLProps","_interopDefaultLegacy","_objectSpread__default","formatProdErrorMessage","$$observable","observable","randomString","substring","ActionTypes","INIT","REPLACE","PROBE_UNKNOWN_ACTION","createStore","preloadedState","enhancer","currentReducer","currentState","currentListeners","nextListeners","isDispatching","ensureCanMutateNextListeners","getState","isSubscribed","replaceReducer","nextReducer","outerSubscribe","observeState","unsubscribe","legacy_createStore","bindActionCreator","actionCreator","funcs","__DO_NOT_USE__ActionTypes","applyMiddleware","middlewares","store","_dispatch","middlewareAPI","chain","middleware","bindActionCreators","actionCreators","boundActionCreators","combineReducers","reducers","reducerKeys","finalReducers","shapeAssertionError","finalReducerKeys","assertReducerShape","hasChanged","nextState","previousStateForKey","nextStateForKey","fireEvent","useToken","token","SystemContext","_options$useState","_composedHooks$","composedHooks","__useOptions","hookOptions","hookName","unstable_ignoreUseOptions","_step2","_iterator2","hook","finalHTMLProps","definedHTMLProps","prop","composedKeys","_useSealedState$place","unstable_timeout","initialTimeout","showTimeout","hideTimeout","_usePopoverState","clearTimeouts","unstable_setTimeout","getFirstInvalidInput","TOOLBAR_KEYS","prevSystem","nextSystem","controls","_options$remove","inputs","nextIdx","final","idx","nextSelector","pushButtonId","pushButton","objA","objB","aKeys","bKeys","_aKeys","HTMLTextAreaElement","setValue","_ref$unstable_clickOn2","htmlOnKeyUp","active","setActive","onKeyUpRef","isEnter","isSpace","isNativeClick","click","_onKeyUpRef$current","pastId","unstable_pastId","moves","_id","findIndex","indexToInsertAt","compareDocumentPosition","DOCUMENT_POSITION_PRECEDING","_id2","nextStops","_id3","silent","_index","_index2","reorderedStops","nextIndex","_reducer","_stop","useAction","idState","unstable_reset","unstable_orientate","core","isSafari","applyStyles","prevStyles","sealedPlacement","unstable_flip","flip","sealedOffset","unstable_offset","_useSealedState$unsta2","unstable_preventOverflow","_useSealedState$unsta3","unstable_fixed","fixed","referenceRef","popoverRef","arrowRef","originalPlacement","place","setPlacement","_React$useState4","popoverStyles","setPopoverStyles","_React$useState5","setArrowStyles","updateState","createPopper","_arrowRef$current","_popper$current","unstable_update","unstable_originalPlacement","COMBOBOX_LIST_STATE_KEYS","COMBOBOX_LIST_GRID_STATE_KEYS","COMBOBOX_STATE_KEYS","COMBOBOX_GRID_STATE_KEYS","isElementPreceding","element1","element2","findDOMIndex","getMaxLength","rows","maxLength","verticalizeItems","verticalized","fillGroups","previousItem","nullItem","getItemsInGroup","horizontal","vertical","addItemAtIndex","sortBasedOnDOMPosition","pairs","isOrderDifferent","indexA","indexB","elementA","elementB","setItemsBasedOnDOMPosition","setItems","sortedItems","useIntersectionObserver","previousItems","root","_firstItem$ref$curren","nextItems","_ret","getCommonParent","IntersectionObserver","useSortBasedOnDOMPosition","useTimeoutObserver","rtl","pastIds","includesBaseElement","initialVirtual","initialRTL","initialOrientation","initialLoop","initialWrap","initialShift","hasSetCurrentId","_group","nextGroups","_item","_group2","_r$ref$current","nextItem","nextPastIds","_nextState","filteredPastIds","_nextPastIds","_nextState2","_item2","isRTL","allItems","currentIndex","_nextItems","nextItemsInGroup","allTheWay","_nextItem2","oppositeOrientation","getOppositeOrientation","canLoop","canWrap","hasNullItem","shouldInsertNullItem","placeItemsAfter","_nextItem3","_nextItem4","_nextId","_nextItem","_hasNullItem","_nextState3","shouldShift","verticalItems","_hasNullItem2","_nextState4","_shouldShift","_verticalItems","_hasNullItem3","_nextState5","_nextState6","_useSealedState$rtl","_useSealedState$wrap","_useSealedState$shift","hasActiveWidget","setHasActiveWidget","isUnmountedRef","useIsUnmountedRef","unstable_setVirtual","setRTL","setOrientation","setLoop","setWrap","setShift","unstable_setIncludesBaseElement","_ref$inputValue","initialInputValue","_ref$minValueLength","initialMinValueLength","_ref$values","_ref$limit","limit","initialLimit","_ref$list","initialList","_ref$inline","initialInline","_ref$autoSelect","initialAutoSelect","valuesById","setMinValueLength","setLimit","setList","_React$useState6","setInline","_React$useState7","setAutoSelect","regex","search","getMatches"],"mappings":"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","file":"static/js/vendor.3056a37b.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t60: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/\";\n\n \tvar jsonpArray = window[\"__LOADABLE_LOADED_CHUNKS__\"] = window[\"__LOADABLE_LOADED_CHUNKS__\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// add entry module to deferred list\n \tdeferredModules.push([0,9,10]);\n \t// run deferred modules when ready\n \treturn checkDeferredModules();\n","import './getDocument.js';\nimport { getWindow } from './getWindow.js';\n\nfunction checkIsBrowser() {\n var _window = getWindow();\n\n return Boolean(typeof _window !== \"undefined\" && _window.document && _window.document.createElement);\n}\n/**\n * It's `true` if it is running in a browser environment or `false` if it is not (SSR).\n *\n * @example\n * import { canUseDOM } from \"reakit-utils\";\n *\n * const title = canUseDOM ? document.title : \"\";\n */\n\n\nvar canUseDOM = checkIsBrowser();\n\nexport { canUseDOM };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('../Button/Button.js');\nrequire('../__keys-f41a441b.js');\nrequire('../__keys-0c8e6398.js');\nvar __keys = require('../__keys-eddd3051.js');\nrequire('../Disclosure/Disclosure.js');\nvar Dialog_DialogDisclosure = require('../Dialog/DialogDisclosure.js');\n\nvar usePopoverDisclosure = createHook.createHook({\n name: \"PopoverDisclosure\",\n compose: Dialog_DialogDisclosure.useDialogDisclosure,\n keys: __keys.POPOVER_DISCLOSURE_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(options.unstable_referenceRef, htmlRef)\n }, htmlProps);\n }\n});\nvar PopoverDisclosure = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: usePopoverDisclosure\n});\n\nexports.PopoverDisclosure = PopoverDisclosure;\nexports.usePopoverDisclosure = usePopoverDisclosure;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('../Role/Role.js');\nvar Group_Group = require('../Group/Group.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nvar getLabelId = require('../getLabelId-eba7e47b.js');\nrequire('./utils/getIn.js');\nvar shouldShowError = require('../shouldShowError-880a39c9.js');\n\nvar unstable_useFormGroup = createHook.createHook({\n name: \"FormGroup\",\n compose: Group_Group.useGroup,\n keys: __keys.FORM_GROUP_KEYS,\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n id: getInputId.getInputId(options.name, options.baseId),\n tabIndex: -1,\n \"aria-describedby\": shouldShowError.getMessageId(options.name, options.baseId),\n \"aria-labelledby\": getLabelId.getLabelId(options.name, options.baseId),\n \"aria-invalid\": shouldShowError.shouldShowError(options, options.name)\n }, htmlProps);\n }\n});\nvar unstable_FormGroup = createComponent.createComponent({\n as: \"fieldset\",\n useHook: unstable_useFormGroup\n});\n\nexports.unstable_FormGroup = unstable_FormGroup;\nexports.unstable_useFormGroup = unstable_useFormGroup;\n","/**\n * Returns an `onKeyDown` handler to be passed to a component.\n *\n * @param options\n */\nfunction createOnKeyDown(_temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n keyMap = _ref.keyMap,\n onKey = _ref.onKey,\n stopPropagation = _ref.stopPropagation,\n onKeyDown = _ref.onKeyDown,\n _ref$shouldKeyDown = _ref.shouldKeyDown,\n shouldKeyDown = _ref$shouldKeyDown === void 0 ? function () {\n return true;\n } : _ref$shouldKeyDown,\n _ref$preventDefault = _ref.preventDefault,\n preventDefault = _ref$preventDefault === void 0 ? true : _ref$preventDefault;\n\n return function (event) {\n if (!keyMap) return;\n var finalKeyMap = typeof keyMap === \"function\" ? keyMap(event) : keyMap;\n var shouldPreventDefault = typeof preventDefault === \"function\" ? preventDefault(event) : preventDefault;\n var shouldStopPropagation = typeof stopPropagation === \"function\" ? stopPropagation(event) : stopPropagation;\n\n if (event.key in finalKeyMap) {\n var action = finalKeyMap[event.key];\n\n if (typeof action === \"function\" && shouldKeyDown(event)) {\n if (shouldPreventDefault) event.preventDefault();\n if (shouldStopPropagation) event.stopPropagation();\n if (onKey) onKey(event);\n action(event); // Prevent onKeyDown from being called twice for the same keys\n\n return;\n }\n }\n\n if (onKeyDown && \"current\" in onKeyDown) {\n var _onKeyDown$current;\n\n (_onKeyDown$current = onKeyDown.current) === null || _onKeyDown$current === void 0 ? void 0 : _onKeyDown$current.call(onKeyDown, event);\n } else {\n onKeyDown === null || onKeyDown === void 0 ? void 0 : onKeyDown(event);\n }\n };\n}\n\nexport { createOnKeyDown };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar isSelfTarget = require('reakit-utils/isSelfTarget');\nvar Role_Role = require('../Role/Role.js');\nvar __keys = require('../__keys-f41a441b.js');\n\nvar useDisclosureContent = createHook.createHook({\n name: \"DisclosureContent\",\n compose: Role_Role.useRole,\n keys: __keys.DISCLOSURE_CONTENT_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlOnTransitionEnd = _ref.onTransitionEnd,\n htmlOnAnimationEnd = _ref.onAnimationEnd,\n htmlStyle = _ref.style,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onTransitionEnd\", \"onAnimationEnd\", \"style\"]);\n\n var animating = options.animated && options.animating;\n\n var _React$useState = React.useState(null),\n transition = _React$useState[0],\n setTransition = _React$useState[1];\n\n var hidden = !options.visible && !animating;\n var style = hidden ? _rollupPluginBabelHelpers._objectSpread2({\n display: \"none\"\n }, htmlStyle) : htmlStyle;\n var onTransitionEndRef = useLiveRef.useLiveRef(htmlOnTransitionEnd);\n var onAnimationEndRef = useLiveRef.useLiveRef(htmlOnAnimationEnd);\n var raf = React.useRef(0);\n React.useEffect(function () {\n if (!options.animated) return undefined; // Double RAF is needed so the browser has enough time to paint the\n // default styles before processing the `data-enter` attribute. Otherwise\n // it wouldn't be considered a transition.\n // See https://github.com/reakit/reakit/issues/643\n\n raf.current = window.requestAnimationFrame(function () {\n raf.current = window.requestAnimationFrame(function () {\n if (options.visible) {\n setTransition(\"enter\");\n } else if (animating) {\n setTransition(\"leave\");\n } else {\n setTransition(null);\n }\n });\n });\n return function () {\n return window.cancelAnimationFrame(raf.current);\n };\n }, [options.animated, options.visible, animating]);\n var onEnd = React.useCallback(function (event) {\n if (!isSelfTarget.isSelfTarget(event)) return;\n if (!animating) return; // Ignores number animated\n\n if (options.animated === true) {\n var _options$stopAnimatio;\n\n (_options$stopAnimatio = options.stopAnimation) === null || _options$stopAnimatio === void 0 ? void 0 : _options$stopAnimatio.call(options);\n }\n }, [options.animated, animating, options.stopAnimation]);\n var onTransitionEnd = React.useCallback(function (event) {\n var _onTransitionEndRef$c;\n\n (_onTransitionEndRef$c = onTransitionEndRef.current) === null || _onTransitionEndRef$c === void 0 ? void 0 : _onTransitionEndRef$c.call(onTransitionEndRef, event);\n onEnd(event);\n }, [onEnd]);\n var onAnimationEnd = React.useCallback(function (event) {\n var _onAnimationEndRef$cu;\n\n (_onAnimationEndRef$cu = onAnimationEndRef.current) === null || _onAnimationEndRef$cu === void 0 ? void 0 : _onAnimationEndRef$cu.call(onAnimationEndRef, event);\n onEnd(event);\n }, [onEnd]);\n return _rollupPluginBabelHelpers._objectSpread2({\n id: options.baseId,\n \"data-enter\": transition === \"enter\" ? \"\" : undefined,\n \"data-leave\": transition === \"leave\" ? \"\" : undefined,\n onTransitionEnd: onTransitionEnd,\n onAnimationEnd: onAnimationEnd,\n hidden: hidden,\n style: style\n }, htmlProps);\n }\n});\nvar DisclosureContent = createComponent.createComponent({\n as: \"div\",\n useHook: useDisclosureContent\n});\n\nexports.DisclosureContent = DisclosureContent;\nexports.useDisclosureContent = useDisclosureContent;\n","'use strict';\n\nvar getInputId = require('./getInputId-cbd3bbcc.js');\n\nfunction getLabelId(name, baseId) {\n return getInputId.getInputId(name, baseId, \"-label\");\n}\n\nexports.getLabelId = getLabelId;\n","import { isObject } from './isObject.js';\n\n/**\n * Checks whether `arg` is a plain object or not.\n *\n * @returns {boolean}\n */\n\nfunction isPlainObject(arg) {\n var _proto$constructor;\n\n if (!isObject(arg)) return false;\n var proto = Object.getPrototypeOf(arg);\n if (proto == null) return true;\n return ((_proto$constructor = proto.constructor) === null || _proto$constructor === void 0 ? void 0 : _proto$constructor.toString()) === Object.toString();\n}\n\nexport { isPlainObject };\n","'use strict';\n\nfunction findEnabledItemById(items, id) {\n if (!id) return undefined;\n return items === null || items === void 0 ? void 0 : items.find(function (item) {\n return item.id === id && !item.disabled;\n });\n}\n\nexports.findEnabledItemById = findEnabledItemById;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Role_Role = require('../Role/Role.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\nrequire('../getInputId-cbd3bbcc.js');\nvar Form_utils_getIn = require('./utils/getIn.js');\nvar shouldShowError = require('../shouldShowError-880a39c9.js');\n\nfunction shouldShowMessage(_ref, name) {\n var touched = _ref.touched,\n messages = _ref.messages;\n return !!(Form_utils_getIn.unstable_getIn(touched, name) && Form_utils_getIn.unstable_getIn(messages, name));\n}\n\nvar unstable_useFormMessage = createHook.createHook({\n name: \"FormMessage\",\n compose: Role_Role.useRole,\n keys: __keys.FORM_MESSAGE_KEYS,\n useProps: function useProps(options, htmlProps) {\n var children = shouldShowError.shouldShowError(options, options.name) ? Form_utils_getIn.unstable_getIn(options.errors, options.name) : undefined;\n children = children || (shouldShowMessage(options, options.name) ? Form_utils_getIn.unstable_getIn(options.messages, options.name) : undefined);\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"alert\",\n id: shouldShowError.getMessageId(options.name, options.baseId),\n children: children\n }, htmlProps);\n }\n});\nvar unstable_FormMessage = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: unstable_useFormMessage\n});\n\nexports.unstable_FormMessage = unstable_FormMessage;\nexports.unstable_useFormMessage = unstable_useFormMessage;\n","var defineProperty = require(\"./defineProperty.js\");\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}\nmodule.exports = _objectSpread2, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('react');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nvar Composite_CompositeState = require('../Composite/CompositeState.js');\n\nfunction unstable_useGridState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var sealed = useSealedState.useSealedState(initialState);\n return Composite_CompositeState.useCompositeState(sealed);\n}\n\nexports.unstable_useGridState = unstable_useGridState;\n","function _toConsumableArray(arr) { if (Array.isArray(arr)) { for (var i = 0, arr2 = Array(arr.length); i < arr.length; i++) { arr2[i] = arr[i]; } return arr2; } else { return Array.from(arr); } }\n\n// Older browsers don't support event options, feature detect it.\n\n// Adopted and modified solution from Bohdan Didukh (2017)\n// https://stackoverflow.com/questions/41594997/ios-10-safari-prevent-scrolling-behind-a-fixed-overlay-and-maintain-scroll-posi\n\nvar hasPassiveEvents = false;\nif (typeof window !== 'undefined') {\n var passiveTestOptions = {\n get passive() {\n hasPassiveEvents = true;\n return undefined;\n }\n };\n window.addEventListener('testPassive', null, passiveTestOptions);\n window.removeEventListener('testPassive', null, passiveTestOptions);\n}\n\nvar isIosDevice = typeof window !== 'undefined' && window.navigator && window.navigator.platform && (/iP(ad|hone|od)/.test(window.navigator.platform) || window.navigator.platform === 'MacIntel' && window.navigator.maxTouchPoints > 1);\n\n\nvar locks = [];\nvar documentListenerAdded = false;\nvar initialClientY = -1;\nvar previousBodyOverflowSetting = void 0;\nvar previousBodyPaddingRight = void 0;\n\n// returns true if `el` should be allowed to receive touchmove events.\nvar allowTouchMove = function allowTouchMove(el) {\n return locks.some(function (lock) {\n if (lock.options.allowTouchMove && lock.options.allowTouchMove(el)) {\n return true;\n }\n\n return false;\n });\n};\n\nvar preventDefault = function preventDefault(rawEvent) {\n var e = rawEvent || window.event;\n\n // For the case whereby consumers adds a touchmove event listener to document.\n // Recall that we do document.addEventListener('touchmove', preventDefault, { passive: false })\n // in disableBodyScroll - so if we provide this opportunity to allowTouchMove, then\n // the touchmove event on document will break.\n if (allowTouchMove(e.target)) {\n return true;\n }\n\n // Do not prevent if the event has more than one touch (usually meaning this is a multi touch gesture like pinch to zoom).\n if (e.touches.length > 1) return true;\n\n if (e.preventDefault) e.preventDefault();\n\n return false;\n};\n\nvar setOverflowHidden = function setOverflowHidden(options) {\n // If previousBodyPaddingRight is already set, don't set it again.\n if (previousBodyPaddingRight === undefined) {\n var _reserveScrollBarGap = !!options && options.reserveScrollBarGap === true;\n var scrollBarGap = window.innerWidth - document.documentElement.clientWidth;\n\n if (_reserveScrollBarGap && scrollBarGap > 0) {\n previousBodyPaddingRight = document.body.style.paddingRight;\n document.body.style.paddingRight = scrollBarGap + 'px';\n }\n }\n\n // If previousBodyOverflowSetting is already set, don't set it again.\n if (previousBodyOverflowSetting === undefined) {\n previousBodyOverflowSetting = document.body.style.overflow;\n document.body.style.overflow = 'hidden';\n }\n};\n\nvar restoreOverflowSetting = function restoreOverflowSetting() {\n if (previousBodyPaddingRight !== undefined) {\n document.body.style.paddingRight = previousBodyPaddingRight;\n\n // Restore previousBodyPaddingRight to undefined so setOverflowHidden knows it\n // can be set again.\n previousBodyPaddingRight = undefined;\n }\n\n if (previousBodyOverflowSetting !== undefined) {\n document.body.style.overflow = previousBodyOverflowSetting;\n\n // Restore previousBodyOverflowSetting to undefined\n // so setOverflowHidden knows it can be set again.\n previousBodyOverflowSetting = undefined;\n }\n};\n\n// https://developer.mozilla.org/en-US/docs/Web/API/Element/scrollHeight#Problems_and_solutions\nvar isTargetElementTotallyScrolled = function isTargetElementTotallyScrolled(targetElement) {\n return targetElement ? targetElement.scrollHeight - targetElement.scrollTop <= targetElement.clientHeight : false;\n};\n\nvar handleScroll = function handleScroll(event, targetElement) {\n var clientY = event.targetTouches[0].clientY - initialClientY;\n\n if (allowTouchMove(event.target)) {\n return false;\n }\n\n if (targetElement && targetElement.scrollTop === 0 && clientY > 0) {\n // element is at the top of its scroll.\n return preventDefault(event);\n }\n\n if (isTargetElementTotallyScrolled(targetElement) && clientY < 0) {\n // element is at the bottom of its scroll.\n return preventDefault(event);\n }\n\n event.stopPropagation();\n return true;\n};\n\nexport var disableBodyScroll = function disableBodyScroll(targetElement, options) {\n // targetElement must be provided\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('disableBodyScroll unsuccessful - targetElement must be provided when calling disableBodyScroll on IOS devices.');\n return;\n }\n\n // disableBodyScroll must not have been called on this targetElement before\n if (locks.some(function (lock) {\n return lock.targetElement === targetElement;\n })) {\n return;\n }\n\n var lock = {\n targetElement: targetElement,\n options: options || {}\n };\n\n locks = [].concat(_toConsumableArray(locks), [lock]);\n\n if (isIosDevice) {\n targetElement.ontouchstart = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n initialClientY = event.targetTouches[0].clientY;\n }\n };\n targetElement.ontouchmove = function (event) {\n if (event.targetTouches.length === 1) {\n // detect single touch.\n handleScroll(event, targetElement);\n }\n };\n\n if (!documentListenerAdded) {\n document.addEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = true;\n }\n } else {\n setOverflowHidden(options);\n }\n};\n\nexport var clearAllBodyScrollLocks = function clearAllBodyScrollLocks() {\n if (isIosDevice) {\n // Clear all locks ontouchstart/ontouchmove handlers, and the references.\n locks.forEach(function (lock) {\n lock.targetElement.ontouchstart = null;\n lock.targetElement.ontouchmove = null;\n });\n\n if (documentListenerAdded) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = false;\n }\n\n // Reset initial clientY.\n initialClientY = -1;\n } else {\n restoreOverflowSetting();\n }\n\n locks = [];\n};\n\nexport var enableBodyScroll = function enableBodyScroll(targetElement) {\n if (!targetElement) {\n // eslint-disable-next-line no-console\n console.error('enableBodyScroll unsuccessful - targetElement must be provided when calling enableBodyScroll on IOS devices.');\n return;\n }\n\n locks = locks.filter(function (lock) {\n return lock.targetElement !== targetElement;\n });\n\n if (isIosDevice) {\n targetElement.ontouchstart = null;\n targetElement.ontouchmove = null;\n\n if (documentListenerAdded && locks.length === 0) {\n document.removeEventListener('touchmove', preventDefault, hasPassiveEvents ? { passive: false } : undefined);\n documentListenerAdded = false;\n }\n } else if (!locks.length) {\n restoreOverflowSetting();\n }\n};\n\n","/**\n * Check whether the given element is a text field, where text field is defined\n * by the ability to select within the input, or that it is contenteditable.\n *\n * @example\n * import { isTextField } from \"reakit-utils\";\n *\n * isTextField(document.querySelector(\"div\")); // false\n * isTextField(document.querySelector(\"input\")); // true\n * isTextField(document.querySelector(\"input[type='button']\")); // false\n * isTextField(document.querySelector(\"textarea\")); // true\n * isTextField(document.querySelector(\"div[contenteditable='true']\")); // true\n */\nfunction isTextField(element) {\n try {\n var isTextInput = element instanceof HTMLInputElement && element.selectionStart !== null;\n var isTextArea = element.tagName === \"TEXTAREA\";\n var isContentEditable = element.contentEditable === \"true\";\n return isTextInput || isTextArea || isContentEditable || false;\n } catch (error) {\n // Safari throws an exception when trying to get `selectionStart`\n // on non-text elements (which, understandably, don't\n // have the text selection API). We catch this via a try/catch\n // block, as opposed to a more explicit check of the element's\n // input types, because of Safari's non-standard behavior. This\n // also means we don't have to worry about the list of input\n // types that support `selectionStart` changing as the HTML spec\n // evolves over time.\n return false;\n }\n}\n\nexport { isTextField };\n","'use strict';\n\nfunction findFirstEnabledItem(items, excludeId) {\n if (excludeId) {\n return items.find(function (item) {\n return !item.disabled && item.id !== excludeId;\n });\n }\n\n return items.find(function (item) {\n return !item.disabled;\n });\n}\n\nfunction getCurrentId(options, passedId) {\n var _findFirstEnabledItem;\n\n if (passedId || passedId === null) {\n return passedId;\n }\n\n if (options.currentId || options.currentId === null) {\n return options.currentId;\n }\n\n return (_findFirstEnabledItem = findFirstEnabledItem(options.items || [])) === null || _findFirstEnabledItem === void 0 ? void 0 : _findFirstEnabledItem.id;\n}\n\nexports.findFirstEnabledItem = findFirstEnabledItem;\nexports.getCurrentId = getCurrentId;\n","var _typeof = require(\"./typeof.js\")[\"default\"];\nfunction _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}\nmodule.exports = _toPrimitive, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/removeIndexFromArray');\nrequire('reakit-utils/createEvent');\nvar Checkbox_Checkbox = require('../Checkbox/Checkbox.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nvar getLabelId = require('../getLabelId-eba7e47b.js');\nvar Form_utils_getIn = require('./utils/getIn.js');\nvar shouldShowError = require('../shouldShowError-880a39c9.js');\n\nvar unstable_useFormCheckbox = createHook.createHook({\n name: \"FormCheckbox\",\n compose: Checkbox_Checkbox.useCheckbox,\n keys: __keys.FORM_CHECKBOX_KEYS,\n useOptions: function useOptions(options, htmlProps) {\n var name = options.name || htmlProps.name;\n var value = typeof options.value !== \"undefined\" ? options.value : htmlProps.value;\n var state = Form_utils_getIn.unstable_getIn(options.values, name);\n\n var setState = function setState(val) {\n return options.update(name, val);\n };\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n state: state,\n setState: setState,\n name: name,\n value: value\n });\n },\n useProps: function useProps(options, _ref) {\n var htmlOnBlur = _ref.onBlur,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onBlur\"]);\n\n var onBlurRef = useLiveRef.useLiveRef(htmlOnBlur);\n var isBoolean = typeof options.value === \"undefined\";\n var onBlur = React.useCallback(function (event) {\n var _onBlurRef$current, _options$blur;\n\n (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);\n if (event.defaultPrevented) return;\n (_options$blur = options.blur) === null || _options$blur === void 0 ? void 0 : _options$blur.call(options, options.name);\n }, [options.blur, options.name]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({\n \"aria-invalid\": shouldShowError.shouldShowError(options, options.name),\n name: getInputId.formatInputName(options.name),\n onBlur: onBlur\n }, isBoolean ? {\n id: getInputId.getInputId(options.name, options.baseId),\n \"aria-describedby\": shouldShowError.getMessageId(options.name, options.baseId),\n \"aria-labelledby\": getLabelId.getLabelId(options.name, options.baseId)\n } : {}), htmlProps);\n }\n});\nvar unstable_FormCheckbox = createComponent.createComponent({\n as: \"input\",\n memo: true,\n useHook: unstable_useFormCheckbox\n});\n\nexports.unstable_FormCheckbox = unstable_FormCheckbox;\nexports.unstable_useFormCheckbox = unstable_useFormCheckbox;\n","import { useState } from 'react';\n\n/**\n * React custom hook that returns the very first value passed to `initialState`,\n * even if it changes between re-renders.\n */\nfunction useSealedState(initialState) {\n var _React$useState = useState(initialState),\n sealed = _React$useState[0];\n\n return sealed;\n}\n\nexport { useSealedState };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nvar hasFocusWithin = require('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('../Composite/CompositeItem.js');\nrequire('reakit-utils/removeItemFromArray');\nvar MenuContext = require('../MenuContext-2d32bb3e.js');\nvar contains = require('reakit-utils/contains');\nvar __keys = require('../__keys-087914ef.js');\nvar findVisibleSubmenu = require('../findVisibleSubmenu-d8b7eeab.js');\n\nfunction getTriangleArea(a, b, c) {\n return Math.abs((a.x * (b.y - c.y) + b.x * (c.y - a.y) + c.x * (a.y - b.y)) / 2);\n}\n\nfunction isPointInTriangle(point, a, b, c) {\n var A = getTriangleArea(a, b, c);\n var A1 = getTriangleArea(point, b, c);\n var A2 = getTriangleArea(a, point, c);\n var A3 = getTriangleArea(a, b, point);\n return A === A1 + A2 + A3;\n}\n\nfunction getSubmenuAnchorPoints(event, visibleSubmenu) {\n var _visibleSubmenu$getBo = visibleSubmenu.getBoundingClientRect(),\n top = _visibleSubmenu$getBo.top,\n right = _visibleSubmenu$getBo.right,\n bottom = _visibleSubmenu$getBo.bottom,\n left = _visibleSubmenu$getBo.left; // If left is bigger than mouse's clientX, than the submenu is visible on\n // the left side\n\n\n var x = left > event.clientX ? left : right;\n return [{\n x: x,\n y: top\n }, {\n x: x,\n y: bottom\n }];\n}\n\nfunction useTransitToSubmenu(menu, htmlOnMouseEnter) {\n var onMouseEnterRef = useLiveRef.useLiveRef(htmlOnMouseEnter);\n var enterPointRef = React.useRef(null);\n var submenuTopPointRef = React.useRef(null);\n var submenuBottomPointRef = React.useRef(null);\n var previousClientX = React.useRef(0);\n var previousClientY = React.useRef(0);\n var assignSubmenuAnchorPoints = React.useCallback(function (event) {\n if (!(menu !== null && menu !== void 0 && menu.children.length)) return;\n submenuTopPointRef.current = null;\n submenuBottomPointRef.current = null;\n var visibleSubmenu = findVisibleSubmenu.findVisibleSubmenu(menu.children);\n if (!visibleSubmenu) return;\n\n var _getSubmenuAnchorPoin = getSubmenuAnchorPoints(event, visibleSubmenu);\n\n submenuTopPointRef.current = _getSubmenuAnchorPoin[0];\n submenuBottomPointRef.current = _getSubmenuAnchorPoin[1];\n }, [menu === null || menu === void 0 ? void 0 : menu.children]);\n var isMouseInTransitToSubmenu = React.useCallback(function (event) {\n var isMoving = previousClientX.current !== event.clientX || previousClientY.current !== event.clientY;\n\n if (event.isTrusted && !isMoving) {\n // Safari sometimes triggers mousemove without a mouse movement\n return true;\n }\n\n var movementX = Math.abs(previousClientX.current - event.clientX);\n previousClientX.current = event.clientX;\n previousClientY.current = event.clientY;\n\n var hasAnchorPoints = function hasAnchorPoints() {\n return submenuTopPointRef.current && submenuBottomPointRef.current;\n };\n\n if (event.type === \"mouseleave\" && !hasAnchorPoints()) {\n assignSubmenuAnchorPoints(event);\n }\n\n if (!hasAnchorPoints()) return false;\n return movementX && enterPointRef.current && isPointInTriangle({\n x: event.clientX,\n y: event.clientY\n }, enterPointRef.current, submenuTopPointRef.current, submenuBottomPointRef.current);\n }, [assignSubmenuAnchorPoints]);\n var onMouseEnter = React.useCallback(function (event) {\n var _onMouseEnterRef$curr;\n\n (_onMouseEnterRef$curr = onMouseEnterRef.current) === null || _onMouseEnterRef$curr === void 0 ? void 0 : _onMouseEnterRef$curr.call(onMouseEnterRef, event);\n if (event.defaultPrevented) return;\n if ((menu === null || menu === void 0 ? void 0 : menu.role) === \"menubar\") return;\n enterPointRef.current = {\n x: event.clientX,\n y: event.clientY\n };\n assignSubmenuAnchorPoints(event);\n }, [menu === null || menu === void 0 ? void 0 : menu.role, assignSubmenuAnchorPoints]);\n return {\n onMouseEnter: onMouseEnter,\n isMouseInTransitToSubmenu: isMouseInTransitToSubmenu\n };\n}\n\nfunction getMouseDestination(event) {\n var relatedTarget = event.relatedTarget;\n\n if ((relatedTarget === null || relatedTarget === void 0 ? void 0 : relatedTarget.nodeType) === Node.ELEMENT_NODE) {\n return event.relatedTarget;\n } // IE 11\n\n\n return event.toElement || null;\n}\n\nfunction hoveringInside(event) {\n var nextElement = getMouseDestination(event);\n if (!nextElement) return false;\n return contains.contains(event.currentTarget, nextElement);\n}\n\nfunction hoveringExpandedMenu(event, children) {\n if (!(children !== null && children !== void 0 && children.length)) return false;\n var nextElement = getMouseDestination(event);\n if (!nextElement) return false;\n var visibleSubmenu = findVisibleSubmenu.findVisibleSubmenu(children);\n return visibleSubmenu && contains.contains(visibleSubmenu, nextElement);\n}\n\nfunction hoveringAnotherMenuItem(event, items) {\n var nextElement = getMouseDestination(event);\n if (!nextElement) return false;\n return items === null || items === void 0 ? void 0 : items.some(function (item) {\n return item.ref.current && contains.contains(item.ref.current, nextElement);\n });\n}\n\nvar useMenuItem = createHook.createHook({\n name: \"MenuItem\",\n compose: Composite_CompositeItem.useCompositeItem,\n keys: __keys.MENU_ITEM_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n var prevPopoverStyles = prev.unstable_popoverStyles,\n prevArrowStyles = prev.unstable_arrowStyles,\n prevVisible = prev.visible,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"unstable_popoverStyles\", \"unstable_arrowStyles\", \"visible\"]);\n\n var nextPopoverStyles = next.unstable_popoverStyles,\n nextArrowStyles = next.unstable_arrowStyles,\n nextVisible = next.visible,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"unstable_popoverStyles\", \"unstable_arrowStyles\", \"visible\"]);\n\n return Composite_CompositeItem.useCompositeItem.unstable_propsAreEqual(prevProps, nextProps);\n },\n useProps: function useProps(options, _ref) {\n var htmlOnMouseEnter = _ref.onMouseEnter,\n htmlOnMouseMove = _ref.onMouseMove,\n htmlOnMouseLeave = _ref.onMouseLeave,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onMouseEnter\", \"onMouseMove\", \"onMouseLeave\"]);\n\n var menu = React.useContext(MenuContext.MenuContext);\n var onMouseMoveRef = useLiveRef.useLiveRef(htmlOnMouseMove);\n var onMouseLeaveRef = useLiveRef.useLiveRef(htmlOnMouseLeave);\n\n var _useTransitToSubmenu = useTransitToSubmenu(menu, htmlOnMouseEnter),\n onMouseEnter = _useTransitToSubmenu.onMouseEnter,\n isMouseInTransitToSubmenu = _useTransitToSubmenu.isMouseInTransitToSubmenu;\n\n var onMouseMove = React.useCallback(function (event) {\n var _onMouseMoveRef$curre, _options$move;\n\n (_onMouseMoveRef$curre = onMouseMoveRef.current) === null || _onMouseMoveRef$curre === void 0 ? void 0 : _onMouseMoveRef$curre.call(onMouseMoveRef, event);\n if (event.defaultPrevented) return;\n if ((menu === null || menu === void 0 ? void 0 : menu.role) === \"menubar\") return;\n if (isMouseInTransitToSubmenu(event)) return;\n if (hasFocusWithin.hasFocusWithin(event.currentTarget)) return;\n (_options$move = options.move) === null || _options$move === void 0 ? void 0 : _options$move.call(options, event.currentTarget.id);\n }, [options.move]);\n var onMouseLeave = React.useCallback(function (event) {\n var _onMouseLeaveRef$curr;\n\n (_onMouseLeaveRef$curr = onMouseLeaveRef.current) === null || _onMouseLeaveRef$curr === void 0 ? void 0 : _onMouseLeaveRef$curr.call(onMouseLeaveRef, event);\n if (event.defaultPrevented) return;\n if ((menu === null || menu === void 0 ? void 0 : menu.role) === \"menubar\") return;\n if (hoveringInside(event)) return; // If this item is a menu disclosure and mouse is leaving it to focus\n // its respective submenu, we don't want to do anything.\n\n if (hoveringExpandedMenu(event, menu === null || menu === void 0 ? void 0 : menu.children)) return; // Move focus to menu after blurring\n\n if (!hoveringAnotherMenuItem(event, options.items)) {\n var _options$move2;\n\n if (isMouseInTransitToSubmenu(event)) return;\n (_options$move2 = options.move) === null || _options$move2 === void 0 ? void 0 : _options$move2.call(options, null);\n }\n }, [menu === null || menu === void 0 ? void 0 : menu.role, menu === null || menu === void 0 ? void 0 : menu.children, options.items, options.move]);\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"menuitem\",\n onMouseEnter: onMouseEnter,\n onMouseMove: onMouseMove,\n onMouseLeave: onMouseLeave\n }, htmlProps);\n }\n});\nvar MenuItem = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useMenuItem\n});\n\nexports.MenuItem = MenuItem;\nexports.useMenuItem = useMenuItem;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Role_Role = require('../Role/Role.js');\n\n// Automatically generated\nvar VISUALLY_HIDDEN_KEYS = [];\n\nvar useVisuallyHidden = createHook.createHook({\n name: \"VisuallyHidden\",\n compose: Role_Role.useRole,\n keys: VISUALLY_HIDDEN_KEYS,\n useProps: function useProps(_, _ref) {\n var htmlStyle = _ref.style,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"style\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n style: _rollupPluginBabelHelpers._objectSpread2({\n border: 0,\n clip: \"rect(0 0 0 0)\",\n height: \"1px\",\n margin: \"-1px\",\n overflow: \"hidden\",\n padding: 0,\n position: \"absolute\",\n whiteSpace: \"nowrap\",\n width: \"1px\"\n }, htmlStyle)\n }, htmlProps);\n }\n});\nvar VisuallyHidden = createComponent.createComponent({\n as: \"span\",\n memo: true,\n useHook: useVisuallyHidden\n});\n\nexports.VisuallyHidden = VisuallyHidden;\nexports.useVisuallyHidden = useVisuallyHidden;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('react');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nvar Composite_CompositeState = require('../Composite/CompositeState.js');\nvar ComboboxBaseState = require('../ComboboxBaseState-cfd43319.js');\n\nfunction unstable_useComboboxListState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$curre = _useSealedState.currentId,\n currentId = _useSealedState$curre === void 0 ? null : _useSealedState$curre,\n _useSealedState$orien = _useSealedState.orientation,\n orientation = _useSealedState$orien === void 0 ? \"vertical\" : _useSealedState$orien,\n _useSealedState$loop = _useSealedState.loop,\n loop = _useSealedState$loop === void 0 ? true : _useSealedState$loop,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"currentId\", \"orientation\", \"loop\"]);\n\n var composite = Composite_CompositeState.useCompositeState(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({\n currentId: currentId,\n orientation: orientation,\n loop: loop\n }, sealed), {}, {\n unstable_virtual: true,\n unstable_includesBaseElement: true\n }));\n return ComboboxBaseState.useComboboxBaseState(composite, sealed);\n}\n\nexports.unstable_useComboboxListState = unstable_useComboboxListState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('../Composite/CompositeItem.js');\nvar __keys = require('../__keys-f590d919.js');\n\nfunction useTabPanelId(options) {\n return React.useMemo(function () {\n var _options$panels, _options$panels$find;\n\n return ((_options$panels = options.panels) === null || _options$panels === void 0 ? void 0 : (_options$panels$find = _options$panels.find(function (panel) {\n return panel.groupId === options.id;\n })) === null || _options$panels$find === void 0 ? void 0 : _options$panels$find.id) || undefined;\n }, [options.panels, options.id]);\n}\n\nvar useTab = createHook.createHook({\n name: \"Tab\",\n compose: Composite_CompositeItem.useCompositeItem,\n keys: __keys.TAB_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$focusable = _ref.focusable,\n focusable = _ref$focusable === void 0 ? true : _ref$focusable,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"focusable\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n focusable: focusable\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlOnClick = _ref2.onClick,\n htmlOnFocus = _ref2.onFocus,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"onClick\", \"onFocus\"]);\n\n var selected = options.selectedId === options.id;\n var tabPanelId = useTabPanelId(options);\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var onFocusRef = useLiveRef.useLiveRef(htmlOnFocus);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current, _options$select;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n if (options.disabled) return;\n if (!options.id) return;\n if (selected) return;\n (_options$select = options.select) === null || _options$select === void 0 ? void 0 : _options$select.call(options, options.id);\n }, [options.disabled, selected, options.select, options.id]);\n var onFocus = React.useCallback(function (event) {\n var _onFocusRef$current, _options$select2;\n\n (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);\n if (event.defaultPrevented) return;\n if (options.disabled) return;\n if (options.manual) return;\n if (!options.id) return;\n if (selected) return;\n (_options$select2 = options.select) === null || _options$select2 === void 0 ? void 0 : _options$select2.call(options, options.id);\n }, [options.id, options.disabled, options.manual, selected, options.select]);\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"tab\",\n \"aria-selected\": selected,\n \"aria-controls\": tabPanelId,\n onClick: onClick,\n onFocus: onFocus\n }, htmlProps);\n }\n});\nvar Tab = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useTab\n});\n\nexports.Tab = Tab;\nexports.useTab = useTab;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar Clickable_Clickable = require('../Clickable/Clickable.js');\nvar removeIndexFromArray = require('reakit-utils/removeIndexFromArray');\nvar createEvent = require('reakit-utils/createEvent');\n\n// Automatically generated\nvar CHECKBOX_STATE_KEYS = [\"state\", \"setState\"];\nvar CHECKBOX_KEYS = [].concat(CHECKBOX_STATE_KEYS, [\"value\", \"checked\"]);\n\nfunction getChecked(options) {\n if (typeof options.checked !== \"undefined\") {\n return options.checked;\n }\n\n if (typeof options.value === \"undefined\") {\n return !!options.state;\n }\n\n var state = Array.isArray(options.state) ? options.state : [];\n return state.indexOf(options.value) !== -1;\n}\n\nfunction fireChange(element, onChange) {\n var event = createEvent.createEvent(element, \"change\");\n Object.defineProperties(event, {\n type: {\n value: \"change\"\n },\n target: {\n value: element\n },\n currentTarget: {\n value: element\n }\n });\n onChange === null || onChange === void 0 ? void 0 : onChange(event);\n}\n\nfunction useIndeterminateState(ref, options) {\n React.useEffect(function () {\n var element = ref.current;\n\n if (!element) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(options.state === \"indeterminate\", \"Can't set indeterminate state because `ref` wasn't passed to component.\", \"See https://reakit.io/docs/checkbox/#indeterminate-state\") : void 0;\n return;\n }\n\n if (options.state === \"indeterminate\") {\n element.indeterminate = true;\n } else if (element.indeterminate) {\n element.indeterminate = false;\n }\n }, [options.state, ref]);\n}\n\nvar useCheckbox = createHook.createHook({\n name: \"Checkbox\",\n compose: Clickable_Clickable.useClickable,\n keys: CHECKBOX_KEYS,\n useOptions: function useOptions(_ref, _ref2) {\n var value = _ref2.value,\n checked = _ref2.checked;\n\n var _ref$unstable_clickOn = _ref.unstable_clickOnEnter,\n unstable_clickOnEnter = _ref$unstable_clickOn === void 0 ? false : _ref$unstable_clickOn,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"unstable_clickOnEnter\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n unstable_clickOnEnter: unstable_clickOnEnter,\n value: value,\n checked: getChecked(_rollupPluginBabelHelpers._objectSpread2({\n checked: checked\n }, options))\n }, options);\n },\n useProps: function useProps(options, _ref3) {\n var htmlRef = _ref3.ref,\n htmlOnChange = _ref3.onChange,\n htmlOnClick = _ref3.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref3, [\"ref\", \"onChange\", \"onClick\"]);\n\n var ref = React.useRef(null);\n\n var _React$useState = React.useState(true),\n isNativeCheckbox = _React$useState[0],\n setIsNativeCheckbox = _React$useState[1];\n\n var onChangeRef = useLiveRef.useLiveRef(htmlOnChange);\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n React.useEffect(function () {\n var element = ref.current;\n\n if (!element) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't determine whether the element is a native checkbox because `ref` wasn't passed to the component\", \"See https://reakit.io/docs/checkbox\") : void 0;\n return;\n }\n\n if (element.tagName !== \"INPUT\" || element.type !== \"checkbox\") {\n setIsNativeCheckbox(false);\n }\n }, []);\n useIndeterminateState(ref, options);\n var onChange = React.useCallback(function (event) {\n var element = event.currentTarget;\n\n if (options.disabled) {\n event.stopPropagation();\n event.preventDefault();\n return;\n }\n\n if (onChangeRef.current) {\n // If component is NOT rendered as a native input, it will not have\n // the `checked` property. So we assign it for consistency.\n if (!isNativeCheckbox) {\n element.checked = !element.checked;\n }\n\n onChangeRef.current(event);\n }\n\n if (!options.setState) return;\n\n if (typeof options.value === \"undefined\") {\n options.setState(!options.checked);\n } else {\n var state = Array.isArray(options.state) ? options.state : [];\n var index = state.indexOf(options.value);\n\n if (index === -1) {\n options.setState([].concat(state, [options.value]));\n } else {\n options.setState(removeIndexFromArray.removeIndexFromArray(state, index));\n }\n }\n }, [options.disabled, isNativeCheckbox, options.setState, options.value, options.checked, options.state]);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n if (isNativeCheckbox) return;\n fireChange(event.currentTarget, onChange);\n }, [isNativeCheckbox, onChange]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n role: !isNativeCheckbox ? \"checkbox\" : undefined,\n type: isNativeCheckbox ? \"checkbox\" : undefined,\n value: isNativeCheckbox ? options.value : undefined,\n checked: options.checked,\n \"aria-checked\": options.state === \"indeterminate\" ? \"mixed\" : options.checked,\n onChange: onChange,\n onClick: onClick\n }, htmlProps);\n }\n});\nvar Checkbox = createComponent.createComponent({\n as: \"input\",\n memo: true,\n useHook: useCheckbox\n});\n\nexports.Checkbox = Checkbox;\nexports.useCheckbox = useCheckbox;\n","var buttonInputTypes = [\"button\", \"color\", \"file\", \"image\", \"reset\", \"submit\"];\n/**\n * Checks whether `element` is a native HTML button element.\n *\n * @example\n * import { isButton } from \"reakit-utils\";\n *\n * isButton(document.querySelector(\"button\")); // true\n * isButton(document.querySelector(\"input[type='button']\")); // true\n * isButton(document.querySelector(\"div\")); // false\n * isButton(document.querySelector(\"input[type='text']\")); // false\n * isButton(document.querySelector(\"div[role='button']\")); // false\n *\n * @returns {boolean}\n */\n\nfunction isButton(element) {\n if (element.tagName === \"BUTTON\") return true;\n\n if (element.tagName === \"INPUT\") {\n var input = element;\n return buttonInputTypes.indexOf(input.type) !== -1;\n }\n\n return false;\n}\n\nexport { isButton };\n","'use strict';\n\nfunction findVisibleSubmenu(submenus) {\n var visibleSubmenu = submenus === null || submenus === void 0 ? void 0 : submenus.find(function (submenu) {\n return submenu.current && !submenu.current.hidden;\n });\n return visibleSubmenu === null || visibleSubmenu === void 0 ? void 0 : visibleSubmenu.current;\n}\n\nexports.findVisibleSubmenu = findVisibleSubmenu;\n","'use strict';\n\nvar getInputId = require('./getInputId-cbd3bbcc.js');\n\nfunction getPushButtonId(name, baseId) {\n return getInputId.getInputId(name, baseId, \"-push\");\n}\n\nexports.getPushButtonId = getPushButtonId;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nvar isButton = require('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar Clickable_Clickable = require('../Clickable/Clickable.js');\n\n// Automatically generated\nvar BUTTON_KEYS = [];\n\nvar useButton = createHook.createHook({\n name: \"Button\",\n compose: Clickable_Clickable.useClickable,\n keys: BUTTON_KEYS,\n useProps: function useProps(_, _ref) {\n var htmlRef = _ref.ref,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\"]);\n\n var ref = React.useRef(null);\n\n var _React$useState = React.useState(undefined),\n role = _React$useState[0],\n setRole = _React$useState[1];\n\n var _React$useState2 = React.useState(\"button\"),\n type = _React$useState2[0],\n setType = _React$useState2[1];\n\n React.useEffect(function () {\n var element = ref.current;\n\n if (!element) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't determine whether the element is a native button because `ref` wasn't passed to the component\", \"See https://reakit.io/docs/button\") : void 0;\n return;\n }\n\n if (!isButton.isButton(element)) {\n if (element.tagName !== \"A\") {\n setRole(\"button\");\n }\n\n setType(undefined);\n }\n }, []);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n role: role,\n type: type\n }, htmlProps);\n }\n});\nvar Button = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useButton\n});\n\nexports.Button = Button;\nexports.useButton = useButton;\n","'use strict';\n\n// Automatically generated\nvar RADIO_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"unstable_virtual\", \"rtl\", \"orientation\", \"items\", \"groups\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_moves\", \"unstable_hasActiveWidget\", \"unstable_includesBaseElement\", \"state\", \"setBaseId\", \"registerItem\", \"unregisterItem\", \"registerGroup\", \"unregisterGroup\", \"move\", \"next\", \"previous\", \"up\", \"down\", \"first\", \"last\", \"sort\", \"unstable_setVirtual\", \"setRTL\", \"setOrientation\", \"setCurrentId\", \"setLoop\", \"setWrap\", \"setShift\", \"reset\", \"unstable_setIncludesBaseElement\", \"unstable_setHasActiveWidget\", \"setState\"];\nvar RADIO_KEYS = [].concat(RADIO_STATE_KEYS, [\"value\", \"checked\", \"unstable_checkOnFocus\"]);\nvar RADIO_GROUP_KEYS = RADIO_STATE_KEYS;\n\nexports.RADIO_GROUP_KEYS = RADIO_GROUP_KEYS;\nexports.RADIO_KEYS = RADIO_KEYS;\n","/**\n * Ponyfill for `Element.prototype.matches`\n *\n * @see https://developer.mozilla.org/en-US/docs/Web/API/Element/matches\n */\nfunction matches(element, selectors) {\n if (\"matches\" in element) {\n return element.matches(selectors);\n }\n\n if (\"msMatchesSelector\" in element) {\n return element.msMatchesSelector(selectors);\n }\n\n return element.webkitMatchesSelector(selectors);\n}\n\nexport { matches };\n","/*\nCopyright (c) 2014, Yahoo! Inc. All rights reserved.\nCopyrights licensed under the New BSD License.\nSee the accompanying LICENSE file for terms.\n*/\n\n'use strict';\n\nvar randomBytes = require('randombytes');\n\n// Generate an internal UID to make the regexp pattern harder to guess.\nvar UID_LENGTH = 16;\nvar UID = generateUID();\nvar PLACE_HOLDER_REGEXP = new RegExp('(\\\\\\\\)?\"@__(F|R|D|M|S|A|U|I|B)-' + UID + '-(\\\\d+)__@\"', 'g');\n\nvar IS_NATIVE_CODE_REGEXP = /\\{\\s*\\[native code\\]\\s*\\}/g;\nvar IS_PURE_FUNCTION = /function.*?\\(/;\nvar IS_ARROW_FUNCTION = /.*?=>.*?/;\nvar UNSAFE_CHARS_REGEXP = /[<>\\/\\u2028\\u2029]/g;\n\nvar RESERVED_SYMBOLS = ['*', 'async'];\n\n// Mapping of unsafe HTML and invalid JavaScript line terminator chars to their\n// Unicode char counterparts which are safe to use in JavaScript strings.\nvar ESCAPED_CHARS = {\n '<' : '\\\\u003C',\n '>' : '\\\\u003E',\n '/' : '\\\\u002F',\n '\\u2028': '\\\\u2028',\n '\\u2029': '\\\\u2029'\n};\n\nfunction escapeUnsafeChars(unsafeChar) {\n return ESCAPED_CHARS[unsafeChar];\n}\n\nfunction generateUID() {\n var bytes = randomBytes(UID_LENGTH);\n var result = '';\n for(var i=0; i arg1+5\n if(IS_ARROW_FUNCTION.test(serializedFn)) {\n return serializedFn;\n }\n\n var argsStartsAt = serializedFn.indexOf('(');\n var def = serializedFn.substr(0, argsStartsAt)\n .trim()\n .split(' ')\n .filter(function(val) { return val.length > 0 });\n\n var nonReservedSymbols = def.filter(function(val) {\n return RESERVED_SYMBOLS.indexOf(val) === -1\n });\n\n // enhanced literal objects, example: {key() {}}\n if(nonReservedSymbols.length > 0) {\n return (def.indexOf('async') > -1 ? 'async ' : '') + 'function'\n + (def.join('').indexOf('*') > -1 ? '*' : '')\n + serializedFn.substr(argsStartsAt);\n }\n\n // arrow functions\n return serializedFn;\n }\n\n // Check if the parameter is function\n if (options.ignoreFunction && typeof obj === \"function\") {\n obj = undefined;\n }\n // Protects against `JSON.stringify()` returning `undefined`, by serializing\n // to the literal string: \"undefined\".\n if (obj === undefined) {\n return String(obj);\n }\n\n var str;\n\n // Creates a JSON string representation of the value.\n // NOTE: Node 0.12 goes into slow mode with extra JSON.stringify() args.\n if (options.isJSON && !options.space) {\n str = JSON.stringify(obj);\n } else {\n str = JSON.stringify(obj, options.isJSON ? null : replacer, options.space);\n }\n\n // Protects against `JSON.stringify()` returning `undefined`, by serializing\n // to the literal string: \"undefined\".\n if (typeof str !== 'string') {\n return String(str);\n }\n\n // Replace unsafe HTML and invalid JavaScript line terminator chars with\n // their safe Unicode char counterpart. This _must_ happen before the\n // regexps and functions are serialized and added back to the string.\n if (options.unsafe !== true) {\n str = str.replace(UNSAFE_CHARS_REGEXP, escapeUnsafeChars);\n }\n\n if (functions.length === 0 && regexps.length === 0 && dates.length === 0 && maps.length === 0 && sets.length === 0 && arrays.length === 0 && undefs.length === 0 && infinities.length === 0 && bigInts.length === 0) {\n return str;\n }\n\n // Replaces all occurrences of function, regexp, date, map and set placeholders in the\n // JSON string with their string representations. If the original value can\n // not be found, then `undefined` is used.\n return str.replace(PLACE_HOLDER_REGEXP, function (match, backSlash, type, valueIndex) {\n // The placeholder may not be preceded by a backslash. This is to prevent\n // replacing things like `\"a\\\"@__R--0__@\"` and thus outputting\n // invalid JS.\n if (backSlash) {\n return match;\n }\n\n if (type === 'D') {\n return \"new Date(\\\"\" + dates[valueIndex].toISOString() + \"\\\")\";\n }\n\n if (type === 'R') {\n return \"new RegExp(\" + serialize(regexps[valueIndex].source) + \", \\\"\" + regexps[valueIndex].flags + \"\\\")\";\n }\n\n if (type === 'M') {\n return \"new Map(\" + serialize(Array.from(maps[valueIndex].entries()), options) + \")\";\n }\n\n if (type === 'S') {\n return \"new Set(\" + serialize(Array.from(sets[valueIndex].values()), options) + \")\";\n }\n\n if (type === 'A') {\n return \"Array.prototype.slice.call(\" + serialize(Object.assign({ length: arrays[valueIndex].length }, arrays[valueIndex]), options) + \")\";\n }\n\n if (type === 'U') {\n return 'undefined'\n }\n\n if (type === 'I') {\n return infinities[valueIndex];\n }\n\n if (type === 'B') {\n return \"BigInt(\\\"\" + bigInts[valueIndex] + \"\\\")\";\n }\n\n var fn = functions[valueIndex];\n\n return serializeFunc(fn);\n });\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nvar hasFocusWithin = require('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('../Button/Button.js');\nrequire('../__keys-f41a441b.js');\nrequire('reakit-utils/removeItemFromArray');\nvar MenuContext = require('../MenuContext-2d32bb3e.js');\nrequire('../__keys-0c8e6398.js');\nrequire('../__keys-eddd3051.js');\nrequire('../Disclosure/Disclosure.js');\nrequire('../Dialog/DialogDisclosure.js');\nvar __keys = require('../__keys-087914ef.js');\nvar Popover_PopoverDisclosure = require('../Popover/PopoverDisclosure.js');\nvar findVisibleSubmenu = require('../findVisibleSubmenu-d8b7eeab.js');\n\nvar noop = function noop() {};\n\nvar useMenuButton = createHook.createHook({\n name: \"MenuButton\",\n compose: Popover_PopoverDisclosure.usePopoverDisclosure,\n keys: __keys.MENU_BUTTON_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n var prevPopoverStyles = prev.unstable_popoverStyles,\n prevArrowStyles = prev.unstable_arrowStyles,\n prevCurrentId = prev.currentId,\n prevMoves = prev.unstable_moves,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"unstable_popoverStyles\", \"unstable_arrowStyles\", \"currentId\", \"unstable_moves\"]);\n\n var nextPopoverStyles = next.unstable_popoverStyles,\n nextArrowStyles = next.unstable_arrowStyles,\n nextCurrentId = next.currentId,\n nextMoves = next.unstable_moves,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"unstable_popoverStyles\", \"unstable_arrowStyles\", \"currentId\", \"unstable_moves\"]);\n\n return Popover_PopoverDisclosure.usePopoverDisclosure.unstable_propsAreEqual(prevProps, nextProps);\n },\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlOnClick = _ref.onClick,\n htmlOnKeyDown = _ref.onKeyDown,\n htmlOnFocus = _ref.onFocus,\n htmlOnMouseEnter = _ref.onMouseEnter,\n htmlOnMouseDown = _ref.onMouseDown,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\", \"onClick\", \"onKeyDown\", \"onFocus\", \"onMouseEnter\", \"onMouseDown\"]);\n\n var parent = React.useContext(MenuContext.MenuContext);\n var ref = React.useRef(null);\n var hasPressedMouse = React.useRef(false);\n\n var _options$placement$sp = options.placement.split(\"-\"),\n dir = _options$placement$sp[0];\n\n var hasParent = !!parent;\n var parentIsMenuBar = (parent === null || parent === void 0 ? void 0 : parent.role) === \"menubar\";\n var disabled = options.disabled || htmlProps[\"aria-disabled\"];\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var onFocusRef = useLiveRef.useLiveRef(htmlOnFocus);\n var onMouseEnterRef = useLiveRef.useLiveRef(htmlOnMouseEnter);\n var onMouseDownRef = useLiveRef.useLiveRef(htmlOnMouseDown);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current;\n\n if (event.key === \"Escape\") {\n var _options$hide;\n\n // Doesn't prevent default on Escape, otherwise we can't close\n // dialogs when MenuButton is focused\n (_options$hide = options.hide) === null || _options$hide === void 0 ? void 0 : _options$hide.call(options);\n } else if (!disabled) {\n // setTimeout prevents scroll jump\n var first = options.first && function () {\n return setTimeout(options.first);\n };\n\n var last = options.last && function () {\n return setTimeout(options.last);\n };\n\n var keyMap = {\n Enter: first,\n \" \": first,\n ArrowUp: (dir === \"top\" || dir === \"bottom\") && last,\n ArrowRight: dir === \"right\" && first,\n ArrowDown: (dir === \"bottom\" || dir === \"top\") && first,\n ArrowLeft: dir === \"left\" && first\n };\n var action = keyMap[event.key];\n\n if (action) {\n var _options$show;\n\n event.preventDefault();\n event.stopPropagation();\n (_options$show = options.show) === null || _options$show === void 0 ? void 0 : _options$show.call(options);\n action();\n return;\n }\n }\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);\n }, [disabled, options.hide, options.first, options.last, dir, options.show]);\n var onMouseEnter = React.useCallback(function (event) {\n var _onMouseEnterRef$curr;\n\n (_onMouseEnterRef$curr = onMouseEnterRef.current) === null || _onMouseEnterRef$curr === void 0 ? void 0 : _onMouseEnterRef$curr.call(onMouseEnterRef, event);\n if (event.defaultPrevented) return; // MenuButton's don't do anything on mouse over when they aren't\n // cointained within a Menu/MenuBar\n\n if (!parent) return;\n var element = event.currentTarget;\n\n if (parentIsMenuBar) {\n // if MenuButton is an item inside a MenuBar, it'll only open\n // if there's already another sibling expanded MenuButton\n if (findVisibleSubmenu.findVisibleSubmenu(parent.children)) {\n element.focus();\n }\n } else {\n // If it's in a Menu, open after a short delay\n // TODO: Make the delay a prop?\n setTimeout(function () {\n if (hasFocusWithin.hasFocusWithin(element)) {\n var _options$show2;\n\n (_options$show2 = options.show) === null || _options$show2 === void 0 ? void 0 : _options$show2.call(options);\n }\n }, 200);\n }\n }, [parent, parentIsMenuBar, options.show]);\n var onMouseDown = React.useCallback(function (event) {\n var _onMouseDownRef$curre;\n\n // When in menu bar, the menu button can be activated either by focus\n // or click, but we don't want both to trigger sequentially.\n // Otherwise, onClick would toggle (hide) the menu right after it got\n // shown on focus.\n // This is also useful so we know if the menu button has been clicked\n // using mouse or keyboard. On mouse click, we don't automatically\n // focus the first menu item.\n hasPressedMouse.current = true;\n (_onMouseDownRef$curre = onMouseDownRef.current) === null || _onMouseDownRef$curre === void 0 ? void 0 : _onMouseDownRef$curre.call(onMouseDownRef, event);\n }, []);\n var onFocus = React.useCallback(function (event) {\n var _onFocusRef$current;\n\n (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);\n if (event.defaultPrevented) return;\n if (disabled) return;\n\n if (parentIsMenuBar && !hasPressedMouse.current) {\n var _options$show3;\n\n (_options$show3 = options.show) === null || _options$show3 === void 0 ? void 0 : _options$show3.call(options);\n }\n }, [parentIsMenuBar, disabled, options.show]); // If disclosure is rendered as a menu bar item, it's toggable\n // That is, you can click on the expanded disclosure to close its menu.\n\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return; // If menu button is a menu item inside a menu (not menu bar), you\n // can't close it by clicking on it again.\n\n if (hasParent && !parentIsMenuBar) {\n var _options$show4;\n\n (_options$show4 = options.show) === null || _options$show4 === void 0 ? void 0 : _options$show4.call(options);\n } else {\n var _options$toggle;\n\n // Otherwise, if menu button is a menu bar item or an orphan menu\n // button, it's toggable.\n (_options$toggle = options.toggle) === null || _options$toggle === void 0 ? void 0 : _options$toggle.call(options); // Focus the menu popover when it's opened with mouse click.\n\n if (hasPressedMouse.current && !parentIsMenuBar && !options.visible) {\n var _options$move;\n\n (_options$move = options.move) === null || _options$move === void 0 ? void 0 : _options$move.call(options, null);\n }\n }\n\n hasPressedMouse.current = false;\n }, [hasParent, parentIsMenuBar, options.show, options.toggle, options.visible, options.move]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n \"aria-haspopup\": \"menu\",\n onKeyDown: onKeyDown,\n onMouseEnter: onMouseEnter,\n onMouseDown: onMouseDown,\n onFocus: onFocus,\n onClick: onClick\n }, htmlProps);\n },\n useComposeOptions: function useComposeOptions(options) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n // Toggling is handled by MenuButton\n toggle: noop\n });\n }\n});\nvar MenuButton = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useMenuButton\n});\n\nexports.MenuButton = MenuButton;\nexports.useMenuButton = useMenuButton;\n","import './getDocument.js';\nimport { getActiveElement } from './getActiveElement.js';\n\n/**\n * Checks if `element` has focus. Elements that are referenced by\n * `aria-activedescendant` are also considered.\n *\n * @example\n * import { hasFocus } from \"reakit-utils\";\n *\n * hasFocus(document.getElementById(\"id\"));\n */\n\nfunction hasFocus(element) {\n var activeElement = getActiveElement(element);\n if (!activeElement) return false;\n if (activeElement === element) return true;\n var activeDescendant = activeElement.getAttribute(\"aria-activedescendant\");\n if (!activeDescendant) return false;\n return activeDescendant === element.id;\n}\n\nexport { hasFocus };\n","import './getDocument.js';\nimport './getActiveElement.js';\nimport { hasFocus } from './hasFocus.js';\n\n/**\n * Ensures `element` will receive focus if it's not already.\n *\n * @example\n * import { ensureFocus } from \"reakit-utils\";\n *\n * ensureFocus(document.activeElement); // does nothing\n *\n * const element = document.querySelector(\"input\");\n *\n * ensureFocus(element); // focuses element\n * ensureFocus(element, { preventScroll: true }); // focuses element preventing scroll jump\n *\n * function isActive(el) {\n * return el.dataset.active === \"true\";\n * }\n *\n * ensureFocus(document.querySelector(\"[data-active='true']\"), { isActive }); // does nothing\n *\n * @returns {number} `requestAnimationFrame` call ID so it can be passed to `cancelAnimationFrame` if needed.\n */\nfunction ensureFocus(element, _temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n preventScroll = _ref.preventScroll,\n _ref$isActive = _ref.isActive,\n isActive = _ref$isActive === void 0 ? hasFocus : _ref$isActive;\n\n if (isActive(element)) return -1;\n element.focus({\n preventScroll: preventScroll\n });\n if (isActive(element)) return -1;\n return requestAnimationFrame(function () {\n element.focus({\n preventScroll: preventScroll\n });\n });\n}\n\nexport { ensureFocus };\n","import { matches } from './matches.js';\n\n/**\n * Ponyfill for `Element.prototype.closest`\n *\n * @example\n * import { closest } from \"reakit-utils\";\n *\n * closest(document.getElementById(\"id\"), \"div\");\n * // same as\n * document.getElementById(\"id\").closest(\"div\");\n */\nfunction closest(element, selectors) {\n if (\"closest\" in element) return element.closest(selectors);\n\n do {\n if (matches(element, selectors)) return element;\n element = element.parentElement || element.parentNode;\n } while (element !== null && element.nodeType === 1);\n\n return null;\n}\n\nexport { closest };\n","import { useEffect, useLayoutEffect } from 'react';\nimport './getDocument.js';\nimport './getWindow.js';\nimport { canUseDOM } from './canUseDOM.js';\n\n/**\n * `React.useLayoutEffect` that fallbacks to `React.useEffect` on server side\n * rendering.\n */\n\nvar useIsomorphicEffect = !canUseDOM ? useEffect : useLayoutEffect;\n\nexport { useIsomorphicEffect };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('../Box/Box.js');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('reakit-utils/useUpdateEffect');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nvar __keys = require('../__keys-a7141fdd.js');\nrequire('../getMenuId-ae301adb.js');\nrequire('reakit-utils/ensureFocus');\nvar Combobox_ComboboxList = require('./ComboboxList.js');\nrequire('../__keys-f41a441b.js');\nrequire('../Disclosure/DisclosureContent.js');\nrequire('react-dom');\nrequire('../Portal/Portal.js');\nrequire('reakit-utils/removeItemFromArray');\nrequire('../MenuContext-2d32bb3e.js');\nrequire('../Dialog/Dialog.js');\nrequire('body-scroll-lock');\nrequire('reakit-utils/closest');\nrequire('reakit-utils/getActiveElement');\nrequire('reakit-utils/contains');\nrequire('../DialogBackdropContext-b43e21d7.js');\nrequire('reakit-utils/isEmpty');\nrequire('../__keys-0c8e6398.js');\nrequire('../__keys-eddd3051.js');\nvar Popover_Popover = require('../Popover/Popover.js');\n\nvar unstable_useComboboxPopover = createHook.createHook({\n name: \"ComboboxPopover\",\n compose: [Combobox_ComboboxList.unstable_useComboboxList, Popover_Popover.usePopover],\n keys: __keys.COMBOBOX_POPOVER_KEYS,\n useOptions: function useOptions(options) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n unstable_disclosureRef: options.unstable_referenceRef,\n unstable_autoFocusOnShow: false,\n unstable_autoFocusOnHide: false\n });\n },\n useComposeProps: function useComposeProps(options, _ref) {\n var tabIndex = _ref.tabIndex,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"tabIndex\"]);\n\n htmlProps = Combobox_ComboboxList.unstable_useComboboxList(options, htmlProps, true);\n htmlProps = Popover_Popover.usePopover(options, htmlProps, true);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, htmlProps), {}, {\n tabIndex: tabIndex != null ? tabIndex : undefined\n });\n }\n});\nvar unstable_ComboboxPopover = createComponent.createComponent({\n as: \"div\",\n useHook: unstable_useComboboxPopover,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/combobox\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.unstable_ComboboxPopover = unstable_ComboboxPopover;\nexports.unstable_useComboboxPopover = unstable_useComboboxPopover;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('../Box/Box.js');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar __keys = require('../__keys-a7141fdd.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nrequire('../Composite/CompositeItem.js');\nrequire('../__keys-d2d383f0.js');\nvar Grid_GridCell = require('../Grid/GridCell.js');\nvar Combobox_ComboboxItem = require('./ComboboxItem.js');\n\nvar unstable_useComboboxGridCell = createHook.createHook({\n name: \"ComboboxGridCell\",\n compose: [Combobox_ComboboxItem.unstable_useComboboxItem, Grid_GridCell.unstable_useGridCell],\n keys: __keys.COMBOBOX_GRID_CELL_KEYS\n});\nvar unstable_ComboboxGridCell = createComponent.createComponent({\n as: \"span\",\n memo: true,\n useHook: unstable_useComboboxGridCell\n});\n\nexports.unstable_ComboboxGridCell = unstable_ComboboxGridCell;\nexports.unstable_useComboboxGridCell = unstable_useComboboxGridCell;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nvar getLabelId = require('../getLabelId-eba7e47b.js');\nvar Form_utils_getIn = require('./utils/getIn.js');\nvar shouldShowError = require('../shouldShowError-880a39c9.js');\nvar Input_Input = require('../Input/Input.js');\n\nvar unstable_useFormInput = createHook.createHook({\n name: \"FormInput\",\n compose: Input_Input.useInput,\n keys: __keys.FORM_INPUT_KEYS,\n useOptions: function useOptions(options, _ref) {\n var name = _ref.name;\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n name: options.name || name\n });\n },\n useProps: function useProps(options, _ref2) {\n var htmlOnChange = _ref2.onChange,\n htmlOnBlur = _ref2.onBlur,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"onChange\", \"onBlur\"]);\n\n var onChangeRef = useLiveRef.useLiveRef(htmlOnChange);\n var onBlurRef = useLiveRef.useLiveRef(htmlOnBlur);\n var onChange = React.useCallback(function (event) {\n var _onChangeRef$current, _options$update;\n\n (_onChangeRef$current = onChangeRef.current) === null || _onChangeRef$current === void 0 ? void 0 : _onChangeRef$current.call(onChangeRef, event);\n if (event.defaultPrevented) return;\n (_options$update = options.update) === null || _options$update === void 0 ? void 0 : _options$update.call(options, options.name, event.target.value);\n }, [options.update, options.name]);\n var onBlur = React.useCallback(function (event) {\n var _onBlurRef$current, _options$blur;\n\n (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);\n if (event.defaultPrevented) return;\n (_options$blur = options.blur) === null || _options$blur === void 0 ? void 0 : _options$blur.call(options, options.name);\n }, [options.blur, options.name]);\n return _rollupPluginBabelHelpers._objectSpread2({\n id: getInputId.getInputId(options.name, options.baseId),\n name: getInputId.formatInputName(options.name),\n value: Form_utils_getIn.unstable_getIn(options.values, options.name, \"\"),\n \"aria-describedby\": shouldShowError.getMessageId(options.name, options.baseId),\n \"aria-labelledby\": getLabelId.getLabelId(options.name, options.baseId),\n \"aria-invalid\": shouldShowError.shouldShowError(options, options.name),\n onChange: onChange,\n onBlur: onBlur\n }, htmlProps);\n }\n});\nvar unstable_FormInput = createComponent.createComponent({\n as: \"input\",\n memo: true,\n useHook: unstable_useFormInput\n});\n\nexports.unstable_FormInput = unstable_FormInput;\nexports.unstable_useFormInput = unstable_useFormInput;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('../Role/Role.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nvar __keys = require('../__keys-a7141fdd.js');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('../__keys-d2d383f0.js');\nrequire('../Group/Group.js');\nrequire('../Composite/CompositeGroup.js');\nvar Grid_GridRow = require('../Grid/GridRow.js');\n\nvar unstable_useComboboxGridRow = createHook.createHook({\n name: \"ComboboxGridRow\",\n compose: Grid_GridRow.unstable_useGridRow,\n keys: __keys.COMBOBOX_GRID_ROW_KEYS\n});\nvar unstable_ComboboxGridRow = createComponent.createComponent({\n as: \"div\",\n useHook: unstable_useComboboxGridRow\n});\n\nexports.unstable_ComboboxGridRow = unstable_ComboboxGridRow;\nexports.unstable_useComboboxGridRow = unstable_useComboboxGridRow;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nvar Role_Role = require('../Role/Role.js');\nvar __keys = require('../__keys-eddd3051.js');\n\nvar usePopoverArrow = createHook.createHook({\n name: \"PopoverArrow\",\n compose: Role_Role.useRole,\n keys: __keys.POPOVER_ARROW_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$size = _ref.size,\n size = _ref$size === void 0 ? 30 : _ref$size,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"size\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n size: size\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var _objectSpread2;\n\n var htmlRef = _ref2.ref,\n htmlStyle = _ref2.style,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"ref\", \"style\"]);\n\n var _options$placement$sp = options.placement.split(\"-\"),\n placement = _options$placement$sp[0];\n\n var transformMap = {\n top: \"rotateZ(180deg)\",\n right: \"rotateZ(-90deg)\",\n bottom: \"rotateZ(360deg)\",\n left: \"rotateZ(90deg)\"\n };\n var arrowStyles = options.unstable_arrowStyles;\n var transform = transformMap[placement];\n var children = React.useMemo(function () {\n return /*#__PURE__*/React.createElement(\"svg\", {\n viewBox: \"0 0 30 30\",\n style: {\n transform: transform\n }\n }, /*#__PURE__*/React.createElement(\"path\", {\n className: \"stroke\",\n d: \"M23.7,27.1L17,19.9C16.5,19.3,15.8,19,15,19s-1.6,0.3-2.1,0.9l-6.6,7.2C5.3,28.1,3.4,29,2,29h26 C26.7,29,24.6,28.1,23.7,27.1z\"\n }), /*#__PURE__*/React.createElement(\"path\", {\n className: \"fill\",\n d: \"M23,27.8c1.1,1.2,3.4,2.2,5,2.2h2H0h2c1.7,0,3.9-1,5-2.2l6.6-7.2c0.7-0.8,2-0.8,2.7,0L23,27.8L23,27.8z\"\n }));\n }, [transform]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(options.unstable_arrowRef, htmlRef),\n style: _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, arrowStyles), {}, (_objectSpread2 = {\n fontSize: options.size,\n width: \"1em\",\n height: \"1em\",\n pointerEvents: \"none\"\n }, _objectSpread2[placement] = \"100%\", _objectSpread2), htmlStyle),\n children: children\n }, htmlProps);\n }\n});\nvar PopoverArrow = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: usePopoverArrow\n});\n\nexports.PopoverArrow = PopoverArrow;\nexports.usePopoverArrow = usePopoverArrow;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('../Role/Role.js');\nrequire('reakit-utils/canUseDOM');\nrequire('../__keys-f41a441b.js');\nvar Disclosure_DisclosureContent = require('../Disclosure/DisclosureContent.js');\nrequire('react-dom');\nvar Portal_Portal = require('../Portal/Portal.js');\nvar DialogBackdropContext = require('../DialogBackdropContext-b43e21d7.js');\nvar __keys = require('../__keys-0c8e6398.js');\n\nvar useDialogBackdrop = createHook.createHook({\n name: \"DialogBackdrop\",\n compose: Disclosure_DisclosureContent.useDisclosureContent,\n keys: __keys.DIALOG_BACKDROP_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$modal = _ref.modal,\n modal = _ref$modal === void 0 ? true : _ref$modal,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"modal\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n modal: modal\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlWrapElement = _ref2.wrapElement,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"wrapElement\"]);\n\n var wrapElement = React.useCallback(function (element) {\n if (options.modal) {\n element = /*#__PURE__*/React.createElement(Portal_Portal.Portal, null, /*#__PURE__*/React.createElement(DialogBackdropContext.DialogBackdropContext.Provider, {\n value: options.baseId\n }, element));\n }\n\n if (htmlWrapElement) {\n return htmlWrapElement(element);\n }\n\n return element;\n }, [options.modal, htmlWrapElement]);\n return _rollupPluginBabelHelpers._objectSpread2({\n id: undefined,\n \"data-dialog-ref\": options.baseId,\n wrapElement: wrapElement\n }, htmlProps);\n }\n});\nvar DialogBackdrop = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: useDialogBackdrop\n});\n\nexports.DialogBackdrop = DialogBackdrop;\nexports.useDialogBackdrop = useDialogBackdrop;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nvar createEvent = require('reakit-utils/createEvent');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('../Composite/CompositeItem.js');\nvar warning = require('reakit-warning/warning');\nvar __keys = require('../__keys-a6d5cee4.js');\n\nfunction getChecked(options) {\n if (typeof options.checked !== \"undefined\") {\n return options.checked;\n }\n\n return typeof options.value !== \"undefined\" && options.state === options.value;\n}\n\nfunction useInitialChecked(options) {\n var _React$useState = React.useState(function () {\n return getChecked(options);\n }),\n initialChecked = _React$useState[0];\n\n var _React$useState2 = React.useState(options.currentId),\n initialCurrentId = _React$useState2[0];\n\n var id = options.id,\n setCurrentId = options.setCurrentId;\n React.useEffect(function () {\n if (initialChecked && id && initialCurrentId !== id) {\n setCurrentId === null || setCurrentId === void 0 ? void 0 : setCurrentId(id);\n }\n }, [initialChecked, id, setCurrentId, initialCurrentId]);\n}\n\nfunction fireChange(element, onChange) {\n var event = createEvent.createEvent(element, \"change\");\n Object.defineProperties(event, {\n type: {\n value: \"change\"\n },\n target: {\n value: element\n },\n currentTarget: {\n value: element\n }\n });\n onChange === null || onChange === void 0 ? void 0 : onChange(event);\n}\n\nvar useRadio = createHook.createHook({\n name: \"Radio\",\n compose: Composite_CompositeItem.useCompositeItem,\n keys: __keys.RADIO_KEYS,\n useOptions: function useOptions(_ref, _ref2) {\n var _options$value;\n\n var value = _ref2.value,\n checked = _ref2.checked;\n\n var _ref$unstable_clickOn = _ref.unstable_clickOnEnter,\n unstable_clickOnEnter = _ref$unstable_clickOn === void 0 ? false : _ref$unstable_clickOn,\n _ref$unstable_checkOn = _ref.unstable_checkOnFocus,\n unstable_checkOnFocus = _ref$unstable_checkOn === void 0 ? true : _ref$unstable_checkOn,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"unstable_clickOnEnter\", \"unstable_checkOnFocus\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({\n checked: checked,\n unstable_clickOnEnter: unstable_clickOnEnter,\n unstable_checkOnFocus: unstable_checkOnFocus\n }, options), {}, {\n value: (_options$value = options.value) != null ? _options$value : value\n });\n },\n useProps: function useProps(options, _ref3) {\n var htmlRef = _ref3.ref,\n htmlOnChange = _ref3.onChange,\n htmlOnClick = _ref3.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref3, [\"ref\", \"onChange\", \"onClick\"]);\n\n var ref = React.useRef(null);\n\n var _React$useState3 = React.useState(true),\n isNativeRadio = _React$useState3[0],\n setIsNativeRadio = _React$useState3[1];\n\n var checked = getChecked(options);\n var isCurrentItemRef = useLiveRef.useLiveRef(options.currentId === options.id);\n var onChangeRef = useLiveRef.useLiveRef(htmlOnChange);\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n useInitialChecked(options);\n React.useEffect(function () {\n var element = ref.current;\n\n if (!element) {\n process.env.NODE_ENV !== \"production\" ? warning.warning(true, \"Can't determine whether the element is a native radio because `ref` wasn't passed to the component\", \"See https://reakit.io/docs/radio\") : void 0;\n return;\n }\n\n if (element.tagName !== \"INPUT\" || element.type !== \"radio\") {\n setIsNativeRadio(false);\n }\n }, []);\n var onChange = React.useCallback(function (event) {\n var _onChangeRef$current, _options$setState;\n\n (_onChangeRef$current = onChangeRef.current) === null || _onChangeRef$current === void 0 ? void 0 : _onChangeRef$current.call(onChangeRef, event);\n if (event.defaultPrevented) return;\n if (options.disabled) return;\n (_options$setState = options.setState) === null || _options$setState === void 0 ? void 0 : _options$setState.call(options, options.value);\n }, [options.disabled, options.setState, options.value]);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n if (isNativeRadio) return;\n fireChange(event.currentTarget, onChange);\n }, [onChange, isNativeRadio]);\n React.useEffect(function () {\n var element = ref.current;\n if (!element) return;\n\n if (options.unstable_moves && isCurrentItemRef.current && options.unstable_checkOnFocus) {\n fireChange(element, onChange);\n }\n }, [options.unstable_moves, options.unstable_checkOnFocus, onChange]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n role: !isNativeRadio ? \"radio\" : undefined,\n type: isNativeRadio ? \"radio\" : undefined,\n value: isNativeRadio ? options.value : undefined,\n name: isNativeRadio ? options.baseId : undefined,\n \"aria-checked\": checked,\n checked: checked,\n onChange: onChange,\n onClick: onClick\n }, htmlProps);\n }\n});\nvar Radio = createComponent.createComponent({\n as: \"input\",\n memo: true,\n useHook: useRadio\n});\n\nexports.Radio = Radio;\nexports.useRadio = useRadio;\n","'use strict';\n\n// Automatically generated\nvar DISCLOSURE_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"visible\", \"animated\", \"animating\", \"setBaseId\", \"show\", \"hide\", \"toggle\", \"setVisible\", \"setAnimated\", \"stopAnimation\"];\nvar DISCLOSURE_KEYS = DISCLOSURE_STATE_KEYS;\nvar DISCLOSURE_CONTENT_KEYS = DISCLOSURE_KEYS;\n\nexports.DISCLOSURE_CONTENT_KEYS = DISCLOSURE_CONTENT_KEYS;\nexports.DISCLOSURE_KEYS = DISCLOSURE_KEYS;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('../Composite/CompositeItem.js');\nvar __keys = require('../__keys-403ff944.js');\n\nvar useToolbarItem = createHook.createHook({\n name: \"ToolbarItem\",\n compose: Composite_CompositeItem.useCompositeItem,\n keys: __keys.TOOLBAR_ITEM_KEYS\n});\nvar ToolbarItem = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useToolbarItem\n});\n\nexports.ToolbarItem = ToolbarItem;\nexports.useToolbarItem = useToolbarItem;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar createSagaMiddleware = require('@redux-saga/core');\nvar createSagaMiddleware__default = _interopDefault(createSagaMiddleware);\n\n\n\nObject.keys(createSagaMiddleware).forEach(function (k) {\n\tif (k !== 'default') Object.defineProperty(exports, k, {\n\t\tenumerable: true,\n\t\tget: function () {\n\t\t\treturn createSagaMiddleware[k];\n\t\t}\n\t});\n});\nexports.default = createSagaMiddleware__default;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-warning');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/dom');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nrequire('../Composite/CompositeState.js');\nrequire('../ComboboxBaseState-cfd43319.js');\nrequire('@popperjs/core');\nrequire('../Disclosure/DisclosureState.js');\nrequire('../Dialog/DialogState.js');\nrequire('../Popover/PopoverState.js');\nvar ComboboxPopoverState = require('../ComboboxPopoverState-98e3f717.js');\nvar Combobox_ComboboxListState = require('./ComboboxListState.js');\n\nfunction unstable_useComboboxState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var sealed = useSealedState.useSealedState(initialState);\n var combobox = Combobox_ComboboxListState.unstable_useComboboxListState(sealed);\n return ComboboxPopoverState.useComboboxPopoverState(combobox, sealed);\n}\n\nexports.unstable_useComboboxState = unstable_useComboboxState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Role_Role = require('../Role/Role.js');\n\n// Automatically generated\nvar SEPARATOR_KEYS = [\"orientation\"];\n\nvar useSeparator = createHook.createHook({\n name: \"Separator\",\n compose: Role_Role.useRole,\n keys: SEPARATOR_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$orientation = _ref.orientation,\n orientation = _ref$orientation === void 0 ? \"horizontal\" : _ref$orientation,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"orientation\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n orientation: orientation\n }, options);\n },\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"separator\",\n \"aria-orientation\": options.orientation\n }, htmlProps);\n }\n});\nvar Separator = createComponent.createComponent({\n as: \"hr\",\n memo: true,\n useHook: useSeparator\n});\n\nexports.Separator = Separator;\nexports.useSeparator = useSeparator;\n","'use strict'\n\n// limit of Crypto.getRandomValues()\n// https://developer.mozilla.org/en-US/docs/Web/API/Crypto/getRandomValues\nvar MAX_BYTES = 65536\n\n// Node supports requesting up to this number of bytes\n// https://github.com/nodejs/node/blob/master/lib/internal/crypto/random.js#L48\nvar MAX_UINT32 = 4294967295\n\nfunction oldBrowser () {\n throw new Error('Secure random number generation is not supported by this browser.\\nUse Chrome, Firefox or Internet Explorer 11')\n}\n\nvar Buffer = require('safe-buffer').Buffer\nvar crypto = global.crypto || global.msCrypto\n\nif (crypto && crypto.getRandomValues) {\n module.exports = randomBytes\n} else {\n module.exports = oldBrowser\n}\n\nfunction randomBytes (size, cb) {\n // phantomjs needs to throw\n if (size > MAX_UINT32) throw new RangeError('requested too many random bytes')\n\n var bytes = Buffer.allocUnsafe(size)\n\n if (size > 0) { // getRandomValues fails on IE if size == 0\n if (size > MAX_BYTES) { // this is the max bytes crypto.getRandomValues\n // can do at once see https://developer.mozilla.org/en-US/docs/Web/API/window.crypto.getRandomValues\n for (var generated = 0; generated < size; generated += MAX_BYTES) {\n // buffer.slice automatically checks if the end is past the end of\n // the buffer so we don't have to here\n crypto.getRandomValues(bytes.slice(generated, generated + MAX_BYTES))\n }\n } else {\n crypto.getRandomValues(bytes)\n }\n }\n\n if (typeof cb === 'function') {\n return process.nextTick(function () {\n cb(null, bytes)\n })\n }\n\n return bytes\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar React = require('react');\nvar Id_IdProvider = require('./Id/IdProvider.js');\nvar SystemProvider = require('reakit-system/SystemProvider');\n\nvar defaultSystem = {};\nfunction Provider(_ref) {\n var prefix = _ref.unstable_prefix,\n _ref$unstable_system = _ref.unstable_system,\n system = _ref$unstable_system === void 0 ? defaultSystem : _ref$unstable_system,\n children = _ref.children;\n return /*#__PURE__*/React.createElement(Id_IdProvider.unstable_IdProvider, {\n prefix: prefix\n }, /*#__PURE__*/React.createElement(SystemProvider.SystemProvider, {\n unstable_system: system\n }, children));\n}\n\nexports.Provider = Provider;\n","export var top = 'top';\nexport var bottom = 'bottom';\nexport var right = 'right';\nexport var left = 'left';\nexport var auto = 'auto';\nexport var basePlacements = [top, bottom, right, left];\nexport var start = 'start';\nexport var end = 'end';\nexport var clippingParents = 'clippingParents';\nexport var viewport = 'viewport';\nexport var popper = 'popper';\nexport var reference = 'reference';\nexport var variationPlacements = /*#__PURE__*/basePlacements.reduce(function (acc, placement) {\n return acc.concat([placement + \"-\" + start, placement + \"-\" + end]);\n}, []);\nexport var placements = /*#__PURE__*/[].concat(basePlacements, [auto]).reduce(function (acc, placement) {\n return acc.concat([placement, placement + \"-\" + start, placement + \"-\" + end]);\n}, []); // modifiers that need to read the DOM\n\nexport var beforeRead = 'beforeRead';\nexport var read = 'read';\nexport var afterRead = 'afterRead'; // pure-logic modifiers\n\nexport var beforeMain = 'beforeMain';\nexport var main = 'main';\nexport var afterMain = 'afterMain'; // modifier with the purpose to write to the DOM (or write into a framework state)\n\nexport var beforeWrite = 'beforeWrite';\nexport var write = 'write';\nexport var afterWrite = 'afterWrite';\nexport var modifierPhases = [beforeRead, read, afterRead, beforeMain, main, afterMain, beforeWrite, write, afterWrite];","export default function getNodeName(element) {\n return element ? (element.nodeName || '').toLowerCase() : null;\n}","export default function getWindow(node) {\n if (node == null) {\n return window;\n }\n\n if (node.toString() !== '[object Window]') {\n var ownerDocument = node.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView || window : window;\n }\n\n return node;\n}","import getWindow from \"./getWindow.js\";\n\nfunction isElement(node) {\n var OwnElement = getWindow(node).Element;\n return node instanceof OwnElement || node instanceof Element;\n}\n\nfunction isHTMLElement(node) {\n var OwnElement = getWindow(node).HTMLElement;\n return node instanceof OwnElement || node instanceof HTMLElement;\n}\n\nfunction isShadowRoot(node) {\n // IE 11 has no ShadowRoot\n if (typeof ShadowRoot === 'undefined') {\n return false;\n }\n\n var OwnElement = getWindow(node).ShadowRoot;\n return node instanceof OwnElement || node instanceof ShadowRoot;\n}\n\nexport { isElement, isHTMLElement, isShadowRoot };","import getNodeName from \"../dom-utils/getNodeName.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // This modifier takes the styles prepared by the `computeStyles` modifier\n// and applies them to the HTMLElements such as popper and arrow\n\nfunction applyStyles(_ref) {\n var state = _ref.state;\n Object.keys(state.elements).forEach(function (name) {\n var style = state.styles[name] || {};\n var attributes = state.attributes[name] || {};\n var element = state.elements[name]; // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n } // Flow doesn't support to extend this property, but it's the most\n // effective way to apply styles to an HTMLElement\n // $FlowFixMe[cannot-write]\n\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (name) {\n var value = attributes[name];\n\n if (value === false) {\n element.removeAttribute(name);\n } else {\n element.setAttribute(name, value === true ? '' : value);\n }\n });\n });\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state;\n var initialStyles = {\n popper: {\n position: state.options.strategy,\n left: '0',\n top: '0',\n margin: '0'\n },\n arrow: {\n position: 'absolute'\n },\n reference: {}\n };\n Object.assign(state.elements.popper.style, initialStyles.popper);\n state.styles = initialStyles;\n\n if (state.elements.arrow) {\n Object.assign(state.elements.arrow.style, initialStyles.arrow);\n }\n\n return function () {\n Object.keys(state.elements).forEach(function (name) {\n var element = state.elements[name];\n var attributes = state.attributes[name] || {};\n var styleProperties = Object.keys(state.styles.hasOwnProperty(name) ? state.styles[name] : initialStyles[name]); // Set all values to an empty string to unset them\n\n var style = styleProperties.reduce(function (style, property) {\n style[property] = '';\n return style;\n }, {}); // arrow is optional + virtual elements\n\n if (!isHTMLElement(element) || !getNodeName(element)) {\n return;\n }\n\n Object.assign(element.style, style);\n Object.keys(attributes).forEach(function (attribute) {\n element.removeAttribute(attribute);\n });\n });\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'applyStyles',\n enabled: true,\n phase: 'write',\n fn: applyStyles,\n effect: effect,\n requires: ['computeStyles']\n};","import { auto } from \"../enums.js\";\nexport default function getBasePlacement(placement) {\n return placement.split('-')[0];\n}","export var max = Math.max;\nexport var min = Math.min;\nexport var round = Math.round;","export default function getUAString() {\n var uaData = navigator.userAgentData;\n\n if (uaData != null && uaData.brands) {\n return uaData.brands.map(function (item) {\n return item.brand + \"/\" + item.version;\n }).join(' ');\n }\n\n return navigator.userAgent;\n}","import getUAString from \"../utils/userAgent.js\";\nexport default function isLayoutViewport() {\n return !/^((?!chrome|android).)*safari/i.test(getUAString());\n}","import { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport { round } from \"../utils/math.js\";\nimport getWindow from \"./getWindow.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getBoundingClientRect(element, includeScale, isFixedStrategy) {\n if (includeScale === void 0) {\n includeScale = false;\n }\n\n if (isFixedStrategy === void 0) {\n isFixedStrategy = false;\n }\n\n var clientRect = element.getBoundingClientRect();\n var scaleX = 1;\n var scaleY = 1;\n\n if (includeScale && isHTMLElement(element)) {\n scaleX = element.offsetWidth > 0 ? round(clientRect.width) / element.offsetWidth || 1 : 1;\n scaleY = element.offsetHeight > 0 ? round(clientRect.height) / element.offsetHeight || 1 : 1;\n }\n\n var _ref = isElement(element) ? getWindow(element) : window,\n visualViewport = _ref.visualViewport;\n\n var addVisualOffsets = !isLayoutViewport() && isFixedStrategy;\n var x = (clientRect.left + (addVisualOffsets && visualViewport ? visualViewport.offsetLeft : 0)) / scaleX;\n var y = (clientRect.top + (addVisualOffsets && visualViewport ? visualViewport.offsetTop : 0)) / scaleY;\n var width = clientRect.width / scaleX;\n var height = clientRect.height / scaleY;\n return {\n width: width,\n height: height,\n top: y,\n right: x + width,\n bottom: y + height,\n left: x,\n x: x,\n y: y\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\"; // Returns the layout rect of an element relative to its offsetParent. Layout\n// means it doesn't take into account transforms.\n\nexport default function getLayoutRect(element) {\n var clientRect = getBoundingClientRect(element); // Use the clientRect sizes if it's not been transformed.\n // Fixes https://github.com/popperjs/popper-core/issues/1223\n\n var width = element.offsetWidth;\n var height = element.offsetHeight;\n\n if (Math.abs(clientRect.width - width) <= 1) {\n width = clientRect.width;\n }\n\n if (Math.abs(clientRect.height - height) <= 1) {\n height = clientRect.height;\n }\n\n return {\n x: element.offsetLeft,\n y: element.offsetTop,\n width: width,\n height: height\n };\n}","import { isShadowRoot } from \"./instanceOf.js\";\nexport default function contains(parent, child) {\n var rootNode = child.getRootNode && child.getRootNode(); // First, attempt with faster native method\n\n if (parent.contains(child)) {\n return true;\n } // then fallback to custom implementation with Shadow DOM support\n else if (rootNode && isShadowRoot(rootNode)) {\n var next = child;\n\n do {\n if (next && parent.isSameNode(next)) {\n return true;\n } // $FlowFixMe[prop-missing]: need a better way to handle this...\n\n\n next = next.parentNode || next.host;\n } while (next);\n } // Give up, the result is false\n\n\n return false;\n}","import getWindow from \"./getWindow.js\";\nexport default function getComputedStyle(element) {\n return getWindow(element).getComputedStyle(element);\n}","import getNodeName from \"./getNodeName.js\";\nexport default function isTableElement(element) {\n return ['table', 'td', 'th'].indexOf(getNodeName(element)) >= 0;\n}","import { isElement } from \"./instanceOf.js\";\nexport default function getDocumentElement(element) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return ((isElement(element) ? element.ownerDocument : // $FlowFixMe[prop-missing]\n element.document) || window.document).documentElement;\n}","import getNodeName from \"./getNodeName.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport { isShadowRoot } from \"./instanceOf.js\";\nexport default function getParentNode(element) {\n if (getNodeName(element) === 'html') {\n return element;\n }\n\n return (// this is a quicker (but less type safe) way to save quite some bytes from the bundle\n // $FlowFixMe[incompatible-return]\n // $FlowFixMe[prop-missing]\n element.assignedSlot || // step into the shadow DOM of the parent of a slotted node\n element.parentNode || ( // DOM Element detected\n isShadowRoot(element) ? element.host : null) || // ShadowRoot detected\n // $FlowFixMe[incompatible-call]: HTMLElement is a Node\n getDocumentElement(element) // fallback\n\n );\n}","import getWindow from \"./getWindow.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isHTMLElement, isShadowRoot } from \"./instanceOf.js\";\nimport isTableElement from \"./isTableElement.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getUAString from \"../utils/userAgent.js\";\n\nfunction getTrueOffsetParent(element) {\n if (!isHTMLElement(element) || // https://github.com/popperjs/popper-core/issues/837\n getComputedStyle(element).position === 'fixed') {\n return null;\n }\n\n return element.offsetParent;\n} // `.offsetParent` reports `null` for fixed elements, while absolute elements\n// return the containing block\n\n\nfunction getContainingBlock(element) {\n var isFirefox = /firefox/i.test(getUAString());\n var isIE = /Trident/i.test(getUAString());\n\n if (isIE && isHTMLElement(element)) {\n // In IE 9, 10 and 11 fixed elements containing block is always established by the viewport\n var elementCss = getComputedStyle(element);\n\n if (elementCss.position === 'fixed') {\n return null;\n }\n }\n\n var currentNode = getParentNode(element);\n\n if (isShadowRoot(currentNode)) {\n currentNode = currentNode.host;\n }\n\n while (isHTMLElement(currentNode) && ['html', 'body'].indexOf(getNodeName(currentNode)) < 0) {\n var css = getComputedStyle(currentNode); // This is non-exhaustive but covers the most common CSS properties that\n // create a containing block.\n // https://developer.mozilla.org/en-US/docs/Web/CSS/Containing_block#identifying_the_containing_block\n\n if (css.transform !== 'none' || css.perspective !== 'none' || css.contain === 'paint' || ['transform', 'perspective'].indexOf(css.willChange) !== -1 || isFirefox && css.willChange === 'filter' || isFirefox && css.filter && css.filter !== 'none') {\n return currentNode;\n } else {\n currentNode = currentNode.parentNode;\n }\n }\n\n return null;\n} // Gets the closest ancestor positioned element. Handles some edge cases,\n// such as table ancestors and cross browser bugs.\n\n\nexport default function getOffsetParent(element) {\n var window = getWindow(element);\n var offsetParent = getTrueOffsetParent(element);\n\n while (offsetParent && isTableElement(offsetParent) && getComputedStyle(offsetParent).position === 'static') {\n offsetParent = getTrueOffsetParent(offsetParent);\n }\n\n if (offsetParent && (getNodeName(offsetParent) === 'html' || getNodeName(offsetParent) === 'body' && getComputedStyle(offsetParent).position === 'static')) {\n return window;\n }\n\n return offsetParent || getContainingBlock(element) || window;\n}","export default function getMainAxisFromPlacement(placement) {\n return ['top', 'bottom'].indexOf(placement) >= 0 ? 'x' : 'y';\n}","import { max as mathMax, min as mathMin } from \"./math.js\";\nexport function within(min, value, max) {\n return mathMax(min, mathMin(value, max));\n}\nexport function withinMaxClamp(min, value, max) {\n var v = within(min, value, max);\n return v > max ? max : v;\n}","import getFreshSideObject from \"./getFreshSideObject.js\";\nexport default function mergePaddingObject(paddingObject) {\n return Object.assign({}, getFreshSideObject(), paddingObject);\n}","export default function getFreshSideObject() {\n return {\n top: 0,\n right: 0,\n bottom: 0,\n left: 0\n };\n}","export default function expandToHashMap(value, keys) {\n return keys.reduce(function (hashMap, key) {\n hashMap[key] = value;\n return hashMap;\n }, {});\n}","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport contains from \"../dom-utils/contains.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport { within } from \"../utils/within.js\";\nimport mergePaddingObject from \"../utils/mergePaddingObject.js\";\nimport expandToHashMap from \"../utils/expandToHashMap.js\";\nimport { left, right, basePlacements, top, bottom } from \"../enums.js\";\nimport { isHTMLElement } from \"../dom-utils/instanceOf.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar toPaddingObject = function toPaddingObject(padding, state) {\n padding = typeof padding === 'function' ? padding(Object.assign({}, state.rects, {\n placement: state.placement\n })) : padding;\n return mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n};\n\nfunction arrow(_ref) {\n var _state$modifiersData$;\n\n var state = _ref.state,\n name = _ref.name,\n options = _ref.options;\n var arrowElement = state.elements.arrow;\n var popperOffsets = state.modifiersData.popperOffsets;\n var basePlacement = getBasePlacement(state.placement);\n var axis = getMainAxisFromPlacement(basePlacement);\n var isVertical = [left, right].indexOf(basePlacement) >= 0;\n var len = isVertical ? 'height' : 'width';\n\n if (!arrowElement || !popperOffsets) {\n return;\n }\n\n var paddingObject = toPaddingObject(options.padding, state);\n var arrowRect = getLayoutRect(arrowElement);\n var minProp = axis === 'y' ? top : left;\n var maxProp = axis === 'y' ? bottom : right;\n var endDiff = state.rects.reference[len] + state.rects.reference[axis] - popperOffsets[axis] - state.rects.popper[len];\n var startDiff = popperOffsets[axis] - state.rects.reference[axis];\n var arrowOffsetParent = getOffsetParent(arrowElement);\n var clientSize = arrowOffsetParent ? axis === 'y' ? arrowOffsetParent.clientHeight || 0 : arrowOffsetParent.clientWidth || 0 : 0;\n var centerToReference = endDiff / 2 - startDiff / 2; // Make sure the arrow doesn't overflow the popper if the center point is\n // outside of the popper bounds\n\n var min = paddingObject[minProp];\n var max = clientSize - arrowRect[len] - paddingObject[maxProp];\n var center = clientSize / 2 - arrowRect[len] / 2 + centerToReference;\n var offset = within(min, center, max); // Prevents breaking syntax highlighting...\n\n var axisProp = axis;\n state.modifiersData[name] = (_state$modifiersData$ = {}, _state$modifiersData$[axisProp] = offset, _state$modifiersData$.centerOffset = offset - center, _state$modifiersData$);\n}\n\nfunction effect(_ref2) {\n var state = _ref2.state,\n options = _ref2.options;\n var _options$element = options.element,\n arrowElement = _options$element === void 0 ? '[data-popper-arrow]' : _options$element;\n\n if (arrowElement == null) {\n return;\n } // CSS selector\n\n\n if (typeof arrowElement === 'string') {\n arrowElement = state.elements.popper.querySelector(arrowElement);\n\n if (!arrowElement) {\n return;\n }\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n if (!isHTMLElement(arrowElement)) {\n console.error(['Popper: \"arrow\" element must be an HTMLElement (not an SVGElement).', 'To use an SVG arrow, wrap it in an HTMLElement that will be used as', 'the arrow.'].join(' '));\n }\n }\n\n if (!contains(state.elements.popper, arrowElement)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: \"arrow\" modifier\\'s `element` must be a child of the popper', 'element.'].join(' '));\n }\n\n return;\n }\n\n state.elements.arrow = arrowElement;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'arrow',\n enabled: true,\n phase: 'main',\n fn: arrow,\n effect: effect,\n requires: ['popperOffsets'],\n requiresIfExists: ['preventOverflow']\n};","export default function getVariation(placement) {\n return placement.split('-')[1];\n}","import { top, left, right, bottom, end } from \"../enums.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport getWindow from \"../dom-utils/getWindow.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getComputedStyle from \"../dom-utils/getComputedStyle.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport { round } from \"../utils/math.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar unsetSides = {\n top: 'auto',\n right: 'auto',\n bottom: 'auto',\n left: 'auto'\n}; // Round the offsets to the nearest suitable subpixel based on the DPR.\n// Zooming can change the DPR, but it seems to report a value that will\n// cleanly divide the values into the appropriate subpixels.\n\nfunction roundOffsetsByDPR(_ref) {\n var x = _ref.x,\n y = _ref.y;\n var win = window;\n var dpr = win.devicePixelRatio || 1;\n return {\n x: round(x * dpr) / dpr || 0,\n y: round(y * dpr) / dpr || 0\n };\n}\n\nexport function mapToStyles(_ref2) {\n var _Object$assign2;\n\n var popper = _ref2.popper,\n popperRect = _ref2.popperRect,\n placement = _ref2.placement,\n variation = _ref2.variation,\n offsets = _ref2.offsets,\n position = _ref2.position,\n gpuAcceleration = _ref2.gpuAcceleration,\n adaptive = _ref2.adaptive,\n roundOffsets = _ref2.roundOffsets,\n isFixed = _ref2.isFixed;\n var _offsets$x = offsets.x,\n x = _offsets$x === void 0 ? 0 : _offsets$x,\n _offsets$y = offsets.y,\n y = _offsets$y === void 0 ? 0 : _offsets$y;\n\n var _ref3 = typeof roundOffsets === 'function' ? roundOffsets({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref3.x;\n y = _ref3.y;\n var hasX = offsets.hasOwnProperty('x');\n var hasY = offsets.hasOwnProperty('y');\n var sideX = left;\n var sideY = top;\n var win = window;\n\n if (adaptive) {\n var offsetParent = getOffsetParent(popper);\n var heightProp = 'clientHeight';\n var widthProp = 'clientWidth';\n\n if (offsetParent === getWindow(popper)) {\n offsetParent = getDocumentElement(popper);\n\n if (getComputedStyle(offsetParent).position !== 'static' && position === 'absolute') {\n heightProp = 'scrollHeight';\n widthProp = 'scrollWidth';\n }\n } // $FlowFixMe[incompatible-cast]: force type refinement, we compare offsetParent with window above, but Flow doesn't detect it\n\n\n offsetParent = offsetParent;\n\n if (placement === top || (placement === left || placement === right) && variation === end) {\n sideY = bottom;\n var offsetY = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.height : // $FlowFixMe[prop-missing]\n offsetParent[heightProp];\n y -= offsetY - popperRect.height;\n y *= gpuAcceleration ? 1 : -1;\n }\n\n if (placement === left || (placement === top || placement === bottom) && variation === end) {\n sideX = right;\n var offsetX = isFixed && offsetParent === win && win.visualViewport ? win.visualViewport.width : // $FlowFixMe[prop-missing]\n offsetParent[widthProp];\n x -= offsetX - popperRect.width;\n x *= gpuAcceleration ? 1 : -1;\n }\n }\n\n var commonStyles = Object.assign({\n position: position\n }, adaptive && unsetSides);\n\n var _ref4 = roundOffsets === true ? roundOffsetsByDPR({\n x: x,\n y: y\n }) : {\n x: x,\n y: y\n };\n\n x = _ref4.x;\n y = _ref4.y;\n\n if (gpuAcceleration) {\n var _Object$assign;\n\n return Object.assign({}, commonStyles, (_Object$assign = {}, _Object$assign[sideY] = hasY ? '0' : '', _Object$assign[sideX] = hasX ? '0' : '', _Object$assign.transform = (win.devicePixelRatio || 1) <= 1 ? \"translate(\" + x + \"px, \" + y + \"px)\" : \"translate3d(\" + x + \"px, \" + y + \"px, 0)\", _Object$assign));\n }\n\n return Object.assign({}, commonStyles, (_Object$assign2 = {}, _Object$assign2[sideY] = hasY ? y + \"px\" : '', _Object$assign2[sideX] = hasX ? x + \"px\" : '', _Object$assign2.transform = '', _Object$assign2));\n}\n\nfunction computeStyles(_ref5) {\n var state = _ref5.state,\n options = _ref5.options;\n var _options$gpuAccelerat = options.gpuAcceleration,\n gpuAcceleration = _options$gpuAccelerat === void 0 ? true : _options$gpuAccelerat,\n _options$adaptive = options.adaptive,\n adaptive = _options$adaptive === void 0 ? true : _options$adaptive,\n _options$roundOffsets = options.roundOffsets,\n roundOffsets = _options$roundOffsets === void 0 ? true : _options$roundOffsets;\n\n if (process.env.NODE_ENV !== \"production\") {\n var transitionProperty = getComputedStyle(state.elements.popper).transitionProperty || '';\n\n if (adaptive && ['transform', 'top', 'right', 'bottom', 'left'].some(function (property) {\n return transitionProperty.indexOf(property) >= 0;\n })) {\n console.warn(['Popper: Detected CSS transitions on at least one of the following', 'CSS properties: \"transform\", \"top\", \"right\", \"bottom\", \"left\".', '\\n\\n', 'Disable the \"computeStyles\" modifier\\'s `adaptive` option to allow', 'for smooth transitions, or remove these properties from the CSS', 'transition declaration on the popper element if only transitioning', 'opacity or background-color for example.', '\\n\\n', 'We recommend using the popper element as a wrapper around an inner', 'element that can have any CSS property transitioned for animations.'].join(' '));\n }\n }\n\n var commonStyles = {\n placement: getBasePlacement(state.placement),\n variation: getVariation(state.placement),\n popper: state.elements.popper,\n popperRect: state.rects.popper,\n gpuAcceleration: gpuAcceleration,\n isFixed: state.options.strategy === 'fixed'\n };\n\n if (state.modifiersData.popperOffsets != null) {\n state.styles.popper = Object.assign({}, state.styles.popper, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.popperOffsets,\n position: state.options.strategy,\n adaptive: adaptive,\n roundOffsets: roundOffsets\n })));\n }\n\n if (state.modifiersData.arrow != null) {\n state.styles.arrow = Object.assign({}, state.styles.arrow, mapToStyles(Object.assign({}, commonStyles, {\n offsets: state.modifiersData.arrow,\n position: 'absolute',\n adaptive: false,\n roundOffsets: roundOffsets\n })));\n }\n\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-placement': state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'computeStyles',\n enabled: true,\n phase: 'beforeWrite',\n fn: computeStyles,\n data: {}\n};","import getWindow from \"../dom-utils/getWindow.js\"; // eslint-disable-next-line import/no-unused-modules\n\nvar passive = {\n passive: true\n};\n\nfunction effect(_ref) {\n var state = _ref.state,\n instance = _ref.instance,\n options = _ref.options;\n var _options$scroll = options.scroll,\n scroll = _options$scroll === void 0 ? true : _options$scroll,\n _options$resize = options.resize,\n resize = _options$resize === void 0 ? true : _options$resize;\n var window = getWindow(state.elements.popper);\n var scrollParents = [].concat(state.scrollParents.reference, state.scrollParents.popper);\n\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.addEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.addEventListener('resize', instance.update, passive);\n }\n\n return function () {\n if (scroll) {\n scrollParents.forEach(function (scrollParent) {\n scrollParent.removeEventListener('scroll', instance.update, passive);\n });\n }\n\n if (resize) {\n window.removeEventListener('resize', instance.update, passive);\n }\n };\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'eventListeners',\n enabled: true,\n phase: 'write',\n fn: function fn() {},\n effect: effect,\n data: {}\n};","var hash = {\n left: 'right',\n right: 'left',\n bottom: 'top',\n top: 'bottom'\n};\nexport default function getOppositePlacement(placement) {\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}","var hash = {\n start: 'end',\n end: 'start'\n};\nexport default function getOppositeVariationPlacement(placement) {\n return placement.replace(/start|end/g, function (matched) {\n return hash[matched];\n });\n}","import getWindow from \"./getWindow.js\";\nexport default function getWindowScroll(node) {\n var win = getWindow(node);\n var scrollLeft = win.pageXOffset;\n var scrollTop = win.pageYOffset;\n return {\n scrollLeft: scrollLeft,\n scrollTop: scrollTop\n };\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nexport default function getWindowScrollBarX(element) {\n // If has a CSS width greater than the viewport, then this will be\n // incorrect for RTL.\n // Popper 1 is broken in this case and never had a bug report so let's assume\n // it's not an issue. I don't think anyone ever specifies width on \n // anyway.\n // Browsers where the left scrollbar doesn't cause an issue report `0` for\n // this (e.g. Edge 2019, IE11, Safari)\n return getBoundingClientRect(getDocumentElement(element)).left + getWindowScroll(element).scrollLeft;\n}","import getComputedStyle from \"./getComputedStyle.js\";\nexport default function isScrollParent(element) {\n // Firefox wants us to check `-x` and `-y` variations as well\n var _getComputedStyle = getComputedStyle(element),\n overflow = _getComputedStyle.overflow,\n overflowX = _getComputedStyle.overflowX,\n overflowY = _getComputedStyle.overflowY;\n\n return /auto|scroll|overlay|hidden/.test(overflow + overflowY + overflowX);\n}","import getScrollParent from \"./getScrollParent.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport getWindow from \"./getWindow.js\";\nimport isScrollParent from \"./isScrollParent.js\";\n/*\ngiven a DOM element, return the list of all scroll parents, up the list of ancesors\nuntil we get to the top window object. This list is what we attach scroll listeners\nto, because if any of these parent elements scroll, we'll need to re-calculate the\nreference element's position.\n*/\n\nexport default function listScrollParents(element, list) {\n var _element$ownerDocumen;\n\n if (list === void 0) {\n list = [];\n }\n\n var scrollParent = getScrollParent(element);\n var isBody = scrollParent === ((_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body);\n var win = getWindow(scrollParent);\n var target = isBody ? [win].concat(win.visualViewport || [], isScrollParent(scrollParent) ? scrollParent : []) : scrollParent;\n var updatedList = list.concat(target);\n return isBody ? updatedList : // $FlowFixMe[incompatible-call]: isBody tells us target will be an HTMLElement here\n updatedList.concat(listScrollParents(getParentNode(target)));\n}","import getParentNode from \"./getParentNode.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nexport default function getScrollParent(node) {\n if (['html', 'body', '#document'].indexOf(getNodeName(node)) >= 0) {\n // $FlowFixMe[incompatible-return]: assume body is always available\n return node.ownerDocument.body;\n }\n\n if (isHTMLElement(node) && isScrollParent(node)) {\n return node;\n }\n\n return getScrollParent(getParentNode(node));\n}","export default function rectToClientRect(rect) {\n return Object.assign({}, rect, {\n left: rect.x,\n top: rect.y,\n right: rect.x + rect.width,\n bottom: rect.y + rect.height\n });\n}","import { viewport } from \"../enums.js\";\nimport getViewportRect from \"./getViewportRect.js\";\nimport getDocumentRect from \"./getDocumentRect.js\";\nimport listScrollParents from \"./listScrollParents.js\";\nimport getOffsetParent from \"./getOffsetParent.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport { isElement, isHTMLElement } from \"./instanceOf.js\";\nimport getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getParentNode from \"./getParentNode.js\";\nimport contains from \"./contains.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport rectToClientRect from \"../utils/rectToClientRect.js\";\nimport { max, min } from \"../utils/math.js\";\n\nfunction getInnerBoundingClientRect(element, strategy) {\n var rect = getBoundingClientRect(element, false, strategy === 'fixed');\n rect.top = rect.top + element.clientTop;\n rect.left = rect.left + element.clientLeft;\n rect.bottom = rect.top + element.clientHeight;\n rect.right = rect.left + element.clientWidth;\n rect.width = element.clientWidth;\n rect.height = element.clientHeight;\n rect.x = rect.left;\n rect.y = rect.top;\n return rect;\n}\n\nfunction getClientRectFromMixedType(element, clippingParent, strategy) {\n return clippingParent === viewport ? rectToClientRect(getViewportRect(element, strategy)) : isElement(clippingParent) ? getInnerBoundingClientRect(clippingParent, strategy) : rectToClientRect(getDocumentRect(getDocumentElement(element)));\n} // A \"clipping parent\" is an overflowable container with the characteristic of\n// clipping (or hiding) overflowing elements with a position different from\n// `initial`\n\n\nfunction getClippingParents(element) {\n var clippingParents = listScrollParents(getParentNode(element));\n var canEscapeClipping = ['absolute', 'fixed'].indexOf(getComputedStyle(element).position) >= 0;\n var clipperElement = canEscapeClipping && isHTMLElement(element) ? getOffsetParent(element) : element;\n\n if (!isElement(clipperElement)) {\n return [];\n } // $FlowFixMe[incompatible-return]: https://github.com/facebook/flow/issues/1414\n\n\n return clippingParents.filter(function (clippingParent) {\n return isElement(clippingParent) && contains(clippingParent, clipperElement) && getNodeName(clippingParent) !== 'body';\n });\n} // Gets the maximum area that the element is visible in due to any number of\n// clipping parents\n\n\nexport default function getClippingRect(element, boundary, rootBoundary, strategy) {\n var mainClippingParents = boundary === 'clippingParents' ? getClippingParents(element) : [].concat(boundary);\n var clippingParents = [].concat(mainClippingParents, [rootBoundary]);\n var firstClippingParent = clippingParents[0];\n var clippingRect = clippingParents.reduce(function (accRect, clippingParent) {\n var rect = getClientRectFromMixedType(element, clippingParent, strategy);\n accRect.top = max(rect.top, accRect.top);\n accRect.right = min(rect.right, accRect.right);\n accRect.bottom = min(rect.bottom, accRect.bottom);\n accRect.left = max(rect.left, accRect.left);\n return accRect;\n }, getClientRectFromMixedType(element, firstClippingParent, strategy));\n clippingRect.width = clippingRect.right - clippingRect.left;\n clippingRect.height = clippingRect.bottom - clippingRect.top;\n clippingRect.x = clippingRect.left;\n clippingRect.y = clippingRect.top;\n return clippingRect;\n}","import getWindow from \"./getWindow.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport isLayoutViewport from \"./isLayoutViewport.js\";\nexport default function getViewportRect(element, strategy) {\n var win = getWindow(element);\n var html = getDocumentElement(element);\n var visualViewport = win.visualViewport;\n var width = html.clientWidth;\n var height = html.clientHeight;\n var x = 0;\n var y = 0;\n\n if (visualViewport) {\n width = visualViewport.width;\n height = visualViewport.height;\n var layoutViewport = isLayoutViewport();\n\n if (layoutViewport || !layoutViewport && strategy === 'fixed') {\n x = visualViewport.offsetLeft;\n y = visualViewport.offsetTop;\n }\n }\n\n return {\n width: width,\n height: height,\n x: x + getWindowScrollBarX(element),\n y: y\n };\n}","import getDocumentElement from \"./getDocumentElement.js\";\nimport getComputedStyle from \"./getComputedStyle.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getWindowScroll from \"./getWindowScroll.js\";\nimport { max } from \"../utils/math.js\"; // Gets the entire size of the scrollable document area, even extending outside\n// of the `` and `` rect bounds if horizontally scrollable\n\nexport default function getDocumentRect(element) {\n var _element$ownerDocumen;\n\n var html = getDocumentElement(element);\n var winScroll = getWindowScroll(element);\n var body = (_element$ownerDocumen = element.ownerDocument) == null ? void 0 : _element$ownerDocumen.body;\n var width = max(html.scrollWidth, html.clientWidth, body ? body.scrollWidth : 0, body ? body.clientWidth : 0);\n var height = max(html.scrollHeight, html.clientHeight, body ? body.scrollHeight : 0, body ? body.clientHeight : 0);\n var x = -winScroll.scrollLeft + getWindowScrollBarX(element);\n var y = -winScroll.scrollTop;\n\n if (getComputedStyle(body || html).direction === 'rtl') {\n x += max(html.clientWidth, body ? body.clientWidth : 0) - width;\n }\n\n return {\n width: width,\n height: height,\n x: x,\n y: y\n };\n}","import getBasePlacement from \"./getBasePlacement.js\";\nimport getVariation from \"./getVariation.js\";\nimport getMainAxisFromPlacement from \"./getMainAxisFromPlacement.js\";\nimport { top, right, bottom, left, start, end } from \"../enums.js\";\nexport default function computeOffsets(_ref) {\n var reference = _ref.reference,\n element = _ref.element,\n placement = _ref.placement;\n var basePlacement = placement ? getBasePlacement(placement) : null;\n var variation = placement ? getVariation(placement) : null;\n var commonX = reference.x + reference.width / 2 - element.width / 2;\n var commonY = reference.y + reference.height / 2 - element.height / 2;\n var offsets;\n\n switch (basePlacement) {\n case top:\n offsets = {\n x: commonX,\n y: reference.y - element.height\n };\n break;\n\n case bottom:\n offsets = {\n x: commonX,\n y: reference.y + reference.height\n };\n break;\n\n case right:\n offsets = {\n x: reference.x + reference.width,\n y: commonY\n };\n break;\n\n case left:\n offsets = {\n x: reference.x - element.width,\n y: commonY\n };\n break;\n\n default:\n offsets = {\n x: reference.x,\n y: reference.y\n };\n }\n\n var mainAxis = basePlacement ? getMainAxisFromPlacement(basePlacement) : null;\n\n if (mainAxis != null) {\n var len = mainAxis === 'y' ? 'height' : 'width';\n\n switch (variation) {\n case start:\n offsets[mainAxis] = offsets[mainAxis] - (reference[len] / 2 - element[len] / 2);\n break;\n\n case end:\n offsets[mainAxis] = offsets[mainAxis] + (reference[len] / 2 - element[len] / 2);\n break;\n\n default:\n }\n }\n\n return offsets;\n}","import getClippingRect from \"../dom-utils/getClippingRect.js\";\nimport getDocumentElement from \"../dom-utils/getDocumentElement.js\";\nimport getBoundingClientRect from \"../dom-utils/getBoundingClientRect.js\";\nimport computeOffsets from \"./computeOffsets.js\";\nimport rectToClientRect from \"./rectToClientRect.js\";\nimport { clippingParents, reference, popper, bottom, top, right, basePlacements, viewport } from \"../enums.js\";\nimport { isElement } from \"../dom-utils/instanceOf.js\";\nimport mergePaddingObject from \"./mergePaddingObject.js\";\nimport expandToHashMap from \"./expandToHashMap.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport default function detectOverflow(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$placement = _options.placement,\n placement = _options$placement === void 0 ? state.placement : _options$placement,\n _options$strategy = _options.strategy,\n strategy = _options$strategy === void 0 ? state.strategy : _options$strategy,\n _options$boundary = _options.boundary,\n boundary = _options$boundary === void 0 ? clippingParents : _options$boundary,\n _options$rootBoundary = _options.rootBoundary,\n rootBoundary = _options$rootBoundary === void 0 ? viewport : _options$rootBoundary,\n _options$elementConte = _options.elementContext,\n elementContext = _options$elementConte === void 0 ? popper : _options$elementConte,\n _options$altBoundary = _options.altBoundary,\n altBoundary = _options$altBoundary === void 0 ? false : _options$altBoundary,\n _options$padding = _options.padding,\n padding = _options$padding === void 0 ? 0 : _options$padding;\n var paddingObject = mergePaddingObject(typeof padding !== 'number' ? padding : expandToHashMap(padding, basePlacements));\n var altContext = elementContext === popper ? reference : popper;\n var popperRect = state.rects.popper;\n var element = state.elements[altBoundary ? altContext : elementContext];\n var clippingClientRect = getClippingRect(isElement(element) ? element : element.contextElement || getDocumentElement(state.elements.popper), boundary, rootBoundary, strategy);\n var referenceClientRect = getBoundingClientRect(state.elements.reference);\n var popperOffsets = computeOffsets({\n reference: referenceClientRect,\n element: popperRect,\n strategy: 'absolute',\n placement: placement\n });\n var popperClientRect = rectToClientRect(Object.assign({}, popperRect, popperOffsets));\n var elementClientRect = elementContext === popper ? popperClientRect : referenceClientRect; // positive = overflowing the clipping rect\n // 0 or negative = within the clipping rect\n\n var overflowOffsets = {\n top: clippingClientRect.top - elementClientRect.top + paddingObject.top,\n bottom: elementClientRect.bottom - clippingClientRect.bottom + paddingObject.bottom,\n left: clippingClientRect.left - elementClientRect.left + paddingObject.left,\n right: elementClientRect.right - clippingClientRect.right + paddingObject.right\n };\n var offsetData = state.modifiersData.offset; // Offsets can be applied only to the popper element\n\n if (elementContext === popper && offsetData) {\n var offset = offsetData[placement];\n Object.keys(overflowOffsets).forEach(function (key) {\n var multiply = [right, bottom].indexOf(key) >= 0 ? 1 : -1;\n var axis = [top, bottom].indexOf(key) >= 0 ? 'y' : 'x';\n overflowOffsets[key] += offset[axis] * multiply;\n });\n }\n\n return overflowOffsets;\n}","import getOppositePlacement from \"../utils/getOppositePlacement.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getOppositeVariationPlacement from \"../utils/getOppositeVariationPlacement.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport computeAutoPlacement from \"../utils/computeAutoPlacement.js\";\nimport { bottom, top, start, right, left, auto } from \"../enums.js\";\nimport getVariation from \"../utils/getVariation.js\"; // eslint-disable-next-line import/no-unused-modules\n\nfunction getExpandedFallbackPlacements(placement) {\n if (getBasePlacement(placement) === auto) {\n return [];\n }\n\n var oppositePlacement = getOppositePlacement(placement);\n return [getOppositeVariationPlacement(placement), oppositePlacement, getOppositeVariationPlacement(oppositePlacement)];\n}\n\nfunction flip(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n\n if (state.modifiersData[name]._skip) {\n return;\n }\n\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? true : _options$altAxis,\n specifiedFallbackPlacements = options.fallbackPlacements,\n padding = options.padding,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n _options$flipVariatio = options.flipVariations,\n flipVariations = _options$flipVariatio === void 0 ? true : _options$flipVariatio,\n allowedAutoPlacements = options.allowedAutoPlacements;\n var preferredPlacement = state.options.placement;\n var basePlacement = getBasePlacement(preferredPlacement);\n var isBasePlacement = basePlacement === preferredPlacement;\n var fallbackPlacements = specifiedFallbackPlacements || (isBasePlacement || !flipVariations ? [getOppositePlacement(preferredPlacement)] : getExpandedFallbackPlacements(preferredPlacement));\n var placements = [preferredPlacement].concat(fallbackPlacements).reduce(function (acc, placement) {\n return acc.concat(getBasePlacement(placement) === auto ? computeAutoPlacement(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n flipVariations: flipVariations,\n allowedAutoPlacements: allowedAutoPlacements\n }) : placement);\n }, []);\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var checksMap = new Map();\n var makeFallbackChecks = true;\n var firstFittingPlacement = placements[0];\n\n for (var i = 0; i < placements.length; i++) {\n var placement = placements[i];\n\n var _basePlacement = getBasePlacement(placement);\n\n var isStartVariation = getVariation(placement) === start;\n var isVertical = [top, bottom].indexOf(_basePlacement) >= 0;\n var len = isVertical ? 'width' : 'height';\n var overflow = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n altBoundary: altBoundary,\n padding: padding\n });\n var mainVariationSide = isVertical ? isStartVariation ? right : left : isStartVariation ? bottom : top;\n\n if (referenceRect[len] > popperRect[len]) {\n mainVariationSide = getOppositePlacement(mainVariationSide);\n }\n\n var altVariationSide = getOppositePlacement(mainVariationSide);\n var checks = [];\n\n if (checkMainAxis) {\n checks.push(overflow[_basePlacement] <= 0);\n }\n\n if (checkAltAxis) {\n checks.push(overflow[mainVariationSide] <= 0, overflow[altVariationSide] <= 0);\n }\n\n if (checks.every(function (check) {\n return check;\n })) {\n firstFittingPlacement = placement;\n makeFallbackChecks = false;\n break;\n }\n\n checksMap.set(placement, checks);\n }\n\n if (makeFallbackChecks) {\n // `2` may be desired in some cases – research later\n var numberOfChecks = flipVariations ? 3 : 1;\n\n var _loop = function _loop(_i) {\n var fittingPlacement = placements.find(function (placement) {\n var checks = checksMap.get(placement);\n\n if (checks) {\n return checks.slice(0, _i).every(function (check) {\n return check;\n });\n }\n });\n\n if (fittingPlacement) {\n firstFittingPlacement = fittingPlacement;\n return \"break\";\n }\n };\n\n for (var _i = numberOfChecks; _i > 0; _i--) {\n var _ret = _loop(_i);\n\n if (_ret === \"break\") break;\n }\n }\n\n if (state.placement !== firstFittingPlacement) {\n state.modifiersData[name]._skip = true;\n state.placement = firstFittingPlacement;\n state.reset = true;\n }\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'flip',\n enabled: true,\n phase: 'main',\n fn: flip,\n requiresIfExists: ['offset'],\n data: {\n _skip: false\n }\n};","import getVariation from \"./getVariation.js\";\nimport { variationPlacements, basePlacements, placements as allPlacements } from \"../enums.js\";\nimport detectOverflow from \"./detectOverflow.js\";\nimport getBasePlacement from \"./getBasePlacement.js\";\nexport default function computeAutoPlacement(state, options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n placement = _options.placement,\n boundary = _options.boundary,\n rootBoundary = _options.rootBoundary,\n padding = _options.padding,\n flipVariations = _options.flipVariations,\n _options$allowedAutoP = _options.allowedAutoPlacements,\n allowedAutoPlacements = _options$allowedAutoP === void 0 ? allPlacements : _options$allowedAutoP;\n var variation = getVariation(placement);\n var placements = variation ? flipVariations ? variationPlacements : variationPlacements.filter(function (placement) {\n return getVariation(placement) === variation;\n }) : basePlacements;\n var allowedPlacements = placements.filter(function (placement) {\n return allowedAutoPlacements.indexOf(placement) >= 0;\n });\n\n if (allowedPlacements.length === 0) {\n allowedPlacements = placements;\n\n if (process.env.NODE_ENV !== \"production\") {\n console.error(['Popper: The `allowedAutoPlacements` option did not allow any', 'placements. Ensure the `placement` option matches the variation', 'of the allowed placements.', 'For example, \"auto\" cannot be used to allow \"bottom-start\".', 'Use \"auto-start\" instead.'].join(' '));\n }\n } // $FlowFixMe[incompatible-type]: Flow seems to have problems with two array unions...\n\n\n var overflows = allowedPlacements.reduce(function (acc, placement) {\n acc[placement] = detectOverflow(state, {\n placement: placement,\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding\n })[getBasePlacement(placement)];\n return acc;\n }, {});\n return Object.keys(overflows).sort(function (a, b) {\n return overflows[a] - overflows[b];\n });\n}","import { top, bottom, left, right } from \"../enums.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\n\nfunction getSideOffsets(overflow, rect, preventedOffsets) {\n if (preventedOffsets === void 0) {\n preventedOffsets = {\n x: 0,\n y: 0\n };\n }\n\n return {\n top: overflow.top - rect.height - preventedOffsets.y,\n right: overflow.right - rect.width + preventedOffsets.x,\n bottom: overflow.bottom - rect.height + preventedOffsets.y,\n left: overflow.left - rect.width - preventedOffsets.x\n };\n}\n\nfunction isAnySideFullyClipped(overflow) {\n return [top, right, bottom, left].some(function (side) {\n return overflow[side] >= 0;\n });\n}\n\nfunction hide(_ref) {\n var state = _ref.state,\n name = _ref.name;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var preventedOffsets = state.modifiersData.preventOverflow;\n var referenceOverflow = detectOverflow(state, {\n elementContext: 'reference'\n });\n var popperAltOverflow = detectOverflow(state, {\n altBoundary: true\n });\n var referenceClippingOffsets = getSideOffsets(referenceOverflow, referenceRect);\n var popperEscapeOffsets = getSideOffsets(popperAltOverflow, popperRect, preventedOffsets);\n var isReferenceHidden = isAnySideFullyClipped(referenceClippingOffsets);\n var hasPopperEscaped = isAnySideFullyClipped(popperEscapeOffsets);\n state.modifiersData[name] = {\n referenceClippingOffsets: referenceClippingOffsets,\n popperEscapeOffsets: popperEscapeOffsets,\n isReferenceHidden: isReferenceHidden,\n hasPopperEscaped: hasPopperEscaped\n };\n state.attributes.popper = Object.assign({}, state.attributes.popper, {\n 'data-popper-reference-hidden': isReferenceHidden,\n 'data-popper-escaped': hasPopperEscaped\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'hide',\n enabled: true,\n phase: 'main',\n requiresIfExists: ['preventOverflow'],\n fn: hide\n};","import getBasePlacement from \"../utils/getBasePlacement.js\";\nimport { top, left, right, placements } from \"../enums.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport function distanceAndSkiddingToXY(placement, rects, offset) {\n var basePlacement = getBasePlacement(placement);\n var invertDistance = [left, top].indexOf(basePlacement) >= 0 ? -1 : 1;\n\n var _ref = typeof offset === 'function' ? offset(Object.assign({}, rects, {\n placement: placement\n })) : offset,\n skidding = _ref[0],\n distance = _ref[1];\n\n skidding = skidding || 0;\n distance = (distance || 0) * invertDistance;\n return [left, right].indexOf(basePlacement) >= 0 ? {\n x: distance,\n y: skidding\n } : {\n x: skidding,\n y: distance\n };\n}\n\nfunction offset(_ref2) {\n var state = _ref2.state,\n options = _ref2.options,\n name = _ref2.name;\n var _options$offset = options.offset,\n offset = _options$offset === void 0 ? [0, 0] : _options$offset;\n var data = placements.reduce(function (acc, placement) {\n acc[placement] = distanceAndSkiddingToXY(placement, state.rects, offset);\n return acc;\n }, {});\n var _data$state$placement = data[state.placement],\n x = _data$state$placement.x,\n y = _data$state$placement.y;\n\n if (state.modifiersData.popperOffsets != null) {\n state.modifiersData.popperOffsets.x += x;\n state.modifiersData.popperOffsets.y += y;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'offset',\n enabled: true,\n phase: 'main',\n requires: ['popperOffsets'],\n fn: offset\n};","import computeOffsets from \"../utils/computeOffsets.js\";\n\nfunction popperOffsets(_ref) {\n var state = _ref.state,\n name = _ref.name;\n // Offsets are the actual position the popper needs to have to be\n // properly positioned near its reference element\n // This is the most basic placement, and will be adjusted by\n // the modifiers in the next step\n state.modifiersData[name] = computeOffsets({\n reference: state.rects.reference,\n element: state.rects.popper,\n strategy: 'absolute',\n placement: state.placement\n });\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'popperOffsets',\n enabled: true,\n phase: 'read',\n fn: popperOffsets,\n data: {}\n};","import { top, left, right, bottom, start } from \"../enums.js\";\nimport getBasePlacement from \"../utils/getBasePlacement.js\";\nimport getMainAxisFromPlacement from \"../utils/getMainAxisFromPlacement.js\";\nimport getAltAxis from \"../utils/getAltAxis.js\";\nimport { within, withinMaxClamp } from \"../utils/within.js\";\nimport getLayoutRect from \"../dom-utils/getLayoutRect.js\";\nimport getOffsetParent from \"../dom-utils/getOffsetParent.js\";\nimport detectOverflow from \"../utils/detectOverflow.js\";\nimport getVariation from \"../utils/getVariation.js\";\nimport getFreshSideObject from \"../utils/getFreshSideObject.js\";\nimport { min as mathMin, max as mathMax } from \"../utils/math.js\";\n\nfunction preventOverflow(_ref) {\n var state = _ref.state,\n options = _ref.options,\n name = _ref.name;\n var _options$mainAxis = options.mainAxis,\n checkMainAxis = _options$mainAxis === void 0 ? true : _options$mainAxis,\n _options$altAxis = options.altAxis,\n checkAltAxis = _options$altAxis === void 0 ? false : _options$altAxis,\n boundary = options.boundary,\n rootBoundary = options.rootBoundary,\n altBoundary = options.altBoundary,\n padding = options.padding,\n _options$tether = options.tether,\n tether = _options$tether === void 0 ? true : _options$tether,\n _options$tetherOffset = options.tetherOffset,\n tetherOffset = _options$tetherOffset === void 0 ? 0 : _options$tetherOffset;\n var overflow = detectOverflow(state, {\n boundary: boundary,\n rootBoundary: rootBoundary,\n padding: padding,\n altBoundary: altBoundary\n });\n var basePlacement = getBasePlacement(state.placement);\n var variation = getVariation(state.placement);\n var isBasePlacement = !variation;\n var mainAxis = getMainAxisFromPlacement(basePlacement);\n var altAxis = getAltAxis(mainAxis);\n var popperOffsets = state.modifiersData.popperOffsets;\n var referenceRect = state.rects.reference;\n var popperRect = state.rects.popper;\n var tetherOffsetValue = typeof tetherOffset === 'function' ? tetherOffset(Object.assign({}, state.rects, {\n placement: state.placement\n })) : tetherOffset;\n var normalizedTetherOffsetValue = typeof tetherOffsetValue === 'number' ? {\n mainAxis: tetherOffsetValue,\n altAxis: tetherOffsetValue\n } : Object.assign({\n mainAxis: 0,\n altAxis: 0\n }, tetherOffsetValue);\n var offsetModifierState = state.modifiersData.offset ? state.modifiersData.offset[state.placement] : null;\n var data = {\n x: 0,\n y: 0\n };\n\n if (!popperOffsets) {\n return;\n }\n\n if (checkMainAxis) {\n var _offsetModifierState$;\n\n var mainSide = mainAxis === 'y' ? top : left;\n var altSide = mainAxis === 'y' ? bottom : right;\n var len = mainAxis === 'y' ? 'height' : 'width';\n var offset = popperOffsets[mainAxis];\n var min = offset + overflow[mainSide];\n var max = offset - overflow[altSide];\n var additive = tether ? -popperRect[len] / 2 : 0;\n var minLen = variation === start ? referenceRect[len] : popperRect[len];\n var maxLen = variation === start ? -popperRect[len] : -referenceRect[len]; // We need to include the arrow in the calculation so the arrow doesn't go\n // outside the reference bounds\n\n var arrowElement = state.elements.arrow;\n var arrowRect = tether && arrowElement ? getLayoutRect(arrowElement) : {\n width: 0,\n height: 0\n };\n var arrowPaddingObject = state.modifiersData['arrow#persistent'] ? state.modifiersData['arrow#persistent'].padding : getFreshSideObject();\n var arrowPaddingMin = arrowPaddingObject[mainSide];\n var arrowPaddingMax = arrowPaddingObject[altSide]; // If the reference length is smaller than the arrow length, we don't want\n // to include its full size in the calculation. If the reference is small\n // and near the edge of a boundary, the popper can overflow even if the\n // reference is not overflowing as well (e.g. virtual elements with no\n // width or height)\n\n var arrowLen = within(0, referenceRect[len], arrowRect[len]);\n var minOffset = isBasePlacement ? referenceRect[len] / 2 - additive - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis : minLen - arrowLen - arrowPaddingMin - normalizedTetherOffsetValue.mainAxis;\n var maxOffset = isBasePlacement ? -referenceRect[len] / 2 + additive + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis : maxLen + arrowLen + arrowPaddingMax + normalizedTetherOffsetValue.mainAxis;\n var arrowOffsetParent = state.elements.arrow && getOffsetParent(state.elements.arrow);\n var clientOffset = arrowOffsetParent ? mainAxis === 'y' ? arrowOffsetParent.clientTop || 0 : arrowOffsetParent.clientLeft || 0 : 0;\n var offsetModifierValue = (_offsetModifierState$ = offsetModifierState == null ? void 0 : offsetModifierState[mainAxis]) != null ? _offsetModifierState$ : 0;\n var tetherMin = offset + minOffset - offsetModifierValue - clientOffset;\n var tetherMax = offset + maxOffset - offsetModifierValue;\n var preventedOffset = within(tether ? mathMin(min, tetherMin) : min, offset, tether ? mathMax(max, tetherMax) : max);\n popperOffsets[mainAxis] = preventedOffset;\n data[mainAxis] = preventedOffset - offset;\n }\n\n if (checkAltAxis) {\n var _offsetModifierState$2;\n\n var _mainSide = mainAxis === 'x' ? top : left;\n\n var _altSide = mainAxis === 'x' ? bottom : right;\n\n var _offset = popperOffsets[altAxis];\n\n var _len = altAxis === 'y' ? 'height' : 'width';\n\n var _min = _offset + overflow[_mainSide];\n\n var _max = _offset - overflow[_altSide];\n\n var isOriginSide = [top, left].indexOf(basePlacement) !== -1;\n\n var _offsetModifierValue = (_offsetModifierState$2 = offsetModifierState == null ? void 0 : offsetModifierState[altAxis]) != null ? _offsetModifierState$2 : 0;\n\n var _tetherMin = isOriginSide ? _min : _offset - referenceRect[_len] - popperRect[_len] - _offsetModifierValue + normalizedTetherOffsetValue.altAxis;\n\n var _tetherMax = isOriginSide ? _offset + referenceRect[_len] + popperRect[_len] - _offsetModifierValue - normalizedTetherOffsetValue.altAxis : _max;\n\n var _preventedOffset = tether && isOriginSide ? withinMaxClamp(_tetherMin, _offset, _tetherMax) : within(tether ? _tetherMin : _min, _offset, tether ? _tetherMax : _max);\n\n popperOffsets[altAxis] = _preventedOffset;\n data[altAxis] = _preventedOffset - _offset;\n }\n\n state.modifiersData[name] = data;\n} // eslint-disable-next-line import/no-unused-modules\n\n\nexport default {\n name: 'preventOverflow',\n enabled: true,\n phase: 'main',\n fn: preventOverflow,\n requiresIfExists: ['offset']\n};","export default function getAltAxis(axis) {\n return axis === 'x' ? 'y' : 'x';\n}","import getBoundingClientRect from \"./getBoundingClientRect.js\";\nimport getNodeScroll from \"./getNodeScroll.js\";\nimport getNodeName from \"./getNodeName.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getWindowScrollBarX from \"./getWindowScrollBarX.js\";\nimport getDocumentElement from \"./getDocumentElement.js\";\nimport isScrollParent from \"./isScrollParent.js\";\nimport { round } from \"../utils/math.js\";\n\nfunction isElementScaled(element) {\n var rect = element.getBoundingClientRect();\n var scaleX = round(rect.width) / element.offsetWidth || 1;\n var scaleY = round(rect.height) / element.offsetHeight || 1;\n return scaleX !== 1 || scaleY !== 1;\n} // Returns the composite rect of an element relative to its offsetParent.\n// Composite means it takes into account transforms as well as layout.\n\n\nexport default function getCompositeRect(elementOrVirtualElement, offsetParent, isFixed) {\n if (isFixed === void 0) {\n isFixed = false;\n }\n\n var isOffsetParentAnElement = isHTMLElement(offsetParent);\n var offsetParentIsScaled = isHTMLElement(offsetParent) && isElementScaled(offsetParent);\n var documentElement = getDocumentElement(offsetParent);\n var rect = getBoundingClientRect(elementOrVirtualElement, offsetParentIsScaled, isFixed);\n var scroll = {\n scrollLeft: 0,\n scrollTop: 0\n };\n var offsets = {\n x: 0,\n y: 0\n };\n\n if (isOffsetParentAnElement || !isOffsetParentAnElement && !isFixed) {\n if (getNodeName(offsetParent) !== 'body' || // https://github.com/popperjs/popper-core/issues/1078\n isScrollParent(documentElement)) {\n scroll = getNodeScroll(offsetParent);\n }\n\n if (isHTMLElement(offsetParent)) {\n offsets = getBoundingClientRect(offsetParent, true);\n offsets.x += offsetParent.clientLeft;\n offsets.y += offsetParent.clientTop;\n } else if (documentElement) {\n offsets.x = getWindowScrollBarX(documentElement);\n }\n }\n\n return {\n x: rect.left + scroll.scrollLeft - offsets.x,\n y: rect.top + scroll.scrollTop - offsets.y,\n width: rect.width,\n height: rect.height\n };\n}","import getWindowScroll from \"./getWindowScroll.js\";\nimport getWindow from \"./getWindow.js\";\nimport { isHTMLElement } from \"./instanceOf.js\";\nimport getHTMLElementScroll from \"./getHTMLElementScroll.js\";\nexport default function getNodeScroll(node) {\n if (node === getWindow(node) || !isHTMLElement(node)) {\n return getWindowScroll(node);\n } else {\n return getHTMLElementScroll(node);\n }\n}","export default function getHTMLElementScroll(element) {\n return {\n scrollLeft: element.scrollLeft,\n scrollTop: element.scrollTop\n };\n}","import { modifierPhases } from \"../enums.js\"; // source: https://stackoverflow.com/questions/49875255\n\nfunction order(modifiers) {\n var map = new Map();\n var visited = new Set();\n var result = [];\n modifiers.forEach(function (modifier) {\n map.set(modifier.name, modifier);\n }); // On visiting object, check for its dependencies and visit them recursively\n\n function sort(modifier) {\n visited.add(modifier.name);\n var requires = [].concat(modifier.requires || [], modifier.requiresIfExists || []);\n requires.forEach(function (dep) {\n if (!visited.has(dep)) {\n var depModifier = map.get(dep);\n\n if (depModifier) {\n sort(depModifier);\n }\n }\n });\n result.push(modifier);\n }\n\n modifiers.forEach(function (modifier) {\n if (!visited.has(modifier.name)) {\n // check for visited object\n sort(modifier);\n }\n });\n return result;\n}\n\nexport default function orderModifiers(modifiers) {\n // order based on dependencies\n var orderedModifiers = order(modifiers); // order based on phase\n\n return modifierPhases.reduce(function (acc, phase) {\n return acc.concat(orderedModifiers.filter(function (modifier) {\n return modifier.phase === phase;\n }));\n }, []);\n}","export default function debounce(fn) {\n var pending;\n return function () {\n if (!pending) {\n pending = new Promise(function (resolve) {\n Promise.resolve().then(function () {\n pending = undefined;\n resolve(fn());\n });\n });\n }\n\n return pending;\n };\n}","import getCompositeRect from \"./dom-utils/getCompositeRect.js\";\nimport getLayoutRect from \"./dom-utils/getLayoutRect.js\";\nimport listScrollParents from \"./dom-utils/listScrollParents.js\";\nimport getOffsetParent from \"./dom-utils/getOffsetParent.js\";\nimport getComputedStyle from \"./dom-utils/getComputedStyle.js\";\nimport orderModifiers from \"./utils/orderModifiers.js\";\nimport debounce from \"./utils/debounce.js\";\nimport validateModifiers from \"./utils/validateModifiers.js\";\nimport uniqueBy from \"./utils/uniqueBy.js\";\nimport getBasePlacement from \"./utils/getBasePlacement.js\";\nimport mergeByName from \"./utils/mergeByName.js\";\nimport detectOverflow from \"./utils/detectOverflow.js\";\nimport { isElement } from \"./dom-utils/instanceOf.js\";\nimport { auto } from \"./enums.js\";\nvar INVALID_ELEMENT_ERROR = 'Popper: Invalid reference or popper argument provided. They must be either a DOM element or virtual element.';\nvar INFINITE_LOOP_ERROR = 'Popper: An infinite loop in the modifiers cycle has been detected! The cycle has been interrupted to prevent a browser crash.';\nvar DEFAULT_OPTIONS = {\n placement: 'bottom',\n modifiers: [],\n strategy: 'absolute'\n};\n\nfunction areValidElements() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return !args.some(function (element) {\n return !(element && typeof element.getBoundingClientRect === 'function');\n });\n}\n\nexport function popperGenerator(generatorOptions) {\n if (generatorOptions === void 0) {\n generatorOptions = {};\n }\n\n var _generatorOptions = generatorOptions,\n _generatorOptions$def = _generatorOptions.defaultModifiers,\n defaultModifiers = _generatorOptions$def === void 0 ? [] : _generatorOptions$def,\n _generatorOptions$def2 = _generatorOptions.defaultOptions,\n defaultOptions = _generatorOptions$def2 === void 0 ? DEFAULT_OPTIONS : _generatorOptions$def2;\n return function createPopper(reference, popper, options) {\n if (options === void 0) {\n options = defaultOptions;\n }\n\n var state = {\n placement: 'bottom',\n orderedModifiers: [],\n options: Object.assign({}, DEFAULT_OPTIONS, defaultOptions),\n modifiersData: {},\n elements: {\n reference: reference,\n popper: popper\n },\n attributes: {},\n styles: {}\n };\n var effectCleanupFns = [];\n var isDestroyed = false;\n var instance = {\n state: state,\n setOptions: function setOptions(setOptionsAction) {\n var options = typeof setOptionsAction === 'function' ? setOptionsAction(state.options) : setOptionsAction;\n cleanupModifierEffects();\n state.options = Object.assign({}, defaultOptions, state.options, options);\n state.scrollParents = {\n reference: isElement(reference) ? listScrollParents(reference) : reference.contextElement ? listScrollParents(reference.contextElement) : [],\n popper: listScrollParents(popper)\n }; // Orders the modifiers based on their dependencies and `phase`\n // properties\n\n var orderedModifiers = orderModifiers(mergeByName([].concat(defaultModifiers, state.options.modifiers))); // Strip out disabled modifiers\n\n state.orderedModifiers = orderedModifiers.filter(function (m) {\n return m.enabled;\n }); // Validate the provided modifiers so that the consumer will get warned\n // if one of the modifiers is invalid for any reason\n\n if (process.env.NODE_ENV !== \"production\") {\n var modifiers = uniqueBy([].concat(orderedModifiers, state.options.modifiers), function (_ref) {\n var name = _ref.name;\n return name;\n });\n validateModifiers(modifiers);\n\n if (getBasePlacement(state.options.placement) === auto) {\n var flipModifier = state.orderedModifiers.find(function (_ref2) {\n var name = _ref2.name;\n return name === 'flip';\n });\n\n if (!flipModifier) {\n console.error(['Popper: \"auto\" placements require the \"flip\" modifier be', 'present and enabled to work.'].join(' '));\n }\n }\n\n var _getComputedStyle = getComputedStyle(popper),\n marginTop = _getComputedStyle.marginTop,\n marginRight = _getComputedStyle.marginRight,\n marginBottom = _getComputedStyle.marginBottom,\n marginLeft = _getComputedStyle.marginLeft; // We no longer take into account `margins` on the popper, and it can\n // cause bugs with positioning, so we'll warn the consumer\n\n\n if ([marginTop, marginRight, marginBottom, marginLeft].some(function (margin) {\n return parseFloat(margin);\n })) {\n console.warn(['Popper: CSS \"margin\" styles cannot be used to apply padding', 'between the popper and its reference element or boundary.', 'To replicate margin, use the `offset` modifier, as well as', 'the `padding` option in the `preventOverflow` and `flip`', 'modifiers.'].join(' '));\n }\n }\n\n runModifierEffects();\n return instance.update();\n },\n // Sync update – it will always be executed, even if not necessary. This\n // is useful for low frequency updates where sync behavior simplifies the\n // logic.\n // For high frequency updates (e.g. `resize` and `scroll` events), always\n // prefer the async Popper#update method\n forceUpdate: function forceUpdate() {\n if (isDestroyed) {\n return;\n }\n\n var _state$elements = state.elements,\n reference = _state$elements.reference,\n popper = _state$elements.popper; // Don't proceed if `reference` or `popper` are not valid elements\n // anymore\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return;\n } // Store the reference and popper rects to be read by modifiers\n\n\n state.rects = {\n reference: getCompositeRect(reference, getOffsetParent(popper), state.options.strategy === 'fixed'),\n popper: getLayoutRect(popper)\n }; // Modifiers have the ability to reset the current update cycle. The\n // most common use case for this is the `flip` modifier changing the\n // placement, which then needs to re-run all the modifiers, because the\n // logic was previously ran for the previous placement and is therefore\n // stale/incorrect\n\n state.reset = false;\n state.placement = state.options.placement; // On each update cycle, the `modifiersData` property for each modifier\n // is filled with the initial data specified by the modifier. This means\n // it doesn't persist and is fresh on each update.\n // To ensure persistent data, use `${name}#persistent`\n\n state.orderedModifiers.forEach(function (modifier) {\n return state.modifiersData[modifier.name] = Object.assign({}, modifier.data);\n });\n var __debug_loops__ = 0;\n\n for (var index = 0; index < state.orderedModifiers.length; index++) {\n if (process.env.NODE_ENV !== \"production\") {\n __debug_loops__ += 1;\n\n if (__debug_loops__ > 100) {\n console.error(INFINITE_LOOP_ERROR);\n break;\n }\n }\n\n if (state.reset === true) {\n state.reset = false;\n index = -1;\n continue;\n }\n\n var _state$orderedModifie = state.orderedModifiers[index],\n fn = _state$orderedModifie.fn,\n _state$orderedModifie2 = _state$orderedModifie.options,\n _options = _state$orderedModifie2 === void 0 ? {} : _state$orderedModifie2,\n name = _state$orderedModifie.name;\n\n if (typeof fn === 'function') {\n state = fn({\n state: state,\n options: _options,\n name: name,\n instance: instance\n }) || state;\n }\n }\n },\n // Async and optimistically optimized update – it will not be executed if\n // not necessary (debounced to run at most once-per-tick)\n update: debounce(function () {\n return new Promise(function (resolve) {\n instance.forceUpdate();\n resolve(state);\n });\n }),\n destroy: function destroy() {\n cleanupModifierEffects();\n isDestroyed = true;\n }\n };\n\n if (!areValidElements(reference, popper)) {\n if (process.env.NODE_ENV !== \"production\") {\n console.error(INVALID_ELEMENT_ERROR);\n }\n\n return instance;\n }\n\n instance.setOptions(options).then(function (state) {\n if (!isDestroyed && options.onFirstUpdate) {\n options.onFirstUpdate(state);\n }\n }); // Modifiers have the ability to execute arbitrary code before the first\n // update cycle runs. They will be executed in the same order as the update\n // cycle. This is useful when a modifier adds some persistent data that\n // other modifiers need to use, but the modifier is run after the dependent\n // one.\n\n function runModifierEffects() {\n state.orderedModifiers.forEach(function (_ref3) {\n var name = _ref3.name,\n _ref3$options = _ref3.options,\n options = _ref3$options === void 0 ? {} : _ref3$options,\n effect = _ref3.effect;\n\n if (typeof effect === 'function') {\n var cleanupFn = effect({\n state: state,\n name: name,\n instance: instance,\n options: options\n });\n\n var noopFn = function noopFn() {};\n\n effectCleanupFns.push(cleanupFn || noopFn);\n }\n });\n }\n\n function cleanupModifierEffects() {\n effectCleanupFns.forEach(function (fn) {\n return fn();\n });\n effectCleanupFns = [];\n }\n\n return instance;\n };\n}\nexport var createPopper = /*#__PURE__*/popperGenerator(); // eslint-disable-next-line import/no-unused-modules\n\nexport { detectOverflow };","export default function mergeByName(modifiers) {\n var merged = modifiers.reduce(function (merged, current) {\n var existing = merged[current.name];\n merged[current.name] = existing ? Object.assign({}, existing, current, {\n options: Object.assign({}, existing.options, current.options),\n data: Object.assign({}, existing.data, current.data)\n }) : current;\n return merged;\n }, {}); // IE11 does not support Object.values\n\n return Object.keys(merged).map(function (key) {\n return merged[key];\n });\n}","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nimport offset from \"./modifiers/offset.js\";\nimport flip from \"./modifiers/flip.js\";\nimport preventOverflow from \"./modifiers/preventOverflow.js\";\nimport arrow from \"./modifiers/arrow.js\";\nimport hide from \"./modifiers/hide.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles, offset, flip, preventOverflow, arrow, hide];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow }; // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper as createPopperLite } from \"./popper-lite.js\"; // eslint-disable-next-line import/no-unused-modules\n\nexport * from \"./modifiers/index.js\";","import { popperGenerator, detectOverflow } from \"./createPopper.js\";\nimport eventListeners from \"./modifiers/eventListeners.js\";\nimport popperOffsets from \"./modifiers/popperOffsets.js\";\nimport computeStyles from \"./modifiers/computeStyles.js\";\nimport applyStyles from \"./modifiers/applyStyles.js\";\nvar defaultModifiers = [eventListeners, popperOffsets, computeStyles, applyStyles];\nvar createPopper = /*#__PURE__*/popperGenerator({\n defaultModifiers: defaultModifiers\n}); // eslint-disable-next-line import/no-unused-modules\n\nexport { createPopper, popperGenerator, defaultModifiers, detectOverflow };","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('../Role/Role.js');\nrequire('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('../Group/Group.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nvar Composite_CompositeState = require('../Composite/CompositeState.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nrequire('../getLabelId-eba7e47b.js');\nrequire('./utils/getIn.js');\nrequire('../shouldShowError-880a39c9.js');\nvar Form_FormGroup = require('./FormGroup.js');\n\nvar FormRadioGroupContext = /*#__PURE__*/React.createContext(null);\nvar unstable_useFormRadioGroup = createHook.createHook({\n name: \"FormRadioGroup\",\n compose: Form_FormGroup.unstable_useFormGroup,\n keys: __keys.FORM_RADIO_GROUP_KEYS,\n useOptions: function useOptions(options, _ref) {\n var name = _ref.name;\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n name: options.name || name\n });\n },\n useProps: function useProps(options, _ref2) {\n var htmlWrapElement = _ref2.wrapElement,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"wrapElement\"]);\n\n var id = getInputId.getInputId(options.name, options.baseId);\n var composite = Composite_CompositeState.useCompositeState({\n baseId: id,\n loop: true\n });\n var providerValue = React.useMemo(function () {\n return composite;\n }, Object.values(composite));\n var wrapElement = React.useCallback(function (element) {\n element = /*#__PURE__*/React.createElement(FormRadioGroupContext.Provider, {\n value: providerValue\n }, element);\n\n if (htmlWrapElement) {\n return htmlWrapElement(element);\n }\n\n return element;\n }, [providerValue, htmlWrapElement]);\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"radiogroup\",\n wrapElement: wrapElement\n }, htmlProps);\n }\n});\nvar unstable_FormRadioGroup = createComponent.createComponent({\n as: \"fieldset\",\n useHook: unstable_useFormRadioGroup\n});\n\nexports.FormRadioGroupContext = FormRadioGroupContext;\nexports.unstable_FormRadioGroup = unstable_FormRadioGroup;\nexports.unstable_useFormRadioGroup = unstable_useFormRadioGroup;\n","'use strict';\n\nvar React = require('react');\n\nvar DialogBackdropContext = /*#__PURE__*/React.createContext(undefined);\n\nexports.DialogBackdropContext = DialogBackdropContext;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-warning');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/dom');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nrequire('../Composite/CompositeState.js');\nrequire('../Grid/GridState.js');\nrequire('../ComboboxBaseState-cfd43319.js');\nvar Combobox_ComboboxListGridState = require('./ComboboxListGridState.js');\nrequire('@popperjs/core');\nrequire('../Disclosure/DisclosureState.js');\nrequire('../Dialog/DialogState.js');\nrequire('../Popover/PopoverState.js');\nvar ComboboxPopoverState = require('../ComboboxPopoverState-98e3f717.js');\n\nfunction unstable_useComboboxGridState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var sealed = useSealedState.useSealedState(initialState);\n var combobox = Combobox_ComboboxListGridState.unstable_useComboboxListGridState(sealed);\n return ComboboxPopoverState.useComboboxPopoverState(combobox, sealed);\n}\n\nexports.unstable_useComboboxGridState = unstable_useComboboxGridState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar Role_Role = require('../Role/Role.js');\nvar __keys = require('../__keys-724ea0fe.js');\n\nvar useTooltipReference = createHook.createHook({\n name: \"TooltipReference\",\n compose: Role_Role.useRole,\n keys: __keys.TOOLTIP_REFERENCE_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlOnFocus = _ref.onFocus,\n htmlOnBlur = _ref.onBlur,\n htmlOnMouseEnter = _ref.onMouseEnter,\n htmlOnMouseLeave = _ref.onMouseLeave,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\", \"onFocus\", \"onBlur\", \"onMouseEnter\", \"onMouseLeave\"]);\n\n var onFocusRef = useLiveRef.useLiveRef(htmlOnFocus);\n var onBlurRef = useLiveRef.useLiveRef(htmlOnBlur);\n var onMouseEnterRef = useLiveRef.useLiveRef(htmlOnMouseEnter);\n var onMouseLeaveRef = useLiveRef.useLiveRef(htmlOnMouseLeave);\n var onFocus = React.useCallback(function (event) {\n var _onFocusRef$current, _options$show;\n\n (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);\n if (event.defaultPrevented) return;\n (_options$show = options.show) === null || _options$show === void 0 ? void 0 : _options$show.call(options);\n }, [options.show]);\n var onBlur = React.useCallback(function (event) {\n var _onBlurRef$current, _options$hide;\n\n (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);\n if (event.defaultPrevented) return;\n (_options$hide = options.hide) === null || _options$hide === void 0 ? void 0 : _options$hide.call(options);\n }, [options.hide]);\n var onMouseEnter = React.useCallback(function (event) {\n var _onMouseEnterRef$curr, _options$show2;\n\n (_onMouseEnterRef$curr = onMouseEnterRef.current) === null || _onMouseEnterRef$curr === void 0 ? void 0 : _onMouseEnterRef$curr.call(onMouseEnterRef, event);\n if (event.defaultPrevented) return;\n (_options$show2 = options.show) === null || _options$show2 === void 0 ? void 0 : _options$show2.call(options);\n }, [options.show]);\n var onMouseLeave = React.useCallback(function (event) {\n var _onMouseLeaveRef$curr, _options$hide2;\n\n (_onMouseLeaveRef$curr = onMouseLeaveRef.current) === null || _onMouseLeaveRef$curr === void 0 ? void 0 : _onMouseLeaveRef$curr.call(onMouseLeaveRef, event);\n if (event.defaultPrevented) return;\n (_options$hide2 = options.hide) === null || _options$hide2 === void 0 ? void 0 : _options$hide2.call(options);\n }, [options.hide]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(options.unstable_referenceRef, htmlRef),\n tabIndex: 0,\n onFocus: onFocus,\n onBlur: onBlur,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n \"aria-describedby\": options.baseId\n }, htmlProps);\n }\n});\nvar TooltipReference = createComponent.createComponent({\n as: \"div\",\n useHook: useTooltipReference\n});\n\nexports.TooltipReference = TooltipReference;\nexports.useTooltipReference = useTooltipReference;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nvar Composite_CompositeState = require('../Composite/CompositeState.js');\n\nfunction useRadioState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n initialValue = _useSealedState.state,\n _useSealedState$loop = _useSealedState.loop,\n loop = _useSealedState$loop === void 0 ? true : _useSealedState$loop,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"state\", \"loop\"]);\n\n var _React$useState = React.useState(initialValue),\n state = _React$useState[0],\n setState = _React$useState[1];\n\n var composite = Composite_CompositeState.useCompositeState(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, sealed), {}, {\n loop: loop\n }));\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, composite), {}, {\n state: state,\n setState: setState\n });\n}\n\nexports.useRadioState = useRadioState;\n","'use strict';\n\n// Automatically generated\nvar TOOLTIP_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"visible\", \"animated\", \"animating\", \"setBaseId\", \"show\", \"hide\", \"toggle\", \"setVisible\", \"setAnimated\", \"stopAnimation\", \"unstable_disclosureRef\", \"unstable_referenceRef\", \"unstable_popoverRef\", \"unstable_arrowRef\", \"unstable_popoverStyles\", \"unstable_arrowStyles\", \"unstable_originalPlacement\", \"unstable_update\", \"placement\", \"place\", \"unstable_timeout\", \"unstable_setTimeout\"];\nvar TOOLTIP_KEYS = [].concat(TOOLTIP_STATE_KEYS, [\"unstable_portal\"]);\nvar TOOLTIP_ARROW_KEYS = TOOLTIP_STATE_KEYS;\nvar TOOLTIP_REFERENCE_KEYS = TOOLTIP_ARROW_KEYS;\n\nexports.TOOLTIP_ARROW_KEYS = TOOLTIP_ARROW_KEYS;\nexports.TOOLTIP_KEYS = TOOLTIP_KEYS;\nexports.TOOLTIP_REFERENCE_KEYS = TOOLTIP_REFERENCE_KEYS;\n","/**\n * Checks whether `arg` is an integer or not.\n *\n * @example\n * import { isInteger } from \"reakit-utils\";\n *\n * isInteger(1); // true\n * isInteger(1.5); // false\n * isInteger(\"1\"); // true\n * isInteger(\"1.5\"); // false\n */\nfunction isInteger(arg) {\n if (typeof arg === \"number\") {\n return Math.floor(arg) === arg;\n }\n\n return String(Math.floor(Number(arg))) === arg;\n}\n\nexport { isInteger };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nvar Tabbable_Tabbable = require('../Tabbable/Tabbable.js');\n\n// Automatically generated\nvar INPUT_KEYS = [];\n\nvar useInput = createHook.createHook({\n name: \"Input\",\n compose: Tabbable_Tabbable.useTabbable,\n keys: INPUT_KEYS\n});\nvar Input = createComponent.createComponent({\n as: \"input\",\n memo: true,\n useHook: useInput\n});\n\nexports.Input = Input;\nexports.useInput = useInput;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('../Role/Role.js');\nrequire('../__keys-eddd3051.js');\nvar __keys = require('../__keys-087914ef.js');\nvar Popover_PopoverArrow = require('../Popover/PopoverArrow.js');\n\nvar useMenuArrow = createHook.createHook({\n name: \"MenuArrow\",\n compose: Popover_PopoverArrow.usePopoverArrow,\n keys: __keys.MENU_ARROW_KEYS\n});\nvar MenuArrow = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: useMenuArrow\n});\n\nexports.MenuArrow = MenuArrow;\nexports.useMenuArrow = useMenuArrow;\n","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}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\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 _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n it = o[Symbol.iterator]();\n return it.next.bind(it);\n}\n\nexport { _objectWithoutPropertiesLoose as _, _objectSpread2 as a, _createForOfIteratorHelperLoose as b };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('./_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('reakit-system/createComponent');\nrequire('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Box_Box = require('./Box/Box.js');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nvar Role_Role = require('./Role/Role.js');\nvar Tabbable_Tabbable = require('./Tabbable/Tabbable.js');\nvar Clickable_Clickable = require('./Clickable/Clickable.js');\nvar Button_Button = require('./Button/Button.js');\nrequire('reakit-utils/removeIndexFromArray');\nrequire('reakit-utils/createEvent');\nvar Checkbox_Checkbox = require('./Checkbox/Checkbox.js');\nrequire('reakit-utils/useSealedState');\nvar Checkbox_CheckboxState = require('./Checkbox/CheckboxState.js');\nrequire('reakit-utils/useUpdateEffect');\nrequire('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('./reverse-4756a49e.js');\nrequire('./getCurrentId-eade2850.js');\nrequire('./findEnabledItemById-03112678.js');\nrequire('./__keys-3b597476.js');\nrequire('./userFocus-0afea51a.js');\nvar Composite_Composite = require('./Composite/Composite.js');\nrequire('./__keys-a7141fdd.js');\nrequire('./getMenuId-ae301adb.js');\nvar Combobox_Combobox = require('./Combobox/Combobox.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nvar Id_IdProvider = require('./Id/IdProvider.js');\nvar Id_Id = require('./Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('./setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('./Composite/CompositeItem.js');\nrequire('./__keys-d2d383f0.js');\nvar Grid_GridCell = require('./Grid/GridCell.js');\nvar Combobox_ComboboxItem = require('./Combobox/ComboboxItem.js');\nvar Combobox_ComboboxGridCell = require('./Combobox/ComboboxGridCell.js');\nvar Group_Group = require('./Group/Group.js');\nvar Composite_CompositeGroup = require('./Composite/CompositeGroup.js');\nvar Grid_GridRow = require('./Grid/GridRow.js');\nvar Combobox_ComboboxGridRow = require('./Combobox/ComboboxGridRow.js');\nrequire('reakit-utils/applyState');\nvar Id_IdState = require('./Id/IdState.js');\nvar Composite_CompositeState = require('./Composite/CompositeState.js');\nvar Grid_GridState = require('./Grid/GridState.js');\nrequire('./ComboboxBaseState-cfd43319.js');\nvar Combobox_ComboboxListGridState = require('./Combobox/ComboboxListGridState.js');\nrequire('@popperjs/core');\nvar Disclosure_DisclosureState = require('./Disclosure/DisclosureState.js');\nvar Dialog_DialogState = require('./Dialog/DialogState.js');\nvar Popover_PopoverState = require('./Popover/PopoverState.js');\nrequire('./ComboboxPopoverState-98e3f717.js');\nvar Combobox_ComboboxGridState = require('./Combobox/ComboboxGridState.js');\nvar Combobox_ComboboxList = require('./Combobox/ComboboxList.js');\nvar Combobox_ComboboxListState = require('./Combobox/ComboboxListState.js');\nvar Combobox_ComboboxOption = require('./Combobox/ComboboxOption.js');\nrequire('./__keys-f41a441b.js');\nvar Disclosure_DisclosureContent = require('./Disclosure/DisclosureContent.js');\nrequire('react-dom');\nvar Portal_Portal = require('./Portal/Portal.js');\nrequire('reakit-utils/removeItemFromArray');\nrequire('./MenuContext-2d32bb3e.js');\nvar Dialog_Dialog = require('./Dialog/Dialog.js');\nrequire('body-scroll-lock');\nrequire('reakit-utils/closest');\nrequire('reakit-utils/getActiveElement');\nrequire('reakit-utils/contains');\nrequire('./DialogBackdropContext-b43e21d7.js');\nrequire('reakit-utils/isEmpty');\nrequire('./__keys-0c8e6398.js');\nrequire('./__keys-eddd3051.js');\nvar Popover_Popover = require('./Popover/Popover.js');\nvar Combobox_ComboboxPopover = require('./Combobox/ComboboxPopover.js');\nvar Combobox_ComboboxState = require('./Combobox/ComboboxState.js');\nvar Composite_CompositeItemWidget = require('./Composite/CompositeItemWidget.js');\nvar Dialog_DialogBackdrop = require('./Dialog/DialogBackdrop.js');\nvar Disclosure_Disclosure = require('./Disclosure/Disclosure.js');\nvar Dialog_DialogDisclosure = require('./Dialog/DialogDisclosure.js');\nrequire('./__keys-4b3c7cdc.js');\nvar Form_Form = require('./Form/Form.js');\nrequire('./getInputId-cbd3bbcc.js');\nrequire('./getLabelId-eba7e47b.js');\nrequire('./Form/utils/getIn.js');\nrequire('./shouldShowError-880a39c9.js');\nvar Form_FormCheckbox = require('./Form/FormCheckbox.js');\nvar Form_FormGroup = require('./Form/FormGroup.js');\nvar Input_Input = require('./Input/Input.js');\nvar Form_FormInput = require('./Form/FormInput.js');\nvar Form_FormLabel = require('./Form/FormLabel.js');\nvar Form_FormMessage = require('./Form/FormMessage.js');\nrequire('./getPushButtonId-7a4ebc40.js');\nvar Form_FormPushButton = require('./Form/FormPushButton.js');\nrequire('reakit-warning/warning');\nrequire('./__keys-a6d5cee4.js');\nvar Radio_Radio = require('./Radio/Radio.js');\nvar Form_FormRadioGroup = require('./Form/FormRadioGroup.js');\nvar Form_FormRadio = require('./Form/FormRadio.js');\nvar Form_FormRemoveButton = require('./Form/FormRemoveButton.js');\nrequire('reakit-utils/isPromise');\nrequire('reakit-utils/isPlainObject');\nvar Form_FormState = require('./Form/FormState.js');\nrequire('reakit-utils/isObject');\nrequire('./Form/utils/setAllIn.js');\nrequire('reakit-utils/toArray');\nrequire('reakit-utils/isInteger');\nrequire('./Form/utils/setIn.js');\nvar Form_FormSubmitButton = require('./Form/FormSubmitButton.js');\nvar Grid_Grid = require('./Grid/Grid.js');\nvar Menu_MenuBar = require('./Menu/MenuBar.js');\nrequire('./__keys-087914ef.js');\nvar Menu_Menu = require('./Menu/Menu.js');\nvar Popover_PopoverArrow = require('./Popover/PopoverArrow.js');\nvar Menu_MenuArrow = require('./Menu/MenuArrow.js');\nvar Menu_MenuBarState = require('./Menu/MenuBarState.js');\nvar Popover_PopoverDisclosure = require('./Popover/PopoverDisclosure.js');\nrequire('./findVisibleSubmenu-d8b7eeab.js');\nvar Menu_MenuButton = require('./Menu/MenuButton.js');\nvar Menu_MenuDisclosure = require('./Menu/MenuDisclosure.js');\nvar Menu_MenuGroup = require('./Menu/MenuGroup.js');\nvar Menu_MenuItem = require('./Menu/MenuItem.js');\nvar Menu_MenuItemCheckbox = require('./Menu/MenuItemCheckbox.js');\nvar Menu_MenuItemRadio = require('./Menu/MenuItemRadio.js');\nvar Separator_Separator = require('./Separator/Separator.js');\nvar Menu_MenuSeparator = require('./Menu/MenuSeparator.js');\nvar Menu_MenuState = require('./Menu/MenuState.js');\nvar Popover_PopoverBackdrop = require('./Popover/PopoverBackdrop.js');\nvar Radio_RadioGroup = require('./Radio/RadioGroup.js');\nvar Radio_RadioState = require('./Radio/RadioState.js');\nrequire('reakit-utils/createOnKeyDown');\nvar Rover_Rover = require('./Rover/Rover.js');\nvar Rover_RoverState = require('./Rover/RoverState.js');\nrequire('./__keys-f590d919.js');\nvar Tab_Tab = require('./Tab/Tab.js');\nvar Tab_TabList = require('./Tab/TabList.js');\nvar Tab_TabPanel = require('./Tab/TabPanel.js');\nvar Tab_TabState = require('./Tab/TabState.js');\nrequire('./__keys-403ff944.js');\nvar Toolbar_Toolbar = require('./Toolbar/Toolbar.js');\nvar Toolbar_ToolbarItem = require('./Toolbar/ToolbarItem.js');\nvar Toolbar_ToolbarSeparator = require('./Toolbar/ToolbarSeparator.js');\nvar Toolbar_ToolbarState = require('./Toolbar/ToolbarState.js');\nrequire('./__keys-724ea0fe.js');\nrequire('./__globalState-de564b64.js');\nvar Tooltip_Tooltip = require('./Tooltip/Tooltip.js');\nvar Tooltip_TooltipArrow = require('./Tooltip/TooltipArrow.js');\nvar Tooltip_TooltipReference = require('./Tooltip/TooltipReference.js');\nvar Tooltip_TooltipState = require('./Tooltip/TooltipState.js');\nvar VisuallyHidden_VisuallyHidden = require('./VisuallyHidden/VisuallyHidden.js');\nrequire('reakit-system/SystemProvider');\nvar Provider = require('./Provider.js');\n\n\n\nexports.Box = Box_Box.Box;\nexports.useBox = Box_Box.useBox;\nexports.Role = Role_Role.Role;\nexports.useRole = Role_Role.useRole;\nexports.Tabbable = Tabbable_Tabbable.Tabbable;\nexports.useTabbable = Tabbable_Tabbable.useTabbable;\nexports.Clickable = Clickable_Clickable.Clickable;\nexports.useClickable = Clickable_Clickable.useClickable;\nexports.Button = Button_Button.Button;\nexports.useButton = Button_Button.useButton;\nexports.Checkbox = Checkbox_Checkbox.Checkbox;\nexports.useCheckbox = Checkbox_Checkbox.useCheckbox;\nexports.useCheckboxState = Checkbox_CheckboxState.useCheckboxState;\nexports.Composite = Composite_Composite.Composite;\nexports.unstable_Composite = Composite_Composite.Composite;\nexports.useComposite = Composite_Composite.useComposite;\nexports.unstable_Combobox = Combobox_Combobox.unstable_Combobox;\nexports.unstable_useCombobox = Combobox_Combobox.unstable_useCombobox;\nexports.unstable_IdContext = Id_IdProvider.unstable_IdContext;\nexports.unstable_IdProvider = Id_IdProvider.unstable_IdProvider;\nexports.unstable_Id = Id_Id.unstable_Id;\nexports.unstable_useId = Id_Id.unstable_useId;\nexports.CompositeItem = Composite_CompositeItem.CompositeItem;\nexports.unstable_CompositeItem = Composite_CompositeItem.CompositeItem;\nexports.useCompositeItem = Composite_CompositeItem.useCompositeItem;\nexports.unstable_GridCell = Grid_GridCell.unstable_GridCell;\nexports.unstable_useGridCell = Grid_GridCell.unstable_useGridCell;\nexports.unstable_ComboboxItem = Combobox_ComboboxItem.unstable_ComboboxItem;\nexports.unstable_useComboboxItem = Combobox_ComboboxItem.unstable_useComboboxItem;\nexports.unstable_ComboboxGridCell = Combobox_ComboboxGridCell.unstable_ComboboxGridCell;\nexports.unstable_useComboboxGridCell = Combobox_ComboboxGridCell.unstable_useComboboxGridCell;\nexports.Group = Group_Group.Group;\nexports.useGroup = Group_Group.useGroup;\nexports.CompositeGroup = Composite_CompositeGroup.CompositeGroup;\nexports.unstable_CompositeGroup = Composite_CompositeGroup.CompositeGroup;\nexports.useCompositeGroup = Composite_CompositeGroup.useCompositeGroup;\nexports.unstable_GridRow = Grid_GridRow.unstable_GridRow;\nexports.unstable_useGridRow = Grid_GridRow.unstable_useGridRow;\nexports.unstable_ComboboxGridRow = Combobox_ComboboxGridRow.unstable_ComboboxGridRow;\nexports.unstable_useComboboxGridRow = Combobox_ComboboxGridRow.unstable_useComboboxGridRow;\nexports.unstable_useIdState = Id_IdState.unstable_useIdState;\nexports.unstable_useCompositeState = Composite_CompositeState.useCompositeState;\nexports.useCompositeState = Composite_CompositeState.useCompositeState;\nexports.unstable_useGridState = Grid_GridState.unstable_useGridState;\nexports.unstable_useComboboxListGridState = Combobox_ComboboxListGridState.unstable_useComboboxListGridState;\nexports.useDisclosureState = Disclosure_DisclosureState.useDisclosureState;\nexports.useDialogState = Dialog_DialogState.useDialogState;\nexports.usePopoverState = Popover_PopoverState.usePopoverState;\nexports.unstable_useComboboxGridState = Combobox_ComboboxGridState.unstable_useComboboxGridState;\nexports.unstable_ComboboxList = Combobox_ComboboxList.unstable_ComboboxList;\nexports.unstable_useComboboxList = Combobox_ComboboxList.unstable_useComboboxList;\nexports.unstable_useComboboxListState = Combobox_ComboboxListState.unstable_useComboboxListState;\nexports.unstable_ComboboxOption = Combobox_ComboboxOption.unstable_ComboboxOption;\nexports.unstable_useComboboxOption = Combobox_ComboboxOption.unstable_useComboboxOption;\nexports.DisclosureContent = Disclosure_DisclosureContent.DisclosureContent;\nexports.useDisclosureContent = Disclosure_DisclosureContent.useDisclosureContent;\nexports.Portal = Portal_Portal.Portal;\nexports.PortalContext = Portal_Portal.PortalContext;\nexports.Dialog = Dialog_Dialog.Dialog;\nexports.useDialog = Dialog_Dialog.useDialog;\nexports.Popover = Popover_Popover.Popover;\nexports.usePopover = Popover_Popover.usePopover;\nexports.unstable_ComboboxPopover = Combobox_ComboboxPopover.unstable_ComboboxPopover;\nexports.unstable_useComboboxPopover = Combobox_ComboboxPopover.unstable_useComboboxPopover;\nexports.unstable_useComboboxState = Combobox_ComboboxState.unstable_useComboboxState;\nexports.unstable_CompositeItemWidget = Composite_CompositeItemWidget.unstable_CompositeItemWidget;\nexports.unstable_useCompositeItemWidget = Composite_CompositeItemWidget.unstable_useCompositeItemWidget;\nexports.DialogBackdrop = Dialog_DialogBackdrop.DialogBackdrop;\nexports.useDialogBackdrop = Dialog_DialogBackdrop.useDialogBackdrop;\nexports.Disclosure = Disclosure_Disclosure.Disclosure;\nexports.useDisclosure = Disclosure_Disclosure.useDisclosure;\nexports.DialogDisclosure = Dialog_DialogDisclosure.DialogDisclosure;\nexports.useDialogDisclosure = Dialog_DialogDisclosure.useDialogDisclosure;\nexports.unstable_Form = Form_Form.unstable_Form;\nexports.unstable_useForm = Form_Form.unstable_useForm;\nexports.unstable_FormCheckbox = Form_FormCheckbox.unstable_FormCheckbox;\nexports.unstable_useFormCheckbox = Form_FormCheckbox.unstable_useFormCheckbox;\nexports.unstable_FormGroup = Form_FormGroup.unstable_FormGroup;\nexports.unstable_useFormGroup = Form_FormGroup.unstable_useFormGroup;\nexports.Input = Input_Input.Input;\nexports.useInput = Input_Input.useInput;\nexports.unstable_FormInput = Form_FormInput.unstable_FormInput;\nexports.unstable_useFormInput = Form_FormInput.unstable_useFormInput;\nexports.unstable_FormLabel = Form_FormLabel.unstable_FormLabel;\nexports.unstable_useFormLabel = Form_FormLabel.unstable_useFormLabel;\nexports.unstable_FormMessage = Form_FormMessage.unstable_FormMessage;\nexports.unstable_useFormMessage = Form_FormMessage.unstable_useFormMessage;\nexports.unstable_FormPushButton = Form_FormPushButton.unstable_FormPushButton;\nexports.unstable_useFormPushButton = Form_FormPushButton.unstable_useFormPushButton;\nexports.Radio = Radio_Radio.Radio;\nexports.useRadio = Radio_Radio.useRadio;\nexports.FormRadioGroupContext = Form_FormRadioGroup.FormRadioGroupContext;\nexports.unstable_FormRadioGroup = Form_FormRadioGroup.unstable_FormRadioGroup;\nexports.unstable_useFormRadioGroup = Form_FormRadioGroup.unstable_useFormRadioGroup;\nexports.unstable_FormRadio = Form_FormRadio.unstable_FormRadio;\nexports.unstable_useFormRadio = Form_FormRadio.unstable_useFormRadio;\nexports.unstable_FormRemoveButton = Form_FormRemoveButton.unstable_FormRemoveButton;\nexports.unstable_useFormRemoveButton = Form_FormRemoveButton.unstable_useFormRemoveButton;\nexports.unstable_useFormState = Form_FormState.unstable_useFormState;\nexports.unstable_FormSubmitButton = Form_FormSubmitButton.unstable_FormSubmitButton;\nexports.unstable_useFormSubmitButton = Form_FormSubmitButton.unstable_useFormSubmitButton;\nexports.unstable_Grid = Grid_Grid.unstable_Grid;\nexports.unstable_useGrid = Grid_Grid.unstable_useGrid;\nexports.MenuBar = Menu_MenuBar.MenuBar;\nexports.useMenuBar = Menu_MenuBar.useMenuBar;\nexports.Menu = Menu_Menu.Menu;\nexports.useMenu = Menu_Menu.useMenu;\nexports.PopoverArrow = Popover_PopoverArrow.PopoverArrow;\nexports.usePopoverArrow = Popover_PopoverArrow.usePopoverArrow;\nexports.MenuArrow = Menu_MenuArrow.MenuArrow;\nexports.useMenuArrow = Menu_MenuArrow.useMenuArrow;\nexports.useMenuBarState = Menu_MenuBarState.useMenuBarState;\nexports.PopoverDisclosure = Popover_PopoverDisclosure.PopoverDisclosure;\nexports.usePopoverDisclosure = Popover_PopoverDisclosure.usePopoverDisclosure;\nexports.MenuButton = Menu_MenuButton.MenuButton;\nexports.useMenuButton = Menu_MenuButton.useMenuButton;\nexports.MenuDisclosure = Menu_MenuDisclosure.MenuDisclosure;\nexports.useMenuDisclosure = Menu_MenuDisclosure.useMenuDisclosure;\nexports.MenuGroup = Menu_MenuGroup.MenuGroup;\nexports.useMenuGroup = Menu_MenuGroup.useMenuGroup;\nexports.MenuItem = Menu_MenuItem.MenuItem;\nexports.useMenuItem = Menu_MenuItem.useMenuItem;\nexports.MenuItemCheckbox = Menu_MenuItemCheckbox.MenuItemCheckbox;\nexports.useMenuItemCheckbox = Menu_MenuItemCheckbox.useMenuItemCheckbox;\nexports.MenuItemRadio = Menu_MenuItemRadio.MenuItemRadio;\nexports.useMenuItemRadio = Menu_MenuItemRadio.useMenuItemRadio;\nexports.Separator = Separator_Separator.Separator;\nexports.useSeparator = Separator_Separator.useSeparator;\nexports.MenuSeparator = Menu_MenuSeparator.MenuSeparator;\nexports.useMenuSeparator = Menu_MenuSeparator.useMenuSeparator;\nexports.useMenuState = Menu_MenuState.useMenuState;\nexports.PopoverBackdrop = Popover_PopoverBackdrop.PopoverBackdrop;\nexports.usePopoverBackdrop = Popover_PopoverBackdrop.usePopoverBackdrop;\nexports.RadioGroup = Radio_RadioGroup.RadioGroup;\nexports.useRadioGroup = Radio_RadioGroup.useRadioGroup;\nexports.useRadioState = Radio_RadioState.useRadioState;\nexports.Rover = Rover_Rover.Rover;\nexports.useRover = Rover_Rover.useRover;\nexports.useRoverState = Rover_RoverState.useRoverState;\nexports.Tab = Tab_Tab.Tab;\nexports.useTab = Tab_Tab.useTab;\nexports.TabList = Tab_TabList.TabList;\nexports.useTabList = Tab_TabList.useTabList;\nexports.TabPanel = Tab_TabPanel.TabPanel;\nexports.useTabPanel = Tab_TabPanel.useTabPanel;\nexports.useTabState = Tab_TabState.useTabState;\nexports.Toolbar = Toolbar_Toolbar.Toolbar;\nexports.useToolbar = Toolbar_Toolbar.useToolbar;\nexports.ToolbarItem = Toolbar_ToolbarItem.ToolbarItem;\nexports.useToolbarItem = Toolbar_ToolbarItem.useToolbarItem;\nexports.ToolbarSeparator = Toolbar_ToolbarSeparator.ToolbarSeparator;\nexports.useToolbarSeparator = Toolbar_ToolbarSeparator.useToolbarSeparator;\nexports.useToolbarState = Toolbar_ToolbarState.useToolbarState;\nexports.Tooltip = Tooltip_Tooltip.Tooltip;\nexports.useTooltip = Tooltip_Tooltip.useTooltip;\nexports.TooltipArrow = Tooltip_TooltipArrow.TooltipArrow;\nexports.useTooltipArrow = Tooltip_TooltipArrow.useTooltipArrow;\nexports.TooltipReference = Tooltip_TooltipReference.TooltipReference;\nexports.useTooltipReference = Tooltip_TooltipReference.useTooltipReference;\nexports.useTooltipState = Tooltip_TooltipState.useTooltipState;\nexports.VisuallyHidden = VisuallyHidden_VisuallyHidden.VisuallyHidden;\nexports.useVisuallyHidden = VisuallyHidden_VisuallyHidden.useVisuallyHidden;\nexports.Provider = Provider.Provider;\n","import { useContext, createElement } from 'react';\nimport { SystemContext } from './SystemContext.js';\nimport { a as _objectWithoutPropertiesLoose } from './_rollupPluginBabelHelpers-0c84a174.js';\n\nfunction isRenderProp(children) {\n return typeof children === \"function\";\n}\n\n/**\n * Custom hook that will call `children` if it's a function. If\n * `useCreateElement` has been passed to the context, it'll be used instead.\n *\n * @example\n * import React from \"react\";\n * import { SystemProvider, useCreateElement } from \"reakit-system\";\n *\n * const system = {\n * useCreateElement(type, props, children = props.children) {\n * // very similar to what `useCreateElement` does already\n * if (typeof children === \"function\") {\n * const { children: _, ...rest } = props;\n * return children(rest);\n * }\n * return React.createElement(type, props, children);\n * },\n * };\n *\n * function Component(props) {\n * return useCreateElement(\"div\", props);\n * }\n *\n * function App() {\n * return (\n * \n * {({ url }) => link}\n * \n * );\n * }\n */\n\nvar useCreateElement = function useCreateElement(type, props, children) {\n if (children === void 0) {\n children = props.children;\n }\n\n var context = useContext(SystemContext);\n\n if (context.useCreateElement) {\n return context.useCreateElement(type, props, children);\n }\n\n if (typeof type === \"string\" && isRenderProp(children)) {\n var _ = props.children,\n rest = _objectWithoutPropertiesLoose(props, [\"children\"]);\n\n return children(rest);\n }\n\n return /*#__PURE__*/createElement(type, props, children);\n};\n\nexport { useCreateElement };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('../Role/Role.js');\nrequire('reakit-utils/canUseDOM');\nrequire('../__keys-f41a441b.js');\nrequire('../Disclosure/DisclosureContent.js');\nrequire('react-dom');\nrequire('../Portal/Portal.js');\nrequire('../DialogBackdropContext-b43e21d7.js');\nrequire('../__keys-0c8e6398.js');\nvar __keys = require('../__keys-eddd3051.js');\nvar Dialog_DialogBackdrop = require('../Dialog/DialogBackdrop.js');\n\nvar usePopoverBackdrop = createHook.createHook({\n name: \"PopoverBackdrop\",\n compose: Dialog_DialogBackdrop.useDialogBackdrop,\n keys: __keys.POPOVER_BACKDROP_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$modal = _ref.modal,\n modal = _ref$modal === void 0 ? false : _ref$modal,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"modal\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n modal: modal\n }, options);\n }\n});\nvar PopoverBackdrop = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: usePopoverBackdrop\n});\n\nexports.PopoverBackdrop = PopoverBackdrop;\nexports.usePopoverBackdrop = usePopoverBackdrop;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('../Role/Role.js');\nvar getDocument = require('reakit-utils/getDocument');\nrequire('reakit-utils/canUseDOM');\nrequire('../__keys-f41a441b.js');\nvar Disclosure_DisclosureContent = require('../Disclosure/DisclosureContent.js');\nrequire('react-dom');\nvar Portal_Portal = require('../Portal/Portal.js');\nvar __keys = require('../__keys-724ea0fe.js');\nvar __globalState = require('../__globalState-de564b64.js');\n\nfunction globallyHideTooltipOnEscape(event) {\n if (event.defaultPrevented) return;\n\n if (event.key === \"Escape\") {\n __globalState.globalState.show(null);\n }\n}\n\nvar useTooltip = createHook.createHook({\n name: \"Tooltip\",\n compose: Disclosure_DisclosureContent.useDisclosureContent,\n keys: __keys.TOOLTIP_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$unstable_portal = _ref.unstable_portal,\n unstable_portal = _ref$unstable_portal === void 0 ? true : _ref$unstable_portal,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"unstable_portal\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n unstable_portal: unstable_portal\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlRef = _ref2.ref,\n htmlStyle = _ref2.style,\n htmlWrapElement = _ref2.wrapElement,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"ref\", \"style\", \"wrapElement\"]);\n\n React.useEffect(function () {\n var _options$unstable_pop;\n\n var document = getDocument.getDocument((_options$unstable_pop = options.unstable_popoverRef) === null || _options$unstable_pop === void 0 ? void 0 : _options$unstable_pop.current);\n document.addEventListener(\"keydown\", globallyHideTooltipOnEscape);\n }, []);\n var wrapElement = React.useCallback(function (element) {\n if (options.unstable_portal) {\n element = /*#__PURE__*/React.createElement(Portal_Portal.Portal, null, element);\n }\n\n if (htmlWrapElement) {\n return htmlWrapElement(element);\n }\n\n return element;\n }, [options.unstable_portal, htmlWrapElement]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(options.unstable_popoverRef, htmlRef),\n role: \"tooltip\",\n style: _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options.unstable_popoverStyles), {}, {\n pointerEvents: \"none\"\n }, htmlStyle),\n wrapElement: wrapElement\n }, htmlProps);\n }\n});\nvar Tooltip = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: useTooltip\n});\n\nexports.Tooltip = Tooltip;\nexports.useTooltip = useTooltip;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Box_Box = require('../Box/Box.js');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar __keys = require('../__keys-a7141fdd.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('../Composite/CompositeItem.js');\n\nfunction kebabCase(string) {\n return string.toLowerCase().replace(/[^a-z0-9]/g, \"-\");\n}\n\nfunction getItemId(baseId, value, id) {\n return id || baseId + \"-\" + kebabCase(value);\n}\n\nvar unstable_useComboboxItem = createHook.createHook({\n name: \"ComboboxItem\",\n compose: Box_Box.useBox,\n keys: __keys.COMBOBOX_ITEM_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n if (prev.value !== next.value) return false;\n\n if (!prev.value || !next.value || !prev.baseId || !next.baseId) {\n return Composite_CompositeItem.useCompositeItem.unstable_propsAreEqual(prev, next);\n }\n\n var prevCurrentValue = prev.currentValue,\n prevInputValue = prev.inputValue,\n prevMatches = prev.matches,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"currentValue\", \"inputValue\", \"matches\"]);\n\n var nextCurrentValue = next.currentValue,\n nextInputValue = next.inputValue,\n nextMatches = next.matches,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"currentValue\", \"inputValue\", \"matches\"]);\n\n if (prevCurrentValue !== nextCurrentValue) {\n if (next.value === prevCurrentValue || next.value === nextCurrentValue) {\n return false;\n }\n }\n\n var prevId = getItemId(prev.baseId, prev.value, prev.id);\n var nextId = getItemId(next.baseId, next.value, prev.id);\n return Composite_CompositeItem.useCompositeItem.unstable_propsAreEqual(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, prevProps), {}, {\n id: prevId\n }), _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, nextProps), {}, {\n id: nextId\n }));\n },\n useOptions: function useOptions(options) {\n var trulyDisabled = options.disabled && !options.focusable;\n var value = trulyDisabled ? undefined : options.value;\n var registerItem = React.useCallback(function (item) {\n if (options.visible) {\n var _options$registerItem;\n\n (_options$registerItem = options.registerItem) === null || _options$registerItem === void 0 ? void 0 : _options$registerItem.call(options, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, item), {}, {\n value: value\n }));\n }\n }, [options.registerItem, options.visible, value]);\n\n if (options.id || !options.baseId || !options.value) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n registerItem: registerItem\n });\n }\n\n var id = getItemId(options.baseId, options.value, options.id);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n registerItem: registerItem,\n id: id\n });\n },\n useProps: function useProps(options, _ref) {\n var htmlOnClick = _ref.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onClick\"]);\n\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current, _options$hide, _options$setInputValu;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n if (!options.value) return;\n (_options$hide = options.hide) === null || _options$hide === void 0 ? void 0 : _options$hide.call(options);\n (_options$setInputValu = options.setInputValue) === null || _options$setInputValu === void 0 ? void 0 : _options$setInputValu.call(options, options.value);\n }, [options.hide, options.setInputValue, options.value]);\n return _rollupPluginBabelHelpers._objectSpread2({\n children: options.value,\n onClick: onClick,\n tabIndex: -1\n }, htmlProps);\n }\n});\nvar unstable_ComboboxItem = createComponent.createComponent({\n as: \"span\",\n memo: true,\n useHook: unstable_useComboboxItem\n});\n\nexports.unstable_ComboboxItem = unstable_ComboboxItem;\nexports.unstable_useComboboxItem = unstable_useComboboxItem;\n","import 'reakit-utils/flatten';\nimport { warning } from './warning.js';\nimport { useEffect } from 'react';\nimport { isObject } from 'reakit-utils/isObject';\n\nfunction isRefObject(ref) {\n return isObject(ref) && \"current\" in ref;\n}\n/**\n * Logs `messages` to the console using `console.warn` based on a `condition`.\n * This should be used inside components.\n */\n\n\nfunction useWarning(condition) {\n for (var _len = arguments.length, messages = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n messages[_key - 1] = arguments[_key];\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n useEffect(function () {\n process.env.NODE_ENV !== \"production\" ? warning.apply(void 0, [condition].concat(messages.map(function (message) {\n return isRefObject(message) ? message.current : message;\n }))) : void 0;\n }, [condition]);\n }\n}\n\nexport { useWarning };\n","'use strict';\n\n// Automatically generated\nvar TAB_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"unstable_virtual\", \"rtl\", \"orientation\", \"items\", \"groups\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_moves\", \"unstable_hasActiveWidget\", \"unstable_includesBaseElement\", \"selectedId\", \"panels\", \"manual\", \"setBaseId\", \"registerItem\", \"unregisterItem\", \"registerGroup\", \"unregisterGroup\", \"move\", \"next\", \"previous\", \"up\", \"down\", \"first\", \"last\", \"sort\", \"unstable_setVirtual\", \"setRTL\", \"setOrientation\", \"setCurrentId\", \"setLoop\", \"setWrap\", \"setShift\", \"reset\", \"unstable_setIncludesBaseElement\", \"unstable_setHasActiveWidget\", \"select\", \"setSelectedId\", \"registerPanel\", \"unregisterPanel\"];\nvar TAB_KEYS = TAB_STATE_KEYS;\nvar TAB_LIST_KEYS = TAB_KEYS;\nvar TAB_PANEL_KEYS = [].concat(TAB_LIST_KEYS, [\"tabId\"]);\n\nexports.TAB_KEYS = TAB_KEYS;\nexports.TAB_LIST_KEYS = TAB_LIST_KEYS;\nexports.TAB_PANEL_KEYS = TAB_PANEL_KEYS;\n","'use strict';\n\nfunction userFocus(element) {\n element.userFocus = true;\n element.focus();\n element.userFocus = false;\n}\nfunction hasUserFocus(element) {\n return !!element.userFocus;\n}\nfunction setUserFocus(element, value) {\n element.userFocus = value;\n}\n\nexports.hasUserFocus = hasUserFocus;\nexports.setUserFocus = setUserFocus;\nexports.userFocus = userFocus;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Box_Box = require('../Box/Box.js');\nvar reakitWarning = require('reakit-warning');\nvar useCreateElement = require('reakit-system/useCreateElement');\nvar __keys = require('../__keys-a7141fdd.js');\nvar getMenuId = require('../getMenuId-ae301adb.js');\n\nvar unstable_useComboboxList = createHook.createHook({\n name: \"ComboboxList\",\n compose: Box_Box.useBox,\n keys: __keys.COMBOBOX_LIST_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$menuRole = _ref.menuRole,\n menuRole = _ref$menuRole === void 0 ? \"listbox\" : _ref$menuRole,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"menuRole\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n menuRole: menuRole\n }, options);\n },\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: options.menuRole,\n id: getMenuId.getMenuId(options.baseId)\n }, htmlProps);\n }\n});\nvar unstable_ComboboxList = createComponent.createComponent({\n as: \"div\",\n useHook: unstable_useComboboxList,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/combobox\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.unstable_ComboboxList = unstable_ComboboxList;\nexports.unstable_useComboboxList = unstable_useComboboxList;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar Composite_Composite = require('../Composite/Composite.js');\nvar __keys = require('../__keys-a6d5cee4.js');\n\nvar useRadioGroup = createHook.createHook({\n name: \"RadioGroup\",\n compose: Composite_Composite.useComposite,\n keys: __keys.RADIO_GROUP_KEYS,\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"radiogroup\"\n }, htmlProps);\n }\n});\nvar RadioGroup = createComponent.createComponent({\n as: \"div\",\n useHook: useRadioGroup,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/radio\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.RadioGroup = RadioGroup;\nexports.useRadioGroup = useRadioGroup;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nvar hasFocusWithin = require('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar Clickable_Clickable = require('../Clickable/Clickable.js');\nrequire('../Id/IdProvider.js');\nvar Id_Id = require('../Id/Id.js');\nvar createOnKeyDown = require('reakit-utils/createOnKeyDown');\n\n// Automatically generated\nvar ROVER_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"orientation\", \"stops\", \"currentId\", \"unstable_pastId\", \"unstable_moves\", \"loop\", \"setBaseId\", \"register\", \"unregister\", \"move\", \"next\", \"previous\", \"first\", \"last\", \"unstable_reset\", \"unstable_orientate\"];\nvar ROVER_KEYS = [].concat(ROVER_STATE_KEYS, [\"stopId\"]);\n\nfunction useAllCallbacks() {\n for (var _len = arguments.length, callbacks = new Array(_len), _key = 0; _key < _len; _key++) {\n callbacks[_key] = arguments[_key];\n }\n\n return React.useCallback(function () {\n var fns = callbacks.filter(Boolean);\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(fns), _step; !(_step = _iterator()).done;) {\n var callback = _step.value;\n callback.apply(void 0, arguments);\n }\n }, callbacks);\n}\n\nvar useRover = createHook.createHook({\n name: \"Rover\",\n compose: [Clickable_Clickable.useClickable, Id_Id.unstable_useId],\n keys: ROVER_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n _ref$tabIndex = _ref.tabIndex,\n htmlTabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,\n htmlOnFocus = _ref.onFocus,\n htmlOnKeyDown = _ref.onKeyDown,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\", \"tabIndex\", \"onFocus\", \"onKeyDown\"]);\n\n var ref = React.useRef(null);\n var id = options.stopId || options.id;\n var trulyDisabled = options.disabled && !options.focusable;\n var noFocused = options.currentId == null;\n var focused = options.currentId === id;\n var isFirst = (options.stops || [])[0] && options.stops[0].id === id;\n var shouldTabIndex = focused || isFirst && noFocused;\n React.useEffect(function () {\n if (trulyDisabled || !id) return undefined;\n options.register && options.register(id, ref);\n return function () {\n return options.unregister && options.unregister(id);\n };\n }, [id, trulyDisabled, options.register, options.unregister]);\n React.useEffect(function () {\n var rover = ref.current;\n\n if (!rover) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't focus rover component because `ref` wasn't passed to component.\", \"See https://reakit.io/docs/rover\") : void 0;\n return;\n }\n\n if (options.unstable_moves && focused && !hasFocusWithin.hasFocusWithin(rover)) {\n rover.focus();\n }\n }, [focused, options.unstable_moves]);\n var onFocus = React.useCallback(function (event) {\n if (!id || !event.currentTarget.contains(event.target)) return; // this is already focused, so we move silently\n\n options.move(id, true);\n }, [options.move, id]);\n var onKeyDown = React.useMemo(function () {\n return createOnKeyDown.createOnKeyDown({\n onKeyDown: htmlOnKeyDown,\n stopPropagation: true,\n shouldKeyDown: function shouldKeyDown(event) {\n return (// Ignore portals\n // https://github.com/facebook/react/issues/11387\n event.currentTarget.contains(event.target)\n );\n },\n keyMap: {\n ArrowUp: options.orientation !== \"horizontal\" && options.previous,\n ArrowRight: options.orientation !== \"vertical\" && options.next,\n ArrowDown: options.orientation !== \"horizontal\" && options.next,\n ArrowLeft: options.orientation !== \"vertical\" && options.previous,\n Home: options.first,\n End: options.last,\n PageUp: options.first,\n PageDown: options.last\n }\n });\n }, [htmlOnKeyDown, options.orientation, options.previous, options.next, options.first, options.last]);\n return _rollupPluginBabelHelpers._objectSpread2({\n id: id,\n ref: useForkRef.useForkRef(ref, htmlRef),\n tabIndex: shouldTabIndex ? htmlTabIndex : -1,\n onFocus: useAllCallbacks(onFocus, htmlOnFocus),\n onKeyDown: onKeyDown\n }, htmlProps);\n }\n});\nvar Rover = createComponent.createComponent({\n as: \"button\",\n useHook: useRover\n});\n\nexports.Rover = Rover;\nexports.useRover = useRover;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar Role_Role = require('../Role/Role.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\n\nvar unstable_useForm = createHook.createHook({\n name: \"Form\",\n compose: Role_Role.useRole,\n keys: __keys.FORM_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlOnSubmit = _ref.onSubmit,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onSubmit\"]);\n\n var onSubmitRef = useLiveRef.useLiveRef(htmlOnSubmit);\n var onSubmit = React.useCallback(function (event) {\n var _onSubmitRef$current, _options$submit;\n\n (_onSubmitRef$current = onSubmitRef.current) === null || _onSubmitRef$current === void 0 ? void 0 : _onSubmitRef$current.call(onSubmitRef, event);\n if (event.defaultPrevented) return;\n event.preventDefault();\n (_options$submit = options.submit) === null || _options$submit === void 0 ? void 0 : _options$submit.call(options);\n }, [options.submit]);\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"form\",\n noValidate: true,\n onSubmit: onSubmit\n }, htmlProps);\n }\n});\nvar unstable_Form = createComponent.createComponent({\n as: \"form\",\n useHook: unstable_useForm\n});\n\nexports.unstable_Form = unstable_Form;\nexports.unstable_useForm = unstable_useForm;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar React = require('react');\nvar useSealedState = require('reakit-utils/useSealedState');\nvar Id_IdProvider = require('./IdProvider.js');\n\nfunction unstable_useIdState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n initialBaseId = _useSealedState.baseId;\n\n var generateId = React.useContext(Id_IdProvider.unstable_IdContext);\n var idCountRef = React.useRef(0);\n\n var _React$useState = React.useState(function () {\n return initialBaseId || generateId();\n }),\n baseId = _React$useState[0],\n setBaseId = _React$useState[1];\n\n return {\n baseId: baseId,\n setBaseId: setBaseId,\n unstable_idCountRef: idCountRef\n };\n}\n\nexports.unstable_useIdState = unstable_useIdState;\n","'use strict';\n\nvar _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nvar Popover_PopoverState = require('./Popover/PopoverState.js');\n\nfunction useComboboxPopoverState(combobox, _ref) {\n if (_ref === void 0) {\n _ref = {};\n }\n\n var _ref2 = _ref,\n _ref2$gutter = _ref2.gutter,\n gutter = _ref2$gutter === void 0 ? 0 : _ref2$gutter,\n _ref2$placement = _ref2.placement,\n placement = _ref2$placement === void 0 ? \"bottom-start\" : _ref2$placement,\n initialState = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"gutter\", \"placement\"]);\n\n var popover = Popover_PopoverState.usePopoverState(_rollupPluginBabelHelpers._objectSpread2({\n gutter: gutter,\n placement: placement\n }, initialState));\n var visible = popover.visible && combobox.inputValue.length >= combobox.minValueLength;\n React.useEffect(function () {\n if (!visible) {\n // We need to reset combobox.moves\n combobox.reset();\n }\n }, [visible, combobox.reset]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, combobox), popover), {}, {\n visible: visible\n });\n}\n\nexports.useComboboxPopoverState = useComboboxPopoverState;\n","'use strict';\n\n// Automatically generated\nvar POPOVER_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"visible\", \"animated\", \"animating\", \"setBaseId\", \"show\", \"hide\", \"toggle\", \"setVisible\", \"setAnimated\", \"stopAnimation\", \"modal\", \"unstable_disclosureRef\", \"setModal\", \"unstable_referenceRef\", \"unstable_popoverRef\", \"unstable_arrowRef\", \"unstable_popoverStyles\", \"unstable_arrowStyles\", \"unstable_originalPlacement\", \"unstable_update\", \"placement\", \"place\"];\nvar POPOVER_KEYS = POPOVER_STATE_KEYS;\nvar POPOVER_ARROW_KEYS = [].concat(POPOVER_KEYS, [\"size\"]);\nvar POPOVER_BACKDROP_KEYS = POPOVER_KEYS;\nvar POPOVER_DISCLOSURE_KEYS = POPOVER_BACKDROP_KEYS;\n\nexports.POPOVER_ARROW_KEYS = POPOVER_ARROW_KEYS;\nexports.POPOVER_BACKDROP_KEYS = POPOVER_BACKDROP_KEYS;\nexports.POPOVER_DISCLOSURE_KEYS = POPOVER_DISCLOSURE_KEYS;\nexports.POPOVER_KEYS = POPOVER_KEYS;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar React = require('react');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nvar canUseDOM = require('reakit-utils/canUseDOM');\nvar ReactDOM = require('react-dom');\n\nfunction getBodyElement() {\n return canUseDOM.canUseDOM ? document.body : null;\n}\n\nvar PortalContext = /*#__PURE__*/React.createContext(getBodyElement());\nfunction Portal(_ref) {\n var children = _ref.children;\n // if it's a nested portal, context is the parent portal\n // otherwise it's document.body\n // https://github.com/reakit/reakit/issues/513\n var context = React.useContext(PortalContext) || getBodyElement();\n\n var _React$useState = React.useState(function () {\n if (canUseDOM.canUseDOM) {\n var element = document.createElement(\"div\");\n element.className = Portal.__className;\n return element;\n } // ssr\n\n\n return null;\n }),\n hostNode = _React$useState[0];\n\n useIsomorphicEffect.useIsomorphicEffect(function () {\n if (!hostNode || !context) return undefined;\n context.appendChild(hostNode);\n return function () {\n context.removeChild(hostNode);\n };\n }, [hostNode, context]);\n\n if (hostNode) {\n return /*#__PURE__*/ReactDOM.createPortal( /*#__PURE__*/React.createElement(PortalContext.Provider, {\n value: hostNode\n }, children), hostNode);\n } // ssr\n\n\n return null;\n}\nPortal.__className = \"__reakit-portal\";\nPortal.__selector = \".\" + Portal.__className;\n\nexports.Portal = Portal;\nexports.PortalContext = PortalContext;\n","import { getDocument } from './getDocument.js';\n\n/**\n * Returns `element.ownerDocument.activeElement`.\n */\n\nfunction getActiveElement(element) {\n var _getDocument = getDocument(element),\n activeElement = _getDocument.activeElement;\n\n if (!(activeElement !== null && activeElement !== void 0 && activeElement.nodeName)) {\n // In IE11, activeElement might be an empty object if we're interacting\n // with elements inside of an iframe.\n return null;\n }\n\n return activeElement;\n}\n\nexport { getActiveElement };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Role_Role = require('../Role/Role.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nvar getLabelId = require('../getLabelId-eba7e47b.js');\n\nvar unstable_useFormLabel = createHook.createHook({\n name: \"FormLabel\",\n compose: Role_Role.useRole,\n keys: __keys.FORM_LABEL_KEYS,\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n children: options.label,\n id: getLabelId.getLabelId(options.name, options.baseId),\n htmlFor: getInputId.getInputId(options.name, options.baseId)\n }, htmlProps);\n }\n});\nvar unstable_FormLabel = createComponent.createComponent({\n as: \"label\",\n memo: true,\n useHook: unstable_useFormLabel\n});\n\nexports.unstable_FormLabel = unstable_FormLabel;\nexports.unstable_useFormLabel = unstable_useFormLabel;\n","import { getDocument } from './getDocument.js';\nimport { getWindow } from './getWindow.js';\n\nfunction createKeyboardEvent(element, type, eventInit) {\n if (eventInit === void 0) {\n eventInit = {};\n }\n\n if (typeof KeyboardEvent === \"function\") {\n return new KeyboardEvent(type, eventInit);\n } // IE 11 doesn't support Event constructors\n\n\n var event = getDocument(element).createEvent(\"KeyboardEvent\");\n event.initKeyboardEvent(type, eventInit.bubbles, eventInit.cancelable, getWindow(element), eventInit.key, eventInit.location, eventInit.ctrlKey, eventInit.altKey, eventInit.shiftKey, eventInit.metaKey);\n return event;\n}\n/**\n * Creates and dispatches `KeyboardEvent` in a way that also works on IE 11.\n *\n * @example\n * import { fireKeyboardEvent } from \"reakit-utils\";\n *\n * fireKeyboardEvent(document.getElementById(\"id\"), \"keydown\", {\n * key: \"ArrowDown\",\n * shiftKey: true,\n * });\n */\n\n\nfunction fireKeyboardEvent(element, type, eventInit) {\n return element.dispatchEvent(createKeyboardEvent(element, type, eventInit));\n}\n\nexport { fireKeyboardEvent };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nvar isButton = require('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nvar hasFocusWithin = require('reakit-utils/hasFocusWithin');\nvar tabbable = require('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nvar useUpdateEffect = require('reakit-utils/useUpdateEffect');\nvar useCreateElement = require('reakit-system/useCreateElement');\nvar getDocument = require('reakit-utils/getDocument');\nrequire('reakit-utils/canUseDOM');\nvar getNextActiveElementOnBlur = require('reakit-utils/getNextActiveElementOnBlur');\nvar ensureFocus = require('reakit-utils/ensureFocus');\nrequire('../__keys-f41a441b.js');\nvar Disclosure_DisclosureContent = require('../Disclosure/DisclosureContent.js');\nrequire('react-dom');\nvar Portal_Portal = require('../Portal/Portal.js');\nvar removeItemFromArray = require('reakit-utils/removeItemFromArray');\nvar MenuContext = require('../MenuContext-2d32bb3e.js');\nvar bodyScrollLock = require('body-scroll-lock');\nvar closest = require('reakit-utils/closest');\nvar getActiveElement = require('reakit-utils/getActiveElement');\nvar contains = require('reakit-utils/contains');\nvar DialogBackdropContext = require('../DialogBackdropContext-b43e21d7.js');\nvar isEmpty = require('reakit-utils/isEmpty');\nvar __keys = require('../__keys-0c8e6398.js');\n\nfunction useDisclosureRef(dialogRef, options) {\n var ref = React.useRef(null);\n var animating = !!(options.animated && options.animating);\n React.useEffect(function () {\n if (options.visible || animating) return undefined; // We get the last focused element before the dialog opens, so we can move\n // focus back to it when the dialog closes.\n\n var onFocus = function onFocus(event) {\n var target = event.target;\n\n if (\"focus\" in target) {\n ref.current = target;\n\n if (options.unstable_disclosureRef) {\n options.unstable_disclosureRef.current = target;\n }\n }\n };\n\n var document = getDocument.getDocument(dialogRef.current);\n document.addEventListener(\"focusin\", onFocus);\n return function () {\n return document.removeEventListener(\"focusin\", onFocus);\n };\n }, [options.visible, animating, options.unstable_disclosureRef, dialogRef]);\n React.useEffect(function () {\n var _options$unstable_dis;\n\n if (!options.visible || animating) return undefined; // Safari and Firefox on MacOS don't focus on buttons on mouse down.\n // Instead, they focus on the closest focusable parent (ultimately, the\n // body element). This works around that by preventing that behavior and\n // forcing focus on the disclosure button. Otherwise, we wouldn't be able\n // to close the dialog by clicking again on the disclosure.\n\n var onMouseDown = function onMouseDown(event) {\n var element = event.currentTarget;\n if (!isButton.isButton(element)) return;\n event.preventDefault();\n element.focus();\n };\n\n var disclosure = ((_options$unstable_dis = options.unstable_disclosureRef) === null || _options$unstable_dis === void 0 ? void 0 : _options$unstable_dis.current) || ref.current;\n disclosure === null || disclosure === void 0 ? void 0 : disclosure.addEventListener(\"mousedown\", onMouseDown);\n return function () {\n return disclosure === null || disclosure === void 0 ? void 0 : disclosure.removeEventListener(\"mousedown\", onMouseDown);\n };\n }, [options.visible, animating, options.unstable_disclosureRef]);\n return options.unstable_disclosureRef || ref;\n}\n\nfunction usePreventBodyScroll(targetRef, options) {\n var shouldPrevent = Boolean(options.preventBodyScroll && options.visible);\n React.useEffect(function () {\n var element = targetRef.current;\n if (!element || !shouldPrevent) return undefined;\n bodyScrollLock.disableBodyScroll(element, {\n reserveScrollBarGap: true\n });\n return function () {\n return bodyScrollLock.enableBodyScroll(element);\n };\n }, [targetRef, shouldPrevent]);\n}\n\nfunction useFocusOnShow(dialogRef, nestedDialogs, options) {\n var initialFocusRef = options.unstable_initialFocusRef;\n var shouldFocus = options.visible && options.unstable_autoFocusOnShow;\n var animating = !!(options.animated && options.animating);\n useUpdateEffect.useUpdateEffect(function () {\n var dialog = dialogRef.current;\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(!!shouldFocus && !dialog, \"[reakit/Dialog]\", \"Can't set initial focus on dialog because `ref` wasn't passed to the dialog element.\", \"See https://reakit.io/docs/dialog\") : void 0;\n if (!shouldFocus) return;\n if (!dialog) return;\n if (animating) return; // If there're nested open dialogs, let them handle focus\n\n if (nestedDialogs.some(function (child) {\n return child.current && !child.current.hidden;\n })) {\n return;\n }\n\n if (initialFocusRef !== null && initialFocusRef !== void 0 && initialFocusRef.current) {\n initialFocusRef.current.focus({\n preventScroll: true\n });\n } else {\n var tabbable$1 = tabbable.getFirstTabbableIn(dialog, true);\n\n var isActive = function isActive() {\n return hasFocusWithin.hasFocusWithin(dialog);\n };\n\n if (tabbable$1) {\n ensureFocus.ensureFocus(tabbable$1, {\n preventScroll: true,\n isActive: isActive\n });\n } else {\n ensureFocus.ensureFocus(dialog, {\n preventScroll: true,\n isActive: isActive\n });\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(dialog.tabIndex === undefined || dialog.tabIndex < 0, \"It's recommended to have at least one tabbable element inside dialog. The dialog element has been automatically focused.\", \"If this is the intended behavior, pass `tabIndex={0}` to the dialog element to disable this warning.\", \"See https://reakit.io/docs/dialog/#initial-focus\", dialog) : void 0;\n }\n }\n }, [dialogRef, shouldFocus, animating, nestedDialogs, initialFocusRef]);\n}\n\nfunction usePortalRef(dialogRef, options) {\n var portalRef = React.useRef(null);\n React.useEffect(function () {\n var dialog = dialogRef.current;\n if (!dialog || !options.visible) return;\n portalRef.current = closest.closest(dialog, Portal_Portal.Portal.__selector);\n }, [dialogRef, options.visible]);\n return portalRef;\n}\n\nfunction removeFromDOM(element) {\n if (element.parentNode == null) return;\n element.parentNode.removeChild(element);\n}\n\nvar focusTrapClassName = \"__reakit-focus-trap\";\nfunction isFocusTrap(element) {\n var _element$classList;\n\n return (_element$classList = element.classList) === null || _element$classList === void 0 ? void 0 : _element$classList.contains(focusTrapClassName);\n}\nfunction useFocusTrap(dialogRef, visibleModals, options) {\n var portalRef = usePortalRef(dialogRef, options);\n var shouldTrap = options.visible && options.modal;\n var beforeElement = React.useRef(null);\n var afterElement = React.useRef(null); // Create before and after elements\n // https://github.com/w3c/aria-practices/issues/545\n\n React.useEffect(function () {\n if (!shouldTrap) return undefined;\n var portal = portalRef.current;\n\n if (!portal) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't trap focus within modal dialog because either `ref` wasn't passed to component or the component wasn't rendered within a portal\", \"See https://reakit.io/docs/dialog\") : void 0;\n return undefined;\n }\n\n if (!beforeElement.current) {\n var document = getDocument.getDocument(portal);\n beforeElement.current = document.createElement(\"div\");\n beforeElement.current.className = focusTrapClassName;\n beforeElement.current.tabIndex = 0;\n beforeElement.current.style.position = \"fixed\";\n beforeElement.current.setAttribute(\"aria-hidden\", \"true\");\n }\n\n if (!afterElement.current) {\n afterElement.current = beforeElement.current.cloneNode();\n }\n\n portal.insertAdjacentElement(\"beforebegin\", beforeElement.current);\n portal.insertAdjacentElement(\"afterend\", afterElement.current);\n return function () {\n if (beforeElement.current) removeFromDOM(beforeElement.current);\n if (afterElement.current) removeFromDOM(afterElement.current);\n };\n }, [portalRef, shouldTrap]); // Focus trap\n\n React.useEffect(function () {\n var before = beforeElement.current;\n var after = afterElement.current;\n if (!shouldTrap || !before || !after) return undefined;\n\n var handleFocus = function handleFocus(event) {\n var dialog = dialogRef.current;\n if (!dialog || visibleModals.length) return;\n event.preventDefault();\n var isAfter = event.target === after;\n var tabbable$1 = isAfter ? tabbable.getFirstTabbableIn(dialog) : tabbable.getLastTabbableIn(dialog);\n\n if (tabbable$1) {\n tabbable$1.focus();\n } else {\n // fallback to dialog\n dialog.focus();\n }\n };\n\n before.addEventListener(\"focus\", handleFocus);\n after.addEventListener(\"focus\", handleFocus);\n return function () {\n before.removeEventListener(\"focus\", handleFocus);\n after.removeEventListener(\"focus\", handleFocus);\n };\n }, [dialogRef, visibleModals, shouldTrap]);\n}\n\nfunction hidByFocusingAnotherElement(dialogRef) {\n var dialog = dialogRef.current;\n if (!dialog) return false;\n var activeElement = getActiveElement.getActiveElement(dialog);\n if (!activeElement) return false;\n if (contains.contains(dialog, activeElement)) return false;\n if (tabbable.isTabbable(activeElement)) return true;\n if (activeElement.getAttribute(\"data-dialog\") === \"true\") return true;\n return false;\n}\n\nfunction useFocusOnHide(dialogRef, disclosureRef, options) {\n var shouldFocus = options.unstable_autoFocusOnHide && !options.visible;\n var animating = !!(options.animated && options.animating);\n useUpdateEffect.useUpdateEffect(function () {\n var _options$unstable_fin;\n\n if (!shouldFocus) return;\n if (animating) return; // Hide was triggered by a click/focus on a tabbable element outside\n // the dialog or on another dialog. We won't change focus then.\n\n if (hidByFocusingAnotherElement(dialogRef)) {\n return;\n }\n\n var finalFocusEl = ((_options$unstable_fin = options.unstable_finalFocusRef) === null || _options$unstable_fin === void 0 ? void 0 : _options$unstable_fin.current) || disclosureRef.current;\n\n if (finalFocusEl) {\n if (finalFocusEl.id) {\n var document = getDocument.getDocument(finalFocusEl);\n var compositeElement = document.querySelector(\"[aria-activedescendant='\" + finalFocusEl.id + \"']\");\n\n if (compositeElement) {\n ensureFocus.ensureFocus(compositeElement);\n return;\n }\n }\n\n ensureFocus.ensureFocus(finalFocusEl);\n return;\n }\n\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't return focus after closing dialog. Either render a disclosure component or provide a `unstable_finalFocusRef` prop.\", \"See https://reakit.io/docs/dialog\", dialogRef.current) : void 0;\n }, [shouldFocus, animating, dialogRef, disclosureRef]);\n}\n\nvar DialogContext = /*#__PURE__*/React.createContext({});\nfunction useNestedDialogs(dialogRef, options) {\n var context = React.useContext(DialogContext);\n\n var _React$useState = React.useState([]),\n dialogs = _React$useState[0],\n setDialogs = _React$useState[1];\n\n var _React$useState2 = React.useState(dialogs),\n visibleModals = _React$useState2[0],\n setVisibleModals = _React$useState2[1];\n\n var addDialog = React.useCallback(function (ref) {\n var _context$addDialog;\n\n (_context$addDialog = context.addDialog) === null || _context$addDialog === void 0 ? void 0 : _context$addDialog.call(context, ref);\n setDialogs(function (prevDialogs) {\n return [].concat(prevDialogs, [ref]);\n });\n }, [context.addDialog]);\n var removeDialog = React.useCallback(function (ref) {\n var _context$removeDialog;\n\n (_context$removeDialog = context.removeDialog) === null || _context$removeDialog === void 0 ? void 0 : _context$removeDialog.call(context, ref);\n setDialogs(function (prevDialogs) {\n return removeItemFromArray.removeItemFromArray(prevDialogs, ref);\n });\n }, [context.removeDialog]);\n var showDialog = React.useCallback(function (ref) {\n var _context$showDialog;\n\n (_context$showDialog = context.showDialog) === null || _context$showDialog === void 0 ? void 0 : _context$showDialog.call(context, ref);\n setVisibleModals(function (prevDialogs) {\n return [].concat(prevDialogs, [ref]);\n });\n }, [context.showDialog]);\n var hideDialog = React.useCallback(function (ref) {\n var _context$hideDialog;\n\n (_context$hideDialog = context.hideDialog) === null || _context$hideDialog === void 0 ? void 0 : _context$hideDialog.call(context, ref);\n setVisibleModals(function (prevDialogs) {\n return removeItemFromArray.removeItemFromArray(prevDialogs, ref);\n });\n }, [context.hideDialog]); // If it's a nested dialog, add it to context\n\n React.useEffect(function () {\n var _context$addDialog2;\n\n if (options.unstable_orphan) return undefined;\n (_context$addDialog2 = context.addDialog) === null || _context$addDialog2 === void 0 ? void 0 : _context$addDialog2.call(context, dialogRef);\n return function () {\n var _context$removeDialog2;\n\n (_context$removeDialog2 = context.removeDialog) === null || _context$removeDialog2 === void 0 ? void 0 : _context$removeDialog2.call(context, dialogRef);\n };\n }, [options.unstable_orphan, context.addDialog, dialogRef, context.removeDialog]);\n React.useEffect(function () {\n var _context$showDialog2;\n\n if (options.unstable_orphan) return undefined;\n if (!options.modal) return undefined;\n if (!options.visible) return undefined;\n (_context$showDialog2 = context.showDialog) === null || _context$showDialog2 === void 0 ? void 0 : _context$showDialog2.call(context, dialogRef);\n return function () {\n var _context$hideDialog2;\n\n (_context$hideDialog2 = context.hideDialog) === null || _context$hideDialog2 === void 0 ? void 0 : _context$hideDialog2.call(context, dialogRef);\n };\n }, [options.unstable_orphan, options.modal, options.visible, context.showDialog, dialogRef, context.hideDialog]); // Close all nested dialogs when parent dialog closes\n\n React.useEffect(function () {\n if (context.visible === false && options.visible && !options.unstable_orphan) {\n var _options$hide;\n\n (_options$hide = options.hide) === null || _options$hide === void 0 ? void 0 : _options$hide.call(options);\n }\n }, [context.visible, options.visible, options.hide, options.unstable_orphan]); // Provider\n\n var providerValue = React.useMemo(function () {\n return {\n visible: options.visible,\n addDialog: addDialog,\n removeDialog: removeDialog,\n showDialog: showDialog,\n hideDialog: hideDialog\n };\n }, [options.visible, addDialog, removeDialog, showDialog, hideDialog]);\n var wrap = React.useCallback(function (element) {\n return /*#__PURE__*/React.createElement(DialogContext.Provider, {\n value: providerValue\n }, element);\n }, [providerValue]);\n return {\n dialogs: dialogs,\n visibleModals: visibleModals,\n wrap: wrap\n };\n}\n\nfunction dialogContains(target) {\n return function (dialogRef) {\n var dialog = dialogRef.current;\n if (!dialog) return false;\n if (contains.contains(dialog, target)) return true;\n var document = getDocument.getDocument(dialog);\n var backdrop = document.querySelector(\"[data-dialog-ref=\\\"\" + dialog.id + \"\\\"]\");\n\n if (backdrop) {\n return contains.contains(backdrop, target);\n }\n\n return false;\n };\n}\n\nfunction isDisclosure(target, disclosure) {\n return contains.contains(disclosure, target);\n}\n\nfunction isInDocument(target) {\n var document = getDocument.getDocument(target);\n\n if (target.tagName === \"HTML\") {\n return true;\n }\n\n return contains.contains(document.body, target);\n}\n\nfunction useEventListenerOutside(containerRef, disclosureRef, nestedDialogs, eventType, listener, shouldListen, capture) {\n var listenerRef = useLiveRef.useLiveRef(listener);\n React.useEffect(function () {\n if (!shouldListen) return undefined;\n\n var onEvent = function onEvent(event) {\n if (!listenerRef.current) return;\n var container = containerRef.current;\n var disclosure = disclosureRef.current;\n var target = event.target;\n\n if (!container) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't detect events outside dialog because `ref` wasn't passed to component.\", \"See https://reakit.io/docs/dialog\") : void 0;\n return;\n } // When an element is unmounted right after it receives focus, the focus\n // event is triggered after that, when the element isn't part of the\n // current document anymore. So we ignore it.\n\n\n if (!isInDocument(target)) return; // Event inside dialog\n\n if (contains.contains(container, target)) return; // Event on disclosure\n\n if (disclosure && isDisclosure(target, disclosure)) return; // Event inside a nested dialog or focus trap\n\n if (isFocusTrap(target) || nestedDialogs.some(dialogContains(target))) {\n return;\n }\n\n listenerRef.current(event);\n };\n\n var document = getDocument.getDocument(containerRef.current);\n document.addEventListener(eventType, onEvent, capture);\n return function () {\n return document.removeEventListener(eventType, onEvent, capture);\n };\n }, [containerRef, disclosureRef, nestedDialogs, eventType, shouldListen, listenerRef]);\n}\n\nfunction useMouseDownRef(dialogRef, options) {\n var mouseDownRef = React.useRef();\n React.useEffect(function () {\n if (!options.visible) return undefined;\n if (!options.hideOnClickOutside) return undefined;\n var document = getDocument.getDocument(dialogRef.current);\n\n var onMouseDown = function onMouseDown(event) {\n mouseDownRef.current = event.target;\n };\n\n document.addEventListener(\"mousedown\", onMouseDown);\n return function () {\n return document.removeEventListener(\"mousedown\", onMouseDown);\n };\n }, [options.visible, options.hideOnClickOutside, dialogRef]);\n return mouseDownRef;\n}\n\nfunction useHideOnClickOutside(dialogRef, disclosureRef, nestedDialogs, options) {\n var mouseDownRef = useMouseDownRef(dialogRef, options);\n useEventListenerOutside(dialogRef, disclosureRef, nestedDialogs, \"click\", function (event) {\n // Make sure the element that has been clicked is the same that last\n // triggered the mousedown event. This prevents the dialog from closing\n // by dragging the cursor (for example, selecting some text inside the\n // dialog and releasing the mouse outside of it).\n if (mouseDownRef.current === event.target) {\n var _options$hide;\n\n (_options$hide = options.hide) === null || _options$hide === void 0 ? void 0 : _options$hide.call(options);\n }\n }, options.visible && options.hideOnClickOutside);\n useEventListenerOutside(dialogRef, disclosureRef, nestedDialogs, \"focusin\", function (event) {\n var document = getDocument.getDocument(dialogRef.current); // Fix for https://github.com/reakit/reakit/issues/619\n // On IE11, calling element.blur() triggers the focus event on\n // document.body, so we make sure to ignore it as well.\n\n if (event.target !== document && event.target !== document.body) {\n var _options$hide2;\n\n (_options$hide2 = options.hide) === null || _options$hide2 === void 0 ? void 0 : _options$hide2.call(options);\n }\n }, options.visible && options.hideOnClickOutside);\n}\n\nfunction useDisableHoverOutside(portalRef, nestedDialogs, options) {\n var useEvent = function useEvent(eventType) {\n return useEventListenerOutside(portalRef, {\n current: null\n }, nestedDialogs, eventType, function (event) {\n event.stopPropagation();\n event.preventDefault();\n }, options.visible && options.modal, true);\n };\n\n useEvent(\"mouseover\");\n useEvent(\"mousemove\");\n useEvent(\"mouseout\");\n}\n\n/**\n * When the focused child gets removed from the DOM, we make sure to move focus\n * to the dialog.\n */\nfunction useFocusOnChildUnmount(dialogRef, options) {\n React.useEffect(function () {\n var dialog = dialogRef.current;\n if (!options.visible || !dialog) return undefined;\n var observer = new MutationObserver(function (mutations) {\n var target = mutations[0].target; // If target is not this dialog, then this observer was triggered by a\n // nested dialog, so we just ignore it here and let the nested dialog\n // handle it there.\n\n if (target !== dialog) return;\n var document = getDocument.getDocument(dialog);\n var activeElement = getActiveElement.getActiveElement(dialog); // We can check if the current focused element is the document body. On\n // IE 11, it's an empty object when the current document is in a frame or\n // iframe.\n\n if (activeElement === document.body || isEmpty.isEmpty(activeElement)) {\n dialog.focus();\n }\n });\n observer.observe(dialog, {\n childList: true,\n subtree: true\n });\n return function () {\n observer.disconnect();\n };\n }, [options.visible, dialogRef]);\n}\n\nfunction isActualElement(element) {\n return element && element.tagName && element.tagName !== \"HTML\" && element !== getDocument.getDocument(element).body;\n}\n\nfunction useFocusOnBlur(dialogRef, options) {\n var _React$useReducer = React.useReducer(function (n) {\n return n + 1;\n }, 0),\n blurred = _React$useReducer[0],\n scheduleFocus = _React$useReducer[1];\n\n useIsomorphicEffect.useIsomorphicEffect(function () {\n var dialog = dialogRef.current;\n if (!options.visible) return;\n if (!blurred) return; // After blur, if the active element isn't an actual element, this probably\n // means that element.blur() was called on an element inside the dialog.\n // In this case, the browser will automatically focus the body element.\n // So we move focus back to the dialog.\n\n if (!isActualElement(getActiveElement.getActiveElement(dialog))) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(!dialog, \"Can't focus dialog after a nested element got blurred because `ref` wasn't passed to the component\", \"See https://reakit.io/docs/dialog\") : void 0;\n dialog === null || dialog === void 0 ? void 0 : dialog.focus();\n }\n }, [blurred, dialogRef]);\n var onBlur = React.useCallback(function (event) {\n if (!options.visible) return;\n var nextActiveElement = getNextActiveElementOnBlur.getNextActiveElementOnBlur(event);\n\n if (!isActualElement(nextActiveElement)) {\n scheduleFocus();\n }\n }, [options.visible]);\n return onBlur;\n}\n\nvar useDialog = createHook.createHook({\n name: \"Dialog\",\n compose: Disclosure_DisclosureContent.useDisclosureContent,\n keys: __keys.DIALOG_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$modal = _ref.modal,\n modal = _ref$modal === void 0 ? true : _ref$modal,\n _ref$hideOnEsc = _ref.hideOnEsc,\n hideOnEsc = _ref$hideOnEsc === void 0 ? true : _ref$hideOnEsc,\n _ref$hideOnClickOutsi = _ref.hideOnClickOutside,\n hideOnClickOutside = _ref$hideOnClickOutsi === void 0 ? true : _ref$hideOnClickOutsi,\n _ref$preventBodyScrol = _ref.preventBodyScroll,\n preventBodyScroll = _ref$preventBodyScrol === void 0 ? modal : _ref$preventBodyScrol,\n _ref$unstable_autoFoc = _ref.unstable_autoFocusOnShow,\n unstable_autoFocusOnShow = _ref$unstable_autoFoc === void 0 ? true : _ref$unstable_autoFoc,\n _ref$unstable_autoFoc2 = _ref.unstable_autoFocusOnHide,\n unstable_autoFocusOnHide = _ref$unstable_autoFoc2 === void 0 ? true : _ref$unstable_autoFoc2,\n unstable_orphan = _ref.unstable_orphan,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"modal\", \"hideOnEsc\", \"hideOnClickOutside\", \"preventBodyScroll\", \"unstable_autoFocusOnShow\", \"unstable_autoFocusOnHide\", \"unstable_orphan\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n modal: modal,\n hideOnEsc: hideOnEsc,\n hideOnClickOutside: hideOnClickOutside,\n preventBodyScroll: modal && preventBodyScroll,\n unstable_autoFocusOnShow: unstable_autoFocusOnShow,\n unstable_autoFocusOnHide: unstable_autoFocusOnHide,\n unstable_orphan: modal && unstable_orphan\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlRef = _ref2.ref,\n htmlOnKeyDown = _ref2.onKeyDown,\n htmlOnBlur = _ref2.onBlur,\n htmlWrapElement = _ref2.wrapElement,\n tabIndex = _ref2.tabIndex,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"ref\", \"onKeyDown\", \"onBlur\", \"wrapElement\", \"tabIndex\"]);\n\n var dialog = React.useRef(null);\n var backdrop = React.useContext(DialogBackdropContext.DialogBackdropContext);\n var hasBackdrop = backdrop && backdrop === options.baseId;\n var disclosure = useDisclosureRef(dialog, options);\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var onBlurRef = useLiveRef.useLiveRef(htmlOnBlur);\n var focusOnBlur = useFocusOnBlur(dialog, options);\n\n var _useNestedDialogs = useNestedDialogs(dialog, options),\n dialogs = _useNestedDialogs.dialogs,\n visibleModals = _useNestedDialogs.visibleModals,\n wrap = _useNestedDialogs.wrap; // VoiceOver/Safari accepts only one `aria-modal` container, so if there\n // are visible child modals, then we don't want to set aria-modal on the\n // parent modal (this component).\n\n\n var modal = options.modal && !visibleModals.length ? true : undefined;\n usePreventBodyScroll(dialog, options);\n useFocusTrap(dialog, visibleModals, options);\n useFocusOnChildUnmount(dialog, options);\n useFocusOnShow(dialog, dialogs, options);\n useFocusOnHide(dialog, disclosure, options);\n useHideOnClickOutside(dialog, disclosure, dialogs, options);\n useDisableHoverOutside(dialog, dialogs, options);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current;\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);\n if (event.defaultPrevented) return;\n if (event.key !== \"Escape\") return;\n if (!options.hideOnEsc) return;\n\n if (!options.hide) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"`hideOnEsc` prop is truthy, but `hide` prop wasn't provided.\", \"See https://reakit.io/docs/dialog\", dialog.current) : void 0;\n return;\n }\n\n event.stopPropagation();\n options.hide();\n }, [options.hideOnEsc, options.hide]);\n var onBlur = React.useCallback(function (event) {\n var _onBlurRef$current;\n\n (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);\n focusOnBlur(event);\n }, [focusOnBlur]);\n var wrapElement = React.useCallback(function (element) {\n element = wrap(element);\n\n if (options.modal && !hasBackdrop) {\n element = /*#__PURE__*/React.createElement(Portal_Portal.Portal, null, element);\n }\n\n if (htmlWrapElement) {\n element = htmlWrapElement(element);\n }\n\n return (\n /*#__PURE__*/\n // Prevents Menu > Dialog > Menu to behave as a sub menu\n React.createElement(MenuContext.MenuContext.Provider, {\n value: null\n }, element)\n );\n }, [wrap, options.modal, hasBackdrop, htmlWrapElement]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(dialog, htmlRef),\n role: \"dialog\",\n tabIndex: tabIndex != null ? tabIndex : -1,\n \"aria-modal\": modal,\n \"data-dialog\": true,\n onKeyDown: onKeyDown,\n onBlur: onBlur,\n wrapElement: wrapElement\n }, htmlProps);\n }\n});\nvar Dialog = createComponent.createComponent({\n as: \"div\",\n useHook: useDialog,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/dialog\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.Dialog = Dialog;\nexports.useDialog = useDialog;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nvar Composite_CompositeState = require('../Composite/CompositeState.js');\n\nfunction useMenuBarState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$orien = _useSealedState.orientation,\n orientation = _useSealedState$orien === void 0 ? \"horizontal\" : _useSealedState$orien,\n _useSealedState$unsta = _useSealedState.unstable_values,\n initialValues = _useSealedState$unsta === void 0 ? {} : _useSealedState$unsta,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"orientation\", \"unstable_values\"]);\n\n var _React$useState = React.useState(initialValues),\n values = _React$useState[0],\n setValues = _React$useState[1];\n\n var composite = Composite_CompositeState.useCompositeState(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, sealed), {}, {\n orientation: orientation\n }));\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, composite), {}, {\n unstable_values: values,\n unstable_setValue: React.useCallback(function (name, value) {\n setValues(function (vals) {\n var _objectSpread2;\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, vals), {}, (_objectSpread2 = {}, _objectSpread2[name] = typeof value === \"function\" ? value(vals) : value, _objectSpread2));\n });\n }, [])\n });\n}\n\nexports.useMenuBarState = useMenuBarState;\n","import './getDocument.js';\nimport { getActiveElement } from './getActiveElement.js';\nimport { contains } from './contains.js';\n\n/**\n * Checks if `element` has focus within. Elements that are referenced by\n * `aria-activedescendant` are also considered.\n *\n * @example\n * import { hasFocusWithin } from \"reakit-utils\";\n *\n * hasFocusWithin(document.getElementById(\"id\"));\n */\n\nfunction hasFocusWithin(element) {\n var activeElement = getActiveElement(element);\n if (!activeElement) return false;\n if (contains(element, activeElement)) return true;\n var activeDescendant = activeElement.getAttribute(\"aria-activedescendant\");\n if (!activeDescendant) return false;\n if (activeDescendant === element.id) return true;\n return !!element.querySelector(\"#\" + activeDescendant);\n}\n\nexport { hasFocusWithin };\n","/**\n * Checks whether `arg` is an object or not.\n *\n * @returns {boolean}\n */\nfunction isObject(arg) {\n return typeof arg === \"object\" && arg != null;\n}\n\nexport { isObject };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nvar Composite_CompositeState = require('../Composite/CompositeState.js');\n\nfunction useTabState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n initialSelectedId = _useSealedState.selectedId,\n _useSealedState$loop = _useSealedState.loop,\n loop = _useSealedState$loop === void 0 ? true : _useSealedState$loop,\n _useSealedState$manua = _useSealedState.manual,\n manual = _useSealedState$manua === void 0 ? false : _useSealedState$manua,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"selectedId\", \"loop\", \"manual\"]);\n\n var composite = Composite_CompositeState.useCompositeState(_rollupPluginBabelHelpers._objectSpread2({\n loop: loop,\n currentId: initialSelectedId\n }, sealed));\n var panels = Composite_CompositeState.useCompositeState();\n\n var _React$useState = React.useState(initialSelectedId),\n selectedId = _React$useState[0],\n setSelectedId = _React$useState[1];\n\n var select = React.useCallback(function (id) {\n composite.move(id);\n setSelectedId(id);\n }, [composite.move]); // If selectedId is not set, use the currentId. It's still possible to have\n // no selected tab with useTabState({ selectedId: null });\n\n React.useEffect(function () {\n if (selectedId === null) return;\n var selectedItem = composite.items.find(function (item) {\n return item.id === selectedId;\n });\n if (selectedItem) return;\n\n if (composite.currentId) {\n setSelectedId(composite.currentId);\n }\n }, [selectedId, composite.items, composite.currentId]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, composite), {}, {\n selectedId: selectedId,\n panels: panels.items,\n manual: manual,\n select: select,\n setSelectedId: setSelectedId,\n registerPanel: React.useCallback(function (panel) {\n return panels.registerItem(panel);\n }, [panels.registerItem]),\n unregisterPanel: React.useCallback(function (id) {\n return panels.unregisterItem(id);\n }, [panels.unregisterItem])\n });\n}\n\nexports.useTabState = useTabState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('../Role/Role.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nvar __keys = require('../__keys-d2d383f0.js');\nrequire('../Group/Group.js');\nvar Composite_CompositeGroup = require('../Composite/CompositeGroup.js');\n\nvar unstable_useGridRow = createHook.createHook({\n name: \"GridRow\",\n compose: Composite_CompositeGroup.useCompositeGroup,\n keys: __keys.GRID_ROW_KEYS,\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"row\"\n }, htmlProps);\n }\n});\nvar unstable_GridRow = createComponent.createComponent({\n as: \"div\",\n useHook: unstable_useGridRow\n});\n\nexports.unstable_GridRow = unstable_GridRow;\nexports.unstable_useGridRow = unstable_useGridRow;\n","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}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\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 _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n it = o[Symbol.iterator]();\n return it.next.bind(it);\n}\n\nexport { _objectSpread2 as _, _objectWithoutPropertiesLoose as a, _createForOfIteratorHelperLoose as b };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('../Role/Role.js');\nrequire('../__keys-eddd3051.js');\nvar Popover_PopoverArrow = require('../Popover/PopoverArrow.js');\nvar __keys = require('../__keys-724ea0fe.js');\n\nvar useTooltipArrow = createHook.createHook({\n name: \"TooltipArrow\",\n compose: Popover_PopoverArrow.usePopoverArrow,\n keys: __keys.TOOLTIP_ARROW_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$size = _ref.size,\n size = _ref$size === void 0 ? 16 : _ref$size,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"size\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n size: size\n }, options);\n }\n});\nvar TooltipArrow = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: useTooltipArrow\n});\n\nexports.TooltipArrow = TooltipArrow;\nexports.useTooltipArrow = useTooltipArrow;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nvar React = require('react');\nvar Id_IdProvider = require('./IdProvider.js');\n\n// Automatically generated\nvar ID_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"setBaseId\"];\nvar ID_KEYS = [].concat(ID_STATE_KEYS, [\"id\"]);\n\nvar unstable_useId = createHook.createHook({\n keys: ID_KEYS,\n useOptions: function useOptions(options, htmlProps) {\n var generateId = React.useContext(Id_IdProvider.unstable_IdContext);\n\n var _React$useState = React.useState(function () {\n // This comes from useIdState\n if (options.unstable_idCountRef) {\n options.unstable_idCountRef.current += 1;\n return \"-\" + options.unstable_idCountRef.current;\n } // If there's no useIdState, we check if `baseId` was passed (as a prop,\n // not from useIdState).\n\n\n if (options.baseId) {\n return \"-\" + generateId(\"\");\n }\n\n return \"\";\n }),\n suffix = _React$useState[0]; // `baseId` will be the prop passed directly as a prop or via useIdState.\n // If there's neither, then it'll fallback to Context's generateId.\n // This generateId can result in a sequential ID (if there's a Provider)\n // or a random string (without Provider).\n\n\n var baseId = React.useMemo(function () {\n return options.baseId || generateId();\n }, [options.baseId, generateId]);\n var id = htmlProps.id || options.id || \"\" + baseId + suffix;\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n id: id\n });\n },\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n id: options.id\n }, htmlProps);\n }\n});\nvar unstable_Id = createComponent.createComponent({\n as: \"div\",\n useHook: unstable_useId\n});\n\nexports.unstable_Id = unstable_Id;\nexports.unstable_useId = unstable_useId;\n","import { getDocument } from './getDocument.js';\n\n// Thanks to Fluent UI for doing the [research on IE11 memory leak](https://github.com/microsoft/fluentui/pull/9010#issuecomment-490768427)\n\nvar _window; // Note: Accessing \"window\" in IE11 is somewhat expensive, and calling \"typeof window\"\n// hits a memory leak, whereas aliasing it and calling \"typeof _window\" does not.\n// Caching the window value at the file scope lets us minimize the impact.\n\n\ntry {\n _window = window;\n} catch (e) {\n /* no-op */\n}\n/**\n * Returns `element.ownerDocument.defaultView || window`.\n */\n\n\nfunction getWindow(element) {\n if (!element) {\n return _window;\n }\n\n return getDocument(element).defaultView || _window;\n}\n\nexport { getWindow };\n","'use strict';\n\n// Automatically generated\nvar MENU_BAR_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"unstable_virtual\", \"rtl\", \"orientation\", \"items\", \"groups\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_moves\", \"unstable_hasActiveWidget\", \"unstable_includesBaseElement\", \"unstable_values\", \"setBaseId\", \"registerItem\", \"unregisterItem\", \"registerGroup\", \"unregisterGroup\", \"move\", \"next\", \"previous\", \"up\", \"down\", \"first\", \"last\", \"sort\", \"unstable_setVirtual\", \"setRTL\", \"setOrientation\", \"setCurrentId\", \"setLoop\", \"setWrap\", \"setShift\", \"reset\", \"unstable_setIncludesBaseElement\", \"unstable_setHasActiveWidget\", \"unstable_setValue\"];\nvar MENU_STATE_KEYS = [].concat(MENU_BAR_STATE_KEYS, [\"visible\", \"animated\", \"animating\", \"show\", \"hide\", \"toggle\", \"setVisible\", \"setAnimated\", \"stopAnimation\", \"modal\", \"unstable_disclosureRef\", \"setModal\", \"unstable_referenceRef\", \"unstable_popoverRef\", \"unstable_arrowRef\", \"unstable_popoverStyles\", \"unstable_arrowStyles\", \"unstable_originalPlacement\", \"unstable_update\", \"placement\", \"place\"]);\nvar MENU_KEYS = MENU_STATE_KEYS;\nvar MENU_ARROW_KEYS = MENU_KEYS;\nvar MENU_BAR_KEYS = MENU_ARROW_KEYS;\nvar MENU_BUTTON_KEYS = MENU_BAR_KEYS;\nvar MENU_DISCLOSURE_KEYS = MENU_BUTTON_KEYS;\nvar MENU_GROUP_KEYS = MENU_DISCLOSURE_KEYS;\nvar MENU_ITEM_KEYS = MENU_GROUP_KEYS;\nvar MENU_ITEM_CHECKBOX_KEYS = [].concat(MENU_ITEM_KEYS, [\"name\"]);\nvar MENU_ITEM_RADIO_KEYS = MENU_ITEM_CHECKBOX_KEYS;\nvar MENU_SEPARATOR_KEYS = MENU_ITEM_KEYS;\n\nexports.MENU_ARROW_KEYS = MENU_ARROW_KEYS;\nexports.MENU_BAR_KEYS = MENU_BAR_KEYS;\nexports.MENU_BUTTON_KEYS = MENU_BUTTON_KEYS;\nexports.MENU_GROUP_KEYS = MENU_GROUP_KEYS;\nexports.MENU_ITEM_CHECKBOX_KEYS = MENU_ITEM_CHECKBOX_KEYS;\nexports.MENU_ITEM_KEYS = MENU_ITEM_KEYS;\nexports.MENU_ITEM_RADIO_KEYS = MENU_ITEM_RADIO_KEYS;\nexports.MENU_KEYS = MENU_KEYS;\nexports.MENU_SEPARATOR_KEYS = MENU_SEPARATOR_KEYS;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar PropTypes = _interopDefault(require('prop-types'));\nvar withSideEffect = _interopDefault(require('react-side-effect'));\nvar isEqual = _interopDefault(require('react-fast-compare'));\nvar React = _interopDefault(require('react'));\nvar objectAssign = _interopDefault(require('object-assign'));\n\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\n\nvar TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\n\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\n\nvar TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\",\n TARGET: \"target\"\n};\n\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\n\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\n\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\n\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\n\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _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\nvar inherits = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function (obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&\").replace(//g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n }\n // Special case for innerHTML which doesn't work lowercased\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n });\n\n // Update seen tags with tags from this instance\n var keys = Object.keys(instanceSeenTags);\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\n\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n\n updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n\n updateTitle(title, titleAttributes);\n\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n\n var addedTags = {};\n var removedTags = {};\n\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n\n cb && cb();\n\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\");\n\n // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\" + type + \">\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"\" + type + \">\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === TAG_PROPERTIES.INNER_HTML || attribute === TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"\" + type + \">\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps;\n\n // assigning into an array to define toString function on it\n var initProps = (_initProps = {\n key: title\n }, _initProps[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = { __html: content };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n\n return React.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n case ATTRIBUTE_NAMES.BODY:\n case ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, { title: title, titleAttributes: titleAttributes }, encode)\n };\n};\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``}\" + child.type + \"> ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return React.createElement(Component, newProps);\n };\n\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n\n\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \"
console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = mapStateOnServer({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\n\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\n\nexports.Helmet = HelmetExport;\nexports.default = HelmetExport;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar isSelfTarget = require('reakit-utils/isSelfTarget');\nvar Role_Role = require('../Role/Role.js');\nvar getDocument = require('reakit-utils/getDocument');\nvar __keys = require('../__keys-3b597476.js');\nvar isTextField = require('reakit-utils/isTextField');\nrequire('reakit-utils/fireEvent');\nvar setTextFieldValue = require('../setTextFieldValue-b0584ae1.js');\n\nfunction focusCurrentItem(widget, currentId) {\n if (currentId) {\n var _getDocument$getEleme;\n\n (_getDocument$getEleme = getDocument.getDocument(widget).getElementById(currentId)) === null || _getDocument$getEleme === void 0 ? void 0 : _getDocument$getEleme.focus();\n }\n}\n\nfunction getTextFieldValue(element) {\n return element.value;\n}\n\nvar unstable_useCompositeItemWidget = createHook.createHook({\n name: \"CompositeItemWidget\",\n compose: Role_Role.useRole,\n keys: __keys.COMPOSITE_ITEM_WIDGET_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlOnFocus = _ref.onFocus,\n htmlOnBlur = _ref.onBlur,\n htmlOnKeyDown = _ref.onKeyDown,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onFocus\", \"onBlur\", \"onKeyDown\"]);\n\n var initialValue = React.useRef(\"\");\n var onFocusRef = useLiveRef.useLiveRef(htmlOnFocus);\n var onBlurRef = useLiveRef.useLiveRef(htmlOnBlur);\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var onFocus = React.useCallback(function (event) {\n var _onFocusRef$current, _options$unstable_set;\n\n (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);\n (_options$unstable_set = options.unstable_setHasActiveWidget) === null || _options$unstable_set === void 0 ? void 0 : _options$unstable_set.call(options, true);\n\n if (isTextField.isTextField(event.currentTarget)) {\n initialValue.current = getTextFieldValue(event.currentTarget);\n }\n }, [options.unstable_setHasActiveWidget]);\n var onBlur = React.useCallback(function (event) {\n var _onBlurRef$current, _options$unstable_set2;\n\n (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);\n (_options$unstable_set2 = options.unstable_setHasActiveWidget) === null || _options$unstable_set2 === void 0 ? void 0 : _options$unstable_set2.call(options, false);\n }, [options.unstable_setHasActiveWidget]);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current;\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);\n if (event.defaultPrevented) return;\n if (!isSelfTarget.isSelfTarget(event)) return;\n if (event.nativeEvent.isComposing) return;\n var element = event.currentTarget;\n\n if (event.key === \"Enter\") {\n if (isTextField.isTextField(element)) {\n var isMultilineTextField = element.tagName === \"TEXTAREA\"; // Make sure we can create new lines using Shift+Enter\n\n if (isMultilineTextField && event.shiftKey) return; // Make sure it'll not trigger a click on the parent button\n\n event.preventDefault();\n focusCurrentItem(element, options.currentId);\n }\n } else if (event.key === \"Escape\") {\n focusCurrentItem(element, options.currentId);\n\n if (isTextField.isTextField(element)) {\n setTextFieldValue.setTextFieldValue(element, initialValue.current);\n }\n }\n }, [options.currentId]);\n return _rollupPluginBabelHelpers._objectSpread2({\n tabIndex: options.unstable_hasActiveWidget ? 0 : -1,\n \"data-composite-item-widget\": true,\n onFocus: onFocus,\n onBlur: onBlur,\n onKeyDown: onKeyDown\n }, htmlProps);\n }\n});\nvar unstable_CompositeItemWidget = createComponent.createComponent({\n as: \"div\",\n useHook: unstable_useCompositeItemWidget\n});\n\nexports.unstable_CompositeItemWidget = unstable_CompositeItemWidget;\nexports.unstable_useCompositeItemWidget = unstable_useCompositeItemWidget;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar React = require('react');\n\nvar defaultPrefix = \"id\";\nfunction generateRandomString(prefix) {\n if (prefix === void 0) {\n prefix = defaultPrefix;\n }\n\n return \"\" + (prefix ? prefix + \"-\" : \"\") + Math.random().toString(32).substr(2, 6);\n}\n\nvar unstable_IdContext = /*#__PURE__*/React.createContext(generateRandomString);\nfunction unstable_IdProvider(_ref) {\n var children = _ref.children,\n _ref$prefix = _ref.prefix,\n prefix = _ref$prefix === void 0 ? defaultPrefix : _ref$prefix;\n var count = React.useRef(0);\n var generateId = React.useCallback(function (localPrefix) {\n if (localPrefix === void 0) {\n localPrefix = prefix;\n }\n\n return \"\" + (localPrefix ? localPrefix + \"-\" : \"\") + ++count.current;\n }, [prefix]);\n return /*#__PURE__*/React.createElement(unstable_IdContext.Provider, {\n value: generateId\n }, children);\n}\n\nexports.unstable_IdContext = unstable_IdContext;\nexports.unstable_IdProvider = unstable_IdProvider;\n","/**\n * Immutably removes an index from an array.\n *\n * @example\n * import { removeIndexFromArray } from \"reakit-utils\";\n *\n * removeIndexFromArray([\"a\", \"b\", \"c\"], 1); // [\"a\", \"c\"]\n *\n * @returns {Array} A new array without the item in the passed index.\n */\nfunction removeIndexFromArray(array, index) {\n if (index === -1) return array;\n return [].concat(array.slice(0, index), array.slice(index + 1));\n}\n\nexport { removeIndexFromArray };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/createEvent');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nrequire('../Composite/CompositeItem.js');\nrequire('reakit-utils/removeItemFromArray');\nrequire('../MenuContext-2d32bb3e.js');\nrequire('reakit-utils/contains');\nrequire('reakit-warning/warning');\nrequire('../__keys-a6d5cee4.js');\nvar Radio_Radio = require('../Radio/Radio.js');\nvar __keys = require('../__keys-087914ef.js');\nrequire('../findVisibleSubmenu-d8b7eeab.js');\nvar Menu_MenuItem = require('./MenuItem.js');\n\nvar useMenuItemRadio = createHook.createHook({\n name: \"MenuItemRadio\",\n compose: [Menu_MenuItem.useMenuItem, Radio_Radio.useRadio],\n keys: __keys.MENU_ITEM_RADIO_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n if (prev.name !== next.name) {\n return Menu_MenuItem.useMenuItem.unstable_propsAreEqual(prev, next);\n }\n\n var prevValues = prev.unstable_values,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"unstable_values\"]);\n\n var nextValues = next.unstable_values,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"unstable_values\"]);\n\n if (prevValues[next.name] !== nextValues[next.name]) {\n return false;\n }\n\n return Menu_MenuItem.useMenuItem.unstable_propsAreEqual(prevProps, nextProps);\n },\n useOptions: function useOptions(options) {\n var setState = React.useCallback(function (value) {\n return options.unstable_setValue(options.name, value);\n }, [options.unstable_setValue, options.name]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n unstable_checkOnFocus: false,\n state: options.unstable_values[options.name],\n setState: setState\n });\n },\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"menuitemradio\"\n }, htmlProps);\n }\n});\nvar MenuItemRadio = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useMenuItemRadio\n});\n\nexports.MenuItemRadio = MenuItemRadio;\nexports.useMenuItemRadio = useMenuItemRadio;\n","'use strict';\n\nfunction getMenuId(baseId) {\n return baseId + \"-menu\";\n}\n\nexports.getMenuId = getMenuId;\n","import { contains } from './contains.js';\n\n/**\n * Returns `true` if `event` has been fired within a React Portal element.\n */\n\nfunction isPortalEvent(event) {\n return !contains(event.currentTarget, event.target);\n}\n\nexport { isPortalEvent };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('../Role/Role.js');\nrequire('../Id/IdProvider.js');\nvar Id_Id = require('../Id/Id.js');\nrequire('../__keys-f41a441b.js');\nvar Disclosure_DisclosureContent = require('../Disclosure/DisclosureContent.js');\nvar __keys = require('../__keys-f590d919.js');\n\nfunction getTabsWithoutPanel(tabs, panels) {\n var panelsTabIds = panels.map(function (panel) {\n return panel.groupId;\n }).filter(Boolean);\n return tabs.filter(function (item) {\n return panelsTabIds.indexOf(item.id || undefined) === -1;\n });\n}\n\nfunction getPanelIndex(panels, panel) {\n var panelsWithoutTabId = panels.filter(function (p) {\n return !p.groupId;\n });\n return panelsWithoutTabId.indexOf(panel);\n}\n/**\n * When is used without tabId:\n *\n * - First render: getTabId will return undefined because options.panels\n * doesn't contain the current panel yet (registerPanel wasn't called yet).\n * Thus registerPanel will be called without groupId (tabId).\n *\n * - Second render: options.panels already contains the current panel\n * (because registerPanel was called in the previous render). This means that\n * we'll be able to get the related tabId with the tab panel index. Basically,\n * we filter out all the tabs and panels that have already matched. In this\n * phase, registerPanel will be called again with the proper groupId (tabId).\n *\n * - In the third render, panel.groupId will be already defined, so we just\n * return it. registerPanel is not called.\n */\n\n\nfunction getTabId(options) {\n var _options$panels, _tabsWithoutPanel$pan;\n\n var panel = (_options$panels = options.panels) === null || _options$panels === void 0 ? void 0 : _options$panels.find(function (p) {\n return p.id === options.id;\n });\n var tabId = options.tabId || (panel === null || panel === void 0 ? void 0 : panel.groupId);\n\n if (tabId || !panel || !options.panels || !options.items) {\n return tabId;\n }\n\n var panelIndex = getPanelIndex(options.panels, panel);\n var tabsWithoutPanel = getTabsWithoutPanel(options.items, options.panels);\n return ((_tabsWithoutPanel$pan = tabsWithoutPanel[panelIndex]) === null || _tabsWithoutPanel$pan === void 0 ? void 0 : _tabsWithoutPanel$pan.id) || undefined;\n}\n\nvar useTabPanel = createHook.createHook({\n name: \"TabPanel\",\n compose: [Id_Id.unstable_useId, Disclosure_DisclosureContent.useDisclosureContent],\n keys: __keys.TAB_PANEL_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\"]);\n\n var ref = React.useRef(null);\n var tabId = getTabId(options);\n var id = options.id,\n registerPanel = options.registerPanel,\n unregisterPanel = options.unregisterPanel;\n React.useEffect(function () {\n if (!id) return undefined;\n registerPanel === null || registerPanel === void 0 ? void 0 : registerPanel({\n id: id,\n ref: ref,\n groupId: tabId\n });\n return function () {\n unregisterPanel === null || unregisterPanel === void 0 ? void 0 : unregisterPanel(id);\n };\n }, [tabId, id, registerPanel, unregisterPanel]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n role: \"tabpanel\",\n tabIndex: 0,\n \"aria-labelledby\": tabId\n }, htmlProps);\n },\n useComposeOptions: function useComposeOptions(options) {\n var tabId = getTabId(options);\n return _rollupPluginBabelHelpers._objectSpread2({\n visible: tabId ? options.selectedId === tabId : false\n }, options);\n }\n});\nvar TabPanel = createComponent.createComponent({\n as: \"div\",\n useHook: useTabPanel\n});\n\nexports.TabPanel = TabPanel;\nexports.useTabPanel = useTabPanel;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('../Box/Box.js');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar __keys = require('../__keys-a7141fdd.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('../Composite/CompositeItem.js');\nvar Combobox_ComboboxItem = require('./ComboboxItem.js');\n\nvar unstable_useComboboxOption = createHook.createHook({\n name: \"ComboboxOption\",\n compose: [Combobox_ComboboxItem.unstable_useComboboxItem, Composite_CompositeItem.useCompositeItem],\n keys: __keys.COMBOBOX_OPTION_KEYS,\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"option\"\n }, htmlProps);\n }\n});\nvar unstable_ComboboxOption = createComponent.createComponent({\n as: \"div\",\n memo: true,\n useHook: unstable_useComboboxOption\n});\n\nexports.unstable_ComboboxOption = unstable_ComboboxOption;\nexports.unstable_useComboboxOption = unstable_useComboboxOption;\n","import { flatten } from 'reakit-utils/flatten';\n\n/**\n * Logs `messages` to the console using `console.warn` based on a `condition`.\n *\n * @example\n * import { warning } from \"reakit-warning\";\n *\n * warning(true, \"a\", \"b\"); // console.warn(\"a\", \"\\n\", \"b\")\n * warning(false, \"a\", \"b\"); // does nothing\n */\n\nfunction warning(condition) {\n if (process.env.NODE_ENV !== \"production\") {\n var _console;\n\n if (!condition) return;\n\n for (var _len = arguments.length, messages = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n messages[_key - 1] = arguments[_key];\n }\n\n var warns = flatten(messages.map(function (message) {\n return [message, \"\\n\"];\n })); // eslint-disable-next-line no-console\n\n (_console = console).warn.apply(_console, warns.slice(0, -1)); // Throwing an error and catching it immediately to improve debugging\n // A consumer can use 'pause on caught exceptions'\n // https://github.com/facebook/react/issues/4216\n\n\n try {\n throw Error(warns.join(\"\"));\n } catch (x) {// do nothing\n }\n }\n}\n\nexport { warning };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('reakit-utils/useUpdateEffect');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('reakit-utils/ensureFocus');\nrequire('../__keys-f41a441b.js');\nrequire('../Disclosure/DisclosureContent.js');\nrequire('react-dom');\nrequire('../Portal/Portal.js');\nrequire('reakit-utils/removeItemFromArray');\nrequire('../MenuContext-2d32bb3e.js');\nvar Dialog_Dialog = require('../Dialog/Dialog.js');\nrequire('body-scroll-lock');\nrequire('reakit-utils/closest');\nrequire('reakit-utils/getActiveElement');\nrequire('reakit-utils/contains');\nrequire('../DialogBackdropContext-b43e21d7.js');\nrequire('reakit-utils/isEmpty');\nrequire('../__keys-0c8e6398.js');\nvar __keys = require('../__keys-eddd3051.js');\n\nvar usePopover = createHook.createHook({\n name: \"Popover\",\n compose: Dialog_Dialog.useDialog,\n keys: __keys.POPOVER_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$modal = _ref.modal,\n modal = _ref$modal === void 0 ? false : _ref$modal,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"modal\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n modal: modal\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlRef = _ref2.ref,\n htmlStyle = _ref2.style,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"ref\", \"style\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(options.unstable_popoverRef, htmlRef),\n style: _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options.unstable_popoverStyles), htmlStyle)\n }, htmlProps);\n }\n});\nvar Popover = createComponent.createComponent({\n as: \"div\",\n useHook: usePopover,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/popover\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.Popover = Popover;\nexports.usePopover = usePopover;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/createEvent');\nrequire('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nrequire('../Composite/CompositeItem.js');\nrequire('../Group/Group.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nrequire('../Composite/CompositeState.js');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nrequire('../getLabelId-eba7e47b.js');\nvar Form_utils_getIn = require('./utils/getIn.js');\nrequire('../shouldShowError-880a39c9.js');\nrequire('./FormGroup.js');\nrequire('reakit-warning/warning');\nrequire('../__keys-a6d5cee4.js');\nvar Radio_Radio = require('../Radio/Radio.js');\nvar Form_FormRadioGroup = require('./FormRadioGroup.js');\n\nvar unstable_useFormRadio = createHook.createHook({\n name: \"FormRadio\",\n compose: Radio_Radio.useRadio,\n keys: __keys.FORM_RADIO_KEYS,\n useOptions: function useOptions(options, htmlProps) {\n var name = options.name || htmlProps.name;\n var value = typeof options.value !== \"undefined\" ? options.value : htmlProps.value;\n var composite = React.useContext(Form_FormRadioGroup.FormRadioGroupContext);\n var currentChecked = Form_utils_getIn.unstable_getIn(options.values, name);\n var checked = currentChecked === value;\n\n if (!composite) {\n // TODO: Better error\n throw new Error(\"Missing FormRadioGroup\");\n }\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), composite), {}, {\n checked: checked,\n name: name,\n value: value\n });\n },\n useProps: function useProps(options, _ref) {\n var htmlOnChange = _ref.onChange,\n htmlOnBlur = _ref.onBlur,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onChange\", \"onBlur\"]);\n\n var onChangeRef = useLiveRef.useLiveRef(htmlOnChange);\n var onBlurRef = useLiveRef.useLiveRef(htmlOnBlur);\n var onChange = React.useCallback(function (event) {\n var _onChangeRef$current, _options$update;\n\n (_onChangeRef$current = onChangeRef.current) === null || _onChangeRef$current === void 0 ? void 0 : _onChangeRef$current.call(onChangeRef, event);\n if (event.defaultPrevented) return;\n (_options$update = options.update) === null || _options$update === void 0 ? void 0 : _options$update.call(options, options.name, options.value);\n }, [options.update, options.name, options.value]);\n var onBlur = React.useCallback(function (event) {\n var _onBlurRef$current, _options$blur;\n\n (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);\n if (event.defaultPrevented) return;\n (_options$blur = options.blur) === null || _options$blur === void 0 ? void 0 : _options$blur.call(options, options.name);\n }, [options.blur, options.name]);\n return _rollupPluginBabelHelpers._objectSpread2({\n name: getInputId.formatInputName(options.name),\n onChange: onChange,\n onBlur: onBlur\n }, htmlProps);\n }\n});\nvar unstable_FormRadio = createComponent.createComponent({\n as: \"input\",\n memo: true,\n useHook: unstable_useFormRadio\n});\n\nexports.unstable_FormRadio = unstable_FormRadio;\nexports.unstable_useFormRadio = unstable_useFormRadio;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Role_Role = require('../Role/Role.js');\n\n// Automatically generated\nvar GROUP_KEYS = [];\n\nvar useGroup = createHook.createHook({\n name: \"Group\",\n compose: Role_Role.useRole,\n keys: GROUP_KEYS,\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"group\"\n }, htmlProps);\n }\n});\nvar Group = createComponent.createComponent({\n as: \"div\",\n useHook: useGroup\n});\n\nexports.Group = Group;\nexports.useGroup = useGroup;\n","import './getDocument.js';\nimport { a as _objectSpread2 } from './_rollupPluginBabelHelpers-1f0bf8c2.js';\nimport { createEvent } from './createEvent.js';\n\nfunction createFocusEvent(element, type, eventInit) {\n if (eventInit === void 0) {\n eventInit = {};\n }\n\n if (typeof FocusEvent === \"function\") {\n return new FocusEvent(type, eventInit);\n }\n\n return createEvent(element, type, eventInit);\n}\n/**\n * Creates and dispatches a blur event in a way that also works on IE 11.\n *\n * @example\n * import { fireBlurEvent } from \"reakit-utils\";\n *\n * fireBlurEvent(document.getElementById(\"id\"));\n */\n\n\nfunction fireBlurEvent(element, eventInit) {\n var event = createFocusEvent(element, \"blur\", eventInit);\n var defaultAllowed = element.dispatchEvent(event);\n\n var bubbleInit = _objectSpread2(_objectSpread2({}, eventInit), {}, {\n bubbles: true\n });\n\n element.dispatchEvent(createFocusEvent(element, \"focusout\", bubbleInit));\n return defaultAllowed;\n}\n\nexport { fireBlurEvent };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar Composite_Composite = require('../Composite/Composite.js');\nvar __keys = require('../__keys-d2d383f0.js');\n\nvar unstable_useGrid = createHook.createHook({\n name: \"Grid\",\n compose: Composite_Composite.useComposite,\n keys: __keys.GRID_KEYS,\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"grid\"\n }, htmlProps);\n }\n});\nvar unstable_Grid = createComponent.createComponent({\n as: \"div\",\n useHook: unstable_useGrid,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/grid\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.unstable_Grid = unstable_Grid;\nexports.unstable_useGrid = unstable_useGrid;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('../Role/Role.js');\nvar Separator_Separator = require('../Separator/Separator.js');\nvar __keys = require('../__keys-403ff944.js');\n\nvar useToolbarSeparator = createHook.createHook({\n name: \"ToolbarSeparator\",\n compose: Separator_Separator.useSeparator,\n keys: __keys.TOOLBAR_SEPARATOR_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$orientation = _ref.orientation,\n orientation = _ref$orientation === void 0 ? \"vertical\" : _ref$orientation,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"orientation\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n orientation: orientation === \"vertical\" ? \"horizontal\" : \"vertical\"\n }, options);\n }\n});\nvar ToolbarSeparator = createComponent.createComponent({\n as: \"hr\",\n memo: true,\n useHook: useToolbarSeparator\n});\n\nexports.ToolbarSeparator = ToolbarSeparator;\nexports.useToolbarSeparator = useToolbarSeparator;\n","import { useRef, useEffect } from 'react';\n\n/**\n * A `React.useEffect` that will not run on the first render.\n */\n\nfunction useUpdateEffect(effect, deps) {\n var mounted = useRef(false);\n useEffect(function () {\n if (mounted.current) {\n return effect();\n }\n\n mounted.current = true;\n return undefined;\n }, deps);\n}\n\nexport { useUpdateEffect };\n","import { isObject } from './isObject.js';\n\n/**\n * Checks whether `arg` is empty or not.\n *\n * @example\n * import { isEmpty } from \"reakit-utils\";\n *\n * isEmpty([]); // true\n * isEmpty([\"a\"]); // false\n * isEmpty({}); // true\n * isEmpty({ a: \"a\" }); // false\n * isEmpty(); // true\n * isEmpty(null); // true\n * isEmpty(undefined); // true\n * isEmpty(\"\"); // true\n */\n\nfunction isEmpty(arg) {\n if (Array.isArray(arg)) return !arg.length;\n if (isObject(arg)) return !Object.keys(arg).length;\n if (arg == null) return true;\n if (arg === \"\") return true;\n return false;\n}\n\nexport { isEmpty };\n","import './getDocument.js';\nimport './getWindow.js';\nimport { canUseDOM } from './canUseDOM.js';\nimport { getActiveElement } from './getActiveElement.js';\n\nvar isIE11 = canUseDOM && \"msCrypto\" in window;\n/**\n * Cross-browser method that returns the next active element (the element that\n * is receiving focus) after a blur event is dispatched. It receives the blur\n * event object as the argument.\n *\n * @example\n * import { getNextActiveElementOnBlur } from \"reakit-utils\";\n *\n * const element = document.getElementById(\"id\");\n * element.addEventListener(\"blur\", (event) => {\n * const nextActiveElement = getNextActiveElementOnBlur(event);\n * });\n */\n\nfunction getNextActiveElementOnBlur(event) {\n // IE 11 doesn't support event.relatedTarget on blur.\n // document.activeElement points the the next active element.\n // On modern browsers, document.activeElement points to the current target.\n if (isIE11) {\n var activeElement = getActiveElement(event.currentTarget);\n return activeElement;\n }\n\n return event.relatedTarget;\n}\n\nexport { getNextActiveElementOnBlur };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar isObject = require('reakit-utils/isObject');\n\nfunction unstable_setAllIn(object, value) {\n var typedObject = object;\n var result = {};\n var keys = Object.keys(object);\n\n for (var _i = 0, _keys = keys; _i < _keys.length; _i++) {\n var key = _keys[_i];\n var val = typedObject[key];\n\n if (Array.isArray(val)) {\n result[key] = val.map(function (v) {\n if (isObject.isObject(v)) {\n return unstable_setAllIn(v, value);\n }\n\n return value;\n });\n } else if (isObject.isObject(val)) {\n result[key] = unstable_setAllIn(val, value);\n } else {\n result[key] = value;\n }\n }\n\n return result;\n}\n\nexports.unstable_setAllIn = unstable_setAllIn;\n","import { useMemo } from 'react';\n\n// https://github.com/mui-org/material-ui/blob/2bcc874cf07b81202968f769cb9c2398c7c11311/packages/material-ui/src/utils/useForkRef.js\n\nfunction setRef(ref, value) {\n if (value === void 0) {\n value = null;\n }\n\n if (!ref) return;\n\n if (typeof ref === \"function\") {\n ref(value);\n } else {\n ref.current = value;\n }\n}\n/**\n * Merges up to two React Refs into a single memoized function React Ref so you\n * can pass it to an element.\n *\n * @example\n * import React from \"react\";\n * import { useForkRef } from \"reakit-utils\";\n *\n * const Component = React.forwardRef((props, ref) => {\n * const internalRef = React.useRef();\n * return ;\n * });\n */\n\n\nfunction useForkRef(refA, refB) {\n return useMemo(function () {\n if (refA == null && refB == null) {\n return null;\n }\n\n return function (value) {\n setRef(refA, value);\n setRef(refB, value);\n };\n }, [refA, refB]);\n}\n\nexport { useForkRef };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/removeIndexFromArray');\nrequire('reakit-utils/createEvent');\nvar Checkbox_Checkbox = require('../Checkbox/Checkbox.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nrequire('../Composite/CompositeItem.js');\nrequire('reakit-utils/removeItemFromArray');\nrequire('../MenuContext-2d32bb3e.js');\nrequire('reakit-utils/contains');\nvar __keys = require('../__keys-087914ef.js');\nrequire('../findVisibleSubmenu-d8b7eeab.js');\nvar Menu_MenuItem = require('./MenuItem.js');\n\nvar useMenuItemCheckbox = createHook.createHook({\n name: \"MenuItemCheckbox\",\n compose: [Menu_MenuItem.useMenuItem, Checkbox_Checkbox.useCheckbox],\n keys: __keys.MENU_ITEM_CHECKBOX_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n if (prev.name !== next.name) {\n return Menu_MenuItem.useMenuItem.unstable_propsAreEqual(prev, next);\n }\n\n var prevValues = prev.unstable_values,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"unstable_values\"]);\n\n var nextValues = next.unstable_values,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"unstable_values\"]);\n\n if (prevValues[next.name] !== nextValues[next.name]) {\n return false;\n }\n\n return Menu_MenuItem.useMenuItem.unstable_propsAreEqual(prevProps, nextProps);\n },\n useOptions: function useOptions(options) {\n var setState = React.useCallback(function (value) {\n return options.unstable_setValue(options.name, value);\n }, [options.unstable_setValue, options.name]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n state: options.unstable_values[options.name],\n setState: setState\n });\n },\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"menuitemcheckbox\",\n name: options.name\n }, htmlProps);\n }\n});\nvar MenuItemCheckbox = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useMenuItemCheckbox\n});\n\nexports.MenuItemCheckbox = MenuItemCheckbox;\nexports.useMenuItemCheckbox = useMenuItemCheckbox;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nvar reakitWarning = require('reakit-warning');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('../Id/IdProvider.js');\nvar Id_IdState = require('../Id/IdState.js');\n\nfunction useLastValue(value) {\n var lastValue = React.useRef(null);\n useIsomorphicEffect.useIsomorphicEffect(function () {\n lastValue.current = value;\n }, [value]);\n return lastValue;\n}\n\nfunction useDisclosureState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$visib = _useSealedState.visible,\n initialVisible = _useSealedState$visib === void 0 ? false : _useSealedState$visib,\n _useSealedState$anima = _useSealedState.animated,\n initialAnimated = _useSealedState$anima === void 0 ? false : _useSealedState$anima,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"visible\", \"animated\"]);\n\n var id = Id_IdState.unstable_useIdState(sealed);\n\n var _React$useState = React.useState(initialVisible),\n visible = _React$useState[0],\n setVisible = _React$useState[1];\n\n var _React$useState2 = React.useState(initialAnimated),\n animated = _React$useState2[0],\n setAnimated = _React$useState2[1];\n\n var _React$useState3 = React.useState(false),\n animating = _React$useState3[0],\n setAnimating = _React$useState3[1];\n\n var lastVisible = useLastValue(visible);\n var visibleHasChanged = lastVisible.current != null && lastVisible.current !== visible;\n\n if (animated && !animating && visibleHasChanged) {\n // Sets animating to true when when visible is updated\n setAnimating(true);\n }\n\n React.useEffect(function () {\n if (typeof animated === \"number\" && animating) {\n var timeout = setTimeout(function () {\n return setAnimating(false);\n }, animated);\n return function () {\n clearTimeout(timeout);\n };\n }\n\n if (animated && animating && process.env.NODE_ENV === \"development\") {\n var _timeout = setTimeout(function () {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(animating, \"It's been 8 seconds but stopAnimation has not been called. Does the disclousure element have a CSS transition?\") : void 0;\n }, 8000);\n\n return function () {\n clearTimeout(_timeout);\n };\n }\n\n return function () {};\n }, [animated, animating]);\n var show = React.useCallback(function () {\n return setVisible(true);\n }, []);\n var hide = React.useCallback(function () {\n return setVisible(false);\n }, []);\n var toggle = React.useCallback(function () {\n return setVisible(function (v) {\n return !v;\n });\n }, []);\n var stopAnimation = React.useCallback(function () {\n return setAnimating(false);\n }, []);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, id), {}, {\n visible: visible,\n animated: animated,\n animating: animating,\n show: show,\n hide: hide,\n toggle: toggle,\n setVisible: setVisible,\n setAnimated: setAnimated,\n stopAnimation: stopAnimation\n });\n}\n\nexports.useDisclosureState = useDisclosureState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('reakit-utils/getDocument');\nrequire('../getCurrentId-eade2850.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('reakit-utils/isTextField');\nrequire('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nrequire('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nrequire('../setTextFieldValue-b0584ae1.js');\nvar Composite_CompositeItem = require('../Composite/CompositeItem.js');\nvar __keys = require('../__keys-d2d383f0.js');\n\nvar unstable_useGridCell = createHook.createHook({\n name: \"GridCell\",\n compose: Composite_CompositeItem.useCompositeItem,\n keys: __keys.GRID_CELL_KEYS,\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"gridcell\"\n }, htmlProps);\n }\n});\nvar unstable_GridCell = createComponent.createComponent({\n as: \"span\",\n memo: true,\n useHook: unstable_useGridCell\n});\n\nexports.unstable_GridCell = unstable_GridCell;\nexports.unstable_useGridCell = unstable_useGridCell;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar Composite_Composite = require('../Composite/Composite.js');\nrequire('reakit-utils/removeItemFromArray');\nvar MenuContext = require('../MenuContext-2d32bb3e.js');\nvar closest = require('reakit-utils/closest');\nvar __keys = require('../__keys-087914ef.js');\n\nfunction useShortcuts(menuRef, _ref, timeout) {\n var _ref$items = _ref.items,\n items = _ref$items === void 0 ? [] : _ref$items,\n move = _ref.move;\n\n if (timeout === void 0) {\n timeout = 500;\n }\n\n var _React$useState = React.useState(\"\"),\n keys = _React$useState[0],\n setKeys = _React$useState[1];\n\n React.useEffect(function () {\n if (!keys) return undefined;\n var timeoutId = setTimeout(function () {\n return setKeys(\"\");\n }, timeout);\n var stop = items.find(function (s) {\n return Boolean(s.ref.current && s.ref.current.textContent && s.ref.current.textContent.toLowerCase().startsWith(keys));\n });\n\n if (stop) {\n move(stop.id);\n }\n\n return function () {\n return clearTimeout(timeoutId);\n };\n }, [keys, items, move, timeout]);\n React.useEffect(function () {\n var menu = menuRef.current;\n if (!menu) return undefined;\n\n var onKeyDown = function onKeyDown(event) {\n var _target$getAttribute;\n\n if (event.key.length > 1) return;\n if (event.shiftKey) return;\n if (event.metaKey) return;\n if (event.ctrlKey) return;\n if (event.altKey) return;\n var target = event.target;\n var role = (_target$getAttribute = target.getAttribute) === null || _target$getAttribute === void 0 ? void 0 : _target$getAttribute.call(target, \"role\");\n var targetIsMenu = target === menu;\n var targetIsMenuItem = role && role.indexOf(\"menuitem\") !== -1 && closest.closest(target, \"[role=menu],[role=menubar]\") === menu;\n if (!targetIsMenu && !targetIsMenuItem) return;\n\n if (/^[a-z0-9_-]$/i.test(event.key)) {\n event.stopPropagation();\n event.preventDefault();\n setKeys(function (k) {\n return \"\" + k + event.key;\n });\n }\n }; // https://github.com/facebook/react/issues/11387#issuecomment-524113945\n\n\n menu.addEventListener(\"keydown\", onKeyDown);\n return function () {\n return menu.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [menuRef, setKeys]);\n}\n\nvar useMenuBar = createHook.createHook({\n name: \"MenuBar\",\n compose: Composite_Composite.useComposite,\n keys: __keys.MENU_BAR_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlWrapElement = _ref.wrapElement,\n _ref$role = _ref.role,\n role = _ref$role === void 0 ? \"menubar\" : _ref$role,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\", \"wrapElement\", \"role\"]);\n\n var ref = React.useRef(null);\n var wrap = MenuContext.useMenuContext(ref, role, options);\n useShortcuts(ref, options);\n var wrapElement = React.useCallback(function (element) {\n element = wrap(element);\n\n if (htmlWrapElement) {\n return htmlWrapElement(element);\n }\n\n return element;\n }, [wrap, htmlWrapElement]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n role: role,\n \"aria-orientation\": options.orientation,\n wrapElement: wrapElement\n }, htmlProps);\n }\n});\nvar MenuBar = createComponent.createComponent({\n as: \"div\",\n useHook: useMenuBar,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"] && props.role !== \"menubar\", \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/menu\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.MenuBar = MenuBar;\nexports.useMenuBar = useMenuBar;\n","'use strict';\n\nvar globalState = {\n currentTooltipId: null,\n listeners: new Set(),\n subscribe: function subscribe(listener) {\n var _this = this;\n\n this.listeners.add(listener);\n return function () {\n _this.listeners.delete(listener);\n };\n },\n show: function show(id) {\n this.currentTooltipId = id;\n this.listeners.forEach(function (listener) {\n return listener(id);\n });\n },\n hide: function hide(id) {\n if (this.currentTooltipId === id) {\n this.currentTooltipId = null;\n this.listeners.forEach(function (listener) {\n return listener(null);\n });\n }\n }\n};\n\nexports.globalState = globalState;\n","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return (module.exports = _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, module.exports.__esModule = true, module.exports[\"default\"] = module.exports), _typeof(obj);\n}\nmodule.exports = _typeof, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('../Button/Button.js');\nrequire('../__keys-f41a441b.js');\nvar __keys = require('../__keys-0c8e6398.js');\nvar Disclosure_Disclosure = require('../Disclosure/Disclosure.js');\n\nvar useDialogDisclosure = createHook.createHook({\n name: \"DialogDisclosure\",\n compose: Disclosure_Disclosure.useDisclosure,\n keys: __keys.DIALOG_DISCLOSURE_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlOnClick = _ref.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\", \"onClick\"]);\n\n var ref = React.useRef(null);\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n\n var _React$useState = React.useState(false),\n expanded = _React$useState[0],\n setExpanded = _React$useState[1];\n\n var disclosureRef = options.unstable_disclosureRef; // aria-expanded may be used for styling purposes, so we useLayoutEffect\n\n useIsomorphicEffect.useIsomorphicEffect(function () {\n var element = ref.current;\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(!element, \"Can't determine whether the element is the current disclosure because `ref` wasn't passed to the component\", \"See https://reakit.io/docs/dialog\") : void 0;\n\n if (disclosureRef && !disclosureRef.current) {\n disclosureRef.current = element;\n }\n\n var isCurrentDisclosure = !(disclosureRef !== null && disclosureRef !== void 0 && disclosureRef.current) || disclosureRef.current === element;\n setExpanded(!!options.visible && isCurrentDisclosure);\n }, [options.visible, disclosureRef]);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n\n if (disclosureRef) {\n disclosureRef.current = event.currentTarget;\n }\n }, [disclosureRef]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n \"aria-haspopup\": \"dialog\",\n \"aria-expanded\": expanded,\n onClick: onClick\n }, htmlProps);\n }\n});\nvar DialogDisclosure = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useDialogDisclosure\n});\n\nexports.DialogDisclosure = DialogDisclosure;\nexports.useDialogDisclosure = useDialogDisclosure;\n","'use strict';\n\nfunction _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}\n\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n if (enumerableOnly) symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n });\n keys.push.apply(keys, symbols);\n }\n\n return keys;\n}\n\nfunction _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i] != null ? arguments[i] : {};\n\n if (i % 2) {\n ownKeys(Object(source), true).forEach(function (key) {\n _defineProperty(target, key, source[key]);\n });\n } else if (Object.getOwnPropertyDescriptors) {\n Object.defineProperties(target, Object.getOwnPropertyDescriptors(source));\n } else {\n ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n }\n\n return target;\n}\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 _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return _arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen);\n}\n\nfunction _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i];\n\n return arr2;\n}\n\nfunction _createForOfIteratorHelperLoose(o, allowArrayLike) {\n var it;\n\n if (typeof Symbol === \"undefined\" || o[Symbol.iterator] == null) {\n if (Array.isArray(o) || (it = _unsupportedIterableToArray(o)) || allowArrayLike && o && typeof o.length === \"number\") {\n if (it) o = it;\n var i = 0;\n return function () {\n if (i >= o.length) return {\n done: true\n };\n return {\n done: false,\n value: o[i++]\n };\n };\n }\n\n throw new TypeError(\"Invalid attempt to iterate non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n }\n\n it = o[Symbol.iterator]();\n return it.next.bind(it);\n}\n\nexports._createForOfIteratorHelperLoose = _createForOfIteratorHelperLoose;\nexports._objectSpread2 = _objectSpread2;\nexports._objectWithoutPropertiesLoose = _objectWithoutPropertiesLoose;\n","'use strict';\n\nvar getInputId = require('./getInputId-cbd3bbcc.js');\nvar Form_utils_getIn = require('./Form/utils/getIn.js');\n\nfunction getMessageId(name, baseId) {\n return getInputId.getInputId(name, baseId, \"-message\");\n}\n\nfunction shouldShowError(_ref, name) {\n var touched = _ref.touched,\n errors = _ref.errors;\n return !!(Form_utils_getIn.unstable_getIn(touched, name) && Form_utils_getIn.unstable_getIn(errors, name));\n}\n\nexports.getMessageId = getMessageId;\nexports.shouldShowError = shouldShowError;\n","'use strict';\n\nvar React = require('react');\nvar removeItemFromArray = require('reakit-utils/removeItemFromArray');\n\nvar MenuContext = /*#__PURE__*/React.createContext(null);\nfunction useMenuContext(menuRef, role, options) {\n var orphan = \"unstable_orphan\" in options && options.unstable_orphan;\n var parent = React.useContext(MenuContext);\n\n var _React$useState = React.useState([]),\n children = _React$useState[0],\n setChildren = _React$useState[1];\n\n var _ref = parent || {},\n addChildToParent = _ref.addChild,\n removeChildFromParent = _ref.removeChild;\n\n var addChild = React.useCallback(function (ref) {\n return setChildren(function (refs) {\n return [].concat(refs, [ref]);\n });\n }, []);\n var removeChild = React.useCallback(function (ref) {\n return setChildren(function (refs) {\n return removeItemFromArray.removeItemFromArray(refs, ref);\n });\n }, []); // If it's a nested menu, add it to parent\n\n React.useEffect(function () {\n if (!addChildToParent || orphan) return undefined;\n addChildToParent(menuRef);\n return function () {\n removeChildFromParent === null || removeChildFromParent === void 0 ? void 0 : removeChildFromParent(menuRef);\n };\n }, [menuRef, addChildToParent, removeChildFromParent, orphan]);\n var providerValue = React.useMemo(function () {\n return {\n orientation: options.orientation,\n next: options.next,\n previous: options.previous,\n ref: menuRef,\n role: role,\n parent: parent,\n children: children,\n addChild: addChild,\n removeChild: removeChild\n };\n }, [options.orientation, options.next, options.previous, menuRef, role, parent, children, addChild, removeChild]);\n var wrapElement = React.useCallback(function (element) {\n return /*#__PURE__*/React.createElement(MenuContext.Provider, {\n value: providerValue\n }, element);\n }, [providerValue]);\n return wrapElement;\n}\n\nexports.MenuContext = MenuContext;\nexports.useMenuContext = useMenuContext;\n","import { removeIndexFromArray } from './removeIndexFromArray.js';\n\n/**\n * Immutably removes an item from an array.\n *\n * @example\n * import { removeItemFromArray } from \"reakit-utils\";\n *\n * removeItemFromArray([\"a\", \"b\", \"c\"], \"b\"); // [\"a\", \"c\"]\n *\n * // This only works by reference\n * const obj = {};\n * removeItemFromArray([obj], {}); // [obj]\n * removeItemFromArray([obj], obj); // []\n *\n * @returns {Array} A new array without the passed item.\n */\n\nfunction removeItemFromArray(array, item) {\n var index = array.indexOf(item);\n return removeIndexFromArray(array, index);\n}\n\nexport { removeItemFromArray };\n","'use strict';\n\n// Automatically generated\nvar GRID_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"unstable_virtual\", \"rtl\", \"orientation\", \"items\", \"groups\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_moves\", \"unstable_hasActiveWidget\", \"unstable_includesBaseElement\", \"setBaseId\", \"registerItem\", \"unregisterItem\", \"registerGroup\", \"unregisterGroup\", \"move\", \"next\", \"previous\", \"up\", \"down\", \"first\", \"last\", \"sort\", \"unstable_setVirtual\", \"setRTL\", \"setOrientation\", \"setCurrentId\", \"setLoop\", \"setWrap\", \"setShift\", \"reset\", \"unstable_setIncludesBaseElement\", \"unstable_setHasActiveWidget\"];\nvar GRID_KEYS = GRID_STATE_KEYS;\nvar GRID_CELL_KEYS = GRID_KEYS;\nvar GRID_ROW_KEYS = GRID_CELL_KEYS;\n\nexports.GRID_CELL_KEYS = GRID_CELL_KEYS;\nexports.GRID_KEYS = GRID_KEYS;\nexports.GRID_ROW_KEYS = GRID_ROW_KEYS;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nvar isPortalEvent = require('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('reakit-utils/useUpdateEffect');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nrequire('../Composite/Composite.js');\nrequire('reakit-utils/ensureFocus');\nrequire('../__keys-f41a441b.js');\nrequire('../Disclosure/DisclosureContent.js');\nrequire('react-dom');\nrequire('../Portal/Portal.js');\nrequire('reakit-utils/removeItemFromArray');\nvar MenuContext = require('../MenuContext-2d32bb3e.js');\nrequire('../Dialog/Dialog.js');\nrequire('body-scroll-lock');\nrequire('reakit-utils/closest');\nrequire('reakit-utils/getActiveElement');\nrequire('reakit-utils/contains');\nrequire('../DialogBackdropContext-b43e21d7.js');\nrequire('reakit-utils/isEmpty');\nrequire('../__keys-0c8e6398.js');\nrequire('../__keys-eddd3051.js');\nvar Popover_Popover = require('../Popover/Popover.js');\nvar Menu_MenuBar = require('./MenuBar.js');\nvar __keys = require('../__keys-087914ef.js');\n\nfunction usePlacementDir(placement) {\n return React.useMemo(function () {\n var _placement$split;\n\n return placement === null || placement === void 0 ? void 0 : (_placement$split = placement.split(\"-\")) === null || _placement$split === void 0 ? void 0 : _placement$split[0];\n }, [placement]);\n}\n\nvar useMenu = createHook.createHook({\n name: \"Menu\",\n compose: [Menu_MenuBar.useMenuBar, Popover_Popover.usePopover],\n keys: __keys.MENU_KEYS,\n useOptions: function useOptions(options) {\n var parent = React.useContext(MenuContext.MenuContext);\n var parentIsMenuBar = (parent === null || parent === void 0 ? void 0 : parent.role) === \"menubar\";\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({\n unstable_autoFocusOnHide: !parentIsMenuBar,\n modal: false\n }, options), {}, {\n // will be handled by MenuButton\n unstable_autoFocusOnShow: false,\n // will be handled differently from usePopover/useDialog\n hideOnEsc: false\n });\n },\n useProps: function useProps(options, _ref) {\n var htmlOnKeyDown = _ref.onKeyDown,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onKeyDown\"]);\n\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var parent = React.useContext(MenuContext.MenuContext);\n var hasParent = !!parent;\n var ancestorMenuBar = parent;\n\n while (ancestorMenuBar && ancestorMenuBar.role !== \"menubar\") {\n ancestorMenuBar = ancestorMenuBar.parent;\n }\n\n var _ref2 = ancestorMenuBar || {},\n next = _ref2.next,\n previous = _ref2.previous,\n orientation = _ref2.orientation;\n\n var ancestorIsHorizontal = orientation === \"horizontal\";\n var dir = usePlacementDir(options.placement);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current;\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);\n if (event.defaultPrevented) return;\n\n if (event.key === \"Escape\") {\n var _options$hide;\n\n if (!hasParent) {\n // On Esc, only stop propagation if there's no parent menu.\n // Otherwise, pressing Esc should close all menus\n event.stopPropagation();\n }\n\n (_options$hide = options.hide) === null || _options$hide === void 0 ? void 0 : _options$hide.call(options);\n } else if (hasParent && !isPortalEvent.isPortalEvent(event)) {\n // Moves to the next menu button in a horizontal menu bar or close\n // the menu if it's a sub menu\n var ArrowRight = ancestorIsHorizontal && dir !== \"left\" ? next : dir === \"left\" && options.hide;\n var ArrowLeft = ancestorIsHorizontal && dir !== \"right\" ? previous : dir === \"right\" && options.hide;\n var keyMap = {\n ArrowRight: ArrowRight,\n ArrowLeft: ArrowLeft\n };\n var action = keyMap[event.key];\n\n if (action) {\n event.preventDefault();\n\n if (hasParent) {\n event.stopPropagation();\n }\n\n action();\n }\n }\n }, [hasParent, ancestorIsHorizontal, next, previous, dir, options.hide]);\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"menu\",\n onKeyDown: onKeyDown\n }, htmlProps);\n }\n});\nvar Menu = createComponent.createComponent({\n as: \"div\",\n useHook: useMenu,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/menu\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.Menu = Menu;\nexports.useMenu = useMenu;\n","'use strict';\n\n// Automatically generated\nvar DIALOG_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"visible\", \"animated\", \"animating\", \"setBaseId\", \"show\", \"hide\", \"toggle\", \"setVisible\", \"setAnimated\", \"stopAnimation\", \"modal\", \"unstable_disclosureRef\", \"setModal\"];\nvar DIALOG_KEYS = [].concat(DIALOG_STATE_KEYS, [\"hideOnEsc\", \"hideOnClickOutside\", \"preventBodyScroll\", \"unstable_initialFocusRef\", \"unstable_finalFocusRef\", \"unstable_orphan\", \"unstable_autoFocusOnShow\", \"unstable_autoFocusOnHide\"]);\nvar DIALOG_BACKDROP_KEYS = DIALOG_STATE_KEYS;\nvar DIALOG_DISCLOSURE_KEYS = DIALOG_BACKDROP_KEYS;\n\nexports.DIALOG_BACKDROP_KEYS = DIALOG_BACKDROP_KEYS;\nexports.DIALOG_DISCLOSURE_KEYS = DIALOG_DISCLOSURE_KEYS;\nexports.DIALOG_KEYS = DIALOG_KEYS;\n","import { useRef } from 'react';\nimport './getDocument.js';\nimport './getWindow.js';\nimport './canUseDOM.js';\nimport { useIsomorphicEffect } from './useIsomorphicEffect.js';\n\n/**\n * A `React.Ref` that keeps track of the passed `value`.\n */\n\nfunction useLiveRef(value) {\n var ref = useRef(value);\n useIsomorphicEffect(function () {\n ref.current = value;\n });\n return ref;\n}\n\nexport { useLiveRef };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-warning');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/dom');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nrequire('../Composite/CompositeState.js');\nrequire('@popperjs/core');\nrequire('../Disclosure/DisclosureState.js');\nrequire('../Dialog/DialogState.js');\nvar Popover_PopoverState = require('../Popover/PopoverState.js');\nrequire('reakit-utils/removeItemFromArray');\nvar MenuContext = require('../MenuContext-2d32bb3e.js');\nvar Menu_MenuBarState = require('./MenuBarState.js');\n\nfunction useMenuState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var parent = React.useContext(MenuContext.MenuContext);\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$orien = _useSealedState.orientation,\n orientation = _useSealedState$orien === void 0 ? \"vertical\" : _useSealedState$orien,\n _useSealedState$gutte = _useSealedState.gutter,\n gutter = _useSealedState$gutte === void 0 ? 0 : _useSealedState$gutte,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"orientation\", \"gutter\"]);\n\n var placement = sealed.placement || (parent && parent.orientation === \"vertical\" ? \"right-start\" : \"bottom-start\");\n var menuBar = Menu_MenuBarState.useMenuBarState(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, sealed), {}, {\n orientation: orientation\n }));\n var popover = Popover_PopoverState.usePopoverState(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, sealed), {}, {\n placement: placement,\n gutter: gutter\n }));\n React.useEffect(function () {\n if (!popover.visible) {\n menuBar.reset();\n }\n }, [popover.visible, menuBar.reset]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, menuBar), popover);\n}\n\nexports.useMenuState = useMenuState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nvar Button_Button = require('../Button/Button.js');\nvar getDocument = require('reakit-utils/getDocument');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nvar Form_utils_getIn = require('./utils/getIn.js');\nvar getPushButtonId = require('../getPushButtonId-7a4ebc40.js');\n\nvar unstable_useFormPushButton = createHook.createHook({\n name: \"FormPushButton\",\n compose: Button_Button.useButton,\n keys: __keys.FORM_PUSH_BUTTON_KEYS,\n useOptions: function useOptions(options, _ref) {\n var _options$value;\n\n var name = _ref.name,\n value = _ref.value;\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n name: options.name || name,\n value: (_options$value = options.value) != null ? _options$value : value\n });\n },\n useProps: function useProps(options, _ref2) {\n var htmlOnClick = _ref2.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"onClick\"]);\n\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current, _options$push;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n (_options$push = options.push) === null || _options$push === void 0 ? void 0 : _options$push.call(options, options.name, options.value);\n\n var _unstable_getIn = Form_utils_getIn.unstable_getIn(options.values, options.name, []),\n length = _unstable_getIn.length;\n\n var inputId = getInputId.getInputId(getInputId.formatInputName(options.name, \"-\") + \"-\" + length, options.baseId);\n if (!inputId) return;\n var element = event.currentTarget;\n window.requestAnimationFrame(function () {\n var selector = \"[id^=\\\"\" + inputId + \"\\\"]\";\n var document = getDocument.getDocument(element);\n var input = document.querySelector(selector);\n input === null || input === void 0 ? void 0 : input.focus();\n });\n }, [options.push, options.name, options.value, options.values, options.baseId]);\n return _rollupPluginBabelHelpers._objectSpread2({\n id: getPushButtonId.getPushButtonId(options.name, options.baseId),\n onClick: onClick\n }, htmlProps);\n }\n});\nvar unstable_FormPushButton = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: unstable_useFormPushButton\n});\n\nexports.unstable_FormPushButton = unstable_FormPushButton;\nexports.unstable_useFormPushButton = unstable_useFormPushButton;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nfunction _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'default' in ex) ? ex['default'] : ex; }\n\nvar Stylis = _interopDefault(require('stylis/stylis.min'));\nvar _insertRulePlugin = _interopDefault(require('stylis-rule-sheet'));\nvar React = require('react');\nvar React__default = _interopDefault(React);\nvar unitless = _interopDefault(require('@emotion/unitless'));\nvar reactIs = require('react-is');\nvar memoize = _interopDefault(require('memoize-one'));\nvar PropTypes = _interopDefault(require('prop-types'));\nvar validAttr = _interopDefault(require('@emotion/is-prop-valid'));\nvar merge = _interopDefault(require('merge-anything'));\n\n// \n\nvar interleave = (function (strings, interpolations) {\n var result = [strings[0]];\n\n for (var i = 0, len = interpolations.length; i < len; i += 1) {\n result.push(interpolations[i], strings[i + 1]);\n }\n\n return result;\n});\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function (instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _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\nvar inherits = function (subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function (obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function (self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\n// \nvar isPlainObject = (function (x) {\n return (typeof x === 'undefined' ? 'undefined' : _typeof(x)) === 'object' && x.constructor === Object;\n});\n\n// \nvar EMPTY_ARRAY = Object.freeze([]);\nvar EMPTY_OBJECT = Object.freeze({});\n\n// \nfunction isFunction(test) {\n return typeof test === 'function';\n}\n\n// \n\nfunction getComponentName(target) {\n return (process.env.NODE_ENV !== 'production' ? typeof target === 'string' && target : false) || target.displayName || target.name || 'Component';\n}\n\n// \nfunction isStatelessFunction(test) {\n return typeof test === 'function' && !(test.prototype && test.prototype.isReactComponent);\n}\n\n// \nfunction isStyledComponent(target) {\n return target && typeof target.styledComponentId === 'string';\n}\n\n// \n\nvar SC_ATTR = typeof process !== 'undefined' && (process.env.REACT_APP_SC_ATTR || process.env.SC_ATTR) || 'data-styled';\n\nvar SC_VERSION_ATTR = 'data-styled-version';\n\nvar SC_STREAM_ATTR = 'data-styled-streamed';\n\nvar IS_BROWSER = typeof window !== 'undefined' && 'HTMLElement' in window;\n\nvar DISABLE_SPEEDY = typeof SC_DISABLE_SPEEDY === 'boolean' && SC_DISABLE_SPEEDY || typeof process !== 'undefined' && (process.env.REACT_APP_SC_DISABLE_SPEEDY || process.env.SC_DISABLE_SPEEDY) || process.env.NODE_ENV !== 'production';\n\n// Shared empty execution context when generating static styles\nvar STATIC_EXECUTION_CONTEXT = {};\n\n// \n\n\n/**\n * Parse errors.md and turn it into a simple hash of code: message\n */\nvar ERRORS = process.env.NODE_ENV !== 'production' ? {\n \"1\": \"Cannot create styled-component for component: %s.\\n\\n\",\n \"2\": \"Can't collect styles once you've consumed a `ServerStyleSheet`'s styles! `ServerStyleSheet` is a one off instance for each server-side render cycle.\\n\\n- Are you trying to reuse it across renders?\\n- Are you accidentally calling collectStyles twice?\\n\\n\",\n \"3\": \"Streaming SSR is only supported in a Node.js environment; Please do not try to call this method in the browser.\\n\\n\",\n \"4\": \"The `StyleSheetManager` expects a valid target or sheet prop!\\n\\n- Does this error occur on the client and is your target falsy?\\n- Does this error occur on the server and is the sheet falsy?\\n\\n\",\n \"5\": \"The clone method cannot be used on the client!\\n\\n- Are you running in a client-like environment on the server?\\n- Are you trying to run SSR on the client?\\n\\n\",\n \"6\": \"Trying to insert a new style tag, but the given Node is unmounted!\\n\\n- Are you using a custom target that isn't mounted?\\n- Does your document not have a valid head element?\\n- Have you accidentally removed a style tag manually?\\n\\n\",\n \"7\": \"ThemeProvider: Please return an object from your \\\"theme\\\" prop function, e.g.\\n\\n```js\\ntheme={() => ({})}\\n```\\n\\n\",\n \"8\": \"ThemeProvider: Please make your \\\"theme\\\" prop an object.\\n\\n\",\n \"9\": \"Missing document ``\\n\\n\",\n \"10\": \"Cannot find a StyleSheet instance. Usually this happens if there are multiple copies of styled-components loaded at once. Check out this issue for how to troubleshoot and fix the common cases where this situation can happen: https://github.com/styled-components/styled-components/issues/1941#issuecomment-417862021\\n\\n\",\n \"11\": \"_This error was replaced with a dev-time warning, it will be deleted for v4 final._ [createGlobalStyle] received children which will not be rendered. Please use the component without passing children elements.\\n\\n\",\n \"12\": \"It seems you are interpolating a keyframe declaration (%s) into an untagged string. This was supported in styled-components v3, but is not longer supported in v4 as keyframes are now injected on-demand. Please wrap your string in the css\\\\`\\\\` helper which ensures the styles are injected correctly. See https://www.styled-components.com/docs/api#css\\n\\n\",\n \"13\": \"%s is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.\\n\"\n} : {};\n\n/**\n * super basic version of sprintf\n */\nfunction format() {\n var a = arguments.length <= 0 ? undefined : arguments[0];\n var b = [];\n\n for (var c = 1, len = arguments.length; c < len; c += 1) {\n b.push(arguments.length <= c ? undefined : arguments[c]);\n }\n\n b.forEach(function (d) {\n a = a.replace(/%[a-z]/, d);\n });\n\n return a;\n}\n\n/**\n * Create an error file out of errors.md for development and a simple web link to the full errors\n * in production mode.\n */\n\nvar StyledComponentsError = function (_Error) {\n inherits(StyledComponentsError, _Error);\n\n function StyledComponentsError(code) {\n classCallCheck(this, StyledComponentsError);\n\n for (var _len = arguments.length, interpolations = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n interpolations[_key - 1] = arguments[_key];\n }\n\n if (process.env.NODE_ENV === 'production') {\n var _this = possibleConstructorReturn(this, _Error.call(this, 'An error occurred. See https://github.com/styled-components/styled-components/blob/master/packages/styled-components/src/utils/errors.md#' + code + ' for more information.' + (interpolations.length > 0 ? ' Additional arguments: ' + interpolations.join(', ') : '')));\n } else {\n var _this = possibleConstructorReturn(this, _Error.call(this, format.apply(undefined, [ERRORS[code]].concat(interpolations)).trim()));\n }\n return possibleConstructorReturn(_this);\n }\n\n return StyledComponentsError;\n}(Error);\n\n// \nvar SC_COMPONENT_ID = /^[^\\S\\n]*?\\/\\* sc-component-id:\\s*(\\S+)\\s+\\*\\//gm;\n\nvar extractComps = (function (maybeCSS) {\n var css = '' + (maybeCSS || ''); // Definitely a string, and a clone\n var existingComponents = [];\n css.replace(SC_COMPONENT_ID, function (match, componentId, matchIndex) {\n existingComponents.push({ componentId: componentId, matchIndex: matchIndex });\n return match;\n });\n return existingComponents.map(function (_ref, i) {\n var componentId = _ref.componentId,\n matchIndex = _ref.matchIndex;\n\n var nextComp = existingComponents[i + 1];\n var cssFromDOM = nextComp ? css.slice(matchIndex, nextComp.matchIndex) : css.slice(matchIndex);\n return { componentId: componentId, cssFromDOM: cssFromDOM };\n });\n});\n\n// \n\nvar COMMENT_REGEX = /^\\s*\\/\\/.*$/gm;\n\n// NOTE: This stylis instance is only used to split rules from SSR'd style tags\nvar stylisSplitter = new Stylis({\n global: false,\n cascade: true,\n keyframe: false,\n prefix: false,\n compress: false,\n semicolon: true\n});\n\nvar stylis = new Stylis({\n global: false,\n cascade: true,\n keyframe: false,\n prefix: true,\n compress: false,\n semicolon: false // NOTE: This means \"autocomplete missing semicolons\"\n});\n\n// Wrap `insertRulePlugin to build a list of rules,\n// and then make our own plugin to return the rules. This\n// makes it easier to hook into the existing SSR architecture\n\nvar parsingRules = [];\n\n// eslint-disable-next-line consistent-return\nvar returnRulesPlugin = function returnRulesPlugin(context) {\n if (context === -2) {\n var parsedRules = parsingRules;\n parsingRules = [];\n return parsedRules;\n }\n};\n\nvar parseRulesPlugin = _insertRulePlugin(function (rule) {\n parsingRules.push(rule);\n});\n\nvar _componentId = void 0;\nvar _selector = void 0;\nvar _selectorRegexp = void 0;\n\nvar selfReferenceReplacer = function selfReferenceReplacer(match, offset, string) {\n if (\n // the first self-ref is always untouched\n offset > 0 &&\n // there should be at least two self-refs to do a replacement (.b > .b)\n string.slice(0, offset).indexOf(_selector) !== -1 &&\n // no consecutive self refs (.b.b); that is a precedence boost and treated differently\n string.slice(offset - _selector.length, offset) !== _selector) {\n return '.' + _componentId;\n }\n\n return match;\n};\n\n/**\n * When writing a style like\n *\n * & + & {\n * color: red;\n * }\n *\n * The second ampersand should be a reference to the static component class. stylis\n * has no knowledge of static class so we have to intelligently replace the base selector.\n */\nvar selfReferenceReplacementPlugin = function selfReferenceReplacementPlugin(context, _, selectors) {\n if (context === 2 && selectors.length && selectors[0].lastIndexOf(_selector) > 0) {\n // eslint-disable-next-line no-param-reassign\n selectors[0] = selectors[0].replace(_selectorRegexp, selfReferenceReplacer);\n }\n};\n\nstylis.use([selfReferenceReplacementPlugin, parseRulesPlugin, returnRulesPlugin]);\nstylisSplitter.use([parseRulesPlugin, returnRulesPlugin]);\n\nvar splitByRules = function splitByRules(css) {\n return stylisSplitter('', css);\n};\n\nfunction stringifyRules(rules, selector, prefix) {\n var componentId = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : '&';\n\n var flatCSS = rules.join('').replace(COMMENT_REGEX, ''); // replace JS comments\n\n var cssStr = selector && prefix ? prefix + ' ' + selector + ' { ' + flatCSS + ' }' : flatCSS;\n\n // stylis has no concept of state to be passed to plugins\n // but since JS is single=threaded, we can rely on that to ensure\n // these properties stay in sync with the current stylis run\n _componentId = componentId;\n _selector = selector;\n _selectorRegexp = new RegExp('\\\\' + _selector + '\\\\b', 'g');\n\n return stylis(prefix || !selector ? '' : selector, cssStr);\n}\n\n// \n/* eslint-disable camelcase, no-undef */\n\nvar getNonce = (function () {\n return typeof __webpack_nonce__ !== 'undefined' ? __webpack_nonce__ : null;\n});\n\n// \n/* These are helpers for the StyleTags to keep track of the injected\n * rule names for each (component) ID that they're keeping track of.\n * They're crucial for detecting whether a name has already been\n * injected.\n * (This excludes rehydrated names) */\n\n/* adds a new ID:name pairing to a names dictionary */\nvar addNameForId = function addNameForId(names, id, name) {\n if (name) {\n // eslint-disable-next-line no-param-reassign\n var namesForId = names[id] || (names[id] = Object.create(null));\n namesForId[name] = true;\n }\n};\n\n/* resets an ID entirely by overwriting it in the dictionary */\nvar resetIdNames = function resetIdNames(names, id) {\n // eslint-disable-next-line no-param-reassign\n names[id] = Object.create(null);\n};\n\n/* factory for a names dictionary checking the existance of an ID:name pairing */\nvar hasNameForId = function hasNameForId(names) {\n return function (id, name) {\n return names[id] !== undefined && names[id][name];\n };\n};\n\n/* stringifies names for the html/element output */\nvar stringifyNames = function stringifyNames(names) {\n var str = '';\n // eslint-disable-next-line guard-for-in\n for (var id in names) {\n str += Object.keys(names[id]).join(' ') + ' ';\n }\n return str.trim();\n};\n\n/* clones the nested names dictionary */\nvar cloneNames = function cloneNames(names) {\n var clone = Object.create(null);\n // eslint-disable-next-line guard-for-in\n for (var id in names) {\n clone[id] = _extends({}, names[id]);\n }\n return clone;\n};\n\n// \n\n/* These are helpers that deal with the insertRule (aka speedy) API\n * They are used in the StyleTags and specifically the speedy tag\n */\n\n/* retrieve a sheet for a given style tag */\nvar sheetForTag = function sheetForTag(tag) {\n // $FlowFixMe\n if (tag.sheet) return tag.sheet;\n\n /* Firefox quirk requires us to step through all stylesheets to find one owned by the given tag */\n var size = tag.ownerDocument.styleSheets.length;\n for (var i = 0; i < size; i += 1) {\n var sheet = tag.ownerDocument.styleSheets[i];\n // $FlowFixMe\n if (sheet.ownerNode === tag) return sheet;\n }\n\n /* we should always be able to find a tag */\n throw new StyledComponentsError(10);\n};\n\n/* insert a rule safely and return whether it was actually injected */\nvar safeInsertRule = function safeInsertRule(sheet, cssRule, index) {\n /* abort early if cssRule string is falsy */\n if (!cssRule) return false;\n\n var maxIndex = sheet.cssRules.length;\n\n try {\n /* use insertRule and cap passed index with maxIndex (no of cssRules) */\n sheet.insertRule(cssRule, index <= maxIndex ? index : maxIndex);\n } catch (err) {\n /* any error indicates an invalid rule */\n return false;\n }\n\n return true;\n};\n\n/* deletes `size` rules starting from `removalIndex` */\nvar deleteRules = function deleteRules(sheet, removalIndex, size) {\n var lowerBound = removalIndex - size;\n for (var i = removalIndex; i > lowerBound; i -= 1) {\n sheet.deleteRule(i);\n }\n};\n\n// \n\n/* this marker separates component styles and is important for rehydration */\nvar makeTextMarker = function makeTextMarker(id) {\n return '\\n/* sc-component-id: ' + id + ' */\\n';\n};\n\n/* add up all numbers in array up until and including the index */\nvar addUpUntilIndex = function addUpUntilIndex(sizes, index) {\n var totalUpToIndex = 0;\n for (var i = 0; i <= index; i += 1) {\n totalUpToIndex += sizes[i];\n }\n\n return totalUpToIndex;\n};\n\n/* create a new style tag after lastEl */\nvar makeStyleTag = function makeStyleTag(target, tagEl, insertBefore) {\n var targetDocument = document;\n if (target) targetDocument = target.ownerDocument;else if (tagEl) targetDocument = tagEl.ownerDocument;\n\n var el = targetDocument.createElement('style');\n el.setAttribute(SC_ATTR, '');\n el.setAttribute(SC_VERSION_ATTR, \"4.4.1\");\n\n var nonce = getNonce();\n if (nonce) {\n el.setAttribute('nonce', nonce);\n }\n\n /* Work around insertRule quirk in EdgeHTML */\n el.appendChild(targetDocument.createTextNode(''));\n\n if (target && !tagEl) {\n /* Append to target when no previous element was passed */\n target.appendChild(el);\n } else {\n if (!tagEl || !target || !tagEl.parentNode) {\n throw new StyledComponentsError(6);\n }\n\n /* Insert new style tag after the previous one */\n tagEl.parentNode.insertBefore(el, insertBefore ? tagEl : tagEl.nextSibling);\n }\n\n return el;\n};\n\n/* takes a css factory function and outputs an html styled tag factory */\nvar wrapAsHtmlTag = function wrapAsHtmlTag(css, names) {\n return function (additionalAttrs) {\n var nonce = getNonce();\n var attrs = [nonce && 'nonce=\"' + nonce + '\"', SC_ATTR + '=\"' + stringifyNames(names) + '\"', SC_VERSION_ATTR + '=\"' + \"4.4.1\" + '\"', additionalAttrs];\n\n var htmlAttr = attrs.filter(Boolean).join(' ');\n return '';\n };\n};\n\n/* takes a css factory function and outputs an element factory */\nvar wrapAsElement = function wrapAsElement(css, names) {\n return function () {\n var _props;\n\n var props = (_props = {}, _props[SC_ATTR] = stringifyNames(names), _props[SC_VERSION_ATTR] = \"4.4.1\", _props);\n\n var nonce = getNonce();\n if (nonce) {\n // $FlowFixMe\n props.nonce = nonce;\n }\n\n // eslint-disable-next-line react/no-danger\n return React__default.createElement('style', _extends({}, props, { dangerouslySetInnerHTML: { __html: css() } }));\n };\n};\n\nvar getIdsFromMarkersFactory = function getIdsFromMarkersFactory(markers) {\n return function () {\n return Object.keys(markers);\n };\n};\n\n/* speedy tags utilise insertRule */\nvar makeSpeedyTag = function makeSpeedyTag(el, getImportRuleTag) {\n var names = Object.create(null);\n var markers = Object.create(null);\n var sizes = [];\n\n var extractImport = getImportRuleTag !== undefined;\n /* indicates whether getImportRuleTag was called */\n var usedImportRuleTag = false;\n\n var insertMarker = function insertMarker(id) {\n var prev = markers[id];\n if (prev !== undefined) {\n return prev;\n }\n\n markers[id] = sizes.length;\n sizes.push(0);\n resetIdNames(names, id);\n\n return markers[id];\n };\n\n var insertRules = function insertRules(id, cssRules, name) {\n var marker = insertMarker(id);\n var sheet = sheetForTag(el);\n var insertIndex = addUpUntilIndex(sizes, marker);\n\n var injectedRules = 0;\n var importRules = [];\n var cssRulesSize = cssRules.length;\n\n for (var i = 0; i < cssRulesSize; i += 1) {\n var cssRule = cssRules[i];\n var mayHaveImport = extractImport; /* @import rules are reordered to appear first */\n if (mayHaveImport && cssRule.indexOf('@import') !== -1) {\n importRules.push(cssRule);\n } else if (safeInsertRule(sheet, cssRule, insertIndex + injectedRules)) {\n mayHaveImport = false;\n injectedRules += 1;\n }\n }\n\n if (extractImport && importRules.length > 0) {\n usedImportRuleTag = true;\n // $FlowFixMe\n getImportRuleTag().insertRules(id + '-import', importRules);\n }\n\n sizes[marker] += injectedRules; /* add up no of injected rules */\n addNameForId(names, id, name);\n };\n\n var removeRules = function removeRules(id) {\n var marker = markers[id];\n if (marker === undefined) return;\n // $FlowFixMe\n if (el.isConnected === false) return;\n\n var size = sizes[marker];\n var sheet = sheetForTag(el);\n var removalIndex = addUpUntilIndex(sizes, marker) - 1;\n deleteRules(sheet, removalIndex, size);\n sizes[marker] = 0;\n resetIdNames(names, id);\n\n if (extractImport && usedImportRuleTag) {\n // $FlowFixMe\n getImportRuleTag().removeRules(id + '-import');\n }\n };\n\n var css = function css() {\n var _sheetForTag = sheetForTag(el),\n cssRules = _sheetForTag.cssRules;\n\n var str = '';\n\n // eslint-disable-next-line guard-for-in\n for (var id in markers) {\n str += makeTextMarker(id);\n var marker = markers[id];\n var end = addUpUntilIndex(sizes, marker);\n var size = sizes[marker];\n for (var i = end - size; i < end; i += 1) {\n var rule = cssRules[i];\n if (rule !== undefined) {\n str += rule.cssText;\n }\n }\n }\n\n return str;\n };\n\n return {\n clone: function clone() {\n throw new StyledComponentsError(5);\n },\n\n css: css,\n getIds: getIdsFromMarkersFactory(markers),\n hasNameForId: hasNameForId(names),\n insertMarker: insertMarker,\n insertRules: insertRules,\n removeRules: removeRules,\n sealed: false,\n styleTag: el,\n toElement: wrapAsElement(css, names),\n toHTML: wrapAsHtmlTag(css, names)\n };\n};\n\nvar makeTextNode = function makeTextNode(targetDocument, id) {\n return targetDocument.createTextNode(makeTextMarker(id));\n};\n\nvar makeBrowserTag = function makeBrowserTag(el, getImportRuleTag) {\n var names = Object.create(null);\n var markers = Object.create(null);\n\n var extractImport = getImportRuleTag !== undefined;\n\n /* indicates whether getImportRuleTag was called */\n var usedImportRuleTag = false;\n\n var insertMarker = function insertMarker(id) {\n var prev = markers[id];\n if (prev !== undefined) {\n return prev;\n }\n\n markers[id] = makeTextNode(el.ownerDocument, id);\n el.appendChild(markers[id]);\n names[id] = Object.create(null);\n\n return markers[id];\n };\n\n var insertRules = function insertRules(id, cssRules, name) {\n var marker = insertMarker(id);\n var importRules = [];\n var cssRulesSize = cssRules.length;\n\n for (var i = 0; i < cssRulesSize; i += 1) {\n var rule = cssRules[i];\n var mayHaveImport = extractImport;\n if (mayHaveImport && rule.indexOf('@import') !== -1) {\n importRules.push(rule);\n } else {\n mayHaveImport = false;\n var separator = i === cssRulesSize - 1 ? '' : ' ';\n marker.appendData('' + rule + separator);\n }\n }\n\n addNameForId(names, id, name);\n\n if (extractImport && importRules.length > 0) {\n usedImportRuleTag = true;\n // $FlowFixMe\n getImportRuleTag().insertRules(id + '-import', importRules);\n }\n };\n\n var removeRules = function removeRules(id) {\n var marker = markers[id];\n if (marker === undefined) return;\n\n /* create new empty text node and replace the current one */\n var newMarker = makeTextNode(el.ownerDocument, id);\n el.replaceChild(newMarker, marker);\n markers[id] = newMarker;\n resetIdNames(names, id);\n\n if (extractImport && usedImportRuleTag) {\n // $FlowFixMe\n getImportRuleTag().removeRules(id + '-import');\n }\n };\n\n var css = function css() {\n var str = '';\n\n // eslint-disable-next-line guard-for-in\n for (var id in markers) {\n str += markers[id].data;\n }\n\n return str;\n };\n\n return {\n clone: function clone() {\n throw new StyledComponentsError(5);\n },\n\n css: css,\n getIds: getIdsFromMarkersFactory(markers),\n hasNameForId: hasNameForId(names),\n insertMarker: insertMarker,\n insertRules: insertRules,\n removeRules: removeRules,\n sealed: false,\n styleTag: el,\n toElement: wrapAsElement(css, names),\n toHTML: wrapAsHtmlTag(css, names)\n };\n};\n\nvar makeServerTag = function makeServerTag(namesArg, markersArg) {\n var names = namesArg === undefined ? Object.create(null) : namesArg;\n var markers = markersArg === undefined ? Object.create(null) : markersArg;\n\n var insertMarker = function insertMarker(id) {\n var prev = markers[id];\n if (prev !== undefined) {\n return prev;\n }\n\n return markers[id] = [''];\n };\n\n var insertRules = function insertRules(id, cssRules, name) {\n var marker = insertMarker(id);\n marker[0] += cssRules.join(' ');\n addNameForId(names, id, name);\n };\n\n var removeRules = function removeRules(id) {\n var marker = markers[id];\n if (marker === undefined) return;\n marker[0] = '';\n resetIdNames(names, id);\n };\n\n var css = function css() {\n var str = '';\n // eslint-disable-next-line guard-for-in\n for (var id in markers) {\n var cssForId = markers[id][0];\n if (cssForId) {\n str += makeTextMarker(id) + cssForId;\n }\n }\n return str;\n };\n\n var clone = function clone() {\n var namesClone = cloneNames(names);\n var markersClone = Object.create(null);\n\n // eslint-disable-next-line guard-for-in\n for (var id in markers) {\n markersClone[id] = [markers[id][0]];\n }\n\n return makeServerTag(namesClone, markersClone);\n };\n\n var tag = {\n clone: clone,\n css: css,\n getIds: getIdsFromMarkersFactory(markers),\n hasNameForId: hasNameForId(names),\n insertMarker: insertMarker,\n insertRules: insertRules,\n removeRules: removeRules,\n sealed: false,\n styleTag: null,\n toElement: wrapAsElement(css, names),\n toHTML: wrapAsHtmlTag(css, names)\n };\n\n return tag;\n};\n\nvar makeTag = function makeTag(target, tagEl, forceServer, insertBefore, getImportRuleTag) {\n if (IS_BROWSER && !forceServer) {\n var el = makeStyleTag(target, tagEl, insertBefore);\n\n if (DISABLE_SPEEDY) {\n return makeBrowserTag(el, getImportRuleTag);\n } else {\n return makeSpeedyTag(el, getImportRuleTag);\n }\n }\n\n return makeServerTag();\n};\n\nvar rehydrate = function rehydrate(tag, els, extracted) {\n /* add all extracted components to the new tag */\n for (var i = 0, len = extracted.length; i < len; i += 1) {\n var _extracted$i = extracted[i],\n componentId = _extracted$i.componentId,\n cssFromDOM = _extracted$i.cssFromDOM;\n\n var cssRules = splitByRules(cssFromDOM);\n tag.insertRules(componentId, cssRules);\n }\n\n /* remove old HTMLStyleElements, since they have been rehydrated */\n for (var _i = 0, _len = els.length; _i < _len; _i += 1) {\n var el = els[_i];\n if (el.parentNode) {\n el.parentNode.removeChild(el);\n }\n }\n};\n\n// \n\nvar SPLIT_REGEX = /\\s+/;\n\n/* determine the maximum number of components before tags are sharded */\nvar MAX_SIZE = void 0;\nif (IS_BROWSER) {\n /* in speedy mode we can keep a lot more rules in a sheet before a slowdown can be expected */\n MAX_SIZE = DISABLE_SPEEDY ? 40 : 1000;\n} else {\n /* for servers we do not need to shard at all */\n MAX_SIZE = -1;\n}\n\nvar sheetRunningId = 0;\nvar master = void 0;\n\nvar StyleSheet = function () {\n\n /* a map from ids to tags */\n\n /* deferred rules for a given id */\n\n /* this is used for not reinjecting rules via hasNameForId() */\n\n /* when rules for an id are removed using remove() we have to ignore rehydratedNames for it */\n\n /* a list of tags belonging to this StyleSheet */\n\n /* a tag for import rules */\n\n /* current capacity until a new tag must be created */\n\n /* children (aka clones) of this StyleSheet inheriting all and future injections */\n\n function StyleSheet() {\n var _this = this;\n\n var target = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : IS_BROWSER ? document.head : null;\n var forceServer = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n classCallCheck(this, StyleSheet);\n\n this.getImportRuleTag = function () {\n var importRuleTag = _this.importRuleTag;\n\n if (importRuleTag !== undefined) {\n return importRuleTag;\n }\n\n var firstTag = _this.tags[0];\n var insertBefore = true;\n\n return _this.importRuleTag = makeTag(_this.target, firstTag ? firstTag.styleTag : null, _this.forceServer, insertBefore);\n };\n\n sheetRunningId += 1;\n this.id = sheetRunningId;\n this.forceServer = forceServer;\n this.target = forceServer ? null : target;\n this.tagMap = {};\n this.deferred = {};\n this.rehydratedNames = {};\n this.ignoreRehydratedNames = {};\n this.tags = [];\n this.capacity = 1;\n this.clones = [];\n }\n\n /* rehydrate all SSR'd style tags */\n\n\n StyleSheet.prototype.rehydrate = function rehydrate$$1() {\n if (!IS_BROWSER || this.forceServer) return this;\n\n var els = [];\n var extracted = [];\n var isStreamed = false;\n\n /* retrieve all of our SSR style elements from the DOM */\n var nodes = document.querySelectorAll('style[' + SC_ATTR + '][' + SC_VERSION_ATTR + '=\"' + \"4.4.1\" + '\"]');\n\n var nodesSize = nodes.length;\n\n /* abort rehydration if no previous style tags were found */\n if (!nodesSize) return this;\n\n for (var i = 0; i < nodesSize; i += 1) {\n var el = nodes[i];\n\n /* check if style tag is a streamed tag */\n if (!isStreamed) isStreamed = !!el.getAttribute(SC_STREAM_ATTR);\n\n /* retrieve all component names */\n var elNames = (el.getAttribute(SC_ATTR) || '').trim().split(SPLIT_REGEX);\n var elNamesSize = elNames.length;\n for (var j = 0, name; j < elNamesSize; j += 1) {\n name = elNames[j];\n /* add rehydrated name to sheet to avoid re-adding styles */\n this.rehydratedNames[name] = true;\n }\n\n /* extract all components and their CSS */\n extracted.push.apply(extracted, extractComps(el.textContent));\n\n /* store original HTMLStyleElement */\n els.push(el);\n }\n\n /* abort rehydration if nothing was extracted */\n var extractedSize = extracted.length;\n if (!extractedSize) return this;\n\n /* create a tag to be used for rehydration */\n var tag = this.makeTag(null);\n\n rehydrate(tag, els, extracted);\n\n /* reset capacity and adjust MAX_SIZE by the initial size of the rehydration */\n this.capacity = Math.max(1, MAX_SIZE - extractedSize);\n this.tags.push(tag);\n\n /* retrieve all component ids */\n for (var _j = 0; _j < extractedSize; _j += 1) {\n this.tagMap[extracted[_j].componentId] = tag;\n }\n\n return this;\n };\n\n /* retrieve a \"master\" instance of StyleSheet which is typically used when no other is available\n * The master StyleSheet is targeted by createGlobalStyle, keyframes, and components outside of any\n * StyleSheetManager's context */\n\n\n /* reset the internal \"master\" instance */\n StyleSheet.reset = function reset() {\n var forceServer = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : false;\n\n master = new StyleSheet(undefined, forceServer).rehydrate();\n };\n\n /* adds \"children\" to the StyleSheet that inherit all of the parents' rules\n * while their own rules do not affect the parent */\n\n\n StyleSheet.prototype.clone = function clone() {\n var sheet = new StyleSheet(this.target, this.forceServer);\n\n /* add to clone array */\n this.clones.push(sheet);\n\n /* clone all tags */\n sheet.tags = this.tags.map(function (tag) {\n var ids = tag.getIds();\n var newTag = tag.clone();\n\n /* reconstruct tagMap */\n for (var i = 0; i < ids.length; i += 1) {\n sheet.tagMap[ids[i]] = newTag;\n }\n\n return newTag;\n });\n\n /* clone other maps */\n sheet.rehydratedNames = _extends({}, this.rehydratedNames);\n sheet.deferred = _extends({}, this.deferred);\n\n return sheet;\n };\n\n /* force StyleSheet to create a new tag on the next injection */\n\n\n StyleSheet.prototype.sealAllTags = function sealAllTags() {\n this.capacity = 1;\n\n this.tags.forEach(function (tag) {\n // eslint-disable-next-line no-param-reassign\n tag.sealed = true;\n });\n };\n\n StyleSheet.prototype.makeTag = function makeTag$$1(tag) {\n var lastEl = tag ? tag.styleTag : null;\n var insertBefore = false;\n\n return makeTag(this.target, lastEl, this.forceServer, insertBefore, this.getImportRuleTag);\n };\n\n /* get a tag for a given componentId, assign the componentId to one, or shard */\n StyleSheet.prototype.getTagForId = function getTagForId(id) {\n /* simply return a tag, when the componentId was already assigned one */\n var prev = this.tagMap[id];\n if (prev !== undefined && !prev.sealed) {\n return prev;\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n /* shard (create a new tag) if the tag is exhausted (See MAX_SIZE) */\n this.capacity -= 1;\n\n if (this.capacity === 0) {\n this.capacity = MAX_SIZE;\n tag = this.makeTag(tag);\n this.tags.push(tag);\n }\n\n return this.tagMap[id] = tag;\n };\n\n /* mainly for createGlobalStyle to check for its id */\n\n\n StyleSheet.prototype.hasId = function hasId(id) {\n return this.tagMap[id] !== undefined;\n };\n\n /* caching layer checking id+name to already have a corresponding tag and injected rules */\n\n\n StyleSheet.prototype.hasNameForId = function hasNameForId(id, name) {\n /* exception for rehydrated names which are checked separately */\n if (this.ignoreRehydratedNames[id] === undefined && this.rehydratedNames[name]) {\n return true;\n }\n\n var tag = this.tagMap[id];\n return tag !== undefined && tag.hasNameForId(id, name);\n };\n\n /* registers a componentId and registers it on its tag */\n\n\n StyleSheet.prototype.deferredInject = function deferredInject(id, cssRules) {\n /* don't inject when the id is already registered */\n if (this.tagMap[id] !== undefined) return;\n\n var clones = this.clones;\n\n for (var i = 0; i < clones.length; i += 1) {\n clones[i].deferredInject(id, cssRules);\n }\n\n this.getTagForId(id).insertMarker(id);\n this.deferred[id] = cssRules;\n };\n\n /* injects rules for a given id with a name that will need to be cached */\n\n\n StyleSheet.prototype.inject = function inject(id, cssRules, name) {\n var clones = this.clones;\n\n\n for (var i = 0; i < clones.length; i += 1) {\n clones[i].inject(id, cssRules, name);\n }\n\n var tag = this.getTagForId(id);\n\n /* add deferred rules for component */\n if (this.deferred[id] !== undefined) {\n // Combine passed cssRules with previously deferred CSS rules\n // NOTE: We cannot mutate the deferred array itself as all clones\n // do the same (see clones[i].inject)\n var rules = this.deferred[id].concat(cssRules);\n tag.insertRules(id, rules, name);\n\n this.deferred[id] = undefined;\n } else {\n tag.insertRules(id, cssRules, name);\n }\n };\n\n /* removes all rules for a given id, which doesn't remove its marker but resets it */\n\n\n StyleSheet.prototype.remove = function remove(id) {\n var tag = this.tagMap[id];\n if (tag === undefined) return;\n\n var clones = this.clones;\n\n for (var i = 0; i < clones.length; i += 1) {\n clones[i].remove(id);\n }\n\n /* remove all rules from the tag */\n tag.removeRules(id);\n\n /* ignore possible rehydrated names */\n this.ignoreRehydratedNames[id] = true;\n\n /* delete possible deferred rules */\n this.deferred[id] = undefined;\n };\n\n StyleSheet.prototype.toHTML = function toHTML() {\n return this.tags.map(function (tag) {\n return tag.toHTML();\n }).join('');\n };\n\n StyleSheet.prototype.toReactElements = function toReactElements() {\n var id = this.id;\n\n\n return this.tags.map(function (tag, i) {\n var key = 'sc-' + id + '-' + i;\n return React.cloneElement(tag.toElement(), { key: key });\n });\n };\n\n createClass(StyleSheet, null, [{\n key: 'master',\n get: function get$$1() {\n return master || (master = new StyleSheet().rehydrate());\n }\n\n /* NOTE: This is just for backwards-compatibility with jest-styled-components */\n\n }, {\n key: 'instance',\n get: function get$$1() {\n return StyleSheet.master;\n }\n }]);\n return StyleSheet;\n}();\n\n// \n\nvar Keyframes = function () {\n function Keyframes(name, rules) {\n var _this = this;\n\n classCallCheck(this, Keyframes);\n\n this.inject = function (styleSheet) {\n if (!styleSheet.hasNameForId(_this.id, _this.name)) {\n styleSheet.inject(_this.id, _this.rules, _this.name);\n }\n };\n\n this.toString = function () {\n throw new StyledComponentsError(12, String(_this.name));\n };\n\n this.name = name;\n this.rules = rules;\n\n this.id = 'sc-keyframes-' + name;\n }\n\n Keyframes.prototype.getName = function getName() {\n return this.name;\n };\n\n return Keyframes;\n}();\n\n// \n\n/**\n * inlined version of\n * https://github.com/facebook/fbjs/blob/master/packages/fbjs/src/core/hyphenateStyleName.js\n */\n\nvar uppercasePattern = /([A-Z])/g;\nvar msPattern = /^ms-/;\n\n/**\n * Hyphenates a camelcased CSS property name, for example:\n *\n * > hyphenateStyleName('backgroundColor')\n * < \"background-color\"\n * > hyphenateStyleName('MozTransition')\n * < \"-moz-transition\"\n * > hyphenateStyleName('msTransition')\n * < \"-ms-transition\"\n *\n * As Modernizr suggests (http://modernizr.com/docs/#prefixed), an `ms` prefix\n * is converted to `-ms-`.\n *\n * @param {string} string\n * @return {string}\n */\nfunction hyphenateStyleName(string) {\n return string.replace(uppercasePattern, '-$1').toLowerCase().replace(msPattern, '-ms-');\n}\n\n// \n\n// Taken from https://github.com/facebook/react/blob/b87aabdfe1b7461e7331abb3601d9e6bb27544bc/packages/react-dom/src/shared/dangerousStyleValue.js\nfunction addUnitIfNeeded(name, value) {\n // https://github.com/amilajack/eslint-plugin-flowtype-errors/issues/133\n // $FlowFixMe\n if (value == null || typeof value === 'boolean' || value === '') {\n return '';\n }\n\n if (typeof value === 'number' && value !== 0 && !(name in unitless)) {\n return value + 'px'; // Presumes implicit 'px' suffix for unitless numbers\n }\n\n return String(value).trim();\n}\n\n// \n\n/**\n * It's falsish not falsy because 0 is allowed.\n */\nvar isFalsish = function isFalsish(chunk) {\n return chunk === undefined || chunk === null || chunk === false || chunk === '';\n};\n\nvar objToCssArray = function objToCssArray(obj, prevKey) {\n var rules = [];\n var keys = Object.keys(obj);\n\n keys.forEach(function (key) {\n if (!isFalsish(obj[key])) {\n if (isPlainObject(obj[key])) {\n rules.push.apply(rules, objToCssArray(obj[key], key));\n\n return rules;\n } else if (isFunction(obj[key])) {\n rules.push(hyphenateStyleName(key) + ':', obj[key], ';');\n\n return rules;\n }\n rules.push(hyphenateStyleName(key) + ': ' + addUnitIfNeeded(key, obj[key]) + ';');\n }\n return rules;\n });\n\n return prevKey ? [prevKey + ' {'].concat(rules, ['}']) : rules;\n};\n\nfunction flatten(chunk, executionContext, styleSheet) {\n if (Array.isArray(chunk)) {\n var ruleSet = [];\n\n for (var i = 0, len = chunk.length, result; i < len; i += 1) {\n result = flatten(chunk[i], executionContext, styleSheet);\n\n if (result === null) continue;else if (Array.isArray(result)) ruleSet.push.apply(ruleSet, result);else ruleSet.push(result);\n }\n\n return ruleSet;\n }\n\n if (isFalsish(chunk)) {\n return null;\n }\n\n /* Handle other components */\n if (isStyledComponent(chunk)) {\n return '.' + chunk.styledComponentId;\n }\n\n /* Either execute or defer the function */\n if (isFunction(chunk)) {\n if (isStatelessFunction(chunk) && executionContext) {\n var _result = chunk(executionContext);\n\n if (process.env.NODE_ENV !== 'production' && reactIs.isElement(_result)) {\n // eslint-disable-next-line no-console\n console.warn(getComponentName(chunk) + ' is not a styled component and cannot be referred to via component selector. See https://www.styled-components.com/docs/advanced#referring-to-other-components for more details.');\n }\n\n return flatten(_result, executionContext, styleSheet);\n } else return chunk;\n }\n\n if (chunk instanceof Keyframes) {\n if (styleSheet) {\n chunk.inject(styleSheet);\n return chunk.getName();\n } else return chunk;\n }\n\n /* Handle objects */\n return isPlainObject(chunk) ? objToCssArray(chunk) : chunk.toString();\n}\n\n// \n\nfunction css(styles) {\n for (var _len = arguments.length, interpolations = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n interpolations[_key - 1] = arguments[_key];\n }\n\n if (isFunction(styles) || isPlainObject(styles)) {\n // $FlowFixMe\n return flatten(interleave(EMPTY_ARRAY, [styles].concat(interpolations)));\n }\n\n // $FlowFixMe\n return flatten(interleave(styles, interpolations));\n}\n\n// \n\nfunction constructWithOptions(componentConstructor, tag) {\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : EMPTY_OBJECT;\n\n if (!reactIs.isValidElementType(tag)) {\n throw new StyledComponentsError(1, String(tag));\n }\n\n /* This is callable directly as a template function */\n // $FlowFixMe: Not typed to avoid destructuring arguments\n var templateFunction = function templateFunction() {\n return componentConstructor(tag, options, css.apply(undefined, arguments));\n };\n\n /* If config methods are called, wrap up a new template function and merge options */\n templateFunction.withConfig = function (config) {\n return constructWithOptions(componentConstructor, tag, _extends({}, options, config));\n };\n\n /* Modify/inject new props at runtime */\n templateFunction.attrs = function (attrs) {\n return constructWithOptions(componentConstructor, tag, _extends({}, options, {\n attrs: Array.prototype.concat(options.attrs, attrs).filter(Boolean)\n }));\n };\n\n return templateFunction;\n}\n\n// \n// Source: https://github.com/garycourt/murmurhash-js/blob/master/murmurhash2_gc.js\nfunction murmurhash(c) {\n for (var e = c.length | 0, a = e | 0, d = 0, b; e >= 4;) {\n b = c.charCodeAt(d) & 255 | (c.charCodeAt(++d) & 255) << 8 | (c.charCodeAt(++d) & 255) << 16 | (c.charCodeAt(++d) & 255) << 24, b = 1540483477 * (b & 65535) + ((1540483477 * (b >>> 16) & 65535) << 16), b ^= b >>> 24, b = 1540483477 * (b & 65535) + ((1540483477 * (b >>> 16) & 65535) << 16), a = 1540483477 * (a & 65535) + ((1540483477 * (a >>> 16) & 65535) << 16) ^ b, e -= 4, ++d;\n }\n switch (e) {\n case 3:\n a ^= (c.charCodeAt(d + 2) & 255) << 16;\n case 2:\n a ^= (c.charCodeAt(d + 1) & 255) << 8;\n case 1:\n a ^= c.charCodeAt(d) & 255, a = 1540483477 * (a & 65535) + ((1540483477 * (a >>> 16) & 65535) << 16);\n }\n a ^= a >>> 13;\n a = 1540483477 * (a & 65535) + ((1540483477 * (a >>> 16) & 65535) << 16);\n return (a ^ a >>> 15) >>> 0;\n}\n\n// \n/* eslint-disable no-bitwise */\n\n/* This is the \"capacity\" of our alphabet i.e. 2x26 for all letters plus their capitalised\n * counterparts */\nvar charsLength = 52;\n\n/* start at 75 for 'a' until 'z' (25) and then start at 65 for capitalised letters */\nvar getAlphabeticChar = function getAlphabeticChar(code) {\n return String.fromCharCode(code + (code > 25 ? 39 : 97));\n};\n\n/* input a number, usually a hash and convert it to base-52 */\nfunction generateAlphabeticName(code) {\n var name = '';\n var x = void 0;\n\n /* get a char and divide by alphabet-length */\n for (x = code; x > charsLength; x = Math.floor(x / charsLength)) {\n name = getAlphabeticChar(x % charsLength) + name;\n }\n\n return getAlphabeticChar(x % charsLength) + name;\n}\n\n// \n\nfunction hasFunctionObjectKey(obj) {\n // eslint-disable-next-line guard-for-in, no-restricted-syntax\n for (var key in obj) {\n if (isFunction(obj[key])) {\n return true;\n }\n }\n\n return false;\n}\n\nfunction isStaticRules(rules, attrs) {\n for (var i = 0; i < rules.length; i += 1) {\n var rule = rules[i];\n\n // recursive case\n if (Array.isArray(rule) && !isStaticRules(rule, attrs)) {\n return false;\n } else if (isFunction(rule) && !isStyledComponent(rule)) {\n // functions are allowed to be static if they're just being\n // used to get the classname of a nested styled component\n return false;\n }\n }\n\n if (attrs.some(function (x) {\n return isFunction(x) || hasFunctionObjectKey(x);\n })) return false;\n\n return true;\n}\n\n// \n\n/* combines hashStr (murmurhash) and nameGenerator for convenience */\nvar hasher = function hasher(str) {\n return generateAlphabeticName(murmurhash(str));\n};\n\n/*\n ComponentStyle is all the CSS-specific stuff, not\n the React-specific stuff.\n */\n\nvar ComponentStyle = function () {\n function ComponentStyle(rules, attrs, componentId) {\n classCallCheck(this, ComponentStyle);\n\n this.rules = rules;\n this.isStatic = process.env.NODE_ENV === 'production' && isStaticRules(rules, attrs);\n this.componentId = componentId;\n\n if (!StyleSheet.master.hasId(componentId)) {\n StyleSheet.master.deferredInject(componentId, []);\n }\n }\n\n /*\n * Flattens a rule set into valid CSS\n * Hashes it, wraps the whole chunk in a .hash1234 {}\n * Returns the hash to be injected on render()\n * */\n\n\n ComponentStyle.prototype.generateAndInjectStyles = function generateAndInjectStyles(executionContext, styleSheet) {\n var isStatic = this.isStatic,\n componentId = this.componentId,\n lastClassName = this.lastClassName;\n\n if (IS_BROWSER && isStatic && typeof lastClassName === 'string' && styleSheet.hasNameForId(componentId, lastClassName)) {\n return lastClassName;\n }\n\n var flatCSS = flatten(this.rules, executionContext, styleSheet);\n var name = hasher(this.componentId + flatCSS.join(''));\n if (!styleSheet.hasNameForId(componentId, name)) {\n styleSheet.inject(this.componentId, stringifyRules(flatCSS, '.' + name, undefined, componentId), name);\n }\n\n this.lastClassName = name;\n return name;\n };\n\n ComponentStyle.generateName = function generateName(str) {\n return hasher(str);\n };\n\n return ComponentStyle;\n}();\n\n// \n\nvar LIMIT = 200;\n\nvar createWarnTooManyClasses = (function (displayName) {\n var generatedClasses = {};\n var warningSeen = false;\n\n return function (className) {\n if (!warningSeen) {\n generatedClasses[className] = true;\n if (Object.keys(generatedClasses).length >= LIMIT) {\n // Unable to find latestRule in test environment.\n /* eslint-disable no-console, prefer-template */\n console.warn('Over ' + LIMIT + ' classes were generated for component ' + displayName + '. \\n' + 'Consider using the attrs method, together with a style object for frequently changed styles.\\n' + 'Example:\\n' + ' const Component = styled.div.attrs(props => ({\\n' + ' style: {\\n' + ' background: props.background,\\n' + ' },\\n' + ' }))`width: 100%;`\\n\\n' + ' ');\n warningSeen = true;\n generatedClasses = {};\n }\n }\n };\n});\n\n// \n\nvar determineTheme = (function (props, fallbackTheme) {\n var defaultProps = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : EMPTY_OBJECT;\n\n // Props should take precedence over ThemeProvider, which should take precedence over\n // defaultProps, but React automatically puts defaultProps on props.\n\n /* eslint-disable react/prop-types, flowtype-errors/show-errors */\n var isDefaultTheme = defaultProps ? props.theme === defaultProps.theme : false;\n var theme = props.theme && !isDefaultTheme ? props.theme : fallbackTheme || defaultProps.theme;\n /* eslint-enable */\n\n return theme;\n});\n\n// \nvar escapeRegex = /[[\\].#*$><+~=|^:(),\"'`-]+/g;\nvar dashesAtEnds = /(^-|-$)/g;\n\n/**\n * TODO: Explore using CSS.escape when it becomes more available\n * in evergreen browsers.\n */\nfunction escape(str) {\n return str\n // Replace all possible CSS selectors\n .replace(escapeRegex, '-')\n\n // Remove extraneous hyphens at the start and end\n .replace(dashesAtEnds, '');\n}\n\n// \n\nfunction isTag(target) {\n return typeof target === 'string' && (process.env.NODE_ENV !== 'production' ? target.charAt(0) === target.charAt(0).toLowerCase() : true);\n}\n\n// \n\nfunction generateDisplayName(target) {\n // $FlowFixMe\n return isTag(target) ? 'styled.' + target : 'Styled(' + getComponentName(target) + ')';\n}\n\nvar _TYPE_STATICS;\n\nvar REACT_STATICS = {\n childContextTypes: true,\n contextTypes: true,\n defaultProps: true,\n displayName: true,\n getDerivedStateFromProps: true,\n propTypes: true,\n type: true\n};\n\nvar KNOWN_STATICS = {\n name: true,\n length: true,\n prototype: true,\n caller: true,\n callee: true,\n arguments: true,\n arity: true\n};\n\nvar TYPE_STATICS = (_TYPE_STATICS = {}, _TYPE_STATICS[reactIs.ForwardRef] = {\n $$typeof: true,\n render: true\n}, _TYPE_STATICS);\n\nvar defineProperty$1 = Object.defineProperty,\n getOwnPropertyNames = Object.getOwnPropertyNames,\n _Object$getOwnPropert = Object.getOwnPropertySymbols,\n getOwnPropertySymbols = _Object$getOwnPropert === undefined ? function () {\n return [];\n} : _Object$getOwnPropert,\n getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor,\n getPrototypeOf = Object.getPrototypeOf,\n objectPrototype = Object.prototype;\nvar arrayPrototype = Array.prototype;\n\n\nfunction hoistNonReactStatics(targetComponent, sourceComponent, blacklist) {\n if (typeof sourceComponent !== 'string') {\n // don't hoist over string (html) components\n\n var inheritedComponent = getPrototypeOf(sourceComponent);\n\n if (inheritedComponent && inheritedComponent !== objectPrototype) {\n hoistNonReactStatics(targetComponent, inheritedComponent, blacklist);\n }\n\n var keys = arrayPrototype.concat(getOwnPropertyNames(sourceComponent),\n // $FlowFixMe\n getOwnPropertySymbols(sourceComponent));\n\n var targetStatics = TYPE_STATICS[targetComponent.$$typeof] || REACT_STATICS;\n\n var sourceStatics = TYPE_STATICS[sourceComponent.$$typeof] || REACT_STATICS;\n\n var i = keys.length;\n var descriptor = void 0;\n var key = void 0;\n\n // eslint-disable-next-line no-plusplus\n while (i--) {\n key = keys[i];\n\n if (\n // $FlowFixMe\n !KNOWN_STATICS[key] && !(blacklist && blacklist[key]) && !(sourceStatics && sourceStatics[key]) &&\n // $FlowFixMe\n !(targetStatics && targetStatics[key])) {\n descriptor = getOwnPropertyDescriptor(sourceComponent, key);\n\n if (descriptor) {\n try {\n // Avoid failures from read-only properties\n defineProperty$1(targetComponent, key, descriptor);\n } catch (e) {\n /* fail silently */\n }\n }\n }\n }\n\n return targetComponent;\n }\n\n return targetComponent;\n}\n\n// \nfunction isDerivedReactComponent(fn) {\n return !!(fn && fn.prototype && fn.prototype.isReactComponent);\n}\n\n// \n// Helper to call a given function, only once\nvar once = (function (cb) {\n var called = false;\n\n return function () {\n if (!called) {\n called = true;\n cb.apply(undefined, arguments);\n }\n };\n});\n\n// \n\nvar ThemeContext = React.createContext();\n\nvar ThemeConsumer = ThemeContext.Consumer;\n\n/**\n * Provide a theme to an entire react component tree via context\n */\n\nvar ThemeProvider = function (_Component) {\n inherits(ThemeProvider, _Component);\n\n function ThemeProvider(props) {\n classCallCheck(this, ThemeProvider);\n\n var _this = possibleConstructorReturn(this, _Component.call(this, props));\n\n _this.getContext = memoize(_this.getContext.bind(_this));\n _this.renderInner = _this.renderInner.bind(_this);\n return _this;\n }\n\n ThemeProvider.prototype.render = function render() {\n if (!this.props.children) return null;\n\n return React__default.createElement(\n ThemeContext.Consumer,\n null,\n this.renderInner\n );\n };\n\n ThemeProvider.prototype.renderInner = function renderInner(outerTheme) {\n var context = this.getContext(this.props.theme, outerTheme);\n\n return React__default.createElement(\n ThemeContext.Provider,\n { value: context },\n this.props.children\n );\n };\n\n /**\n * Get the theme from the props, supporting both (outerTheme) => {}\n * as well as object notation\n */\n\n\n ThemeProvider.prototype.getTheme = function getTheme(theme, outerTheme) {\n if (isFunction(theme)) {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme === null || Array.isArray(mergedTheme) || (typeof mergedTheme === 'undefined' ? 'undefined' : _typeof(mergedTheme)) !== 'object')) {\n throw new StyledComponentsError(7);\n }\n\n return mergedTheme;\n }\n\n if (theme === null || Array.isArray(theme) || (typeof theme === 'undefined' ? 'undefined' : _typeof(theme)) !== 'object') {\n throw new StyledComponentsError(8);\n }\n\n return _extends({}, outerTheme, theme);\n };\n\n ThemeProvider.prototype.getContext = function getContext(theme, outerTheme) {\n return this.getTheme(theme, outerTheme);\n };\n\n return ThemeProvider;\n}(React.Component);\n\n// \n\nvar CLOSING_TAG_R = /^\\s*<\\/[a-z]/i;\n\nvar ServerStyleSheet = function () {\n function ServerStyleSheet() {\n classCallCheck(this, ServerStyleSheet);\n\n /* The master sheet might be reset, so keep a reference here */\n this.masterSheet = StyleSheet.master;\n this.instance = this.masterSheet.clone();\n this.sealed = false;\n }\n\n /**\n * Mark the ServerStyleSheet as being fully emitted and manually GC it from the\n * StyleSheet singleton.\n */\n\n\n ServerStyleSheet.prototype.seal = function seal() {\n if (!this.sealed) {\n /* Remove sealed StyleSheets from the master sheet */\n var index = this.masterSheet.clones.indexOf(this.instance);\n this.masterSheet.clones.splice(index, 1);\n this.sealed = true;\n }\n };\n\n ServerStyleSheet.prototype.collectStyles = function collectStyles(children) {\n if (this.sealed) {\n throw new StyledComponentsError(2);\n }\n\n return React__default.createElement(\n StyleSheetManager,\n { sheet: this.instance },\n children\n );\n };\n\n ServerStyleSheet.prototype.getStyleTags = function getStyleTags() {\n this.seal();\n return this.instance.toHTML();\n };\n\n ServerStyleSheet.prototype.getStyleElement = function getStyleElement() {\n this.seal();\n return this.instance.toReactElements();\n };\n\n ServerStyleSheet.prototype.interleaveWithNodeStream = function interleaveWithNodeStream(readableStream) {\n var _this = this;\n\n {\n throw new StyledComponentsError(3);\n }\n\n /* the tag index keeps track of which tags have already been emitted */\n var instance = this.instance;\n\n var instanceTagIndex = 0;\n\n var streamAttr = SC_STREAM_ATTR + '=\"true\"';\n\n var transformer = new stream.Transform({\n transform: function appendStyleChunks(chunk, /* encoding */_, callback) {\n var tags = instance.tags;\n\n var html = '';\n\n /* retrieve html for each new style tag */\n for (; instanceTagIndex < tags.length; instanceTagIndex += 1) {\n var tag = tags[instanceTagIndex];\n html += tag.toHTML(streamAttr);\n }\n\n /* force our StyleSheets to emit entirely new tags */\n instance.sealAllTags();\n\n var renderedHtml = chunk.toString();\n\n /* prepend style html to chunk, unless the start of the chunk is a closing tag in which case append right after that */\n if (CLOSING_TAG_R.test(renderedHtml)) {\n var endOfClosingTag = renderedHtml.indexOf('>');\n\n this.push(renderedHtml.slice(0, endOfClosingTag + 1) + html + renderedHtml.slice(endOfClosingTag + 1));\n } else this.push(html + renderedHtml);\n\n callback();\n }\n });\n\n readableStream.on('end', function () {\n return _this.seal();\n });\n\n readableStream.on('error', function (err) {\n _this.seal();\n\n // forward the error to the transform stream\n transformer.emit('error', err);\n });\n\n return readableStream.pipe(transformer);\n };\n\n return ServerStyleSheet;\n}();\n\n// \n\nvar StyleSheetContext = React.createContext();\nvar StyleSheetConsumer = StyleSheetContext.Consumer;\n\nvar StyleSheetManager = function (_Component) {\n inherits(StyleSheetManager, _Component);\n\n function StyleSheetManager(props) {\n classCallCheck(this, StyleSheetManager);\n\n var _this = possibleConstructorReturn(this, _Component.call(this, props));\n\n _this.getContext = memoize(_this.getContext);\n return _this;\n }\n\n StyleSheetManager.prototype.getContext = function getContext(sheet, target) {\n if (sheet) {\n return sheet;\n } else if (target) {\n return new StyleSheet(target);\n } else {\n throw new StyledComponentsError(4);\n }\n };\n\n StyleSheetManager.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n sheet = _props.sheet,\n target = _props.target;\n\n\n return React__default.createElement(\n StyleSheetContext.Provider,\n { value: this.getContext(sheet, target) },\n process.env.NODE_ENV !== 'production' ? React__default.Children.only(children) : children\n );\n };\n\n return StyleSheetManager;\n}(React.Component);\nprocess.env.NODE_ENV !== \"production\" ? StyleSheetManager.propTypes = {\n sheet: PropTypes.oneOfType([PropTypes.instanceOf(StyleSheet), PropTypes.instanceOf(ServerStyleSheet)]),\n\n target: PropTypes.shape({\n appendChild: PropTypes.func.isRequired\n })\n} : void 0;\n\n// \n\nvar identifiers = {};\n\n/* We depend on components having unique IDs */\nfunction generateId(_ComponentStyle, _displayName, parentComponentId) {\n var displayName = typeof _displayName !== 'string' ? 'sc' : escape(_displayName);\n\n /**\n * This ensures uniqueness if two components happen to share\n * the same displayName.\n */\n var nr = (identifiers[displayName] || 0) + 1;\n identifiers[displayName] = nr;\n\n var componentId = displayName + '-' + _ComponentStyle.generateName(displayName + nr);\n\n return parentComponentId ? parentComponentId + '-' + componentId : componentId;\n}\n\n// $FlowFixMe\n\nvar StyledComponent = function (_Component) {\n inherits(StyledComponent, _Component);\n\n function StyledComponent() {\n classCallCheck(this, StyledComponent);\n\n var _this = possibleConstructorReturn(this, _Component.call(this));\n\n _this.attrs = {};\n\n _this.renderOuter = _this.renderOuter.bind(_this);\n _this.renderInner = _this.renderInner.bind(_this);\n\n if (process.env.NODE_ENV !== 'production') {\n _this.warnInnerRef = once(function (displayName) {\n return (\n // eslint-disable-next-line no-console\n console.warn('The \"innerRef\" API has been removed in styled-components v4 in favor of React 16 ref forwarding, use \"ref\" instead like a typical component. \"innerRef\" was detected on component \"' + displayName + '\".')\n );\n });\n\n _this.warnAttrsFnObjectKeyDeprecated = once(function (key, displayName) {\n return (\n // eslint-disable-next-line no-console\n console.warn('Functions as object-form attrs({}) keys are now deprecated and will be removed in a future version of styled-components. Switch to the new attrs(props => ({})) syntax instead for easier and more powerful composition. The attrs key in question is \"' + key + '\" on component \"' + displayName + '\".', '\\n ' + new Error().stack)\n );\n });\n\n _this.warnNonStyledComponentAttrsObjectKey = once(function (key, displayName) {\n return (\n // eslint-disable-next-line no-console\n console.warn('It looks like you\\'ve used a non styled-component as the value for the \"' + key + '\" prop in an object-form attrs constructor of \"' + displayName + '\".\\n' + 'You should use the new function-form attrs constructor which avoids this issue: attrs(props => ({ yourStuff }))\\n' + \"To continue using the deprecated object syntax, you'll need to wrap your component prop in a function to make it available inside the styled component (you'll still get the deprecation warning though.)\\n\" + ('For example, { ' + key + ': () => InnerComponent } instead of { ' + key + ': InnerComponent }'))\n );\n });\n }\n return _this;\n }\n\n StyledComponent.prototype.render = function render() {\n return React__default.createElement(\n StyleSheetConsumer,\n null,\n this.renderOuter\n );\n };\n\n StyledComponent.prototype.renderOuter = function renderOuter() {\n var styleSheet = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : StyleSheet.master;\n\n this.styleSheet = styleSheet;\n\n // No need to subscribe a static component to theme changes, it won't change anything\n if (this.props.forwardedComponent.componentStyle.isStatic) return this.renderInner();\n\n return React__default.createElement(\n ThemeConsumer,\n null,\n this.renderInner\n );\n };\n\n StyledComponent.prototype.renderInner = function renderInner(theme) {\n var _props$forwardedCompo = this.props.forwardedComponent,\n componentStyle = _props$forwardedCompo.componentStyle,\n defaultProps = _props$forwardedCompo.defaultProps,\n displayName = _props$forwardedCompo.displayName,\n foldedComponentIds = _props$forwardedCompo.foldedComponentIds,\n styledComponentId = _props$forwardedCompo.styledComponentId,\n target = _props$forwardedCompo.target;\n\n\n var generatedClassName = void 0;\n if (componentStyle.isStatic) {\n generatedClassName = this.generateAndInjectStyles(EMPTY_OBJECT, this.props);\n } else {\n generatedClassName = this.generateAndInjectStyles(determineTheme(this.props, theme, defaultProps) || EMPTY_OBJECT, this.props);\n }\n\n var elementToBeCreated = this.props.as || this.attrs.as || target;\n var isTargetTag = isTag(elementToBeCreated);\n\n var propsForElement = {};\n var computedProps = _extends({}, this.props, this.attrs);\n\n var key = void 0;\n // eslint-disable-next-line guard-for-in\n for (key in computedProps) {\n if (process.env.NODE_ENV !== 'production' && key === 'innerRef' && isTargetTag) {\n this.warnInnerRef(displayName);\n }\n\n if (key === 'forwardedComponent' || key === 'as') {\n continue;\n } else if (key === 'forwardedRef') propsForElement.ref = computedProps[key];else if (key === 'forwardedAs') propsForElement.as = computedProps[key];else if (!isTargetTag || validAttr(key)) {\n // Don't pass through non HTML tags through to HTML elements\n propsForElement[key] = computedProps[key];\n }\n }\n\n if (this.props.style && this.attrs.style) {\n propsForElement.style = _extends({}, this.attrs.style, this.props.style);\n }\n\n propsForElement.className = Array.prototype.concat(foldedComponentIds, styledComponentId, generatedClassName !== styledComponentId ? generatedClassName : null, this.props.className, this.attrs.className).filter(Boolean).join(' ');\n\n return React.createElement(elementToBeCreated, propsForElement);\n };\n\n StyledComponent.prototype.buildExecutionContext = function buildExecutionContext(theme, props, attrs) {\n var _this2 = this;\n\n var context = _extends({}, props, { theme: theme });\n\n if (!attrs.length) return context;\n\n this.attrs = {};\n\n attrs.forEach(function (attrDef) {\n var resolvedAttrDef = attrDef;\n var attrDefWasFn = false;\n var attr = void 0;\n var key = void 0;\n\n if (isFunction(resolvedAttrDef)) {\n // $FlowFixMe\n resolvedAttrDef = resolvedAttrDef(context);\n attrDefWasFn = true;\n }\n\n /* eslint-disable guard-for-in */\n // $FlowFixMe\n for (key in resolvedAttrDef) {\n attr = resolvedAttrDef[key];\n\n if (!attrDefWasFn) {\n if (isFunction(attr) && !isDerivedReactComponent(attr) && !isStyledComponent(attr)) {\n if (process.env.NODE_ENV !== 'production') {\n _this2.warnAttrsFnObjectKeyDeprecated(key, props.forwardedComponent.displayName);\n }\n\n attr = attr(context);\n\n if (process.env.NODE_ENV !== 'production' && React__default.isValidElement(attr)) {\n _this2.warnNonStyledComponentAttrsObjectKey(key, props.forwardedComponent.displayName);\n }\n }\n }\n\n _this2.attrs[key] = attr;\n context[key] = attr;\n }\n /* eslint-enable */\n });\n\n return context;\n };\n\n StyledComponent.prototype.generateAndInjectStyles = function generateAndInjectStyles(theme, props) {\n var _props$forwardedCompo2 = props.forwardedComponent,\n attrs = _props$forwardedCompo2.attrs,\n componentStyle = _props$forwardedCompo2.componentStyle,\n warnTooManyClasses = _props$forwardedCompo2.warnTooManyClasses;\n\n // statically styled-components don't need to build an execution context object,\n // and shouldn't be increasing the number of class names\n\n if (componentStyle.isStatic && !attrs.length) {\n return componentStyle.generateAndInjectStyles(EMPTY_OBJECT, this.styleSheet);\n }\n\n var className = componentStyle.generateAndInjectStyles(this.buildExecutionContext(theme, props, attrs), this.styleSheet);\n\n if (process.env.NODE_ENV !== 'production' && warnTooManyClasses) warnTooManyClasses(className);\n\n return className;\n };\n\n return StyledComponent;\n}(React.Component);\n\nfunction createStyledComponent(target, options, rules) {\n var isTargetStyledComp = isStyledComponent(target);\n var isClass = !isTag(target);\n\n var _options$displayName = options.displayName,\n displayName = _options$displayName === undefined ? generateDisplayName(target) : _options$displayName,\n _options$componentId = options.componentId,\n componentId = _options$componentId === undefined ? generateId(ComponentStyle, options.displayName, options.parentComponentId) : _options$componentId,\n _options$ParentCompon = options.ParentComponent,\n ParentComponent = _options$ParentCompon === undefined ? StyledComponent : _options$ParentCompon,\n _options$attrs = options.attrs,\n attrs = _options$attrs === undefined ? EMPTY_ARRAY : _options$attrs;\n\n\n var styledComponentId = options.displayName && options.componentId ? escape(options.displayName) + '-' + options.componentId : options.componentId || componentId;\n\n // fold the underlying StyledComponent attrs up (implicit extend)\n var finalAttrs =\n // $FlowFixMe\n isTargetStyledComp && target.attrs ? Array.prototype.concat(target.attrs, attrs).filter(Boolean) : attrs;\n\n var componentStyle = new ComponentStyle(isTargetStyledComp ? // fold the underlying StyledComponent rules up (implicit extend)\n // $FlowFixMe\n target.componentStyle.rules.concat(rules) : rules, finalAttrs, styledComponentId);\n\n /**\n * forwardRef creates a new interim component, which we'll take advantage of\n * instead of extending ParentComponent to create _another_ interim class\n */\n var WrappedStyledComponent = void 0;\n var forwardRef = function forwardRef(props, ref) {\n return React__default.createElement(ParentComponent, _extends({}, props, { forwardedComponent: WrappedStyledComponent, forwardedRef: ref }));\n };\n forwardRef.displayName = displayName;\n WrappedStyledComponent = React__default.forwardRef(forwardRef);\n WrappedStyledComponent.displayName = displayName;\n\n // $FlowFixMe\n WrappedStyledComponent.attrs = finalAttrs;\n // $FlowFixMe\n WrappedStyledComponent.componentStyle = componentStyle;\n\n // $FlowFixMe\n WrappedStyledComponent.foldedComponentIds = isTargetStyledComp ? // $FlowFixMe\n Array.prototype.concat(target.foldedComponentIds, target.styledComponentId) : EMPTY_ARRAY;\n\n // $FlowFixMe\n WrappedStyledComponent.styledComponentId = styledComponentId;\n\n // fold the underlying StyledComponent target up since we folded the styles\n // $FlowFixMe\n WrappedStyledComponent.target = isTargetStyledComp ? target.target : target;\n\n // $FlowFixMe\n WrappedStyledComponent.withComponent = function withComponent(tag) {\n var previousComponentId = options.componentId,\n optionsToCopy = objectWithoutProperties(options, ['componentId']);\n\n\n var newComponentId = previousComponentId && previousComponentId + '-' + (isTag(tag) ? tag : escape(getComponentName(tag)));\n\n var newOptions = _extends({}, optionsToCopy, {\n attrs: finalAttrs,\n componentId: newComponentId,\n ParentComponent: ParentComponent\n });\n\n return createStyledComponent(tag, newOptions, rules);\n };\n\n // $FlowFixMe\n Object.defineProperty(WrappedStyledComponent, 'defaultProps', {\n get: function get$$1() {\n return this._foldedDefaultProps;\n },\n set: function set$$1(obj) {\n // $FlowFixMe\n this._foldedDefaultProps = isTargetStyledComp ? merge(target.defaultProps, obj) : obj;\n }\n });\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n WrappedStyledComponent.warnTooManyClasses = createWarnTooManyClasses(displayName);\n }\n\n // $FlowFixMe\n WrappedStyledComponent.toString = function () {\n return '.' + WrappedStyledComponent.styledComponentId;\n };\n\n if (isClass) {\n hoistNonReactStatics(WrappedStyledComponent, target, {\n // all SC-specific things should not be hoisted\n attrs: true,\n componentStyle: true,\n displayName: true,\n foldedComponentIds: true,\n styledComponentId: true,\n target: true,\n withComponent: true\n });\n }\n\n return WrappedStyledComponent;\n}\n\n// \n// Thanks to ReactDOMFactories for this handy list!\n\nvar domElements = ['a', 'abbr', 'address', 'area', 'article', 'aside', 'audio', 'b', 'base', 'bdi', 'bdo', 'big', 'blockquote', 'body', 'br', 'button', 'canvas', 'caption', 'cite', 'code', 'col', 'colgroup', 'data', 'datalist', 'dd', 'del', 'details', 'dfn', 'dialog', 'div', 'dl', 'dt', 'em', 'embed', 'fieldset', 'figcaption', 'figure', 'footer', 'form', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6', 'head', 'header', 'hgroup', 'hr', 'html', 'i', 'iframe', 'img', 'input', 'ins', 'kbd', 'keygen', 'label', 'legend', 'li', 'link', 'main', 'map', 'mark', 'marquee', 'menu', 'menuitem', 'meta', 'meter', 'nav', 'noscript', 'object', 'ol', 'optgroup', 'option', 'output', 'p', 'param', 'picture', 'pre', 'progress', 'q', 'rp', 'rt', 'ruby', 's', 'samp', 'script', 'section', 'select', 'small', 'source', 'span', 'strong', 'style', 'sub', 'summary', 'sup', 'table', 'tbody', 'td', 'textarea', 'tfoot', 'th', 'thead', 'time', 'title', 'tr', 'track', 'u', 'ul', 'var', 'video', 'wbr',\n\n// SVG\n'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'marker', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];\n\n// \n\nvar styled = function styled(tag) {\n return constructWithOptions(createStyledComponent, tag);\n};\n\n// Shorthands for all valid HTML Elements\ndomElements.forEach(function (domElement) {\n styled[domElement] = styled(domElement);\n});\n\n// \n\nvar GlobalStyle = function () {\n function GlobalStyle(rules, componentId) {\n classCallCheck(this, GlobalStyle);\n\n this.rules = rules;\n this.componentId = componentId;\n this.isStatic = isStaticRules(rules, EMPTY_ARRAY);\n\n if (!StyleSheet.master.hasId(componentId)) {\n StyleSheet.master.deferredInject(componentId, []);\n }\n }\n\n GlobalStyle.prototype.createStyles = function createStyles(executionContext, styleSheet) {\n var flatCSS = flatten(this.rules, executionContext, styleSheet);\n var css = stringifyRules(flatCSS, '');\n\n styleSheet.inject(this.componentId, css);\n };\n\n GlobalStyle.prototype.removeStyles = function removeStyles(styleSheet) {\n var componentId = this.componentId;\n\n if (styleSheet.hasId(componentId)) {\n styleSheet.remove(componentId);\n }\n };\n\n // TODO: overwrite in-place instead of remove+create?\n\n\n GlobalStyle.prototype.renderStyles = function renderStyles(executionContext, styleSheet) {\n this.removeStyles(styleSheet);\n this.createStyles(executionContext, styleSheet);\n };\n\n return GlobalStyle;\n}();\n\n// \n\n// place our cache into shared context so it'll persist between HMRs\nif (IS_BROWSER) {\n window.scCGSHMRCache = {};\n}\n\nfunction createGlobalStyle(strings) {\n for (var _len = arguments.length, interpolations = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n interpolations[_key - 1] = arguments[_key];\n }\n\n var rules = css.apply(undefined, [strings].concat(interpolations));\n var id = 'sc-global-' + murmurhash(JSON.stringify(rules));\n var style = new GlobalStyle(rules, id);\n\n var GlobalStyleComponent = function (_React$Component) {\n inherits(GlobalStyleComponent, _React$Component);\n\n function GlobalStyleComponent(props) {\n classCallCheck(this, GlobalStyleComponent);\n\n var _this = possibleConstructorReturn(this, _React$Component.call(this, props));\n\n var _this$constructor = _this.constructor,\n globalStyle = _this$constructor.globalStyle,\n styledComponentId = _this$constructor.styledComponentId;\n\n\n if (IS_BROWSER) {\n window.scCGSHMRCache[styledComponentId] = (window.scCGSHMRCache[styledComponentId] || 0) + 1;\n }\n\n /**\n * This fixes HMR compatibility. Don't ask me why, but this combination of\n * caching the closure variables via statics and then persisting the statics in\n * state works across HMR where no other combination did. ¯\\_(ツ)_/¯\n */\n _this.state = {\n globalStyle: globalStyle,\n styledComponentId: styledComponentId\n };\n return _this;\n }\n\n GlobalStyleComponent.prototype.componentWillUnmount = function componentWillUnmount() {\n if (window.scCGSHMRCache[this.state.styledComponentId]) {\n window.scCGSHMRCache[this.state.styledComponentId] -= 1;\n }\n /**\n * Depending on the order \"render\" is called this can cause the styles to be lost\n * until the next render pass of the remaining instance, which may\n * not be immediate.\n */\n if (window.scCGSHMRCache[this.state.styledComponentId] === 0) {\n this.state.globalStyle.removeStyles(this.styleSheet);\n }\n };\n\n GlobalStyleComponent.prototype.render = function render() {\n var _this2 = this;\n\n if (process.env.NODE_ENV !== 'production' && React__default.Children.count(this.props.children)) {\n // eslint-disable-next-line no-console\n console.warn('The global style component ' + this.state.styledComponentId + ' was given child JSX. createGlobalStyle does not render children.');\n }\n\n return React__default.createElement(\n StyleSheetConsumer,\n null,\n function (styleSheet) {\n _this2.styleSheet = styleSheet || StyleSheet.master;\n\n var globalStyle = _this2.state.globalStyle;\n\n\n if (globalStyle.isStatic) {\n globalStyle.renderStyles(STATIC_EXECUTION_CONTEXT, _this2.styleSheet);\n\n return null;\n } else {\n return React__default.createElement(\n ThemeConsumer,\n null,\n function (theme) {\n // $FlowFixMe\n var defaultProps = _this2.constructor.defaultProps;\n\n\n var context = _extends({}, _this2.props);\n\n if (typeof theme !== 'undefined') {\n context.theme = determineTheme(_this2.props, theme, defaultProps);\n }\n\n globalStyle.renderStyles(context, _this2.styleSheet);\n\n return null;\n }\n );\n }\n }\n );\n };\n\n return GlobalStyleComponent;\n }(React__default.Component);\n\n GlobalStyleComponent.globalStyle = style;\n GlobalStyleComponent.styledComponentId = id;\n\n\n return GlobalStyleComponent;\n}\n\n// \n\nvar replaceWhitespace = function replaceWhitespace(str) {\n return str.replace(/\\s|\\\\n/g, '');\n};\n\nfunction keyframes(strings) {\n /* Warning if you've used keyframes on React Native */\n if (process.env.NODE_ENV !== 'production' && typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n // eslint-disable-next-line no-console\n console.warn('`keyframes` cannot be used on ReactNative, only on the web. To do animation in ReactNative please use Animated.');\n }\n\n for (var _len = arguments.length, interpolations = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n interpolations[_key - 1] = arguments[_key];\n }\n\n var rules = css.apply(undefined, [strings].concat(interpolations));\n\n var name = generateAlphabeticName(murmurhash(replaceWhitespace(JSON.stringify(rules))));\n\n return new Keyframes(name, stringifyRules(rules, name, '@keyframes'));\n}\n\n// \n\nvar withTheme = (function (Component) {\n var WithTheme = React__default.forwardRef(function (props, ref) {\n return React__default.createElement(\n ThemeConsumer,\n null,\n function (theme) {\n // $FlowFixMe\n var defaultProps = Component.defaultProps;\n\n var themeProp = determineTheme(props, theme, defaultProps);\n\n if (process.env.NODE_ENV !== 'production' && themeProp === undefined) {\n // eslint-disable-next-line no-console\n console.warn('[withTheme] You are not using a ThemeProvider nor passing a theme prop or a theme in defaultProps in component class \"' + getComponentName(Component) + '\"');\n }\n\n return React__default.createElement(Component, _extends({}, props, { theme: themeProp, ref: ref }));\n }\n );\n });\n\n hoistNonReactStatics(WithTheme, Component);\n\n WithTheme.displayName = 'WithTheme(' + getComponentName(Component) + ')';\n\n return WithTheme;\n});\n\n// \n\n/* eslint-disable */\nvar __DO_NOT_USE_OR_YOU_WILL_BE_HAUNTED_BY_SPOOKY_GHOSTS = {\n StyleSheet: StyleSheet\n};\n\n// \n\n/* Warning if you've imported this file on React Native */\nif (process.env.NODE_ENV !== 'production' && typeof navigator !== 'undefined' && navigator.product === 'ReactNative') {\n // eslint-disable-next-line no-console\n console.warn(\"It looks like you've imported 'styled-components' on React Native.\\n\" + \"Perhaps you're looking to import 'styled-components/native'?\\n\" + 'Read more about this at https://www.styled-components.com/docs/basics#react-native');\n}\n\n/* Warning if there are several instances of styled-components */\nif (process.env.NODE_ENV !== 'production' && process.env.NODE_ENV !== 'test' && typeof window !== 'undefined' && typeof navigator !== 'undefined' && typeof navigator.userAgent === 'string' && navigator.userAgent.indexOf('Node.js') === -1 && navigator.userAgent.indexOf('jsdom') === -1) {\n window['__styled-components-init__'] = window['__styled-components-init__'] || 0;\n\n if (window['__styled-components-init__'] === 1) {\n // eslint-disable-next-line no-console\n console.warn(\"It looks like there are several instances of 'styled-components' initialized in this application. \" + 'This may cause dynamic styles not rendering properly, errors happening during rehydration process ' + 'and makes your application bigger without a good reason.\\n\\n' + 'See https://s-c.sh/2BAXzed for more info.');\n }\n\n window['__styled-components-init__'] += 1;\n}\n\n//\n\nexports.default = styled;\nexports.createGlobalStyle = createGlobalStyle;\nexports.css = css;\nexports.isStyledComponent = isStyledComponent;\nexports.keyframes = keyframes;\nexports.ServerStyleSheet = ServerStyleSheet;\nexports.StyleSheetConsumer = StyleSheetConsumer;\nexports.StyleSheetContext = StyleSheetContext;\nexports.StyleSheetManager = StyleSheetManager;\nexports.ThemeConsumer = ThemeConsumer;\nexports.ThemeContext = ThemeContext;\nexports.ThemeProvider = ThemeProvider;\nexports.withTheme = withTheme;\nexports.__DO_NOT_USE_OR_YOU_WILL_BE_HAUNTED_BY_SPOOKY_GHOSTS = __DO_NOT_USE_OR_YOU_WILL_BE_HAUNTED_BY_SPOOKY_GHOSTS;\n//# sourceMappingURL=styled-components.browser.cjs.js.map\n","/**\n * Checks whether `arg` is a promise or not.\n *\n * @returns {boolean}\n */\nfunction isPromise(arg) {\n return Boolean(arg && \"then\" in arg && arg.then);\n}\n\nexport { isPromise };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nvar isButton = require('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nvar hasFocusWithin = require('reakit-utils/hasFocusWithin');\nvar isPortalEvent = require('reakit-utils/isPortalEvent');\nvar dom = require('reakit-utils/dom');\nvar tabbable = require('reakit-utils/tabbable');\nvar Role_Role = require('../Role/Role.js');\n\n// Automatically generated\nvar TABBABLE_KEYS = [\"disabled\", \"focusable\"];\n\nvar isSafariOrFirefoxOnMac = dom.isUA(\"Mac\") && !dom.isUA(\"Chrome\") && (dom.isUA(\"Safari\") || dom.isUA(\"Firefox\"));\n\nfunction focusIfNeeded(element) {\n if (!hasFocusWithin.hasFocusWithin(element) && tabbable.isFocusable(element)) {\n element.focus();\n }\n}\n\nfunction isNativeTabbable(element) {\n return [\"BUTTON\", \"INPUT\", \"SELECT\", \"TEXTAREA\", \"A\"].includes(element.tagName);\n}\n\nfunction supportsDisabledAttribute(element) {\n return [\"BUTTON\", \"INPUT\", \"SELECT\", \"TEXTAREA\"].includes(element.tagName);\n}\n\nfunction getTabIndex(trulyDisabled, nativeTabbable, supportsDisabled, htmlTabIndex) {\n if (trulyDisabled) {\n if (nativeTabbable && !supportsDisabled) {\n // Anchor, audio and video tags don't support the `disabled` attribute.\n // We must pass tabIndex={-1} so they don't receive focus on tab.\n return -1;\n } // Elements that support the `disabled` attribute don't need tabIndex.\n\n\n return undefined;\n }\n\n if (nativeTabbable) {\n // If the element is enabled and it's natively tabbable, we don't need to\n // specify a tabIndex attribute unless it's explicitly set by the user.\n return htmlTabIndex;\n } // If the element is enabled and is not natively tabbable, we have to\n // fallback tabIndex={0}.\n\n\n return htmlTabIndex || 0;\n}\n\nfunction useDisableEvent(htmlEventRef, disabled) {\n return React.useCallback(function (event) {\n var _htmlEventRef$current;\n\n (_htmlEventRef$current = htmlEventRef.current) === null || _htmlEventRef$current === void 0 ? void 0 : _htmlEventRef$current.call(htmlEventRef, event);\n if (event.defaultPrevented) return;\n\n if (disabled) {\n event.stopPropagation();\n event.preventDefault();\n }\n }, [htmlEventRef, disabled]);\n}\n\nvar useTabbable = createHook.createHook({\n name: \"Tabbable\",\n compose: Role_Role.useRole,\n keys: TABBABLE_KEYS,\n useOptions: function useOptions(options, _ref) {\n var disabled = _ref.disabled;\n return _rollupPluginBabelHelpers._objectSpread2({\n disabled: disabled\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlRef = _ref2.ref,\n htmlTabIndex = _ref2.tabIndex,\n htmlOnClickCapture = _ref2.onClickCapture,\n htmlOnMouseDownCapture = _ref2.onMouseDownCapture,\n htmlOnMouseDown = _ref2.onMouseDown,\n htmlOnKeyPressCapture = _ref2.onKeyPressCapture,\n htmlStyle = _ref2.style,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"ref\", \"tabIndex\", \"onClickCapture\", \"onMouseDownCapture\", \"onMouseDown\", \"onKeyPressCapture\", \"style\"]);\n\n var ref = React.useRef(null);\n var onClickCaptureRef = useLiveRef.useLiveRef(htmlOnClickCapture);\n var onMouseDownCaptureRef = useLiveRef.useLiveRef(htmlOnMouseDownCapture);\n var onMouseDownRef = useLiveRef.useLiveRef(htmlOnMouseDown);\n var onKeyPressCaptureRef = useLiveRef.useLiveRef(htmlOnKeyPressCapture);\n var trulyDisabled = !!options.disabled && !options.focusable;\n\n var _React$useState = React.useState(true),\n nativeTabbable = _React$useState[0],\n setNativeTabbable = _React$useState[1];\n\n var _React$useState2 = React.useState(true),\n supportsDisabled = _React$useState2[0],\n setSupportsDisabled = _React$useState2[1];\n\n var style = options.disabled ? _rollupPluginBabelHelpers._objectSpread2({\n pointerEvents: \"none\"\n }, htmlStyle) : htmlStyle;\n useIsomorphicEffect.useIsomorphicEffect(function () {\n var tabbable = ref.current;\n\n if (!tabbable) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't determine if the element is a native tabbable element because `ref` wasn't passed to the component.\", \"See https://reakit.io/docs/tabbable\") : void 0;\n return;\n }\n\n if (!isNativeTabbable(tabbable)) {\n setNativeTabbable(false);\n }\n\n if (!supportsDisabledAttribute(tabbable)) {\n setSupportsDisabled(false);\n }\n }, []);\n var onClickCapture = useDisableEvent(onClickCaptureRef, options.disabled);\n var onMouseDownCapture = useDisableEvent(onMouseDownCaptureRef, options.disabled);\n var onKeyPressCapture = useDisableEvent(onKeyPressCaptureRef, options.disabled);\n var onMouseDown = React.useCallback(function (event) {\n var _onMouseDownRef$curre;\n\n (_onMouseDownRef$curre = onMouseDownRef.current) === null || _onMouseDownRef$curre === void 0 ? void 0 : _onMouseDownRef$curre.call(onMouseDownRef, event);\n var element = event.currentTarget;\n if (event.defaultPrevented) return; // Safari and Firefox on MacOS don't focus on buttons on mouse down\n // like other browsers/platforms. Instead, they focus on the closest\n // focusable ancestor element, which is ultimately the body element. So\n // we make sure to give focus to the tabbable element on mouse down so\n // it works consistently across browsers.\n\n if (!isSafariOrFirefoxOnMac) return;\n if (isPortalEvent.isPortalEvent(event)) return;\n if (!isButton.isButton(element)) return; // We can't focus right away after on mouse down, otherwise it would\n // prevent drag events from happening. So we schedule the focus to the\n // next animation frame.\n\n var raf = requestAnimationFrame(function () {\n element.removeEventListener(\"mouseup\", focusImmediately, true);\n focusIfNeeded(element);\n }); // If mouseUp happens before the next animation frame (which is common\n // on touch screens or by just tapping the trackpad on MacBook's), we\n // cancel the animation frame and immediately focus on the element.\n\n var focusImmediately = function focusImmediately() {\n cancelAnimationFrame(raf);\n focusIfNeeded(element);\n }; // By listening to the event in the capture phase, we make sure the\n // focus event is fired before the onMouseUp and onMouseUpCapture React\n // events, which is aligned with the default browser behavior.\n\n\n element.addEventListener(\"mouseup\", focusImmediately, {\n once: true,\n capture: true\n });\n }, []);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n style: style,\n tabIndex: getTabIndex(trulyDisabled, nativeTabbable, supportsDisabled, htmlTabIndex),\n disabled: trulyDisabled && supportsDisabled ? true : undefined,\n \"aria-disabled\": options.disabled ? true : undefined,\n onClickCapture: onClickCapture,\n onMouseDownCapture: onMouseDownCapture,\n onMouseDown: onMouseDown,\n onKeyPressCapture: onKeyPressCapture\n }, htmlProps);\n }\n});\nvar Tabbable = createComponent.createComponent({\n as: \"div\",\n useHook: useTabbable\n});\n\nexports.Tabbable = Tabbable;\nexports.useTabbable = useTabbable;\n","'use strict';\n\n// Automatically generated\nvar COMPOSITE_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"setBaseId\", \"unstable_virtual\", \"rtl\", \"orientation\", \"items\", \"groups\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_moves\", \"unstable_hasActiveWidget\", \"unstable_includesBaseElement\", \"registerItem\", \"unregisterItem\", \"registerGroup\", \"unregisterGroup\", \"move\", \"next\", \"previous\", \"up\", \"down\", \"first\", \"last\", \"sort\", \"unstable_setVirtual\", \"setRTL\", \"setOrientation\", \"setCurrentId\", \"setLoop\", \"setWrap\", \"setShift\", \"reset\", \"unstable_setIncludesBaseElement\", \"unstable_setHasActiveWidget\"];\nvar COMPOSITE_KEYS = COMPOSITE_STATE_KEYS;\nvar COMPOSITE_GROUP_KEYS = COMPOSITE_KEYS;\nvar COMPOSITE_ITEM_KEYS = COMPOSITE_GROUP_KEYS;\nvar COMPOSITE_ITEM_WIDGET_KEYS = COMPOSITE_ITEM_KEYS;\n\nexports.COMPOSITE_GROUP_KEYS = COMPOSITE_GROUP_KEYS;\nexports.COMPOSITE_ITEM_KEYS = COMPOSITE_ITEM_KEYS;\nexports.COMPOSITE_ITEM_WIDGET_KEYS = COMPOSITE_ITEM_WIDGET_KEYS;\nexports.COMPOSITE_KEYS = COMPOSITE_KEYS;\n","import { _ as _objectWithoutPropertiesLoose, a as _objectSpread2 } from './_rollupPluginBabelHelpers-1f0bf8c2.js';\nimport './isObject.js';\nimport { isPlainObject } from './isPlainObject.js';\n\n/**\n * Splits an object (`props`) into a tuple where the first item is an object\n * with the passed `keys`, and the second item is an object with these keys\n * omitted.\n *\n * @deprecated will be removed in version 2\n *\n * @example\n * import { splitProps } from \"reakit-utils\";\n *\n * splitProps({ a: \"a\", b: \"b\" }, [\"a\"]); // [{ a: \"a\" }, { b: \"b\" }]\n */\n\nfunction __deprecatedSplitProps(props, keys) {\n var propsKeys = Object.keys(props);\n var picked = {};\n var omitted = {};\n\n for (var _i = 0, _propsKeys = propsKeys; _i < _propsKeys.length; _i++) {\n var key = _propsKeys[_i];\n\n if (keys.indexOf(key) >= 0) {\n picked[key] = props[key];\n } else {\n omitted[key] = props[key];\n }\n }\n\n return [picked, omitted];\n}\n/**\n * Splits an object (`props`) into a tuple where the first item\n * is the `state` property, and the second item is the rest of the properties.\n *\n * It is also backward compatible with version 1. If `keys` are passed then\n * splits an object (`props`) into a tuple where the first item is an object\n * with the passed `keys`, and the second item is an object with these keys\n * omitted.\n *\n * @example\n * import { splitProps } from \"reakit-utils\";\n *\n * splitProps({ a: \"a\", b: \"b\" }, [\"a\"]); // [{ a: \"a\" }, { b: \"b\" }]\n *\n * @example\n * import { splitProps } from \"reakit-utils\";\n *\n * splitProps({ state: { a: \"a\" }, b: \"b\" }); // [{ a: \"a\" }, { b: \"b\" }]\n */\n\n\nfunction splitProps(props, keys) {\n if (keys === void 0) {\n keys = [];\n }\n\n if (!isPlainObject(props.state)) {\n return __deprecatedSplitProps(props, keys);\n }\n\n var _deprecatedSplitProp = __deprecatedSplitProps(props, [].concat(keys, [\"state\"])),\n picked = _deprecatedSplitProp[0],\n omitted = _deprecatedSplitProp[1];\n\n var state = picked.state,\n restPicked = _objectWithoutPropertiesLoose(picked, [\"state\"]);\n\n return [_objectSpread2(_objectSpread2({}, state), restPicked), omitted];\n}\n\nexport { splitProps };\n","import { a as _objectSpread2 } from './_rollupPluginBabelHelpers-1f0bf8c2.js';\nimport './isObject.js';\nimport { isPlainObject } from './isPlainObject.js';\n\n/**\n * This higher order functions take `propsAreEqual` function and\n * returns a new function which normalizes the props.\n *\n * Normalizing in our case is making sure the `propsAreEqual` works with\n * both version 1 (object spreading) and version 2 (state object) state passing.\n *\n * To achieve this, the returned function in case of a state object\n * will spread the state object in both `prev` and `next props.\n *\n * Other case it just returns the function as is which makes sure\n * that we are still backward compatible\n */\nfunction normalizePropsAreEqual(propsAreEqual) {\n if (propsAreEqual.name === \"normalizePropsAreEqualInner\") {\n return propsAreEqual;\n }\n\n return function normalizePropsAreEqualInner(prev, next) {\n if (!isPlainObject(prev.state) || !isPlainObject(next.state)) {\n return propsAreEqual(prev, next);\n }\n\n return propsAreEqual(_objectSpread2(_objectSpread2({}, prev.state), prev), _objectSpread2(_objectSpread2({}, next.state), next));\n };\n}\n\nexport { normalizePropsAreEqual };\n","import { forwardRef as forwardRef$1, memo as memo$1 } from 'react';\nimport './SystemContext.js';\nimport { a as _objectWithoutPropertiesLoose, _ as _objectSpread2 } from './_rollupPluginBabelHelpers-0c84a174.js';\nimport { useCreateElement } from './useCreateElement.js';\nimport { splitProps } from 'reakit-utils/splitProps';\nimport { shallowEqual } from 'reakit-utils/shallowEqual';\nimport { normalizePropsAreEqual } from 'reakit-utils/normalizePropsAreEqual';\n\nfunction forwardRef(component) {\n return /*#__PURE__*/forwardRef$1(component);\n}\n\nfunction memo(component, propsAreEqual) {\n return /*#__PURE__*/memo$1(component, propsAreEqual);\n}\n\n/**\n * Creates a React component.\n *\n * @example\n * import { createComponent } from \"reakit-system\";\n *\n * const A = createComponent({ as: \"a\" });\n *\n * @param options\n */\nfunction createComponent(_ref) {\n var type = _ref.as,\n useHook = _ref.useHook,\n shouldMemo = _ref.memo,\n _ref$propsAreEqual = _ref.propsAreEqual,\n propsAreEqual = _ref$propsAreEqual === void 0 ? useHook === null || useHook === void 0 ? void 0 : useHook.unstable_propsAreEqual : _ref$propsAreEqual,\n _ref$keys = _ref.keys,\n keys = _ref$keys === void 0 ? (useHook === null || useHook === void 0 ? void 0 : useHook.__keys) || [] : _ref$keys,\n _ref$useCreateElement = _ref.useCreateElement,\n useCreateElement$1 = _ref$useCreateElement === void 0 ? useCreateElement : _ref$useCreateElement;\n\n var Comp = function Comp(_ref2, ref) {\n var _ref2$as = _ref2.as,\n as = _ref2$as === void 0 ? type : _ref2$as,\n props = _objectWithoutPropertiesLoose(_ref2, [\"as\"]);\n\n if (useHook) {\n var _as$render;\n\n var _splitProps = splitProps(props, keys),\n _options = _splitProps[0],\n htmlProps = _splitProps[1];\n\n var _useHook = useHook(_options, _objectSpread2({\n ref: ref\n }, htmlProps)),\n wrapElement = _useHook.wrapElement,\n elementProps = _objectWithoutPropertiesLoose(_useHook, [\"wrapElement\"]); // @ts-ignore\n\n\n var asKeys = ((_as$render = as.render) === null || _as$render === void 0 ? void 0 : _as$render.__keys) || as.__keys;\n var asOptions = asKeys && splitProps(props, asKeys)[0];\n var allProps = asOptions ? _objectSpread2(_objectSpread2({}, elementProps), asOptions) : elementProps;\n\n var _element = useCreateElement$1(as, allProps);\n\n if (wrapElement) {\n return wrapElement(_element);\n }\n\n return _element;\n }\n\n return useCreateElement$1(as, _objectSpread2({\n ref: ref\n }, props));\n };\n\n if (process.env.NODE_ENV !== \"production\" && useHook) {\n Comp.displayName = useHook.name.replace(/^(unstable_)?use/, \"\");\n }\n\n Comp = forwardRef(Comp);\n\n if (shouldMemo) {\n Comp = memo(Comp, propsAreEqual && normalizePropsAreEqual(propsAreEqual));\n }\n\n Comp.__keys = keys;\n Comp.unstable_propsAreEqual = normalizePropsAreEqual(propsAreEqual || shallowEqual);\n return Comp;\n}\n\nexport { createComponent };\n","/**\n * Transforms `arg` into an array if it's not already.\n *\n * @example\n * import { toArray } from \"reakit-utils\";\n *\n * toArray(\"a\"); // [\"a\"]\n * toArray([\"a\"]); // [\"a\"]\n */\nfunction toArray(arg) {\n if (Array.isArray(arg)) {\n return arg;\n }\n\n return typeof arg !== \"undefined\" ? [arg] : [];\n}\n\nexport { toArray };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar React = require('react');\nvar useSealedState = require('reakit-utils/useSealedState');\n\n/**\n * As simple as `React.useState(false)`\n */\nfunction useCheckboxState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$state = _useSealedState.state,\n initialValue = _useSealedState$state === void 0 ? false : _useSealedState$state;\n\n var _React$useState = React.useState(initialValue),\n state = _React$useState[0],\n setState = _React$useState[1];\n\n return {\n state: state,\n setState: setState\n };\n}\n\nexports.useCheckboxState = useCheckboxState;\n","/*! safe-buffer. MIT License. Feross Aboukhadijeh */\n/* eslint-disable node/no-deprecated-api */\nvar buffer = require('buffer')\nvar Buffer = buffer.Buffer\n\n// alternative to using Object.keys for old browsers\nfunction copyProps (src, dst) {\n for (var key in src) {\n dst[key] = src[key]\n }\n}\nif (Buffer.from && Buffer.alloc && Buffer.allocUnsafe && Buffer.allocUnsafeSlow) {\n module.exports = buffer\n} else {\n // Copy properties from require('buffer')\n copyProps(buffer, exports)\n exports.Buffer = SafeBuffer\n}\n\nfunction SafeBuffer (arg, encodingOrOffset, length) {\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.prototype = Object.create(Buffer.prototype)\n\n// Copy static methods from Buffer\ncopyProps(Buffer, SafeBuffer)\n\nSafeBuffer.from = function (arg, encodingOrOffset, length) {\n if (typeof arg === 'number') {\n throw new TypeError('Argument must not be a number')\n }\n return Buffer(arg, encodingOrOffset, length)\n}\n\nSafeBuffer.alloc = function (size, fill, encoding) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n var buf = Buffer(size)\n if (fill !== undefined) {\n if (typeof encoding === 'string') {\n buf.fill(fill, encoding)\n } else {\n buf.fill(fill)\n }\n } else {\n buf.fill(0)\n }\n return buf\n}\n\nSafeBuffer.allocUnsafe = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return Buffer(size)\n}\n\nSafeBuffer.allocUnsafeSlow = function (size) {\n if (typeof size !== 'number') {\n throw new TypeError('Argument must be a number')\n }\n return buffer.SlowBuffer(size)\n}\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar useUpdateEffect = require('reakit-utils/useUpdateEffect');\nrequire('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar Composite_Composite = require('../Composite/Composite.js');\nvar __keys = require('../__keys-a7141fdd.js');\nvar getMenuId = require('../getMenuId-ae301adb.js');\n\nfunction getControls(baseId, ariaControls) {\n var menuId = getMenuId.getMenuId(baseId);\n\n if (ariaControls) {\n return ariaControls + \" \" + menuId;\n }\n\n return menuId;\n}\n\nfunction getAutocomplete(options) {\n if (options.list && options.inline) return \"both\";\n if (options.list) return \"list\";\n if (options.inline) return \"inline\";\n return \"none\";\n}\n\nfunction isFirstItemAutoSelected(items, autoSelect, currentId) {\n if (!autoSelect) return false;\n var firstItem = items.find(function (item) {\n return !item.disabled;\n });\n return currentId && (firstItem === null || firstItem === void 0 ? void 0 : firstItem.id) === currentId;\n}\n\nfunction hasCompletionString(inputValue, currentValue) {\n return !!currentValue && currentValue.length > inputValue.length && currentValue.toLowerCase().indexOf(inputValue.toLowerCase()) === 0;\n}\n\nfunction getCompletionString(inputValue, currentValue) {\n if (!currentValue) return \"\";\n var index = currentValue.toLowerCase().indexOf(inputValue.toLowerCase());\n return currentValue.slice(index + inputValue.length);\n}\n\nfunction useValue(options) {\n return React.useMemo(function () {\n if (!options.inline) {\n return options.inputValue;\n }\n\n var firstItemAutoSelected = isFirstItemAutoSelected(options.items, options.autoSelect, options.currentId);\n\n if (firstItemAutoSelected) {\n if (hasCompletionString(options.inputValue, options.currentValue)) {\n return options.inputValue + getCompletionString(options.inputValue, options.currentValue);\n }\n\n return options.inputValue;\n }\n\n return options.currentValue || options.inputValue;\n }, [options.inline, options.inputValue, options.autoSelect, options.items, options.currentId, options.currentValue]);\n}\n\nfunction getFirstEnabledItemId(items) {\n var _items$find;\n\n return (_items$find = items.find(function (item) {\n return !item.disabled;\n })) === null || _items$find === void 0 ? void 0 : _items$find.id;\n}\n\nvar unstable_useCombobox = createHook.createHook({\n name: \"Combobox\",\n compose: Composite_Composite.useComposite,\n keys: __keys.COMBOBOX_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$menuRole = _ref.menuRole,\n menuRole = _ref$menuRole === void 0 ? \"listbox\" : _ref$menuRole,\n _ref$hideOnEsc = _ref.hideOnEsc,\n hideOnEsc = _ref$hideOnEsc === void 0 ? true : _ref$hideOnEsc,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"menuRole\", \"hideOnEsc\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n menuRole: menuRole,\n hideOnEsc: hideOnEsc\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlRef = _ref2.ref,\n htmlOnKeyDown = _ref2.onKeyDown,\n htmlOnKeyPress = _ref2.onKeyPress,\n htmlOnChange = _ref2.onChange,\n htmlOnClick = _ref2.onClick,\n htmlOnBlur = _ref2.onBlur,\n ariaControls = _ref2[\"aria-controls\"],\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"ref\", \"onKeyDown\", \"onKeyPress\", \"onChange\", \"onClick\", \"onBlur\", \"aria-controls\"]);\n\n var ref = React.useRef(null);\n\n var _React$useReducer = React.useReducer(function () {\n return {};\n }, {}),\n updated = _React$useReducer[0],\n update = _React$useReducer[1];\n\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var onKeyPressRef = useLiveRef.useLiveRef(htmlOnKeyPress);\n var onChangeRef = useLiveRef.useLiveRef(htmlOnChange);\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var onBlurRef = useLiveRef.useLiveRef(htmlOnBlur);\n var value = useValue(options);\n var hasInsertedTextRef = React.useRef(false); // Completion string\n\n React.useEffect(function () {\n if (!options.inline) return;\n if (!options.autoSelect) return;\n if (!options.currentValue) return;\n if (options.currentId !== getFirstEnabledItemId(options.items)) return;\n\n if (!hasCompletionString(options.inputValue, options.currentValue)) {\n return;\n }\n\n var element = ref.current;\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(!element, \"Can't auto select combobox because `ref` wasn't passed to the component\", \"See https://reakit.io/docs/combobox\") : void 0;\n element === null || element === void 0 ? void 0 : element.setSelectionRange(options.inputValue.length, options.currentValue.length);\n }, [updated, options.inline, options.autoSelect, options.currentValue, options.inputValue, options.currentId, options.items]); // Auto select on type\n\n useUpdateEffect.useUpdateEffect(function () {\n if (options.autoSelect && options.items.length && hasInsertedTextRef.current) {\n // If autoSelect is set to true and the last change was a text\n // insertion, we want to automatically focus on the first suggestion.\n // This effect will run both when inputValue changes and when items\n // change so we can also catch async items.\n options.setCurrentId(undefined);\n } else {\n // Without autoSelect, we'll always blur the combobox option and move\n // focus onto the combobox input.\n options.setCurrentId(null);\n }\n }, [options.items, options.inputValue, options.autoSelect, options.setCurrentId]);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current;\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event); // Resets the reference on key down so we can figure it out later on\n // key press.\n\n hasInsertedTextRef.current = false;\n if (event.defaultPrevented) return;\n\n if (event.key === \"Escape\" && options.hideOnEsc) {\n var _options$hide;\n\n (_options$hide = options.hide) === null || _options$hide === void 0 ? void 0 : _options$hide.call(options);\n }\n }, [options.hideOnEsc, options.hide]);\n var onKeyPress = React.useCallback(function (event) {\n var _onKeyPressRef$curren;\n\n (_onKeyPressRef$curren = onKeyPressRef.current) === null || _onKeyPressRef$curren === void 0 ? void 0 : _onKeyPressRef$curren.call(onKeyPressRef, event); // onKeyPress will catch only printable character presses, so we skip\n // text removal and paste.\n\n hasInsertedTextRef.current = true;\n }, []);\n var onChange = React.useCallback(function (event) {\n var _onChangeRef$current, _options$show, _options$setInputValu;\n\n (_onChangeRef$current = onChangeRef.current) === null || _onChangeRef$current === void 0 ? void 0 : _onChangeRef$current.call(onChangeRef, event);\n if (event.defaultPrevented) return;\n (_options$show = options.show) === null || _options$show === void 0 ? void 0 : _options$show.call(options);\n (_options$setInputValu = options.setInputValue) === null || _options$setInputValu === void 0 ? void 0 : _options$setInputValu.call(options, event.target.value);\n update();\n\n if (!options.autoSelect || !hasInsertedTextRef.current) {\n var _options$setCurrentId;\n\n // If autoSelect is not set or it's not an insertion of text, focus\n // on the combobox input after changing the value.\n (_options$setCurrentId = options.setCurrentId) === null || _options$setCurrentId === void 0 ? void 0 : _options$setCurrentId.call(options, null);\n } else {\n var _options$setCurrentId2;\n\n // Selects first item\n (_options$setCurrentId2 = options.setCurrentId) === null || _options$setCurrentId2 === void 0 ? void 0 : _options$setCurrentId2.call(options, undefined);\n }\n }, [options.show, options.autoSelect, options.setCurrentId, options.setInputValue]);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current, _options$setCurrentId3;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return; // https://github.com/reakit/reakit/issues/808\n\n if (!options.minValueLength || value.length >= options.minValueLength) {\n var _options$show2;\n\n (_options$show2 = options.show) === null || _options$show2 === void 0 ? void 0 : _options$show2.call(options);\n }\n\n (_options$setCurrentId3 = options.setCurrentId) === null || _options$setCurrentId3 === void 0 ? void 0 : _options$setCurrentId3.call(options, null);\n options.setInputValue(value);\n }, [options.show, options.setCurrentId, options.setInputValue, options.minValueLength, value]);\n var onBlur = React.useCallback(function (event) {\n var _onBlurRef$current;\n\n (_onBlurRef$current = onBlurRef.current) === null || _onBlurRef$current === void 0 ? void 0 : _onBlurRef$current.call(onBlurRef, event);\n if (event.defaultPrevented) return;\n options.setInputValue(value);\n }, [options.setInputValue, value]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, useForkRef.useForkRef(options.unstable_referenceRef, htmlRef)),\n role: \"combobox\",\n autoComplete: \"off\",\n \"aria-controls\": getControls(options.baseId, ariaControls),\n \"aria-haspopup\": options.menuRole,\n \"aria-expanded\": options.visible,\n \"aria-autocomplete\": getAutocomplete(options),\n value: value,\n onKeyDown: onKeyDown,\n onKeyPress: onKeyPress,\n onChange: onChange,\n onClick: onClick,\n onBlur: onBlur\n }, htmlProps);\n },\n useComposeProps: function useComposeProps(options, _ref3) {\n var onKeyUp = _ref3.onKeyUp,\n htmlOnKeyDownCapture = _ref3.onKeyDownCapture,\n htmlOnKeyDown = _ref3.onKeyDown,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref3, [\"onKeyUp\", \"onKeyDownCapture\", \"onKeyDown\"]);\n\n var compositeHTMLProps = Composite_Composite.useComposite(options, htmlProps, true);\n var onKeyDownCaptureRef = useLiveRef.useLiveRef(htmlOnKeyDownCapture);\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var onKeyDownCapture = React.useCallback(function (event) {\n var _onKeyDownCaptureRef$, _compositeHTMLProps$o;\n\n (_onKeyDownCaptureRef$ = onKeyDownCaptureRef.current) === null || _onKeyDownCaptureRef$ === void 0 ? void 0 : _onKeyDownCaptureRef$.call(onKeyDownCaptureRef, event);\n if (event.defaultPrevented) return;\n\n if (options.menuRole !== \"grid\") {\n // If menu is a one-dimensional list and there's an option with\n // focus, we don't want Home/End and printable characters to perform\n // actions on the option, only on the combobox input.\n if (event.key === \"Home\") return;\n if (event.key === \"End\") return;\n }\n\n if (event.key.length === 1) return; // Composite's onKeyDownCapture will proxy this event to the active\n // item.\n\n (_compositeHTMLProps$o = compositeHTMLProps.onKeyDownCapture) === null || _compositeHTMLProps$o === void 0 ? void 0 : _compositeHTMLProps$o.call(compositeHTMLProps, event);\n }, [options.menuRole, compositeHTMLProps.onKeyDownCapture]);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current2, _compositeHTMLProps$o2;\n\n (_onKeyDownRef$current2 = onKeyDownRef.current) === null || _onKeyDownRef$current2 === void 0 ? void 0 : _onKeyDownRef$current2.call(onKeyDownRef, event);\n if (event.defaultPrevented) return;\n var onlyInputHasFocus = options.currentId === null;\n if (!onlyInputHasFocus) return; // Do not perform list actions when pressing horizontal arrow keys when\n // focusing the combobox input while no option has focus.\n\n if (event.key === \"ArrowLeft\") return;\n if (event.key === \"ArrowRight\") return;\n if (event.key === \"Home\") return;\n if (event.key === \"End\") return;\n\n if (!event.ctrlKey && !event.altKey && !event.shiftKey && !event.metaKey && (event.key === \"ArrowUp\" || event.key === \"ArrowDown\" || event.key.length === 1)) {\n var _options$show3;\n\n // Up/Down arrow keys and printable characters should open the\n // combobox popover.\n (_options$show3 = options.show) === null || _options$show3 === void 0 ? void 0 : _options$show3.call(options);\n }\n\n (_compositeHTMLProps$o2 = compositeHTMLProps.onKeyDown) === null || _compositeHTMLProps$o2 === void 0 ? void 0 : _compositeHTMLProps$o2.call(compositeHTMLProps, event);\n }, [options.currentId, options.show, compositeHTMLProps.onKeyDown]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, compositeHTMLProps), {}, {\n onKeyDownCapture: onKeyDownCapture,\n onKeyDown: onKeyDown,\n onKeyUp: onKeyUp\n });\n }\n});\nvar unstable_Combobox = createComponent.createComponent({\n as: \"input\",\n memo: true,\n useHook: unstable_useCombobox\n});\n\nexports.unstable_Combobox = unstable_Combobox;\nexports.unstable_useCombobox = unstable_useCombobox;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar useSealedState = require('reakit-utils/useSealedState');\nvar useUpdateEffect = require('reakit-utils/useUpdateEffect');\nrequire('../Id/IdProvider.js');\nvar Id_IdState = require('../Id/IdState.js');\nvar isEmpty = require('reakit-utils/isEmpty');\nvar Form_utils_getIn = require('./utils/getIn.js');\nvar isPromise = require('reakit-utils/isPromise');\nvar isPlainObject = require('reakit-utils/isPlainObject');\nvar isObject = require('reakit-utils/isObject');\nvar Form_utils_setAllIn = require('./utils/setAllIn.js');\nrequire('reakit-utils/toArray');\nrequire('reakit-utils/isInteger');\nvar Form_utils_setIn = require('./utils/setIn.js');\n\nfunction filterAllEmpty(object) {\n if (Array.isArray(object)) {\n return object.filter(function (value) {\n if (isPlainObject.isPlainObject(value) || Array.isArray(value)) {\n return filterAllEmpty(value);\n }\n\n return true;\n });\n }\n\n var result = {};\n var keys = Object.keys(object);\n\n for (var _i = 0, _keys = keys; _i < _keys.length; _i++) {\n var key = _keys[_i];\n var k = key;\n var value = object[k];\n result[k] = isPlainObject.isPlainObject(value) || Array.isArray(value) ? filterAllEmpty(value) : object[k];\n }\n\n return result;\n}\n\nfunction hasMessages(errors) {\n return isObject.isObject(errors) && !isEmpty.isEmpty(errors);\n}\n\nfunction getMessages(stateMessages, actionMessages) {\n return !isEmpty.isEmpty(actionMessages) ? actionMessages : isEmpty.isEmpty(stateMessages) ? stateMessages : {};\n}\n\nfunction reducer(state, action) {\n switch (action.type) {\n case \"reset\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n values: state.initialValues,\n touched: {},\n errors: {},\n messages: {},\n valid: true,\n validating: false,\n submitting: false,\n submitFailed: 0,\n submitSucceed: 0\n });\n }\n\n case \"startValidate\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n validating: true\n });\n }\n\n case \"endValidate\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n validating: false,\n errors: getMessages(state.errors, action.errors),\n messages: getMessages(state.messages, action.messages),\n valid: !hasMessages(action.errors)\n });\n }\n\n case \"startSubmit\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n // @ts-ignore TS bug\n touched: Form_utils_setAllIn.unstable_setAllIn(state.values, true),\n submitting: true\n });\n }\n\n case \"endSubmit\":\n {\n var valid = !hasMessages(action.errors);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n valid: valid,\n submitting: false,\n errors: getMessages(state.errors, action.errors),\n messages: getMessages(state.messages, action.messages),\n submitSucceed: valid ? state.submitSucceed + 1 : state.submitSucceed,\n submitFailed: valid ? state.submitFailed : state.submitFailed + 1\n });\n }\n\n case \"update\":\n {\n var _name = action.name,\n _value = action.value;\n var nextValue = typeof _value === \"function\" ? _value(Form_utils_getIn.unstable_getIn(state.values, _name)) : _value;\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n values: Form_utils_setIn.unstable_setIn(state.values, _name, nextValue != null ? nextValue : \"\")\n });\n }\n\n case \"blur\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n touched: Form_utils_setIn.unstable_setIn(state.touched, action.name, true)\n });\n }\n\n case \"push\":\n {\n var array = Form_utils_getIn.unstable_getIn(state.values, action.name, []);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n values: Form_utils_setIn.unstable_setIn(state.values, action.name, [].concat(array, [action.value]))\n });\n }\n\n case \"remove\":\n {\n var _array = Form_utils_getIn.unstable_getIn(state.values, action.name, []).slice();\n\n delete _array[action.index];\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n values: Form_utils_setIn.unstable_setIn(state.values, action.name, _array)\n });\n }\n\n default:\n {\n throw new Error();\n }\n }\n}\n\nfunction unstable_useFormState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$value = _useSealedState.values,\n initialValues = _useSealedState$value === void 0 ? {} : _useSealedState$value,\n _useSealedState$valid = _useSealedState.validateOnBlur,\n validateOnBlur = _useSealedState$valid === void 0 ? true : _useSealedState$valid,\n _useSealedState$valid2 = _useSealedState.validateOnChange,\n validateOnChange = _useSealedState$valid2 === void 0 ? true : _useSealedState$valid2,\n _useSealedState$reset = _useSealedState.resetOnSubmitSucceed,\n resetOnSubmitSucceed = _useSealedState$reset === void 0 ? false : _useSealedState$reset,\n _useSealedState$reset2 = _useSealedState.resetOnUnmount,\n resetOnUnmount = _useSealedState$reset2 === void 0 ? true : _useSealedState$reset2,\n onValidate = _useSealedState.onValidate,\n onSubmit = _useSealedState.onSubmit,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"values\", \"validateOnBlur\", \"validateOnChange\", \"resetOnSubmitSucceed\", \"resetOnUnmount\", \"onValidate\", \"onSubmit\"]);\n\n var onValidateRef = useLiveRef.useLiveRef(typeof initialState !== \"function\" ? initialState.onValidate : onValidate);\n var onSubmitRef = useLiveRef.useLiveRef(typeof initialState !== \"function\" ? initialState.onSubmit : onSubmit);\n var id = Id_IdState.unstable_useIdState(sealed);\n\n var _React$useReducer = React.useReducer(reducer, {\n initialValues: initialValues,\n values: initialValues,\n touched: {},\n errors: {},\n messages: {},\n valid: true,\n validating: false,\n submitting: false,\n submitFailed: 0,\n submitSucceed: 0\n }),\n _React$useReducer$ = _React$useReducer[0],\n _ = _React$useReducer$.initialValues,\n state = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_React$useReducer$, [\"initialValues\"]),\n dispatch = _React$useReducer[1];\n\n var validate = React.useCallback(function (vals) {\n if (vals === void 0) {\n vals = state.values;\n }\n\n return new Promise(function (resolve) {\n if (onValidateRef.current) {\n var response = onValidateRef.current(vals);\n\n if (isPromise.isPromise(response)) {\n dispatch({\n type: \"startValidate\"\n });\n }\n\n resolve(Promise.resolve(response).then(function (messages) {\n dispatch({\n type: \"endValidate\",\n messages: messages\n });\n return messages;\n }));\n } else {\n resolve(undefined);\n }\n }).catch(function (errors) {\n dispatch({\n type: \"endValidate\",\n errors: errors\n });\n throw errors;\n });\n }, [state.values]);\n useUpdateEffect.useUpdateEffect(function () {\n if (validateOnChange) {\n validate().catch(function () {});\n }\n }, [validate, validateOnChange]);\n React.useEffect(function () {\n if (resetOnUnmount) {\n return function () {\n dispatch({\n type: \"reset\"\n });\n };\n }\n\n return undefined;\n }, [resetOnUnmount]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, id), state), {}, {\n values: state.values,\n validate: validate,\n reset: React.useCallback(function () {\n return dispatch({\n type: \"reset\"\n });\n }, []),\n submit: React.useCallback(function () {\n dispatch({\n type: \"startSubmit\"\n });\n return validate().then(function (validateMessages) {\n if (onSubmitRef.current) {\n return Promise.resolve(onSubmitRef.current(filterAllEmpty(state.values))).then(function (submitMessages) {\n var messages = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, validateMessages), submitMessages);\n\n dispatch({\n type: \"endSubmit\",\n messages: messages\n });\n });\n }\n\n return dispatch({\n type: \"endSubmit\",\n messages: validateMessages\n });\n }).then(function () {\n if (resetOnSubmitSucceed) {\n dispatch({\n type: \"reset\"\n });\n }\n }).catch(function (errors) {\n dispatch({\n type: \"endSubmit\",\n errors: errors\n });\n });\n }, [validate]),\n update: React.useCallback(function (name, value) {\n return dispatch({\n type: \"update\",\n name: name,\n value: value\n });\n }, []),\n blur: React.useCallback(function (name) {\n dispatch({\n type: \"blur\",\n name: name\n });\n\n if (validateOnBlur) {\n validate().catch(function () {});\n }\n }, [validate]),\n push: React.useCallback(function (name, value) {\n return dispatch({\n type: \"push\",\n name: name,\n value: value\n });\n }, []),\n remove: React.useCallback(function (name, index) {\n return dispatch({\n type: \"remove\",\n name: name,\n index: index\n });\n }, [])\n });\n}\n\nexports.unstable_useFormState = unstable_useFormState;\n","/**\n * Returns `true` if `event.target` and `event.currentTarget` are the same.\n */\nfunction isSelfTarget(event) {\n return event.target === event.currentTarget;\n}\n\nexport { isSelfTarget };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nrequire('reakit-warning');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('../Id/IdProvider.js');\nrequire('../Id/IdState.js');\nvar Disclosure_DisclosureState = require('../Disclosure/DisclosureState.js');\n\nfunction useDialogState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$modal = _useSealedState.modal,\n initialModal = _useSealedState$modal === void 0 ? true : _useSealedState$modal,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"modal\"]);\n\n var disclosure = Disclosure_DisclosureState.useDisclosureState(sealed);\n\n var _React$useState = React.useState(initialModal),\n modal = _React$useState[0],\n setModal = _React$useState[1];\n\n var disclosureRef = React.useRef(null);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, disclosure), {}, {\n modal: modal,\n setModal: setModal,\n unstable_disclosureRef: disclosureRef\n });\n}\n\nexports.useDialogState = useDialogState;\n","import { getDocument } from './getDocument.js';\n\n/**\n * Creates an `Event` in a way that also works on IE 11.\n *\n * @example\n * import { createEvent } from \"reakit-utils\";\n *\n * const el = document.getElementById(\"id\");\n * el.dispatchEvent(createEvent(el, \"blur\", { bubbles: false }));\n */\n\nfunction createEvent(element, type, eventInit) {\n if (typeof Event === \"function\") {\n return new Event(type, eventInit);\n } // IE 11 doesn't support Event constructors\n\n\n var event = getDocument(element).createEvent(\"Event\");\n event.initEvent(type, eventInit === null || eventInit === void 0 ? void 0 : eventInit.bubbles, eventInit === null || eventInit === void 0 ? void 0 : eventInit.cancelable);\n return event;\n}\n\nexport { createEvent };\n","import './getDocument.js';\nimport { matches } from './matches.js';\nimport { closest } from './closest.js';\nimport { getActiveElement } from './getActiveElement.js';\n\n/** @module tabbable */\nvar selector = \"input:not([type='hidden']):not([disabled]), select:not([disabled]), \" + \"textarea:not([disabled]), a[href], button:not([disabled]), [tabindex], \" + \"iframe, object, embed, area[href], audio[controls], video[controls], \" + \"[contenteditable]:not([contenteditable='false'])\";\n\nfunction isVisible(element) {\n var htmlElement = element;\n return htmlElement.offsetWidth > 0 || htmlElement.offsetHeight > 0 || element.getClientRects().length > 0;\n}\n\nfunction hasNegativeTabIndex(element) {\n var tabIndex = parseInt(element.getAttribute(\"tabindex\") || \"0\", 10);\n return tabIndex < 0;\n}\n/**\n * Checks whether `element` is focusable or not.\n *\n * @memberof tabbable\n *\n * @example\n * import { isFocusable } from \"reakit-utils\";\n *\n * isFocusable(document.querySelector(\"input\")); // true\n * isFocusable(document.querySelector(\"input[tabindex='-1']\")); // true\n * isFocusable(document.querySelector(\"input[hidden]\")); // false\n * isFocusable(document.querySelector(\"input:disabled\")); // false\n */\n\n\nfunction isFocusable(element) {\n return matches(element, selector) && isVisible(element);\n}\n/**\n * Checks whether `element` is tabbable or not.\n *\n * @memberof tabbable\n *\n * @example\n * import { isTabbable } from \"reakit-utils\";\n *\n * isTabbable(document.querySelector(\"input\")); // true\n * isTabbable(document.querySelector(\"input[tabindex='-1']\")); // false\n * isTabbable(document.querySelector(\"input[hidden]\")); // false\n * isTabbable(document.querySelector(\"input:disabled\")); // false\n */\n\nfunction isTabbable(element) {\n return isFocusable(element) && !hasNegativeTabIndex(element);\n}\n/**\n * Returns all the focusable elements in `container`.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n *\n * @returns {Element[]}\n */\n\nfunction getAllFocusableIn(container) {\n var allFocusable = Array.from(container.querySelectorAll(selector));\n allFocusable.unshift(container);\n return allFocusable.filter(isFocusable);\n}\n/**\n * Returns the first focusable element in `container`.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n *\n * @returns {Element|null}\n */\n\nfunction getFirstFocusableIn(container) {\n var _getAllFocusableIn = getAllFocusableIn(container),\n first = _getAllFocusableIn[0];\n\n return first || null;\n}\n/**\n * Returns all the tabbable elements in `container`, including the container\n * itself.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n * @param fallbackToFocusable If `true`, it'll return focusable elements if there are no tabbable ones.\n *\n * @returns {Element[]}\n */\n\nfunction getAllTabbableIn(container, fallbackToFocusable) {\n var allFocusable = Array.from(container.querySelectorAll(selector));\n var allTabbable = allFocusable.filter(isTabbable);\n\n if (isTabbable(container)) {\n allTabbable.unshift(container);\n }\n\n if (!allTabbable.length && fallbackToFocusable) {\n return allFocusable;\n }\n\n return allTabbable;\n}\n/**\n * Returns the first tabbable element in `container`, including the container\n * itself if it's tabbable.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n * @param fallbackToFocusable If `true`, it'll return the first focusable element if there are no tabbable ones.\n *\n * @returns {Element|null}\n */\n\nfunction getFirstTabbableIn(container, fallbackToFocusable) {\n var _getAllTabbableIn = getAllTabbableIn(container, fallbackToFocusable),\n first = _getAllTabbableIn[0];\n\n return first || null;\n}\n/**\n * Returns the last tabbable element in `container`, including the container\n * itself if it's tabbable.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n * @param fallbackToFocusable If `true`, it'll return the last focusable element if there are no tabbable ones.\n *\n * @returns {Element|null}\n */\n\nfunction getLastTabbableIn(container, fallbackToFocusable) {\n var allTabbable = getAllTabbableIn(container, fallbackToFocusable);\n return allTabbable[allTabbable.length - 1] || null;\n}\n/**\n * Returns the next tabbable element in `container`.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n * @param fallbackToFocusable If `true`, it'll return the next focusable element if there are no tabbable ones.\n *\n * @returns {Element|null}\n */\n\nfunction getNextTabbableIn(container, fallbackToFocusable) {\n var activeElement = getActiveElement(container);\n var allFocusable = getAllFocusableIn(container);\n var index = allFocusable.indexOf(activeElement);\n var slice = allFocusable.slice(index + 1);\n return slice.find(isTabbable) || allFocusable.find(isTabbable) || (fallbackToFocusable ? slice[0] : null);\n}\n/**\n * Returns the previous tabbable element in `container`.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n * @param fallbackToFocusable If `true`, it'll return the previous focusable element if there are no tabbable ones.\n *\n * @returns {Element|null}\n */\n\nfunction getPreviousTabbableIn(container, fallbackToFocusable) {\n var activeElement = getActiveElement(container);\n var allFocusable = getAllFocusableIn(container).reverse();\n var index = allFocusable.indexOf(activeElement);\n var slice = allFocusable.slice(index + 1);\n return slice.find(isTabbable) || allFocusable.find(isTabbable) || (fallbackToFocusable ? slice[0] : null);\n}\n/**\n * Returns the closest focusable element.\n *\n * @memberof tabbable\n *\n * @param {Element} container\n *\n * @returns {Element|null}\n */\n\nfunction getClosestFocusable(element) {\n while (element && !isFocusable(element)) {\n element = closest(element, selector);\n }\n\n return element;\n}\n\nexport { getAllFocusableIn, getAllTabbableIn, getClosestFocusable, getFirstFocusableIn, getFirstTabbableIn, getLastTabbableIn, getNextTabbableIn, getPreviousTabbableIn, isFocusable, isTabbable };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../../_rollupPluginBabelHelpers-8f9a8751.js');\nvar toArray = require('reakit-utils/toArray');\nvar isInteger = require('reakit-utils/isInteger');\n\nfunction unstable_setIn(object, path, value) {\n var _objectSpread2;\n\n var pathArray = toArray.toArray(path);\n var key = pathArray[0],\n keys = pathArray.slice(1);\n if (key == null) return object;\n var obj = isInteger.isInteger(key) ? object || [] : object || {};\n var result = keys.length ? unstable_setIn(obj[key], keys, value) : value;\n\n if (isInteger.isInteger(key)) {\n if (object) {\n return [].concat(object.slice(0, Number(key)), [result], object.slice(Number(key) + 1));\n }\n\n return [result];\n }\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, object), {}, (_objectSpread2 = {}, _objectSpread2[key] = result, _objectSpread2));\n}\n\nexports.unstable_setIn = unstable_setIn;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar Role_Role = require('../Role/Role.js');\nvar __keys = require('../__keys-087914ef.js');\n\nvar useMenuGroup = createHook.createHook({\n name: \"MenuGroup\",\n compose: Role_Role.useRole,\n keys: __keys.MENU_GROUP_KEYS,\n useProps: function useProps(_, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"group\"\n }, htmlProps);\n }\n});\nvar MenuGroup = createComponent.createComponent({\n as: \"div\",\n useHook: useMenuGroup\n});\n\nexports.MenuGroup = MenuGroup;\nexports.useMenuGroup = useMenuGroup;\n","var toPropertyKey = require(\"./toPropertyKey.js\");\nfunction _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\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 return obj;\n}\nmodule.exports = _defineProperty, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nrequire('../Role/Role.js');\nvar findEnabledItemById = require('../findEnabledItemById-03112678.js');\nvar __keys = require('../__keys-3b597476.js');\nrequire('../Id/IdProvider.js');\nvar Id_Id = require('../Id/Id.js');\nvar Group_Group = require('../Group/Group.js');\n\nvar useCompositeGroup = createHook.createHook({\n name: \"CompositeGroup\",\n compose: [Group_Group.useGroup, Id_Id.unstable_useId],\n keys: __keys.COMPOSITE_GROUP_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n if (!next.id || prev.id !== next.id) {\n return Group_Group.useGroup.unstable_propsAreEqual(prev, next);\n }\n\n var prevCurrentId = prev.currentId,\n prevMoves = prev.unstable_moves,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"currentId\", \"unstable_moves\"]);\n\n var nextCurrentId = next.currentId,\n nextMoves = next.unstable_moves,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"currentId\", \"unstable_moves\"]);\n\n if (prev.items && next.items) {\n var prevCurrentItem = findEnabledItemById.findEnabledItemById(prev.items, prevCurrentId);\n var nextCurrentItem = findEnabledItemById.findEnabledItemById(next.items, nextCurrentId);\n var prevGroupId = prevCurrentItem === null || prevCurrentItem === void 0 ? void 0 : prevCurrentItem.groupId;\n var nextGroupId = nextCurrentItem === null || nextCurrentItem === void 0 ? void 0 : nextCurrentItem.groupId;\n\n if (next.id === nextGroupId || next.id === prevGroupId) {\n return false;\n }\n }\n\n return Group_Group.useGroup.unstable_propsAreEqual(prevProps, nextProps);\n },\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\"]);\n\n var ref = React.useRef(null);\n var id = options.id; // We need this to be called before CompositeItems' register\n\n useIsomorphicEffect.useIsomorphicEffect(function () {\n var _options$registerGrou;\n\n if (!id) return undefined;\n (_options$registerGrou = options.registerGroup) === null || _options$registerGrou === void 0 ? void 0 : _options$registerGrou.call(options, {\n id: id,\n ref: ref\n });\n return function () {\n var _options$unregisterGr;\n\n (_options$unregisterGr = options.unregisterGroup) === null || _options$unregisterGr === void 0 ? void 0 : _options$unregisterGr.call(options, id);\n };\n }, [id, options.registerGroup, options.unregisterGroup]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef)\n }, htmlProps);\n }\n});\nvar CompositeGroup = createComponent.createComponent({\n as: \"div\",\n useHook: useCompositeGroup\n});\n\nexports.CompositeGroup = CompositeGroup;\nexports.useCompositeGroup = useCompositeGroup;\n","'use strict';\n\nvar _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-8f9a8751.js');\n\nfunction groupItems(items) {\n var groups = [[]];\n\n var _loop = function _loop() {\n var item = _step.value;\n var group = groups.find(function (g) {\n return !g[0] || g[0].groupId === item.groupId;\n });\n\n if (group) {\n group.push(item);\n } else {\n groups.push([item]);\n }\n };\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(items), _step; !(_step = _iterator()).done;) {\n _loop();\n }\n\n return groups;\n}\n\nfunction flatten(grid) {\n var flattened = [];\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(grid), _step; !(_step = _iterator()).done;) {\n var row = _step.value;\n flattened.push.apply(flattened, row);\n }\n\n return flattened;\n}\n\nfunction reverse(array) {\n return array.slice().reverse();\n}\n\nexports.flatten = flatten;\nexports.groupItems = groupItems;\nexports.reverse = reverse;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('../Role/Role.js');\nvar __keys = require('../__keys-087914ef.js');\nvar Separator_Separator = require('../Separator/Separator.js');\n\nvar useMenuSeparator = createHook.createHook({\n name: \"MenuSeparator\",\n compose: Separator_Separator.useSeparator,\n keys: __keys.MENU_SEPARATOR_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$orientation = _ref.orientation,\n orientation = _ref$orientation === void 0 ? \"vertical\" : _ref$orientation,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"orientation\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n orientation: orientation === \"vertical\" ? \"horizontal\" : \"vertical\"\n }, options);\n }\n});\nvar MenuSeparator = createComponent.createComponent({\n as: \"hr\",\n memo: true,\n useHook: useMenuSeparator\n});\n\nexports.MenuSeparator = MenuSeparator;\nexports.useMenuSeparator = useMenuSeparator;\n","function isUpdater(argument) {\n return typeof argument === \"function\";\n}\n/**\n * Receives a `setState` argument and calls it with `currentValue` if it's a\n * function. Otherwise return the argument as the new value.\n *\n * @example\n * import { applyState } from \"reakit-utils\";\n *\n * applyState((value) => value + 1, 1); // 2\n * applyState(2, 1); // 2\n */\n\n\nfunction applyState(argument, currentValue) {\n if (isUpdater(argument)) {\n return argument(currentValue);\n }\n\n return argument;\n}\n\nexport { applyState };\n","module.exports=(()=>{var e={767:(e,t,r)=>{\"use strict\";Object.defineProperty(t,\"__esModule\",{value:!0}),t.OutbrainWidget=void 0;var a=Object.assign||function(e){for(var t=1;t{\"use strict\";var a=r(414);function n(){}function o(){}o.resetWarningCache=n,e.exports=function(){function e(e,t,r,n,o,l){if(l!==a){var u=new Error(\"Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types\");throw u.name=\"Invariant Violation\",u}}function t(){return e}e.isRequired=e;var r={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:o,resetWarningCache:n};return r.PropTypes=r,r}},697:(e,t,r)=>{e.exports=r(703)()},414:e=>{\"use strict\";e.exports=\"SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED\"},297:e=>{\"use strict\";e.exports=require(\"react\")}},t={};return function r(a){if(t[a])return t[a].exports;var n=t[a]={exports:{}};return e[a](n,n.exports,r),n.exports}(767)})();","'use strict';\n\n// Automatically generated\nvar FORM_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"values\", \"touched\", \"messages\", \"errors\", \"validating\", \"valid\", \"submitting\", \"submitSucceed\", \"submitFailed\", \"setBaseId\", \"reset\", \"validate\", \"submit\", \"update\", \"blur\", \"push\", \"remove\"];\nvar FORM_KEYS = FORM_STATE_KEYS;\nvar FORM_CHECKBOX_KEYS = [].concat(FORM_KEYS, [\"name\", \"value\"]);\nvar FORM_GROUP_KEYS = [].concat(FORM_KEYS, [\"name\"]);\nvar FORM_INPUT_KEYS = FORM_GROUP_KEYS;\nvar FORM_LABEL_KEYS = [].concat(FORM_INPUT_KEYS, [\"label\"]);\nvar FORM_MESSAGE_KEYS = FORM_INPUT_KEYS;\nvar FORM_PUSH_BUTTON_KEYS = [].concat(FORM_MESSAGE_KEYS, FORM_CHECKBOX_KEYS);\nvar FORM_RADIO_KEYS = FORM_PUSH_BUTTON_KEYS;\nvar FORM_RADIO_GROUP_KEYS = FORM_MESSAGE_KEYS;\nvar FORM_REMOVE_BUTTON_KEYS = [].concat(FORM_RADIO_GROUP_KEYS, [\"index\"]);\nvar FORM_SUBMIT_BUTTON_KEYS = FORM_KEYS;\n\nexports.FORM_CHECKBOX_KEYS = FORM_CHECKBOX_KEYS;\nexports.FORM_GROUP_KEYS = FORM_GROUP_KEYS;\nexports.FORM_INPUT_KEYS = FORM_INPUT_KEYS;\nexports.FORM_KEYS = FORM_KEYS;\nexports.FORM_LABEL_KEYS = FORM_LABEL_KEYS;\nexports.FORM_MESSAGE_KEYS = FORM_MESSAGE_KEYS;\nexports.FORM_PUSH_BUTTON_KEYS = FORM_PUSH_BUTTON_KEYS;\nexports.FORM_RADIO_GROUP_KEYS = FORM_RADIO_GROUP_KEYS;\nexports.FORM_RADIO_KEYS = FORM_RADIO_KEYS;\nexports.FORM_REMOVE_BUTTON_KEYS = FORM_REMOVE_BUTTON_KEYS;\nexports.FORM_SUBMIT_BUTTON_KEYS = FORM_SUBMIT_BUTTON_KEYS;\n","var _typeof = require(\"./typeof.js\")[\"default\"];\nvar toPrimitive = require(\"./toPrimitive.js\");\nfunction _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}\nmodule.exports = _toPropertyKey, module.exports.__esModule = true, module.exports[\"default\"] = module.exports;","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar isSelfTarget = require('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nvar hasFocusWithin = require('reakit-utils/hasFocusWithin');\nvar isPortalEvent = require('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar Clickable_Clickable = require('../Clickable/Clickable.js');\nvar getDocument = require('reakit-utils/getDocument');\nvar getCurrentId = require('../getCurrentId-eade2850.js');\nvar __keys = require('../__keys-3b597476.js');\nvar userFocus = require('../userFocus-0afea51a.js');\nvar isTextField = require('reakit-utils/isTextField');\nvar ensureFocus = require('reakit-utils/ensureFocus');\nrequire('../Id/IdProvider.js');\nvar Id_Id = require('../Id/Id.js');\nrequire('reakit-utils/fireEvent');\nvar setTextFieldValue = require('../setTextFieldValue-b0584ae1.js');\n\nfunction getWidget(itemElement) {\n return itemElement.querySelector(\"[data-composite-item-widget]\");\n}\n\nfunction useItem(options) {\n return React.useMemo(function () {\n var _options$items;\n\n return (_options$items = options.items) === null || _options$items === void 0 ? void 0 : _options$items.find(function (item) {\n return options.id && item.id === options.id;\n });\n }, [options.items, options.id]);\n}\n\nfunction targetIsAnotherItem(event, items) {\n if (isSelfTarget.isSelfTarget(event)) return false;\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(items), _step; !(_step = _iterator()).done;) {\n var item = _step.value;\n\n if (item.ref.current === event.target) {\n return true;\n }\n }\n\n return false;\n}\n\nvar useCompositeItem = createHook.createHook({\n name: \"CompositeItem\",\n compose: [Clickable_Clickable.useClickable, Id_Id.unstable_useId],\n keys: __keys.COMPOSITE_ITEM_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n if (!next.id || prev.id !== next.id) {\n return Clickable_Clickable.useClickable.unstable_propsAreEqual(prev, next);\n }\n\n var prevCurrentId = prev.currentId,\n prevMoves = prev.unstable_moves,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"currentId\", \"unstable_moves\"]);\n\n var nextCurrentId = next.currentId,\n nextMoves = next.unstable_moves,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"currentId\", \"unstable_moves\"]);\n\n if (nextCurrentId !== prevCurrentId) {\n if (next.id === nextCurrentId || next.id === prevCurrentId) {\n return false;\n }\n } else if (prevMoves !== nextMoves) {\n return false;\n }\n\n return Clickable_Clickable.useClickable.unstable_propsAreEqual(prevProps, nextProps);\n },\n useOptions: function useOptions(options) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n id: options.id,\n currentId: getCurrentId.getCurrentId(options),\n unstable_clickOnSpace: options.unstable_hasActiveWidget ? false : options.unstable_clickOnSpace\n });\n },\n useProps: function useProps(options, _ref) {\n var _options$items2;\n\n var htmlRef = _ref.ref,\n _ref$tabIndex = _ref.tabIndex,\n htmlTabIndex = _ref$tabIndex === void 0 ? 0 : _ref$tabIndex,\n htmlOnMouseDown = _ref.onMouseDown,\n htmlOnFocus = _ref.onFocus,\n htmlOnBlurCapture = _ref.onBlurCapture,\n htmlOnKeyDown = _ref.onKeyDown,\n htmlOnClick = _ref.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\", \"tabIndex\", \"onMouseDown\", \"onFocus\", \"onBlurCapture\", \"onKeyDown\", \"onClick\"]);\n\n var ref = React.useRef(null);\n var id = options.id;\n var trulyDisabled = options.disabled && !options.focusable;\n var isCurrentItem = options.currentId === id;\n var isCurrentItemRef = useLiveRef.useLiveRef(isCurrentItem);\n var hasFocusedComposite = React.useRef(false);\n var item = useItem(options);\n var onMouseDownRef = useLiveRef.useLiveRef(htmlOnMouseDown);\n var onFocusRef = useLiveRef.useLiveRef(htmlOnFocus);\n var onBlurCaptureRef = useLiveRef.useLiveRef(htmlOnBlurCapture);\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var shouldTabIndex = !options.unstable_virtual && !options.unstable_hasActiveWidget && isCurrentItem || // We don't want to set tabIndex=\"-1\" when using CompositeItem as a\n // standalone component, without state props.\n !((_options$items2 = options.items) !== null && _options$items2 !== void 0 && _options$items2.length);\n React.useEffect(function () {\n var _options$registerItem;\n\n if (!id) return undefined;\n (_options$registerItem = options.registerItem) === null || _options$registerItem === void 0 ? void 0 : _options$registerItem.call(options, {\n id: id,\n ref: ref,\n disabled: !!trulyDisabled\n });\n return function () {\n var _options$unregisterIt;\n\n (_options$unregisterIt = options.unregisterItem) === null || _options$unregisterIt === void 0 ? void 0 : _options$unregisterIt.call(options, id);\n };\n }, [id, trulyDisabled, options.registerItem, options.unregisterItem]);\n React.useEffect(function () {\n var element = ref.current;\n\n if (!element) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(true, \"Can't focus composite item component because `ref` wasn't passed to component.\", \"See https://reakit.io/docs/composite\") : void 0;\n return;\n } // `moves` will be incremented whenever next, previous, up, down, first,\n // last or move have been called. This means that the composite item will\n // be focused whenever some of these functions are called. We're using\n // isCurrentItemRef instead of isCurrentItem because we don't want to\n // focus the item if isCurrentItem changes (and options.moves doesn't).\n\n\n if (options.unstable_moves && isCurrentItemRef.current) {\n userFocus.userFocus(element);\n }\n }, [options.unstable_moves]);\n var onMouseDown = React.useCallback(function (event) {\n var _onMouseDownRef$curre;\n\n (_onMouseDownRef$curre = onMouseDownRef.current) === null || _onMouseDownRef$curre === void 0 ? void 0 : _onMouseDownRef$curre.call(onMouseDownRef, event);\n userFocus.setUserFocus(event.currentTarget, true);\n }, []);\n var onFocus = React.useCallback(function (event) {\n var _onFocusRef$current, _options$setCurrentId;\n\n var shouldFocusComposite = userFocus.hasUserFocus(event.currentTarget);\n userFocus.setUserFocus(event.currentTarget, false);\n (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);\n if (event.defaultPrevented) return;\n if (isPortalEvent.isPortalEvent(event)) return;\n if (!id) return;\n if (targetIsAnotherItem(event, options.items)) return;\n (_options$setCurrentId = options.setCurrentId) === null || _options$setCurrentId === void 0 ? void 0 : _options$setCurrentId.call(options, id); // When using aria-activedescendant, we want to make sure that the\n // composite container receives focus, not the composite item.\n // But we don't want to do this if the target is another focusable\n // element inside the composite item, such as CompositeItemWidget.\n\n if (shouldFocusComposite && options.unstable_virtual && options.baseId && isSelfTarget.isSelfTarget(event)) {\n var target = event.target;\n var composite = getDocument.getDocument(target).getElementById(options.baseId);\n\n if (composite) {\n hasFocusedComposite.current = true;\n ensureFocus.ensureFocus(composite);\n }\n }\n }, [id, options.items, options.setCurrentId, options.unstable_virtual, options.baseId]);\n var onBlurCapture = React.useCallback(function (event) {\n var _onBlurCaptureRef$cur;\n\n (_onBlurCaptureRef$cur = onBlurCaptureRef.current) === null || _onBlurCaptureRef$cur === void 0 ? void 0 : _onBlurCaptureRef$cur.call(onBlurCaptureRef, event);\n if (event.defaultPrevented) return;\n\n if (options.unstable_virtual && hasFocusedComposite.current) {\n // When hasFocusedComposite is true, composite has been focused right\n // after focusing this item. This is an intermediate blur event, so\n // we ignore it.\n hasFocusedComposite.current = false;\n event.preventDefault();\n event.stopPropagation();\n }\n }, [options.unstable_virtual]);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current;\n\n if (!isSelfTarget.isSelfTarget(event)) return;\n var isVertical = options.orientation !== \"horizontal\";\n var isHorizontal = options.orientation !== \"vertical\";\n var isGrid = !!(item !== null && item !== void 0 && item.groupId);\n var keyMap = {\n ArrowUp: (isGrid || isVertical) && options.up,\n ArrowRight: (isGrid || isHorizontal) && options.next,\n ArrowDown: (isGrid || isVertical) && options.down,\n ArrowLeft: (isGrid || isHorizontal) && options.previous,\n Home: function Home() {\n if (!isGrid || event.ctrlKey) {\n var _options$first;\n\n (_options$first = options.first) === null || _options$first === void 0 ? void 0 : _options$first.call(options);\n } else {\n var _options$previous;\n\n (_options$previous = options.previous) === null || _options$previous === void 0 ? void 0 : _options$previous.call(options, true);\n }\n },\n End: function End() {\n if (!isGrid || event.ctrlKey) {\n var _options$last;\n\n (_options$last = options.last) === null || _options$last === void 0 ? void 0 : _options$last.call(options);\n } else {\n var _options$next;\n\n (_options$next = options.next) === null || _options$next === void 0 ? void 0 : _options$next.call(options, true);\n }\n },\n PageUp: function PageUp() {\n if (isGrid) {\n var _options$up;\n\n (_options$up = options.up) === null || _options$up === void 0 ? void 0 : _options$up.call(options, true);\n } else {\n var _options$first2;\n\n (_options$first2 = options.first) === null || _options$first2 === void 0 ? void 0 : _options$first2.call(options);\n }\n },\n PageDown: function PageDown() {\n if (isGrid) {\n var _options$down;\n\n (_options$down = options.down) === null || _options$down === void 0 ? void 0 : _options$down.call(options, true);\n } else {\n var _options$last2;\n\n (_options$last2 = options.last) === null || _options$last2 === void 0 ? void 0 : _options$last2.call(options);\n }\n }\n };\n var action = keyMap[event.key];\n\n if (action) {\n event.preventDefault();\n action();\n return;\n }\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);\n if (event.defaultPrevented) return;\n\n if (event.key.length === 1 && event.key !== \" \") {\n var widget = getWidget(event.currentTarget);\n\n if (widget && isTextField.isTextField(widget)) {\n widget.focus();\n setTextFieldValue.setTextFieldValue(widget, \"\");\n }\n } else if (event.key === \"Delete\" || event.key === \"Backspace\") {\n var _widget = getWidget(event.currentTarget);\n\n if (_widget && isTextField.isTextField(_widget)) {\n event.preventDefault();\n setTextFieldValue.setTextFieldValue(_widget, \"\");\n }\n }\n }, [options.orientation, item, options.up, options.next, options.down, options.previous, options.first, options.last]);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n var element = event.currentTarget;\n var widget = getWidget(element);\n\n if (widget && !hasFocusWithin.hasFocusWithin(widget)) {\n // If there's a widget inside the composite item, we make sure it's\n // focused when pressing enter, space or clicking on the composite item.\n widget.focus();\n }\n }, []);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n id: id,\n tabIndex: shouldTabIndex ? htmlTabIndex : -1,\n \"aria-selected\": options.unstable_virtual && isCurrentItem ? true : undefined,\n onMouseDown: onMouseDown,\n onFocus: onFocus,\n onBlurCapture: onBlurCapture,\n onKeyDown: onKeyDown,\n onClick: onClick\n }, htmlProps);\n }\n});\nvar CompositeItem = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useCompositeItem\n});\n\nexports.CompositeItem = CompositeItem;\nexports.useCompositeItem = useCompositeItem;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nrequire('../Composite/CompositeState.js');\nvar Grid_GridState = require('../Grid/GridState.js');\nvar ComboboxBaseState = require('../ComboboxBaseState-cfd43319.js');\n\nfunction chunk(array, size) {\n var chunks = [];\n\n for (var i = 0, j = array.length; i < j; i += size) {\n chunks.push(array.slice(i, i + size));\n }\n\n return chunks;\n}\n\nfunction unstable_useComboboxListGridState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$colum = _useSealedState.columns,\n initialColumns = _useSealedState$colum === void 0 ? 1 : _useSealedState$colum,\n _useSealedState$curre = _useSealedState.currentId,\n currentId = _useSealedState$curre === void 0 ? null : _useSealedState$curre,\n _useSealedState$loop = _useSealedState.loop,\n loop = _useSealedState$loop === void 0 ? true : _useSealedState$loop,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"columns\", \"currentId\", \"loop\"]);\n\n var _React$useState = React.useState(initialColumns),\n columns = _React$useState[0],\n setColumns = _React$useState[1];\n\n var grid = Grid_GridState.unstable_useGridState(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({\n currentId: currentId,\n loop: loop\n }, sealed), {}, {\n unstable_virtual: true,\n unstable_includesBaseElement: true\n }));\n var combobox = ComboboxBaseState.useComboboxBaseState(grid, sealed);\n var matches = React.useMemo(function () {\n return chunk(combobox.matches, columns);\n }, [combobox.matches, columns]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, combobox), {}, {\n menuRole: \"grid\",\n columns: columns,\n matches: matches,\n setColumns: setColumns\n });\n}\n\nexports.unstable_useComboboxListGridState = unstable_useComboboxListGridState;\n","/**\n * Returns `element.ownerDocument || document`.\n */\nfunction getDocument(element) {\n return element ? element.ownerDocument || element : document;\n}\n\nexport { getDocument };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../../_rollupPluginBabelHelpers-8f9a8751.js');\n\nfunction unstable_getIn(object, path, defaultValue) {\n if (typeof path === \"string\") {\n return object[path] == null ? defaultValue : object[path];\n }\n\n var result = object;\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(path), _step; !(_step = _iterator()).done;) {\n var key = _step.value;\n if (!(key in result)) return defaultValue;\n result = result[key];\n }\n\n if (result == null) {\n return defaultValue;\n }\n\n return result;\n}\n\nexports.unstable_getIn = unstable_getIn;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nvar useForkRef = require('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar isSelfTarget = require('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nvar Role_Role = require('../Role/Role.js');\nvar Tabbable_Tabbable = require('../Tabbable/Tabbable.js');\nvar useCreateElement = require('reakit-system/useCreateElement');\nvar getDocument = require('reakit-utils/getDocument');\nvar fireBlurEvent = require('reakit-utils/fireBlurEvent');\nvar fireKeyboardEvent = require('reakit-utils/fireKeyboardEvent');\nvar canUseDOM = require('reakit-utils/canUseDOM');\nvar getNextActiveElementOnBlur = require('reakit-utils/getNextActiveElementOnBlur');\nvar reverse = require('../reverse-4756a49e.js');\nvar getCurrentId = require('../getCurrentId-eade2850.js');\nvar findEnabledItemById = require('../findEnabledItemById-03112678.js');\nvar __keys = require('../__keys-3b597476.js');\nvar userFocus = require('../userFocus-0afea51a.js');\n\nvar isIE11 = canUseDOM.canUseDOM && \"msCrypto\" in window;\n\nfunction canProxyKeyboardEvent(event) {\n if (!isSelfTarget.isSelfTarget(event)) return false;\n if (event.metaKey) return false;\n if (event.key === \"Tab\") return false;\n return true;\n}\n\nfunction useKeyboardEventProxy(virtual, currentItem, htmlEventHandler) {\n var eventHandlerRef = useLiveRef.useLiveRef(htmlEventHandler);\n return React.useCallback(function (event) {\n var _eventHandlerRef$curr;\n\n (_eventHandlerRef$curr = eventHandlerRef.current) === null || _eventHandlerRef$curr === void 0 ? void 0 : _eventHandlerRef$curr.call(eventHandlerRef, event);\n if (event.defaultPrevented) return;\n\n if (virtual && canProxyKeyboardEvent(event)) {\n var currentElement = currentItem === null || currentItem === void 0 ? void 0 : currentItem.ref.current;\n\n if (currentElement) {\n if (!fireKeyboardEvent.fireKeyboardEvent(currentElement, event.type, event)) {\n event.preventDefault();\n } // The event will be triggered on the composite item and then\n // propagated up to this composite element again, so we can pretend\n // that it wasn't called on this component in the first place.\n\n\n if (event.currentTarget.contains(currentElement)) {\n event.stopPropagation();\n }\n }\n }\n }, [virtual, currentItem]);\n} // istanbul ignore next\n\n\nfunction useActiveElementRef(elementRef) {\n var activeElementRef = React.useRef(null);\n React.useEffect(function () {\n var document = getDocument.getDocument(elementRef.current);\n\n var onFocus = function onFocus(event) {\n var target = event.target;\n activeElementRef.current = target;\n };\n\n document.addEventListener(\"focus\", onFocus, true);\n return function () {\n document.removeEventListener(\"focus\", onFocus, true);\n };\n }, []);\n return activeElementRef;\n}\n\nfunction findFirstEnabledItemInTheLastRow(items) {\n return getCurrentId.findFirstEnabledItem(reverse.flatten(reverse.reverse(reverse.groupItems(items))));\n}\n\nfunction isItem(items, element) {\n return items === null || items === void 0 ? void 0 : items.some(function (item) {\n return !!element && item.ref.current === element;\n });\n}\n\nfunction useScheduleUserFocus(currentItem) {\n var currentItemRef = useLiveRef.useLiveRef(currentItem);\n\n var _React$useReducer = React.useReducer(function (n) {\n return n + 1;\n }, 0),\n scheduled = _React$useReducer[0],\n schedule = _React$useReducer[1];\n\n React.useEffect(function () {\n var _currentItemRef$curre;\n\n var currentElement = (_currentItemRef$curre = currentItemRef.current) === null || _currentItemRef$curre === void 0 ? void 0 : _currentItemRef$curre.ref.current;\n\n if (scheduled && currentElement) {\n userFocus.userFocus(currentElement);\n }\n }, [scheduled]);\n return schedule;\n}\n\nvar useComposite = createHook.createHook({\n name: \"Composite\",\n compose: [Tabbable_Tabbable.useTabbable],\n keys: __keys.COMPOSITE_KEYS,\n useOptions: function useOptions(options) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n currentId: getCurrentId.getCurrentId(options)\n });\n },\n useProps: function useProps(options, _ref) {\n var htmlRef = _ref.ref,\n htmlOnFocusCapture = _ref.onFocusCapture,\n htmlOnFocus = _ref.onFocus,\n htmlOnBlurCapture = _ref.onBlurCapture,\n htmlOnKeyDown = _ref.onKeyDown,\n htmlOnKeyDownCapture = _ref.onKeyDownCapture,\n htmlOnKeyUpCapture = _ref.onKeyUpCapture,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"ref\", \"onFocusCapture\", \"onFocus\", \"onBlurCapture\", \"onKeyDown\", \"onKeyDownCapture\", \"onKeyUpCapture\"]);\n\n var ref = React.useRef(null);\n var currentItem = findEnabledItemById.findEnabledItemById(options.items, options.currentId);\n var previousElementRef = React.useRef(null);\n var onFocusCaptureRef = useLiveRef.useLiveRef(htmlOnFocusCapture);\n var onFocusRef = useLiveRef.useLiveRef(htmlOnFocus);\n var onBlurCaptureRef = useLiveRef.useLiveRef(htmlOnBlurCapture);\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var scheduleUserFocus = useScheduleUserFocus(currentItem); // IE 11 doesn't support event.relatedTarget, so we use the active element\n // ref instead.\n\n var activeElementRef = isIE11 ? useActiveElementRef(ref) : undefined;\n React.useEffect(function () {\n var element = ref.current;\n\n if (options.unstable_moves && !currentItem) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.warning(!element, \"Can't focus composite component because `ref` wasn't passed to component.\", \"See https://reakit.io/docs/composite\") : void 0; // If composite.move(null) has been called, the composite container\n // will receive focus.\n\n element === null || element === void 0 ? void 0 : element.focus();\n }\n }, [options.unstable_moves, currentItem]);\n var onKeyDownCapture = useKeyboardEventProxy(options.unstable_virtual, currentItem, htmlOnKeyDownCapture);\n var onKeyUpCapture = useKeyboardEventProxy(options.unstable_virtual, currentItem, htmlOnKeyUpCapture);\n var onFocusCapture = React.useCallback(function (event) {\n var _onFocusCaptureRef$cu;\n\n (_onFocusCaptureRef$cu = onFocusCaptureRef.current) === null || _onFocusCaptureRef$cu === void 0 ? void 0 : _onFocusCaptureRef$cu.call(onFocusCaptureRef, event);\n if (event.defaultPrevented) return;\n if (!options.unstable_virtual) return; // IE11 doesn't support event.relatedTarget, so we use the active\n // element ref instead.\n\n var previousActiveElement = (activeElementRef === null || activeElementRef === void 0 ? void 0 : activeElementRef.current) || event.relatedTarget;\n var previousActiveElementWasItem = isItem(options.items, previousActiveElement);\n\n if (isSelfTarget.isSelfTarget(event) && previousActiveElementWasItem) {\n // Composite has been focused as a result of an item receiving focus.\n // The composite item will move focus back to the composite\n // container. In this case, we don't want to propagate this\n // additional event nor call the onFocus handler passed to\n // .\n event.stopPropagation(); // We keep track of the previous active item element so we can\n // manually fire a blur event on it later when the focus is moved to\n // another item on the onBlurCapture event below.\n\n previousElementRef.current = previousActiveElement;\n }\n }, [options.unstable_virtual, options.items]);\n var onFocus = React.useCallback(function (event) {\n var _onFocusRef$current;\n\n (_onFocusRef$current = onFocusRef.current) === null || _onFocusRef$current === void 0 ? void 0 : _onFocusRef$current.call(onFocusRef, event);\n if (event.defaultPrevented) return;\n\n if (options.unstable_virtual) {\n if (isSelfTarget.isSelfTarget(event)) {\n // This means that the composite element has been focused while the\n // composite item has not. For example, by clicking on the\n // composite element without touching any item, or by tabbing into\n // the composite element. In this case, we want to trigger focus on\n // the item, just like it would happen with roving tabindex.\n // When it receives focus, the composite item will put focus back\n // on the composite element, in which case hasItemWithFocus will be\n // true.\n scheduleUserFocus();\n }\n } else if (isSelfTarget.isSelfTarget(event)) {\n var _options$setCurrentId;\n\n // When the roving tabindex composite gets intentionally focused (for\n // example, by clicking directly on it, and not on an item), we make\n // sure to set the current id to null (which means the composite\n // itself is focused).\n (_options$setCurrentId = options.setCurrentId) === null || _options$setCurrentId === void 0 ? void 0 : _options$setCurrentId.call(options, null);\n }\n }, [options.unstable_virtual, options.setCurrentId]);\n var onBlurCapture = React.useCallback(function (event) {\n var _onBlurCaptureRef$cur;\n\n (_onBlurCaptureRef$cur = onBlurCaptureRef.current) === null || _onBlurCaptureRef$cur === void 0 ? void 0 : _onBlurCaptureRef$cur.call(onBlurCaptureRef, event);\n if (event.defaultPrevented) return;\n if (!options.unstable_virtual) return; // When virtual is set to true, we move focus from the composite\n // container (this component) to the composite item that is being\n // selected. Then we move focus back to the composite container. This\n // is so we can provide the same API as the roving tabindex method,\n // which means people can attach onFocus/onBlur handlers on the\n // CompositeItem component regardless of whether it's virtual or not.\n // This sequence of blurring and focusing items and composite may be\n // confusing, so we ignore intermediate focus and blurs by stopping its\n // propagation and not calling the passed onBlur handler (htmlOnBlur).\n\n var currentElement = (currentItem === null || currentItem === void 0 ? void 0 : currentItem.ref.current) || null;\n var nextActiveElement = getNextActiveElementOnBlur.getNextActiveElementOnBlur(event);\n var nextActiveElementIsItem = isItem(options.items, nextActiveElement);\n\n if (isSelfTarget.isSelfTarget(event) && nextActiveElementIsItem) {\n // This is an intermediate blur event: blurring the composite\n // container to focus an item (nextActiveElement).\n if (nextActiveElement === currentElement) {\n // The next active element will be the same as the current item in\n // the state in two scenarios:\n // - Moving focus with keyboard: the state is updated before the\n // blur event is triggered, so here the current item is already\n // pointing to the next active element.\n // - Clicking on the current active item with a pointer: this\n // will trigger blur on the composite element and then the next\n // active element will be the same as the current item. Clicking on\n // an item other than the current one doesn't end up here as the\n // currentItem state will be updated only after it.\n if (previousElementRef.current && previousElementRef.current !== nextActiveElement) {\n // If there's a previous active item and it's not a click action,\n // then we fire a blur event on it so it will work just like if\n // it had DOM focus before (like when using roving tabindex).\n fireBlurEvent.fireBlurEvent(previousElementRef.current, event);\n }\n } else if (currentElement) {\n // This will be true when the next active element is not the\n // current element, but there's a current item. This will only\n // happen when clicking with a pointer on a different item, when\n // there's already an item selected, in which case currentElement\n // is the item that is getting blurred, and nextActiveElement is\n // the item that is being clicked.\n fireBlurEvent.fireBlurEvent(currentElement, event);\n } // We want to ignore intermediate blur events, so we stop its\n // propagation and return early so onFocus will not be called.\n\n\n event.stopPropagation();\n } else {\n var targetIsItem = isItem(options.items, event.target);\n\n if (!targetIsItem && currentElement) {\n // If target is not a composite item, it may be the composite\n // element itself (isSelfTarget) or a tabbable element inside the\n // composite widget. This may be triggered by clicking outside the\n // composite widget or by tabbing out of it. In either cases we\n // want to fire a blur event on the current item.\n fireBlurEvent.fireBlurEvent(currentElement, event);\n }\n }\n }, [options.unstable_virtual, options.items, currentItem]);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current, _options$groups;\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);\n if (event.defaultPrevented) return;\n if (options.currentId !== null) return;\n if (!isSelfTarget.isSelfTarget(event)) return;\n var isVertical = options.orientation !== \"horizontal\";\n var isHorizontal = options.orientation !== \"vertical\";\n var isGrid = !!((_options$groups = options.groups) !== null && _options$groups !== void 0 && _options$groups.length);\n\n var up = function up() {\n if (isGrid) {\n var item = findFirstEnabledItemInTheLastRow(options.items);\n\n if (item !== null && item !== void 0 && item.id) {\n var _options$move;\n\n (_options$move = options.move) === null || _options$move === void 0 ? void 0 : _options$move.call(options, item.id);\n }\n } else {\n var _options$last;\n\n (_options$last = options.last) === null || _options$last === void 0 ? void 0 : _options$last.call(options);\n }\n };\n\n var keyMap = {\n ArrowUp: (isGrid || isVertical) && up,\n ArrowRight: (isGrid || isHorizontal) && options.first,\n ArrowDown: (isGrid || isVertical) && options.first,\n ArrowLeft: (isGrid || isHorizontal) && options.last,\n Home: options.first,\n End: options.last,\n PageUp: options.first,\n PageDown: options.last\n };\n var action = keyMap[event.key];\n\n if (action) {\n event.preventDefault();\n action();\n }\n }, [options.currentId, options.orientation, options.groups, options.items, options.move, options.last, options.first]);\n return _rollupPluginBabelHelpers._objectSpread2({\n ref: useForkRef.useForkRef(ref, htmlRef),\n id: options.baseId,\n onFocus: onFocus,\n onFocusCapture: onFocusCapture,\n onBlurCapture: onBlurCapture,\n onKeyDownCapture: onKeyDownCapture,\n onKeyDown: onKeyDown,\n onKeyUpCapture: onKeyUpCapture,\n \"aria-activedescendant\": options.unstable_virtual ? (currentItem === null || currentItem === void 0 ? void 0 : currentItem.id) || undefined : undefined\n }, htmlProps);\n },\n useComposeProps: function useComposeProps(options, htmlProps) {\n htmlProps = Role_Role.useRole(options, htmlProps, true);\n var tabbableHTMLProps = Tabbable_Tabbable.useTabbable(options, htmlProps, true);\n\n if (options.unstable_virtual || options.currentId === null) {\n // Composite will only be tabbable by default if the focus is managed\n // using aria-activedescendant, which requires DOM focus on the container\n // element (the composite)\n return _rollupPluginBabelHelpers._objectSpread2({\n tabIndex: 0\n }, tabbableHTMLProps);\n }\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, htmlProps), {}, {\n ref: tabbableHTMLProps.ref\n });\n }\n});\nvar Composite = createComponent.createComponent({\n as: \"div\",\n useHook: useComposite,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/composite\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.Composite = Composite;\nexports.useComposite = useComposite;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _objectSpread = require('@babel/runtime/helpers/objectSpread2');\n\nfunction _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }\n\nvar _objectSpread__default = /*#__PURE__*/_interopDefaultLegacy(_objectSpread);\n\n/**\n * Adapted from React: https://github.com/facebook/react/blob/master/packages/shared/formatProdErrorMessage.js\n *\n * Do not require this module directly! Use normal throw error calls. These messages will be replaced with error codes\n * during build.\n * @param {number} code\n */\nfunction formatProdErrorMessage(code) {\n return \"Minified Redux error #\" + code + \"; visit https://redux.js.org/Errors?code=\" + code + \" for the full message or \" + 'use the non-minified dev environment for full errors. ';\n}\n\n// Inlined version of the `symbol-observable` polyfill\nvar $$observable = (function () {\n return typeof Symbol === 'function' && Symbol.observable || '@@observable';\n})();\n\n/**\n * These are private action types reserved by Redux.\n * For any unknown actions, you must return the current state.\n * If the current state is undefined, you must return the initial state.\n * Do not reference these action types directly in your code.\n */\nvar randomString = function randomString() {\n return Math.random().toString(36).substring(7).split('').join('.');\n};\n\nvar ActionTypes = {\n INIT: \"@@redux/INIT\" + randomString(),\n REPLACE: \"@@redux/REPLACE\" + randomString(),\n PROBE_UNKNOWN_ACTION: function PROBE_UNKNOWN_ACTION() {\n return \"@@redux/PROBE_UNKNOWN_ACTION\" + randomString();\n }\n};\n\n/**\n * @param {any} obj The object to inspect.\n * @returns {boolean} True if the argument appears to be a plain object.\n */\nfunction isPlainObject(obj) {\n if (typeof obj !== 'object' || obj === null) return false;\n var proto = obj;\n\n while (Object.getPrototypeOf(proto) !== null) {\n proto = Object.getPrototypeOf(proto);\n }\n\n return Object.getPrototypeOf(obj) === proto;\n}\n\n// Inlined / shortened version of `kindOf` from https://github.com/jonschlinkert/kind-of\nfunction miniKindOf(val) {\n if (val === void 0) return 'undefined';\n if (val === null) return 'null';\n var type = typeof val;\n\n switch (type) {\n case 'boolean':\n case 'string':\n case 'number':\n case 'symbol':\n case 'function':\n {\n return type;\n }\n }\n\n if (Array.isArray(val)) return 'array';\n if (isDate(val)) return 'date';\n if (isError(val)) return 'error';\n var constructorName = ctorName(val);\n\n switch (constructorName) {\n case 'Symbol':\n case 'Promise':\n case 'WeakMap':\n case 'WeakSet':\n case 'Map':\n case 'Set':\n return constructorName;\n } // other\n\n\n return type.slice(8, -1).toLowerCase().replace(/\\s/g, '');\n}\n\nfunction ctorName(val) {\n return typeof val.constructor === 'function' ? val.constructor.name : null;\n}\n\nfunction isError(val) {\n return val instanceof Error || typeof val.message === 'string' && val.constructor && typeof val.constructor.stackTraceLimit === 'number';\n}\n\nfunction isDate(val) {\n if (val instanceof Date) return true;\n return typeof val.toDateString === 'function' && typeof val.getDate === 'function' && typeof val.setDate === 'function';\n}\n\nfunction kindOf(val) {\n var typeOfVal = typeof val;\n\n if (process.env.NODE_ENV !== 'production') {\n typeOfVal = miniKindOf(val);\n }\n\n return typeOfVal;\n}\n\n/**\n * @deprecated\n *\n * **We recommend using the `configureStore` method\n * of the `@reduxjs/toolkit` package**, which replaces `createStore`.\n *\n * Redux Toolkit is our recommended approach for writing Redux logic today,\n * including store setup, reducers, data fetching, and more.\n *\n * **For more details, please read this Redux docs page:**\n * **https://redux.js.org/introduction/why-rtk-is-redux-today**\n *\n * `configureStore` from Redux Toolkit is an improved version of `createStore` that\n * simplifies setup and helps avoid common bugs.\n *\n * You should not be using the `redux` core package by itself today, except for learning purposes.\n * The `createStore` method from the core `redux` package will not be removed, but we encourage\n * all users to migrate to using Redux Toolkit for all Redux code.\n *\n * If you want to use `createStore` without this visual deprecation warning, use\n * the `legacy_createStore` import instead:\n *\n * `import { legacy_createStore as createStore} from 'redux'`\n *\n */\n\nfunction createStore(reducer, preloadedState, enhancer) {\n var _ref2;\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'function' || typeof enhancer === 'function' && typeof arguments[3] === 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(0) : 'It looks like you are passing several store enhancers to ' + 'createStore(). This is not supported. Instead, compose them ' + 'together to a single function. See https://redux.js.org/tutorials/fundamentals/part-4-store#creating-a-store-with-enhancers for an example.');\n }\n\n if (typeof preloadedState === 'function' && typeof enhancer === 'undefined') {\n enhancer = preloadedState;\n preloadedState = undefined;\n }\n\n if (typeof enhancer !== 'undefined') {\n if (typeof enhancer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(1) : \"Expected the enhancer to be a function. Instead, received: '\" + kindOf(enhancer) + \"'\");\n }\n\n return enhancer(createStore)(reducer, preloadedState);\n }\n\n if (typeof reducer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(2) : \"Expected the root reducer to be a function. Instead, received: '\" + kindOf(reducer) + \"'\");\n }\n\n var currentReducer = reducer;\n var currentState = preloadedState;\n var currentListeners = [];\n var nextListeners = currentListeners;\n var isDispatching = false;\n /**\n * This makes a shallow copy of currentListeners so we can use\n * nextListeners as a temporary list while dispatching.\n *\n * This prevents any bugs around consumers calling\n * subscribe/unsubscribe in the middle of a dispatch.\n */\n\n function ensureCanMutateNextListeners() {\n if (nextListeners === currentListeners) {\n nextListeners = currentListeners.slice();\n }\n }\n /**\n * Reads the state tree managed by the store.\n *\n * @returns {any} The current state tree of your application.\n */\n\n\n function getState() {\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(3) : 'You may not call store.getState() while the reducer is executing. ' + 'The reducer has already received the state as an argument. ' + 'Pass it down from the top reducer instead of reading it from the store.');\n }\n\n return currentState;\n }\n /**\n * Adds a change listener. It will be called any time an action is dispatched,\n * and some part of the state tree may potentially have changed. You may then\n * call `getState()` to read the current state tree inside the callback.\n *\n * You may call `dispatch()` from a change listener, with the following\n * caveats:\n *\n * 1. The subscriptions are snapshotted just before every `dispatch()` call.\n * If you subscribe or unsubscribe while the listeners are being invoked, this\n * will not have any effect on the `dispatch()` that is currently in progress.\n * However, the next `dispatch()` call, whether nested or not, will use a more\n * recent snapshot of the subscription list.\n *\n * 2. The listener should not expect to see all state changes, as the state\n * might have been updated multiple times during a nested `dispatch()` before\n * the listener is called. It is, however, guaranteed that all subscribers\n * registered before the `dispatch()` started will be called with the latest\n * state by the time it exits.\n *\n * @param {Function} listener A callback to be invoked on every dispatch.\n * @returns {Function} A function to remove this change listener.\n */\n\n\n function subscribe(listener) {\n if (typeof listener !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(4) : \"Expected the listener to be a function. Instead, received: '\" + kindOf(listener) + \"'\");\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(5) : 'You may not call store.subscribe() while the reducer is executing. ' + 'If you would like to be notified after the store has been updated, subscribe from a ' + 'component and invoke store.getState() in the callback to access the latest state. ' + 'See https://redux.js.org/api/store#subscribelistener for more details.');\n }\n\n var isSubscribed = true;\n ensureCanMutateNextListeners();\n nextListeners.push(listener);\n return function unsubscribe() {\n if (!isSubscribed) {\n return;\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(6) : 'You may not unsubscribe from a store listener while the reducer is executing. ' + 'See https://redux.js.org/api/store#subscribelistener for more details.');\n }\n\n isSubscribed = false;\n ensureCanMutateNextListeners();\n var index = nextListeners.indexOf(listener);\n nextListeners.splice(index, 1);\n currentListeners = null;\n };\n }\n /**\n * Dispatches an action. It is the only way to trigger a state change.\n *\n * The `reducer` function, used to create the store, will be called with the\n * current state tree and the given `action`. Its return value will\n * be considered the **next** state of the tree, and the change listeners\n * will be notified.\n *\n * The base implementation only supports plain object actions. If you want to\n * dispatch a Promise, an Observable, a thunk, or something else, you need to\n * wrap your store creating function into the corresponding middleware. For\n * example, see the documentation for the `redux-thunk` package. Even the\n * middleware will eventually dispatch plain object actions using this method.\n *\n * @param {Object} action A plain object representing “what changed”. It is\n * a good idea to keep actions serializable so you can record and replay user\n * sessions, or use the time travelling `redux-devtools`. An action must have\n * a `type` property which may not be `undefined`. It is a good idea to use\n * string constants for action types.\n *\n * @returns {Object} For convenience, the same action object you dispatched.\n *\n * Note that, if you use a custom middleware, it may wrap `dispatch()` to\n * return something else (for example, a Promise you can await).\n */\n\n\n function dispatch(action) {\n if (!isPlainObject(action)) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(7) : \"Actions must be plain objects. Instead, the actual type was: '\" + kindOf(action) + \"'. You may need to add middleware to your store setup to handle dispatching other values, such as 'redux-thunk' to handle dispatching functions. See https://redux.js.org/tutorials/fundamentals/part-4-store#middleware and https://redux.js.org/tutorials/fundamentals/part-6-async-logic#using-the-redux-thunk-middleware for examples.\");\n }\n\n if (typeof action.type === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(8) : 'Actions may not have an undefined \"type\" property. You may have misspelled an action type string constant.');\n }\n\n if (isDispatching) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(9) : 'Reducers may not dispatch actions.');\n }\n\n try {\n isDispatching = true;\n currentState = currentReducer(currentState, action);\n } finally {\n isDispatching = false;\n }\n\n var listeners = currentListeners = nextListeners;\n\n for (var i = 0; i < listeners.length; i++) {\n var listener = listeners[i];\n listener();\n }\n\n return action;\n }\n /**\n * Replaces the reducer currently used by the store to calculate the state.\n *\n * You might need this if your app implements code splitting and you want to\n * load some of the reducers dynamically. You might also need this if you\n * implement a hot reloading mechanism for Redux.\n *\n * @param {Function} nextReducer The reducer for the store to use instead.\n * @returns {void}\n */\n\n\n function replaceReducer(nextReducer) {\n if (typeof nextReducer !== 'function') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(10) : \"Expected the nextReducer to be a function. Instead, received: '\" + kindOf(nextReducer));\n }\n\n currentReducer = nextReducer; // This action has a similiar effect to ActionTypes.INIT.\n // Any reducers that existed in both the new and old rootReducer\n // will receive the previous state. This effectively populates\n // the new state tree with any relevant data from the old one.\n\n dispatch({\n type: ActionTypes.REPLACE\n });\n }\n /**\n * Interoperability point for observable/reactive libraries.\n * @returns {observable} A minimal observable of state changes.\n * For more information, see the observable proposal:\n * https://github.com/tc39/proposal-observable\n */\n\n\n function observable() {\n var _ref;\n\n var outerSubscribe = subscribe;\n return _ref = {\n /**\n * The minimal observable subscription method.\n * @param {Object} observer Any object that can be used as an observer.\n * The observer object should have a `next` method.\n * @returns {subscription} An object with an `unsubscribe` method that can\n * be used to unsubscribe the observable from the store, and prevent further\n * emission of values from the observable.\n */\n subscribe: function subscribe(observer) {\n if (typeof observer !== 'object' || observer === null) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(11) : \"Expected the observer to be an object. Instead, received: '\" + kindOf(observer) + \"'\");\n }\n\n function observeState() {\n if (observer.next) {\n observer.next(getState());\n }\n }\n\n observeState();\n var unsubscribe = outerSubscribe(observeState);\n return {\n unsubscribe: unsubscribe\n };\n }\n }, _ref[$$observable] = function () {\n return this;\n }, _ref;\n } // When a store is created, an \"INIT\" action is dispatched so that every\n // reducer returns their initial state. This effectively populates\n // the initial state tree.\n\n\n dispatch({\n type: ActionTypes.INIT\n });\n return _ref2 = {\n dispatch: dispatch,\n subscribe: subscribe,\n getState: getState,\n replaceReducer: replaceReducer\n }, _ref2[$$observable] = observable, _ref2;\n}\n/**\n * Creates a Redux store that holds the state tree.\n *\n * **We recommend using `configureStore` from the\n * `@reduxjs/toolkit` package**, which replaces `createStore`:\n * **https://redux.js.org/introduction/why-rtk-is-redux-today**\n *\n * The only way to change the data in the store is to call `dispatch()` on it.\n *\n * There should only be a single store in your app. To specify how different\n * parts of the state tree respond to actions, you may combine several reducers\n * into a single reducer function by using `combineReducers`.\n *\n * @param {Function} reducer A function that returns the next state tree, given\n * the current state tree and the action to handle.\n *\n * @param {any} [preloadedState] The initial state. You may optionally specify it\n * to hydrate the state from the server in universal apps, or to restore a\n * previously serialized user session.\n * If you use `combineReducers` to produce the root reducer function, this must be\n * an object with the same shape as `combineReducers` keys.\n *\n * @param {Function} [enhancer] The store enhancer. You may optionally specify it\n * to enhance the store with third-party capabilities such as middleware,\n * time travel, persistence, etc. The only store enhancer that ships with Redux\n * is `applyMiddleware()`.\n *\n * @returns {Store} A Redux store that lets you read the state, dispatch actions\n * and subscribe to changes.\n */\n\nvar legacy_createStore = createStore;\n\n/**\n * Prints a warning in the console if it exists.\n *\n * @param {String} message The warning message.\n * @returns {void}\n */\nfunction warning(message) {\n /* eslint-disable no-console */\n if (typeof console !== 'undefined' && typeof console.error === 'function') {\n console.error(message);\n }\n /* eslint-enable no-console */\n\n\n try {\n // This error was thrown as a convenience so that if you enable\n // \"break on all exceptions\" in your console,\n // it would pause the execution at this line.\n throw new Error(message);\n } catch (e) {} // eslint-disable-line no-empty\n\n}\n\nfunction getUnexpectedStateShapeWarningMessage(inputState, reducers, action, unexpectedKeyCache) {\n var reducerKeys = Object.keys(reducers);\n var argumentName = action && action.type === ActionTypes.INIT ? 'preloadedState argument passed to createStore' : 'previous state received by the reducer';\n\n if (reducerKeys.length === 0) {\n return 'Store does not have a valid reducer. Make sure the argument passed ' + 'to combineReducers is an object whose values are reducers.';\n }\n\n if (!isPlainObject(inputState)) {\n return \"The \" + argumentName + \" has unexpected type of \\\"\" + kindOf(inputState) + \"\\\". Expected argument to be an object with the following \" + (\"keys: \\\"\" + reducerKeys.join('\", \"') + \"\\\"\");\n }\n\n var unexpectedKeys = Object.keys(inputState).filter(function (key) {\n return !reducers.hasOwnProperty(key) && !unexpectedKeyCache[key];\n });\n unexpectedKeys.forEach(function (key) {\n unexpectedKeyCache[key] = true;\n });\n if (action && action.type === ActionTypes.REPLACE) return;\n\n if (unexpectedKeys.length > 0) {\n return \"Unexpected \" + (unexpectedKeys.length > 1 ? 'keys' : 'key') + \" \" + (\"\\\"\" + unexpectedKeys.join('\", \"') + \"\\\" found in \" + argumentName + \". \") + \"Expected to find one of the known reducer keys instead: \" + (\"\\\"\" + reducerKeys.join('\", \"') + \"\\\". Unexpected keys will be ignored.\");\n }\n}\n\nfunction assertReducerShape(reducers) {\n Object.keys(reducers).forEach(function (key) {\n var reducer = reducers[key];\n var initialState = reducer(undefined, {\n type: ActionTypes.INIT\n });\n\n if (typeof initialState === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(12) : \"The slice reducer for key \\\"\" + key + \"\\\" returned undefined during initialization. \" + \"If the state passed to the reducer is undefined, you must \" + \"explicitly return the initial state. The initial state may \" + \"not be undefined. If you don't want to set a value for this reducer, \" + \"you can use null instead of undefined.\");\n }\n\n if (typeof reducer(undefined, {\n type: ActionTypes.PROBE_UNKNOWN_ACTION()\n }) === 'undefined') {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(13) : \"The slice reducer for key \\\"\" + key + \"\\\" returned undefined when probed with a random type. \" + (\"Don't try to handle '\" + ActionTypes.INIT + \"' or other actions in \\\"redux/*\\\" \") + \"namespace. They are considered private. Instead, you must return the \" + \"current state for any unknown actions, unless it is undefined, \" + \"in which case you must return the initial state, regardless of the \" + \"action type. The initial state may not be undefined, but can be null.\");\n }\n });\n}\n/**\n * Turns an object whose values are different reducer functions, into a single\n * reducer function. It will call every child reducer, and gather their results\n * into a single state object, whose keys correspond to the keys of the passed\n * reducer functions.\n *\n * @param {Object} reducers An object whose values correspond to different\n * reducer functions that need to be combined into one. One handy way to obtain\n * it is to use ES6 `import * as reducers` syntax. The reducers may never return\n * undefined for any action. Instead, they should return their initial state\n * if the state passed to them was undefined, and the current state for any\n * unrecognized action.\n *\n * @returns {Function} A reducer function that invokes every reducer inside the\n * passed object, and builds a state object with the same shape.\n */\n\n\nfunction combineReducers(reducers) {\n var reducerKeys = Object.keys(reducers);\n var finalReducers = {};\n\n for (var i = 0; i < reducerKeys.length; i++) {\n var key = reducerKeys[i];\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof reducers[key] === 'undefined') {\n warning(\"No reducer provided for key \\\"\" + key + \"\\\"\");\n }\n }\n\n if (typeof reducers[key] === 'function') {\n finalReducers[key] = reducers[key];\n }\n }\n\n var finalReducerKeys = Object.keys(finalReducers); // This is used to make sure we don't warn about the same\n // keys multiple times.\n\n var unexpectedKeyCache;\n\n if (process.env.NODE_ENV !== 'production') {\n unexpectedKeyCache = {};\n }\n\n var shapeAssertionError;\n\n try {\n assertReducerShape(finalReducers);\n } catch (e) {\n shapeAssertionError = e;\n }\n\n return function combination(state, action) {\n if (state === void 0) {\n state = {};\n }\n\n if (shapeAssertionError) {\n throw shapeAssertionError;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n var warningMessage = getUnexpectedStateShapeWarningMessage(state, finalReducers, action, unexpectedKeyCache);\n\n if (warningMessage) {\n warning(warningMessage);\n }\n }\n\n var hasChanged = false;\n var nextState = {};\n\n for (var _i = 0; _i < finalReducerKeys.length; _i++) {\n var _key = finalReducerKeys[_i];\n var reducer = finalReducers[_key];\n var previousStateForKey = state[_key];\n var nextStateForKey = reducer(previousStateForKey, action);\n\n if (typeof nextStateForKey === 'undefined') {\n var actionType = action && action.type;\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(14) : \"When called with an action of type \" + (actionType ? \"\\\"\" + String(actionType) + \"\\\"\" : '(unknown type)') + \", the slice reducer for key \\\"\" + _key + \"\\\" returned undefined. \" + \"To ignore an action, you must explicitly return the previous state. \" + \"If you want this reducer to hold no value, you can return null instead of undefined.\");\n }\n\n nextState[_key] = nextStateForKey;\n hasChanged = hasChanged || nextStateForKey !== previousStateForKey;\n }\n\n hasChanged = hasChanged || finalReducerKeys.length !== Object.keys(state).length;\n return hasChanged ? nextState : state;\n };\n}\n\nfunction bindActionCreator(actionCreator, dispatch) {\n return function () {\n return dispatch(actionCreator.apply(this, arguments));\n };\n}\n/**\n * Turns an object whose values are action creators, into an object with the\n * same keys, but with every function wrapped into a `dispatch` call so they\n * may be invoked directly. This is just a convenience method, as you can call\n * `store.dispatch(MyActionCreators.doSomething())` yourself just fine.\n *\n * For convenience, you can also pass an action creator as the first argument,\n * and get a dispatch wrapped function in return.\n *\n * @param {Function|Object} actionCreators An object whose values are action\n * creator functions. One handy way to obtain it is to use ES6 `import * as`\n * syntax. You may also pass a single function.\n *\n * @param {Function} dispatch The `dispatch` function available on your Redux\n * store.\n *\n * @returns {Function|Object} The object mimicking the original object, but with\n * every action creator wrapped into the `dispatch` call. If you passed a\n * function as `actionCreators`, the return value will also be a single\n * function.\n */\n\n\nfunction bindActionCreators(actionCreators, dispatch) {\n if (typeof actionCreators === 'function') {\n return bindActionCreator(actionCreators, dispatch);\n }\n\n if (typeof actionCreators !== 'object' || actionCreators === null) {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(16) : \"bindActionCreators expected an object or a function, but instead received: '\" + kindOf(actionCreators) + \"'. \" + \"Did you write \\\"import ActionCreators from\\\" instead of \\\"import * as ActionCreators from\\\"?\");\n }\n\n var boundActionCreators = {};\n\n for (var key in actionCreators) {\n var actionCreator = actionCreators[key];\n\n if (typeof actionCreator === 'function') {\n boundActionCreators[key] = bindActionCreator(actionCreator, dispatch);\n }\n }\n\n return boundActionCreators;\n}\n\n/**\n * Composes single-argument functions from right to left. The rightmost\n * function can take multiple arguments as it provides the signature for\n * the resulting composite function.\n *\n * @param {...Function} funcs The functions to compose.\n * @returns {Function} A function obtained by composing the argument functions\n * from right to left. For example, compose(f, g, h) is identical to doing\n * (...args) => f(g(h(...args))).\n */\nfunction compose() {\n for (var _len = arguments.length, funcs = new Array(_len), _key = 0; _key < _len; _key++) {\n funcs[_key] = arguments[_key];\n }\n\n if (funcs.length === 0) {\n return function (arg) {\n return arg;\n };\n }\n\n if (funcs.length === 1) {\n return funcs[0];\n }\n\n return funcs.reduce(function (a, b) {\n return function () {\n return a(b.apply(void 0, arguments));\n };\n });\n}\n\n/**\n * Creates a store enhancer that applies middleware to the dispatch method\n * of the Redux store. This is handy for a variety of tasks, such as expressing\n * asynchronous actions in a concise manner, or logging every action payload.\n *\n * See `redux-thunk` package as an example of the Redux middleware.\n *\n * Because middleware is potentially asynchronous, this should be the first\n * store enhancer in the composition chain.\n *\n * Note that each middleware will be given the `dispatch` and `getState` functions\n * as named arguments.\n *\n * @param {...Function} middlewares The middleware chain to be applied.\n * @returns {Function} A store enhancer applying the middleware.\n */\n\nfunction applyMiddleware() {\n for (var _len = arguments.length, middlewares = new Array(_len), _key = 0; _key < _len; _key++) {\n middlewares[_key] = arguments[_key];\n }\n\n return function (createStore) {\n return function () {\n var store = createStore.apply(void 0, arguments);\n\n var _dispatch = function dispatch() {\n throw new Error(process.env.NODE_ENV === \"production\" ? formatProdErrorMessage(15) : 'Dispatching while constructing your middleware is not allowed. ' + 'Other middleware would not be applied to this dispatch.');\n };\n\n var middlewareAPI = {\n getState: store.getState,\n dispatch: function dispatch() {\n return _dispatch.apply(void 0, arguments);\n }\n };\n var chain = middlewares.map(function (middleware) {\n return middleware(middlewareAPI);\n });\n _dispatch = compose.apply(void 0, chain)(store.dispatch);\n return _objectSpread__default['default'](_objectSpread__default['default']({}, store), {}, {\n dispatch: _dispatch\n });\n };\n };\n}\n\n/*\n * This is a dummy function to check if the function name has been altered by minification.\n * If the function has been minified and NODE_ENV !== 'production', warn the user.\n */\n\nfunction isCrushed() {}\n\nif (process.env.NODE_ENV !== 'production' && typeof isCrushed.name === 'string' && isCrushed.name !== 'isCrushed') {\n warning('You are currently using minified code outside of NODE_ENV === \"production\". ' + 'This means that you are running a slower development build of Redux. ' + 'You can use loose-envify (https://github.com/zertosh/loose-envify) for browserify ' + 'or setting mode to production in webpack (https://webpack.js.org/concepts/mode/) ' + 'to ensure you have the correct code for your production build.');\n}\n\nexports.__DO_NOT_USE__ActionTypes = ActionTypes;\nexports.applyMiddleware = applyMiddleware;\nexports.bindActionCreators = bindActionCreators;\nexports.combineReducers = combineReducers;\nexports.compose = compose;\nexports.createStore = createStore;\nexports.legacy_createStore = legacy_createStore;\n","import './getDocument.js';\nimport { createEvent } from './createEvent.js';\n\n/**\n * Creates and dispatches `Event` in a way that also works on IE 11.\n *\n * @example\n * import { fireEvent } from \"reakit-utils\";\n *\n * fireEvent(document.getElementById(\"id\"), \"blur\", {\n * bubbles: true,\n * cancelable: true,\n * });\n */\n\nfunction fireEvent(element, type, eventInit) {\n return element.dispatchEvent(createEvent(element, type, eventInit));\n}\n\nexport { fireEvent };\n","import { useDebugValue, useContext } from 'react';\nimport { SystemContext } from './SystemContext.js';\n\n/**\n * React custom hook that returns the value of any token defined in the\n * SystemContext. It's mainly used internally in [`useOptions`](#useoptions)\n * and [`useProps`](#useprops).\n *\n * @example\n * import { SystemProvider, useToken } from \"reakit-system\";\n *\n * const system = {\n * token: \"value\",\n * };\n *\n * function Component(props) {\n * const token = useToken(\"token\", \"default value\");\n * return {token}
;\n * }\n *\n * function App() {\n * return (\n * \n * \n * \n * );\n * }\n */\n\nfunction useToken(token, defaultValue) {\n useDebugValue(token);\n var context = useContext(SystemContext);\n return context[token] != null ? context[token] : defaultValue;\n}\n\nexport { useToken };\n","import 'react';\nimport './SystemContext.js';\nimport './useToken.js';\nimport { useProps } from './useProps.js';\nimport { b as _createForOfIteratorHelperLoose } from './_rollupPluginBabelHelpers-0c84a174.js';\nimport { useOptions } from './useOptions.js';\nimport { shallowEqual } from 'reakit-utils/shallowEqual';\nimport { toArray } from 'reakit-utils/toArray';\n\n/**\n * Creates a React custom hook that will return component props.\n *\n * @example\n * import { createHook } from \"reakit-system\";\n *\n * const useA = createHook({\n * name: \"A\",\n * keys: [\"url\"], // custom props/options keys\n * useProps(options, htmlProps) {\n * return {\n * ...htmlProps,\n * href: options.url,\n * };\n * },\n * });\n *\n * function A({ url, ...htmlProps }) {\n * const props = useA({ url }, htmlProps);\n * return ;\n * }\n *\n * @param options\n */\nfunction createHook(options) {\n var _options$useState, _composedHooks$;\n\n var composedHooks = toArray(options.compose);\n\n var __useOptions = function __useOptions(hookOptions, htmlProps) {\n // Call the current hook's useOptions first\n if (options.useOptions) {\n hookOptions = options.useOptions(hookOptions, htmlProps);\n } // If there's name, call useOptions from the system context\n\n\n if (options.name) {\n hookOptions = useOptions(options.name, hookOptions, htmlProps);\n } // Run composed hooks useOptions\n\n\n if (options.compose) {\n for (var _iterator = _createForOfIteratorHelperLoose(composedHooks), _step; !(_step = _iterator()).done;) {\n var hook = _step.value;\n hookOptions = hook.__useOptions(hookOptions, htmlProps);\n }\n }\n\n return hookOptions;\n };\n\n var useHook = function useHook(hookOptions, htmlProps, unstable_ignoreUseOptions) {\n if (hookOptions === void 0) {\n hookOptions = {};\n }\n\n if (htmlProps === void 0) {\n htmlProps = {};\n }\n\n if (unstable_ignoreUseOptions === void 0) {\n unstable_ignoreUseOptions = false;\n }\n\n // This won't execute when useHook was called from within another useHook\n if (!unstable_ignoreUseOptions) {\n hookOptions = __useOptions(hookOptions, htmlProps);\n } // Call the current hook's useProps\n\n\n if (options.useProps) {\n htmlProps = options.useProps(hookOptions, htmlProps);\n } // If there's name, call useProps from the system context\n\n\n if (options.name) {\n htmlProps = useProps(options.name, hookOptions, htmlProps);\n }\n\n if (options.compose) {\n if (options.useComposeOptions) {\n hookOptions = options.useComposeOptions(hookOptions, htmlProps);\n }\n\n if (options.useComposeProps) {\n htmlProps = options.useComposeProps(hookOptions, htmlProps);\n } else {\n for (var _iterator2 = _createForOfIteratorHelperLoose(composedHooks), _step2; !(_step2 = _iterator2()).done;) {\n var hook = _step2.value;\n htmlProps = hook(hookOptions, htmlProps, true);\n }\n }\n } // Remove undefined values from htmlProps\n\n\n var finalHTMLProps = {};\n var definedHTMLProps = htmlProps || {};\n\n for (var prop in definedHTMLProps) {\n if (definedHTMLProps[prop] !== undefined) {\n finalHTMLProps[prop] = definedHTMLProps[prop];\n }\n }\n\n return finalHTMLProps;\n };\n\n useHook.__useOptions = __useOptions;\n var composedKeys = composedHooks.reduce(function (keys, hook) {\n keys.push.apply(keys, hook.__keys || []);\n return keys;\n }, []); // It's used by createComponent to split option props (keys) and html props\n\n useHook.__keys = [].concat(composedKeys, ((_options$useState = options.useState) === null || _options$useState === void 0 ? void 0 : _options$useState.__keys) || [], options.keys || []);\n useHook.unstable_propsAreEqual = options.propsAreEqual || ((_composedHooks$ = composedHooks[0]) === null || _composedHooks$ === void 0 ? void 0 : _composedHooks$.unstable_propsAreEqual) || shallowEqual;\n\n if (process.env.NODE_ENV !== \"production\" && options.name) {\n Object.defineProperty(useHook, \"name\", {\n value: \"use\" + options.name\n });\n }\n\n return useHook;\n}\n\nexport { createHook };\n","import { useDebugValue } from 'react';\nimport './SystemContext.js';\nimport { useToken } from './useToken.js';\nimport { _ as _objectSpread2 } from './_rollupPluginBabelHelpers-0c84a174.js';\n\n/**\n * React custom hook that returns the options returned by a given\n * `use${name}Options` in the SystemContext.\n *\n * @example\n * import React from \"react\";\n * import { SystemProvider, useOptions } from \"reakit-system\";\n *\n * const system = {\n * useAOptions(options, htmlProps) {\n * return {\n * ...options,\n * url: htmlProps.href,\n * };\n * },\n * };\n *\n * function A({ url, ...htmlProps }) {\n * const options = useOptions(\"A\", { url }, htmlProps);\n * return ;\n * }\n *\n * function App() {\n * return (\n * \n * \n * It will convert href into url in useAOptions and then url into href in A\n * \n * \n * );\n * }\n */\n\nfunction useOptions(name, options, htmlProps) {\n if (options === void 0) {\n options = {};\n }\n\n if (htmlProps === void 0) {\n htmlProps = {};\n }\n\n var hookName = \"use\" + name + \"Options\";\n useDebugValue(hookName);\n var useHook = useToken(hookName);\n\n if (useHook) {\n return _objectSpread2(_objectSpread2({}, options), useHook(options, htmlProps));\n }\n\n return options;\n}\n\nexport { useOptions };\n","import { useDebugValue } from 'react';\nimport './SystemContext.js';\nimport { useToken } from './useToken.js';\n\n/**\n * React custom hook that returns the props returned by a given\n * `use${name}Props` in the SystemContext.\n *\n * @example\n * import { SystemProvider, useProps } from \"reakit-system\";\n *\n * const system = {\n * useAProps(options, htmlProps) {\n * return {\n * ...htmlProps,\n * href: options.url,\n * };\n * },\n * };\n *\n * function A({ url, ...htmlProps }) {\n * const props = useProps(\"A\", { url }, htmlProps);\n * return ;\n * }\n *\n * function App() {\n * return (\n * \n * It will convert url into href in useAProps\n * \n * );\n * }\n */\n\nfunction useProps(name, options, htmlProps) {\n if (options === void 0) {\n options = {};\n }\n\n if (htmlProps === void 0) {\n htmlProps = {};\n }\n\n var hookName = \"use\" + name + \"Props\";\n useDebugValue(hookName);\n var useHook = useToken(hookName);\n\n if (useHook) {\n return useHook(options, htmlProps);\n }\n\n return htmlProps;\n}\n\nexport { useProps };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-warning');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/dom');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('../Id/IdProvider.js');\nrequire('../Id/IdState.js');\nrequire('@popperjs/core');\nrequire('../Disclosure/DisclosureState.js');\nrequire('../Dialog/DialogState.js');\nvar Popover_PopoverState = require('../Popover/PopoverState.js');\nvar __globalState = require('../__globalState-de564b64.js');\n\nfunction useTooltipState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$place = _useSealedState.placement,\n placement = _useSealedState$place === void 0 ? \"top\" : _useSealedState$place,\n _useSealedState$unsta = _useSealedState.unstable_timeout,\n initialTimeout = _useSealedState$unsta === void 0 ? 0 : _useSealedState$unsta,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"placement\", \"unstable_timeout\"]);\n\n var _React$useState = React.useState(initialTimeout),\n timeout = _React$useState[0],\n setTimeout = _React$useState[1];\n\n var showTimeout = React.useRef(null);\n var hideTimeout = React.useRef(null);\n\n var _usePopoverState = Popover_PopoverState.usePopoverState(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, sealed), {}, {\n placement: placement\n })),\n modal = _usePopoverState.modal,\n setModal = _usePopoverState.setModal,\n popover = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_usePopoverState, [\"modal\", \"setModal\"]);\n\n var clearTimeouts = React.useCallback(function () {\n if (showTimeout.current !== null) {\n window.clearTimeout(showTimeout.current);\n }\n\n if (hideTimeout.current !== null) {\n window.clearTimeout(hideTimeout.current);\n }\n }, []);\n var hide = React.useCallback(function () {\n clearTimeouts();\n popover.hide(); // Let's give some time so people can move from a reference to another\n // and still show tooltips immediately\n\n hideTimeout.current = window.setTimeout(function () {\n __globalState.globalState.hide(popover.baseId);\n }, timeout);\n }, [clearTimeouts, popover.hide, timeout, popover.baseId]);\n var show = React.useCallback(function () {\n clearTimeouts();\n\n if (!timeout || __globalState.globalState.currentTooltipId) {\n // If there's no timeout or a tooltip visible already, we can show this\n // immediately\n __globalState.globalState.show(popover.baseId);\n popover.show();\n } else {\n // There may be a reference with focus whose tooltip is still not visible\n // In this case, we want to update it before it gets shown.\n __globalState.globalState.show(null); // Otherwise, wait a little bit to show the tooltip\n\n showTimeout.current = window.setTimeout(function () {\n __globalState.globalState.show(popover.baseId);\n popover.show();\n }, timeout);\n }\n }, [clearTimeouts, timeout, popover.show, popover.baseId]);\n React.useEffect(function () {\n return __globalState.globalState.subscribe(function (id) {\n if (id !== popover.baseId) {\n clearTimeouts();\n\n if (popover.visible) {\n // Make sure there will be only one tooltip visible\n popover.hide();\n }\n }\n });\n }, [popover.baseId, clearTimeouts, popover.visible, popover.hide]);\n React.useEffect(function () {\n return function () {\n clearTimeouts();\n __globalState.globalState.hide(popover.baseId);\n };\n }, [clearTimeouts, popover.baseId]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, popover), {}, {\n hide: hide,\n show: show,\n unstable_timeout: timeout,\n unstable_setTimeout: setTimeout\n });\n}\n\nexports.useTooltipState = useTooltipState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nvar Button_Button = require('../Button/Button.js');\nvar getDocument = require('reakit-utils/getDocument');\nvar __keys = require('../__keys-4b3c7cdc.js');\n\nfunction getFirstInvalidInput(baseId, target) {\n var document = getDocument.getDocument(target);\n var selector = \"[aria-invalid=true][id^=\" + baseId + \"]\";\n return document.querySelector(selector);\n}\n\nvar unstable_useFormSubmitButton = createHook.createHook({\n name: \"FormSubmitButton\",\n compose: Button_Button.useButton,\n keys: __keys.FORM_SUBMIT_BUTTON_KEYS,\n useOptions: function useOptions(options) {\n return _rollupPluginBabelHelpers._objectSpread2({\n disabled: options.submitting\n }, options);\n },\n useProps: function useProps(options, _ref) {\n var htmlOnClick = _ref.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onClick\"]);\n\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n var element = event.currentTarget;\n window.requestAnimationFrame(function () {\n var input = getFirstInvalidInput(options.baseId, element);\n input === null || input === void 0 ? void 0 : input.focus();\n\n if (input && \"select\" in input) {\n input.select();\n }\n });\n }, [options.baseId]);\n return _rollupPluginBabelHelpers._objectSpread2({\n type: \"submit\",\n onClick: onClick\n }, htmlProps);\n }\n});\nvar unstable_FormSubmitButton = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: unstable_useFormSubmitButton\n});\n\nexports.unstable_FormSubmitButton = unstable_FormSubmitButton;\nexports.unstable_useFormSubmitButton = unstable_useFormSubmitButton;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar Composite_Composite = require('../Composite/Composite.js');\nvar __keys = require('../__keys-403ff944.js');\n\nvar useToolbar = createHook.createHook({\n name: \"Toolbar\",\n compose: Composite_Composite.useComposite,\n keys: __keys.TOOLBAR_KEYS,\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"toolbar\",\n \"aria-orientation\": options.orientation\n }, htmlProps);\n }\n});\nvar Toolbar = createComponent.createComponent({\n as: \"div\",\n useHook: useToolbar,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/toolbar\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.Toolbar = Toolbar;\nexports.useToolbar = useToolbar;\n","import './getDocument.js';\nimport './getWindow.js';\nimport { canUseDOM } from './canUseDOM.js';\n\n/**\n * Checks if a given string exists in the user agent string.\n */\n\nfunction isUA(string) {\n if (!canUseDOM) return false;\n return window.navigator.userAgent.indexOf(string) !== -1;\n}\n\nexport { isUA };\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nvar useCreateElement = require('reakit-system/useCreateElement');\nrequire('reakit-utils/getDocument');\nrequire('reakit-utils/fireBlurEvent');\nrequire('reakit-utils/fireKeyboardEvent');\nrequire('reakit-utils/canUseDOM');\nrequire('reakit-utils/getNextActiveElementOnBlur');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../__keys-3b597476.js');\nrequire('../userFocus-0afea51a.js');\nvar Composite_Composite = require('../Composite/Composite.js');\nvar __keys = require('../__keys-f590d919.js');\n\nvar useTabList = createHook.createHook({\n name: \"TabList\",\n compose: Composite_Composite.useComposite,\n keys: __keys.TAB_LIST_KEYS,\n useProps: function useProps(options, htmlProps) {\n return _rollupPluginBabelHelpers._objectSpread2({\n role: \"tablist\",\n \"aria-orientation\": options.orientation\n }, htmlProps);\n }\n});\nvar TabList = createComponent.createComponent({\n as: \"div\",\n useHook: useTabList,\n useCreateElement: function useCreateElement$1(type, props, children) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(!props[\"aria-label\"] && !props[\"aria-labelledby\"], \"You should provide either `aria-label` or `aria-labelledby` props.\", \"See https://reakit.io/docs/tab\") : void 0;\n return useCreateElement.useCreateElement(type, props, children);\n }\n});\n\nexports.TabList = TabList;\nexports.useTabList = useTabList;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nvar shallowEqual = require('reakit-utils/shallowEqual');\n\n// Automatically generated\nvar BOX_KEYS = [\"unstable_system\"];\n\nvar useBox = createHook.createHook({\n name: \"Box\",\n keys: BOX_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n var prevSystem = prev.unstable_system,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"unstable_system\"]);\n\n var nextSystem = next.unstable_system,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"unstable_system\"]);\n\n if (prevSystem !== nextSystem && !shallowEqual.shallowEqual(prevSystem, nextSystem)) {\n return false;\n }\n\n return shallowEqual.shallowEqual(prevProps, nextProps);\n }\n});\nvar Box = createComponent.createComponent({\n as: \"div\",\n useHook: useBox\n});\n\nexports.Box = Box;\nexports.useBox = useBox;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nvar Button_Button = require('../Button/Button.js');\nvar __keys = require('../__keys-f41a441b.js');\n\nvar useDisclosure = createHook.createHook({\n name: \"Disclosure\",\n compose: Button_Button.useButton,\n keys: __keys.DISCLOSURE_KEYS,\n useProps: function useProps(options, _ref) {\n var htmlOnClick = _ref.onClick,\n ariaControls = _ref[\"aria-controls\"],\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"onClick\", \"aria-controls\"]);\n\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var controls = ariaControls ? ariaControls + \" \" + options.baseId : options.baseId;\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current, _options$toggle;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n (_options$toggle = options.toggle) === null || _options$toggle === void 0 ? void 0 : _options$toggle.call(options);\n }, [options.toggle]);\n return _rollupPluginBabelHelpers._objectSpread2({\n \"aria-expanded\": !!options.visible,\n \"aria-controls\": controls,\n onClick: onClick\n }, htmlProps);\n }\n});\nvar Disclosure = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useDisclosure\n});\n\nexports.Disclosure = Disclosure;\nexports.useDisclosure = useDisclosure;\n","'use strict';\n\nfunction formatInputName(name, separator) {\n if (separator === void 0) {\n separator = \".\";\n }\n\n if (Array.isArray(name)) return name.join(separator);\n return name;\n}\n\nfunction getInputId(name, baseId, suffix) {\n if (suffix === void 0) {\n suffix = \"\";\n }\n\n if (baseId) {\n return baseId + \"-\" + formatInputName(name, \"-\") + suffix;\n }\n\n return undefined;\n}\n\nexports.formatInputName = formatInputName;\nexports.getInputId = getInputId;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nvar Button_Button = require('../Button/Button.js');\nvar getDocument = require('reakit-utils/getDocument');\nvar __keys = require('../__keys-4b3c7cdc.js');\nvar getInputId = require('../getInputId-cbd3bbcc.js');\nvar getPushButtonId = require('../getPushButtonId-7a4ebc40.js');\n\nvar unstable_useFormRemoveButton = createHook.createHook({\n name: \"FormRemoveButton\",\n compose: Button_Button.useButton,\n keys: __keys.FORM_REMOVE_BUTTON_KEYS,\n useOptions: function useOptions(options, _ref) {\n var name = _ref.name;\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, options), {}, {\n name: options.name || name\n });\n },\n useProps: function useProps(options, _ref2) {\n var htmlOnClick = _ref2.onClick,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"onClick\"]);\n\n var onClickRef = useLiveRef.useLiveRef(htmlOnClick);\n var onClick = React.useCallback(function (event) {\n var _onClickRef$current, _options$remove;\n\n (_onClickRef$current = onClickRef.current) === null || _onClickRef$current === void 0 ? void 0 : _onClickRef$current.call(onClickRef, event);\n if (event.defaultPrevented) return;\n (_options$remove = options.remove) === null || _options$remove === void 0 ? void 0 : _options$remove.call(options, options.name, options.index);\n var inputId = getInputId.getInputId(options.name, options.baseId);\n if (!inputId) return;\n var document = getDocument.getDocument(event.currentTarget);\n window.requestAnimationFrame(function () {\n var selector = \"[id^=\\\"\" + inputId + \"-\\\"]\";\n var inputs = document.querySelectorAll(selector);\n\n if (inputs.length) {\n var inputsArray = Array.from(inputs);\n var nextIdx = inputsArray.reduce(function (final, input) {\n var match = input.id.match(new RegExp(inputId + \"-([0-9]+)\"));\n if (!match) return final;\n var idx = match[1];\n\n if (Number(idx) > final && options.index >= final) {\n return Number(idx);\n }\n\n return final;\n }, 0);\n var nextSelector = \"[id^=\\\"\" + inputId + \"-\" + nextIdx + \"\\\"]\";\n var input = document.querySelector(nextSelector);\n\n if (input) {\n input.focus();\n return;\n }\n }\n\n var pushButtonId = getPushButtonId.getPushButtonId(options.name, options.baseId);\n\n if (pushButtonId) {\n var pushButton = document.getElementById(pushButtonId);\n pushButton === null || pushButton === void 0 ? void 0 : pushButton.focus();\n }\n });\n }, [options.remove, options.name, options.index, options.baseId]);\n return _rollupPluginBabelHelpers._objectSpread2({\n onClick: onClick\n }, htmlProps);\n }\n});\nvar unstable_FormRemoveButton = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: unstable_useFormRemoveButton\n});\n\nexports.unstable_FormRemoveButton = unstable_FormRemoveButton;\nexports.unstable_useFormRemoveButton = unstable_useFormRemoveButton;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nrequire('react');\nrequire('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('reakit-utils/getDocument');\nrequire('../reverse-4756a49e.js');\nrequire('../getCurrentId-eade2850.js');\nrequire('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nrequire('reakit-utils/applyState');\nrequire('../Id/IdState.js');\nvar Composite_CompositeState = require('../Composite/CompositeState.js');\n\nfunction useToolbarState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$orien = _useSealedState.orientation,\n orientation = _useSealedState$orien === void 0 ? \"horizontal\" : _useSealedState$orien,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"orientation\"]);\n\n return Composite_CompositeState.useCompositeState(_rollupPluginBabelHelpers._objectSpread2({\n orientation: orientation\n }, sealed));\n}\n\nexports.useToolbarState = useToolbarState;\n","'use strict';\n\n// Automatically generated\nvar TOOLBAR_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"unstable_virtual\", \"rtl\", \"orientation\", \"items\", \"groups\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_moves\", \"unstable_hasActiveWidget\", \"unstable_includesBaseElement\", \"setBaseId\", \"registerItem\", \"unregisterItem\", \"registerGroup\", \"unregisterGroup\", \"move\", \"next\", \"previous\", \"up\", \"down\", \"first\", \"last\", \"sort\", \"unstable_setVirtual\", \"setRTL\", \"setOrientation\", \"setCurrentId\", \"setLoop\", \"setWrap\", \"setShift\", \"reset\", \"unstable_setIncludesBaseElement\", \"unstable_setHasActiveWidget\"];\nvar TOOLBAR_KEYS = TOOLBAR_STATE_KEYS;\nvar TOOLBAR_ITEM_KEYS = TOOLBAR_KEYS;\nvar TOOLBAR_SEPARATOR_KEYS = TOOLBAR_ITEM_KEYS;\n\nexports.TOOLBAR_ITEM_KEYS = TOOLBAR_ITEM_KEYS;\nexports.TOOLBAR_KEYS = TOOLBAR_KEYS;\nexports.TOOLBAR_SEPARATOR_KEYS = TOOLBAR_SEPARATOR_KEYS;\n","/**\n * Compares two objects.\n *\n * @example\n * import { shallowEqual } from \"reakit-utils\";\n *\n * shallowEqual({ a: \"a\" }, {}); // false\n * shallowEqual({ a: \"a\" }, { b: \"b\" }); // false\n * shallowEqual({ a: \"a\" }, { a: \"a\" }); // true\n * shallowEqual({ a: \"a\" }, { a: \"a\", b: \"b\" }); // false\n */\nfunction shallowEqual(objA, objB) {\n if (objA === objB) return true;\n if (!objA) return false;\n if (!objB) return false;\n if (typeof objA !== \"object\") return false;\n if (typeof objB !== \"object\") return false;\n var aKeys = Object.keys(objA);\n var bKeys = Object.keys(objB);\n var length = aKeys.length;\n if (bKeys.length !== length) return false;\n\n for (var _i = 0, _aKeys = aKeys; _i < _aKeys.length; _i++) {\n var key = _aKeys[_i];\n\n if (objA[key] !== objB[key]) {\n return false;\n }\n }\n\n return true;\n}\n\nexport { shallowEqual };\n","/**\n * Similar to `Element.prototype.contains`, but a little bit faster when\n * `element` is the same as `child`.\n *\n * @example\n * import { contains } from \"reakit-utils\";\n *\n * contains(document.getElementById(\"parent\"), document.getElementById(\"child\"));\n */\nfunction contains(parent, child) {\n return parent === child || parent.contains(child);\n}\n\nexport { contains };\n","'use strict';\n\nvar fireEvent = require('reakit-utils/fireEvent');\n\nfunction setTextFieldValue(element, value) {\n if (element instanceof HTMLInputElement || element instanceof HTMLTextAreaElement) {\n var _Object$getOwnPropert;\n\n var proto = Object.getPrototypeOf(element);\n var setValue = (_Object$getOwnPropert = Object.getOwnPropertyDescriptor(proto, \"value\")) === null || _Object$getOwnPropert === void 0 ? void 0 : _Object$getOwnPropert.set;\n\n if (setValue) {\n setValue.call(element, value);\n fireEvent.fireEvent(element, \"input\", {\n bubbles: true\n });\n }\n }\n}\n\nexports.setTextFieldValue = setTextFieldValue;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nrequire('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nrequire('react');\nrequire('reakit-utils/useForkRef');\nrequire('reakit-utils/isButton');\nvar reakitWarning = require('reakit-warning');\nrequire('reakit-utils/useLiveRef');\nrequire('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nrequire('../Tabbable/Tabbable.js');\nrequire('../Clickable/Clickable.js');\nrequire('../Button/Button.js');\nrequire('../__keys-f41a441b.js');\nrequire('reakit-utils/removeItemFromArray');\nrequire('../MenuContext-2d32bb3e.js');\nrequire('../__keys-0c8e6398.js');\nrequire('../__keys-eddd3051.js');\nrequire('../Disclosure/Disclosure.js');\nrequire('../Dialog/DialogDisclosure.js');\nrequire('../__keys-087914ef.js');\nrequire('../Popover/PopoverDisclosure.js');\nrequire('../findVisibleSubmenu-d8b7eeab.js');\nvar Menu_MenuButton = require('./MenuButton.js');\n\nvar useMenuDisclosure = createHook.createHook({\n name: \"MenuDisclosure\",\n compose: Menu_MenuButton.useMenuButton,\n useProps: function useProps(_, htmlProps) {\n process.env.NODE_ENV !== \"production\" ? reakitWarning.useWarning(true, \"`MenuDisclosure` has been renamed to `MenuButton`. Using `` will no longer work in future versions.\", \"See https://reakit.io/docs/menu\") : void 0;\n return htmlProps;\n }\n});\nvar MenuDisclosure = createComponent.createComponent({\n as: \"button\",\n useHook: useMenuDisclosure\n});\n\nexports.MenuDisclosure = MenuDisclosure;\nexports.useMenuDisclosure = useMenuDisclosure;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nrequire('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-utils/useForkRef');\nvar isButton = require('reakit-utils/isButton');\nrequire('reakit-warning');\nvar useLiveRef = require('reakit-utils/useLiveRef');\nvar isSelfTarget = require('reakit-utils/isSelfTarget');\nrequire('reakit-utils/useIsomorphicEffect');\nrequire('reakit-utils/hasFocusWithin');\nrequire('reakit-utils/isPortalEvent');\nrequire('reakit-utils/dom');\nrequire('reakit-utils/tabbable');\nrequire('../Role/Role.js');\nvar Tabbable_Tabbable = require('../Tabbable/Tabbable.js');\n\n// Automatically generated\nvar CLICKABLE_KEYS = [\"unstable_clickOnEnter\", \"unstable_clickOnSpace\"];\n\nfunction isNativeClick(event) {\n var element = event.currentTarget;\n if (!event.isTrusted) return false; // istanbul ignore next: can't test trusted events yet\n\n return isButton.isButton(element) || element.tagName === \"INPUT\" || element.tagName === \"TEXTAREA\" || element.tagName === \"A\" || element.tagName === \"SELECT\";\n}\n\nvar useClickable = createHook.createHook({\n name: \"Clickable\",\n compose: Tabbable_Tabbable.useTabbable,\n keys: CLICKABLE_KEYS,\n useOptions: function useOptions(_ref) {\n var _ref$unstable_clickOn = _ref.unstable_clickOnEnter,\n unstable_clickOnEnter = _ref$unstable_clickOn === void 0 ? true : _ref$unstable_clickOn,\n _ref$unstable_clickOn2 = _ref.unstable_clickOnSpace,\n unstable_clickOnSpace = _ref$unstable_clickOn2 === void 0 ? true : _ref$unstable_clickOn2,\n options = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref, [\"unstable_clickOnEnter\", \"unstable_clickOnSpace\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2({\n unstable_clickOnEnter: unstable_clickOnEnter,\n unstable_clickOnSpace: unstable_clickOnSpace\n }, options);\n },\n useProps: function useProps(options, _ref2) {\n var htmlOnKeyDown = _ref2.onKeyDown,\n htmlOnKeyUp = _ref2.onKeyUp,\n htmlProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_ref2, [\"onKeyDown\", \"onKeyUp\"]);\n\n var _React$useState = React.useState(false),\n active = _React$useState[0],\n setActive = _React$useState[1];\n\n var onKeyDownRef = useLiveRef.useLiveRef(htmlOnKeyDown);\n var onKeyUpRef = useLiveRef.useLiveRef(htmlOnKeyUp);\n var onKeyDown = React.useCallback(function (event) {\n var _onKeyDownRef$current;\n\n (_onKeyDownRef$current = onKeyDownRef.current) === null || _onKeyDownRef$current === void 0 ? void 0 : _onKeyDownRef$current.call(onKeyDownRef, event);\n if (event.defaultPrevented) return;\n if (options.disabled) return;\n if (event.metaKey) return;\n if (!isSelfTarget.isSelfTarget(event)) return;\n var isEnter = options.unstable_clickOnEnter && event.key === \"Enter\";\n var isSpace = options.unstable_clickOnSpace && event.key === \" \";\n\n if (isEnter || isSpace) {\n if (isNativeClick(event)) return;\n event.preventDefault();\n\n if (isEnter) {\n event.currentTarget.click();\n } else if (isSpace) {\n setActive(true);\n }\n }\n }, [options.disabled, options.unstable_clickOnEnter, options.unstable_clickOnSpace]);\n var onKeyUp = React.useCallback(function (event) {\n var _onKeyUpRef$current;\n\n (_onKeyUpRef$current = onKeyUpRef.current) === null || _onKeyUpRef$current === void 0 ? void 0 : _onKeyUpRef$current.call(onKeyUpRef, event);\n if (event.defaultPrevented) return;\n if (options.disabled) return;\n if (event.metaKey) return;\n var isSpace = options.unstable_clickOnSpace && event.key === \" \";\n\n if (active && isSpace) {\n setActive(false);\n event.currentTarget.click();\n }\n }, [options.disabled, options.unstable_clickOnSpace, active]);\n return _rollupPluginBabelHelpers._objectSpread2({\n \"data-active\": active || undefined,\n onKeyDown: onKeyDown,\n onKeyUp: onKeyUp\n }, htmlProps);\n }\n});\nvar Clickable = createComponent.createComponent({\n as: \"button\",\n memo: true,\n useHook: useClickable\n});\n\nexports.Clickable = Clickable;\nexports.useClickable = useClickable;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('../Id/IdProvider.js');\nvar Id_IdState = require('../Id/IdState.js');\n\nfunction reducer(state, action) {\n var stops = state.stops,\n currentId = state.currentId,\n pastId = state.unstable_pastId,\n moves = state.unstable_moves,\n loop = state.loop;\n\n switch (action.type) {\n case \"register\":\n {\n var _id = action.id,\n _ref = action.ref;\n\n if (stops.length === 0) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n stops: [{\n id: _id,\n ref: _ref\n }]\n });\n }\n\n var index = stops.findIndex(function (stop) {\n return stop.id === _id;\n });\n\n if (index >= 0) {\n return state;\n }\n\n var indexToInsertAt = stops.findIndex(function (stop) {\n if (!stop.ref.current || !_ref.current) return false; // Return true if the new rover element is located earlier in the DOM\n // than stop's element, else false:\n\n return Boolean(stop.ref.current.compareDocumentPosition(_ref.current) & Node.DOCUMENT_POSITION_PRECEDING);\n }); // findIndex returns -1 when the new rover should be inserted\n // at the end of stops (the compareDocumentPosition test\n // always returns false in that case).\n\n if (indexToInsertAt === -1) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n stops: [].concat(stops, [{\n id: _id,\n ref: _ref\n }])\n });\n }\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n stops: [].concat(stops.slice(0, indexToInsertAt), [{\n id: _id,\n ref: _ref\n }], stops.slice(indexToInsertAt))\n });\n }\n\n case \"unregister\":\n {\n var _id2 = action.id;\n var nextStops = stops.filter(function (stop) {\n return stop.id !== _id2;\n });\n\n if (nextStops.length === stops.length) {\n return state;\n }\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n stops: nextStops,\n unstable_pastId: pastId && pastId === _id2 ? null : pastId,\n currentId: currentId && currentId === _id2 ? null : currentId\n });\n }\n\n case \"move\":\n {\n var _id3 = action.id,\n silent = action.silent;\n var nextMoves = silent ? moves : moves + 1;\n\n if (_id3 === null) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n currentId: null,\n unstable_pastId: currentId,\n unstable_moves: nextMoves\n });\n }\n\n var _index = stops.findIndex(function (stop) {\n return stop.id === _id3;\n }); // Item doesn't exist, so we don't count a move\n\n\n if (_index === -1) {\n return state;\n }\n\n if (stops[_index].id === currentId) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n unstable_moves: nextMoves\n });\n }\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n currentId: stops[_index].id,\n unstable_pastId: currentId,\n unstable_moves: nextMoves\n });\n }\n\n case \"next\":\n {\n if (currentId == null) {\n return reducer(state, {\n type: \"move\",\n id: stops[0] && stops[0].id\n });\n }\n\n var _index2 = stops.findIndex(function (stop) {\n return stop.id === currentId;\n }); // If loop is truthy, turns [0, currentId, 2, 3] into [currentId, 2, 3, 0]\n // Otherwise turns into [currentId, 2, 3]\n\n\n var reorderedStops = [].concat(stops.slice(_index2 + 1), loop ? stops.slice(0, _index2) : []);\n var nextIndex = reorderedStops.findIndex(function (stop) {\n return stop.id === currentId;\n }) + 1;\n return reducer(state, {\n type: \"move\",\n id: reorderedStops[nextIndex] && reorderedStops[nextIndex].id\n });\n }\n\n case \"previous\":\n {\n var _reducer = reducer(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n stops: stops.slice().reverse()\n }), {\n type: \"next\"\n }),\n _ = _reducer.stops,\n nextState = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_reducer, [\"stops\"]);\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), nextState);\n }\n\n case \"first\":\n {\n var stop = stops[0];\n return reducer(state, {\n type: \"move\",\n id: stop && stop.id\n });\n }\n\n case \"last\":\n {\n var _stop = stops[stops.length - 1];\n return reducer(state, {\n type: \"move\",\n id: _stop && _stop.id\n });\n }\n\n case \"reset\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n currentId: null,\n unstable_pastId: null\n });\n }\n\n case \"orientate\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n orientation: action.orientation\n });\n\n default:\n throw new Error();\n }\n}\n\nfunction useRoverState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n orientation = _useSealedState.orientation,\n _useSealedState$curre = _useSealedState.currentId,\n currentId = _useSealedState$curre === void 0 ? null : _useSealedState$curre,\n _useSealedState$loop = _useSealedState.loop,\n loop = _useSealedState$loop === void 0 ? false : _useSealedState$loop,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"orientation\", \"currentId\", \"loop\"]);\n\n var _React$useReducer = React.useReducer(reducer, {\n orientation: orientation,\n stops: [],\n currentId: currentId,\n unstable_pastId: null,\n unstable_moves: 0,\n loop: loop\n }),\n state = _React$useReducer[0],\n dispatch = _React$useReducer[1];\n\n var idState = Id_IdState.unstable_useIdState(sealed);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, idState), state), {}, {\n register: useAction(function (id, ref) {\n return dispatch({\n type: \"register\",\n id: id,\n ref: ref\n });\n }),\n unregister: useAction(function (id) {\n return dispatch({\n type: \"unregister\",\n id: id\n });\n }),\n move: useAction(function (id, silent) {\n return dispatch({\n type: \"move\",\n id: id,\n silent: silent\n });\n }),\n next: useAction(function () {\n return dispatch({\n type: \"next\"\n });\n }),\n previous: useAction(function () {\n return dispatch({\n type: \"previous\"\n });\n }),\n first: useAction(function () {\n return dispatch({\n type: \"first\"\n });\n }),\n last: useAction(function () {\n return dispatch({\n type: \"last\"\n });\n }),\n unstable_reset: useAction(function () {\n return dispatch({\n type: \"reset\"\n });\n }),\n unstable_orientate: useAction(function (o) {\n return dispatch({\n type: \"orientate\",\n orientation: o\n });\n })\n });\n}\n\nfunction useAction(fn) {\n return React.useCallback(fn, []);\n}\n\nexports.useRoverState = useRoverState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar shallowEqual = require('reakit-utils/shallowEqual');\nvar React = require('react');\nrequire('reakit-warning');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nvar dom = require('reakit-utils/dom');\nvar useSealedState = require('reakit-utils/useSealedState');\nrequire('../Id/IdProvider.js');\nrequire('../Id/IdState.js');\nvar core = require('@popperjs/core');\nrequire('../Disclosure/DisclosureState.js');\nvar Dialog_DialogState = require('../Dialog/DialogState.js');\n\nvar isSafari = dom.isUA(\"Mac\") && !dom.isUA(\"Chrome\") && dom.isUA(\"Safari\");\n\nfunction applyStyles(styles) {\n return function (prevStyles) {\n if (styles && !shallowEqual.shallowEqual(prevStyles, styles)) {\n return styles;\n }\n\n return prevStyles;\n };\n}\n\nfunction usePopoverState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$gutte = _useSealedState.gutter,\n gutter = _useSealedState$gutte === void 0 ? 12 : _useSealedState$gutte,\n _useSealedState$place = _useSealedState.placement,\n sealedPlacement = _useSealedState$place === void 0 ? \"bottom\" : _useSealedState$place,\n _useSealedState$unsta = _useSealedState.unstable_flip,\n flip = _useSealedState$unsta === void 0 ? true : _useSealedState$unsta,\n sealedOffset = _useSealedState.unstable_offset,\n _useSealedState$unsta2 = _useSealedState.unstable_preventOverflow,\n preventOverflow = _useSealedState$unsta2 === void 0 ? true : _useSealedState$unsta2,\n _useSealedState$unsta3 = _useSealedState.unstable_fixed,\n fixed = _useSealedState$unsta3 === void 0 ? false : _useSealedState$unsta3,\n _useSealedState$modal = _useSealedState.modal,\n modal = _useSealedState$modal === void 0 ? false : _useSealedState$modal,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"gutter\", \"placement\", \"unstable_flip\", \"unstable_offset\", \"unstable_preventOverflow\", \"unstable_fixed\", \"modal\"]);\n\n var popper = React.useRef(null);\n var referenceRef = React.useRef(null);\n var popoverRef = React.useRef(null);\n var arrowRef = React.useRef(null);\n\n var _React$useState = React.useState(sealedPlacement),\n originalPlacement = _React$useState[0],\n place = _React$useState[1];\n\n var _React$useState2 = React.useState(sealedPlacement),\n placement = _React$useState2[0],\n setPlacement = _React$useState2[1];\n\n var _React$useState3 = React.useState(sealedOffset || [0, gutter]),\n offset = _React$useState3[0];\n\n var _React$useState4 = React.useState({\n position: \"fixed\",\n left: \"100%\",\n top: \"100%\"\n }),\n popoverStyles = _React$useState4[0],\n setPopoverStyles = _React$useState4[1];\n\n var _React$useState5 = React.useState({}),\n arrowStyles = _React$useState5[0],\n setArrowStyles = _React$useState5[1];\n\n var dialog = Dialog_DialogState.useDialogState(_rollupPluginBabelHelpers._objectSpread2({\n modal: modal\n }, sealed));\n var update = React.useCallback(function () {\n if (popper.current) {\n popper.current.forceUpdate();\n return true;\n }\n\n return false;\n }, []);\n var updateState = React.useCallback(function (state) {\n if (state.placement) {\n setPlacement(state.placement);\n }\n\n if (state.styles) {\n setPopoverStyles(applyStyles(state.styles.popper));\n\n if (arrowRef.current) {\n setArrowStyles(applyStyles(state.styles.arrow));\n }\n }\n }, []);\n useIsomorphicEffect.useIsomorphicEffect(function () {\n if (referenceRef.current && popoverRef.current) {\n popper.current = core.createPopper(referenceRef.current, popoverRef.current, {\n // https://popper.js.org/docs/v2/constructors/#options\n placement: originalPlacement,\n strategy: fixed ? \"fixed\" : \"absolute\",\n // Safari needs styles to be applied in the first render, otherwise\n // hovering over the popover when it gets visible for the first time\n // will change its dimensions unexpectedly.\n onFirstUpdate: isSafari ? updateState : undefined,\n modifiers: [{\n // https://popper.js.org/docs/v2/modifiers/event-listeners/\n name: \"eventListeners\",\n enabled: dialog.visible\n }, {\n // https://popper.js.org/docs/v2/modifiers/apply-styles/\n name: \"applyStyles\",\n enabled: false\n }, {\n // https://popper.js.org/docs/v2/modifiers/flip/\n name: \"flip\",\n enabled: flip,\n options: {\n padding: 8\n }\n }, {\n // https://popper.js.org/docs/v2/modifiers/offset/\n name: \"offset\",\n options: {\n offset: offset\n }\n }, {\n // https://popper.js.org/docs/v2/modifiers/prevent-overflow/\n name: \"preventOverflow\",\n enabled: preventOverflow,\n options: {\n tetherOffset: function tetherOffset() {\n var _arrowRef$current;\n\n return ((_arrowRef$current = arrowRef.current) === null || _arrowRef$current === void 0 ? void 0 : _arrowRef$current.clientWidth) || 0;\n }\n }\n }, {\n // https://popper.js.org/docs/v2/modifiers/arrow/\n name: \"arrow\",\n enabled: !!arrowRef.current,\n options: {\n element: arrowRef.current\n }\n }, {\n // https://popper.js.org/docs/v2/modifiers/#custom-modifiers\n name: \"updateState\",\n phase: \"write\",\n requires: [\"computeStyles\"],\n enabled: dialog.visible && process.env.NODE_ENV !== \"test\",\n fn: function fn(_ref) {\n var state = _ref.state;\n return updateState(state);\n }\n }]\n });\n }\n\n return function () {\n if (popper.current) {\n popper.current.destroy();\n popper.current = null;\n }\n };\n }, [originalPlacement, fixed, dialog.visible, flip, offset, preventOverflow]); // Ensure that the popover will be correctly positioned with an additional\n // update.\n\n React.useEffect(function () {\n if (!dialog.visible) return undefined;\n var id = window.requestAnimationFrame(function () {\n var _popper$current;\n\n (_popper$current = popper.current) === null || _popper$current === void 0 ? void 0 : _popper$current.forceUpdate();\n });\n return function () {\n window.cancelAnimationFrame(id);\n };\n }, [dialog.visible]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, dialog), {}, {\n unstable_referenceRef: referenceRef,\n unstable_popoverRef: popoverRef,\n unstable_arrowRef: arrowRef,\n unstable_popoverStyles: popoverStyles,\n unstable_arrowStyles: arrowStyles,\n unstable_update: update,\n unstable_originalPlacement: originalPlacement,\n placement: placement,\n place: place\n });\n}\n\nexports.usePopoverState = usePopoverState;\n","'use strict';\n\n// Automatically generated\nvar COMBOBOX_LIST_STATE_KEYS = [\"baseId\", \"unstable_idCountRef\", \"unstable_virtual\", \"rtl\", \"orientation\", \"groups\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_moves\", \"unstable_hasActiveWidget\", \"unstable_includesBaseElement\", \"items\", \"menuRole\", \"inputValue\", \"minValueLength\", \"currentValue\", \"values\", \"limit\", \"matches\", \"list\", \"inline\", \"autoSelect\", \"visible\", \"setBaseId\", \"unregisterItem\", \"registerGroup\", \"unregisterGroup\", \"move\", \"next\", \"previous\", \"up\", \"down\", \"first\", \"last\", \"sort\", \"unstable_setVirtual\", \"setRTL\", \"setOrientation\", \"setCurrentId\", \"setLoop\", \"setWrap\", \"setShift\", \"reset\", \"unstable_setIncludesBaseElement\", \"unstable_setHasActiveWidget\", \"registerItem\", \"setInputValue\", \"setMinValueLength\", \"setValues\", \"setLimit\", \"setList\", \"setInline\", \"setAutoSelect\"];\nvar COMBOBOX_LIST_GRID_STATE_KEYS = [].concat(COMBOBOX_LIST_STATE_KEYS, [\"columns\", \"setColumns\"]);\nvar COMBOBOX_STATE_KEYS = [].concat(COMBOBOX_LIST_STATE_KEYS, [\"animated\", \"animating\", \"modal\", \"unstable_disclosureRef\", \"unstable_referenceRef\", \"unstable_popoverRef\", \"unstable_arrowRef\", \"unstable_popoverStyles\", \"unstable_arrowStyles\", \"unstable_originalPlacement\", \"unstable_update\", \"placement\", \"show\", \"hide\", \"toggle\", \"setVisible\", \"setAnimated\", \"stopAnimation\", \"setModal\", \"place\"]);\nvar COMBOBOX_GRID_STATE_KEYS = [].concat(COMBOBOX_LIST_GRID_STATE_KEYS, COMBOBOX_STATE_KEYS);\nvar COMBOBOX_KEYS = [].concat(COMBOBOX_GRID_STATE_KEYS, [\"hideOnEsc\"]);\nvar COMBOBOX_GRID_CELL_KEYS = COMBOBOX_GRID_STATE_KEYS;\nvar COMBOBOX_GRID_ROW_KEYS = COMBOBOX_GRID_CELL_KEYS;\nvar COMBOBOX_ITEM_KEYS = [].concat(COMBOBOX_GRID_ROW_KEYS, [\"value\"]);\nvar COMBOBOX_LIST_KEYS = COMBOBOX_GRID_ROW_KEYS;\nvar COMBOBOX_OPTION_KEYS = COMBOBOX_LIST_KEYS;\nvar COMBOBOX_POPOVER_KEYS = COMBOBOX_OPTION_KEYS;\n\nexports.COMBOBOX_GRID_CELL_KEYS = COMBOBOX_GRID_CELL_KEYS;\nexports.COMBOBOX_GRID_ROW_KEYS = COMBOBOX_GRID_ROW_KEYS;\nexports.COMBOBOX_ITEM_KEYS = COMBOBOX_ITEM_KEYS;\nexports.COMBOBOX_KEYS = COMBOBOX_KEYS;\nexports.COMBOBOX_LIST_KEYS = COMBOBOX_LIST_KEYS;\nexports.COMBOBOX_OPTION_KEYS = COMBOBOX_OPTION_KEYS;\nexports.COMBOBOX_POPOVER_KEYS = COMBOBOX_POPOVER_KEYS;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\nvar useIsomorphicEffect = require('reakit-utils/useIsomorphicEffect');\nvar useSealedState = require('reakit-utils/useSealedState');\nvar getDocument = require('reakit-utils/getDocument');\nvar reverse = require('../reverse-4756a49e.js');\nvar getCurrentId = require('../getCurrentId-eade2850.js');\nvar findEnabledItemById = require('../findEnabledItemById-03112678.js');\nrequire('../Id/IdProvider.js');\nvar applyState = require('reakit-utils/applyState');\nvar Id_IdState = require('../Id/IdState.js');\n\nfunction isElementPreceding(element1, element2) {\n return Boolean(element2.compareDocumentPosition(element1) & Node.DOCUMENT_POSITION_PRECEDING);\n}\n\nfunction findDOMIndex(items, item) {\n return items.findIndex(function (currentItem) {\n if (!currentItem.ref.current || !item.ref.current) {\n return false;\n }\n\n return isElementPreceding(item.ref.current, currentItem.ref.current);\n });\n}\n\nfunction getMaxLength(rows) {\n var maxLength = 0;\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(rows), _step; !(_step = _iterator()).done;) {\n var length = _step.value.length;\n\n if (length > maxLength) {\n maxLength = length;\n }\n }\n\n return maxLength;\n}\n\n/**\n * Turns [row1, row1, row2, row2] into [row1, row2, row1, row2]\n */\n\nfunction verticalizeItems(items) {\n var groups = reverse.groupItems(items);\n var maxLength = getMaxLength(groups);\n var verticalized = [];\n\n for (var i = 0; i < maxLength; i += 1) {\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(groups), _step; !(_step = _iterator()).done;) {\n var group = _step.value;\n\n if (group[i]) {\n verticalized.push(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, group[i]), {}, {\n // If there's no groupId, it means that it's not a grid composite,\n // but a single row instead. So, instead of verticalizing it, that\n // is, assigning a different groupId based on the column index, we\n // keep it undefined so they will be part of the same group.\n // It's useful when using up/down on one-dimensional composites.\n groupId: group[i].groupId ? \"\" + i : undefined\n }));\n }\n }\n }\n\n return verticalized;\n}\n\nfunction createEmptyItem(groupId) {\n return {\n id: \"__EMPTY_ITEM__\",\n disabled: true,\n ref: {\n current: null\n },\n groupId: groupId\n };\n}\n/**\n * Turns [[row1, row1], [row2]] into [[row1, row1], [row2, row2]]\n */\n\n\nfunction fillGroups(groups, currentId, shift) {\n var maxLength = getMaxLength(groups);\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(groups), _step; !(_step = _iterator()).done;) {\n var group = _step.value;\n\n for (var i = 0; i < maxLength; i += 1) {\n var item = group[i];\n\n if (!item || shift && item.disabled) {\n var isFrist = i === 0;\n var previousItem = isFrist && shift ? getCurrentId.findFirstEnabledItem(group) : group[i - 1];\n group[i] = previousItem && currentId !== (previousItem === null || previousItem === void 0 ? void 0 : previousItem.id) && shift ? previousItem : createEmptyItem(previousItem === null || previousItem === void 0 ? void 0 : previousItem.groupId);\n }\n }\n }\n\n return groups;\n}\n\nvar nullItem = {\n id: null,\n ref: {\n current: null\n }\n};\nfunction placeItemsAfter(items, id, shouldInsertNullItem) {\n var index = items.findIndex(function (item) {\n return item.id === id;\n });\n return [].concat(items.slice(index + 1), shouldInsertNullItem ? [nullItem] : [], items.slice(0, index));\n}\n\nfunction getItemsInGroup(items, groupId) {\n return items.filter(function (item) {\n return item.groupId === groupId;\n });\n}\n\nvar map = {\n horizontal: \"vertical\",\n vertical: \"horizontal\"\n};\nfunction getOppositeOrientation(orientation) {\n return orientation && map[orientation];\n}\n\nfunction addItemAtIndex(array, item, index) {\n if (!(index in array)) {\n return [].concat(array, [item]);\n }\n\n return [].concat(array.slice(0, index), [item], array.slice(index));\n}\n\nfunction sortBasedOnDOMPosition(items) {\n var pairs = items.map(function (item, index) {\n return [index, item];\n });\n var isOrderDifferent = false;\n pairs.sort(function (_ref, _ref2) {\n var indexA = _ref[0],\n a = _ref[1];\n var indexB = _ref2[0],\n b = _ref2[1];\n var elementA = a.ref.current;\n var elementB = b.ref.current;\n if (!elementA || !elementB) return 0; // a before b\n\n if (isElementPreceding(elementA, elementB)) {\n if (indexA > indexB) {\n isOrderDifferent = true;\n }\n\n return -1;\n } // a after b\n\n\n if (indexA < indexB) {\n isOrderDifferent = true;\n }\n\n return 1;\n });\n\n if (isOrderDifferent) {\n return pairs.map(function (_ref3) {\n var _ = _ref3[0],\n item = _ref3[1];\n return item;\n });\n }\n\n return items;\n}\n\nfunction setItemsBasedOnDOMPosition(items, setItems) {\n var sortedItems = sortBasedOnDOMPosition(items);\n\n if (items !== sortedItems) {\n setItems(sortedItems);\n }\n}\n\nfunction getCommonParent(items) {\n var _firstItem$ref$curren;\n\n var firstItem = items[0],\n nextItems = items.slice(1);\n var parentElement = firstItem === null || firstItem === void 0 ? void 0 : (_firstItem$ref$curren = firstItem.ref.current) === null || _firstItem$ref$curren === void 0 ? void 0 : _firstItem$ref$curren.parentElement;\n\n var _loop = function _loop() {\n var parent = parentElement;\n\n if (nextItems.every(function (item) {\n return parent.contains(item.ref.current);\n })) {\n return {\n v: parentElement\n };\n }\n\n parentElement = parentElement.parentElement;\n };\n\n while (parentElement) {\n var _ret = _loop();\n\n if (typeof _ret === \"object\") return _ret.v;\n }\n\n return getDocument.getDocument(parentElement).body;\n} // istanbul ignore next: JSDOM doesn't support IntersectionObverser\n// See https://github.com/jsdom/jsdom/issues/2032\n\n\nfunction useIntersectionObserver(items, setItems) {\n var previousItems = React.useRef([]);\n React.useEffect(function () {\n var callback = function callback() {\n var hasPreviousItems = !!previousItems.current.length; // We don't want to sort items if items have been just registered.\n\n if (hasPreviousItems) {\n setItemsBasedOnDOMPosition(items, setItems);\n }\n\n previousItems.current = items;\n };\n\n var root = getCommonParent(items);\n var observer = new IntersectionObserver(callback, {\n root: root\n });\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(items), _step; !(_step = _iterator()).done;) {\n var item = _step.value;\n\n if (item.ref.current) {\n observer.observe(item.ref.current);\n }\n }\n\n return function () {\n observer.disconnect();\n };\n }, [items]);\n}\n\nfunction useTimeoutObserver(items, setItems) {\n React.useEffect(function () {\n var callback = function callback() {\n return setItemsBasedOnDOMPosition(items, setItems);\n };\n\n var timeout = setTimeout(callback, 250);\n return function () {\n return clearTimeout(timeout);\n };\n });\n}\n\nfunction useSortBasedOnDOMPosition(items, setItems) {\n if (typeof IntersectionObserver === \"function\") {\n useIntersectionObserver(items, setItems);\n } else {\n useTimeoutObserver(items, setItems);\n }\n}\n\nfunction reducer(state, action) {\n var virtual = state.unstable_virtual,\n rtl = state.rtl,\n orientation = state.orientation,\n items = state.items,\n groups = state.groups,\n currentId = state.currentId,\n loop = state.loop,\n wrap = state.wrap,\n pastIds = state.pastIds,\n shift = state.shift,\n moves = state.unstable_moves,\n includesBaseElement = state.unstable_includesBaseElement,\n initialVirtual = state.initialVirtual,\n initialRTL = state.initialRTL,\n initialOrientation = state.initialOrientation,\n initialCurrentId = state.initialCurrentId,\n initialLoop = state.initialLoop,\n initialWrap = state.initialWrap,\n initialShift = state.initialShift,\n hasSetCurrentId = state.hasSetCurrentId;\n\n switch (action.type) {\n case \"registerGroup\":\n {\n var _group = action.group; // If there are no groups yet, just add it as the first one\n\n if (groups.length === 0) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n groups: [_group]\n });\n } // Finds the group index based on DOM position\n\n\n var index = findDOMIndex(groups, _group);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n groups: addItemAtIndex(groups, _group, index)\n });\n }\n\n case \"unregisterGroup\":\n {\n var _id = action.id;\n var nextGroups = groups.filter(function (group) {\n return group.id !== _id;\n }); // The group isn't registered, so do nothing\n\n if (nextGroups.length === groups.length) {\n return state;\n }\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n groups: nextGroups\n });\n }\n\n case \"registerItem\":\n {\n var _item = action.item; // Finds the item group based on the DOM hierarchy\n\n var _group2 = groups.find(function (r) {\n var _r$ref$current;\n\n return (_r$ref$current = r.ref.current) === null || _r$ref$current === void 0 ? void 0 : _r$ref$current.contains(_item.ref.current);\n }); // Group will be null if it's a one-dimensional composite\n\n\n var nextItem = _rollupPluginBabelHelpers._objectSpread2({\n groupId: _group2 === null || _group2 === void 0 ? void 0 : _group2.id\n }, _item);\n\n var _index = findDOMIndex(items, nextItem);\n\n var nextState = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n items: addItemAtIndex(items, nextItem, _index)\n });\n\n if (!hasSetCurrentId && !moves && initialCurrentId === undefined) {\n var _findFirstEnabledItem;\n\n // Sets currentId to the first enabled item. This runs whenever an item\n // is registered because the first enabled item may be registered\n // asynchronously.\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, nextState), {}, {\n currentId: (_findFirstEnabledItem = getCurrentId.findFirstEnabledItem(nextState.items)) === null || _findFirstEnabledItem === void 0 ? void 0 : _findFirstEnabledItem.id\n });\n }\n\n return nextState;\n }\n\n case \"unregisterItem\":\n {\n var _id2 = action.id;\n var nextItems = items.filter(function (item) {\n return item.id !== _id2;\n }); // The item isn't registered, so do nothing\n\n if (nextItems.length === items.length) {\n return state;\n } // Filters out the item that is being removed from the pastIds list\n\n\n var nextPastIds = pastIds.filter(function (pastId) {\n return pastId !== _id2;\n });\n\n var _nextState = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n pastIds: nextPastIds,\n items: nextItems\n }); // If the current item is the item that is being removed, focus pastId\n\n\n if (currentId && currentId === _id2) {\n var nextId = includesBaseElement ? null : getCurrentId.getCurrentId(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState), {}, {\n currentId: nextPastIds[0]\n }));\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState), {}, {\n currentId: nextId\n });\n }\n\n return _nextState;\n }\n\n case \"move\":\n {\n var _id3 = action.id; // move() does nothing\n\n if (_id3 === undefined) {\n return state;\n } // Removes the current item and the item that is receiving focus from the\n // pastIds list\n\n\n var filteredPastIds = pastIds.filter(function (pastId) {\n return pastId !== currentId && pastId !== _id3;\n }); // If there's a currentId, add it to the pastIds list so it can be focused\n // if the new item gets removed or disabled\n\n var _nextPastIds = currentId ? [currentId].concat(filteredPastIds) : filteredPastIds;\n\n var _nextState2 = _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n pastIds: _nextPastIds\n }); // move(null) will focus the composite element itself, not an item\n\n\n if (_id3 === null) {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState2), {}, {\n unstable_moves: moves + 1,\n currentId: getCurrentId.getCurrentId(_nextState2, _id3)\n });\n }\n\n var _item2 = findEnabledItemById.findEnabledItemById(items, _id3);\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState2), {}, {\n unstable_moves: _item2 ? moves + 1 : moves,\n currentId: getCurrentId.getCurrentId(_nextState2, _item2 === null || _item2 === void 0 ? void 0 : _item2.id)\n });\n }\n\n case \"next\":\n {\n // If there's no item focused, we just move the first one\n if (currentId == null) {\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"first\"\n }));\n } // RTL doesn't make sense on vertical navigation\n\n\n var isHorizontal = orientation !== \"vertical\";\n var isRTL = rtl && isHorizontal;\n var allItems = isRTL ? reverse.reverse(items) : items;\n var currentItem = allItems.find(function (item) {\n return item.id === currentId;\n }); // If there's no item focused, we just move the first one\n\n if (!currentItem) {\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"first\"\n }));\n }\n\n var isGrid = !!currentItem.groupId;\n var currentIndex = allItems.indexOf(currentItem);\n\n var _nextItems = allItems.slice(currentIndex + 1);\n\n var nextItemsInGroup = getItemsInGroup(_nextItems, currentItem.groupId); // Home, End\n\n if (action.allTheWay) {\n // We reverse so we can get the last enabled item in the group. If it's\n // RTL, nextItems and nextItemsInGroup are already reversed and don't\n // have the items before the current one anymore. So we have to get\n // items in group again with allItems.\n var _nextItem2 = getCurrentId.findFirstEnabledItem(isRTL ? getItemsInGroup(allItems, currentItem.groupId) : reverse.reverse(nextItemsInGroup));\n\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"move\",\n id: _nextItem2 === null || _nextItem2 === void 0 ? void 0 : _nextItem2.id\n }));\n }\n\n var oppositeOrientation = getOppositeOrientation( // If it's a grid and orientation is not set, it's a next/previous\n // call, which is inherently horizontal. up/down will call next with\n // orientation set to vertical by default (see below on up/down cases).\n isGrid ? orientation || \"horizontal\" : orientation);\n var canLoop = loop && loop !== oppositeOrientation;\n var canWrap = isGrid && wrap && wrap !== oppositeOrientation;\n var hasNullItem = // `previous` and `up` will set action.hasNullItem, but when calling\n // next directly, hasNullItem will only be true if it's not a grid and\n // loop is set to true, which means that pressing right or down keys on\n // grids will never focus the composite element. On one-dimensional\n // composites that don't loop, pressing right or down keys also doesn't\n // focus the composite element.\n action.hasNullItem || !isGrid && canLoop && includesBaseElement;\n\n if (canLoop) {\n var loopItems = canWrap && !hasNullItem ? allItems : getItemsInGroup(allItems, currentItem.groupId); // Turns [0, 1, current, 3, 4] into [3, 4, 0, 1]\n\n var sortedItems = placeItemsAfter(loopItems, currentId, hasNullItem);\n\n var _nextItem3 = getCurrentId.findFirstEnabledItem(sortedItems, currentId);\n\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"move\",\n id: _nextItem3 === null || _nextItem3 === void 0 ? void 0 : _nextItem3.id\n }));\n }\n\n if (canWrap) {\n var _nextItem4 = getCurrentId.findFirstEnabledItem( // We can use nextItems, which contains all the next items, including\n // items from other groups, to wrap between groups. However, if there\n // is a null item (the composite element), we'll only use the next\n // items in the group. So moving next from the last item will focus\n // the composite element (null). On grid composites, horizontal\n // navigation never focuses the composite element, only vertical.\n hasNullItem ? nextItemsInGroup : _nextItems, currentId);\n\n var _nextId = hasNullItem ? (_nextItem4 === null || _nextItem4 === void 0 ? void 0 : _nextItem4.id) || null : _nextItem4 === null || _nextItem4 === void 0 ? void 0 : _nextItem4.id;\n\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"move\",\n id: _nextId\n }));\n }\n\n var _nextItem = getCurrentId.findFirstEnabledItem(nextItemsInGroup, currentId);\n\n if (!_nextItem && hasNullItem) {\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"move\",\n id: null\n }));\n }\n\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"move\",\n id: _nextItem === null || _nextItem === void 0 ? void 0 : _nextItem.id\n }));\n }\n\n case \"previous\":\n {\n // If currentId is initially set to null, the composite element will be\n // focusable while navigating with arrow keys. But, if it's a grid, we\n // don't want to focus the composite element with horizontal navigation.\n var _isGrid = !!groups.length;\n\n var _hasNullItem = !_isGrid && includesBaseElement;\n\n var _nextState3 = reducer(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n items: reverse.reverse(items)\n }), _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"next\",\n hasNullItem: _hasNullItem\n }));\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState3), {}, {\n items: items\n });\n }\n\n case \"down\":\n {\n var shouldShift = shift && !action.allTheWay; // First, we make sure groups have the same number of items by filling it\n // with disabled fake items. Then, we reorganize the items list so\n // [1-1, 1-2, 2-1, 2-2] becomes [1-1, 2-1, 1-2, 2-2].\n\n var verticalItems = verticalizeItems(reverse.flatten(fillGroups(reverse.groupItems(items), currentId, shouldShift)));\n\n var _canLoop = loop && loop !== \"horizontal\"; // Pressing down arrow key will only focus the composite element if loop\n // is true or vertical.\n\n\n var _hasNullItem2 = _canLoop && includesBaseElement;\n\n var _nextState4 = reducer(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n orientation: \"vertical\",\n items: verticalItems\n }), _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"next\",\n hasNullItem: _hasNullItem2\n }));\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState4), {}, {\n orientation: orientation,\n items: items\n });\n }\n\n case \"up\":\n {\n var _shouldShift = shift && !action.allTheWay;\n\n var _verticalItems = verticalizeItems(reverse.reverse(reverse.flatten(fillGroups(reverse.groupItems(items), currentId, _shouldShift)))); // If currentId is initially set to null, we'll always focus the\n // composite element when the up arrow key is pressed in the first row.\n\n\n var _hasNullItem3 = includesBaseElement;\n\n var _nextState5 = reducer(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n orientation: \"vertical\",\n items: _verticalItems\n }), _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"next\",\n hasNullItem: _hasNullItem3\n }));\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState5), {}, {\n orientation: orientation,\n items: items\n });\n }\n\n case \"first\":\n {\n var firstItem = getCurrentId.findFirstEnabledItem(items);\n return reducer(state, _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"move\",\n id: firstItem === null || firstItem === void 0 ? void 0 : firstItem.id\n }));\n }\n\n case \"last\":\n {\n var _nextState6 = reducer(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n items: reverse.reverse(items)\n }), _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, action), {}, {\n type: \"first\"\n }));\n\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, _nextState6), {}, {\n items: items\n });\n }\n\n case \"sort\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n items: sortBasedOnDOMPosition(items),\n groups: sortBasedOnDOMPosition(groups)\n });\n }\n\n case \"setVirtual\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n unstable_virtual: applyState.applyState(action.virtual, virtual)\n });\n\n case \"setRTL\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n rtl: applyState.applyState(action.rtl, rtl)\n });\n\n case \"setOrientation\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n orientation: applyState.applyState(action.orientation, orientation)\n });\n\n case \"setCurrentId\":\n {\n var nextCurrentId = getCurrentId.getCurrentId(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n currentId: applyState.applyState(action.currentId, currentId)\n }));\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n currentId: nextCurrentId,\n hasSetCurrentId: true\n });\n }\n\n case \"setLoop\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n loop: applyState.applyState(action.loop, loop)\n });\n\n case \"setWrap\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n wrap: applyState.applyState(action.wrap, wrap)\n });\n\n case \"setShift\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n shift: applyState.applyState(action.shift, shift)\n });\n\n case \"setIncludesBaseElement\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n unstable_includesBaseElement: applyState.applyState(action.includesBaseElement, includesBaseElement)\n });\n }\n\n case \"reset\":\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n unstable_virtual: initialVirtual,\n rtl: initialRTL,\n orientation: initialOrientation,\n currentId: getCurrentId.getCurrentId(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n currentId: initialCurrentId\n })),\n loop: initialLoop,\n wrap: initialWrap,\n shift: initialShift,\n unstable_moves: 0,\n pastIds: []\n });\n\n case \"setItems\":\n {\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, state), {}, {\n items: action.items\n });\n }\n\n default:\n throw new Error();\n }\n}\n\nfunction useAction(fn) {\n return React.useCallback(fn, []);\n}\n\nfunction useIsUnmountedRef() {\n var isUnmountedRef = React.useRef(false);\n useIsomorphicEffect.useIsomorphicEffect(function () {\n return function () {\n isUnmountedRef.current = true;\n };\n }, []);\n return isUnmountedRef;\n}\n\nfunction useCompositeState(initialState) {\n if (initialState === void 0) {\n initialState = {};\n }\n\n var _useSealedState = useSealedState.useSealedState(initialState),\n _useSealedState$unsta = _useSealedState.unstable_virtual,\n virtual = _useSealedState$unsta === void 0 ? false : _useSealedState$unsta,\n _useSealedState$rtl = _useSealedState.rtl,\n rtl = _useSealedState$rtl === void 0 ? false : _useSealedState$rtl,\n orientation = _useSealedState.orientation,\n currentId = _useSealedState.currentId,\n _useSealedState$loop = _useSealedState.loop,\n loop = _useSealedState$loop === void 0 ? false : _useSealedState$loop,\n _useSealedState$wrap = _useSealedState.wrap,\n wrap = _useSealedState$wrap === void 0 ? false : _useSealedState$wrap,\n _useSealedState$shift = _useSealedState.shift,\n shift = _useSealedState$shift === void 0 ? false : _useSealedState$shift,\n unstable_includesBaseElement = _useSealedState.unstable_includesBaseElement,\n sealed = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_useSealedState, [\"unstable_virtual\", \"rtl\", \"orientation\", \"currentId\", \"loop\", \"wrap\", \"shift\", \"unstable_includesBaseElement\"]);\n\n var idState = Id_IdState.unstable_useIdState(sealed);\n\n var _React$useReducer = React.useReducer(reducer, {\n unstable_virtual: virtual,\n rtl: rtl,\n orientation: orientation,\n items: [],\n groups: [],\n currentId: currentId,\n loop: loop,\n wrap: wrap,\n shift: shift,\n unstable_moves: 0,\n pastIds: [],\n unstable_includesBaseElement: unstable_includesBaseElement != null ? unstable_includesBaseElement : currentId === null,\n initialVirtual: virtual,\n initialRTL: rtl,\n initialOrientation: orientation,\n initialCurrentId: currentId,\n initialLoop: loop,\n initialWrap: wrap,\n initialShift: shift\n }),\n _React$useReducer$ = _React$useReducer[0],\n pastIds = _React$useReducer$.pastIds,\n initialVirtual = _React$useReducer$.initialVirtual,\n initialRTL = _React$useReducer$.initialRTL,\n initialOrientation = _React$useReducer$.initialOrientation,\n initialCurrentId = _React$useReducer$.initialCurrentId,\n initialLoop = _React$useReducer$.initialLoop,\n initialWrap = _React$useReducer$.initialWrap,\n initialShift = _React$useReducer$.initialShift,\n hasSetCurrentId = _React$useReducer$.hasSetCurrentId,\n state = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(_React$useReducer$, [\"pastIds\", \"initialVirtual\", \"initialRTL\", \"initialOrientation\", \"initialCurrentId\", \"initialLoop\", \"initialWrap\", \"initialShift\", \"hasSetCurrentId\"]),\n dispatch = _React$useReducer[1];\n\n var _React$useState = React.useState(false),\n hasActiveWidget = _React$useState[0],\n setHasActiveWidget = _React$useState[1]; // register/unregister may be called when this component is unmounted. We\n // store the unmounted state here so we don't update the state if it's true.\n // This only happens in a very specific situation.\n // See https://github.com/reakit/reakit/issues/650\n\n\n var isUnmountedRef = useIsUnmountedRef();\n var setItems = React.useCallback(function (items) {\n return dispatch({\n type: \"setItems\",\n items: items\n });\n }, []);\n useSortBasedOnDOMPosition(state.items, setItems);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, idState), state), {}, {\n unstable_hasActiveWidget: hasActiveWidget,\n unstable_setHasActiveWidget: setHasActiveWidget,\n registerItem: useAction(function (item) {\n if (isUnmountedRef.current) return;\n dispatch({\n type: \"registerItem\",\n item: item\n });\n }),\n unregisterItem: useAction(function (id) {\n if (isUnmountedRef.current) return;\n dispatch({\n type: \"unregisterItem\",\n id: id\n });\n }),\n registerGroup: useAction(function (group) {\n if (isUnmountedRef.current) return;\n dispatch({\n type: \"registerGroup\",\n group: group\n });\n }),\n unregisterGroup: useAction(function (id) {\n if (isUnmountedRef.current) return;\n dispatch({\n type: \"unregisterGroup\",\n id: id\n });\n }),\n move: useAction(function (id) {\n return dispatch({\n type: \"move\",\n id: id\n });\n }),\n next: useAction(function (allTheWay) {\n return dispatch({\n type: \"next\",\n allTheWay: allTheWay\n });\n }),\n previous: useAction(function (allTheWay) {\n return dispatch({\n type: \"previous\",\n allTheWay: allTheWay\n });\n }),\n up: useAction(function (allTheWay) {\n return dispatch({\n type: \"up\",\n allTheWay: allTheWay\n });\n }),\n down: useAction(function (allTheWay) {\n return dispatch({\n type: \"down\",\n allTheWay: allTheWay\n });\n }),\n first: useAction(function () {\n return dispatch({\n type: \"first\"\n });\n }),\n last: useAction(function () {\n return dispatch({\n type: \"last\"\n });\n }),\n sort: useAction(function () {\n return dispatch({\n type: \"sort\"\n });\n }),\n unstable_setVirtual: useAction(function (value) {\n return dispatch({\n type: \"setVirtual\",\n virtual: value\n });\n }),\n setRTL: useAction(function (value) {\n return dispatch({\n type: \"setRTL\",\n rtl: value\n });\n }),\n setOrientation: useAction(function (value) {\n return dispatch({\n type: \"setOrientation\",\n orientation: value\n });\n }),\n setCurrentId: useAction(function (value) {\n return dispatch({\n type: \"setCurrentId\",\n currentId: value\n });\n }),\n setLoop: useAction(function (value) {\n return dispatch({\n type: \"setLoop\",\n loop: value\n });\n }),\n setWrap: useAction(function (value) {\n return dispatch({\n type: \"setWrap\",\n wrap: value\n });\n }),\n setShift: useAction(function (value) {\n return dispatch({\n type: \"setShift\",\n shift: value\n });\n }),\n unstable_setIncludesBaseElement: useAction(function (value) {\n return dispatch({\n type: \"setIncludesBaseElement\",\n includesBaseElement: value\n });\n }),\n reset: useAction(function () {\n return dispatch({\n type: \"reset\"\n });\n })\n });\n}\n\nexports.useCompositeState = useCompositeState;\n","'use strict';\n\nObject.defineProperty(exports, '__esModule', { value: true });\n\nvar _rollupPluginBabelHelpers = require('../_rollupPluginBabelHelpers-8f9a8751.js');\nvar createComponent = require('reakit-system/createComponent');\nvar createHook = require('reakit-system/createHook');\nvar shallowEqual = require('reakit-utils/shallowEqual');\n\n// Automatically generated\nvar ROLE_KEYS = [\"unstable_system\"];\n\nvar useRole = createHook.createHook({\n name: \"Role\",\n keys: ROLE_KEYS,\n propsAreEqual: function propsAreEqual(prev, next) {\n var prevSystem = prev.unstable_system,\n prevProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(prev, [\"unstable_system\"]);\n\n var nextSystem = next.unstable_system,\n nextProps = _rollupPluginBabelHelpers._objectWithoutPropertiesLoose(next, [\"unstable_system\"]);\n\n if (prevSystem !== nextSystem && !shallowEqual.shallowEqual(prevSystem, nextSystem)) {\n return false;\n }\n\n return shallowEqual.shallowEqual(prevProps, nextProps);\n }\n});\nvar Role = createComponent.createComponent({\n as: \"div\",\n useHook: useRole\n});\n\nexports.Role = Role;\nexports.useRole = useRole;\n","'use strict';\n\nvar _rollupPluginBabelHelpers = require('./_rollupPluginBabelHelpers-8f9a8751.js');\nvar React = require('react');\n\nfunction escapeRegExp(string) {\n return string.replace(/[.*+?^${}()|[\\]\\\\]/g, \"\\\\$&\");\n}\n\nfunction getMatches(inputValue, values, limit, list, autoSelect, minValueLength) {\n if (limit === 0 || inputValue.length < minValueLength) {\n // We don't want to populate combobox.matches if inputValue doesn't have\n // enough characters.\n return [];\n }\n\n var length = limit === false ? undefined : limit;\n\n if (!list) {\n // If list is false, this means that values aren't expected to be filtered.\n return values.slice(0, length);\n }\n\n var regex = new RegExp(escapeRegExp(inputValue), \"i\");\n var matches = [];\n\n if (autoSelect) {\n var match = values.find(function (value) {\n return value.search(regex) === 0;\n });\n\n if (match) {\n matches.push(match);\n }\n }\n\n for (var _iterator = _rollupPluginBabelHelpers._createForOfIteratorHelperLoose(values), _step; !(_step = _iterator()).done;) {\n var value = _step.value;\n\n if (length && matches.length >= length) {\n break;\n } // Excludes first match, that can be auto selected\n\n\n if (value !== matches[0] && value.search(regex) !== -1) {\n matches.push(value);\n }\n }\n\n return matches;\n}\n\nfunction useComboboxBaseState(composite, _temp) {\n var _ref = _temp === void 0 ? {} : _temp,\n _ref$inputValue = _ref.inputValue,\n initialInputValue = _ref$inputValue === void 0 ? \"\" : _ref$inputValue,\n _ref$minValueLength = _ref.minValueLength,\n initialMinValueLength = _ref$minValueLength === void 0 ? 0 : _ref$minValueLength,\n _ref$values = _ref.values,\n initialValues = _ref$values === void 0 ? [] : _ref$values,\n _ref$limit = _ref.limit,\n initialLimit = _ref$limit === void 0 ? 10 : _ref$limit,\n _ref$list = _ref.list,\n initialList = _ref$list === void 0 ? !!initialValues.length : _ref$list,\n _ref$inline = _ref.inline,\n initialInline = _ref$inline === void 0 ? false : _ref$inline,\n _ref$autoSelect = _ref.autoSelect,\n initialAutoSelect = _ref$autoSelect === void 0 ? false : _ref$autoSelect;\n\n var valuesById = React.useRef({});\n\n var _React$useState = React.useState(initialInputValue),\n inputValue = _React$useState[0],\n setInputValue = _React$useState[1];\n\n var _React$useState2 = React.useState(initialMinValueLength),\n minValueLength = _React$useState2[0],\n setMinValueLength = _React$useState2[1];\n\n var _React$useState3 = React.useState(initialValues),\n values = _React$useState3[0],\n setValues = _React$useState3[1];\n\n var _React$useState4 = React.useState(initialLimit),\n limit = _React$useState4[0],\n setLimit = _React$useState4[1];\n\n var _React$useState5 = React.useState(initialList),\n list = _React$useState5[0],\n setList = _React$useState5[1];\n\n var _React$useState6 = React.useState(initialInline),\n inline = _React$useState6[0],\n setInline = _React$useState6[1];\n\n var _React$useState7 = React.useState(initialAutoSelect),\n autoSelect = _React$useState7[0],\n setAutoSelect = _React$useState7[1];\n\n var matches = React.useMemo(function () {\n return getMatches(inputValue, values, limit, list, autoSelect, minValueLength);\n }, [inputValue, values, limit, list, autoSelect, minValueLength]);\n var currentValue = React.useMemo(function () {\n return composite.currentId ? valuesById.current[composite.currentId] : undefined;\n }, [valuesById, composite.currentId]);\n var items = React.useMemo(function () {\n composite.items.forEach(function (item) {\n if (item.id) {\n item.value = valuesById.current[item.id];\n }\n });\n return composite.items;\n }, [composite.items]);\n var registerItem = React.useCallback(function (item) {\n composite.registerItem(item);\n\n if (item.id) {\n valuesById.current[item.id] = item.value;\n }\n }, [composite.registerItem]);\n var unregisterItem = React.useCallback(function (id) {\n composite.unregisterItem(id);\n delete valuesById.current[id];\n }, [composite.unregisterItem]);\n return _rollupPluginBabelHelpers._objectSpread2(_rollupPluginBabelHelpers._objectSpread2({}, composite), {}, {\n menuRole: \"listbox\",\n items: items,\n registerItem: registerItem,\n unregisterItem: unregisterItem,\n visible: true,\n inputValue: inputValue,\n minValueLength: minValueLength,\n currentValue: currentValue,\n values: values,\n limit: limit,\n matches: matches,\n list: list,\n inline: inline,\n autoSelect: autoSelect,\n setInputValue: setInputValue,\n setMinValueLength: setMinValueLength,\n setValues: setValues,\n setLimit: setLimit,\n setList: setList,\n setInline: setInline,\n setAutoSelect: setAutoSelect\n });\n}\n\nexports.useComboboxBaseState = useComboboxBaseState;\n"],"sourceRoot":""}