{"version":3,"file":"chunks/a9793090b4e822.js","mappings":"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AAM,IACN4lH,QAAS,YACR,CACD5lH,KAAM,IACN4lH,QAAS,oBACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,IACN4lH,QAAS,+CACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,IACN4lH,QAAS,cACR,CACD5lH,KAAM,IACN4lH,QAAS,UACR,CACD5lH,KAAM,IACN4lH,QAAS,qBACR,CACD5lH,KAAM,IACN4lH,QAAS,qBACR,CACD5lH,KAAM,IACN4lH,QAAS,mBACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,IACN4lH,QAAS,sCACR,CACD5lH,KAAM,IACN4lH,QAAS,YACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,IACN4lH,QAAS,cACR,CACD5lH,KAAM,IACN4lH,QAAS,SACR,CACD5lH,KAAM,IACN4lH,QAAS,mBACR,CACD5lH,KAAM,IACN4lH,QAAS,kBACR,CACD5lH,KAAM,IACN4lH,QAAS,uCACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,KACN4lH,QAAS,OACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,KACN4lH,QAAS,MACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,IACN4lH,QAAS,aACR,CACD5lH,KAAM,IACN4lH,QAAS,iBACR,CACD5lH,KAAM,IACN4lH,QAAS,kBACR,CACD5lH,KAAM,KACN4lH,QAAS,MACR,CACD5lH,KAAM,IACN4lH,QAAS,mCACR,CACD5lH,KAAM,IACN4lH,QAAS,UACR,CACD5lH,KAAM,IACN4lH,QAAS,mBACR,CACD5lH,KAAM,IACN4lH,QAAS,mBACR,CACD5lH,KAAM,KACN4lH,QAAS,KACR,CACD5lH,KAAM,IACN4lH,QAAS,wBACR,CACD5lH,KAAM,IAC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","sources":["webpack:///./node_modules/@atlaskit/analytics-next/dist/es2019/components/AnalyticsListener/LegacyAnalyticsListener.js","webpack:///./node_modules/@atlaskit/analytics-next/dist/es2019/components/AnalyticsListener/ModernAnalyticsListener.js","webpack:///./node_modules/@atlaskit/analytics-next/dist/es2019/components/AnalyticsListener/index.js","webpack:///./node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlaskit/analytics-next/node_modules/@atlaskit/platform-feature-flags/dist/es2019/debug.js","webpack:///./node_modules/@atlaskit/analytics-next/node_modules/@atlaskit/platform-feature-flags/dist/es2019/resolvers.js","webpack:///./node_modules/@atlaskit/analytics-next/node_modules/@atlaskit/platform-feature-flags/dist/es2019/index.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContext.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/analytics-next/dist/esm/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContextConsumer.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/styled/utils.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/styled/constants.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/helpers/getStyledAvatar.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/theme/index.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/styled/Avatar.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/styled/AvatarImage.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/components/AvatarImage.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/helpers/getPresenceSVG.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/styled/Icon.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/components/Presence.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/helpers/getStatusSVG.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/components/Status.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/components/Avatar.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/hoc/mapProps.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/analytics-next/dist/esm/createAndFireEvent.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsContext.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/components/constants.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/helpers/getProps.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/components/CustomComponentProxy.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/helpers/styledCache.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/hoc/withPseudoState.js","webpack:///./node_modules/@atlaskit/avatar/dist/esm/utils.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/theme/dist/es2019/components/Theme.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/theme/dist/es2019/hoc.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/theme/dist/es2019/utils/createTheme.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/avatar/node_modules/tslib/tslib.es6.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlaskit/blanket/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlaskit/blanket/dist/es2019/blanket.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/components/Button.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/components/Content.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/components/IconWrapper.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/components/InnerWrapper.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/components/LoadingSpinner.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/components/getStyles.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/components/utils.js","webpack:///./node_modules/@atlaskit/button/dist/cjs/theme.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/components/getStyles.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/components/utils.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/theme.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/components/Content.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/components/IconWrapper.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/components/InnerWrapper.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/components/LoadingSpinner.js","webpack:///./node_modules/@atlaskit/button/dist/es2019/components/Button.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContext.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/createAndFireEvent.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsListener.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsErrorBoundary.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/useAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/useCallbackWithAnalytics.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/cleanProps.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsContext.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContextConsumer.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/spinner/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/spinner/dist/es2019/spinner.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/components/AtlaskitThemeProvider.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/components/Appearance.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/components/Reset.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/hoc.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/components/Theme.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/createTheme.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/button/node_modules/memoize-one/dist/memoize-one.esm.js","webpack:///./node_modules/@atlaskit/button/node_modules/tslib/tslib.es6.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/platform-feature-flags/dist/es2019/debug.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/platform-feature-flags/dist/es2019/resolvers.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/platform-feature-flags/dist/es2019/index.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/checkbox/dist/es2019/internal/label.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/icon/dist/es2019/components/utils.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/icon/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/icon/dist/es2019/components/styles.js","webpack:///./node_modules/@atlaskit/checkbox/node_modules/@atlaskit/icon/dist/es2019/components/svg.js","webpack:///./node_modules/@atlaskit/checkbox/dist/es2019/internal/checkbox-icon.js","webpack:///./node_modules/@atlaskit/checkbox/dist/es2019/internal/label-text.js","webpack:///./node_modules/@atlaskit/checkbox/dist/es2019/internal/required-indicator.js","webpack:///./node_modules/@atlaskit/checkbox/dist/es2019/checkbox.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContext.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/analytics-next/dist/esm/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContextConsumer.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/analytics-next/dist/esm/createAndFireEvent.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContext.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsContext.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/analytics-next/dist/esm/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContextConsumer.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/theme/dist/es2019/utils/math.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/styled/Item.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/utils/index.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/components/Element.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/components/Item.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/styled/Group.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/components/Group.js","webpack:///./node_modules/@atlaskit/layer/dist/esm/components/internal/ScrollBlock.js","webpack:///./node_modules/@atlaskit/layer/dist/esm/components/internal/helpers.js","webpack:///./node_modules/@atlaskit/layer/dist/esm/styledContentContainer.js","webpack:///./node_modules/@atlaskit/layer/dist/esm/components/Layer.js","webpack:///./node_modules/@atlaskit/layer/node_modules/raf-schd/esm/index.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/theme/dist/es2019/components/Theme.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/theme/dist/es2019/utils/createTheme.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/spinner/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/spinner/dist/es2019/spinner.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/styled/Droplist.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/theme/item-theme.js","webpack:///./node_modules/@atlaskit/droplist/dist/esm/components/Droplist.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/util/contextNamespace.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/util/keys.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/components/context/DropdownItemFocusManager.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/components/context/DropdownItemClickManager.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/components/context/DropdownItemSelectionCache.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/styled/WidthConstrainer.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/components/DropdownMenuStateless.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/analytics-next/dist/esm/createAndFireEvent.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsContext.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/components/DropdownMenu.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/icon/cjs/components/Icon.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/icon/cjs/constants.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/icon/glyph/chevron-down.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/dropdown-menu/node_modules/tslib/tslib.es6.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/icon/cjs/components/Icon.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/icon/cjs/constants.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/icon/glyph/checkbox.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/icon/glyph/radio.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/droplist/node_modules/tslib/tslib.es6.js","webpack:///./node_modules/@atlaskit/ds-explorations/dist/es2019/components/box.partial.js","webpack:///./node_modules/@atlaskit/ds-explorations/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/ds-explorations/dist/es2019/components/surface-provider.js","webpack:///./node_modules/@atlaskit/ds-explorations/dist/es2019/internal/color-map.js","webpack:///./node_modules/@atlaskit/ds-explorations/dist/es2019/components/text.partial.js","webpack:///./node_modules/@atlaskit/ds-explorations/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlaskit/ds-explorations/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlaskit/ds-explorations/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-auto-focus.js","webpack:///./node_modules/@atlaskit/ds-lib/dist/es2019/utils/keycodes.js","webpack:///./node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-close-on-escape-press.js","webpack:///./node_modules/@atlaskit/ds-lib/dist/es2019/utils/merge-refs.js","webpack:///./node_modules/@atlaskit/ds-lib/dist/es2019/utils/noop.js","webpack:///./node_modules/@atlaskit/focus-ring/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlaskit/focus-ring/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlaskit/focus-ring/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlaskit/focus-ring/dist/es2019/focus-ring.js","webpack:///./node_modules/@atlaskit/item/dist/esm/util/theme.js","webpack:///./node_modules/@atlaskit/item/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlaskit/item/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/item/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/item/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/modal-transition.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/utils/noop.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-lazy-ref.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-lazy-callback.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-state-ref.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/hooks/use-modal-stack.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/utils/array.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/utils/all-affected.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/focusInside.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/utils/tabOrder.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/utils/tabbables.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/utils/tabUtils.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/utils/DOMutils.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/utils/firstFocus.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/focusMerge.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/setFocus.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/react-focus-lock/dist/es2015/util.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/react-focus-lock/dist/es2015/Trap.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/focus-lock/dist/es2015/focusIsHidden.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/react-focus-lock/dist/es2015/FocusGuard.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/react-focus-lock/dist/es2015/Lock.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/react-focus-lock/dist/es2015/index.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/utils/merge-refs.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-document-event.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/hooks/use-prevent-programmatic-scroll.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/styles/modal.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/ds-lib/dist/es2019/utils/noop.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/shared/block-events.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/shared/colors.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/shared/css.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/shared/button-base.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-auto-focus.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/shared/get-is-only-single-icon.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/spinner/dist/es2019/spinner.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/shared/loading-spinner.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/custom-theme-button/theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/button/dist/es2019/custom-theme-button/custom-theme-button.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/footer.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/header.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/raf-schd/esm/index.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/styles/scroll-container.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/scroll-container.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/content.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/positioner.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/modal.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-window-event.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-close-on-escape-press.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/utils/keycodes.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/hooks/use-on-motion-finish.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-auto-focus.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/components/modal-wrapper.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/ds-lib/dist/es2019/hooks/use-previous-value.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@emotion/styled/dist/styled.browser.esm.js","webpack:///./node_modules/@atlaskit/modal-dialog/dist/es2019/internal/styles/content.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/dist/es2019/components/utils.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/dist/es2019/components/styles.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/dist/es2019/components/icon.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/glyph/error.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/icon/glyph/warning.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlaskit/modal-dialog/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/utils/use-force-render.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/entering/exiting-persistence.js","webpack:///./node_modules/@atlaskit/motion/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlaskit/motion/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlaskit/motion/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/utils/timer-hooks.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/entering/staggered-entrance.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/entering/keyframes-motion.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/utils/use-unique-id.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/entering/fade-in.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/utils/accessibility.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/utils/curves.js","webpack:///./node_modules/@atlaskit/motion/dist/es2019/utils/durations.js","webpack:///./node_modules/@atlaskit/popper/dist/es2019/popper.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/internal/constants.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/internal/utils/portal-dom-utils.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/internal/components/internal-portal.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/internal/hooks/use-is-subsequent-render.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/internal/utils/portal-custom-event.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/internal/hooks/use-portal-event.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/portal/dist/es2019/portal.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/tslib/tslib.es6.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContext.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/esm/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContextConsumer.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/memoize-one/dist/memoize-one.esm.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/react-popper/lib/esm/Manager.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/react-popper/lib/esm/utils.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/react-popper/lib/esm/Popper.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/popper/dist/es2019/Popper.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/portal/dist/es2019/components/Portal.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/tiny-invariant/dist/tiny-invariant.esm.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/portal/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/tooltip/dist/es2019/styled.js","webpack:///./node_modules/@atlaskit/tooltip/dist/es2019/components/Animation.js","webpack:///./node_modules/@atlaskit/tooltip/dist/es2019/components/utils/analytics-payloads.js","webpack:///./node_modules/@atlaskit/tooltip/dist/es2019/components/Tooltip.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/esm/createAndFireEvent.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsContext.js","webpack:///./node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/DynamicConfig.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/ErrorBoundary.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/Errors.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/Layer.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/LogEvent.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/SDKVersion.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/StatsigClient.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/StatsigIdentity.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/StatsigLogger.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/StatsigNetwork.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/StatsigSDKOptions.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/StatsigStore.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/index.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/utils/BootstrapValidator.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/utils/Constants.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/utils/Hashing.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/utils/StatsigLocalStorage.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/statsig-js-lite/dist/utils/Timing.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/icon/cjs/components/Icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/icon/cjs/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/icon/glyph/chevron-down.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/icon/glyph/chevron-left-large.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/icon/glyph/chevron-up.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/icon/glyph/cross.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/color-palettes.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/elevation.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/typography.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/utils/math.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/utils/createTheme.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/components/Theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/components/AtlaskitThemeProvider.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/components/Appearance.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/components/Reset.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/hoc.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/camelcase/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/dist/es2019/components/utils.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/dist/es2019/components/styles.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/dist/es2019/components/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/add.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/app-switcher.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/check-circle-outline.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/check-circle.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/cross-circle.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/cross.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/editor/panel.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/email.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/info.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/refresh.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/icon/glyph/warning.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/node_modules/@atlaskit/icon/cjs/components/Icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/node_modules/@atlaskit/icon/cjs/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/node_modules/@atlaskit/icon/glyph/hipchat/chevron-down.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/node_modules/@atlaskit/icon/glyph/select-clear.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/theme/dist/es2019/utils/getTheme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/dom-helpers/class/addClass.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/dom-helpers/class/hasClass.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/dom-helpers/class/removeClass.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-fast-compare/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-input-autosize/lib/AutosizeInput.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-is/cjs/react-is.production.min.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-is/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-transition-group/CSSTransition.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-transition-group/ReplaceTransition.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-transition-group/Transition.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-transition-group/TransitionGroup.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-transition-group/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-transition-group/utils/ChildMapping.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-transition-group/utils/PropTypes.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/tslib/tslib.es6.js","webpack:///./node_modules/@emotion/styled-base/node_modules/@emotion/memoize/dist/memoize.browser.esm.js","webpack:///./node_modules/@emotion/styled-base/node_modules/@emotion/is-prop-valid/dist/is-prop-valid.browser.esm.js","webpack:///./node_modules/@emotion/styled-base/node_modules/@emotion/hash/dist/hash.browser.esm.js","webpack:///./node_modules/@emotion/styled-base/node_modules/@emotion/unitless/dist/unitless.browser.esm.js","webpack:///./node_modules/@emotion/styled-base/node_modules/@emotion/serialize/dist/serialize.browser.esm.js","webpack:///./node_modules/@emotion/styled-base/dist/styled-base.browser.esm.js","webpack:///./node_modules/@emotion/is-prop-valid/node_modules/@emotion/memoize/dist/emotion-memoize.esm.js","webpack:///./node_modules/@emotion/is-prop-valid/dist/emotion-is-prop-valid.esm.js","webpack:///./node_modules/@emotion/styled/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@emotion/styled/base/dist/emotion-styled-base.browser.esm.js","webpack:///./node_modules/@emotion/styled/dist/emotion-styled.browser.esm.js","webpack:///./node_modules/immer/dist/immer.esm.mjs","webpack:///./node_modules/@reduxjs/toolkit/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./node_modules/@reduxjs/toolkit/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./node_modules/@reduxjs/toolkit/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///./node_modules/@reduxjs/toolkit/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///./node_modules/@reduxjs/toolkit/node_modules/@babel/runtime/helpers/esm/objectSpread2.js","webpack:///./node_modules/@reduxjs/toolkit/node_modules/redux/es/redux.js","webpack:///./node_modules/@reduxjs/toolkit/node_modules/redux-thunk/es/index.js","webpack:///./node_modules/@reduxjs/toolkit/dist/redux-toolkit.esm.js","webpack:///./node_modules/array-find/find.js","webpack:///./node_modules/async-retry/lib/index.js","webpack:///./node_modules/bind-event-listener/dist/bind-all.js","webpack:///./node_modules/bind-event-listener/dist/bind.js","webpack:///./node_modules/bind-event-listener/dist/index.js","webpack:///./node_modules/bowser/es5.js","webpack:///./node_modules/create-react-context/lib/implementation.js","webpack:///./node_modules/create-react-context/lib/index.js","webpack:///./node_modules/exenv/index.js","webpack:///./node_modules/final-form-focus/dist/final-form-focus.es.js","webpack:///./node_modules/final-form/dist/final-form.es.js","webpack:///./node_modules/flushable/dist/index.umd.js","webpack:///./node_modules/formik/node_modules/react-fast-compare/index.js","webpack:///./node_modules/gud/index.js","webpack:///./node_modules/history/node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///./node_modules/history/index.js","webpack:///./node_modules/isomorphic-fetch/fetch-npm-browserify.js","webpack:///./node_modules/popper.js/dist/esm/popper.js","webpack:///./node_modules/property-expr/index.js","webpack:///./node_modules/react-addons-text-content/dist/react-addons-text-content.js","webpack:///./node_modules/react-clientside-effect/lib/index.es.js","webpack:///./node_modules/react-fast-compare/index.js","webpack:///./node_modules/react-google-recaptcha-v3/dist/react-google-recaptcha-v3.esm.js","webpack:///./node_modules/react-lifecycles-compat/react-lifecycles-compat.es.js","webpack:///./node_modules/react-node-resolver/lib/NodeResolver.js","webpack:///./node_modules/react-node-resolver/lib/index.js","webpack:///./node_modules/react-popper/lib/esm/Manager.js","webpack:///./node_modules/react-popper/lib/esm/usePopper.js","webpack:///./node_modules/react-popper/lib/esm/Popper.js","webpack:///./node_modules/react-popper/lib/esm/utils.js","webpack:///./node_modules/react-router-dom/index.js","webpack:///./node_modules/react-router/index.js","webpack:///./node_modules/react-scrolllock/dist/ScrollLock.js","webpack:///./node_modules/react-scrolllock/dist/TouchScrollable.js","webpack:///./node_modules/react-scrolllock/dist/index.js","webpack:///./node_modules/react-scrolllock/dist/utils.js","webpack:///./node_modules/react-scrolllock/dist/withLockSheet.js","webpack:///./node_modules/react-scrolllock/dist/withTouchListeners.js","webpack:///./node_modules/react-transition-group/esm/config.js","webpack:///./node_modules/react-transition-group/esm/TransitionGroupContext.js","webpack:///./node_modules/react-transition-group/esm/utils/reflow.js","webpack:///./node_modules/react-transition-group/esm/Transition.js","webpack:///./node_modules/react-uid/dist/es2019/context.js","webpack:///./node_modules/react-uid/dist/es2019/hooks.js","webpack:///./node_modules/react-uid/dist/es2019/uid.js","webpack:///./node_modules/retry/index.js","webpack:///./node_modules/retry/lib/retry.js","webpack:///./node_modules/retry/lib/retry_operation.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/src/feature-gate-client.tsx","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/src/index.ts","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/src/use-experiment.ts","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/src/use-feature-gate.ts","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/tslib/tslib.es6.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/analytics-next/dist/esm/UIAnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/analytics-next/dist/esm/AnalyticsContextConsumer.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/analytics-next/dist/esm/withAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/utils/initials.ts","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/user-avatar.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/blank-pointer-image.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/empty-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/analytics-next/dist/esm/useAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/node_modules/@atlaskit/analytics-next/dist/esm/useCallbackWithAnalytics.js","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/tracking.ts","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/chevron.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/site-link.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/site-list.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/product-dropdown-item.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/products-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/utils/filters.ts","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/user-nav.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/user-profile-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/components/trigger.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/user-profile-dropdown.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-user-profile-dropdown/src/mobile-trigger.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/messages/sign-up-form.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/dist/es2019/TooltipPrimitive.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/styled.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form-header/styled.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form-header/view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form-header/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form-header/useFormHeaderLabels.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/sign-up-form-header/getEditionLabelFragment.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/sign-up-form-header/getProductLabelFragment.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/n2n-field-progress.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/n2n-field-validation.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/logged-in-form-valid.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/logged-in-form-data.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/shared-form-data.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/n2n-deferred-password-field-validation.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/n2n-deferred-password-field-progress.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-devops/logged-in-form-input.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/constants.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/product-data.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/data-label.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/bundle-data.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/page-header-labels.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/types.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/shadow-it.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/ducks-experimentation/deferred-sitename.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/model/wac-signup-form.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/slice/sliceFeatureFlags.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/slice/sliceProductKeys.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/store.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/components/Context.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/utils/batch.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/utils/Subscription.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/utils/useIsomorphicLayoutEffect.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/components/Provider.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/hooks/useReduxContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/hooks/useStore.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/hooks/useDispatch.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/hooks/useSelector.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-redux/es/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/redux/hook.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/social-sign-up-button/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/social-sign-up-button/styled.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/social-sign-up-button/view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/shared/block-events.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/shared/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/shared/css.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/shared/button-base.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/button.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/shared/get-is-only-single-icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/social-sign-up/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/social-sign-up/error.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/js-cookie/dist/js.cookie.mjs","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-sign-up-form-global-configuration.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-layout-container/analytics.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/sign-up-layout-container/constants.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-layout-container/data-migration.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/spinner/dist/esm/Spinner/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/spinner/dist/esm/Spinner/styledContainer.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/spinner/dist/esm/Spinner/styledSvg.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/spinner/dist/esm/Spinner/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/platform-feature-flags/dist/es2019/debug.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/platform-feature-flags/dist/es2019/resolvers.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/platform-feature-flags/dist/es2019/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/dist/es2019/component-tokens.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/dist/es2019/styles.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/textfield/dist/es2019/text-field.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-debounce.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-site-name-validation.ts","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/transport/sender/types.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/utils/object-utils.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/transport/sender/network.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/transport/sender/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/hookable/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/transport/queue/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/error/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/catalog/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/metric/types.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/metric/constants.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/core/metric/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/i18n/en.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/callback-provider/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/constants.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/paint-timings/helpers.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/interactive-timings/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/utils.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/paint-timings/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/interactive-timings/helpers.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/utils/performance-utils.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/resource-timings/constants.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/resource-timings/normalise.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/resource-timings/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/resource-timings/blacklist.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/errors-plugin/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/browser-plugin/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/plugins/performance-mark-plugin/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/user-agent-info/constants.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/page-visibility/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/page-visibility/helpers.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/page-tracker/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/client/config.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/client/constants.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/client/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/client/helpers.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/common/user-agent-info/index.js","webpack:///./node_modules/@atlassiansox/metal-client/dist/client/es/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/metrics/performance.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/metrics/metal-client.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-authentication-methods-check.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-user-info.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/check-email-page/mini-hamlet-client.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/useResendEmailAPI.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/useResendEmailData.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/nameSanitize.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/sign-up-layout-container/data-product.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/sign-up-layout-container/data-label.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/sign-up-layout-container/social-proof.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/org-data.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-form/bitbucket-analytics.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-org-info.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-sign-up-form-ui-state.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-sign-up-form-config.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/email-field.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-email-validation.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/Icons/tooltip-icon.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/site-name-field.tsx","webpack:///./node_modules/@atlaskit/item/dist/esm/util/getDisplayName.js","webpack:///./node_modules/@atlaskit/item/dist/esm/util/safeContextCall.js","webpack:///./node_modules/@atlaskit/item/dist/esm/util/contextNamespace.js","webpack:///./node_modules/@atlaskit/item/dist/esm/styled/Item.js","webpack:///./node_modules/@atlaskit/item/dist/esm/styled/ItemParts.js","webpack:///./node_modules/@atlaskit/item/dist/esm/components/Item.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/components/item/DropdownItem.js","webpack:///./node_modules/@atlaskit/item/dist/esm/components/hoc/withItemClick.js","webpack:///./node_modules/@atlaskit/item/dist/esm/components/hoc/withItemFocus.js","webpack:///./node_modules/@atlaskit/item/dist/esm/styled/ItemGroup.js","webpack:///./node_modules/@atlaskit/item/dist/esm/components/ItemGroup.js","webpack:///./node_modules/@atlaskit/dropdown-menu/dist/esm/components/group/DropdownItemGroup.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/site-picker-field.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-site-permission.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/spinner/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/node_modules/@atlaskit/spinner/dist/es2019/spinner.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/shared/loading-spinner.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/button/dist/es2019/loading-button.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/submit-buttons.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useCallbackWithAnalytics.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/display-name-field.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/info-box.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/bitbucket-jira-info-box.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-form/free-breach.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/breach-info-box.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/bitbucket-account-picker.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/dist/es2019/styles.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/dist/es2019/radio.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/radio/dist/es2019/radio-group.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/gdpr-location.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/components/AnalyticsContext/LegacyAnalyticsContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/components/AnalyticsContext/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/analytics-next/dist/es2019/components/AnalyticsContext/ModernAnalyticsContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/invalid-migration-source.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-form/analytics.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-form/form-submit.ts","webpack:///./node_modules/react-ga/dist/esm/utils/console/warn.js","webpack:///./node_modules/react-ga/dist/esm/components/OutboundLink.js","webpack:///./node_modules/react-ga/dist/esm/utils/redactEmail.js","webpack:///./node_modules/react-ga/dist/esm/utils/trim.js","webpack:///./node_modules/react-ga/dist/esm/utils/toTitleCase.js","webpack:///./node_modules/react-ga/dist/esm/utils/loadGA.js","webpack:///./node_modules/react-ga/dist/esm/utils/console/log.js","webpack:///./node_modules/react-ga/dist/esm/utils/testModeAPI.js","webpack:///./node_modules/react-ga/dist/esm/core.js","webpack:///./node_modules/react-ga/dist/esm/utils/format.js","webpack:///./node_modules/react-ga/dist/esm/utils/mightBeEmail.js","webpack:///./node_modules/react-ga/dist/esm/utils/removeLeadingSlash.js","webpack:///./node_modules/react-ga/dist/esm/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/check-email-page/index.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/check-email-page/cart-service.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/check-email-page/analytics.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/model/check-email-page.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/utils.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/wrapper.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlassian-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/components/InboxImage/index.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/styled.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/components/ResendEmailButton/index.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/container/layout-default.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/components/EnvelopeImage/index.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/container/layout-devops.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/check-email-page/check-email-page.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/bitbucket-organization-picker.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/Icons/UnionIcon.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/carousel-end.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/form-welcome-message.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/get-defer-sitename-experiment-cohort.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafSyntheticEventHandler.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/dist/es2019/internal/shared-schedule.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/dist/es2019/internal/tooltip-manager.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/dist/es2019/TooltipContainer.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/dist/es2019/utilities.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/dist/es2019/Tooltip.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/tooltip/dist/es2019/internal/use-unique-id.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/components/eula-component.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/sanitize-custom-signup-context.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-form/bitbucket-form-submit.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-form/view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-site-name-generation.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/utility/generate-random-digit.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-defer-sitename-exposed.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/new-url.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/sign-up-form/product-edition.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/service/social-sign-up.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/social-sign-up/view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/signup-header/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/signup-header/components/subtitle.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlassian-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlassian-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlassian-start-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlassian-analytics-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlassian-analytics-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/bitbucket-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/bitbucket-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/bitbucket-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/compass-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/compass-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/compass-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/confluence-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/confluence-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/confluence-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/halp-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/halp-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/halp-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/hipchat-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/hipchat-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/hipchat-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-align-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-align-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-align-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-core-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-core-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-core-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-product-discovery-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-product-discovery-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-service-desk-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-service-desk-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-service-desk-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-service-management-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-service-management-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-service-management-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-software-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-software-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-software-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-work-management-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-work-management-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/jira-work-management-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/opsgenie-logo/old-icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/opsgenie-logo/old-logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/opsgenie-logo/old-wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/opsgenie-logo/new-icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/opsgenie-logo/new-logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/opsgenie-logo/new-wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/statuspage-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/statuspage-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/statuspage-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/stride-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/stride-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/stride-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/trello-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/trello-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/trello-logo/wordmark.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlas-logo/icon.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/logo/dist/es2019/atlas-logo/logo.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/signup-header/components/logo.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/signup-header/view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/lozenge/dist/es2019/Lozenge/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/side-information-component/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/side-information-component/component/logo.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/side-information-component/container/layout-default.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/side-information-component/container/layout-devops.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/side-information-component/container/layout-developer-mode.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/side-information-component/container/layout-first-impressions.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/side-information-component/view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/utility/social-logos.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/styled.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/social-sign-up-button.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/social-signup-buttons.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/social-signup.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/side-info.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/signup.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/side-info-devops.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/side-info-first-impressions.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/asset/header-background-devops.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/styled.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/header-devops.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/container/layout-default.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/container/layout-standalone.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/container/layout-devops.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/theme/dist/es2019/elevation.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/first-impressions/styled.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/component/first-impressions/first-impressions-form.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/container/layout-first-impressions.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/sign-up-layout-container/view.tsx","webpack:///./node_modules/jwt-decode/build/jwt-decode.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/error-locale/error-locale.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/utility/social-proof.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/use-first-impressions-state.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/components/page-header/page-header-logo.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/components/page-header/page-header-subtitle.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/components/page-header/page-header.tsx","webpack:///./node_modules/formik/node_modules/deepmerge/dist/es.js","webpack:///./node_modules/lodash-es/_listCacheClear.js","webpack:///./node_modules/lodash-es/eq.js","webpack:///./node_modules/lodash-es/_assocIndexOf.js","webpack:///./node_modules/lodash-es/_listCacheDelete.js","webpack:///./node_modules/lodash-es/_ListCache.js","webpack:///./node_modules/lodash-es/_listCacheGet.js","webpack:///./node_modules/lodash-es/_listCacheHas.js","webpack:///./node_modules/lodash-es/_listCacheSet.js","webpack:///./node_modules/lodash-es/isObject.js","webpack:///./node_modules/lodash-es/isFunction.js","webpack:///./node_modules/lodash-es/_coreJsData.js","webpack:///./node_modules/lodash-es/_isMasked.js","webpack:///./node_modules/lodash-es/_toSource.js","webpack:///./node_modules/lodash-es/_baseIsNative.js","webpack:///./node_modules/lodash-es/_getNative.js","webpack:///./node_modules/lodash-es/_getValue.js","webpack:///./node_modules/lodash-es/_Map.js","webpack:///./node_modules/lodash-es/_nativeCreate.js","webpack:///./node_modules/lodash-es/_hashGet.js","webpack:///./node_modules/lodash-es/_hashHas.js","webpack:///./node_modules/lodash-es/_Hash.js","webpack:///./node_modules/lodash-es/_hashClear.js","webpack:///./node_modules/lodash-es/_hashDelete.js","webpack:///./node_modules/lodash-es/_hashSet.js","webpack:///./node_modules/lodash-es/_getMapData.js","webpack:///./node_modules/lodash-es/_isKeyable.js","webpack:///./node_modules/lodash-es/_MapCache.js","webpack:///./node_modules/lodash-es/_mapCacheClear.js","webpack:///./node_modules/lodash-es/_mapCacheDelete.js","webpack:///./node_modules/lodash-es/_mapCacheGet.js","webpack:///./node_modules/lodash-es/_mapCacheHas.js","webpack:///./node_modules/lodash-es/_mapCacheSet.js","webpack:///./node_modules/lodash-es/_Stack.js","webpack:///./node_modules/lodash-es/_stackClear.js","webpack:///./node_modules/lodash-es/_stackDelete.js","webpack:///./node_modules/lodash-es/_stackGet.js","webpack:///./node_modules/lodash-es/_stackHas.js","webpack:///./node_modules/lodash-es/_stackSet.js","webpack:///./node_modules/lodash-es/_defineProperty.js","webpack:///./node_modules/lodash-es/_baseAssignValue.js","webpack:///./node_modules/lodash-es/_assignValue.js","webpack:///./node_modules/lodash-es/_copyObject.js","webpack:///./node_modules/lodash-es/_baseIsArguments.js","webpack:///./node_modules/lodash-es/isArguments.js","webpack:///./node_modules/lodash-es/isArray.js","webpack:///./node_modules/lodash-es/isBuffer.js","webpack:///./node_modules/lodash-es/stubFalse.js","webpack:///./node_modules/lodash-es/_isIndex.js","webpack:///./node_modules/lodash-es/isLength.js","webpack:///./node_modules/lodash-es/_baseIsTypedArray.js","webpack:///./node_modules/lodash-es/_baseUnary.js","webpack:///./node_modules/lodash-es/_nodeUtil.js","webpack:///./node_modules/lodash-es/isTypedArray.js","webpack:///./node_modules/lodash-es/_arrayLikeKeys.js","webpack:///./node_modules/lodash-es/_baseTimes.js","webpack:///./node_modules/lodash-es/_isPrototype.js","webpack:///./node_modules/lodash-es/_nativeKeys.js","webpack:///./node_modules/lodash-es/_baseKeys.js","webpack:///./node_modules/lodash-es/isArrayLike.js","webpack:///./node_modules/lodash-es/keys.js","webpack:///./node_modules/lodash-es/_baseKeysIn.js","webpack:///./node_modules/lodash-es/_nativeKeysIn.js","webpack:///./node_modules/lodash-es/keysIn.js","webpack:///./node_modules/lodash-es/_cloneBuffer.js","webpack:///./node_modules/lodash-es/_copyArray.js","webpack:///./node_modules/lodash-es/stubArray.js","webpack:///./node_modules/lodash-es/_getSymbols.js","webpack:///./node_modules/lodash-es/_arrayFilter.js","webpack:///./node_modules/lodash-es/_arrayPush.js","webpack:///./node_modules/lodash-es/_getSymbolsIn.js","webpack:///./node_modules/lodash-es/_baseGetAllKeys.js","webpack:///./node_modules/lodash-es/_getAllKeys.js","webpack:///./node_modules/lodash-es/_getAllKeysIn.js","webpack:///./node_modules/lodash-es/_DataView.js","webpack:///./node_modules/lodash-es/_Promise.js","webpack:///./node_modules/lodash-es/_Set.js","webpack:///./node_modules/lodash-es/_WeakMap.js","webpack:///./node_modules/lodash-es/_getTag.js","webpack:///./node_modules/lodash-es/_initCloneArray.js","webpack:///./node_modules/lodash-es/_Uint8Array.js","webpack:///./node_modules/lodash-es/_cloneArrayBuffer.js","webpack:///./node_modules/lodash-es/_cloneRegExp.js","webpack:///./node_modules/lodash-es/_cloneSymbol.js","webpack:///./node_modules/lodash-es/_initCloneByTag.js","webpack:///./node_modules/lodash-es/_cloneDataView.js","webpack:///./node_modules/lodash-es/_cloneTypedArray.js","webpack:///./node_modules/lodash-es/_baseCreate.js","webpack:///./node_modules/lodash-es/isMap.js","webpack:///./node_modules/lodash-es/_baseIsMap.js","webpack:///./node_modules/lodash-es/isSet.js","webpack:///./node_modules/lodash-es/_baseIsSet.js","webpack:///./node_modules/lodash-es/_baseClone.js","webpack:///./node_modules/lodash-es/_initCloneObject.js","webpack:///./node_modules/lodash-es/_copySymbolsIn.js","webpack:///./node_modules/lodash-es/_baseAssignIn.js","webpack:///./node_modules/lodash-es/_copySymbols.js","webpack:///./node_modules/lodash-es/_baseAssign.js","webpack:///./node_modules/lodash-es/_arrayEach.js","webpack:///./node_modules/lodash-es/clone.js","webpack:///./node_modules/lodash-es/_arrayMap.js","webpack:///./node_modules/lodash-es/isSymbol.js","webpack:///./node_modules/lodash-es/memoize.js","webpack:///./node_modules/lodash-es/_stringToPath.js","webpack:///./node_modules/lodash-es/_memoizeCapped.js","webpack:///./node_modules/lodash-es/_toKey.js","webpack:///./node_modules/lodash-es/_baseToString.js","webpack:///./node_modules/lodash-es/toString.js","webpack:///./node_modules/lodash-es/toPath.js","webpack:///./node_modules/lodash-es/cloneDeep.js","webpack:///./node_modules/formik/dist/formik.esm.js","webpack:///./node_modules/nanoclone/src/index.js","webpack:///./node_modules/yup/es/util/printValue.js","webpack:///./node_modules/yup/es/locale.js","webpack:///./node_modules/yup/es/util/isSchema.js","webpack:///./node_modules/yup/es/util/toArray.js","webpack:///./node_modules/yup/es/ValidationError.js","webpack:///./node_modules/yup/es/util/runTests.js","webpack:///./node_modules/yup/es/Reference.js","webpack:///./node_modules/yup/es/util/createValidation.js","webpack:///./node_modules/yup/es/util/reach.js","webpack:///./node_modules/yup/es/util/ReferenceSet.js","webpack:///./node_modules/yup/es/schema.js","webpack:///./node_modules/yup/es/Condition.js","webpack:///./node_modules/yup/es/mixed.js","webpack:///./node_modules/yup/es/util/isAbsent.js","webpack:///./node_modules/yup/es/string.js","webpack:///./node_modules/yup/es/util/isodate.js","webpack:///./node_modules/yup/es/date.js","webpack:///./node_modules/yup/es/util/sortByKeyOrder.js","webpack:///./node_modules/yup/es/object.js","webpack:///./node_modules/yup/es/util/sortFields.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/components/footer-logo.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/components/product-select-buttons/product-select-button.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/components/switch-account-email-form.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/components/text-input.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/components/social-sign-up-divider.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/components/social-sign-up-button.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/views/first-impressions-logged-out-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/views/first-impressions-logged-in-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/views/first-impressions-loading-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-form-view/first-impressions-form-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-product-info.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/first-impressions-screen/first-impressions-screen.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/utility/social-proof.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/use-first-impressions-state.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/slack-promo-confluence-form-views/views/slack-promo-confluence-ineligible-form-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/slack-promo-confluence-form-views/slack-promo-confluence-form-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/slack-promo-confluence-product-info.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/slack-promo-confluence-view-first-impressions-layout.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/slack-promo-confluence-view-standalone-layout.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/slack-promo-confluence-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/slack-promo-confluence/slack-promo-confluence-screen.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/experiment-screens/experiment-screens-switch.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/hook/use-bitbucket-workspaces.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/styled.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/account-operation-url.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/legal-consents.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/signup-context.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/signup-poll-for-success.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/build-devops-product.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/site-domain.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/hook/use-devops-state.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/component/devops-side-info.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/component/devops-header.tsx","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@emotion/utils/dist/emotion-utils.browser.esm.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/analytics-next/dist/es2019/events/AnalyticsEvent.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/analytics-next/dist/es2019/events/UIAnalyticsEvent.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsContext.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useTrackedRef.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/usePlatformLeafEventHandler.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/analytics-next/dist/es2019/hooks/useAnalyticsEvents.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/primitives/dist/es2019/xcss/style-maps.partial.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/primitives/dist/es2019/components/inline.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/theme/dist/es2019/components/theme.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/theme/dist/es2019/utils/create-theme.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlaskit/progress-indicator/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlaskit/progress-indicator/dist/es2019/components/appearances.js","webpack:///./node_modules/@atlaskit/progress-indicator/dist/es2019/components/constants.js","webpack:///./node_modules/@atlaskit/progress-indicator/dist/es2019/components/indicator.js","webpack:///./node_modules/@atlaskit/progress-indicator/dist/es2019/components/progress-dots.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/component/devops-carousel.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/dist/es2019/form.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@emotion/sheet/dist/emotion-sheet.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@emotion/cache/dist/emotion-cache.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@emotion/react/dist/emotion-element-c39617d8.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@emotion/react/dist/emotion-react.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/dist/es2019/field-id-context.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@atlaskit/theme/dist/es2019/utils/get-theme.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@atlaskit/theme/dist/es2019/utils/themed.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@atlaskit/theme/dist/es2019/colors.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/node_modules/@atlaskit/theme/dist/es2019/typography.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/dist/es2019/label.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/dist/es2019/required-asterisk.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/dist/es2019/field.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/types.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/icon-validation.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/input-email.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/input-name.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/input-sitename.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/slicedToArray.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/arrayWithHoles.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/iterableToArrayLimit.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/nonIterableRest.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/typeof.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/toPrimitive.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/defineProperty.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/inherits.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/memoize-one/dist/memoize-one.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/dist/index-75b02bac.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/@babel/runtime/helpers/esm/taggedTemplateLiteral.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/dist/Select-e1cf49ae.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/dist/stateManager-2f2b6f5b.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/async/dist/react-select.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/creatable/dist/react-select.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/async-creatable/dist/react-select.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/node_modules/@babel/runtime/helpers/esm/setPrototypeOf.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/esm/config.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/esm/TransitionGroupContext.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/esm/utils/reflow.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/esm/Transition.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/node_modules/@babel/runtime/helpers/esm/extends.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/esm/utils/ChildMapping.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/esm/TransitionGroup.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/node_modules/react-transition-group/node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/react-select/animated/dist/react-select.browser.esm.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/dist/esm/components/indicators.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/dist/esm/components/index.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/dist/esm/createSelect.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/theme/dist/es2019/constants.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/select/dist/esm/AsyncCreatableSelect.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/input-sitename-existing.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlaskit/form/dist/es2019/checkbox-field.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/marketing-consent.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/button-submit.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/product-list.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/input-workspace-existing.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/component/button-google-sign-in.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/slide/slide-sitename-existing.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/slide/slide-final-confirmation.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/slide/slide-product-confirmation.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/slide/slide-workspace-existing.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/view/devops-form-logged-in.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/build-n2e-payload.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/build-signup-url-action.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/utility/build-analytics-solutionstat.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/slide/slide-n2n-resend-email.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/view/devops-form-logged-out-deferred-password.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-form-view/devops-form-view.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen/devops-screen.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/devops-screen-standalone/devops-screen-standalone.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/messages.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/utility/account-operation-url.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/hook/use-simple-signup-state.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/button-submit.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/form-footer.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/types.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/icon-validation.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/input-email.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/marketing-consent.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/input-sitename.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/input-sitename-existing.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/loading-state.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/page-header.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/product-list.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/social-sign-up-divider.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/component/simple-signup-nav.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-form-view/view/simple-signup-logged-out.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/simple-signup-screen/simple-signup-screen.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/sign-up-layout-container.tsx","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/src/layouts/legacy/view/utility/tintinmvp-override.ts","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/@atlassiansox/origin-tracing/dist/origin-tracing.js","webpack:///./resources/js/react/sign-up-layout/WacSignUpLayoutContainer.tsx","webpack:///./node_modules/toposort/index.js","webpack:///./node_modules/tti-polyfill/tti-polyfill.js","webpack:///./node_modules/warning/warning.js","webpack:///./node_modules/whatwg-fetch/fetch.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/@babel/runtime/helpers/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/createClass.js","webpack:///./node_modules/@babel/runtime/helpers/defineProperty.js","webpack:///./node_modules/@babel/runtime/helpers/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/inherits.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireWildcard.js","webpack:///./node_modules/@babel/runtime/helpers/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/setPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/toPrimitive.js","webpack:///./node_modules/@babel/runtime/helpers/toPropertyKey.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gate-js-client/dist/fetcher/Fetcher.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gate-js-client/dist/fetcher/errors.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gate-js-client/dist/fetcher/index.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gate-js-client/dist/index.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gate-js-client/dist/version.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gates-react/dist/FeatureGatesInitialization.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gates-react/dist/FeatureGatesInitializationWithDefaults.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gates-react/dist/FeatureGatesInitializationWithValues.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gates-react/dist/index.js","webpack:///./node_modules/@atlassiansox/bxp-web-statsig-client/node_modules/@atlassian/feature-gates-react/dist/utils.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/stylis/src/Enum.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/stylis/src/Middleware.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/stylis/src/Parser.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/stylis/src/Serializer.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/stylis/src/Tokenizer.js","webpack:///./node_modules/@atlassiansox/bxpkit-wac-sign-up/node_modules/stylis/src/Utility.js","webpack:///./node_modules/@babel/runtime/helpers/esm/assertThisInitialized.js","webpack:///./node_modules/@babel/runtime/helpers/esm/classCallCheck.js","webpack:///./node_modules/@babel/runtime/helpers/esm/createClass.js","webpack:///./node_modules/@babel/runtime/helpers/esm/getPrototypeOf.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inherits.js","webpack:///./node_modules/@babel/runtime/helpers/esm/objectSpread.js","webpack:///./node_modules/@babel/runtime/helpers/esm/objectWithoutProperties.js","webpack:///./node_modules/@babel/runtime/helpers/esm/objectWithoutPropertiesLoose.js","webpack:///./node_modules/@babel/runtime/helpers/esm/possibleConstructorReturn.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./node_modules/js-base64/base64.mjs","webpack:///./node_modules/lodash-es/_Symbol.js","webpack:///./node_modules/lodash-es/_getRawTag.js","webpack:///./node_modules/lodash-es/_objectToString.js","webpack:///./node_modules/lodash-es/_baseGetTag.js","webpack:///./node_modules/lodash-es/_freeGlobal.js","webpack:///./node_modules/lodash-es/_getPrototype.js","webpack:///./node_modules/lodash-es/_overArg.js","webpack:///./node_modules/lodash-es/_root.js","webpack:///./node_modules/lodash-es/isObjectLike.js","webpack:///./node_modules/lodash-es/isPlainObject.js"],"sourcesContent":["import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nconst ContextTypes = {\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n getAtlaskitAnalyticsContext: PropTypes.func\n};\nconst noop = () => [];\n\n// eslint-disable-next-line @repo/internal/react/no-class-components\nclass AnalyticsListener extends Component {\n constructor(props) {\n super(props);\n _defineProperty(this, \"getChildContext\", () => ({\n getAtlaskitAnalyticsEventHandlers: this.getAnalyticsEventHandlers,\n getAtlaskitAnalyticsContext: this.getAtlaskitAnalyticsContext\n }));\n _defineProperty(this, \"getAnalyticsEventHandlers\", () => {\n const {\n channel,\n onEvent\n } = this.props;\n const {\n getAtlaskitAnalyticsEventHandlers = noop\n } = this.context;\n const handler = (event, eventChannel) => {\n if (channel === '*' || channel === eventChannel) {\n onEvent(event, eventChannel);\n }\n };\n return [handler, ...getAtlaskitAnalyticsEventHandlers()];\n });\n _defineProperty(this, \"getAtlaskitAnalyticsContext\", () => {\n const {\n getAtlaskitAnalyticsContext = noop\n } = this.context;\n return getAtlaskitAnalyticsContext();\n });\n this.contextValue = {\n getAtlaskitAnalyticsContext: this.getAtlaskitAnalyticsContext,\n getAtlaskitAnalyticsEventHandlers: this.getAnalyticsEventHandlers\n };\n }\n render() {\n const {\n children\n } = this.props;\n return /*#__PURE__*/React.createElement(AnalyticsReactContext.Provider, {\n value: this.contextValue\n }, children);\n }\n}\n_defineProperty(AnalyticsListener, \"contextTypes\", ContextTypes);\n_defineProperty(AnalyticsListener, \"childContextTypes\", ContextTypes);\nexport default AnalyticsListener;","import React, { useCallback, useMemo } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nimport { useAnalyticsContext } from '../../hooks/useAnalyticsContext';\nimport { useTrackedRef } from '../../hooks/useTrackedRef';\nconst AnalyticsListener = ({\n children,\n channel,\n onEvent\n}) => {\n const analyticsContext = useAnalyticsContext();\n const onEventRef = useTrackedRef(onEvent);\n const channelRef = useTrackedRef(channel);\n const getAtlaskitAnalyticsEventHandlers = useCallback(() => {\n const thisHandler = (event, eventChannel) => {\n if (channelRef.current === '*' || channelRef.current === eventChannel) {\n onEventRef.current(event, eventChannel);\n }\n };\n return [...analyticsContext.getAtlaskitAnalyticsEventHandlers(), thisHandler];\n }, [analyticsContext, channelRef, onEventRef]);\n const value = useMemo(() => {\n return {\n getAtlaskitAnalyticsEventHandlers,\n getAtlaskitAnalyticsContext: analyticsContext.getAtlaskitAnalyticsContext\n };\n }, [analyticsContext, getAtlaskitAnalyticsEventHandlers]);\n return /*#__PURE__*/React.createElement(AnalyticsReactContext.Provider, {\n value: value\n }, children);\n};\nexport default AnalyticsListener;","import React from 'react';\nimport { getBooleanFF } from '@atlaskit/platform-feature-flags';\nimport LegacyAnalyticsListener from './LegacyAnalyticsListener';\nimport ModernAnalyticsListener from './ModernAnalyticsListener';\nconst ExportedAnalyticsListener = props => {\n var _process$env;\n const isModernContextEnabledEnv = typeof process !== 'undefined' && process !== null && ((_process$env = process.env) === null || _process$env === void 0 ? void 0 : _process$env['ANALYTICS_NEXT_MODERN_CONTEXT']);\n return isModernContextEnabledEnv || getBooleanFF('platform.analytics-next-use-modern-context_fqgbx') ? /*#__PURE__*/React.createElement(ModernAnalyticsListener, props) : /*#__PURE__*/React.createElement(LegacyAnalyticsListener, props);\n};\nexport default ExportedAnalyticsListener;","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n ref.current = value;\n return ref;\n};","var _ref, _process, _process$env, _process2, _process2$env;\n// We can't rely on NODE_ENV === 'test' if its value is already configured by the consumer to some other value, so better to use JEST_WORKER_ID\n// https://jestjs.io/docs/environment-variables#jest_worker_id\nconst TESTS_MODE = (_ref = (globalThis === null || globalThis === void 0 ? void 0 : (_process = globalThis.process) === null || _process === void 0 ? void 0 : (_process$env = _process.env) === null || _process$env === void 0 ? void 0 : _process$env.JEST_WORKER_ID) !== undefined) !== null && _ref !== void 0 ? _ref : false;\nconst DEBUG_MODE = !TESTS_MODE && (globalThis === null || globalThis === void 0 ? void 0 : (_process2 = globalThis.process) === null || _process2 === void 0 ? void 0 : (_process2$env = _process2.env) === null || _process2$env === void 0 ? void 0 : _process2$env.NODE_ENV) !== 'production';\nexport const debug = (...args) => {\n if (!DEBUG_MODE) {\n return;\n }\n\n // eslint-disable-next-line no-console\n console.debug(...args);\n};","import { debug } from './debug';\nconst pkgName = '@atlaskit/platform-feature-flags';\nexport const PFF_GLOBAL_KEY = '__PLATFORM_FEATURE_FLAGS__';\nconst hasProcessEnv = typeof process !== 'undefined' && typeof process.env !== 'undefined';\n\n// FF global overrides can be configured by test runners or Storybook\nconst ENV_ENABLE_PLATFORM_FF = hasProcessEnv ?\n// Use global \"process\" variable and process.env['FLAG_NAME'] syntax, so it can be replaced by webpack DefinePlugin\nprocess.env['ENABLE_PLATFORM_FF'] === 'true' : false;\n\n// STORYBOOK_ENABLE_PLATFORM_FF is included as storybook only allows env vars prefixed with STORYBOOK\n// https://github.com/storybookjs/storybook/issues/12270\n\nconst ENV_STORYBOOK_ENABLE_PLATFORM_FF = hasProcessEnv ?\n// Use global \"process\" variable and process.env['FLAG_NAME'] syntax, so it can be replaced by webpack DefinePlugin\nprocess.env['STORYBOOK_ENABLE_PLATFORM_FF'] === 'true' : false;\nconst ENABLE_GLOBAL_PLATFORM_FF_OVERRIDE = ENV_ENABLE_PLATFORM_FF || ENV_STORYBOOK_ENABLE_PLATFORM_FF;\nconst DEFAULT_PFF_GLOBAL = {\n // In development mode we want to capture any feature flag checks that happen using the default resolver and log this result when the resolver is replaced.\n // This is because evaluating feature flags when the resolver/FF client is loaded asynchronously could cause unexpected issues.\n earlyResolvedFlags: new Map(),\n booleanResolver: function (flagKey) {\n if (process.env.NODE_ENV !== 'production') {\n const unresolvedFlagCount = this.earlyResolvedFlags.get(flagKey) || 0;\n this.earlyResolvedFlags.set(flagKey, unresolvedFlagCount + 1);\n }\n return false;\n }\n};\nconst globalVar = typeof window !== 'undefined' ? window : globalThis;\nglobalVar[PFF_GLOBAL_KEY] = globalVar[PFF_GLOBAL_KEY] || DEFAULT_PFF_GLOBAL;\nexport function setBooleanResolver(resolver) {\n globalVar[PFF_GLOBAL_KEY].booleanResolver = resolver;\n if (process.env.NODE_ENV !== 'production') {\n var _globalVar$PFF_GLOBAL, _globalVar$PFF_GLOBAL2;\n if (((_globalVar$PFF_GLOBAL = globalVar[PFF_GLOBAL_KEY]) === null || _globalVar$PFF_GLOBAL === void 0 ? void 0 : (_globalVar$PFF_GLOBAL2 = _globalVar$PFF_GLOBAL.earlyResolvedFlags) === null || _globalVar$PFF_GLOBAL2 === void 0 ? void 0 : _globalVar$PFF_GLOBAL2.size) > 0) {\n debug(`[%s]: The following list of Feature Flags were called, the following number of times, before setBooleanResolver.`, pkgName, Array.from(globalVar[PFF_GLOBAL_KEY].earlyResolvedFlags.entries()));\n globalVar[PFF_GLOBAL_KEY].earlyResolvedFlags.clear();\n }\n }\n}\nexport function resolveBooleanFlag(flagKey) {\n if (ENABLE_GLOBAL_PLATFORM_FF_OVERRIDE) {\n debug('[%s]: The feature flags were enabled while running tests. The flag \"%s\" will be always enabled.', pkgName, flagKey);\n return true;\n }\n try {\n var _globalVar$PFF_GLOBAL3;\n const result = (_globalVar$PFF_GLOBAL3 = globalVar[PFF_GLOBAL_KEY]) === null || _globalVar$PFF_GLOBAL3 === void 0 ? void 0 : _globalVar$PFF_GLOBAL3.booleanResolver(flagKey);\n if (typeof result !== 'boolean') {\n // eslint-disable-next-line no-console\n console.warn(`${flagKey} resolved to a non-boolean value, returning false for safety`);\n return false;\n }\n return result;\n } catch (e) {\n return false;\n }\n}","import { setBooleanResolver, resolveBooleanFlag } from './resolvers';\n\n/**\n * This creates a boolean flag resolver that allows calls to `getBooleanFF` inside of Platform components to use a Product's\n * feature flag client and LD project, rather than installing a feature flag client of their own, or passing those flags in via props.\n *\n * @param flagResolver\n */\nexport function setBooleanFeatureFlagResolver(flagResolver) {\n setBooleanResolver(flagResolver);\n}\n\n/**\n * Returns the value of a feature flag. If the flag does not resolve, it returns the \"false\" as a default value.\n *\n * @deprecated Use {@link fg} function instead.\n * @param name\n */\nexport function getBooleanFF(name) {\n return resolveBooleanFlag(name);\n}\n\n/**\n * Returns the value of a feature flag. If the flag does not resolve, it returns the \"false\" as a default value.\n *\n * @param name\n */\nexport function fg(name) {\n return resolveBooleanFlag(name);\n}","import { __extends, __read, __spread } from \"tslib\";\nimport React, { Children, Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { AnalyticsReactContext } from './AnalyticsReactContext';\nvar ContextTypes = {\n getAtlaskitAnalyticsContext: PropTypes.func,\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n};\nvar AnalyticsContext = /** @class */ (function (_super) {\n __extends(AnalyticsContext, _super);\n function AnalyticsContext(props) {\n var _this = _super.call(this, props) || this;\n _this.getChildContext = function () { return ({\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n }); };\n _this.getAnalyticsContext = function () {\n var data = _this.props.data;\n var getAtlaskitAnalyticsContext = _this.context.getAtlaskitAnalyticsContext;\n var ancestorData = (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [];\n return __spread(ancestorData, [data]);\n };\n _this.getAnalyticsEventHandlers = function () {\n var getAtlaskitAnalyticsEventHandlers = _this.context.getAtlaskitAnalyticsEventHandlers;\n var ancestorHandlers = (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [];\n return ancestorHandlers;\n };\n _this.state = {\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n getAtlaskitAnalyticsEventHandlers: _this.getAnalyticsEventHandlers,\n };\n return _this;\n }\n AnalyticsContext.prototype.render = function () {\n var children = this.props.children;\n return (React.createElement(AnalyticsReactContext.Provider, { value: this.state }, Children.only(children)));\n };\n AnalyticsContext.contextTypes = ContextTypes;\n AnalyticsContext.childContextTypes = ContextTypes;\n return AnalyticsContext;\n}(Component));\nexport default AnalyticsContext;\n//# sourceMappingURL=AnalyticsContext.js.map","import { __extends, __read, __spread } from \"tslib\";\nimport AnalyticsEvent from './AnalyticsEvent';\nvar UIAnalyticsEvent = /** @class */ (function (_super) {\n __extends(UIAnalyticsEvent, _super);\n function UIAnalyticsEvent(props) {\n var _this = _super.call(this, props) || this;\n _this.clone = function () {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n return null;\n }\n var context = __spread(_this.context);\n var handlers = __spread(_this.handlers);\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new UIAnalyticsEvent({ context: context, handlers: handlers, payload: payload });\n };\n _this.fire = function (channel) {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n return;\n }\n _this.handlers.forEach(function (handler) { return handler(_this, channel); });\n _this.hasFired = true;\n };\n _this.context = props.context || [];\n _this.handlers = props.handlers || [];\n _this.hasFired = false;\n return _this;\n }\n UIAnalyticsEvent.prototype.update = function (updater) {\n if (this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n return this;\n }\n return _super.prototype.update.call(this, updater);\n };\n return UIAnalyticsEvent;\n}(AnalyticsEvent));\nexport default UIAnalyticsEvent;\n//# sourceMappingURL=UIAnalyticsEvent.js.map","import { __assign } from \"tslib\";\nvar AnalyticsEvent = /** @class */ (function () {\n function AnalyticsEvent(props) {\n var _this = this;\n this.clone = function () {\n // We stringify and parse here to get a hacky \"deep clone\" of the object.\n // This has some limitations in that it wont support functions, regexs, Maps, Sets, etc,\n // but none of those need to be represented in our payload, so we consider this fine\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new AnalyticsEvent({ payload: payload });\n };\n this.payload = props.payload;\n }\n AnalyticsEvent.prototype.update = function (updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = __assign(__assign({}, this.payload), updater);\n }\n return this;\n };\n return AnalyticsEvent;\n}());\nexport default AnalyticsEvent;\n//# sourceMappingURL=AnalyticsEvent.js.map","import { __assign, __extends, __read, __spread } from \"tslib\";\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport UIAnalyticsEvent from './UIAnalyticsEvent';\n/**\n * This component is used to grab the analytics functions off context.\n * It uses legacy context, but provides an API similar to 16.3 context.\n * This makes it easier to use with the forward ref API.\n */\nvar AnalyticsContextConsumer = /** @class */ (function (_super) {\n __extends(AnalyticsContextConsumer, _super);\n function AnalyticsContextConsumer(props) {\n var _this = _super.call(this, props) || this;\n /**\n * Store references to the original and patched event props so we can\n * determine when to update the patched props\n */\n _this.originalEventProps = {};\n _this.patchedEventProps = {};\n // Update patched event props only if the original props have changed\n _this.updatePatchedEventProps = function (props) {\n var changedPropCallbacks = Object.keys(_this.props.createEventMap).filter(function (p) { return _this.originalEventProps[p] !== props[p]; });\n if (changedPropCallbacks.length > 0) {\n _this.patchedEventProps = __assign(__assign({}, _this.patchedEventProps), _this.mapCreateEventsToProps(changedPropCallbacks, props));\n changedPropCallbacks.forEach(function (p) {\n _this.originalEventProps[p] = props[p];\n });\n }\n return _this.patchedEventProps;\n };\n _this.mapCreateEventsToProps = function (changedPropNames, props) {\n return changedPropNames.reduce(function (modified, propCallbackName) {\n var _a;\n var eventCreator = _this.props.createEventMap[propCallbackName];\n var providedCallback = props[propCallbackName];\n if (!['object', 'function'].includes(typeof eventCreator)) {\n return modified;\n }\n var modifiedCallback = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var analyticsEvent = typeof eventCreator === 'function'\n ? eventCreator(_this.createAnalyticsEvent, props)\n : _this.createAnalyticsEvent(eventCreator);\n if (providedCallback) {\n providedCallback.apply(void 0, __spread(args, [analyticsEvent]));\n }\n };\n return __assign(__assign({}, modified), (_a = {}, _a[propCallbackName] = modifiedCallback, _a));\n }, {});\n };\n _this.createAnalyticsEvent = function (payload) {\n var _a = _this.context, getAtlaskitAnalyticsEventHandlers = _a.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext = _a.getAtlaskitAnalyticsContext;\n return new UIAnalyticsEvent({\n context: (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [],\n handlers: (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [],\n payload: payload,\n });\n };\n Object.keys(_this.props.createEventMap).forEach(function (p) {\n _this.originalEventProps[p] = props.wrappedComponentProps[p];\n });\n _this.patchedEventProps = _this.mapCreateEventsToProps(Object.keys(_this.props.createEventMap), props.wrappedComponentProps);\n return _this;\n }\n AnalyticsContextConsumer.prototype.render = function () {\n var patchedEventProps = this.updatePatchedEventProps(this.props.wrappedComponentProps);\n return this.props.children({\n createAnalyticsEvent: this.createAnalyticsEvent,\n patchedEventProps: patchedEventProps,\n });\n };\n AnalyticsContextConsumer.contextTypes = {\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n getAtlaskitAnalyticsContext: PropTypes.func,\n };\n AnalyticsContextConsumer.defaultProps = {\n createEventMap: {},\n };\n return AnalyticsContextConsumer;\n}(React.Component));\nexport default AnalyticsContextConsumer;\n//# sourceMappingURL=AnalyticsContextConsumer.js.map","import { __makeTemplateObject } from \"tslib\";\nimport { css } from 'styled-components';\nimport { B200, background, DN80A, N200A, N70A } from '@atlaskit/theme/colors';\nimport { themed } from '@atlaskit/theme/components';\nimport { AVATAR_RADIUS, AVATAR_SIZES, BORDER_WIDTH, TRANSITION_DURATION, } from './constants';\nvar backgroundColorFocus = B200;\nvar overlayColorDefault = 'transparent';\nvar overlayColorHover = N70A;\nvar overlayColorSelected = N200A;\nvar overlayColorDisabled = themed({\n light: 'rgba(255, 255, 255, 0.7)',\n dark: DN80A,\n});\n// \"square\" avatars are explicit\nexport function getBorderRadius(props, config) {\n if (config === void 0) { config = { includeBorderWidth: false }; }\n var borderWidth = config.includeBorderWidth\n ? BORDER_WIDTH[props.size]\n : 0;\n return props.appearance === 'circle'\n ? '50%'\n : AVATAR_RADIUS[props.size] + borderWidth + \"px\";\n}\nexport var getSize = function (_a) {\n var size = _a.size;\n return AVATAR_SIZES[size];\n}; // for testing\nexport function getAvatarDimensions(_a, config) {\n var size = _a.size;\n if (config === void 0) { config = {\n includeBorderWidth: false,\n sizeOnly: false,\n }; }\n var borderWidth = config.includeBorderWidth\n ? BORDER_WIDTH[size] * 2\n : 0;\n var finalSize = AVATAR_SIZES[size] + borderWidth;\n return config.sizeOnly\n ? finalSize\n : \"\\n height: \" + finalSize + \"px;\\n width: \" + finalSize + \"px;\\n \";\n}\n// expose here for use with multiple element types\nexport function getInnerStyles(props) {\n if (props === void 0) { props = { appearance: 'circle', size: 'medium' }; }\n var boxSizing = 'content-box';\n var borderWidth = BORDER_WIDTH[props.size] + \"px\";\n var isInteractive = Boolean(props.isInteractive || props.href || props.onClick);\n // We make the distinction between isInteractive and isClickable as supplying a tooltip\n // makes the avatar interactive but not clickable\n var isClickable = Boolean(props.href || props.onClick);\n var backgroundColor = props.borderColor || background;\n // Inherit cursor styles so we don't cancel out pointer cursors in places like avatar group more dropdown\n var cursor = 'inherit';\n var outline = 'none';\n var overlayShade = overlayColorDefault;\n var overlayOpacity = 0;\n var pointerEvents = 'auto';\n var position = 'static';\n var transform = 'translateZ(0)';\n var transitionDuration = '0s';\n // Interaction: Hover\n if (isInteractive && (props.isActive || props.isHover)) {\n overlayShade = overlayColorHover;\n overlayOpacity = 1;\n }\n // Interaction: Active\n if (isClickable && props.isActive) {\n transform = 'scale(0.9)';\n }\n // Interaction: Focus\n if (isInteractive && props.isFocus && !props.isActive) {\n outline = 'none';\n backgroundColor = backgroundColorFocus;\n transitionDuration = TRANSITION_DURATION;\n }\n // Disabled\n if (props.isDisabled) {\n cursor = 'not-allowed';\n overlayShade = overlayColorDisabled;\n overlayOpacity = 1;\n pointerEvents = 'none';\n }\n // Clickable\n if (isClickable) {\n cursor = 'pointer';\n }\n // Loading\n if (props.isSelected) {\n overlayShade = overlayColorSelected;\n overlayOpacity = 1;\n }\n // Stack\n if (props.stackIndex) {\n position = 'relative';\n }\n return css(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n \", \";\\n align-items: stretch;\\n background-color: \", \";\\n border: 0;\\n border-radius: \", \";\\n padding: \", \";\\n box-sizing: \", \";\\n cursor: \", \";\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n outline: \", \";\\n overflow: hidden;\\n pointer-events: \", \";\\n position: \", \";\\n transform: \", \";\\n transition: background-color \", \" ease-out;\\n\\n a &,\\n button & {\\n cursor: pointer;\\n }\\n\\n &::after {\\n background-color: \", \";\\n border-radius: \", \";\\n bottom: \", \";\\n content: ' ';\\n left: \", \";\\n opacity: \", \";\\n pointer-events: none;\\n position: absolute;\\n right: \", \";\\n top: \", \";\\n transition: opacity \", \";\\n }\\n\\n &::-moz-focus-inner {\\n border: 0;\\n margin: 0;\\n padding: 0;\\n }\\n \"], [\"\\n \", \";\\n align-items: stretch;\\n background-color: \", \";\\n border: 0;\\n border-radius: \", \";\\n padding: \", \";\\n box-sizing: \", \";\\n cursor: \", \";\\n display: flex;\\n flex-direction: column;\\n justify-content: center;\\n outline: \", \";\\n overflow: hidden;\\n pointer-events: \", \";\\n position: \", \";\\n transform: \", \";\\n transition: background-color \", \" ease-out;\\n\\n a &,\\n button & {\\n cursor: pointer;\\n }\\n\\n &::after {\\n background-color: \", \";\\n border-radius: \", \";\\n bottom: \", \";\\n content: ' ';\\n left: \", \";\\n opacity: \", \";\\n pointer-events: none;\\n position: absolute;\\n right: \", \";\\n top: \", \";\\n transition: opacity \", \";\\n }\\n\\n &::-moz-focus-inner {\\n border: 0;\\n margin: 0;\\n padding: 0;\\n }\\n \"])), getAvatarDimensions, backgroundColor, function (p) { return getBorderRadius(p, { includeBorderWidth: true }); }, borderWidth, boxSizing, cursor, outline, pointerEvents, position, transform, transitionDuration, overlayShade, getBorderRadius, borderWidth, borderWidth, overlayOpacity, borderWidth, borderWidth, TRANSITION_DURATION);\n}\nvar templateObject_1;\n//# sourceMappingURL=utils.js.map","import { gridSize } from '@atlaskit/theme/constants';\nexport var TRANSITION_DURATION = '200ms';\nvar gridSizeValue = gridSize();\nexport var AVATAR_SIZES = {\n xsmall: gridSizeValue * 2,\n small: gridSizeValue * 3,\n medium: gridSizeValue * 4,\n large: gridSizeValue * 5,\n xlarge: gridSizeValue * 12,\n xxlarge: gridSizeValue * 16,\n};\n// border radius only applies to \"square\" avatars\nexport var AVATAR_RADIUS = {\n xsmall: 2,\n small: 2,\n medium: 3,\n large: 3,\n xlarge: 6,\n xxlarge: 12,\n};\nexport var BORDER_WIDTH = {\n xsmall: 2,\n small: 2,\n medium: 2,\n large: 2,\n xlarge: 2,\n xxlarge: 2,\n};\n// NOTE: sizes xsmall & xxlarge DO NOT support\n// - groups\n// - presence\n// - status\nexport var EXCESS_INDICATOR_FONT_SIZE = {\n small: 10,\n medium: 11,\n large: 12,\n xlarge: 16,\n};\nexport var ICON_SIZES = {\n small: 12,\n medium: 14,\n large: 15,\n xlarge: 18,\n};\nexport var ICON_OFFSET = {\n small: 0,\n medium: 0,\n large: 1,\n xlarge: 7,\n};\nexport var SQUARE_ICON_OFFSET = {\n small: 0,\n medium: 0,\n large: 0,\n xlarge: 1,\n};\n//# sourceMappingURL=constants.js.map","import { getInnerStyles } from '../styled/utils';\nimport styledCache from './styledCache';\nexport default styledCache(getInnerStyles);\n//# sourceMappingURL=getStyledAvatar.js.map","import { __assign } from \"tslib\";\nimport { DN50, N40 } from '@atlaskit/theme/colors';\nimport { createTheme } from '@atlaskit/theme/components';\nimport { gridSize } from '@atlaskit/theme/constants';\nvar gridSizeValue = gridSize();\nvar AVATAR_SIZES = {\n xsmall: gridSizeValue * 2,\n small: gridSizeValue * 3,\n medium: gridSizeValue * 4,\n large: gridSizeValue * 5,\n xlarge: gridSizeValue * 12,\n xxlarge: gridSizeValue * 16,\n};\n// border radius only applies to \"square\" avatars\nvar AVATAR_RADIUS = {\n xsmall: 2,\n small: 2,\n medium: 3,\n large: 3,\n xlarge: 6,\n xxlarge: 12,\n};\nvar BORDER_WIDTH = {\n xsmall: 2,\n small: 2,\n medium: 2,\n large: 2,\n xlarge: 2,\n xxlarge: 2,\n};\nvar ICON_SIZES = {\n xsmall: 0,\n small: 12,\n medium: 14,\n large: 15,\n xlarge: 18,\n xxlarge: 0,\n};\nvar ICON_OFFSET = {\n xsmall: 0,\n small: 0,\n medium: 0,\n large: 1,\n xlarge: 7,\n xxlarge: 0,\n};\nvar SQUARE_ICON_OFFSET = {\n xsmall: 0,\n small: 0,\n medium: 0,\n large: 0,\n xlarge: 1,\n xxlarge: 0,\n};\nfunction getBackgroundColor(props) {\n var backgroundColors = {\n light: N40,\n dark: DN50,\n };\n return props.mode && props.isLoading\n ? backgroundColors[props.mode]\n : 'transparent';\n}\nfunction getBorderRadius(props) {\n var borderWidth = props.includeBorderWidth ? BORDER_WIDTH[props.size] : 0;\n var borderRadius = props.appearance === 'circle'\n ? '50%'\n : AVATAR_RADIUS[props.size] + borderWidth + \"px\";\n return borderRadius;\n}\nfunction getDimensions(props) {\n var borderWidth = props.includeBorderWidth\n ? BORDER_WIDTH[props.size] * 2\n : 0;\n var size = AVATAR_SIZES[props.size] + borderWidth;\n var width = size + \"px\";\n var height = width;\n return { height: height, width: width };\n}\nvar getPresenceLayout = function (props) {\n var presencePosition = props.appearance === 'square'\n ? -(BORDER_WIDTH[props.size] * 2)\n : ICON_OFFSET[props.size];\n var presenceSize = ICON_SIZES[props.size];\n return {\n bottom: presencePosition + \"px\",\n height: presenceSize + \"px\",\n right: presencePosition + \"px\",\n width: presenceSize + \"px\",\n };\n};\nvar getStatusLayout = function (props) {\n var statusPosition = props.appearance === 'square'\n ? SQUARE_ICON_OFFSET[props.size]\n : ICON_OFFSET[props.size];\n var statusSize = ICON_SIZES[props.size];\n return {\n height: statusSize + \"px\",\n right: statusPosition + \"px\",\n top: statusPosition + \"px\",\n width: statusSize + \"px\",\n };\n};\nvar propsDefaults = {\n appearance: 'circle',\n includeBorderWidth: false,\n isLoading: false,\n mode: 'light',\n presence: 'offline',\n size: 'xsmall',\n};\nexport var Theme = createTheme(function (props) {\n var propsWithDefaults = __assign(__assign({}, propsDefaults), props);\n return {\n backgroundColor: getBackgroundColor(propsWithDefaults),\n borderRadius: getBorderRadius(propsWithDefaults),\n dimensions: getDimensions(propsWithDefaults),\n presence: getPresenceLayout(propsWithDefaults),\n status: getStatusLayout(propsWithDefaults),\n };\n});\n//# sourceMappingURL=index.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport { Theme } from '../theme';\nvar Avatar = function (props) { return (React.createElement(Theme.Consumer, __assign({}, props, { includeBorderWidth: true }), function (_a) {\n var dimensions = _a.dimensions;\n return (React.createElement(\"div\", { \"data-testid\": props.testId, style: __assign({ display: 'inline-block', position: 'relative', outline: 0, zIndex: props.stackIndex }, dimensions) }, props.children));\n})); };\nexport default Avatar;\nexport var PresenceWrapper = function (props) { return (React.createElement(Theme.Consumer, __assign({}, props, { includeBorderWidth: true }), function (_a) {\n var presence = _a.presence;\n return (React.createElement(\"span\", { style: __assign({ pointerEvents: 'none', position: 'absolute' }, presence) }, props.children));\n})); };\nexport var StatusWrapper = function (props) { return (React.createElement(Theme.Consumer, __assign({}, props, { includeBorderWidth: true }), function (_a) {\n var status = _a.status;\n return (React.createElement(\"span\", { style: __assign({ position: 'absolute' }, status) }, props.children));\n})); };\n//# sourceMappingURL=Avatar.js.map","import { __assign, __makeTemplateObject, __rest } from \"tslib\";\nimport React from 'react';\nimport styled from 'styled-components';\nimport { background, DN100, N50 } from '@atlaskit/theme/colors';\nimport { themed, withTheme } from '@atlaskit/theme/components';\nimport { Theme } from '../theme';\nexport var ShapeGroup = withTheme(styled.g(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n & circle,\\n & rect {\\n fill: \", \";\\n }\\n & g {\\n fill: \", \";\\n }\\n\"], [\"\\n & circle,\\n & rect {\\n fill: \", \";\\n }\\n & g {\\n fill: \", \";\\n }\\n\"])), themed({ light: N50, dark: DN100 }), background));\nexport var Slot = function (_a) {\n var isLoading = _a.isLoading, appearance = _a.appearance, size = _a.size, backgroundImage = _a.backgroundImage, label = _a.label, role = _a.role;\n return (React.createElement(Theme.Consumer, { appearance: appearance, isLoading: isLoading, size: size }, function (_a) {\n var backgroundColor = _a.backgroundColor, borderRadius = _a.borderRadius;\n return (React.createElement(\"span\", { style: {\n backgroundColor: backgroundColor,\n backgroundImage: backgroundImage\n ? \"url(\" + backgroundImage + \")\"\n : undefined,\n backgroundPosition: 'center',\n backgroundRepeat: 'no-repeat',\n backgroundSize: 'cover',\n borderRadius: borderRadius,\n display: 'flex',\n flex: '1 1 100%',\n height: '100%',\n width: '100%',\n }, role: role, \"aria-label\": label }));\n }));\n};\nexport var Svg = function (_a) {\n var appearance = _a.appearance, size = _a.size, children = _a.children, isLoading = _a.isLoading, otherProps = __rest(_a, [\"appearance\", \"size\", \"children\", \"isLoading\"]);\n return (React.createElement(Theme.Consumer, { appearance: appearance, isLoading: isLoading, size: size }, function (_a) {\n var backgroundColor = _a.backgroundColor, borderRadius = _a.borderRadius;\n return (React.createElement(\"svg\", __assign({ style: {\n backgroundColor: backgroundColor,\n borderRadius: borderRadius,\n height: '100%',\n width: '100%',\n } }, otherProps), children));\n }));\n};\nvar templateObject_1;\n//# sourceMappingURL=AvatarImage.js.map","import { __extends } from \"tslib\";\nimport React, { PureComponent } from 'react';\nimport GlobalTheme from '@atlaskit/theme/components';\nimport { ShapeGroup, Slot, Svg } from '../styled/AvatarImage';\nexport function DefaultImage(_a) {\n var appearance = _a.appearance, size = _a.size, title = _a.title, isLoading = _a.isLoading;\n var rectBounds = 128;\n return (React.createElement(GlobalTheme.Consumer, null, function (_a) {\n var mode = _a.mode;\n return (React.createElement(Svg, { appearance: appearance, isLoading: isLoading, size: size, viewBox: \"0 0 \" + rectBounds + \" \" + rectBounds, version: \"1.1\", xmlns: \"http://www.w3.org/2000/svg\", role: \"img\", \"aria-label\": title }, appearance === 'circle' ? (React.createElement(ShapeGroup, { mode: mode },\n React.createElement(\"circle\", { cx: \"64\", cy: \"64\", r: \"64\" }),\n React.createElement(\"g\", null,\n React.createElement(\"path\", { d: \"M103,102.1388 C93.094,111.92 79.3504,118 64.1638,118 C48.8056,118 34.9294,111.768 25,101.7892 L25,95.2 C25,86.8096 31.981,80 40.6,80 L87.4,80 C96.019,80 103,86.8096 103,95.2 L103,102.1388 Z\" }),\n React.createElement(\"path\", { d: \"M63.9961647,24 C51.2938136,24 41,34.2938136 41,46.9961647 C41,59.7061864 51.2938136,70 63.9961647,70 C76.6985159,70 87,59.7061864 87,46.9961647 C87,34.2938136 76.6985159,24 63.9961647,24\" })))) : (React.createElement(ShapeGroup, { mode: mode },\n React.createElement(\"rect\", { x: \"0\", y: \"0\", width: rectBounds, height: rectBounds }),\n React.createElement(\"g\", { transform: \"translate(19.000000, 32.000000)\" },\n React.createElement(\"path\", { d: \"M18.25,32.5 L54.5833333,32.5 L54.5833333,23.4166667 L18.25,23.4166667 L18.25,32.5 Z M9.16666667,18.8331166 C9.16666667,16.3479549 11.236581,14.3333333 13.7195662,14.3333333 L59.1137671,14.3333333 C61.6282641,14.3333333 63.6666667,16.3815123 63.6666667,18.8331166 L63.6666667,41.5833333 L9.16666667,41.5833333 L9.16666667,18.8331166 Z\" }),\n React.createElement(\"path\", { d: \"M18.25,9.81383682 C18.25,4.7850061 22.3296003,0.708333333 27.3238554,0.708333333 L36.4261446,0.708333333 C41.4374965,0.708333333 45.5,4.76812825 45.5,9.81383682 L45.5,23.4166667 L18.25,23.4166667 L18.25,9.81383682 Z M36.4166667,9.81383682 C36.4166667,9.79803315 36.4184748,9.79303784 36.4207515,9.79166667 L27.3238554,9.79166667 C27.3447224,9.79166667 27.3333333,9.80308059 27.3333333,9.81383682 L27.3333333,14.3333333 L36.4166667,14.3333333 L36.4166667,9.81383682 Z\" }),\n React.createElement(\"path\", { d: \"M11.4386532,55.2083333 L74.9953562,55.2083333 L79.5452242,41.5833333 L9.80449752,41.5833333 L11.4386532,55.2083333 Z M0.1048547,36.987541 C-0.192399775,34.5091405 1.5865717,32.5 4.09502839,32.5 L87.6264735,32.5 C90.1274401,32.5 91.5225656,34.393506 90.7231047,36.7875656 L82.9702846,60.004101 C82.1795402,62.3720582 79.5279445,64.2916667 76.9985338,64.2916667 L7.91963924,64.2916667 C5.41227673,64.2916667 3.14113571,62.3029555 2.84143097,59.8041257 L0.1048547,36.987541 Z\" }))))));\n }));\n}\nvar AvatarImage = /** @class */ (function (_super) {\n __extends(AvatarImage, _super);\n function AvatarImage() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.state = {\n hasError: false,\n isLoading: false,\n };\n _this.handleLoadSuccess = function () {\n _this.setState({ hasError: false, isLoading: false });\n };\n _this.handleLoadError = function () {\n _this.setState({ hasError: true, isLoading: false });\n };\n return _this;\n }\n AvatarImage.prototype.componentDidMount = function () {\n if (this.props.src) {\n // check whether there was a problem loading the image\n // if handleLoadError is called we show the default avatar\n var img = new Image();\n img.onerror = this.handleLoadError;\n img.src = this.props.src || '';\n }\n };\n AvatarImage.prototype.componentDidUpdate = function (prevProps) {\n var _this = this;\n if (this.props.src && this.props.src !== prevProps.src) {\n // eslint-disable-next-line react/no-did-update-set-state\n this.setState({ isLoading: true }, function () {\n var img = new Image();\n img.onload = _this.handleLoadSuccess;\n img.onerror = _this.handleLoadError;\n img.src = _this.props.src || '';\n });\n }\n };\n AvatarImage.prototype.render = function () {\n var _a = this.props, alt = _a.alt, src = _a.src, appearance = _a.appearance, size = _a.size;\n var _b = this.state, hasError = _b.hasError, isLoading = _b.isLoading;\n var showDefault = !isLoading && (!src || hasError);\n var imageUrl = src && !isLoading ? src : undefined;\n return showDefault ? (React.createElement(DefaultImage, { appearance: appearance, size: size, title: alt, isLoading: isLoading })) : (React.createElement(Slot, { appearance: appearance, isLoading: isLoading, size: size, role: \"img\", label: alt, backgroundImage: imageUrl }));\n };\n return AvatarImage;\n}(PureComponent));\nexport default AvatarImage;\n//# sourceMappingURL=AvatarImage.js.map","import { __assign, __makeTemplateObject } from \"tslib\";\nimport React from 'react';\nimport styled from 'styled-components';\nimport * as colors from '@atlaskit/theme/colors';\nimport { themed, withTheme } from '@atlaskit/theme/components';\nvar Svg = function (props) { return (React.createElement(\"svg\", __assign({ height: \"100%\", version: \"1.1\", viewBox: \"0 0 8 8\", width: \"100%\", xmlns: \"http://www.w3.org/2000/svg\" }, props))); };\nvar BusyCircle = withTheme(styled.circle(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.R300, dark: colors.R200 })));\nvar BusyPath = withTheme(styled.path(templateObject_2 || (templateObject_2 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), colors.background));\nvar FocusPath = withTheme(styled.path(templateObject_3 || (templateObject_3 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), colors.purple));\nvar OfflineOuter = withTheme(styled.path(templateObject_4 || (templateObject_4 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.N200, dark: colors.DN100 })));\nvar OfflineInner = withTheme(styled.path(templateObject_5 || (templateObject_5 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.N40, dark: colors.DN500 })));\nvar OnlineCircle = withTheme(styled.circle(templateObject_6 || (templateObject_6 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.G300, dark: colors.G200 })));\nexport default function getPresenceSvg(presence) {\n switch (presence) {\n case 'busy':\n return (React.createElement(Svg, null,\n React.createElement(BusyCircle, { cx: \"4\", cy: \"4\", r: \"4\" }),\n React.createElement(BusyPath, { d: \"M3.3,1.9l2.8,2.8c0.2,0.2,0.2,0.5,0,0.7L5.4,6.1c-0.2,0.2-0.5,0.2-0.7,0L1.9,3.3c-0.2-0.2-0.2-0.5,0-0.7l0.7-0.7C2.8,1.7,3.1,1.7,3.3,1.9z\" })));\n case 'focus':\n return (React.createElement(Svg, null,\n React.createElement(FocusPath, { d: \"M4,8 C1.790861,8 0,6.209139 0,4 C0,1.790861 1.790861,0 4,0 C6.209139,0 8,1.790861 8,4 C8,6.209139 6.209139,8 4,8 Z M4,6.66666667 C5.47275933,6.66666667 6.66666667,5.47275933 6.66666667,4 C6.66666667,2.52724067 5.47275933,1.33333333 4,1.33333333 C2.52724067,1.33333333 1.33333333,2.52724067 1.33333333,4 C1.33333333,5.47275933 2.52724067,6.66666667 4,6.66666667 Z M4,5.33333333 C3.26362033,5.33333333 2.66666667,4.73637967 2.66666667,4 C2.66666667,3.26362033 3.26362033,2.66666667 4,2.66666667 C4.73637967,2.66666667 5.33333333,3.26362033 5.33333333,4 C5.33333333,4.73637967 4.73637967,5.33333333 4,5.33333333 Z\" })));\n case 'offline':\n return (React.createElement(Svg, null,\n React.createElement(OfflineOuter, { d: \"M4,8 C6.209139,8 8,6.209139 8,4 C8,1.790861 6.209139,0 4,0 C1.790861,0 0,1.790861 0,4 C0,6.209139 1.790861,8 4,8 Z M4,6 C5.1045695,6 6,5.1045695 6,4 C6,2.8954305 5.1045695,2 4,2 C2.8954305,2 2,2.8954305 2,4 C2,5.1045695 2.8954305,6 4,6 Z\" }),\n React.createElement(OfflineInner, { d: \"M4,6 C5.1045695,6 6,5.1045695 6,4 C6,2.8954305 5.1045695,2 4,2 C2.8954305,2 2,2.8954305 2,4 C2,5.1045695 2.8954305,6 4,6 Z\" })));\n case 'online':\n return (React.createElement(Svg, null,\n React.createElement(OnlineCircle, { cx: \"4\", cy: \"4\", r: \"4\" })));\n default:\n return null;\n }\n}\nvar templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;\n//# sourceMappingURL=getPresenceSVG.js.map","import { __makeTemplateObject } from \"tslib\";\nimport styled from 'styled-components';\nimport { background } from '@atlaskit/theme/colors';\nimport { withTheme } from '@atlaskit/theme/components';\nimport { BORDER_WIDTH } from './constants';\nexport var Outer = withTheme(styled.span(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n align-content: center;\\n align-items: center;\\n background-color: \", \";\\n border-radius: 50%;\\n box-sizing: border-box;\\n display: flex;\\n height: 100%;\\n overflow: hidden;\\n padding: \", \"px;\\n width: 100%;\\n\"], [\"\\n align-content: center;\\n align-items: center;\\n background-color: \", \";\\n border-radius: 50%;\\n box-sizing: border-box;\\n display: flex;\\n height: 100%;\\n overflow: hidden;\\n padding: \",\n \"px;\\n width: 100%;\\n\"])), function (props) { return props.bgColor || background; }, function (_a) {\n var size = _a.size;\n return (size && BORDER_WIDTH[size]) || BORDER_WIDTH.medium;\n}));\nexport var Inner = styled.span(templateObject_2 || (templateObject_2 = __makeTemplateObject([\"\\n align-items: center;\\n border-radius: 50%;\\n display: flex;\\n height: 100%;\\n overflow: hidden;\\n width: 100%;\\n\"], [\"\\n align-items: center;\\n border-radius: 50%;\\n display: flex;\\n height: 100%;\\n overflow: hidden;\\n width: 100%;\\n\"])));\nvar templateObject_1, templateObject_2;\n//# sourceMappingURL=Icon.js.map","import { __extends } from \"tslib\";\nimport React, { Component } from 'react';\nimport getPresenceSVG from '../helpers/getPresenceSVG';\nimport { Inner, Outer } from '../styled/Icon';\nvar Presence = /** @class */ (function (_super) {\n __extends(Presence, _super);\n function Presence() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Presence.prototype.render = function () {\n var _a = this.props, borderColor = _a.borderColor, children = _a.children, presence = _a.presence, size = _a.size;\n return (React.createElement(Outer, { size: size, bgColor: borderColor },\n React.createElement(Inner, null, children || (presence && getPresenceSVG(presence)))));\n };\n return Presence;\n}(Component));\nexport default Presence;\n//# sourceMappingURL=Presence.js.map","import { __assign, __makeTemplateObject } from \"tslib\";\nimport React from 'react';\nimport styled from 'styled-components';\nimport * as colors from '@atlaskit/theme/colors';\nimport { themed, withTheme } from '@atlaskit/theme/components';\nvar Svg = function (props) { return (React.createElement(\"svg\", __assign({ height: \"100%\", version: \"1.1\", viewBox: \"0 0 8 8\", width: \"100%\", xmlns: \"http://www.w3.org/2000/svg\" }, props))); };\nvar ApprovedCircle = withTheme(styled.circle(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.G400, dark: colors.G300 })));\nvar ApprovedPath = withTheme(styled.path(templateObject_2 || (templateObject_2 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), colors.background));\nvar DeclinedCircle = withTheme(styled.circle(templateObject_3 || (templateObject_3 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.R400, dark: colors.R300 })));\nvar DeclinedPath = withTheme(styled.path(templateObject_4 || (templateObject_4 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), colors.background));\nvar LockedCircle = withTheme(styled.circle(templateObject_5 || (templateObject_5 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.N40, dark: colors.DN800 })));\nvar LockedPath = withTheme(styled.path(templateObject_6 || (templateObject_6 = __makeTemplateObject([\"\\n fill: \", \";\\n\"], [\"\\n fill: \", \";\\n\"])), themed({ light: colors.N500, dark: colors.DN30 })));\nexport default function getStatusSvg(status) {\n switch (status) {\n case 'approved':\n return (React.createElement(Svg, null,\n React.createElement(ApprovedCircle, { cx: \"4\", cy: \"4\", r: \"4\" }),\n React.createElement(ApprovedPath, { d: \"M2.47140452,3.52859548 C2.21105499,3.26824595 1.78894501,3.26824595 1.52859548,3.52859548 C1.26824595,3.78894501 1.26824595,4.21105499 1.52859548,4.47140452 L2.86192881,5.80473785 C3.12227834,6.06508738 3.54438833,6.06508738 3.80473785,5.80473785 L6.47140452,3.13807119 C6.73175405,2.87772166 6.73175405,2.45561167 6.47140452,2.19526215 C6.21105499,1.93491262 5.78894501,1.93491262 5.52859548,2.19526215 L3.33333333,4.39052429 L2.47140452,3.52859548 Z\" })));\n case 'declined':\n return (React.createElement(Svg, null,\n React.createElement(DeclinedCircle, { cx: \"4\", cy: \"4\", r: \"4\" }),\n React.createElement(DeclinedPath, { d: \"M4.890661,4.0088336 L5.81806461,3.07802178 C6.06167933,2.83351177 6.06048933,2.43826992 5.81540668,2.19522442 C5.57032402,1.95217891 5.17415651,1.95336612 4.93054179,2.19787613 L4.00765946,3.12415007 L3.06906871,2.18377143 C2.82523777,1.93947602 2.42906937,1.93863765 2.18420182,2.18189887 C1.93933427,2.42516008 1.93849394,2.82040282 2.18232488,3.06469822 L3.12544091,4.00961077 L2.20275024,4.93569234 C1.95913552,5.18020236 1.96032551,5.5754442 2.20540817,5.81848971 C2.45049083,6.06153521 2.84665833,6.060348 3.09027306,5.81583799 L4.00844245,4.89429431 L4.9092123,5.79678001 C5.15304324,6.04107541 5.54921164,6.04191379 5.79407919,5.79865257 C6.03894674,5.55539135 6.03978708,5.16014862 5.79595614,4.91585321 L4.890661,4.0088336 Z\" })));\n case 'locked':\n return (React.createElement(Svg, null,\n React.createElement(LockedCircle, { cx: \"4\", cy: \"4\", r: \"4\" }),\n React.createElement(LockedPath, { d: \"M4.13074827,1.21766493 L4.10368158,1.21766493 C3.36340745,1.21766493 2.76388015,1.80793503 2.76388015,2.5367787 L2.76388015,3.21632216 L3.44054754,3.21632216 L3.44054754,2.54344089 C3.44054754,2.17901906 3.74031119,1.88388401 4.11044825,1.88388401 L4.1239816,1.88388401 C4.49411866,1.88388401 4.79388232,2.17901906 4.79388232,2.54344089 L4.79388232,3.21632216 L5.47054971,3.21632216 L5.47054971,2.5367787 C5.47054971,1.80793503 4.8710224,1.21766493 4.13074827,1.21766493 M2.76388015,3.21632216 L3.44054754,3.21632216 L3.44054754,3.88254123 L2.76388015,3.88254123 L2.76388015,3.21632216 Z M4.79388232,3.21632216 L5.47054971,3.21632216 L5.47054971,3.88254123 L4.79388232,3.88254123 L4.79388232,3.21632216 Z M4.79401765,3.88254123 L3.44068287,3.88254123 L2.76401548,3.88254123 C2.39049508,3.88254123 2.08734809,4.18100738 2.08734809,4.54876031 L2.08734809,5.54808892 C2.08734809,6.10000287 2.53735205,6.54741753 3.09094491,6.54741753 L5.14375561,6.54741753 C5.69802683,6.54741753 6.14735243,6.10385072 6.14735243,5.54808892 L6.14735243,4.54876031 C6.14735243,4.18100738 5.84420544,3.88254123 5.47068504,3.88254123 L4.79401765,3.88254123 Z\" })));\n default:\n return null;\n }\n}\nvar templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6;\n//# sourceMappingURL=getStatusSVG.js.map","import { __extends } from \"tslib\";\nimport React, { Component } from 'react';\nimport getStatusSVG from '../helpers/getStatusSVG';\nimport { Inner, Outer } from '../styled/Icon';\nvar Status = /** @class */ (function (_super) {\n __extends(Status, _super);\n function Status() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n Status.prototype.render = function () {\n var _a = this.props, borderColor = _a.borderColor, children = _a.children, status = _a.status, size = _a.size;\n return (React.createElement(Outer, { size: size, bgColor: borderColor },\n React.createElement(Inner, null, children || (status && getStatusSVG(status)))));\n };\n return Status;\n}(Component));\nexport default Status;\n//# sourceMappingURL=Status.js.map","import { __assign, __extends, __read, __spread } from \"tslib\";\nimport React, { Component } from 'react';\nimport { createAndFireEvent, withAnalyticsContext, withAnalyticsEvents, } from '@atlaskit/analytics-next';\nimport Tooltip from '@atlaskit/tooltip';\nimport { getProps, getStyledAvatar } from '../helpers';\nimport { mapProps, withPseudoState } from '../hoc';\nimport Outer, { PresenceWrapper, StatusWrapper } from '../styled/Avatar';\nimport { ICON_SIZES } from '../styled/constants';\nimport { Theme } from '../theme';\nimport { omit } from '../utils';\nimport { name as packageName, version as packageVersion, } from '../version.json';\nimport AvatarImage from './AvatarImage';\nimport { propsOmittedFromClickData } from './constants';\nimport Presence from './Presence';\nimport Status from './Status';\nvar validIconSizes = Object.keys(ICON_SIZES);\nvar warn = function (message) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n console.warn(message); // eslint-disable-line no-console\n }\n};\nvar Avatar = /** @class */ (function (_super) {\n __extends(Avatar, _super);\n function Avatar() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');\n _this.clickAnalyticsCaller = function () {\n var createAnalyticsEvent = _this.props.createAnalyticsEvent;\n return createAnalyticsEvent\n ? _this.createAndFireEventOnAtlaskit({\n action: 'clicked',\n actionSubject: 'avatar',\n attributes: {\n componentName: 'avatar',\n packageName: packageName,\n packageVersion: packageVersion,\n },\n })(createAnalyticsEvent)\n : undefined;\n };\n // expose blur/focus to consumers via ref\n _this.blur = function () {\n if (_this.ref)\n _this.ref.blur();\n };\n _this.focus = function () {\n if (_this.ref)\n _this.ref.focus();\n };\n // disallow click on disabled avatars\n // only return avatar data properties\n _this.guardedClick = function (event) {\n var _a = _this.props, isDisabled = _a.isDisabled, onClick = _a.onClick;\n if (isDisabled || typeof onClick !== 'function')\n return;\n var item = omit.apply(void 0, __spread([_this.props], propsOmittedFromClickData));\n var analyticsEvent = _this.clickAnalyticsCaller();\n onClick({ item: item, event: event }, analyticsEvent);\n };\n // enforce status / presence rules\n /* eslint-disable no-console */\n _this.renderIcon = function () {\n var _a = _this.props, appearance = _a.appearance, borderColor = _a.borderColor, presence = _a.presence, status = _a.status;\n var showPresence = Boolean(presence);\n var showStatus = Boolean(status);\n // no icon needed\n if (!showStatus && !showPresence) {\n return null;\n }\n if (showStatus && showPresence) {\n warn('Avatar supports `presence` OR `status` properties, not both.');\n return null;\n }\n // only support particular sizes\n if (validIconSizes.indexOf(_this.props.size) === -1) {\n warn(\"Avatar size \\\"\" + String(_this.props.size) + \"\\\" does NOT support \" + (showPresence ? 'presence' : 'status'));\n return null;\n }\n // we can cast here because we already know that it is a valid icon size\n var size = _this.props.size;\n var indicator = (function () {\n if (showPresence) {\n var customPresenceNode = typeof presence === 'object' ? presence : null;\n return (React.createElement(PresenceWrapper, { appearance: appearance, size: size },\n React.createElement(Presence, { borderColor: borderColor, presence: !customPresenceNode && presence, size: size }, customPresenceNode)));\n }\n // showStatus\n var customStatusNode = typeof status === 'object' ? status : null;\n return (React.createElement(StatusWrapper, { appearance: appearance, size: size },\n React.createElement(Status, { borderColor: borderColor, status: !customStatusNode && status, size: size }, customStatusNode)));\n })();\n return indicator;\n };\n _this.setRef = function (ref) {\n _this.ref = ref;\n };\n return _this;\n }\n Avatar.prototype.render = function () {\n var _a = this.props, appearance = _a.appearance, enableTooltip = _a.enableTooltip, name = _a.name, size = _a.size, src = _a.src, stackIndex = _a.stackIndex, onClick = _a.onClick, theme = _a.theme, testId = _a.testId;\n // distill props from context, props, and state\n var enhancedProps = getProps(this);\n // provide element interface based on props\n var Inner = getStyledAvatar(this.props);\n Inner.displayName = 'Inner';\n var AvatarNode = (React.createElement(Theme.Provider, { value: theme },\n React.createElement(Outer, { size: size, stackIndex: stackIndex, testId: testId },\n React.createElement(Inner, __assign({ innerRef: this.setRef }, enhancedProps, { onClick: onClick != null ? this.guardedClick : undefined }),\n React.createElement(AvatarImage, { alt: name, appearance: appearance, size: size, src: src })),\n this.renderIcon())));\n return enableTooltip && name ? (React.createElement(Tooltip, { content: name }, AvatarNode)) : (AvatarNode);\n };\n Avatar.defaultProps = {\n appearance: 'circle',\n enableTooltip: true,\n size: 'medium',\n };\n return Avatar;\n}(Component));\nexport var AvatarWithoutAnalytics = mapProps({\n appearance: function (props) { return props.appearance || Avatar.defaultProps.appearance; },\n isInteractive: function (props) {\n return Boolean((typeof props.enableTooltip !== 'undefined'\n ? props.enableTooltip\n : Avatar.defaultProps.enableTooltip) && props.name);\n },\n})(withPseudoState(Avatar));\nexport default withAnalyticsContext({\n componentName: 'avatar',\n packageName: packageName,\n packageVersion: packageVersion,\n})(withAnalyticsEvents()(AvatarWithoutAnalytics));\n//# sourceMappingURL=Avatar.js.map","import { __assign, __extends } from \"tslib\";\nimport React, { Component } from 'react';\nimport { getDisplayName } from '../utils';\nexport default function mapProps(mapping) {\n return function (DecoratedComponent) { var _a; return _a = /** @class */ (function (_super) {\n __extends(MapProps, _super);\n function MapProps() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n // expose blur/focus to consumers via ref\n _this.blur = function () {\n // @ts-ignore accessing component internals\n if (_this.component && _this.component.blur)\n _this.component.blur();\n };\n _this.focus = function () {\n // @ts-ignore accessing component internals\n if (_this.component && _this.component.focus)\n _this.component.focus();\n };\n _this.setComponent = function (component) {\n _this.component = component;\n };\n return _this;\n }\n MapProps.prototype.render = function () {\n var _this = this;\n var mapped = __assign(__assign({}, this.props), Object.keys(mapping).reduce(function (acc, key) {\n var _a;\n return (__assign(__assign({}, acc), (_a = {}, _a[key] = mapping[key](_this.props), _a)));\n }, {}));\n return React.createElement(DecoratedComponent, __assign({ ref: this.setComponent }, mapped));\n };\n return MapProps;\n }(Component)),\n _a.displayName = getDisplayName('mapProps', DecoratedComponent),\n _a.DecoratedComponent = DecoratedComponent,\n _a; };\n}\n//# sourceMappingURL=mapProps.js.map","export default (function (channel) { return function (payload) { return function (createAnalyticsEvent) {\n var consumerEvent = createAnalyticsEvent(payload);\n var clonedEvent = consumerEvent.clone();\n if (clonedEvent) {\n clonedEvent.fire(channel);\n }\n return consumerEvent;\n}; }; });\n//# sourceMappingURL=createAndFireEvent.js.map","import { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContext from './AnalyticsContext';\nvar withAnalyticsContext = function (defaultData) { return function (WrappedComponent) {\n var WithAnalyticsContext = React.forwardRef(function (props, ref) {\n var _a = props.analyticsContext, analyticsContext = _a === void 0 ? {} : _a, rest = __rest(props, [\"analyticsContext\"]);\n var analyticsData = __assign(__assign({}, defaultData), analyticsContext);\n return (React.createElement(AnalyticsContext, { data: analyticsData },\n React.createElement(WrappedComponent, __assign({}, rest, { ref: ref }))));\n });\n // @ts-ignore\n WithAnalyticsContext.displayName = \"WithAnalyticsContext(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsContext;\n}; };\nexport default withAnalyticsContext;\n//# sourceMappingURL=withAnalyticsContext.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContextConsumer from './AnalyticsContextConsumer';\nvar withAnalyticsEvents = function (createEventMap) { return function (WrappedComponent) {\n var WithAnalyticsEvents = React.forwardRef(function (props, ref) { return (React.createElement(AnalyticsContextConsumer, { createEventMap: createEventMap, wrappedComponentProps: props }, function (_a) {\n var createAnalyticsEvent = _a.createAnalyticsEvent, patchedEventProps = _a.patchedEventProps;\n return (React.createElement(WrappedComponent, __assign({}, props, patchedEventProps, { createAnalyticsEvent: createAnalyticsEvent, ref: ref })));\n })); });\n // @ts-ignore\n WithAnalyticsEvents.displayName = \"WithAnalyticsEvents(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsEvents;\n}; };\nexport default withAnalyticsEvents;\n//# sourceMappingURL=withAnalyticsEvents.js.map","export var propsOmittedFromClickData = [\n 'onBlur',\n 'onClick',\n 'onFocus',\n 'onKeyDown',\n 'onKeyUp',\n 'onMouseDown',\n 'onMouseEnter',\n 'onMouseLeave',\n 'onMouseUp',\n];\n//# sourceMappingURL=constants.js.map","import { __assign } from \"tslib\";\nvar getAppearanceProps = function (props) { return ({\n appearance: props.appearance,\n backgroundColor: props.backgroundColor,\n borderColor: props.borderColor,\n groupAppearance: props.groupAppearance,\n isActive: props.isActive,\n isDisabled: props.isDisabled,\n isFocus: props.isFocus,\n isHover: props.isHover,\n isInteractive: props.isInteractive,\n isSelected: props.isSelected,\n size: props.size,\n stackIndex: props.stackIndex,\n}); };\nvar getInteractionProps = function (props) { return ({\n onBlur: props.onBlur,\n onClick: props.onClick,\n onFocus: props.onFocus,\n onKeyDown: props.onKeyDown,\n onKeyUp: props.onKeyUp,\n onMouseDown: props.onMouseDown,\n onMouseEnter: props.onMouseEnter,\n onMouseLeave: props.onMouseLeave,\n onMouseUp: props.onMouseUp,\n tabIndex: props.tabIndex,\n}); };\nvar getLinkElementProps = function (props) {\n var href = props.href, target = props.target;\n // handle security issue for consumer\n // https://mathiasbynens.github.io/rel-noopener\n var rel = target === '_blank' ? 'noopener noreferrer' : null;\n return { href: href, rel: rel, target: target };\n};\nvar getButtonElementProps = function (props) {\n var id = props.id, isDisabled = props.isDisabled;\n return { id: id, interface: 'button', disabled: isDisabled };\n};\nexport default function getProps(component) {\n var props = component.props;\n var defaultProps = __assign(__assign({}, getAppearanceProps(props)), getInteractionProps(props));\n if (props.component) {\n return __assign(__assign({}, defaultProps), props);\n }\n if (props.href) {\n if (props.isDisabled) {\n return defaultProps;\n }\n return __assign(__assign({}, defaultProps), getLinkElementProps(props));\n }\n if (props.onClick) {\n return __assign(__assign({}, defaultProps), getButtonElementProps(props));\n }\n return defaultProps;\n}\n//# sourceMappingURL=getProps.js.map","import { __assign, __extends, __rest } from \"tslib\";\nimport React, { Component } from 'react';\n/**\n * Styling a avatar is complicated and there are a number of properties which\n * inform its appearance. We want to be able to style any arbitrary component\n * like a Link, but we don't want to pass all of these appearance-related props\n * through to the component or underlying DOM node. This component acts as a\n * layer which catches the appearance-related properties so that they can be\n * used by styled-components, then passes the rest of the props on to the custom\n * component.\n */\nvar CustomComponentProxy = /** @class */ (function (_super) {\n __extends(CustomComponentProxy, _super);\n function CustomComponentProxy() {\n return _super !== null && _super.apply(this, arguments) || this;\n }\n CustomComponentProxy.prototype.render = function () {\n var _a = this.props, appearance = _a.appearance, avatar = _a.avatar, borderColor = _a.borderColor, ProxiedComponent = _a.component, enableTooltip = _a.enableTooltip, groupAppearance = _a.groupAppearance, innerRef = _a.innerRef, isActive = _a.isActive, isDisabled = _a.isDisabled, isFocus = _a.isFocus, isHover = _a.isHover, isSelected = _a.isSelected, primaryText = _a.primaryText, secondaryText = _a.secondaryText, stackIndex = _a.stackIndex, rest = __rest(_a, [\"appearance\", \"avatar\", \"borderColor\", \"component\", \"enableTooltip\", \"groupAppearance\", \"innerRef\", \"isActive\", \"isDisabled\", \"isFocus\", \"isHover\", \"isSelected\", \"primaryText\", \"secondaryText\", \"stackIndex\"]);\n return ProxiedComponent ? React.createElement(ProxiedComponent, __assign({}, rest)) : null;\n };\n return CustomComponentProxy;\n}(Component));\nexport default CustomComponentProxy;\n//# sourceMappingURL=CustomComponentProxy.js.map","import { __makeTemplateObject } from \"tslib\";\nimport styled from 'styled-components';\nimport { withTheme } from '@atlaskit/theme/components';\nimport CustomComponentProxy from '../components/CustomComponentProxy';\n// This is necessary because we don't know what DOM element the custom component will render.\nexport default (function (styles) {\n var StyledCustomComponent = withTheme(styled(CustomComponentProxy)(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n &,\\n &:hover,\\n &:active,\\n &:focus {\\n \", \"\\n }\\n \"], [\"\\n &,\\n &:hover,\\n &:active,\\n &:focus {\\n \", \"\\n }\\n \"])), styles));\n var StyledButton = withTheme(styled.button(templateObject_2 || (templateObject_2 = __makeTemplateObject([\"\\n \", \";\\n \"], [\"\\n \", \";\\n \"])), styles));\n var StyledLink = withTheme(styled.a(templateObject_3 || (templateObject_3 = __makeTemplateObject([\"\\n a& {\\n \", \";\\n }\\n \"], [\"\\n a& {\\n \", \";\\n }\\n \"])), styles));\n var StyledSpan = withTheme(styled.span(templateObject_4 || (templateObject_4 = __makeTemplateObject([\"\\n \", \";\\n \"], [\"\\n \", \";\\n \"])), styles));\n return function getStyled(_a) {\n var component = _a.component, href = _a.href, onClick = _a.onClick;\n var Ret = StyledSpan;\n if (component) {\n Ret = StyledCustomComponent;\n }\n else if (href) {\n Ret = StyledLink;\n }\n else if (onClick) {\n Ret = StyledButton;\n }\n return Ret;\n };\n});\nvar templateObject_1, templateObject_2, templateObject_3, templateObject_4;\n//# sourceMappingURL=styledCache.js.map","import { __assign, __extends, __read, __spread } from \"tslib\";\nimport React, { Component } from 'react';\nimport { getDisplayName } from '../utils';\nexport default function withPseudoState(WrappedComponent) {\n var _a;\n return _a = /** @class */ (function (_super) {\n __extends(ComponentWithPseudoState, _super);\n function ComponentWithPseudoState() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.component = null;\n _this.actionKeys = [];\n _this.state = {\n isActive: Boolean(_this.props.isActive),\n isFocus: Boolean(_this.props.isActive),\n isHover: Boolean(_this.props.isActive),\n isInteractive: Boolean(_this.props.href || _this.props.isInteractive || _this.props.onClick),\n };\n _this.blur = function () {\n // @ts-ignore reaching into the instance\n if (_this.component && _this.component.blur)\n _this.component.blur();\n };\n _this.focus = function () {\n // @ts-ignore reaching into the instance\n if (_this.component && _this.component.focus)\n _this.component.focus();\n };\n _this.setComponent = function (component) {\n _this.component = component;\n };\n _this.onBlur = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n _this.setState({ isActive: false, isFocus: false });\n if (_this.props.onBlur) {\n (_a = _this.props).onBlur.apply(_a, __spread(args));\n }\n };\n _this.onFocus = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n _this.setState({ isFocus: true });\n if (_this.props.onFocus) {\n (_a = _this.props).onFocus.apply(_a, __spread(args));\n }\n };\n _this.onMouseLeave = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n _this.setState({ isActive: false, isHover: false });\n if (_this.props.onMouseLeave) {\n (_a = _this.props).onMouseLeave.apply(_a, __spread(args));\n }\n };\n _this.onMouseEnter = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n _this.setState({ isHover: true });\n if (_this.props.onMouseEnter) {\n (_a = _this.props).onMouseEnter.apply(_a, __spread(args));\n }\n };\n _this.onMouseUp = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n _this.setState({ isActive: false });\n if (_this.props.onMouseUp) {\n (_a = _this.props).onMouseUp.apply(_a, __spread(args));\n }\n };\n _this.onMouseDown = function () {\n var _a;\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n _this.setState({ isActive: true });\n if (_this.props.onMouseDown) {\n (_a = _this.props).onMouseDown.apply(_a, __spread(args));\n }\n };\n _this.onKeyDown = function (event) {\n var _a;\n var rest = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n rest[_i - 1] = arguments[_i];\n }\n if (_this.actionKeys.indexOf(event.key) > -1) {\n _this.setState({ isActive: true });\n }\n if (_this.props.onKeyDown) {\n (_a = _this.props).onKeyDown.apply(_a, __spread([event], rest));\n }\n };\n _this.onKeyUp = function (event) {\n var _a;\n var rest = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n rest[_i - 1] = arguments[_i];\n }\n if (_this.actionKeys.indexOf(event.key) > -1) {\n _this.setState({ isActive: false });\n }\n if (_this.props.onKeyUp) {\n (_a = _this.props).onKeyUp.apply(_a, __spread([event], rest));\n }\n };\n return _this;\n }\n ComponentWithPseudoState.prototype.UNSAFE_componentWillMount = function () {\n var _a = this.props, href = _a.href, isInteractive = _a.isInteractive, onClick = _a.onClick;\n if (href || isInteractive || onClick) {\n this.actionKeys = onClick || isInteractive ? ['Enter', ' '] : ['Enter'];\n }\n };\n ComponentWithPseudoState.prototype.render = function () {\n return (React.createElement(WrappedComponent, __assign({ ref: this.setComponent }, this.state, this.props, (this.state.isInteractive && {\n onBlur: this.onBlur,\n onFocus: this.onFocus,\n onMouseLeave: this.onMouseLeave,\n onMouseEnter: this.onMouseEnter,\n onMouseUp: this.onMouseUp,\n onMouseDown: this.onMouseDown,\n onKeyDown: this.onKeyDown,\n onKeyUp: this.onKeyUp,\n }))));\n };\n return ComponentWithPseudoState;\n }(Component)),\n _a.displayName = getDisplayName('withPseudoState', WrappedComponent),\n _a;\n}\n//# sourceMappingURL=withPseudoState.js.map","import { __assign, __values } from \"tslib\";\nexport function omit(obj) {\n var e_1, _a;\n var keysToOmit = [];\n for (var _i = 1; _i < arguments.length; _i++) {\n keysToOmit[_i - 1] = arguments[_i];\n }\n var newObj = __assign({}, obj);\n try {\n for (var keysToOmit_1 = __values(keysToOmit), keysToOmit_1_1 = keysToOmit_1.next(); !keysToOmit_1_1.done; keysToOmit_1_1 = keysToOmit_1.next()) {\n var key = keysToOmit_1_1.value;\n delete newObj[key];\n }\n }\n catch (e_1_1) { e_1 = { error: e_1_1 }; }\n finally {\n try {\n if (keysToOmit_1_1 && !keysToOmit_1_1.done && (_a = keysToOmit_1.return)) _a.call(keysToOmit_1);\n }\n finally { if (e_1) throw e_1.error; }\n }\n return newObj;\n}\nexport function getDisplayName(prefix, Component) {\n var componentName = Component.displayName || Component.name;\n return componentName ? prefix + \"(\" + componentName + \")\" : prefix;\n}\n//# sourceMappingURL=utils.js.map","import themed from './utils/themed';\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n// Themed colors\nexport const background = themed({ light: N0, dark: DN30 });\nexport const backgroundActive = themed({ light: B50, dark: B75 });\nexport const backgroundHover = themed({ light: N30, dark: DN70 });\nexport const backgroundOnLayer = themed({ light: N0, dark: DN50 });\nexport const text = themed({ light: N900, dark: DN600 });\nexport const textHover = themed({ light: N800, dark: DN600 });\nexport const textActive = themed({ light: B400, dark: B400 });\nexport const subtleText = themed({ light: N200, dark: DN300 });\nexport const placeholderText = themed({ light: N100, dark: DN200 });\nexport const heading = themed({ light: N800, dark: DN600 });\nexport const subtleHeading = themed({ light: N200, dark: DN300 });\nexport const codeBlock = themed({ light: N20, dark: DN50 });\nexport const link = themed({ light: B400, dark: B100 });\nexport const linkHover = themed({ light: B300, dark: B200 });\nexport const linkActive = themed({ light: B500, dark: B100 });\nexport const linkOutline = themed({ light: B100, dark: B200 });\nexport const primary = themed({ light: B400, dark: B100 });\nexport const blue = themed({ light: B400, dark: B100 });\nexport const teal = themed({ light: T300, dark: T200 });\nexport const purple = themed({ light: P300, dark: P100 });\nexport const red = themed({ light: R300, dark: R300 });\nexport const yellow = themed({ light: Y300, dark: Y300 });\nexport const green = themed({ light: G300, dark: G300 });\nexport const skeleton = () => N20A;\n//# sourceMappingURL=colors.js.map","import { createTheme } from '../utils/createTheme';\n// Create default global light theme\nexport default createTheme(() => ({\n mode: 'light',\n}));\n//# sourceMappingURL=Theme.js.map","import { css } from 'styled-components';\nimport { B100, N30A, skeleton as skeletonColor } from './colors';\nexport const FLATTENED = '__FLATTENED__';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\nexport const borderRadius = () => 3;\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\nexport const focusRing = (color = B100, outlineWidth = gridSize() / 4) => `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n dialog: () => 300,\n navigation: () => 200,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 800,\n};\nexport const visuallyHidden = () => ({\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important',\n});\n/**\n * Deprecated Styled Components mixin.\n * Use visuallyHidden instead.\n * @deprecated\n */\nexport const assistive = () => css `\n border: 0 !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n height: 1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n width: 1px !important;\n white-space: nowrap !important;\n`;\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: skeletonColor(),\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate',\n },\n keyframes: {\n from: {\n backgroundColor: skeletonColor(),\n },\n to: {\n backgroundColor: N30A,\n },\n },\n});\n//# sourceMappingURL=constants.js.map","import React from 'react';\nimport Theme from './components/Theme';\n// Pre-executes the (global) theme and passes it as a prop to the supplied component.\n// This is useful for ensuring that the current theme is accessible as props\n// in styled-components.\nexport function withTheme(InnerComponent) {\n return function ComponentWithTheme(props) {\n return (React.createElement(Theme.Consumer, null, (tokens) => (React.createElement(InnerComponent, Object.assign({}, props, { theme: tokens })))));\n };\n}\n//# sourceMappingURL=hoc.js.map","import React, { createContext, useContext, useCallback, } from 'react';\n/*\ncreateTheme is used to create a set of Providers and Consumers for theming components.\n- Takes a default theme function; this theme function gets a set of props, and returns tokens\n based on those props. An example of this default theme function is one that produces the standard\n appearance of the component\n- Returns two things - a Provider that allow for additional themes to be applied, and a Consumer\n that can get the current theme and fetch it.\n*/\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n /* Internally, Theme uses React Context, with internal providers and consumers.\n The React Context passes only a function that gets props, and turns them into tokens. This\n function gets mixed as more Providers with their own themes are added. This mixed function\n is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n the theme. */\n const ThemeContext = createContext(defaultGetTokens);\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const { children, ...themeProps } = props;\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = themeFn(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return React.createElement(React.Fragment, null, children(tokens));\n }\n /* The Theme Provider takes regular nodes as its child, but also takes a *theme function*\n - The theme function takes a set of props, as well as a function (getTokens) that can\n turn props into tokens.\n - The getTokens function isn't called immediately - instead the props are passed\n through a mix of parent theming functions\n Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback((themeProps) => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return (React.createElement(ThemeContext.Provider, { value: mixedFn }, props.children));\n }\n return { Consumer, Provider };\n}\n//# sourceMappingURL=createTheme.js.map","// ideally this would be fetched from ../constants but that causes a\n// circular dep loop. This will be refactored as part of a breaking\n// change in the future.\nconst DEFAULT_THEME_MODE = 'light';\nconst THEME_MODES = ['light', 'dark'];\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if ('__ATLASKIT_THEME__' in props.theme) {\n return props.theme.__ATLASKIT_THEME__;\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return { mode: DEFAULT_THEME_MODE };\n}\n//# sourceMappingURL=getTheme.js.map","/* eslint-disable prefer-rest-params */\nimport getTheme from './getTheme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return (props) => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value)\n return value; // TS believes value can be undefined\n }\n }\n return '';\n };\n}\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return (props) => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value)\n return value;\n }\n return '';\n };\n}\n//# sourceMappingURL=themed.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","var isBrowser = \"object\" !== 'undefined';\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false ) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = {\n ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n this.payload = props.payload;\n }\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = {\n ...this.payload,\n ...updater\n };\n }\n return this;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n return null;\n }\n const context = [...this.context];\n const handlers = [...this.handlers];\n\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n return;\n }\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n return this;\n }\n return super.update(updater);\n }\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafEventHandler({\n fn,\n action,\n componentName,\n actionSubject,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n\n // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(value => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: actionSubject || componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n });\n\n // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context);\n\n // fire an event on the atlaskit channel\n const clone = analyticsEvent.clone();\n if (clone) {\n clone.fire('atlaskit');\n }\n fnRef.current(value, analyticsEvent);\n }, [\n // These are strings and won't change\n action, componentName, actionSubject, packageName, packageVersion,\n // This function is memoized in the context\n createAnalyticsEvent,\n // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","import { createTheme } from '../utils/create-theme';\n\n// Create default global light theme\nconst {\n Provider,\n Consumer,\n useTheme\n} = createTheme(() => ({\n mode: 'light'\n}));\nexport { useTheme as useGlobalTheme };\nexport default {\n Provider,\n Consumer\n};","import React, { createContext, useCallback, useContext } from 'react';\n/**\n * createTheme is used to create a set of Providers and Consumers for theming components.\n * - Takes a default theme function; this theme function gets a set of props, and returns tokens\n * based on those props. An example of this default theme function is one that produces the standard\n * appearance of the component\n * - Returns three things - a Provider that allow for additional themes to be applied, a Consumer\n * that can get the current theme and fetch it, and a custom hook - useTheme which provides an alternate (although functionally the same) API\n * to the Consumer.\n */\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n\n /**\n * Internally, Theme uses React Context, with internal providers and consumers.\n * The React Context passes only a function that gets props, and turns them into tokens. This\n * function gets mixed as more Providers with their own themes are added. This mixed function\n * is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n * the theme.\n */\n const ThemeContext = /*#__PURE__*/createContext(defaultGetTokens);\n function useTheme(themeProps) {\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n const tokens = themeFn(themeProps);\n return tokens;\n }\n\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const {\n children,\n ...themeProps\n } = props;\n\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = useTheme(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return /*#__PURE__*/React.createElement(React.Fragment, null, children(tokens));\n }\n\n /**\n * The Theme Provider takes regular nodes as its children, but also takes a *theme function*\n * - The theme function takes a set of props, as well as a function (getTokens) that can turn props into tokens.\n * - The getTokens function isn't called immediately - instead the props are passed\n * through a mix of parent theming functions\n * Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback(themeProps => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: mixedFn\n }, props.children);\n }\n return {\n Consumer,\n Provider,\n useTheme\n };\n}","/** @jsx jsx */\nimport { forwardRef, memo, useCallback, useRef } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { usePlatformLeafEventHandler } from '@atlaskit/analytics-next/usePlatformLeafEventHandler';\nimport noop from '@atlaskit/ds-lib/noop';\nimport { DN90A, N100A } from '@atlaskit/theme/colors';\nimport { useGlobalTheme } from '@atlaskit/theme/components';\nimport { layers } from '@atlaskit/theme/constants';\nconst packageName = \"@atlaskit/blanket\";\nconst packageVersion = \"12.4.3\";\nconst analyticsAttributes = {\n componentName: 'blanket',\n packageName,\n packageVersion\n};\nconst baseStyles = css({\n position: 'fixed',\n zIndex: layers.blanket(),\n inset: 0,\n overflowY: 'auto',\n pointerEvents: 'initial'\n});\nconst shouldAllowClickThroughStyles = css({\n pointerEvents: 'none'\n});\nconst invisibleStyles = css({\n backgroundColor: 'transparent'\n});\nconst lightBgStyles = css({\n backgroundColor: `var(--ds-blanket, ${N100A})`\n});\nconst darkBgStyles = css({\n backgroundColor: `var(--ds-blanket, ${DN90A})`\n});\nconst backgroundStyle = {\n light: lightBgStyles,\n dark: darkBgStyles\n};\n\n/**\n * __Blanket__\n *\n * A Blanket provides the overlay layer for components such as a modal dialog or a tooltip\n *\n * - [Examples](https://atlaskit.atlassian.com/examples/design-system/blanket/basic-usage)\n */\nconst Blanket = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Blanket({\n shouldAllowClickThrough = false,\n isTinted = false,\n onBlanketClicked = noop,\n testId,\n children,\n analyticsContext\n}, ref) {\n const {\n mode\n } = useGlobalTheme();\n const mouseDownTarget = useRef(null);\n const onBlanketClickedWithAnalytics = usePlatformLeafEventHandler({\n fn: onBlanketClicked,\n action: 'clicked',\n analyticsData: analyticsContext,\n ...analyticsAttributes\n });\n const blanketClickOutsideChildren = useCallback(e => e.currentTarget === e.target && mouseDownTarget.current === e.target ? onBlanketClickedWithAnalytics(e) : undefined, [onBlanketClickedWithAnalytics]);\n const onClick = shouldAllowClickThrough ? undefined : blanketClickOutsideChildren;\n const onMouseDown = useCallback(e => {\n mouseDownTarget.current = e.target;\n }, []);\n return jsx(\"div\", {\n role: \"presentation\",\n css: [baseStyles, shouldAllowClickThrough && shouldAllowClickThroughStyles, backgroundStyle[mode], !isTinted && invisibleStyles],\n onClick: onClick,\n onMouseDown: onMouseDown,\n \"data-testid\": testId,\n ref: ref\n }, children);\n}));\nBlanket.displayName = 'Blanket';\nexport default Blanket;","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\n/** @jsx jsx */\nvar react_1 = tslib_1.__importDefault(require(\"react\"));\nvar core_1 = require(\"@emotion/core\");\nvar memoize_one_1 = tslib_1.__importDefault(require(\"memoize-one\"));\nvar analytics_next_1 = require(\"@atlaskit/analytics-next\");\nvar components_1 = tslib_1.__importDefault(require(\"@atlaskit/theme/components\"));\nvar theme_1 = require(\"../theme\");\nvar version_json_1 = require(\"../version.json\");\nvar Content_1 = tslib_1.__importDefault(require(\"./Content\"));\nvar IconWrapper_1 = tslib_1.__importDefault(require(\"./IconWrapper\"));\nvar InnerWrapper_1 = tslib_1.__importDefault(require(\"./InnerWrapper\"));\nvar LoadingSpinner_1 = tslib_1.__importDefault(require(\"./LoadingSpinner\"));\nvar utils_1 = require(\"./utils\");\nvar Button = /** @class */ (function (_super) {\n tslib_1.__extends(Button, _super);\n function Button() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n // ref can be a range of things because we render button, a, span or other React components\n _this.button = react_1.default.createRef();\n // Makes sure we don't call ref every render.\n _this.getComposedRefs = memoize_one_1.default(utils_1.composeRefs);\n _this.state = {\n isActive: false,\n isFocus: false,\n isHover: false,\n };\n _this.isInteractive = function () { return !_this.props.isDisabled && !_this.props.isLoading; };\n _this.onMouseEnter = function (e) {\n _this.setState({ isHover: true });\n if (_this.props.onMouseEnter) {\n _this.props.onMouseEnter(e);\n }\n };\n _this.onMouseLeave = function (e) {\n _this.setState({ isHover: false, isActive: false });\n if (_this.props.onMouseLeave) {\n _this.props.onMouseLeave(e);\n }\n };\n _this.onMouseDown = function (e) {\n e.preventDefault();\n _this.setState({ isActive: true });\n if (_this.props.onMouseDown) {\n _this.props.onMouseDown(e);\n }\n };\n _this.onMouseUp = function (e) {\n _this.setState({ isActive: false });\n if (_this.props.onMouseUp) {\n _this.props.onMouseUp(e);\n }\n };\n _this.onFocus = function (event) {\n _this.setState({ isFocus: true });\n if (_this.props.onFocus) {\n _this.props.onFocus(event);\n }\n };\n _this.onBlur = function (event) {\n _this.setState({ isFocus: false });\n if (_this.props.onBlur) {\n _this.props.onBlur(event);\n }\n };\n _this.getElement = function () {\n var _a = _this.props, href = _a.href, isDisabled = _a.isDisabled;\n if (href) {\n return isDisabled ? 'span' : 'a';\n }\n return 'button';\n };\n // Swallow click events when the button is disabled\n // to prevent inner child clicks bubbling up.\n _this.onInnerClick = function (e) {\n if (!_this.isInteractive()) {\n e.stopPropagation();\n }\n return true;\n };\n return _this;\n }\n Button.prototype.componentDidMount = function () {\n if (this.props.autoFocus && this.button instanceof HTMLButtonElement) {\n this.button.focus();\n }\n };\n Button.prototype.render = function () {\n var _this = this;\n var _a = this.props, _b = _a.appearance, appearance = _b === void 0 ? 'default' : _b, children = _a.children, className = _a.className, CustomComponent = _a.component, consumerRef = _a.consumerRef, iconAfter = _a.iconAfter, iconBefore = _a.iconBefore, _c = _a.isDisabled, isDisabled = _c === void 0 ? false : _c, _d = _a.isLoading, isLoading = _d === void 0 ? false : _d, _e = _a.isSelected, isSelected = _e === void 0 ? false : _e, _f = _a.shouldFitContainer, shouldFitContainer = _f === void 0 ? false : _f, _g = _a.spacing, spacing = _g === void 0 ? 'default' : _g, _h = _a.theme, theme = _h === void 0 ? function (current, props) { return current(props); } : _h, testId = _a.testId, rest = tslib_1.__rest(_a, [\"appearance\", \"children\", \"className\", \"component\", \"consumerRef\", \"iconAfter\", \"iconBefore\", \"isDisabled\", \"isLoading\", \"isSelected\", \"shouldFitContainer\", \"spacing\", \"theme\", \"testId\"]);\n var attributes = tslib_1.__assign(tslib_1.__assign({}, this.state), { isSelected: isSelected, isDisabled: isDisabled });\n var StyledButton = CustomComponent || this.getElement();\n var iconIsOnlyChild = !!((iconBefore && !iconAfter && !children) ||\n (iconAfter && !iconBefore && !children));\n var specifiers = function (styles) {\n if (StyledButton === 'a') {\n return {\n 'a&': styles,\n };\n }\n else if (StyledButton === CustomComponent) {\n return {\n '&, a&, &:hover, &:active, &:focus': styles,\n };\n }\n return styles;\n };\n return (core_1.jsx(theme_1.Theme.Provider, { value: theme },\n core_1.jsx(components_1.default.Consumer, null, function (_a) {\n var mode = _a.mode;\n return (core_1.jsx(theme_1.Theme.Consumer, tslib_1.__assign({ mode: mode, state: utils_1.mapAttributesToState(attributes), iconIsOnlyChild: iconIsOnlyChild }, _this.props), function (_a) {\n var buttonStyles = _a.buttonStyles, spinnerStyles = _a.spinnerStyles;\n return (core_1.jsx(StyledButton, tslib_1.__assign({}, utils_1.filterProps(rest, StyledButton), { \"data-testid\": testId, ref: _this.getComposedRefs(_this.button, consumerRef), onMouseEnter: _this.onMouseEnter, onMouseLeave: _this.onMouseLeave, onMouseDown: _this.onMouseDown, onMouseUp: _this.onMouseUp, onFocus: _this.onFocus, onBlur: _this.onBlur, disabled: isDisabled, className: className, css: specifiers(buttonStyles) }),\n core_1.jsx(InnerWrapper_1.default, { onClick: _this.onInnerClick, fit: !!shouldFitContainer },\n isLoading && (core_1.jsx(LoadingSpinner_1.default, { spacing: spacing, appearance: appearance, isSelected: isSelected, isDisabled: isDisabled, styles: spinnerStyles })),\n iconBefore && (core_1.jsx(IconWrapper_1.default, { isLoading: isLoading, spacing: spacing, isOnlyChild: iconIsOnlyChild, icon: iconBefore })),\n children && (core_1.jsx(Content_1.default, { isLoading: isLoading, followsIcon: !!iconBefore, spacing: spacing }, children)),\n iconAfter && (core_1.jsx(IconWrapper_1.default, { isLoading: isLoading, spacing: spacing, isOnlyChild: iconIsOnlyChild, icon: iconAfter })))));\n }));\n })));\n };\n Button.defaultProps = {\n appearance: 'default',\n autoFocus: false,\n isDisabled: false,\n isLoading: false,\n isSelected: false,\n shouldFitContainer: false,\n spacing: 'default',\n type: 'button',\n };\n return Button;\n}(react_1.default.Component));\nexports.Button = Button;\nvar createAndFireEventOnAtlaskit = analytics_next_1.createAndFireEvent('atlaskit');\nvar ButtonWithRef = react_1.default.forwardRef(function (props, ref) { return core_1.jsx(Button, tslib_1.__assign({}, props, { consumerRef: ref })); });\nButtonWithRef.displayName = 'Button';\nexports.default = analytics_next_1.withAnalyticsContext({\n componentName: 'button',\n packageName: version_json_1.name,\n packageVersion: version_json_1.version,\n})(analytics_next_1.withAnalyticsEvents({\n onClick: createAndFireEventOnAtlaskit({\n action: 'clicked',\n actionSubject: 'button',\n attributes: {\n componentName: 'button',\n packageName: version_json_1.name,\n packageVersion: version_json_1.version,\n },\n }),\n})(ButtonWithRef));\n//# sourceMappingURL=Button.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\nvar core_1 = require(\"@emotion/core\");\nvar constants_1 = require(\"@atlaskit/theme/constants\");\nvar utils_1 = require(\"./utils\");\nexports.default = (function (_a) {\n var children = _a.children, followsIcon = _a.followsIcon, spacing = _a.spacing, isLoading = _a.isLoading, rest = tslib_1.__rest(_a, [\"children\", \"followsIcon\", \"spacing\", \"isLoading\"]);\n return (core_1.jsx(\"span\", tslib_1.__assign({ css: tslib_1.__assign({ alignItems: followsIcon ? 'baseline' : 'center', alignSelf: followsIcon ? 'baseline' : 'center', flex: '1 1 auto', margin: spacing === 'none' ? 0 : \"0 \" + constants_1.gridSize() / 2 + \"px\", maxWidth: '100%', overflow: 'hidden', textOverflow: 'ellipsis', whiteSpace: 'nowrap' }, utils_1.getLoadingStyle(isLoading)) }, rest), children));\n});\n//# sourceMappingURL=Content.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\n/** @jsx jsx */\nvar core_1 = require(\"@emotion/core\");\nvar constants_1 = require(\"@atlaskit/theme/constants\");\nvar utils_1 = require(\"./utils\");\nexports.default = (function (_a) {\n var spacing = _a.spacing, icon = _a.icon, isOnlyChild = _a.isOnlyChild, isLoading = _a.isLoading, rest = tslib_1.__rest(_a, [\"spacing\", \"icon\", \"isOnlyChild\", \"isLoading\"]);\n return (core_1.jsx(\"span\", tslib_1.__assign({ css: tslib_1.__assign({ alignSelf: 'center', display: 'flex', flexShrink: 0, lineHeight: 0, fontSize: 0, userSelect: 'none', margin: spacing === 'none'\n ? 0\n : isOnlyChild\n ? \"0 -\" + constants_1.gridSize() / 4 + \"px\"\n : \"0 \" + constants_1.gridSize() / 2 + \"px\" }, utils_1.getLoadingStyle(isLoading)) }, rest), icon));\n});\n//# sourceMappingURL=IconWrapper.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\nvar core_1 = require(\"@emotion/core\");\nexports.default = (function (_a) {\n var fit = _a.fit, children = _a.children, rest = tslib_1.__rest(_a, [\"fit\", \"children\"]);\n return (core_1.jsx(\"span\", tslib_1.__assign({ css: tslib_1.__assign(tslib_1.__assign({ alignSelf: 'center', display: 'inline-flex', flexWrap: 'nowrap', maxWidth: '100%', position: 'relative' }, (fit && { width: '100%' })), (fit && { justifyContent: 'center' })) }, rest), children));\n});\n//# sourceMappingURL=InnerWrapper.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\n/** @jsx jsx */\nvar react_1 = tslib_1.__importDefault(require(\"react\"));\nvar core_1 = require(\"@emotion/core\");\nvar spinner_1 = tslib_1.__importDefault(require(\"@atlaskit/spinner\"));\nvar appearances = ['primary', 'danger'];\nvar LoadingSpinner = /** @class */ (function (_super) {\n tslib_1.__extends(LoadingSpinner, _super);\n function LoadingSpinner() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.invertSpinner = function () {\n var _a = _this.props, appearance = _a.appearance, isSelected = _a.isSelected, isDisabled = _a.isDisabled;\n if (isSelected) {\n return true;\n }\n if (isDisabled) {\n return false;\n }\n if (appearance !== undefined) {\n if (appearances.indexOf(appearance) !== -1) {\n return true;\n }\n }\n return false;\n };\n return _this;\n }\n LoadingSpinner.prototype.render = function () {\n var _a = this.props, spacing = _a.spacing, styles = _a.styles;\n var spinnerSize = spacing !== 'default' ? 'small' : 'medium';\n return (core_1.jsx(\"div\", { css: styles },\n core_1.jsx(spinner_1.default, { size: spinnerSize, appearance: this.invertSpinner() ? 'invert' : 'inherit' })));\n };\n return LoadingSpinner;\n}(react_1.default.Component));\nexports.default = LoadingSpinner;\n//# sourceMappingURL=LoadingSpinner.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\nvar constants_1 = require(\"@atlaskit/theme/constants\");\nvar theme_1 = require(\"../theme\");\nvar compactButtonHeight = (constants_1.gridSize() * 3) / constants_1.fontSize() + \"em\";\nvar buttonHeight = (constants_1.gridSize() * 4) / constants_1.fontSize() + \"em\";\n/** Background */\nvar getBackground = function (props) {\n return theme_1.applyPropertyStyle('background', props, theme_1.baseTheme);\n};\n/** Box Shadow */\nvar getBoxShadow = function (props) {\n var boxShadowColor = theme_1.applyPropertyStyle('boxShadowColor', props, theme_1.baseTheme);\n return \"0 0 0 2px \" + boxShadowColor;\n};\n/** Color */\nvar getColor = function (props) {\n return theme_1.applyPropertyStyle('color', props, theme_1.baseTheme);\n};\n/** Cursor */\nvar getCursor = function (_a) {\n var _b = _a.state, state = _b === void 0 ? 'default' : _b;\n return state === 'hover' || state === 'active' || state === 'selected'\n ? 'pointer'\n : state === 'disabled'\n ? 'not-allowed'\n : 'default';\n};\n/** Height */\nvar getHeight = function (_a) {\n var _b = _a.spacing, spacing = _b === void 0 ? 'default' : _b;\n return spacing === 'compact'\n ? compactButtonHeight\n : spacing === 'none'\n ? 'auto'\n : buttonHeight;\n};\n/** Line Height */\nvar getLineHeight = function (_a) {\n var _b = _a.spacing, spacing = _b === void 0 ? 'default' : _b;\n return spacing === 'compact'\n ? compactButtonHeight\n : spacing === 'none'\n ? 'inherit'\n : buttonHeight;\n};\n/** Padding */\nvar getPadding = function (_a) {\n var _b = _a.spacing, spacing = _b === void 0 ? 'default' : _b;\n return spacing === 'none' ? 0 : \"0 \" + constants_1.gridSize() + \"px\";\n};\n/** Text Decoration */\nvar getTextDecoration = function (_a) {\n var _b = _a.appearance, appearance = _b === void 0 ? 'default' : _b, _c = _a.state, state = _c === void 0 ? 'default' : _c;\n return state === 'hover' && (appearance === 'link' || appearance === 'subtle-link')\n ? 'underline'\n : 'inherit';\n};\n/** Transition */\nvar getTransition = function (_a) {\n var _b = _a.state, state = _b === void 0 ? 'default' : _b;\n return state === 'hover'\n ? 'background 0s ease-out, box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38)'\n : 'background 0.1s ease-out, box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38)';\n};\n/** Transition Duration */\nvar getTransitionDuration = function (_a) {\n var _b = _a.state, state = _b === void 0 ? 'default' : _b;\n return state === 'active' ? '0s' : state === 'focus' ? '0s, 0.2s' : '0.1s, 0.15s';\n};\n/** Vertical Align */\nvar getVerticalAlign = function (_a) {\n var _b = _a.spacing, spacing = _b === void 0 ? 'default' : _b;\n return spacing === 'none' ? 'baseline' : 'middle';\n};\n/** Width */\nvar getWidth = function (_a) {\n var shouldFitContainer = _a.shouldFitContainer;\n return shouldFitContainer ? '100%' : 'auto';\n};\n/** Base styles */\nvar staticStyles = {\n alignItems: 'baseline',\n borderWidth: 0,\n boxSizing: 'border-box',\n display: 'inline-flex',\n fontSize: 'inherit',\n fontStyle: 'normal',\n fontWeight: '500',\n maxWidth: '100%',\n outline: 'none !important',\n textAlign: 'center',\n textDecoration: 'none',\n whiteSpace: 'nowrap',\n};\n/**\n * BUTTON STYLES\n */\nexports.getButtonStyles = function (props) { return (tslib_1.__assign(tslib_1.__assign(tslib_1.__assign({}, staticStyles), { background: getBackground(props), borderRadius: constants_1.borderRadius() + \"px\", boxShadow: getBoxShadow(props), color: getColor(props) + \" !important\", cursor: getCursor(props), height: getHeight(props), lineHeight: getLineHeight(props), padding: getPadding(props), transition: getTransition(props), transitionDuration: getTransitionDuration(props), verticalAlign: getVerticalAlign(props), width: getWidth(props), '&::-moz-focus-inner': {\n border: 0,\n margin: 0,\n padding: 0,\n }, '&:hover': {\n textDecoration: getTextDecoration(props),\n } }), (props.isLoading && { pointerEvents: 'none' }))); };\n/**\n * SPINNER STYLES\n */\nexports.getSpinnerStyles = function () { return ({\n display: 'flex',\n position: 'absolute',\n left: '50%',\n top: '50%',\n transform: 'translate(-50%, -50%)',\n}); };\n//# sourceMappingURL=getStyles.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\nexports.mapAttributesToState = function (_a) {\n var _b = _a.isDisabled, isDisabled = _b === void 0 ? false : _b, _c = _a.isActive, isActive = _c === void 0 ? false : _c, _d = _a.isFocus, isFocus = _d === void 0 ? false : _d, _e = _a.isHover, isHover = _e === void 0 ? false : _e, _f = _a.isSelected, isSelected = _f === void 0 ? false : _f;\n if (isDisabled) {\n return 'disabled';\n }\n if (isSelected && isFocus) {\n return 'focusSelected';\n }\n if (isSelected) {\n return 'selected';\n }\n if (isActive) {\n return 'active';\n }\n if (isHover) {\n return 'hover';\n }\n if (isFocus) {\n return 'focus';\n }\n return 'default';\n};\nexports.filterProps = function (\n// @ts-ignore - createAnalyticsEvent is injected from WithAnalyticsEvents HOC\n_a, type) {\n var createAnalyticsEvent = _a.createAnalyticsEvent, props = tslib_1.__rest(_a, \n // @ts-ignore - createAnalyticsEvent is injected from WithAnalyticsEvents HOC\n [\"createAnalyticsEvent\"]);\n if (type === 'span') {\n var target = props.target, href = props.href, rest = tslib_1.__rest(props, [\"target\", \"href\"]);\n return rest;\n }\n return props;\n};\nexports.getLoadingStyle = function (isLoading) { return ({\n transition: 'opacity 0.3s',\n opacity: isLoading ? 0 : 1,\n}); };\nexports.composeRefs = function () {\n var refs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n refs[_i] = arguments[_i];\n }\n return function (x) {\n refs\n .filter(function (r) { return !!r; })\n .forEach(function (ref) {\n if (typeof ref === 'function') {\n ref(x);\n }\n else {\n ref.current = x;\n }\n });\n };\n};\n/**\n * Convert a hex colour code to RGBA.\n * @param {String} hex Hex colour code.\n * @param {Number} alpha Optional alpha value (defaults to 1).\n */\nfunction hex2rgba(hex, alpha) {\n if (alpha === void 0) { alpha = 1; }\n if (/^#([A-Fa-f0-9]{3}){1,2}$/.test(hex)) {\n var colorArr = hex.substring(1).split('');\n if (colorArr.length === 3) {\n colorArr = [\n colorArr[0],\n colorArr[0],\n colorArr[1],\n colorArr[1],\n colorArr[2],\n colorArr[2],\n ];\n }\n var color = \"0x\" + colorArr.join('');\n // FIXME: `>>` operand can validly take a string value\n var r = (color >> 16) & 255;\n var g = (color >> 8) & 255;\n var b = color & 255;\n return \"rgba(\" + [r, g, b].join(',') + \", \" + alpha + \")\";\n }\n throw new Error('Bad Hex');\n}\nexports.hex2rgba = hex2rgba;\n//# sourceMappingURL=utils.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\nvar colors = tslib_1.__importStar(require(\"@atlaskit/theme/colors\"));\nvar components_1 = require(\"@atlaskit/theme/components\");\nvar getStyles_1 = require(\"./components/getStyles\");\nvar utils_1 = require(\"./components/utils\");\nexports.fallbacks = {\n background: { light: colors.N20A, dark: colors.DN70 },\n color: { light: colors.N400, dark: colors.DN400 },\n textDecoration: { light: 'none', dark: 'none' },\n};\nexports.baseTheme = {\n // Default appearance\n background: {\n default: {\n default: { light: colors.N20A, dark: colors.DN70 },\n hover: { light: colors.N30A, dark: colors.DN60 },\n active: { light: utils_1.hex2rgba(colors.B75, 0.6), dark: colors.B75 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.N700, dark: colors.DN0 },\n focusSelected: { light: colors.N700, dark: colors.DN0 },\n },\n primary: {\n default: { light: colors.B400, dark: colors.B100 },\n hover: { light: colors.B300, dark: colors.B75 },\n active: { light: colors.B500, dark: colors.B200 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.N700, dark: colors.DN0 },\n focusSelected: { light: colors.N700, dark: colors.DN0 },\n },\n warning: {\n default: { light: colors.Y300, dark: colors.Y300 },\n hover: { light: colors.Y200, dark: colors.Y200 },\n active: { light: colors.Y400, dark: colors.Y400 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.Y400, dark: colors.Y400 },\n focusSelected: { light: colors.Y400, dark: colors.Y400 },\n },\n danger: {\n default: { light: colors.R400, dark: colors.R400 },\n hover: { light: colors.R300, dark: colors.R300 },\n active: { light: colors.R500, dark: colors.R500 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.R500, dark: colors.R500 },\n focusSelected: { light: colors.R500, dark: colors.R500 },\n },\n link: {\n default: { light: 'none', dark: 'none' },\n selected: { light: colors.N700, dark: colors.N20 },\n focusSelected: { light: colors.N700, dark: colors.N20 },\n },\n subtle: {\n default: { light: 'none', dark: 'none' },\n hover: { light: colors.N30A, dark: colors.DN60 },\n active: { light: utils_1.hex2rgba(colors.B75, 0.6), dark: colors.B75 },\n disabled: { light: 'none', dark: 'none' },\n selected: { light: colors.N700, dark: colors.DN0 },\n focusSelected: { light: colors.N700, dark: colors.DN0 },\n },\n 'subtle-link': {\n default: { light: 'none', dark: 'none' },\n selected: { light: colors.N700, dark: colors.N20 },\n focusSelected: { light: colors.N700, dark: colors.N20 },\n },\n },\n boxShadowColor: {\n default: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n primary: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n warning: {\n focus: { light: colors.Y500, dark: colors.Y500 },\n focusSelected: { light: colors.Y500, dark: colors.Y500 },\n },\n danger: {\n focus: { light: colors.R100, dark: colors.R100 },\n focusSelected: { light: colors.R100, dark: colors.R100 },\n },\n link: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n subtle: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n 'subtle-link': {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n },\n color: {\n default: {\n default: { light: colors.N500, dark: colors.DN400 },\n active: { light: colors.B400, dark: colors.B400 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n primary: {\n default: { light: colors.N0, dark: colors.DN30 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n warning: {\n default: { light: colors.N800, dark: colors.N800 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N800, dark: colors.N800 },\n focusSelected: { light: colors.N800, dark: colors.N800 },\n },\n danger: {\n default: { light: colors.N0, dark: colors.N0 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N0, dark: colors.N0 },\n focusSelected: { light: colors.N0, dark: colors.N0 },\n },\n link: {\n default: { light: colors.B400, dark: colors.B100 },\n hover: { light: colors.B300, dark: colors.B75 },\n active: { light: colors.B500, dark: colors.B200 },\n disabled: { light: colors.N70, dark: colors.DN100 },\n selected: { light: colors.N20, dark: colors.N700 },\n focusSelected: { light: colors.N20, dark: colors.N700 },\n },\n subtle: {\n default: { light: colors.N500, dark: colors.DN400 },\n active: { light: colors.B400, dark: colors.B400 },\n disabled: { light: colors.N70, dark: colors.DN100 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n 'subtle-link': {\n default: { light: colors.N200, dark: colors.DN400 },\n hover: { light: colors.N90, dark: colors.B50 },\n active: { light: colors.N400, dark: colors.DN300 },\n disabled: { light: colors.N70, dark: colors.DN100 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n },\n};\nfunction applyPropertyStyle(property, _a, theme) {\n var _b = _a.appearance, appearance = _b === void 0 ? 'default' : _b, _c = _a.state, state = _c === void 0 ? 'default' : _c, _d = _a.mode, mode = _d === void 0 ? 'light' : _d;\n var propertyStyles = theme[property];\n if (!propertyStyles) {\n return 'initial';\n }\n // Check for relevant fallbacks\n if (!propertyStyles[appearance]) {\n if (!propertyStyles['default']) {\n return exports.fallbacks[property][mode] ? exports.fallbacks[property][mode] : 'initial';\n }\n appearance = 'default';\n }\n // If there is no 'state' key (ie, 'hover') defined for a given appearance,\n // return the 'default' state of that appearance.\n if (!propertyStyles[appearance][state]) {\n state = 'default';\n }\n var appearanceStyles = propertyStyles[appearance];\n var stateStyles = appearanceStyles[state];\n if (!stateStyles) {\n return 'inherit';\n }\n return stateStyles[mode] || appearanceStyles.default[mode];\n}\nexports.applyPropertyStyle = applyPropertyStyle;\nexports.Theme = components_1.createTheme(function (themeProps) { return ({\n buttonStyles: getStyles_1.getButtonStyles(themeProps),\n spinnerStyles: getStyles_1.getSpinnerStyles(),\n}); });\n//# sourceMappingURL=theme.js.map","import { borderRadius, fontSize, gridSize } from '@atlaskit/theme/constants';\nimport { applyPropertyStyle, baseTheme } from '../theme';\nconst compactButtonHeight = `${(gridSize() * 3) / fontSize()}em`;\nconst buttonHeight = `${(gridSize() * 4) / fontSize()}em`;\n/** Background */\nconst getBackground = (props) => applyPropertyStyle('background', props, baseTheme);\n/** Box Shadow */\nconst getBoxShadow = (props) => {\n const boxShadowColor = applyPropertyStyle('boxShadowColor', props, baseTheme);\n return `0 0 0 2px ${boxShadowColor}`;\n};\n/** Color */\nconst getColor = (props) => applyPropertyStyle('color', props, baseTheme);\n/** Cursor */\nconst getCursor = ({ state = 'default' }) => state === 'hover' || state === 'active' || state === 'selected'\n ? 'pointer'\n : state === 'disabled'\n ? 'not-allowed'\n : 'default';\n/** Height */\nconst getHeight = ({ spacing = 'default' }) => spacing === 'compact'\n ? compactButtonHeight\n : spacing === 'none'\n ? 'auto'\n : buttonHeight;\n/** Line Height */\nconst getLineHeight = ({ spacing = 'default' }) => spacing === 'compact'\n ? compactButtonHeight\n : spacing === 'none'\n ? 'inherit'\n : buttonHeight;\n/** Padding */\nconst getPadding = ({ spacing = 'default' }) => spacing === 'none' ? 0 : `0 ${gridSize()}px`;\n/** Text Decoration */\nconst getTextDecoration = ({ appearance = 'default', state = 'default', }) => state === 'hover' && (appearance === 'link' || appearance === 'subtle-link')\n ? 'underline'\n : 'inherit';\n/** Transition */\nconst getTransition = ({ state = 'default' }) => state === 'hover'\n ? 'background 0s ease-out, box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38)'\n : 'background 0.1s ease-out, box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38)';\n/** Transition Duration */\nconst getTransitionDuration = ({ state = 'default' }) => state === 'active' ? '0s' : state === 'focus' ? '0s, 0.2s' : '0.1s, 0.15s';\n/** Vertical Align */\nconst getVerticalAlign = ({ spacing = 'default' }) => spacing === 'none' ? 'baseline' : 'middle';\n/** Width */\nconst getWidth = ({ shouldFitContainer }) => shouldFitContainer ? '100%' : 'auto';\n/** Base styles */\nconst staticStyles = {\n alignItems: 'baseline',\n borderWidth: 0,\n boxSizing: 'border-box',\n display: 'inline-flex',\n fontSize: 'inherit',\n fontStyle: 'normal',\n fontWeight: '500',\n maxWidth: '100%',\n outline: 'none !important',\n textAlign: 'center',\n textDecoration: 'none',\n whiteSpace: 'nowrap',\n};\n/**\n * BUTTON STYLES\n */\nexport const getButtonStyles = (props) => ({\n ...staticStyles,\n background: getBackground(props),\n borderRadius: `${borderRadius()}px`,\n boxShadow: getBoxShadow(props),\n color: `${getColor(props)} !important`,\n cursor: getCursor(props),\n height: getHeight(props),\n lineHeight: getLineHeight(props),\n padding: getPadding(props),\n transition: getTransition(props),\n transitionDuration: getTransitionDuration(props),\n verticalAlign: getVerticalAlign(props),\n width: getWidth(props),\n '&::-moz-focus-inner': {\n border: 0,\n margin: 0,\n padding: 0,\n },\n '&:hover': {\n textDecoration: getTextDecoration(props),\n },\n ...(props.isLoading && { pointerEvents: 'none' }),\n});\n/**\n * SPINNER STYLES\n */\nexport const getSpinnerStyles = () => ({\n display: 'flex',\n position: 'absolute',\n left: '50%',\n top: '50%',\n transform: 'translate(-50%, -50%)',\n});\n//# sourceMappingURL=getStyles.js.map","export const mapAttributesToState = ({ isDisabled = false, isActive = false, isFocus = false, isHover = false, isSelected = false, }) => {\n if (isDisabled) {\n return 'disabled';\n }\n if (isSelected && isFocus) {\n return 'focusSelected';\n }\n if (isSelected) {\n return 'selected';\n }\n if (isActive) {\n return 'active';\n }\n if (isHover) {\n return 'hover';\n }\n if (isFocus) {\n return 'focus';\n }\n return 'default';\n};\nexport const filterProps = (\n// @ts-ignore - createAnalyticsEvent is injected from WithAnalyticsEvents HOC\n{ createAnalyticsEvent, ...props }, type) => {\n if (type === 'span') {\n const { target, href, ...rest } = props;\n return rest;\n }\n return props;\n};\nexport const getLoadingStyle = (isLoading) => ({\n transition: 'opacity 0.3s',\n opacity: isLoading ? 0 : 1,\n});\nexport const composeRefs = (...refs) => {\n return (x) => {\n refs\n .filter(r => !!r)\n .forEach(ref => {\n if (typeof ref === 'function') {\n ref(x);\n }\n else {\n ref.current = x;\n }\n });\n };\n};\n/**\n * Convert a hex colour code to RGBA.\n * @param {String} hex Hex colour code.\n * @param {Number} alpha Optional alpha value (defaults to 1).\n */\nexport function hex2rgba(hex, alpha = 1) {\n if (/^#([A-Fa-f0-9]{3}){1,2}$/.test(hex)) {\n let colorArr = hex.substring(1).split('');\n if (colorArr.length === 3) {\n colorArr = [\n colorArr[0],\n colorArr[0],\n colorArr[1],\n colorArr[1],\n colorArr[2],\n colorArr[2],\n ];\n }\n const color = `0x${colorArr.join('')}`;\n // FIXME: `>>` operand can validly take a string value\n const r = (color >> 16) & 255;\n const g = (color >> 8) & 255;\n const b = color & 255;\n return `rgba(${[r, g, b].join(',')}, ${alpha})`;\n }\n throw new Error('Bad Hex');\n}\n//# sourceMappingURL=utils.js.map","import * as colors from '@atlaskit/theme/colors';\nimport { createTheme } from '@atlaskit/theme/components';\nimport { getButtonStyles, getSpinnerStyles } from './components/getStyles';\nimport { hex2rgba } from './components/utils';\nexport const fallbacks = {\n background: { light: colors.N20A, dark: colors.DN70 },\n color: { light: colors.N400, dark: colors.DN400 },\n textDecoration: { light: 'none', dark: 'none' },\n};\nexport const baseTheme = {\n // Default appearance\n background: {\n default: {\n default: { light: colors.N20A, dark: colors.DN70 },\n hover: { light: colors.N30A, dark: colors.DN60 },\n active: { light: hex2rgba(colors.B75, 0.6), dark: colors.B75 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.N700, dark: colors.DN0 },\n focusSelected: { light: colors.N700, dark: colors.DN0 },\n },\n primary: {\n default: { light: colors.B400, dark: colors.B100 },\n hover: { light: colors.B300, dark: colors.B75 },\n active: { light: colors.B500, dark: colors.B200 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.N700, dark: colors.DN0 },\n focusSelected: { light: colors.N700, dark: colors.DN0 },\n },\n warning: {\n default: { light: colors.Y300, dark: colors.Y300 },\n hover: { light: colors.Y200, dark: colors.Y200 },\n active: { light: colors.Y400, dark: colors.Y400 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.Y400, dark: colors.Y400 },\n focusSelected: { light: colors.Y400, dark: colors.Y400 },\n },\n danger: {\n default: { light: colors.R400, dark: colors.R400 },\n hover: { light: colors.R300, dark: colors.R300 },\n active: { light: colors.R500, dark: colors.R500 },\n disabled: { light: colors.N20A, dark: colors.DN70 },\n selected: { light: colors.R500, dark: colors.R500 },\n focusSelected: { light: colors.R500, dark: colors.R500 },\n },\n link: {\n default: { light: 'none', dark: 'none' },\n selected: { light: colors.N700, dark: colors.N20 },\n focusSelected: { light: colors.N700, dark: colors.N20 },\n },\n subtle: {\n default: { light: 'none', dark: 'none' },\n hover: { light: colors.N30A, dark: colors.DN60 },\n active: { light: hex2rgba(colors.B75, 0.6), dark: colors.B75 },\n disabled: { light: 'none', dark: 'none' },\n selected: { light: colors.N700, dark: colors.DN0 },\n focusSelected: { light: colors.N700, dark: colors.DN0 },\n },\n 'subtle-link': {\n default: { light: 'none', dark: 'none' },\n selected: { light: colors.N700, dark: colors.N20 },\n focusSelected: { light: colors.N700, dark: colors.N20 },\n },\n },\n boxShadowColor: {\n default: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n primary: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n warning: {\n focus: { light: colors.Y500, dark: colors.Y500 },\n focusSelected: { light: colors.Y500, dark: colors.Y500 },\n },\n danger: {\n focus: { light: colors.R100, dark: colors.R100 },\n focusSelected: { light: colors.R100, dark: colors.R100 },\n },\n link: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n subtle: {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n 'subtle-link': {\n focus: { light: colors.B100, dark: colors.B75 },\n focusSelected: {\n light: colors.B100,\n dark: colors.B75,\n },\n },\n },\n color: {\n default: {\n default: { light: colors.N500, dark: colors.DN400 },\n active: { light: colors.B400, dark: colors.B400 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n primary: {\n default: { light: colors.N0, dark: colors.DN30 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n warning: {\n default: { light: colors.N800, dark: colors.N800 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N800, dark: colors.N800 },\n focusSelected: { light: colors.N800, dark: colors.N800 },\n },\n danger: {\n default: { light: colors.N0, dark: colors.N0 },\n disabled: { light: colors.N70, dark: colors.DN30 },\n selected: { light: colors.N0, dark: colors.N0 },\n focusSelected: { light: colors.N0, dark: colors.N0 },\n },\n link: {\n default: { light: colors.B400, dark: colors.B100 },\n hover: { light: colors.B300, dark: colors.B75 },\n active: { light: colors.B500, dark: colors.B200 },\n disabled: { light: colors.N70, dark: colors.DN100 },\n selected: { light: colors.N20, dark: colors.N700 },\n focusSelected: { light: colors.N20, dark: colors.N700 },\n },\n subtle: {\n default: { light: colors.N500, dark: colors.DN400 },\n active: { light: colors.B400, dark: colors.B400 },\n disabled: { light: colors.N70, dark: colors.DN100 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n 'subtle-link': {\n default: { light: colors.N200, dark: colors.DN400 },\n hover: { light: colors.N90, dark: colors.B50 },\n active: { light: colors.N400, dark: colors.DN300 },\n disabled: { light: colors.N70, dark: colors.DN100 },\n selected: { light: colors.N20, dark: colors.DN400 },\n focusSelected: { light: colors.N20, dark: colors.DN400 },\n },\n },\n};\nexport function applyPropertyStyle(property, { appearance = 'default', state = 'default', mode = 'light', }, theme) {\n const propertyStyles = theme[property];\n if (!propertyStyles) {\n return 'initial';\n }\n // Check for relevant fallbacks\n if (!propertyStyles[appearance]) {\n if (!propertyStyles['default']) {\n return fallbacks[property][mode] ? fallbacks[property][mode] : 'initial';\n }\n appearance = 'default';\n }\n // If there is no 'state' key (ie, 'hover') defined for a given appearance,\n // return the 'default' state of that appearance.\n if (!propertyStyles[appearance][state]) {\n state = 'default';\n }\n const appearanceStyles = propertyStyles[appearance];\n const stateStyles = appearanceStyles[state];\n if (!stateStyles) {\n return 'inherit';\n }\n return stateStyles[mode] || appearanceStyles.default[mode];\n}\nexport const Theme = createTheme(themeProps => ({\n buttonStyles: getButtonStyles(themeProps),\n spinnerStyles: getSpinnerStyles(),\n}));\n//# sourceMappingURL=theme.js.map","import { jsx } from '@emotion/core';\nimport { gridSize } from '@atlaskit/theme/constants';\nimport { getLoadingStyle } from './utils';\nexport default ({ children, followsIcon, spacing, isLoading, ...rest }) => (jsx(\"span\", Object.assign({ css: {\n alignItems: followsIcon ? 'baseline' : 'center',\n alignSelf: followsIcon ? 'baseline' : 'center',\n flex: '1 1 auto',\n margin: spacing === 'none' ? 0 : `0 ${gridSize() / 2}px`,\n maxWidth: '100%',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap',\n ...getLoadingStyle(isLoading),\n } }, rest), children));\n//# sourceMappingURL=Content.js.map","/** @jsx jsx */\nimport { jsx } from '@emotion/core';\nimport { gridSize } from '@atlaskit/theme/constants';\nimport { getLoadingStyle } from './utils';\nexport default ({ spacing, icon, isOnlyChild, isLoading, ...rest }) => (jsx(\"span\", Object.assign({ css: {\n alignSelf: 'center',\n display: 'flex',\n flexShrink: 0,\n lineHeight: 0,\n fontSize: 0,\n userSelect: 'none',\n margin: spacing === 'none'\n ? 0\n : isOnlyChild\n ? `0 -${gridSize() / 4}px`\n : `0 ${gridSize() / 2}px`,\n ...getLoadingStyle(isLoading),\n } }, rest), icon));\n//# sourceMappingURL=IconWrapper.js.map","import { jsx } from '@emotion/core';\nexport default ({ fit, children, ...rest }) => (jsx(\"span\", Object.assign({ css: {\n alignSelf: 'center',\n display: 'inline-flex',\n flexWrap: 'nowrap',\n maxWidth: '100%',\n position: 'relative',\n ...(fit && { width: '100%' }),\n ...(fit && { justifyContent: 'center' }),\n } }, rest), children));\n//# sourceMappingURL=InnerWrapper.js.map","/** @jsx jsx */\nimport React from 'react';\nimport { jsx } from '@emotion/core';\nimport Spinner from '@atlaskit/spinner';\nconst appearances = ['primary', 'danger'];\nexport default class LoadingSpinner extends React.Component {\n constructor() {\n super(...arguments);\n this.invertSpinner = () => {\n const { appearance, isSelected, isDisabled } = this.props;\n if (isSelected) {\n return true;\n }\n if (isDisabled) {\n return false;\n }\n if (appearance !== undefined) {\n if (appearances.indexOf(appearance) !== -1) {\n return true;\n }\n }\n return false;\n };\n }\n render() {\n const { spacing, styles } = this.props;\n let spinnerSize = spacing !== 'default' ? 'small' : 'medium';\n return (jsx(\"div\", { css: styles },\n jsx(Spinner, { size: spinnerSize, appearance: this.invertSpinner() ? 'invert' : 'inherit' })));\n }\n}\n//# sourceMappingURL=LoadingSpinner.js.map","/** @jsx jsx */\nimport React from 'react';\nimport { jsx } from '@emotion/core';\nimport memoize from 'memoize-one';\nimport { createAndFireEvent, withAnalyticsContext, withAnalyticsEvents, } from '@atlaskit/analytics-next';\nimport GlobalTheme from '@atlaskit/theme/components';\nimport { Theme } from '../theme';\nimport { name as packageName, version as packageVersion, } from '../version.json';\nimport Content from './Content';\nimport IconWrapper from './IconWrapper';\nimport InnerWrapper from './InnerWrapper';\nimport LoadingSpinner from './LoadingSpinner';\nimport { composeRefs, filterProps, mapAttributesToState } from './utils';\nexport class Button extends React.Component {\n constructor() {\n super(...arguments);\n // ref can be a range of things because we render button, a, span or other React components\n this.button = React.createRef();\n // Makes sure we don't call ref every render.\n this.getComposedRefs = memoize(composeRefs);\n this.state = {\n isActive: false,\n isFocus: false,\n isHover: false,\n };\n this.isInteractive = () => !this.props.isDisabled && !this.props.isLoading;\n this.onMouseEnter = (e) => {\n this.setState({ isHover: true });\n if (this.props.onMouseEnter) {\n this.props.onMouseEnter(e);\n }\n };\n this.onMouseLeave = (e) => {\n this.setState({ isHover: false, isActive: false });\n if (this.props.onMouseLeave) {\n this.props.onMouseLeave(e);\n }\n };\n this.onMouseDown = (e) => {\n e.preventDefault();\n this.setState({ isActive: true });\n if (this.props.onMouseDown) {\n this.props.onMouseDown(e);\n }\n };\n this.onMouseUp = (e) => {\n this.setState({ isActive: false });\n if (this.props.onMouseUp) {\n this.props.onMouseUp(e);\n }\n };\n this.onFocus = event => {\n this.setState({ isFocus: true });\n if (this.props.onFocus) {\n this.props.onFocus(event);\n }\n };\n this.onBlur = event => {\n this.setState({ isFocus: false });\n if (this.props.onBlur) {\n this.props.onBlur(event);\n }\n };\n this.getElement = () => {\n const { href, isDisabled } = this.props;\n if (href) {\n return isDisabled ? 'span' : 'a';\n }\n return 'button';\n };\n // Swallow click events when the button is disabled\n // to prevent inner child clicks bubbling up.\n this.onInnerClick = e => {\n if (!this.isInteractive()) {\n e.stopPropagation();\n }\n return true;\n };\n }\n componentDidMount() {\n if (this.props.autoFocus && this.button instanceof HTMLButtonElement) {\n this.button.focus();\n }\n }\n render() {\n const { appearance = 'default', children, className, component: CustomComponent, consumerRef, iconAfter, iconBefore, isDisabled = false, isLoading = false, isSelected = false, shouldFitContainer = false, spacing = 'default', theme = (current, props) => current(props), testId, ...rest } = this.props;\n const attributes = { ...this.state, isSelected, isDisabled };\n const StyledButton = CustomComponent || this.getElement();\n const iconIsOnlyChild = !!((iconBefore && !iconAfter && !children) ||\n (iconAfter && !iconBefore && !children));\n const specifiers = (styles) => {\n if (StyledButton === 'a') {\n return {\n 'a&': styles,\n };\n }\n else if (StyledButton === CustomComponent) {\n return {\n '&, a&, &:hover, &:active, &:focus': styles,\n };\n }\n return styles;\n };\n return (jsx(Theme.Provider, { value: theme },\n jsx(GlobalTheme.Consumer, null, ({ mode }) => (jsx(Theme.Consumer, Object.assign({ mode: mode, state: mapAttributesToState(attributes), iconIsOnlyChild: iconIsOnlyChild }, this.props), ({ buttonStyles, spinnerStyles }) => (jsx(StyledButton, Object.assign({}, filterProps(rest, StyledButton), { \"data-testid\": testId, ref: this.getComposedRefs(this.button, consumerRef), onMouseEnter: this.onMouseEnter, onMouseLeave: this.onMouseLeave, onMouseDown: this.onMouseDown, onMouseUp: this.onMouseUp, onFocus: this.onFocus, onBlur: this.onBlur, disabled: isDisabled, className: className, css: specifiers(buttonStyles) }),\n jsx(InnerWrapper, { onClick: this.onInnerClick, fit: !!shouldFitContainer },\n isLoading && (jsx(LoadingSpinner, { spacing: spacing, appearance: appearance, isSelected: isSelected, isDisabled: isDisabled, styles: spinnerStyles })),\n iconBefore && (jsx(IconWrapper, { isLoading: isLoading, spacing: spacing, isOnlyChild: iconIsOnlyChild, icon: iconBefore })),\n children && (jsx(Content, { isLoading: isLoading, followsIcon: !!iconBefore, spacing: spacing }, children)),\n iconAfter && (jsx(IconWrapper, { isLoading: isLoading, spacing: spacing, isOnlyChild: iconIsOnlyChild, icon: iconAfter }))))))))));\n }\n}\nButton.defaultProps = {\n appearance: 'default',\n autoFocus: false,\n isDisabled: false,\n isLoading: false,\n isSelected: false,\n shouldFitContainer: false,\n spacing: 'default',\n type: 'button',\n};\nconst createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');\nconst ButtonWithRef = React.forwardRef((props, ref) => jsx(Button, Object.assign({}, props, { consumerRef: ref })));\nButtonWithRef.displayName = 'Button';\nexport default withAnalyticsContext({\n componentName: 'button',\n packageName,\n packageVersion,\n})(withAnalyticsEvents({\n onClick: createAndFireEventOnAtlaskit({\n action: 'clicked',\n actionSubject: 'button',\n attributes: {\n componentName: 'button',\n packageName,\n packageVersion,\n },\n }),\n})(ButtonWithRef));\n//# sourceMappingURL=Button.js.map","import { __extends, __read, __spread } from \"tslib\";\nimport React, { Children, Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { AnalyticsReactContext } from './AnalyticsReactContext';\nvar ContextTypes = {\n getAtlaskitAnalyticsContext: PropTypes.func,\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n};\nvar AnalyticsContext = /** @class */ (function (_super) {\n __extends(AnalyticsContext, _super);\n function AnalyticsContext(props) {\n var _this = _super.call(this, props) || this;\n _this.getChildContext = function () { return ({\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n }); };\n _this.getAnalyticsContext = function () {\n var data = _this.props.data;\n var getAtlaskitAnalyticsContext = _this.context.getAtlaskitAnalyticsContext;\n var ancestorData = (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [];\n return __spread(ancestorData, [data]);\n };\n _this.getAnalyticsEventHandlers = function () {\n var getAtlaskitAnalyticsEventHandlers = _this.context.getAtlaskitAnalyticsEventHandlers;\n var ancestorHandlers = (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [];\n return ancestorHandlers;\n };\n _this.state = {\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n getAtlaskitAnalyticsEventHandlers: _this.getAnalyticsEventHandlers,\n };\n return _this;\n }\n AnalyticsContext.prototype.render = function () {\n var children = this.props.children;\n return (React.createElement(AnalyticsReactContext.Provider, { value: this.state }, Children.only(children)));\n };\n AnalyticsContext.contextTypes = ContextTypes;\n AnalyticsContext.childContextTypes = ContextTypes;\n return AnalyticsContext;\n}(Component));\nexport default AnalyticsContext;\n//# sourceMappingURL=AnalyticsContext.js.map","import { __assign } from \"tslib\";\nvar AnalyticsEvent = /** @class */ (function () {\n function AnalyticsEvent(props) {\n var _this = this;\n this.clone = function () {\n // We stringify and parse here to get a hacky \"deep clone\" of the object.\n // This has some limitations in that it wont support functions, regexs, Maps, Sets, etc,\n // but none of those need to be represented in our payload, so we consider this fine\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new AnalyticsEvent({ payload: payload });\n };\n this.payload = props.payload;\n }\n AnalyticsEvent.prototype.update = function (updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = __assign(__assign({}, this.payload), updater);\n }\n return this;\n };\n return AnalyticsEvent;\n}());\nexport default AnalyticsEvent;\n//# sourceMappingURL=AnalyticsEvent.js.map","import { __extends, __read, __spread } from \"tslib\";\nimport AnalyticsEvent from './AnalyticsEvent';\nvar UIAnalyticsEvent = /** @class */ (function (_super) {\n __extends(UIAnalyticsEvent, _super);\n function UIAnalyticsEvent(props) {\n var _this = _super.call(this, props) || this;\n _this.clone = function () {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n return null;\n }\n var context = __spread(_this.context);\n var handlers = __spread(_this.handlers);\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new UIAnalyticsEvent({ context: context, handlers: handlers, payload: payload });\n };\n _this.fire = function (channel) {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n return;\n }\n _this.handlers.forEach(function (handler) { return handler(_this, channel); });\n _this.hasFired = true;\n };\n _this.context = props.context || [];\n _this.handlers = props.handlers || [];\n _this.hasFired = false;\n return _this;\n }\n UIAnalyticsEvent.prototype.update = function (updater) {\n if (this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n return this;\n }\n return _super.prototype.update.call(this, updater);\n };\n return UIAnalyticsEvent;\n}(AnalyticsEvent));\nexport default UIAnalyticsEvent;\n//# sourceMappingURL=UIAnalyticsEvent.js.map","export default (function (channel) { return function (payload) { return function (createAnalyticsEvent) {\n var consumerEvent = createAnalyticsEvent(payload);\n var clonedEvent = consumerEvent.clone();\n if (clonedEvent) {\n clonedEvent.fire(channel);\n }\n return consumerEvent;\n}; }; });\n//# sourceMappingURL=createAndFireEvent.js.map","import { __extends, __read, __spread } from \"tslib\";\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { AnalyticsReactContext } from './AnalyticsReactContext';\nvar ContextTypes = {\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n};\nvar noop = function () { return []; };\nvar AnalyticsListener = /** @class */ (function (_super) {\n __extends(AnalyticsListener, _super);\n function AnalyticsListener() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.getChildContext = function () { return ({\n getAtlaskitAnalyticsEventHandlers: _this.getAnalyticsEventHandlers,\n }); };\n _this.getAnalyticsEventHandlers = function () {\n var _a = _this.props, channel = _a.channel, onEvent = _a.onEvent;\n var getAtlaskitAnalyticsEventHandlers = _this.context.getAtlaskitAnalyticsEventHandlers;\n var parentEventHandlers = (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [];\n var handler = function (event, eventChannel) {\n if (channel === '*' || channel === eventChannel) {\n onEvent(event, eventChannel);\n }\n };\n return __spread([handler], parentEventHandlers);\n };\n return _this;\n }\n AnalyticsListener.prototype.render = function () {\n var _a = this.context.getAtlaskitAnalyticsContext, getAtlaskitAnalyticsContext = _a === void 0 ? noop : _a;\n var children = this.props.children;\n return (React.createElement(AnalyticsReactContext.Provider, { value: {\n getAtlaskitAnalyticsEventHandlers: this.getAnalyticsEventHandlers,\n getAtlaskitAnalyticsContext: getAtlaskitAnalyticsContext,\n } }, children));\n };\n AnalyticsListener.contextTypes = ContextTypes;\n AnalyticsListener.childContextTypes = ContextTypes;\n return AnalyticsListener;\n}(Component));\nexport default AnalyticsListener;\n//# sourceMappingURL=AnalyticsListener.js.map","import { __assign, __extends } from \"tslib\";\nimport React, { Component } from 'react';\nimport withAnalyticsEvents from './withAnalyticsEvents';\nimport AnalyticsContext from './AnalyticsContext';\nvar BaseAnalyticsErrorBoundary = /** @class */ (function (_super) {\n __extends(BaseAnalyticsErrorBoundary, _super);\n function BaseAnalyticsErrorBoundary() {\n var _this = _super !== null && _super.apply(this, arguments) || this;\n _this.fireAnalytics = function (analyticsErrorPayload) {\n var _a = _this.props, createAnalyticsEvent = _a.createAnalyticsEvent, channel = _a.channel, data = _a.data;\n createAnalyticsEvent({\n action: 'UnhandledError',\n eventType: 'ui',\n attributes: __assign(__assign({ browserInfo: window && window.navigator && window.navigator.userAgent\n ? window.navigator.userAgent\n : 'unknown' }, data), analyticsErrorPayload),\n }).fire(channel);\n };\n return _this;\n }\n BaseAnalyticsErrorBoundary.prototype.componentDidCatch = function (error, info) {\n var payload = {\n error: error,\n info: info,\n };\n this.fireAnalytics(payload);\n };\n BaseAnalyticsErrorBoundary.prototype.render = function () {\n var _a = this.props, data = _a.data, children = _a.children;\n return React.createElement(AnalyticsContext, { data: data }, children);\n };\n return BaseAnalyticsErrorBoundary;\n}(Component));\nexport { BaseAnalyticsErrorBoundary };\nvar AnalyticsErrorBoundary = withAnalyticsEvents()(BaseAnalyticsErrorBoundary);\nexport default AnalyticsErrorBoundary;\n//# sourceMappingURL=AnalyticsErrorBoundary.js.map","import { useContext, useRef } from 'react';\nimport { useCallbackOne } from 'use-memo-one';\nimport { AnalyticsReactContext, } from './AnalyticsReactContext';\nimport UIAnalyticsEvent from './UIAnalyticsEvent';\nvar noop = function () { return []; };\nexport function useAnalyticsEvents() {\n var analyticsContext = useContext(AnalyticsReactContext);\n var contextRef = useRef(analyticsContext);\n contextRef.current.getAtlaskitAnalyticsEventHandlers =\n analyticsContext.getAtlaskitAnalyticsEventHandlers;\n contextRef.current.getAtlaskitAnalyticsContext =\n analyticsContext.getAtlaskitAnalyticsContext;\n var createAnalyticsEvent = useCallbackOne(function (payload) {\n var getAtlaskitAnalyticsContext = contextRef.current.getAtlaskitAnalyticsContext || noop;\n var getAtlaskitAnalyticsEventHandlers = contextRef.current.getAtlaskitAnalyticsEventHandlers || noop;\n return new UIAnalyticsEvent({\n context: getAtlaskitAnalyticsContext(),\n handlers: getAtlaskitAnalyticsEventHandlers(),\n payload: payload,\n });\n }, []);\n return {\n createAnalyticsEvent: createAnalyticsEvent,\n };\n}\n//# sourceMappingURL=useAnalyticsEvents.js.map","import { __read, __spread } from \"tslib\";\nimport { useCallback, useRef, useEffect } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nexport var useCallbackWithAnalytics = function (method, payload, channel) {\n var createAnalyticsEvent = useAnalyticsEvents().createAnalyticsEvent;\n // given input might be new function/object each render\n // we optimise and store in refs so we can memoize the callback\n // and at the same time avoid stale values\n var methodRef = useRef(method);\n var payloadRef = useRef(payload);\n useEffect(function () {\n methodRef.current = method;\n payloadRef.current = payload;\n }, [method, payload]);\n return useCallback(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var pload = typeof payloadRef.current === 'function'\n ? payloadRef.current.apply(payloadRef, __spread(args)) : payloadRef.current;\n createAnalyticsEvent(pload).fire(channel);\n methodRef.current.apply(methodRef, __spread(args));\n }, [createAnalyticsEvent, methodRef, payloadRef, channel]);\n};\n//# sourceMappingURL=useCallbackWithAnalytics.js.map","import { __rest } from \"tslib\";\nexport default function cleanProps(props) {\n var createAnalyticsEvent = props.createAnalyticsEvent, cleanedProps = __rest(props, [\"createAnalyticsEvent\"]);\n return cleanedProps;\n}\n//# sourceMappingURL=cleanProps.js.map","import { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContext from './AnalyticsContext';\nvar withAnalyticsContext = function (defaultData) { return function (WrappedComponent) {\n var WithAnalyticsContext = React.forwardRef(function (props, ref) {\n var _a = props.analyticsContext, analyticsContext = _a === void 0 ? {} : _a, rest = __rest(props, [\"analyticsContext\"]);\n var analyticsData = __assign(__assign({}, defaultData), analyticsContext);\n return (React.createElement(AnalyticsContext, { data: analyticsData },\n React.createElement(WrappedComponent, __assign({}, rest, { ref: ref }))));\n });\n // @ts-ignore\n WithAnalyticsContext.displayName = \"WithAnalyticsContext(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsContext;\n}; };\nexport default withAnalyticsContext;\n//# sourceMappingURL=withAnalyticsContext.js.map","import { __assign, __extends, __read, __spread } from \"tslib\";\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport UIAnalyticsEvent from './UIAnalyticsEvent';\n/**\n * This component is used to grab the analytics functions off context.\n * It uses legacy context, but provides an API similar to 16.3 context.\n * This makes it easier to use with the forward ref API.\n */\nvar AnalyticsContextConsumer = /** @class */ (function (_super) {\n __extends(AnalyticsContextConsumer, _super);\n function AnalyticsContextConsumer(props) {\n var _this = _super.call(this, props) || this;\n /**\n * Store references to the original and patched event props so we can\n * determine when to update the patched props\n */\n _this.originalEventProps = {};\n _this.patchedEventProps = {};\n // Update patched event props only if the original props have changed\n _this.updatePatchedEventProps = function (props) {\n var changedPropCallbacks = Object.keys(_this.props.createEventMap).filter(function (p) { return _this.originalEventProps[p] !== props[p]; });\n if (changedPropCallbacks.length > 0) {\n _this.patchedEventProps = __assign(__assign({}, _this.patchedEventProps), _this.mapCreateEventsToProps(changedPropCallbacks, props));\n changedPropCallbacks.forEach(function (p) {\n _this.originalEventProps[p] = props[p];\n });\n }\n return _this.patchedEventProps;\n };\n _this.mapCreateEventsToProps = function (changedPropNames, props) {\n return changedPropNames.reduce(function (modified, propCallbackName) {\n var _a;\n var eventCreator = _this.props.createEventMap[propCallbackName];\n var providedCallback = props[propCallbackName];\n if (!['object', 'function'].includes(typeof eventCreator)) {\n return modified;\n }\n var modifiedCallback = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var analyticsEvent = typeof eventCreator === 'function'\n ? eventCreator(_this.createAnalyticsEvent, props)\n : _this.createAnalyticsEvent(eventCreator);\n if (providedCallback) {\n providedCallback.apply(void 0, __spread(args, [analyticsEvent]));\n }\n };\n return __assign(__assign({}, modified), (_a = {}, _a[propCallbackName] = modifiedCallback, _a));\n }, {});\n };\n _this.createAnalyticsEvent = function (payload) {\n var _a = _this.context, getAtlaskitAnalyticsEventHandlers = _a.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext = _a.getAtlaskitAnalyticsContext;\n return new UIAnalyticsEvent({\n context: (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [],\n handlers: (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [],\n payload: payload,\n });\n };\n Object.keys(_this.props.createEventMap).forEach(function (p) {\n _this.originalEventProps[p] = props.wrappedComponentProps[p];\n });\n _this.patchedEventProps = _this.mapCreateEventsToProps(Object.keys(_this.props.createEventMap), props.wrappedComponentProps);\n return _this;\n }\n AnalyticsContextConsumer.prototype.render = function () {\n var patchedEventProps = this.updatePatchedEventProps(this.props.wrappedComponentProps);\n return this.props.children({\n createAnalyticsEvent: this.createAnalyticsEvent,\n patchedEventProps: patchedEventProps,\n });\n };\n AnalyticsContextConsumer.contextTypes = {\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n getAtlaskitAnalyticsContext: PropTypes.func,\n };\n AnalyticsContextConsumer.defaultProps = {\n createEventMap: {},\n };\n return AnalyticsContextConsumer;\n}(React.Component));\nexport default AnalyticsContextConsumer;\n//# sourceMappingURL=AnalyticsContextConsumer.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContextConsumer from './AnalyticsContextConsumer';\nvar withAnalyticsEvents = function (createEventMap) { return function (WrappedComponent) {\n var WithAnalyticsEvents = React.forwardRef(function (props, ref) { return (React.createElement(AnalyticsContextConsumer, { createEventMap: createEventMap, wrappedComponentProps: props }, function (_a) {\n var createAnalyticsEvent = _a.createAnalyticsEvent, patchedEventProps = _a.patchedEventProps;\n return (React.createElement(WrappedComponent, __assign({}, props, patchedEventProps, { createAnalyticsEvent: createAnalyticsEvent, ref: ref })));\n })); });\n // @ts-ignore\n WithAnalyticsEvents.displayName = \"WithAnalyticsEvents(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsEvents;\n}; };\nexport default withAnalyticsEvents;\n//# sourceMappingURL=withAnalyticsEvents.js.map","export const presetSizes = {\n xsmall: 8,\n small: 16,\n medium: 24,\n large: 48,\n xlarge: 96,\n};\n//# sourceMappingURL=constants.js.map","/** @jsx jsx */\nimport React from 'react';\nimport { css, jsx, keyframes } from '@emotion/core';\nimport { DN500, DN900, N0, N500 } from '@atlaskit/theme/colors';\nimport GlobalTheme from '@atlaskit/theme/components';\nimport { presetSizes } from './constants';\nconst rotate = keyframes `\n to { transform: rotate(360deg); }\n`;\n// There are three parts to the load in animation:\n// 1. Fade in\n// 2. Accelerated spin\n// 3. Stretch the spinner line\nconst loadIn = keyframes `\n from {\n transform: rotate(50deg);\n opacity: 0;\n stroke-dashoffset: 60;\n }\n to {\n transform: rotate(230deg);\n opacity: 1;\n stroke-dashoffset: 50;\n }\n`;\nfunction getStrokeColor({ mode, appearance, }) {\n if (mode === 'light') {\n return appearance === 'inherit' ? N500 : N0;\n }\n // Dark mode: colours provided by Jake Miller\n return appearance === 'inherit' ? DN900 : DN500;\n}\nexport default React.memo(React.forwardRef(function Spinner({ testId, appearance = 'inherit', delay = 0, size: providedSize = 'medium', }, ref) {\n const size = typeof providedSize === 'number'\n ? providedSize\n : presetSizes[providedSize];\n return (jsx(GlobalTheme.Consumer, null, (tokens) => {\n const strokeColor = getStrokeColor({\n mode: tokens.mode,\n appearance,\n });\n // The Spinner animation uses a combination of two\n // css animations on two separate elements.\n return (jsx(\"svg\", { focusable: \"false\", height: size, width: size, viewBox: \"0 0 16 16\", xmlns: \"http://www.w3.org/2000/svg\", \"data-testid\": testId, ref: ref, css: css `\n /* align better inline with text */\n vertical-align: middle;\n /* We are going to animate this in */\n opacity: 0;\n\n animation: ${loadIn} 1s ease-in-out;\n /* When the animation completes, stay at the last frame of the animation */\n animation-fill-mode: forwards;\n animation-delay: ${delay}ms;\n ` },\n jsx(\"circle\", { cx: \"8\", cy: \"8\", r: \"7\", css: css `\n fill: none;\n stroke: ${strokeColor};\n stroke-width: 1.5;\n stroke-linecap: round;\n stroke-dasharray: 60;\n stroke-dashoffset: inherit;\n transform-origin: center;\n animation: ${rotate} 0.86s infinite;\n animation-delay: ${delay}ms;\n animation-timing-function: cubic-bezier(0.4, 0.15, 0.6, 0.85);\n ` })));\n }));\n}));\n//# sourceMappingURL=spinner.js.map","import themed from './utils/themed';\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n// Themed colors\nexport const background = themed({ light: N0, dark: DN30 });\nexport const backgroundActive = themed({ light: B50, dark: B75 });\nexport const backgroundHover = themed({ light: N30, dark: DN70 });\nexport const backgroundOnLayer = themed({ light: N0, dark: DN50 });\nexport const text = themed({ light: N900, dark: DN600 });\nexport const textHover = themed({ light: N800, dark: DN600 });\nexport const textActive = themed({ light: B400, dark: B400 });\nexport const subtleText = themed({ light: N200, dark: DN300 });\nexport const placeholderText = themed({ light: N100, dark: DN200 });\nexport const heading = themed({ light: N800, dark: DN600 });\nexport const subtleHeading = themed({ light: N200, dark: DN300 });\nexport const codeBlock = themed({ light: N20, dark: DN50 });\nexport const link = themed({ light: B400, dark: B100 });\nexport const linkHover = themed({ light: B300, dark: B200 });\nexport const linkActive = themed({ light: B500, dark: B100 });\nexport const linkOutline = themed({ light: B100, dark: B200 });\nexport const primary = themed({ light: B400, dark: B100 });\nexport const blue = themed({ light: B400, dark: B100 });\nexport const teal = themed({ light: T300, dark: T200 });\nexport const purple = themed({ light: P300, dark: P100 });\nexport const red = themed({ light: R300, dark: R300 });\nexport const yellow = themed({ light: Y300, dark: Y300 });\nexport const green = themed({ light: G300, dark: G300 });\nexport const skeleton = () => N20A;\n//# sourceMappingURL=colors.js.map","import React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport styled, { ThemeProvider } from 'styled-components';\nimport exenv from 'exenv';\nimport * as colors from '../colors';\nimport { CHANNEL, DEFAULT_THEME_MODE } from '../constants';\n// For forward-compat until everything is upgraded.\nimport Theme from './Theme';\nfunction getStylesheetResetCSS(state) {\n const backgroundColor = colors.background(state);\n return `\n body { background: ${backgroundColor}; }\n `;\n}\nfunction buildThemeState(mode) {\n return { theme: { [CHANNEL]: { mode } } };\n}\nconst LegacyReset = styled.div `\n background-color: ${colors.background};\n color: ${colors.text};\n\n a {\n color: ${colors.link};\n }\n a:hover {\n color: ${colors.linkHover};\n }\n a:active {\n color: ${colors.linkActive};\n }\n a:focus {\n outline-color: ${colors.linkOutline};\n }\n h1 {\n color: ${colors.heading};\n }\n h2 {\n color: ${colors.heading};\n }\n h3 {\n color: ${colors.heading};\n }\n h4 {\n color: ${colors.heading};\n }\n h5 {\n color: ${colors.heading};\n }\n h6 {\n color: ${colors.subtleHeading};\n }\n small {\n color: ${colors.subtleText};\n }\n`;\nexport default class AtlaskitThemeProvider extends Component {\n constructor(props) {\n super(props);\n /**\n * This function never changes its reference because it accesses\n * `this` in the function call - thereby sidestepping the need for\n * creating a new reference everytime theme state changes.\n * NOTE: When moving to hooks watch out for this regressing.\n */\n this.getThemeMode = () => ({ mode: this.state.theme[CHANNEL].mode });\n this.state = buildThemeState(props.mode);\n }\n getChildContext() {\n return { hasAtlaskitThemeProvider: true };\n }\n UNSAFE_componentWillMount() {\n if (!this.context.hasAtlaskitThemeProvider && exenv.canUseDOM) {\n const css = getStylesheetResetCSS(this.state);\n this.stylesheet = document.createElement('style');\n this.stylesheet.type = 'text/css';\n this.stylesheet.innerHTML = css;\n if (document && document.head) {\n document.head.appendChild(this.stylesheet);\n }\n }\n }\n UNSAFE_componentWillReceiveProps(newProps) {\n if (newProps.mode !== this.props.mode) {\n const newThemeState = buildThemeState(newProps.mode);\n if (this.stylesheet) {\n const css = getStylesheetResetCSS(newThemeState);\n this.stylesheet.innerHTML = css;\n }\n this.setState(newThemeState);\n }\n }\n componentWillUnmount() {\n if (this.stylesheet && document && document.head) {\n document.head.removeChild(this.stylesheet);\n delete this.stylesheet;\n }\n }\n render() {\n const { children } = this.props;\n const { theme } = this.state;\n return (\n /* Wrapping the new provider around the old one provides forward\n compatibility when using the old provider for styled components. This\n allows us to use components converted to use the new API with consumers\n using the old provider along side components that may still be using the\n old theming API. */\n React.createElement(Theme.Provider, { value: this.getThemeMode },\n React.createElement(ThemeProvider, { theme: theme },\n React.createElement(LegacyReset, null, children))));\n }\n}\nAtlaskitThemeProvider.defaultProps = {\n mode: DEFAULT_THEME_MODE,\n};\nAtlaskitThemeProvider.childContextTypes = {\n hasAtlaskitThemeProvider: PropTypes.bool,\n};\nAtlaskitThemeProvider.contextTypes = {\n hasAtlaskitThemeProvider: PropTypes.bool,\n};\n//# sourceMappingURL=AtlaskitThemeProvider.js.map","export default ({ children, props, theme }) => {\n const appearance = typeof props === 'object' ? 'default' : props;\n const merged = typeof props === 'object' ? { ...props } : {};\n Object.keys(theme).forEach(key => {\n if (!(key in merged)) {\n merged[key] = theme[key]({ appearance });\n }\n });\n return children(merged);\n};\n//# sourceMappingURL=Appearance.js.map","import React from 'react';\nimport styled, { css } from 'styled-components';\nimport * as colors from '../colors';\nimport { createTheme } from '../utils/createTheme';\nconst orTextColor = (preferred) => (p) => p[preferred] || p.textColor;\nconst Div = styled.div `\n ${(p) => css `\n background-color: ${p.backgroundColor};\n color: ${p.textColor};\n\n a {\n color: ${orTextColor('linkColor')};\n }\n a:hover {\n color: ${orTextColor('linkColorHover')};\n }\n a:active {\n color: ${orTextColor('linkColorActive')};\n }\n a:focus {\n outline-color: ${orTextColor('linkColorOutline')};\n }\n h1,\n h2,\n h3,\n h4,\n h5 {\n color: ${orTextColor('headingColor')};\n }\n h6 {\n color: ${orTextColor('subtleHeadingColor')};\n }\n small {\n color: ${orTextColor('subtleTextColor')};\n }\n `};\n`;\nexport const ResetTheme = createTheme(() => ({\n backgroundColor: colors.N0,\n linkColor: colors.B400,\n linkColorHover: colors.B300,\n linkColorActive: colors.B500,\n linkColorOutline: colors.B100,\n headingColor: colors.N800,\n subtleHeadingColor: colors.N200,\n subtleTextColor: colors.N200,\n textColor: colors.N900,\n}));\nexport function Reset(props) {\n return (React.createElement(ResetTheme.Provider, { value: props.theme },\n React.createElement(ResetTheme.Consumer, null, (tokens) => {\n return (React.createElement(Div, Object.assign({}, { ...tokens, mode: undefined }, props), props.children));\n })));\n}\n//# sourceMappingURL=Reset.js.map","import React from 'react';\nimport Theme from './components/Theme';\n// Pre-executes the (global) theme and passes it as a prop to the supplied component.\n// This is useful for ensuring that the current theme is accessible as props\n// in styled-components.\nexport function withTheme(InnerComponent) {\n return function ComponentWithTheme(props) {\n return (React.createElement(Theme.Consumer, null, (tokens) => (React.createElement(InnerComponent, Object.assign({}, props, { theme: tokens })))));\n };\n}\n//# sourceMappingURL=hoc.js.map","import { createTheme } from '../utils/createTheme';\n// Create default global light theme\nexport default createTheme(() => ({\n mode: 'light',\n}));\n//# sourceMappingURL=Theme.js.map","import { css } from 'styled-components';\nimport { B100, N30A, skeleton as skeletonColor } from './colors';\nexport const FLATTENED = '__FLATTENED__';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\nexport const borderRadius = () => 3;\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\nexport const focusRing = (color = B100, outlineWidth = gridSize() / 4) => `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n dialog: () => 300,\n navigation: () => 200,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 800,\n};\nexport const visuallyHidden = () => ({\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important',\n});\n/**\n * Deprecated Styled Components mixin.\n * Use visuallyHidden instead.\n * @deprecated\n */\nexport const assistive = () => css `\n border: 0 !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n height: 1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n width: 1px !important;\n white-space: nowrap !important;\n`;\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: skeletonColor(),\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate',\n },\n keyframes: {\n from: {\n backgroundColor: skeletonColor(),\n },\n to: {\n backgroundColor: N30A,\n },\n },\n});\n//# sourceMappingURL=constants.js.map","import React, { createContext, useContext, useCallback, } from 'react';\n/*\ncreateTheme is used to create a set of Providers and Consumers for theming components.\n- Takes a default theme function; this theme function gets a set of props, and returns tokens\n based on those props. An example of this default theme function is one that produces the standard\n appearance of the component\n- Returns two things - a Provider that allow for additional themes to be applied, and a Consumer\n that can get the current theme and fetch it.\n*/\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n /* Internally, Theme uses React Context, with internal providers and consumers.\n The React Context passes only a function that gets props, and turns them into tokens. This\n function gets mixed as more Providers with their own themes are added. This mixed function\n is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n the theme. */\n const ThemeContext = createContext(defaultGetTokens);\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const { children, ...themeProps } = props;\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = themeFn(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return React.createElement(React.Fragment, null, children(tokens));\n }\n /* The Theme Provider takes regular nodes as its child, but also takes a *theme function*\n - The theme function takes a set of props, as well as a function (getTokens) that can\n turn props into tokens.\n - The getTokens function isn't called immediately - instead the props are passed\n through a mix of parent theming functions\n Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback((themeProps) => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return (React.createElement(ThemeContext.Provider, { value: mixedFn }, props.children));\n }\n return { Consumer, Provider };\n}\n//# sourceMappingURL=createTheme.js.map","// ideally this would be fetched from ../constants but that causes a\n// circular dep loop. This will be refactored as part of a breaking\n// change in the future.\nconst DEFAULT_THEME_MODE = 'light';\nconst THEME_MODES = ['light', 'dark'];\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if ('__ATLASKIT_THEME__' in props.theme) {\n return props.theme.__ATLASKIT_THEME__;\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return { mode: DEFAULT_THEME_MODE };\n}\n//# sourceMappingURL=getTheme.js.map","/* eslint-disable prefer-rest-params */\nimport getTheme from './getTheme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return (props) => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value)\n return value; // TS believes value can be undefined\n }\n }\n return '';\n };\n}\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return (props) => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value)\n return value;\n }\n return '';\n };\n}\n//# sourceMappingURL=themed.js.map","var safeIsNaN = Number.isNaN ||\n function ponyfill(value) {\n return typeof value === 'number' && value !== value;\n };\nfunction isEqual(first, second) {\n if (first === second) {\n return true;\n }\n if (safeIsNaN(first) && safeIsNaN(second)) {\n return true;\n }\n return false;\n}\nfunction areInputsEqual(newInputs, lastInputs) {\n if (newInputs.length !== lastInputs.length) {\n return false;\n }\n for (var i = 0; i < newInputs.length; i++) {\n if (!isEqual(newInputs[i], lastInputs[i])) {\n return false;\n }\n }\n return true;\n}\n\nfunction memoizeOne(resultFn, isEqual) {\n if (isEqual === void 0) { isEqual = areInputsEqual; }\n var lastThis;\n var lastArgs = [];\n var lastResult;\n var calledOnce = false;\n function memoized() {\n var newArgs = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n newArgs[_i] = arguments[_i];\n }\n if (calledOnce && lastThis === this && isEqual(newArgs, lastArgs)) {\n return lastResult;\n }\n lastResult = resultFn.apply(this, newArgs);\n calledOnce = true;\n lastThis = this;\n lastArgs = newArgs;\n return lastResult;\n }\n return memoized;\n}\n\nexport default memoizeOne;\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","var isBrowser = \"object\" !== 'undefined';\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false ) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = {\n ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n this.payload = props.payload;\n }\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = {\n ...this.payload,\n ...updater\n };\n }\n return this;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n return null;\n }\n const context = [...this.context];\n const handlers = [...this.handlers];\n\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n return;\n }\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n return this;\n }\n return super.update(updater);\n }\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n ref.current = value;\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafEventHandler({\n fn,\n action,\n componentName,\n actionSubject,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n\n // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(value => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: actionSubject || componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n });\n\n // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context);\n\n // fire an event on the atlaskit channel\n const clone = analyticsEvent.clone();\n if (clone) {\n clone.fire('atlaskit');\n }\n fnRef.current(value, analyticsEvent);\n }, [\n // These are strings and won't change\n action, componentName, actionSubject, packageName, packageVersion,\n // This function is memoized in the context\n createAnalyticsEvent,\n // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","var _ref, _process, _process$env, _process2, _process2$env;\n// We can't rely on NODE_ENV === 'test' if its value is already configured by the consumer to some other value, so better to use JEST_WORKER_ID\n// https://jestjs.io/docs/environment-variables#jest_worker_id\nconst TESTS_MODE = (_ref = (globalThis === null || globalThis === void 0 ? void 0 : (_process = globalThis.process) === null || _process === void 0 ? void 0 : (_process$env = _process.env) === null || _process$env === void 0 ? void 0 : _process$env.JEST_WORKER_ID) !== undefined) !== null && _ref !== void 0 ? _ref : false;\nconst DEBUG_MODE = !TESTS_MODE && (globalThis === null || globalThis === void 0 ? void 0 : (_process2 = globalThis.process) === null || _process2 === void 0 ? void 0 : (_process2$env = _process2.env) === null || _process2$env === void 0 ? void 0 : _process2$env.NODE_ENV) !== 'production';\nexport const debug = (...args) => {\n if (!DEBUG_MODE) {\n return;\n }\n\n // eslint-disable-next-line no-console\n console.debug(...args);\n};","import { debug } from './debug';\nconst pkgName = '@atlaskit/platform-feature-flags';\nexport const PFF_GLOBAL_KEY = '__PLATFORM_FEATURE_FLAGS__';\nconst hasProcessEnv = typeof process !== 'undefined' && typeof process.env !== 'undefined';\n\n// FF global overrides can be configured by test runners or Storybook\nconst ENV_ENABLE_PLATFORM_FF = hasProcessEnv ?\n// Use global \"process\" variable and process.env['FLAG_NAME'] syntax, so it can be replaced by webpack DefinePlugin\nprocess.env['ENABLE_PLATFORM_FF'] === 'true' : false;\n\n// STORYBOOK_ENABLE_PLATFORM_FF is included as storybook only allows env vars prefixed with STORYBOOK\n// https://github.com/storybookjs/storybook/issues/12270\n\nconst ENV_STORYBOOK_ENABLE_PLATFORM_FF = hasProcessEnv ?\n// Use global \"process\" variable and process.env['FLAG_NAME'] syntax, so it can be replaced by webpack DefinePlugin\nprocess.env['STORYBOOK_ENABLE_PLATFORM_FF'] === 'true' : false;\nconst ENABLE_GLOBAL_PLATFORM_FF_OVERRIDE = ENV_ENABLE_PLATFORM_FF || ENV_STORYBOOK_ENABLE_PLATFORM_FF;\nconst DEFAULT_PFF_GLOBAL = {\n // In development mode we want to capture any feature flag checks that happen using the default resolver and log this result when the resolver is replaced.\n // This is because evaluating feature flags when the resolver/FF client is loaded asynchronously could cause unexpected issues.\n earlyResolvedFlags: new Map(),\n booleanResolver: function (flagKey) {\n if (process.env.NODE_ENV !== 'production') {\n const unresolvedFlagCount = this.earlyResolvedFlags.get(flagKey) || 0;\n this.earlyResolvedFlags.set(flagKey, unresolvedFlagCount + 1);\n }\n return false;\n }\n};\nconst globalVar = typeof window !== 'undefined' ? window : globalThis;\nglobalVar[PFF_GLOBAL_KEY] = globalVar[PFF_GLOBAL_KEY] || DEFAULT_PFF_GLOBAL;\nexport function setBooleanResolver(resolver) {\n globalVar[PFF_GLOBAL_KEY].booleanResolver = resolver;\n if (process.env.NODE_ENV !== 'production') {\n var _globalVar$PFF_GLOBAL, _globalVar$PFF_GLOBAL2;\n if (((_globalVar$PFF_GLOBAL = globalVar[PFF_GLOBAL_KEY]) === null || _globalVar$PFF_GLOBAL === void 0 ? void 0 : (_globalVar$PFF_GLOBAL2 = _globalVar$PFF_GLOBAL.earlyResolvedFlags) === null || _globalVar$PFF_GLOBAL2 === void 0 ? void 0 : _globalVar$PFF_GLOBAL2.size) > 0) {\n debug(`[%s]: The following list of Feature Flags were called, the following number of times, before setBooleanResolver.`, pkgName, Array.from(globalVar[PFF_GLOBAL_KEY].earlyResolvedFlags.entries()));\n globalVar[PFF_GLOBAL_KEY].earlyResolvedFlags.clear();\n }\n }\n}\nexport function resolveBooleanFlag(flagKey) {\n if (ENABLE_GLOBAL_PLATFORM_FF_OVERRIDE) {\n debug('[%s]: The feature flags were enabled while running tests. The flag \"%s\" will be always enabled.', pkgName, flagKey);\n return true;\n }\n try {\n var _globalVar$PFF_GLOBAL3;\n const result = (_globalVar$PFF_GLOBAL3 = globalVar[PFF_GLOBAL_KEY]) === null || _globalVar$PFF_GLOBAL3 === void 0 ? void 0 : _globalVar$PFF_GLOBAL3.booleanResolver(flagKey);\n if (typeof result !== 'boolean') {\n // eslint-disable-next-line no-console\n console.warn(`${flagKey} resolved to a non-boolean value, returning false for safety`);\n return false;\n }\n return result;\n } catch (e) {\n return false;\n }\n}","import { setBooleanResolver, resolveBooleanFlag } from './resolvers';\n\n/**\n * This creates a boolean flag resolver that allows calls to `getBooleanFF` inside of Platform components to use a Product's\n * feature flag client and LD project, rather than installing a feature flag client of their own, or passing those flags in via props.\n *\n * @param flagResolver\n */\nexport function setBooleanFeatureFlagResolver(flagResolver) {\n setBooleanResolver(flagResolver);\n}\n\n/**\n * Returns the value of a feature flag. If the flag does not resolve, it returns the \"false\" as a default value.\n *\n * @param name\n */\nexport function getBooleanFF(name) {\n return resolveBooleanFlag(name);\n}","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","/** @jsx jsx */\nimport { css, jsx } from '@emotion/react';\nimport { getBooleanFF } from '@atlaskit/platform-feature-flags';\nimport { B200, B300, B400, B50, N10, N100, N20, N30, N40, N70, N80, N900, R300 } from '@atlaskit/theme/colors';\nconst baseStyles = css({\n display: 'grid',\n gridAutoColumns: '1fr',\n gridAutoRows: 'min-content',\n color: `var(--ds-text, ${N900})`,\n cursor: 'default',\n font: \"var(--ds-font-body, normal 400 14px/20px ui-sans-serif, -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", Ubuntu, system-ui, \\\"Helvetica Neue\\\", sans-serif)\"\n});\nconst textLabelLayoutStyles = css({\n gap: `${\"var(--ds-space-0, 0px)\"} ${\"var(--ds-space-050, 4px)\"}`,\n gridTemplateColumns: 'min-content auto'\n});\nconst disabledStyles = css({\n color: `var(--ds-text-disabled, ${N80})`,\n cursor: 'not-allowed'\n});\nconst labelStyles = css({\n /**\n * Background\n */\n '--local-background': `var(--ds-background-input, ${N10})`,\n '--local-background-active': `var(--ds-background-input-pressed, ${B50})`,\n '--local-background-checked': `var(--ds-background-selected-bold, ${B400})`,\n '--local-background-checked-hover': `var(--ds-background-selected-bold-hovered, ${B300})`,\n '--local-background-disabled': `var(--ds-background-disabled, ${N20})`,\n '--local-background-hover': `var(--ds-background-input-hovered, ${N30})`,\n /**\n * Border\n */\n '--local-border': getBooleanFF('platform.design-system-team.update-border-radio-checkbox_7askv') ? `var(--ds-border-bold, ${N100})` : `var(--ds-border-input, ${N40})`,\n '--local-border-active': `var(--ds-border, ${B50})`,\n '--local-border-checked': `var(--ds-background-selected-bold, ${B400})`,\n '--local-border-checked-hover': `var(--ds-background-selected-bold-hovered, ${B300})`,\n '--local-border-checked-invalid': `var(--ds-border-danger, ${R300})`,\n '--local-border-disabled': `var(--ds-background-disabled, ${N20})`,\n '--local-border-focus': `var(--ds-border-focused, ${B200})`,\n '--local-border-hover': getBooleanFF('platform.design-system-team.update-border-radio-checkbox_7askv') ? `var(--ds-border-bold, ${N100})` : `var(--ds-border-input, ${N40})`,\n '--local-border-invalid': `var(--ds-border-danger, ${R300})`,\n /**\n * Tick\n */\n '--local-tick-active': `var(--ds-icon-inverse, ${B400})`,\n '--local-tick-checked': `var(--ds-icon-inverse, ${N10})`,\n '--local-tick-disabled': `var(--ds-icon-disabled, ${N70})`,\n '--local-tick-rest': 'transparent'\n});\nexport default function Label({\n children,\n isDisabled,\n testId,\n label,\n id\n}) {\n return jsx(\"label\", {\n css: [baseStyles, label && textLabelLayoutStyles, isDisabled && disabledStyles, labelStyles],\n \"data-testid\": testId,\n \"data-disabled\": isDisabled || undefined,\n id: id\n }, children);\n}","export const getBackground = () => \"var(--ds-surface, #FFFFFF)\";","export const sizes = {\n small: '16px',\n medium: '24px',\n large: '32px',\n xlarge: '48px'\n};\nexport const sizeMap = {\n small: 'small',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge'\n};\nexport const dimensions = {\n small: {\n width: sizes.small,\n height: sizes.small\n },\n medium: {\n width: sizes.medium,\n height: sizes.medium\n },\n large: {\n width: sizes.large,\n height: sizes.large\n },\n xlarge: {\n width: sizes.xlarge,\n height: sizes.xlarge\n }\n};","import { dimensions } from '../constants';\nimport { css } from '@emotion/react';\nexport const commonSVGStyles = {\n overflow: 'hidden',\n pointerEvents: 'none',\n /**\n * Stop-color doesn't properly apply in chrome when the inherited/current color changes.\n * We have to initially set stop-color to inherit (either via DOM attribute or an initial CSS\n * rule) and then override it with currentColor for the color changes to be picked up.\n */\n stop: {\n stopColor: 'currentColor'\n }\n};\nconst smallStyles = css(dimensions.small);\nconst mediumStyles = css(dimensions.medium);\nconst largeStyles = css(dimensions.large);\nconst xlargeStyles = css(dimensions.xlarge);\n\n// pre-built css style-size map\nexport const sizeStyleMap = {\n small: smallStyles,\n medium: mediumStyles,\n large: largeStyles,\n xlarge: xlargeStyles\n};\n\n/**\n * Returns the width of the icon's parent span. This function has\n * special behaviour to deal with icon-file-type specifically.\n *\n * The reality is the SVG still has its own dimensions, so this is\n * a secondary fallback which in 95% of cases is not required.\n * It's only really being kept to maintain backward compatability.\n */\nexport const getIconSize = ({\n width,\n height,\n size\n}) => {\n if (width && height) {\n return {\n width,\n height\n };\n }\n if (size) {\n return dimensions[size];\n }\n return undefined;\n};","/** @jsx jsx */\nimport { memo } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { getBackground } from './utils';\nimport { commonSVGStyles, sizeStyleMap } from './styles';\n\n// eslint-disable-next-line @atlaskit/design-system/consistent-css-prop-usage\nconst svgStyles = css(commonSVGStyles);\n\n/**\n * __SVG__\n *\n * An icon is used as a visual representation of common actions and commands to provide context.\n *\n * - [Examples](https://atlaskit.atlassian.com/packages/design-system/icon)\n * - [Code](https://atlaskit.atlassian.com/packages/design-system/icon/docs/custom-svgs)\n */\nconst SVG = /*#__PURE__*/memo(function SVG({\n size = 'medium',\n label,\n primaryColor = 'currentColor',\n secondaryColor,\n testId,\n children\n}) {\n return jsx(\"svg\", {\n viewBox: \"0 0 24 24\",\n style: {\n color: primaryColor,\n fill: secondaryColor || getBackground()\n },\n css: [svgStyles, sizeStyleMap[size]],\n \"data-testid\": testId,\n \"aria-label\": label || undefined,\n role: label ? 'img' : 'presentation'\n }, children);\n});\nexport default SVG;","/** @jsx jsx */\nimport { memo, useMemo } from 'react';\nimport { jsx } from '@emotion/react';\nimport PrimitiveSVGIcon from '@atlaskit/icon/svg';\nfunction getIcon(isIndeterminate, isChecked) {\n if (isIndeterminate) {\n return jsx(\"rect\", {\n fill: \"inherit\",\n x: \"8\",\n y: \"11\",\n width: \"8\",\n height: \"2\",\n rx: \"1\"\n });\n }\n if (isChecked) {\n return jsx(\"path\", {\n d: \"M9.707 11.293a1 1 0 1 0-1.414 1.414l2 2a1 1 0 0 0 1.414 0l4-4a1 1 0 1 0-1.414-1.414L11 12.586l-1.293-1.293z\",\n fill: \"inherit\"\n });\n }\n\n // No icon\n return null;\n}\n\n/**\n * __Checkbox icon__\n *\n * A checkbox icon is the visual representation of checkbox state,\n * which is shown instead of the native input.\n *\n * @internal\n */\nconst CheckboxIcon = /*#__PURE__*/memo(({\n size,\n isIndeterminate,\n isChecked\n}) => {\n const icon = useMemo(() => getIcon(isIndeterminate, isChecked), [isIndeterminate, isChecked]);\n return jsx(PrimitiveSVGIcon, {\n label: \"\",\n size: size,\n primaryColor: \"var(--checkbox-background-color)\",\n secondaryColor: \"var(--checkbox-tick-color)\"\n }, jsx(\"g\", {\n fillRule: \"evenodd\"\n }, jsx(\"rect\", {\n fill: \"currentColor\",\n x: \"6\",\n y: \"6\",\n width: \"12\",\n height: \"12\",\n rx: \"2\"\n }), icon));\n});\nexport default CheckboxIcon;","/** @jsx jsx */\nimport { css, jsx } from '@emotion/react';\nconst labelTextStyles = css({\n alignSelf: 'center',\n gridArea: '1 / 2 / 2 / 3'\n});\nexport default function LabelText({\n children\n}) {\n return jsx(\"span\", {\n css: labelTextStyles\n }, children);\n}","/** @jsx jsx */\nimport { css, jsx } from '@emotion/react';\nimport { R500 } from '@atlaskit/theme/colors';\nconst requiredIndicatorStyles = css({\n paddingLeft: \"var(--ds-space-025, 2px)\",\n color: `var(--ds-text-danger, ${R500})`\n});\nexport default function RequiredIndicator() {\n return jsx(\"span\", {\n css: requiredIndicatorStyles,\n \"aria-hidden\": true\n }, \"*\");\n}","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\nimport { forwardRef, memo, useCallback, useRef, useState } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { usePlatformLeafEventHandler } from '@atlaskit/analytics-next/usePlatformLeafEventHandler';\nimport mergeRefs from '@atlaskit/ds-lib/merge-refs';\nimport { getBooleanFF } from '@atlaskit/platform-feature-flags';\nimport { B200 } from '@atlaskit/theme/colors';\nimport { CheckboxIcon, Label, LabelText, RequiredIndicator } from './internal';\n/* eslint-disable @atlaskit/design-system/no-nested-styles */\nconst checkboxStyles = css({\n width: '100%',\n height: '100%',\n margin: \"var(--ds-space-0, 0px)\",\n appearance: 'none',\n border: 'none',\n gridArea: '1 / 1 / 2 / 2',\n opacity: 0,\n outline: 'none',\n '& + svg': {\n /**\n * Change the variables --checkbox-background-color, --checkbox-border-color\n * and --checkbox-tick-color according to user interactions.\n * All other variables are constant.\n * All styles from the input target the sibling svg.\n */\n '--checkbox-background-color': 'var(--local-background)',\n '--checkbox-border-color': 'var(--local-border)',\n '--checkbox-tick-color': 'var(--local-tick-rest)',\n color: 'var(--checkbox-background-color)',\n fill: 'var(--checkbox-tick-color)',\n gridArea: '1 / 1 / 2 / 2',\n pointerEvents: 'none',\n transition: 'color 0.2s ease-in-out, fill 0.2s ease-in-out',\n 'rect:first-of-type': {\n stroke: 'var(--checkbox-border-color)',\n strokeWidth: getBooleanFF('platform.design-system-team.update-border-radio-checkbox_7askv') ? \"var(--ds-border-width, 1px)\" : 2,\n transition: 'stroke 0.2s ease-in-out'\n }\n },\n '&&:focus + svg, &&:checked:focus + svg': {\n borderRadius: \"var(--ds-border-radius, 0.25rem)\",\n outline: `${\"var(--ds-border-width-outline, 2px)\"} solid ${`var(--ds-border-focused, ${B200})`}`,\n outlineOffset: \"var(--ds-space-negative-025, -2px)\"\n },\n '&:hover + svg': {\n '--checkbox-background-color': 'var(--local-background-hover)',\n '--checkbox-border-color': 'var(--local-border-hover)'\n },\n '&:checked:hover + svg': {\n '--checkbox-background-color': 'var(--local-background-checked-hover)',\n '--checkbox-border-color': 'var(--local-border-checked-hover)'\n },\n '&:checked + svg': {\n '--checkbox-background-color': 'var(--local-background-checked)',\n '--checkbox-border-color': 'var(--local-border-checked)',\n '--checkbox-tick-color': 'var(--local-tick-checked)'\n },\n '&[data-invalid] + svg': {\n '--checkbox-border-color': 'var(--local-border-invalid)'\n },\n '&:checked[data-invalid] + svg': {\n '--checkbox-border-color': 'var(--local-border-checked-invalid)'\n },\n '&:active + svg': {\n '--checkbox-background-color': 'var(--local-background-active)',\n '--checkbox-border-color': 'var(--local-border-active)'\n },\n '&:checked:active + svg': {\n '--checkbox-background-color': 'var(--local-background-active)',\n '--checkbox-border-color': 'var(--local-border-active)',\n '--checkbox-tick-color': 'var(--local-tick-active)'\n },\n '&:disabled + svg, &:disabled:hover + svg, &:disabled:focus + svg, &:disabled:active + svg, &:disabled[data-invalid] + svg': {\n '--checkbox-background-color': 'var(--local-background-disabled)',\n '--checkbox-border-color': 'var(--local-border-disabled)',\n cursor: 'not-allowed',\n pointerEvents: 'none'\n },\n '&:disabled:checked + svg': {\n '--checkbox-tick-color': 'var(--local-tick-disabled)'\n },\n '@media screen and (forced-colors: active)': {\n '& + svg': {\n '--checkbox-background-color': 'Canvas',\n '--checkbox-border-color': 'CanvasText',\n '--checkbox-tick-color': 'CanvasText'\n },\n '&:checked + svg, &:checked:hover + svg': {\n '--checkbox-background-color': 'Canvas',\n '--checkbox-border-color': 'CanvasText',\n '--checkbox-tick-color': 'CanvasText'\n },\n '&:focus + svg rect:first-of-type': {\n stroke: 'Highlight'\n },\n '&[data-invalid] + svg': {\n '--checkbox-border-color': 'Highlight'\n },\n '&:checked[data-invalid] + svg': {\n '--checkbox-border-color': 'Highlight'\n },\n '&:disabled + svg, &:disabled:hover + svg, &:disabled:focus + svg, &:disabled:active + svg, &:disabled[data-invalid] + svg': {\n '--checkbox-background-color': 'Canvas',\n '--checkbox-border-color': 'GrayText',\n '--checkbox-tick-color': 'GrayText'\n }\n }\n});\n/* eslint-enable @atlaskit/design-system/no-nested-styles */\n\n/**\n * __Checkbox__\n *\n * A checkbox an input control that allows a user to select one or more options from a number of choices.\n *\n * - [Examples](https://atlassian.design/components/checkbox/examples)\n * - [Code](https://atlassian.design/components/checkbox/code)\n * - [Usage](https://atlassian.design/components/checkbox/usage)\n */\nconst Checkbox = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Checkbox(props, ref) {\n const {\n isChecked: isCheckedProp,\n isDisabled = false,\n isInvalid = false,\n defaultChecked = false,\n isIndeterminate = false,\n size = 'medium',\n onChange: onChangeProps,\n analyticsContext,\n label,\n name,\n value,\n isRequired,\n testId,\n ...rest\n } = props;\n const [isCheckedState, setIsCheckedState] = useState(isCheckedProp !== undefined ? isCheckedProp : defaultChecked);\n const onChange = useCallback((e, analyticsEvent) => {\n setIsCheckedState(e.target.checked);\n if (onChangeProps) {\n onChangeProps(e, analyticsEvent);\n }\n }, [onChangeProps]);\n const onChangeAnalytics = usePlatformLeafEventHandler({\n fn: onChange,\n action: 'changed',\n analyticsData: analyticsContext,\n componentName: 'checkbox',\n packageName: \"@atlaskit/checkbox\",\n packageVersion: \"13.1.5\"\n });\n const internalRef = useRef(null);\n const mergedRefs = mergeRefs([internalRef, ref]);\n\n // Use isChecked from the state if it is controlled\n const isChecked = isCheckedProp === undefined ? isCheckedState : isCheckedProp;\n return jsx(Label, {\n isDisabled: isDisabled,\n label: label,\n id: rest.id ? `${rest.id}-label` : undefined,\n testId: testId && `${testId}--checkbox-label`\n }, jsx(\"input\", _extends({\n // It is necessary only for Safari. It allows to render focus styles.\n tabIndex: 0\n }, rest, {\n type: \"checkbox\",\n ref: mergedRefs,\n disabled: isDisabled,\n checked: isChecked,\n value: value,\n name: name,\n required: isRequired,\n css: checkboxStyles,\n onChange: onChangeAnalytics,\n \"aria-checked\": isIndeterminate ? 'mixed' : isChecked,\n \"aria-invalid\": isInvalid ? 'true' : undefined,\n \"data-testid\": testId && `${testId}--hidden-checkbox`,\n \"data-invalid\": isInvalid ? 'true' : undefined\n })), jsx(CheckboxIcon, {\n size: size,\n isIndeterminate: isIndeterminate,\n isChecked: isChecked\n }), label && jsx(LabelText, null, label, isRequired && jsx(RequiredIndicator, null)));\n}));\nCheckbox.displayName = 'Checkbox';\nexport default Checkbox;","import { __extends, __read, __spread } from \"tslib\";\nimport React, { Children, Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { AnalyticsReactContext } from './AnalyticsReactContext';\nvar ContextTypes = {\n getAtlaskitAnalyticsContext: PropTypes.func,\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n};\nvar AnalyticsContext = /** @class */ (function (_super) {\n __extends(AnalyticsContext, _super);\n function AnalyticsContext(props) {\n var _this = _super.call(this, props) || this;\n _this.getChildContext = function () { return ({\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n }); };\n _this.getAnalyticsContext = function () {\n var data = _this.props.data;\n var getAtlaskitAnalyticsContext = _this.context.getAtlaskitAnalyticsContext;\n var ancestorData = (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [];\n return __spread(ancestorData, [data]);\n };\n _this.getAnalyticsEventHandlers = function () {\n var getAtlaskitAnalyticsEventHandlers = _this.context.getAtlaskitAnalyticsEventHandlers;\n var ancestorHandlers = (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [];\n return ancestorHandlers;\n };\n _this.state = {\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n getAtlaskitAnalyticsEventHandlers: _this.getAnalyticsEventHandlers,\n };\n return _this;\n }\n AnalyticsContext.prototype.render = function () {\n var children = this.props.children;\n return (React.createElement(AnalyticsReactContext.Provider, { value: this.state }, Children.only(children)));\n };\n AnalyticsContext.contextTypes = ContextTypes;\n AnalyticsContext.childContextTypes = ContextTypes;\n return AnalyticsContext;\n}(Component));\nexport default AnalyticsContext;\n//# sourceMappingURL=AnalyticsContext.js.map","import { __extends, __read, __spread } from \"tslib\";\nimport AnalyticsEvent from './AnalyticsEvent';\nvar UIAnalyticsEvent = /** @class */ (function (_super) {\n __extends(UIAnalyticsEvent, _super);\n function UIAnalyticsEvent(props) {\n var _this = _super.call(this, props) || this;\n _this.clone = function () {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n return null;\n }\n var context = __spread(_this.context);\n var handlers = __spread(_this.handlers);\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new UIAnalyticsEvent({ context: context, handlers: handlers, payload: payload });\n };\n _this.fire = function (channel) {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n return;\n }\n _this.handlers.forEach(function (handler) { return handler(_this, channel); });\n _this.hasFired = true;\n };\n _this.context = props.context || [];\n _this.handlers = props.handlers || [];\n _this.hasFired = false;\n return _this;\n }\n UIAnalyticsEvent.prototype.update = function (updater) {\n if (this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n return this;\n }\n return _super.prototype.update.call(this, updater);\n };\n return UIAnalyticsEvent;\n}(AnalyticsEvent));\nexport default UIAnalyticsEvent;\n//# sourceMappingURL=UIAnalyticsEvent.js.map","import { __assign } from \"tslib\";\nvar AnalyticsEvent = /** @class */ (function () {\n function AnalyticsEvent(props) {\n var _this = this;\n this.clone = function () {\n // We stringify and parse here to get a hacky \"deep clone\" of the object.\n // This has some limitations in that it wont support functions, regexs, Maps, Sets, etc,\n // but none of those need to be represented in our payload, so we consider this fine\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new AnalyticsEvent({ payload: payload });\n };\n this.payload = props.payload;\n }\n AnalyticsEvent.prototype.update = function (updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = __assign(__assign({}, this.payload), updater);\n }\n return this;\n };\n return AnalyticsEvent;\n}());\nexport default AnalyticsEvent;\n//# sourceMappingURL=AnalyticsEvent.js.map","import { __assign, __extends, __read, __spread } from \"tslib\";\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport UIAnalyticsEvent from './UIAnalyticsEvent';\n/**\n * This component is used to grab the analytics functions off context.\n * It uses legacy context, but provides an API similar to 16.3 context.\n * This makes it easier to use with the forward ref API.\n */\nvar AnalyticsContextConsumer = /** @class */ (function (_super) {\n __extends(AnalyticsContextConsumer, _super);\n function AnalyticsContextConsumer(props) {\n var _this = _super.call(this, props) || this;\n /**\n * Store references to the original and patched event props so we can\n * determine when to update the patched props\n */\n _this.originalEventProps = {};\n _this.patchedEventProps = {};\n // Update patched event props only if the original props have changed\n _this.updatePatchedEventProps = function (props) {\n var changedPropCallbacks = Object.keys(_this.props.createEventMap).filter(function (p) { return _this.originalEventProps[p] !== props[p]; });\n if (changedPropCallbacks.length > 0) {\n _this.patchedEventProps = __assign(__assign({}, _this.patchedEventProps), _this.mapCreateEventsToProps(changedPropCallbacks, props));\n changedPropCallbacks.forEach(function (p) {\n _this.originalEventProps[p] = props[p];\n });\n }\n return _this.patchedEventProps;\n };\n _this.mapCreateEventsToProps = function (changedPropNames, props) {\n return changedPropNames.reduce(function (modified, propCallbackName) {\n var _a;\n var eventCreator = _this.props.createEventMap[propCallbackName];\n var providedCallback = props[propCallbackName];\n if (!['object', 'function'].includes(typeof eventCreator)) {\n return modified;\n }\n var modifiedCallback = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var analyticsEvent = typeof eventCreator === 'function'\n ? eventCreator(_this.createAnalyticsEvent, props)\n : _this.createAnalyticsEvent(eventCreator);\n if (providedCallback) {\n providedCallback.apply(void 0, __spread(args, [analyticsEvent]));\n }\n };\n return __assign(__assign({}, modified), (_a = {}, _a[propCallbackName] = modifiedCallback, _a));\n }, {});\n };\n _this.createAnalyticsEvent = function (payload) {\n var _a = _this.context, getAtlaskitAnalyticsEventHandlers = _a.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext = _a.getAtlaskitAnalyticsContext;\n return new UIAnalyticsEvent({\n context: (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [],\n handlers: (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [],\n payload: payload,\n });\n };\n Object.keys(_this.props.createEventMap).forEach(function (p) {\n _this.originalEventProps[p] = props.wrappedComponentProps[p];\n });\n _this.patchedEventProps = _this.mapCreateEventsToProps(Object.keys(_this.props.createEventMap), props.wrappedComponentProps);\n return _this;\n }\n AnalyticsContextConsumer.prototype.render = function () {\n var patchedEventProps = this.updatePatchedEventProps(this.props.wrappedComponentProps);\n return this.props.children({\n createAnalyticsEvent: this.createAnalyticsEvent,\n patchedEventProps: patchedEventProps,\n });\n };\n AnalyticsContextConsumer.contextTypes = {\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n getAtlaskitAnalyticsContext: PropTypes.func,\n };\n AnalyticsContextConsumer.defaultProps = {\n createEventMap: {},\n };\n return AnalyticsContextConsumer;\n}(React.Component));\nexport default AnalyticsContextConsumer;\n//# sourceMappingURL=AnalyticsContextConsumer.js.map","export default (function (channel) { return function (payload) { return function (createAnalyticsEvent) {\n var consumerEvent = createAnalyticsEvent(payload);\n var clonedEvent = consumerEvent.clone();\n if (clonedEvent) {\n clonedEvent.fire(channel);\n }\n return consumerEvent;\n}; }; });\n//# sourceMappingURL=createAndFireEvent.js.map","import { __extends, __read, __spread } from \"tslib\";\nimport React, { Children, Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { AnalyticsReactContext } from './AnalyticsReactContext';\nvar ContextTypes = {\n getAtlaskitAnalyticsContext: PropTypes.func,\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n};\nvar AnalyticsContext = /** @class */ (function (_super) {\n __extends(AnalyticsContext, _super);\n function AnalyticsContext(props) {\n var _this = _super.call(this, props) || this;\n _this.getChildContext = function () { return ({\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n }); };\n _this.getAnalyticsContext = function () {\n var data = _this.props.data;\n var getAtlaskitAnalyticsContext = _this.context.getAtlaskitAnalyticsContext;\n var ancestorData = (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [];\n return __spread(ancestorData, [data]);\n };\n _this.getAnalyticsEventHandlers = function () {\n var getAtlaskitAnalyticsEventHandlers = _this.context.getAtlaskitAnalyticsEventHandlers;\n var ancestorHandlers = (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [];\n return ancestorHandlers;\n };\n _this.state = {\n getAtlaskitAnalyticsContext: _this.getAnalyticsContext,\n getAtlaskitAnalyticsEventHandlers: _this.getAnalyticsEventHandlers,\n };\n return _this;\n }\n AnalyticsContext.prototype.render = function () {\n var children = this.props.children;\n return (React.createElement(AnalyticsReactContext.Provider, { value: this.state }, Children.only(children)));\n };\n AnalyticsContext.contextTypes = ContextTypes;\n AnalyticsContext.childContextTypes = ContextTypes;\n return AnalyticsContext;\n}(Component));\nexport default AnalyticsContext;\n//# sourceMappingURL=AnalyticsContext.js.map","import { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContext from './AnalyticsContext';\nvar withAnalyticsContext = function (defaultData) { return function (WrappedComponent) {\n var WithAnalyticsContext = React.forwardRef(function (props, ref) {\n var _a = props.analyticsContext, analyticsContext = _a === void 0 ? {} : _a, rest = __rest(props, [\"analyticsContext\"]);\n var analyticsData = __assign(__assign({}, defaultData), analyticsContext);\n return (React.createElement(AnalyticsContext, { data: analyticsData },\n React.createElement(WrappedComponent, __assign({}, rest, { ref: ref }))));\n });\n // @ts-ignore\n WithAnalyticsContext.displayName = \"WithAnalyticsContext(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsContext;\n}; };\nexport default withAnalyticsContext;\n//# sourceMappingURL=withAnalyticsContext.js.map","import { __assign } from \"tslib\";\nvar AnalyticsEvent = /** @class */ (function () {\n function AnalyticsEvent(props) {\n var _this = this;\n this.clone = function () {\n // We stringify and parse here to get a hacky \"deep clone\" of the object.\n // This has some limitations in that it wont support functions, regexs, Maps, Sets, etc,\n // but none of those need to be represented in our payload, so we consider this fine\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new AnalyticsEvent({ payload: payload });\n };\n this.payload = props.payload;\n }\n AnalyticsEvent.prototype.update = function (updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = __assign(__assign({}, this.payload), updater);\n }\n return this;\n };\n return AnalyticsEvent;\n}());\nexport default AnalyticsEvent;\n//# sourceMappingURL=AnalyticsEvent.js.map","import { __extends, __read, __spread } from \"tslib\";\nimport AnalyticsEvent from './AnalyticsEvent';\nvar UIAnalyticsEvent = /** @class */ (function (_super) {\n __extends(UIAnalyticsEvent, _super);\n function UIAnalyticsEvent(props) {\n var _this = _super.call(this, props) || this;\n _this.clone = function () {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n return null;\n }\n var context = __spread(_this.context);\n var handlers = __spread(_this.handlers);\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new UIAnalyticsEvent({ context: context, handlers: handlers, payload: payload });\n };\n _this.fire = function (channel) {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n return;\n }\n _this.handlers.forEach(function (handler) { return handler(_this, channel); });\n _this.hasFired = true;\n };\n _this.context = props.context || [];\n _this.handlers = props.handlers || [];\n _this.hasFired = false;\n return _this;\n }\n UIAnalyticsEvent.prototype.update = function (updater) {\n if (this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n return this;\n }\n return _super.prototype.update.call(this, updater);\n };\n return UIAnalyticsEvent;\n}(AnalyticsEvent));\nexport default UIAnalyticsEvent;\n//# sourceMappingURL=UIAnalyticsEvent.js.map","import { __assign, __extends, __read, __spread } from \"tslib\";\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport UIAnalyticsEvent from './UIAnalyticsEvent';\n/**\n * This component is used to grab the analytics functions off context.\n * It uses legacy context, but provides an API similar to 16.3 context.\n * This makes it easier to use with the forward ref API.\n */\nvar AnalyticsContextConsumer = /** @class */ (function (_super) {\n __extends(AnalyticsContextConsumer, _super);\n function AnalyticsContextConsumer(props) {\n var _this = _super.call(this, props) || this;\n /**\n * Store references to the original and patched event props so we can\n * determine when to update the patched props\n */\n _this.originalEventProps = {};\n _this.patchedEventProps = {};\n // Update patched event props only if the original props have changed\n _this.updatePatchedEventProps = function (props) {\n var changedPropCallbacks = Object.keys(_this.props.createEventMap).filter(function (p) { return _this.originalEventProps[p] !== props[p]; });\n if (changedPropCallbacks.length > 0) {\n _this.patchedEventProps = __assign(__assign({}, _this.patchedEventProps), _this.mapCreateEventsToProps(changedPropCallbacks, props));\n changedPropCallbacks.forEach(function (p) {\n _this.originalEventProps[p] = props[p];\n });\n }\n return _this.patchedEventProps;\n };\n _this.mapCreateEventsToProps = function (changedPropNames, props) {\n return changedPropNames.reduce(function (modified, propCallbackName) {\n var _a;\n var eventCreator = _this.props.createEventMap[propCallbackName];\n var providedCallback = props[propCallbackName];\n if (!['object', 'function'].includes(typeof eventCreator)) {\n return modified;\n }\n var modifiedCallback = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var analyticsEvent = typeof eventCreator === 'function'\n ? eventCreator(_this.createAnalyticsEvent, props)\n : _this.createAnalyticsEvent(eventCreator);\n if (providedCallback) {\n providedCallback.apply(void 0, __spread(args, [analyticsEvent]));\n }\n };\n return __assign(__assign({}, modified), (_a = {}, _a[propCallbackName] = modifiedCallback, _a));\n }, {});\n };\n _this.createAnalyticsEvent = function (payload) {\n var _a = _this.context, getAtlaskitAnalyticsEventHandlers = _a.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext = _a.getAtlaskitAnalyticsContext;\n return new UIAnalyticsEvent({\n context: (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [],\n handlers: (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [],\n payload: payload,\n });\n };\n Object.keys(_this.props.createEventMap).forEach(function (p) {\n _this.originalEventProps[p] = props.wrappedComponentProps[p];\n });\n _this.patchedEventProps = _this.mapCreateEventsToProps(Object.keys(_this.props.createEventMap), props.wrappedComponentProps);\n return _this;\n }\n AnalyticsContextConsumer.prototype.render = function () {\n var patchedEventProps = this.updatePatchedEventProps(this.props.wrappedComponentProps);\n return this.props.children({\n createAnalyticsEvent: this.createAnalyticsEvent,\n patchedEventProps: patchedEventProps,\n });\n };\n AnalyticsContextConsumer.contextTypes = {\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n getAtlaskitAnalyticsContext: PropTypes.func,\n };\n AnalyticsContextConsumer.defaultProps = {\n createEventMap: {},\n };\n return AnalyticsContextConsumer;\n}(React.Component));\nexport default AnalyticsContextConsumer;\n//# sourceMappingURL=AnalyticsContextConsumer.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContextConsumer from './AnalyticsContextConsumer';\nvar withAnalyticsEvents = function (createEventMap) { return function (WrappedComponent) {\n var WithAnalyticsEvents = React.forwardRef(function (props, ref) { return (React.createElement(AnalyticsContextConsumer, { createEventMap: createEventMap, wrappedComponentProps: props }, function (_a) {\n var createAnalyticsEvent = _a.createAnalyticsEvent, patchedEventProps = _a.patchedEventProps;\n return (React.createElement(WrappedComponent, __assign({}, props, patchedEventProps, { createAnalyticsEvent: createAnalyticsEvent, ref: ref })));\n })); });\n // @ts-ignore\n WithAnalyticsEvents.displayName = \"WithAnalyticsEvents(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsEvents;\n}; };\nexport default withAnalyticsEvents;\n//# sourceMappingURL=withAnalyticsEvents.js.map","import { css } from 'styled-components';\nimport { B100, N30A, skeleton as skeletonColor } from './colors';\nexport const FLATTENED = '__FLATTENED__';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\nexport const borderRadius = () => 3;\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\nexport const focusRing = (color = B100, outlineWidth = gridSize() / 4) => `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n dialog: () => 300,\n navigation: () => 200,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 800,\n};\nexport const visuallyHidden = () => ({\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important',\n});\n/**\n * Deprecated Styled Components mixin.\n * Use visuallyHidden instead.\n * @deprecated\n */\nexport const assistive = () => css `\n border: 0 !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n height: 1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n width: 1px !important;\n white-space: nowrap !important;\n`;\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: skeletonColor(),\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate',\n },\n keyframes: {\n from: {\n backgroundColor: skeletonColor(),\n },\n to: {\n backgroundColor: N30A,\n },\n },\n});\n//# sourceMappingURL=constants.js.map","// If a generic is used here, props can be inferred never and passed up (even with defaults)\nexport function add(fn, addend) {\n return (props) => fn(props) + addend;\n}\nexport function subtract(fn, subtrahend) {\n return (props) => fn(props) - subtrahend;\n}\nexport function multiply(fn, factor) {\n return (props) => fn(props) * factor;\n}\nexport function divide(fn, divisor) {\n return (props) => fn(props) / divisor;\n}\n//# sourceMappingURL=math.js.map","import styled, { css } from 'styled-components';\nimport * as colors from '@atlaskit/theme/colors';\nimport { themed } from '@atlaskit/theme/components';\nimport { fontSize, gridSize } from '@atlaskit/theme/constants';\nimport { divide, multiply } from '@atlaskit/theme/math';\nvar activeBackgroundColor = themed({\n light: colors.B75,\n dark: colors.DN30\n});\nvar hoverBackgroundColor = themed({\n light: colors.N20,\n dark: colors.DN60\n});\nvar selectedBackgroundColor = themed({\n light: colors.N0,\n dark: colors.DN30\n});\nvar activePrimaryTextColor = themed({\n light: colors.N800,\n dark: colors.DN300\n});\nvar defaultPrimaryTextColor = themed({\n light: colors.N800,\n dark: colors.DN600\n});\nvar disabledPrimaryTextColor = themed({\n light: colors.N70,\n dark: colors.DN70\n});\nvar primaryPrimaryTextColor = themed({\n light: colors.B400,\n dark: colors.B400\n});\nvar selectedPrimaryTextColor = themed({\n light: colors.N800,\n dark: colors.N800\n});\nvar focusedStyles = css([\"\\n box-shadow: 0 0 0 2px \", \"\\n inset;\\n outline: none;\\n outline-offset: 0;\\n position: relative; /* prevents bgcolor of a hovered element from obfuscating focus ring of a focused sibling element */\\n\"], themed({\n light: colors.B100,\n dark: colors.B75\n}));\nvar activeStyles = css([\"\\n &,\\n &:hover {\\n background-color: \", \";\\n color: \", \";\\n }\\n\"], selectedBackgroundColor, selectedPrimaryTextColor);\nvar primaryStyles = css([\"\\n color: \", \";\\n\"], primaryPrimaryTextColor);\n\nvar sharedStyles = function sharedStyles(props) {\n return css([\"\\n align-items: center;\\n box-sizing: border-box;\\n color: \", \";\\n cursor: \", \";\\n display: \", \";\\n flex-wrap: nowrap;\\n font-size: \", \"px;\\n font-weight: normal;\\n padding: 0 \", \"px;\\n text-decoration: none;\\n\\n &:hover {\\n background-color: \", \";\\n color: \", \";\\n text-decoration: none;\\n\\n \", \";\\n }\\n &:active {\\n background-color: \", \";\\n color: \", \";\\n\\n \", \";\\n }\\n &:focus {\\n \", \";\\n }\\n\\n \", \" \", \" \", \";\\n\"], props.isDisabled ? disabledPrimaryTextColor : defaultPrimaryTextColor, props.isDisabled ? 'not-allowed' : 'pointer', props.isHidden ? 'none' : 'flex', fontSize, multiply(gridSize, 1.5), !props.isDisabled && hoverBackgroundColor, props.isDisabled ? disabledPrimaryTextColor : defaultPrimaryTextColor, props.isPrimary && primaryStyles, !props.isDisabled && activeBackgroundColor, !props.isDisabled && activePrimaryTextColor, props.isPrimary && primaryStyles, focusedStyles, props.isFocused && focusedStyles, props.isActive && activeStyles, props.isPrimary && primaryStyles);\n};\n\nexport var Anchor = styled.a.withConfig({\n displayName: \"Item__Anchor\",\n componentId: \"aiqnor-0\"\n})([\"\\n \", \";\\n\"], function (props) {\n return sharedStyles(props);\n});\nexport var Span = styled.span.withConfig({\n displayName: \"Item__Span\",\n componentId: \"aiqnor-1\"\n})([\"\\n \", \";\\n\"], function (props) {\n return sharedStyles(props);\n}); // Checkbox/Radio wrapper -- sits left of the children\n\nexport var InputWrapper = styled.span.withConfig({\n displayName: \"Item__InputWrapper\",\n componentId: \"aiqnor-2\"\n})([\"\\n display: flex;\\n margin: 0 2px;\\n\"]); // Elements injected before/after the children\n\nexport var Before = styled.span.withConfig({\n displayName: \"Item__Before\",\n componentId: \"aiqnor-3\"\n})([\"\\n display: flex;\\n\"]);\nexport var After = styled.span.withConfig({\n displayName: \"Item__After\",\n componentId: \"aiqnor-4\"\n})([\"\\n align-items: center;\\n display: flex;\\n\"]); // Alignment and layout for the children\n\nexport var ContentWrapper = styled.span.withConfig({\n displayName: \"Item__ContentWrapper\",\n componentId: \"aiqnor-5\"\n})([\"\\n display: flex;\\n flex-direction: column;\\n margin: 0 \", \"px;\\n padding: \", \"px 0;\\n overflow: hidden;\\n\\n &:first-child {\\n margin: 0;\\n }\\n\"], gridSize, gridSize);\nexport var Content = styled.span.withConfig({\n displayName: \"Item__Content\",\n componentId: \"aiqnor-6\"\n})([\"\\n flex: 1 1 auto;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n \", \";\\n\"], function (props) {\n return props.allowMultiline && css([\"\\n white-space: normal;\\n \"]);\n}); // Description is a block element below the children, like a subtitle\n\nexport var Description = styled.span.withConfig({\n displayName: \"Item__Description\",\n componentId: \"aiqnor-7\"\n})([\"\\n color: \", \";\\n flex: 1 1 auto;\\n font-size: 12px;\\n line-height: 16 / 12;\\n margin-top: \", \"px;\\n\"], colors.subtleText, divide(gridSize, 2)); // NOTE: Exposed as a named export for this package\n\nexport var SecondaryText = styled.span.withConfig({\n displayName: \"Item__SecondaryText\",\n componentId: \"aiqnor-8\"\n})([\"\\n color: \", \";\\n\"], colors.subtleText);","import * as colors from '@atlaskit/theme/colors';\nexport function getInputBackground(_ref) {\n var isChecked = _ref.isChecked,\n isDisabled = _ref.isDisabled,\n isHovered = _ref.isHovered,\n isPressed = _ref.isPressed;\n var background = colors.N40;\n if (isHovered) background = colors.N50;\n if (isPressed) background = colors.B200;\n if (isChecked) background = colors.B400;\n if (isDisabled) background = colors.N20;\n if (isChecked && isDisabled) background = colors.N600;\n return background;\n}\nexport function getInputFill(appearanceProps) {\n return appearanceProps.isChecked ? colors.N0 : 'transparent';\n}","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { PureComponent } from 'react';\nimport { Anchor, Span } from '../styled/Item';\nexport var supportsVoiceOver = function supportsVoiceOver() {\n return /Mac OS X/.test(navigator.userAgent);\n};\nexport var getAriaRoles = function getAriaRoles() {\n return {\n checkbox: supportsVoiceOver() ? 'checkbox' : 'menuitemcheckbox',\n link: 'menuitem',\n option: 'option',\n radio: supportsVoiceOver() ? 'radio' : 'menuitemradio'\n };\n};\nexport var baseTypes = {\n default: 'link',\n values: ['link', 'radio', 'checkbox', 'option']\n};\n\nvar Element =\n/*#__PURE__*/\nfunction (_PureComponent) {\n _inherits(Element, _PureComponent);\n\n function Element() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, Element);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(Element)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"handleMouseDown\", function (e) {\n e.preventDefault();\n\n _this.props.handleMouseDown();\n });\n\n return _this;\n }\n\n _createClass(Element, [{\n key: \"render\",\n value: function render() {\n var props = this.props;\n var isActive = props.isActive,\n isChecked = props.isChecked,\n isDisabled = props.isDisabled,\n isFocused = props.isFocused,\n isHidden = props.isHidden,\n isSelected = props.isSelected,\n isPrimary = props.isPrimary;\n var type = this.props.type || '';\n var appearanceProps = {\n isActive: isActive,\n isChecked: isChecked,\n isDisabled: isDisabled,\n isFocused: isFocused,\n isHidden: isHidden,\n isSelected: isSelected,\n isPrimary: isPrimary\n };\n var ariaProps = {\n 'aria-checked': !!isChecked,\n 'aria-disabled': !!isDisabled,\n 'aria-hidden': !!isHidden,\n 'aria-selected': !!isSelected\n };\n var ariaRoles = getAriaRoles();\n var commonProps = {\n 'data-role': 'droplistItem',\n onClick: props.handleClick,\n onKeyPress: props.handleKeyPress,\n onMouseDown: this.handleMouseDown,\n onMouseOut: props.handleMouseOut,\n onMouseOver: props.handleMouseOver,\n onMouseUp: props.handleMouseUp,\n role: ariaRoles[type],\n title: props.title,\n tabIndex: props.type === 'option' ? null : 0\n };\n var testingProps = process.env.NODE_ENV === 'test' ? {\n 'data-test-active': isActive,\n 'data-test-checked': isChecked,\n 'data-test-disabled': isDisabled,\n 'data-test-hidden': isHidden,\n 'data-test-selected': isSelected\n } : {};\n\n var consolidatedProps = _objectSpread({}, appearanceProps, ariaProps, commonProps, testingProps);\n\n if (props.href && !isDisabled) {\n return React.createElement(Anchor, _extends({\n href: props.href,\n target: props.target\n }, consolidatedProps), props.children);\n }\n\n return React.createElement(Span, consolidatedProps, props.children);\n }\n }]);\n\n return Element;\n}(PureComponent);\n\nexport { Element as default };","import _extends from \"@babel/runtime/helpers/extends\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { PureComponent } from 'react';\nimport PropTypes from 'prop-types';\nimport { createAndFireEvent, withAnalyticsContext, withAnalyticsEvents } from '@atlaskit/analytics-next';\nimport Checkbox from '@atlaskit/icon/glyph/checkbox';\nimport Radio from '@atlaskit/icon/glyph/radio';\nimport Tooltip from '@atlaskit/tooltip';\nimport { After, Before, Content, ContentWrapper, Description, InputWrapper } from '../styled/Item';\nimport { getInputBackground, getInputFill } from '../utils';\nimport { name as packageName, version as packageVersion } from '../version.json';\nimport Element from './Element';\nvar inputTypes = {\n checkbox: Checkbox,\n radio: Radio\n};\n\nvar Item =\n/*#__PURE__*/\nfunction (_PureComponent) {\n _inherits(Item, _PureComponent);\n\n function Item() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, Item);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(Item)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n isHovered: false,\n isPressed: false\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n return document.addEventListener('mouseup', _this.handleMouseUp);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentWillUnmount\", function () {\n return document.removeEventListener('mouseup', _this.handleMouseUp);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"guardedActivate\", function (event) {\n var _this$props = _this.props,\n isDisabled = _this$props.isDisabled,\n onActivate = _this$props.onActivate;\n if (!isDisabled && onActivate) onActivate({\n item: _assertThisInitialized(_this),\n event: event\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClick\", function (event) {\n return _this.guardedActivate(event);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleKeyPress\", function (event) {\n var keyIsValid = ['Enter', ' '].indexOf(event.key) > -1;\n if (keyIsValid) _this.guardedActivate(event);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleMouseDown\", function () {\n return _this.setState({\n isPressed: true\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleMouseUp\", function () {\n return _this.setState({\n isPressed: false\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleMouseOut\", function () {\n return _this.setState({\n isHovered: false\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleMouseOver\", function () {\n return _this.setState({\n isHovered: true\n });\n });\n\n return _this;\n }\n\n _createClass(Item, [{\n key: \"render\",\n value: function render() {\n var props = this.props;\n var _this$state = this.state,\n isHovered = _this$state.isHovered,\n isPressed = _this$state.isPressed;\n var type = props.type || '';\n var hasInput = ['checkbox', 'radio'].indexOf(type) > -1;\n var Input = inputTypes[type];\n var appearanceProps = {\n isActive: props.type === 'link' && props.isActive || props.type === 'option' && props.isSelected,\n isChecked: ['checkbox', 'radio'].indexOf(type) > -1 && props.isChecked,\n isDisabled: props.isDisabled,\n isFocused: props.isFocused,\n isHidden: props.isHidden,\n isHovered: isHovered,\n isPressed: isPressed,\n isSelected: type === 'option' && props.isSelected,\n isPrimary: props.appearance === 'primary'\n };\n var element = React.createElement(Element, _extends({}, appearanceProps, {\n handleClick: this.handleClick,\n handleKeyPress: this.handleKeyPress,\n handleMouseOut: this.handleMouseOut,\n handleMouseOver: this.handleMouseOver,\n handleMouseUp: this.handleMouseUp,\n handleMouseDown: this.handleMouseDown,\n href: props.href,\n target: props.target,\n title: props.title,\n type: props.type\n }), hasInput && React.createElement(InputWrapper, appearanceProps, React.createElement(Input, {\n label: \"\",\n primaryColor: getInputBackground(appearanceProps),\n secondaryColor: getInputFill(appearanceProps),\n size: \"medium\"\n })), !!props.elemBefore && React.createElement(Before, null, props.elemBefore), React.createElement(ContentWrapper, null, React.createElement(Content, {\n allowMultiline: this.context.shouldAllowMultilineItems\n }, props.children), !!props.description && React.createElement(Description, null, props.description)), !!props.elemAfter && React.createElement(After, null, props.elemAfter));\n return React.createElement(\"span\", {\n role: \"presentation\"\n }, props.tooltipDescription ? React.createElement(Tooltip, {\n content: props.tooltipDescription,\n position: props.tooltipPosition\n }, element) : element);\n }\n }]);\n\n return Item;\n}(PureComponent);\n\n_defineProperty(Item, \"defaultProps\", {\n appearance: 'default',\n children: null,\n description: '',\n elemAfter: null,\n elemBefore: null,\n href: null,\n isActive: false,\n isChecked: false,\n isDisabled: false,\n isFocused: false,\n isHidden: false,\n isSelected: false,\n itemContext: 'menu',\n onActivate: function onActivate() {},\n target: null,\n title: null,\n tooltipDescription: null,\n tooltipPosition: 'right',\n type: 'link'\n});\n\n_defineProperty(Item, \"contextTypes\", {\n shouldAllowMultilineItems: PropTypes.bool\n});\n\nexport { Item as DroplistItemWithoutAnalytics };\nvar createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');\nexport default withAnalyticsContext({\n componentName: 'droplistItem',\n packageName: packageName,\n packageVersion: packageVersion\n})(withAnalyticsEvents({\n onActivate: createAndFireEventOnAtlaskit({\n action: 'selected',\n actionSubject: 'droplistItem',\n attributes: {\n componentName: 'droplistItem',\n packageName: packageName,\n packageVersion: packageVersion\n }\n })\n})(Item));","import styled from 'styled-components';\nimport { DN300, N300 } from '@atlaskit/theme/colors';\nimport { themed } from '@atlaskit/theme/components';\nimport { gridSize } from '@atlaskit/theme/constants';\nimport { multiply } from '@atlaskit/theme/math';\nexport default styled.div.withConfig({\n displayName: \"Group\",\n componentId: \"sc-1q26u8b-0\"\n})([\"\\n box-sizing: border-box;\\n display: block;\\n margin-top: \", \"px;\\n\\n &:first-child {\\n margin-top: 0;\\n }\\n\"], gridSize);\nexport var Heading = styled.div.withConfig({\n displayName: \"Group__Heading\",\n componentId: \"sc-1q26u8b-1\"\n})([\"\\n align-items: baseline;\\n color: \", \";\\n display: flex;\\n flex: 1 1 auto;\\n font-weight: normal;\\n font-size: 14px;\\n line-height: 1;\\n margin: 0;\\n padding: \", \"px \", \"px;\\n\"], themed({\n light: N300,\n dark: DN300\n}), gridSize, multiply(gridSize, 1.5));\nexport var HeadingAfter = styled.div.withConfig({\n displayName: \"Group__HeadingAfter\",\n componentId: \"sc-1q26u8b-2\"\n})([\"\\n flex: 0 0 auto;\\n\"]);\nexport var HeadingText = styled.div.withConfig({\n displayName: \"Group__HeadingText\",\n componentId: \"sc-1q26u8b-3\"\n})([\"\\n flex: 1 1 auto;\\n font-size: 12px;\\n text-transform: uppercase;\\n\"]);","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { PureComponent } from 'react';\nimport Group, { Heading, HeadingAfter, HeadingText } from '../styled/Group';\n\nvar DroplistGroup =\n/*#__PURE__*/\nfunction (_PureComponent) {\n _inherits(DroplistGroup, _PureComponent);\n\n function DroplistGroup() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, DroplistGroup);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DroplistGroup)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n ariaLabel: _this.props.heading\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n if (_this.props.heading || _this.props.elemAfter) {\n _this.setState({\n ariaLabel: _this.getAriaLabel()\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidUpdate\", function () {\n if (_this.props.heading || _this.props.elemAfter) {\n // eslint-disable-next-line react/no-did-update-set-state\n _this.setState({\n ariaLabel: _this.getAriaLabel()\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getAriaLabel\", function () {\n var _this$props = _this.props,\n elemAfter = _this$props.elemAfter,\n heading = _this$props.heading;\n var afterText = elemAfter && typeof elemAfter === 'string' ? elemAfter : _this.headingElement && _this.headingElement.textContent;\n return \"\".concat(heading || '', \" \").concat(afterText || '');\n });\n\n return _this;\n }\n\n _createClass(DroplistGroup, [{\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var _this$props2 = this.props,\n children = _this$props2.children,\n elemAfter = _this$props2.elemAfter,\n heading = _this$props2.heading;\n var ariaLabel = this.state.ariaLabel;\n return React.createElement(Group, {\n \"aria-label\": ariaLabel,\n role: \"group\"\n }, heading ? React.createElement(Heading, {\n \"aria-hidden\": \"true\",\n \"data-role\": \"droplistGroupHeading\"\n }, React.createElement(HeadingText, null, heading), elemAfter ? React.createElement(HeadingAfter, {\n innerRef: function innerRef(r) {\n _this2.headingElement = r;\n }\n }, elemAfter) : null) : null, children);\n }\n }]);\n\n return DroplistGroup;\n}(PureComponent);\n\nDroplistGroup.displayName = 'Group';\nexport default DroplistGroup;","import React from 'react';\nimport styled from 'styled-components';\nimport ScrollLock from 'react-scrolllock';\nvar Blanket = styled.div.withConfig({\n displayName: \"ScrollBlock__Blanket\",\n componentId: \"sc-1xiww8k-0\"\n})([\"\\n position: fixed;\\n top: 0;\\n left: 0;\\n right: 0;\\n bottom: 0;\\n background: transparent;\\n\"]);\nexport default function ScrollBlock() {\n return React.createElement(Blanket, null, React.createElement(ScrollLock, null));\n}","var positionMap = {\n 'top left': {\n position: 'top-start',\n animation: 'top'\n },\n 'top center': {\n position: 'top',\n animation: 'top'\n },\n 'top right': {\n position: 'top-end',\n animation: 'top'\n },\n 'right top': {\n position: 'right-start',\n animation: 'right'\n },\n 'right middle': {\n position: 'right',\n animation: 'right'\n },\n 'right bottom': {\n position: 'right-end',\n animation: 'right'\n },\n 'bottom left': {\n position: 'bottom-start',\n animation: 'bottom'\n },\n 'bottom center': {\n position: 'bottom',\n animation: 'bottom'\n },\n 'bottom right': {\n position: 'bottom-end',\n animation: 'bottom'\n },\n 'left top': {\n position: 'left-start',\n animation: 'left'\n },\n 'left middle': {\n position: 'left',\n animation: 'left'\n },\n 'left bottom': {\n position: 'left-end',\n animation: 'left'\n }\n};\nexport var POSITION_ATTRIBUTE_ENUM = {\n values: ['top left', 'top center', 'top right', 'right top', 'right middle', 'right bottom', 'bottom left', 'bottom center', 'bottom right', 'left top', 'left middle', 'left bottom'],\n default: 'right middle'\n};\n\nfunction positionToPopper(position) {\n return position && positionMap[position] ? positionMap[position].position : null;\n}\n/* Convert the autoFlip property into the array format that Popper expects.\n * The first item must not include the edge-position variation, or Popper will not understand it.\n */\n\n\nexport function getFlipBehavior(props) {\n return props.position && Array.isArray(props.autoFlip) ? [props.position.split(' ')[0]].concat(props.autoFlip) : null;\n}\nexport function positionPropToPopperPosition(position) {\n return positionToPopper(position) || positionMap[POSITION_ATTRIBUTE_ENUM.default].position;\n}","import styled from 'styled-components';\nexport default styled.div.withConfig({\n displayName: \"styledContentContainer\",\n componentId: \"p0j3f7-0\"\n})([\"\\n [data-role='droplistContent'] {\\n \", \";\\n }\\n\"], function (_ref) {\n var maxHeight = _ref.maxHeight;\n return maxHeight ? \"max-height: \".concat(maxHeight, \"px\") : '';\n});","import _objectSpread from \"@babel/runtime/helpers/objectSpread\";\nimport _typeof from \"@babel/runtime/helpers/typeof\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { Component } from 'react';\nimport styled from 'styled-components';\nimport rafSchedule from 'raf-schd';\nimport Popper from 'popper.js'; // eslint-disable-line import/extensions\n\nimport ScrollBlock from './internal/ScrollBlock';\nimport { getFlipBehavior, positionPropToPopperPosition } from './internal/helpers';\nimport ContentContainer from '../styledContentContainer'; // We create a dummy target when making the menu fixed so that we can force popper.js to use fixed positioning\n// without affecting child layout of the actual target since children of fixed position elements can't use percentage\n// heights/widths.\n\nvar FixedTarget = styled.div.withConfig({\n displayName: \"Layer__FixedTarget\",\n componentId: \"qunuuz-0\"\n})([\"\\n \", \";\\n\"], function (_ref) {\n var fixedOffset = _ref.fixedOffset,\n targetRef = _ref.targetRef;\n\n if (fixedOffset && targetRef) {\n var actualTarget = targetRef.firstChild;\n var rect = actualTarget.getBoundingClientRect();\n return \"\\n position: fixed;\\n top: \".concat(fixedOffset.top, \"px;\\n left: \").concat(fixedOffset.left, \"px;\\n height: \").concat(rect.height, \"px;\\n width: \").concat(rect.width, \"px;\\n z-index: -1;\\n \");\n }\n\n return 'display: none;';\n});\n\nif (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('@atlaskit/layer has been deprecated. It is an internal component and should not be used directly.');\n}\n\nvar Layer =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(Layer, _Component);\n\n // working with extract-react-types\n function Layer(props) {\n var _this;\n\n _classCallCheck(this, Layer);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(Layer).call(this, props));\n\n _defineProperty(_assertThisInitialized(_this), \"popper\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"targetRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"contentRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"fixedRef\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"extractStyles\", function (state) {\n if (state) {\n var popperHeight = state.offsets.popper.height;\n var left = Math.round(state.offsets.popper.left); // The offset position is sometimes an object and sometimes just a string...\n\n var cssPosition = _typeof(state.offsets.popper.position) === 'object' ? state.offsets.popper.position.position : state.offsets.popper.position;\n\n var top = _this.fixPositionTopUnderflow(state.offsets.popper.top, cssPosition);\n\n var originalHeight = _this.state.originalHeight || popperHeight;\n\n var maxHeight = _this.calculateMaxHeight(originalHeight, popperHeight, top, cssPosition);\n\n _this.setState({\n // position: fixed or absolute\n cssPosition: cssPosition,\n hasExtractedStyles: true,\n transform: \"translate3d(\".concat(left, \"px, \").concat(top, \"px, 0px)\"),\n // state.flipped is either true or undefined\n flipped: !!state.flipped,\n actualPosition: state.position,\n originalPosition: state.originalPosition,\n originalHeight: originalHeight,\n maxHeight: maxHeight\n });\n }\n });\n\n _this.state = {\n hasExtractedStyles: false,\n position: null,\n transform: null,\n flipped: false,\n actualPosition: null,\n // We set these default offsets to prevent a flash of popper content in the wrong position\n // which can cause incorrect height calculations. Popper will calculate these values\n offsets: {\n popper: {\n left: -9999,\n top: -9999\n }\n },\n originalPosition: null,\n // fix Safari parent width: https://product-fabric.atlassian.net/browse/ED-1784\n cssPosition: 'absolute',\n originalHeight: null,\n maxHeight: null,\n fixedOffset: null\n };\n _this.extractStyles = rafSchedule(_this.extractStyles.bind(_assertThisInitialized(_this)));\n return _this;\n }\n\n _createClass(Layer, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n this.applyPopper(this.props);\n this.calculateFixedOffset(this.props);\n }\n }, {\n key: \"UNSAFE_componentWillReceiveProps\",\n value: function UNSAFE_componentWillReceiveProps(nextProps) {\n this.applyPopper(nextProps);\n this.calculateFixedOffset(nextProps);\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate(prevProps, prevState) {\n var _this$props = this.props,\n onFlippedChange = _this$props.onFlippedChange,\n onPositioned = _this$props.onPositioned;\n var _this$state = this.state,\n flipped = _this$state.flipped,\n actualPosition = _this$state.actualPosition,\n originalPosition = _this$state.originalPosition,\n hasExtractedStyles = _this$state.hasExtractedStyles;\n\n if (prevState.flipped !== flipped && onFlippedChange) {\n onFlippedChange({\n flipped: flipped,\n actualPosition: actualPosition,\n originalPosition: originalPosition\n });\n } // This flag is set the first time the position is calculated from Popper and applied to the content\n\n\n if (!prevState.hasExtractedStyles && hasExtractedStyles && onPositioned) {\n onPositioned();\n }\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n this.extractStyles.cancel();\n\n if (this.popper) {\n this.popper.destroy();\n }\n }\n /* Calculate the max height of the popper if it's height is greater than the viewport to prevent\n * the bottom of the popper not being viewable.\n * Only works if the popper uses viewport as the boundary and has a fixed position ancestor.\n */\n\n }, {\n key: \"calculateMaxHeight\",\n value: function calculateMaxHeight(originalHeight, currentHeight, positionTop, cssPosition) {\n var DocumentElementClientHeight = 0;\n\n if (document.documentElement) {\n DocumentElementClientHeight = document.documentElement.clientHeight;\n }\n\n if (cssPosition !== 'fixed' || this.props.boundariesElement !== 'viewport') {\n return null;\n }\n\n var viewportHeight = Math.max(DocumentElementClientHeight, window.innerHeight || 0);\n return viewportHeight < originalHeight && currentHeight + positionTop >= viewportHeight - 50 ? // allow some spacing either side of viewport height\n viewportHeight - 12 : null;\n }\n /* Popper may return either a fixed or absolute position which would be applied to the\n * content style. In order to overcome clipping issues for overflow containing blocks when\n * the position is absolute, we create a fixed position wrapper.\n */\n\n }, {\n key: \"calculateFixedOffset\",\n value: function calculateFixedOffset(props) {\n var isAlwaysFixed = props.isAlwaysFixed;\n\n if (isAlwaysFixed && this.targetRef) {\n var actualTarget = this.targetRef.firstChild;\n this.setState({\n fixedOffset: {\n top: actualTarget.getBoundingClientRect().top,\n left: actualTarget.getBoundingClientRect().left\n }\n });\n } else if (!isAlwaysFixed && this.state.fixedOffset !== null) {\n this.setState({\n fixedOffset: null\n });\n }\n }\n /* Clamp fixed position to the window for fixed position poppers that flow off the top of the\n * window.\n * A fixed position popper is a popper who has an ancestor with position: fixed.\n *\n * It is too difficult to fix this for non-fixed position poppers without re-implementing popper's\n * offset functionality or fixing the issue upstream.\n */\n // eslint-disable-next-line class-methods-use-this\n\n }, {\n key: \"fixPositionTopUnderflow\",\n value: function fixPositionTopUnderflow(popperTop, cssPosition) {\n return popperTop >= 0 || cssPosition !== 'fixed' ? Math.round(popperTop) : 0;\n }\n }, {\n key: \"applyPopper\",\n value: function applyPopper(props) {\n if (!this.fixedRef || !this.targetRef || !this.contentRef) {\n return;\n }\n\n if (this.popper) {\n this.popper.destroy();\n } // \"new Popper(...)\" operation is very expensive when called on virtual DOM.\n // This condition reduces the number of calls so we can run our tests faster\n // (time was reduced from 100s to 13s).\n\n\n if (!props.content) {\n return;\n } // we wrap our target in a div so that we can safely get a reference to it, but we pass the\n // actual target to popper\n\n\n var actualTarget = props.isAlwaysFixed ? this.fixedRef : this.targetRef.firstChild;\n var popperOpts = {\n placement: positionPropToPopperPosition(props.position),\n onCreate: this.extractStyles,\n onUpdate: this.extractStyles,\n modifiers: {\n applyStyle: {\n enabled: false\n },\n hide: {\n enabled: false\n },\n offset: {\n enabled: true,\n offset: this.props.offset\n },\n flip: {\n enabled: !!this.props.autoFlip,\n flipVariations: true,\n boundariesElement: this.props.boundariesElement,\n padding: 0 // leave 0 pixels between popper and the boundariesElement\n\n },\n preventOverflow: {\n enabled: !!this.props.autoFlip,\n escapeWithReference: !(this.props.boundariesElement === 'scrollParent')\n }\n },\n positionFixed: props.isAlwaysFixed\n };\n var flipBehavior = getFlipBehavior(props);\n\n if (flipBehavior) {\n popperOpts.modifiers.flip.behavior = flipBehavior;\n }\n\n this.popper = new Popper(actualTarget, this.contentRef, popperOpts);\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var _this$props2 = this.props,\n zIndex = _this$props2.zIndex,\n lockScroll = _this$props2.lockScroll;\n var _this$state2 = this.state,\n cssPosition = _this$state2.cssPosition,\n transform = _this$state2.transform,\n hasExtractedStyles = _this$state2.hasExtractedStyles,\n maxHeight = _this$state2.maxHeight,\n fixedOffset = _this$state2.fixedOffset;\n var opacity = hasExtractedStyles ? {} : {\n opacity: 0\n };\n return React.createElement(\"div\", null, React.createElement(\"div\", {\n ref: function ref(_ref2) {\n _this2.targetRef = _ref2;\n }\n }, this.props.children), React.createElement(FixedTarget, {\n targetRef: this.targetRef,\n fixedOffset: fixedOffset\n }, React.createElement(\"div\", {\n style: {\n height: '100%',\n width: '100%'\n },\n ref: function ref(_ref3) {\n _this2.fixedRef = _ref3;\n }\n })), lockScroll && React.createElement(ScrollBlock, null), React.createElement(ContentContainer, {\n maxHeight: maxHeight\n }, React.createElement(\"div\", {\n ref: function ref(_ref4) {\n _this2.contentRef = _ref4;\n },\n style: _objectSpread({\n top: 0,\n left: 0,\n position: cssPosition,\n transform: transform,\n zIndex: zIndex\n }, opacity)\n }, this.props.content)));\n }\n }]);\n\n return Layer;\n}(Component);\n\n_defineProperty(Layer, \"defaultProps\", {\n autoFlip: true,\n boundariesElement: 'viewport',\n children: null,\n content: null,\n offset: '0, 0',\n onFlippedChange: function onFlippedChange() {},\n position: 'right middle',\n zIndex: 400,\n lockScroll: false,\n isAlwaysFixed: false,\n onPositioned: function onPositioned() {}\n});\n\nexport { Layer as default };","\n\nexport default (function (fn) {\n var lastArgs = [];\n var frameId = null;\n\n var wrapperFn = function wrapperFn() {\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n lastArgs = args;\n\n if (frameId) {\n return frameId;\n }\n\n frameId = requestAnimationFrame(function () {\n frameId = null;\n fn.apply(undefined, lastArgs);\n });\n\n return frameId;\n };\n\n wrapperFn.cancel = function () {\n if (!frameId) {\n return;\n }\n\n cancelAnimationFrame(frameId);\n frameId = null;\n };\n\n var resultFn = wrapperFn;\n\n return resultFn;\n});","import { createTheme } from '../utils/createTheme';\n// Create default global light theme\nexport default createTheme(() => ({\n mode: 'light',\n}));\n//# sourceMappingURL=Theme.js.map","import React, { createContext, useContext, useCallback, } from 'react';\n/*\ncreateTheme is used to create a set of Providers and Consumers for theming components.\n- Takes a default theme function; this theme function gets a set of props, and returns tokens\n based on those props. An example of this default theme function is one that produces the standard\n appearance of the component\n- Returns two things - a Provider that allow for additional themes to be applied, and a Consumer\n that can get the current theme and fetch it.\n*/\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n /* Internally, Theme uses React Context, with internal providers and consumers.\n The React Context passes only a function that gets props, and turns them into tokens. This\n function gets mixed as more Providers with their own themes are added. This mixed function\n is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n the theme. */\n const ThemeContext = createContext(defaultGetTokens);\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const { children, ...themeProps } = props;\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = themeFn(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return React.createElement(React.Fragment, null, children(tokens));\n }\n /* The Theme Provider takes regular nodes as its child, but also takes a *theme function*\n - The theme function takes a set of props, as well as a function (getTokens) that can\n turn props into tokens.\n - The getTokens function isn't called immediately - instead the props are passed\n through a mix of parent theming functions\n Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback((themeProps) => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return (React.createElement(ThemeContext.Provider, { value: mixedFn }, props.children));\n }\n return { Consumer, Provider };\n}\n//# sourceMappingURL=createTheme.js.map","export const presetSizes = {\n xsmall: 8,\n small: 16,\n medium: 24,\n large: 48,\n xlarge: 96,\n};\n//# sourceMappingURL=constants.js.map","/** @jsx jsx */\nimport React from 'react';\nimport { css, jsx, keyframes } from '@emotion/core';\nimport { DN500, DN900, N0, N500 } from '@atlaskit/theme/colors';\nimport GlobalTheme from '@atlaskit/theme/components';\nimport { presetSizes } from './constants';\nconst rotate = keyframes `\n to { transform: rotate(360deg); }\n`;\n// There are three parts to the load in animation:\n// 1. Fade in\n// 2. Accelerated spin\n// 3. Stretch the spinner line\nconst loadIn = keyframes `\n from {\n transform: rotate(50deg);\n opacity: 0;\n stroke-dashoffset: 60;\n }\n to {\n transform: rotate(230deg);\n opacity: 1;\n stroke-dashoffset: 50;\n }\n`;\nfunction getStrokeColor({ mode, appearance, }) {\n if (mode === 'light') {\n return appearance === 'inherit' ? N500 : N0;\n }\n // Dark mode: colours provided by Jake Miller\n return appearance === 'inherit' ? DN900 : DN500;\n}\nexport default React.memo(React.forwardRef(function Spinner({ testId, appearance = 'inherit', delay = 0, size: providedSize = 'medium', }, ref) {\n const size = typeof providedSize === 'number'\n ? providedSize\n : presetSizes[providedSize];\n return (jsx(GlobalTheme.Consumer, null, (tokens) => {\n const strokeColor = getStrokeColor({\n mode: tokens.mode,\n appearance,\n });\n // The Spinner animation uses a combination of two\n // css animations on two separate elements.\n return (jsx(\"svg\", { focusable: \"false\", height: size, width: size, viewBox: \"0 0 16 16\", xmlns: \"http://www.w3.org/2000/svg\", \"data-testid\": testId, ref: ref, css: css `\n /* align better inline with text */\n vertical-align: middle;\n /* We are going to animate this in */\n opacity: 0;\n\n animation: ${loadIn} 1s ease-in-out;\n /* When the animation completes, stay at the last frame of the animation */\n animation-fill-mode: forwards;\n animation-delay: ${delay}ms;\n ` },\n jsx(\"circle\", { cx: \"8\", cy: \"8\", r: \"7\", css: css `\n fill: none;\n stroke: ${strokeColor};\n stroke-width: 1.5;\n stroke-linecap: round;\n stroke-dasharray: 60;\n stroke-dashoffset: inherit;\n transform-origin: center;\n animation: ${rotate} 0.86s infinite;\n animation-delay: ${delay}ms;\n animation-timing-function: cubic-bezier(0.4, 0.15, 0.6, 0.85);\n ` })));\n }));\n}));\n//# sourceMappingURL=spinner.js.map","import styled, { css } from 'styled-components';\nimport { backgroundOnLayer, N50A, N60A } from '@atlaskit/theme/colors';\nimport { borderRadius, gridSize } from '@atlaskit/theme/constants';\nimport { divide, multiply } from '@atlaskit/theme/math';\n/* When dropdown contains more than 9 elements (droplist items, droplist groups),\n * it should have scroll and cut off half of the 10th item to indicate that there are more\n * items then are seen. This was previously calculated by mapping over children, but with\n * the current composed API it is simpler to just assume 9 items. */\n\nvar getMaxHeight = function getMaxHeight(_ref) {\n var isTall = _ref.isTall,\n maxHeight = _ref.maxHeight;\n if (maxHeight) return \"\".concat(maxHeight, \"px\");\n var heightWithoutPadding = 17;\n var verticalPadding = gridSize();\n var height = heightWithoutPadding + verticalPadding * 2;\n var defaultMaxHeight = 9.5 * height + verticalPadding / 2;\n return isTall ? '90vh' : \"\".concat(defaultMaxHeight, \"px\");\n};\n\nexport default styled.div.withConfig({\n displayName: \"Droplist\",\n componentId: \"sc-1z05y4v-0\"\n})([\"\\n display: inline-flex;\\n\\n \", \";\\n\"], function (props) {\n return props.fit && \"\\n display: block;\\n flex: 1 1 auto;\\n \";\n});\nvar backgroundColor = backgroundOnLayer;\nvar boxShadow = css([\"\\n box-shadow: 0 \", \"px \", \"px -\", \"px\\n \", \",\\n 0 0 1px \", \";\\n\"], divide(gridSize, 2), gridSize, divide(gridSize, 4), N50A, N60A);\nexport var Content = styled.div.withConfig({\n displayName: \"Droplist__Content\",\n componentId: \"sc-1z05y4v-1\"\n})([\"\\n background: \", \";\\n border-radius: \", \"px;\\n \", \";\\n box-sizing: border-box;\\n overflow: auto;\\n padding: \", \"px 0;\\n max-height: \", \";\\n\"], backgroundColor, borderRadius, boxShadow, divide(gridSize, 2), getMaxHeight);\nexport var SpinnerContainer = styled.div.withConfig({\n displayName: \"Droplist__SpinnerContainer\",\n componentId: \"sc-1z05y4v-2\"\n})([\"\\n display: flex;\\n justify-content: center;\\n min-width: \", \"px;\\n padding: \", \"px;\\n\"], multiply(gridSize, 20), multiply(gridSize, 2.5));\nexport var Trigger = styled.div.withConfig({\n displayName: \"Droplist__Trigger\",\n componentId: \"sc-1z05y4v-3\"\n})([\"\\n display: inline-flex;\\n transition-duration: 0.2s;\\n transition: box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38);\\n\\n \", \";\\n\"], function (props) {\n return props.fit && \"\\n box-sizing: border-box;\\n display: block;\\n \";\n});","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport { itemThemeNamespace } from '@atlaskit/item';\nimport * as colors from '@atlaskit/theme/colors';\nimport { themed } from '@atlaskit/theme/components';\nimport { gridSize } from '@atlaskit/theme/constants';\nimport { multiply } from '@atlaskit/theme/math';\nvar dropdownPadding = {\n bottom: gridSize,\n left: multiply(gridSize, 1.5),\n right: multiply(gridSize, 1.5),\n top: gridSize\n};\nvar droplistItemTheme = {\n padding: {\n default: dropdownPadding,\n compact: dropdownPadding\n },\n borderRadius: function borderRadius() {\n return 0;\n },\n default: {\n background: themed({\n light: colors.N0,\n dark: colors.DN50\n }),\n text: themed({\n light: colors.N800,\n dark: colors.DN600\n }),\n secondaryText: themed({\n light: colors.N200,\n dark: colors.DN300\n })\n },\n hover: {\n background: themed({\n light: colors.N20,\n dark: colors.DN70\n }),\n text: themed({\n light: colors.N800,\n dark: colors.DN600\n }),\n secondaryText: themed({\n light: colors.N200,\n dark: colors.DN300\n })\n },\n active: {\n background: themed({\n light: colors.B75,\n dark: colors.B75\n }),\n text: themed({\n light: colors.N800,\n dark: colors.B400\n }),\n secondaryText: themed({\n light: colors.N200,\n dark: colors.DN300\n })\n },\n selected: {\n background: 'transparent',\n text: themed({\n light: colors.N800,\n dark: colors.DN600\n }),\n secondaryText: themed({\n light: colors.N200,\n dark: colors.DN300\n })\n },\n disabled: {\n background: 'transparent',\n text: themed({\n light: colors.N70,\n dark: colors.DN80\n }),\n secondaryText: themed({\n light: colors.N50,\n dark: colors.DN70\n })\n },\n focus: {\n outline: themed({\n light: colors.B100,\n dark: colors.B75\n })\n }\n};\nexport default _defineProperty({}, itemThemeNamespace, droplistItemTheme);","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { ThemeProvider } from 'styled-components';\nimport { createAndFireEvent, withAnalyticsContext, withAnalyticsEvents } from '@atlaskit/analytics-next';\nimport Layer from '@atlaskit/layer';\nimport Spinner from '@atlaskit/spinner';\nimport { gridSize } from '@atlaskit/theme/constants';\nimport Wrapper, { Content, SpinnerContainer, Trigger } from '../styled/Droplist';\nimport itemTheme from '../theme/item-theme';\nimport { name as packageName, version as packageVersion } from '../version.json';\nvar halfFocusRing = 1;\nvar dropOffset = \"0, \".concat(gridSize(), \"px\");\n\nif (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('@atlaskit/droplist has been deprecated. It is an internal component and should not be used directly.');\n}\n\nvar Droplist =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(Droplist, _Component);\n\n function Droplist() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, Droplist);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(Droplist)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n _this.setContentWidth(); // We use a captured event here to avoid a radio or checkbox dropdown item firing its\n // click event first, which would cause a re-render of the element and prevent Droplist\n // from detecting the actual source of this original click event.\n\n\n document.addEventListener('click', _this.handleClickOutside, true);\n document.addEventListener('keydown', _this.handleEsc);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidUpdate\", function () {\n if (_this.props.isOpen) {\n _this.setContentWidth();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentWillUnmount\", function () {\n document.removeEventListener('click', _this.handleClickOutside, true);\n document.removeEventListener('keydown', _this.handleEsc);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"setContentWidth\", function () {\n var _assertThisInitialize = _assertThisInitialized(_this),\n dropContentRef = _assertThisInitialize.dropContentRef,\n triggerRef = _assertThisInitialize.triggerRef;\n\n var shouldFitContainer = _this.props.shouldFitContainer; // We need to manually set the content width to match the trigger width\n // if props.shouldFitContainer is true\n\n if (shouldFitContainer && dropContentRef && triggerRef) {\n dropContentRef.style.width = \"\".concat(triggerRef.offsetWidth - halfFocusRing * 2, \"px\");\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleEsc\", function (event) {\n if ((event.key === 'Escape' || event.key === 'Esc') && _this.props.isOpen) {\n _this.close(event);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClickOutside\", function (event) {\n if (_this.props.isOpen) {\n if (event.target instanceof Node) {\n // Rather than check for the target within the entire Droplist, we specify the trigger/content.\n // This aids with future effort in scroll-locking Droplist when isMenuFixed is enabled; the scroll\n // blanket which stretches to the viewport should not stop 'close' from being triggered.\n var withinTrigger = _this.triggerRef && _this.triggerRef.contains(event.target);\n\n var withinContent = _this.dropContentRef && _this.dropContentRef.contains(event.target);\n\n if (!withinTrigger && !withinContent) {\n _this.close(event);\n }\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"close\", function (event) {\n if (_this.props.onOpenChange) {\n _this.props.onOpenChange({\n isOpen: false,\n event: event\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleContentRef\", function (ref) {\n _this.dropContentRef = ref; // If the dropdown has just been opened, we focus on the containing element so the\n // user can tab to the first dropdown item. We will only receive this ref if isOpen\n // is true or null, so no need to check for truthiness here.\n\n if (ref) {\n ref.focus();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleTriggerRef\", function (ref) {\n _this.triggerRef = ref;\n });\n\n return _this;\n }\n\n _createClass(Droplist, [{\n key: \"getChildContext\",\n value: function getChildContext() {\n return {\n shouldAllowMultilineItems: this.props.shouldAllowMultilineItems\n };\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n appearance = _this$props.appearance,\n boundariesElement = _this$props.boundariesElement,\n children = _this$props.children,\n isLoading = _this$props.isLoading,\n isOpen = _this$props.isOpen,\n maxHeight = _this$props.maxHeight,\n onClick = _this$props.onClick,\n onKeyDown = _this$props.onKeyDown,\n position = _this$props.position,\n isMenuFixed = _this$props.isMenuFixed,\n shouldFitContainer = _this$props.shouldFitContainer,\n shouldFlip = _this$props.shouldFlip,\n trigger = _this$props.trigger,\n onPositioned = _this$props.onPositioned,\n testId = _this$props.testId;\n var layerContent = isOpen ? React.createElement(Content, {\n \"data-role\": \"droplistContent\",\n \"data-testid\": testId && \"\".concat(testId, \"--content\"),\n isTall: appearance === 'tall',\n innerRef: this.handleContentRef,\n maxHeight: maxHeight\n }, isLoading ? React.createElement(SpinnerContainer, null, React.createElement(Spinner, {\n size: \"small\"\n })) : React.createElement(ThemeProvider, {\n theme: itemTheme\n }, React.createElement(\"div\", null, children))) : null;\n return React.createElement(Wrapper, {\n fit: shouldFitContainer,\n onClick: onClick,\n onKeyDown: onKeyDown\n }, React.createElement(Layer, {\n autoFlip: shouldFlip,\n boundariesElement: boundariesElement,\n content: layerContent,\n offset: dropOffset,\n position: position,\n isAlwaysFixed: isOpen && isMenuFixed,\n onPositioned: onPositioned\n }, React.createElement(Trigger, {\n fit: shouldFitContainer,\n innerRef: this.handleTriggerRef\n }, trigger)));\n }\n }]);\n\n return Droplist;\n}(Component);\n\n_defineProperty(Droplist, \"defaultProps\", {\n appearance: 'default',\n boundariesElement: 'viewport',\n children: null,\n isLoading: false,\n isOpen: false,\n onClick: function onClick() {},\n onKeyDown: function onKeyDown() {},\n onOpenChange: function onOpenChange() {},\n position: 'bottom left',\n isMenuFixed: false,\n shouldAllowMultilineItems: false,\n shouldFitContainer: false,\n shouldFlip: true,\n trigger: null,\n onPositioned: function onPositioned() {}\n});\n\n_defineProperty(Droplist, \"childContextTypes\", {\n shouldAllowMultilineItems: PropTypes.bool\n});\n\nexport { Droplist as DroplistWithoutAnalytics };\nvar createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');\nexport default withAnalyticsContext({\n componentName: 'droplist',\n packageName: packageName,\n packageVersion: packageVersion\n})(withAnalyticsEvents({\n onOpenChange: createAndFireEventOnAtlaskit({\n action: 'toggled',\n actionSubject: 'droplist',\n attributes: {\n componentName: 'droplist',\n packageName: packageName,\n packageVersion: packageVersion\n }\n })\n})(Droplist));","var prefix = function prefix(key) {\n return \"@atlaskit-private-do-not-use/dropdown-menu:\".concat(key);\n};\n\nexport var focusManagerContext = prefix('focus-manager');\nexport var selectionCacheContext = prefix('selection-cache');\nexport var selectionManagerContext = prefix('selection-manager');\nexport var clickManagerContext = prefix('click-manager');","export var KEY_UP = 'ArrowUp';\nexport var KEY_DOWN = 'ArrowDown';\nexport var KEY_SPACE = ' ';\nexport var KEY_ENTER = 'Enter';\nexport var KEY_TAB = 'Tab';\nexport var KEY_ESC = 'Escape';","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { focusManagerContext } from '../../util/contextNamespace';\nimport { KEY_DOWN, KEY_UP, KEY_TAB } from '../../util/keys';\n\nvar DropdownItemFocusManager =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(DropdownItemFocusManager, _Component);\n\n function DropdownItemFocusManager() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, DropdownItemFocusManager);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DropdownItemFocusManager)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"registeredItems\", []);\n\n _defineProperty(_assertThisInitialized(_this), \"focusedItemId\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemRegistered\", function (itemId, itemNode) {\n _this.registeredItems.push({\n itemId: itemId,\n itemNode: itemNode\n });\n\n if (_this.props.autoFocus && _this.registeredItems.length === 1) {\n _this.focusedItemId = itemId;\n itemNode.focus();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemDeregistered\", function (itemId) {\n _this.registeredItems = _this.registeredItems.filter(function (item) {\n return item.itemId !== itemId;\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemFocused\", function (itemId) {\n _this.focusedItemId = itemId;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemUpdated\", function (itemId, itemNode) {\n var matchingIndex = -1;\n\n for (var i = 0; i < _this.registeredItems.length; i++) {\n if (_this.registeredItems[i].itemId === itemId) {\n matchingIndex = i;\n break;\n }\n }\n\n if (matchingIndex === -1) {\n _this.handleItemRegistered(itemId, itemNode);\n\n return;\n }\n\n _this.registeredItems[matchingIndex].itemNode = itemNode;\n\n if (_this.focusedItemIndex() === matchingIndex) {\n itemNode.focus();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"focusedItemIndex\", function () {\n var _assertThisInitialize = _assertThisInitialized(_this),\n focusedItemId = _assertThisInitialize.focusedItemId,\n registeredItems = _assertThisInitialize.registeredItems;\n\n for (var i = 0; i < registeredItems.length; i++) {\n if (registeredItems[i].itemId === focusedItemId) {\n return i;\n }\n }\n\n return -1;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleKeyboard\", function (event) {\n var key = event.key,\n shiftKey = event.shiftKey;\n\n var focusedItemIndex = _this.focusedItemIndex();\n\n if (key === KEY_UP || key === KEY_DOWN) {\n // We prevent default here to avoid page scrolling when up/down\n // pressed while dropdown is focused.\n event.preventDefault();\n\n if (focusedItemIndex < 0) {\n return;\n }\n\n var nextItemIndex = key === KEY_UP ? Math.max(0, focusedItemIndex - 1) : Math.min(_this.registeredItems.length - 1, focusedItemIndex + 1);\n\n _this.registeredItems[nextItemIndex].itemNode.focus();\n }\n\n if (key === KEY_TAB) {\n if (!shiftKey && focusedItemIndex === _this.registeredItems.length - 1) {\n if (_this.props.close) _this.props.close({\n event: event,\n source: 'keydown'\n });\n }\n\n if (shiftKey && focusedItemIndex === 0) {\n if (_this.props.close) _this.props.close({\n event: event,\n source: 'keydown'\n });\n }\n }\n });\n\n return _this;\n }\n\n _createClass(DropdownItemFocusManager, [{\n key: \"getChildContext\",\n value: function getChildContext() {\n return _defineProperty({}, focusManagerContext, {\n itemFocused: this.handleItemFocused,\n registerItem: this.handleItemRegistered,\n deregisterItem: this.handleItemDeregistered,\n updateItem: this.handleItemUpdated\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n return React.createElement(\"div\", {\n onKeyDown: this.handleKeyboard\n }, this.props.children);\n }\n }]);\n\n return DropdownItemFocusManager;\n}(Component);\n\n_defineProperty(DropdownItemFocusManager, \"childContextTypes\", _defineProperty({}, focusManagerContext, PropTypes.object));\n\nexport { DropdownItemFocusManager as default };","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { clickManagerContext } from '../../util/contextNamespace';\n\nvar DropdownItemClickManager =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(DropdownItemClickManager, _Component);\n\n function DropdownItemClickManager() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, DropdownItemClickManager);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DropdownItemClickManager)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemClicked\", function (event) {\n _this.props.onItemClicked(event);\n });\n\n return _this;\n }\n\n _createClass(DropdownItemClickManager, [{\n key: \"getChildContext\",\n value: function getChildContext() {\n return _defineProperty({}, clickManagerContext, {\n itemClicked: this.handleItemClicked\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n return this.props.children;\n }\n }]);\n\n return DropdownItemClickManager;\n}(Component);\n\n_defineProperty(DropdownItemClickManager, \"childContextTypes\", _defineProperty({}, clickManagerContext, PropTypes.object));\n\nexport { DropdownItemClickManager as default };","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport find from 'array-find';\nimport { selectionCacheContext } from '../../util/contextNamespace';\n\nvar isItemInList = function isItemInList(itemList, itemId, groupId) {\n return Boolean(find(itemList, function (item) {\n return item.id === itemId && item.groupId === groupId;\n }));\n};\n\nvar DropdownItemSelectionCache =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(DropdownItemSelectionCache, _Component);\n\n function DropdownItemSelectionCache() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, DropdownItemSelectionCache);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DropdownItemSelectionCache)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n lastCacheUpdate: 0\n });\n\n _defineProperty(_assertThisInitialized(_this), \"selectedItems\", []);\n\n _defineProperty(_assertThisInitialized(_this), \"alreadyDefaultedItems\", []);\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemSelectionsChanged\", function (groupId, newGroupSelections) {\n var newSelectedItems = [].concat(_toConsumableArray(_this.selectedItems.filter(function (item) {\n return item.groupId !== groupId;\n })), _toConsumableArray(newGroupSelections));\n _this.selectedItems = newSelectedItems; // We store selectedItems in an instance variable (this.selectedItems) instead of state,\n // because if multiple children update the cache at the same time it causes unexpected\n // behaviour due to the asynchronous behaviour of setState. So we need to trigger setState\n // with a different value to cause the children to be updated with their new selection values.\n\n _this.setState({\n lastCacheUpdate: Date.now()\n });\n });\n\n return _this;\n }\n\n _createClass(DropdownItemSelectionCache, [{\n key: \"getChildContext\",\n // eslint-disable-line react/sort-comp\n value: function getChildContext() {\n var _this2 = this;\n\n return _defineProperty({}, selectionCacheContext, {\n // This function returns true/false describing whether the supplied navigation item\n // (which must have a unique item and group ID) is currently selected - this is used\n // by radio and checkbox dropdown items to retreive their 'selected' state when they\n // re-mount, which happens when the dropdown is closed and then re-opened.\n isItemSelected: function isItemSelected(groupId, itemId) {\n return isItemInList(_this2.selectedItems, itemId, groupId);\n },\n itemsInGroup: function itemsInGroup(groupId) {\n return _this2.selectedItems.filter(function (item) {\n return item.groupId === groupId;\n });\n },\n itemSelectionsChanged: this.handleItemSelectionsChanged,\n hasItemAlreadyHadDefaultSelectedApplied: function hasItemAlreadyHadDefaultSelectedApplied(groupId, itemId) {\n return isItemInList(_this2.alreadyDefaultedItems, itemId, groupId);\n },\n markItemAsDefaultApplied: function markItemAsDefaultApplied(groupId, itemId) {\n _this2.alreadyDefaultedItems.push({\n id: itemId,\n groupId: groupId\n });\n }\n });\n }\n }, {\n key: \"render\",\n value: function render() {\n return React.createElement(\"div\", null, this.props.children);\n }\n }]);\n\n return DropdownItemSelectionCache;\n}(Component);\n\n_defineProperty(DropdownItemSelectionCache, \"childContextTypes\", _defineProperty({}, selectionCacheContext, PropTypes.shape({\n isItemSelected: PropTypes.func,\n itemsInGroup: PropTypes.func,\n itemSelectionsChanged: PropTypes.func\n})));\n\nexport { DropdownItemSelectionCache as default };","import styled from 'styled-components';\nexport default styled.div.withConfig({\n displayName: \"WidthConstrainer\",\n componentId: \"sc-15doeus-0\"\n})([\"\\n \", \";\\n\"], function (_ref) {\n var shouldFitContainer = _ref.shouldFitContainer;\n return shouldFitContainer ? '' : 'max-width: 300px;';\n});","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectSpread from \"@babel/runtime/helpers/objectSpread\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/no-array-index-key */\nimport React, { Component, Fragment } from 'react';\nimport { findDOMNode } from 'react-dom';\nimport { uid } from 'react-uid';\nimport { withAnalyticsContext, withAnalyticsEvents, createAndFireEvent } from '@atlaskit/analytics-next';\nimport Button from '@atlaskit/button';\nimport Droplist, { Item, Group } from '@atlaskit/droplist';\nimport ExpandIcon from '@atlaskit/icon/glyph/chevron-down';\nimport { name as packageName, version as packageVersion } from '../version.json';\nimport DropdownItemFocusManager from './context/DropdownItemFocusManager';\nimport DropdownItemClickManager from './context/DropdownItemClickManager';\nimport DropdownItemSelectionCache from './context/DropdownItemSelectionCache';\nimport WidthConstrainer from '../styled/WidthConstrainer';\nimport { KEY_DOWN, KEY_SPACE, KEY_ENTER } from '../util/keys';\n\nvar DropdownMenuStateless =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(DropdownMenuStateless, _Component);\n\n function DropdownMenuStateless() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, DropdownMenuStateless);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DropdownMenuStateless)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"domItemsList\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"focusedItem\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"triggerContainer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"sourceOfIsOpen\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"dropdownListPositioned\", false);\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n id: uid({\n id: _this.constructor.name\n }),\n autoFocusDropdownItems: false\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidMount\", function () {\n if (_this.isUsingDeprecatedAPI()) {\n if (process.env.NODE_ENV !== 'test' && process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.log('DropdownMenu.items is deprecated. Please switch to the declarative API.');\n }\n\n if (_this.domItemsList) {\n _this.focusFirstItem();\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"componentDidUpdate\", function (prevProp) {\n if (_this.isUsingDeprecatedAPI() && _this.props.isOpen && !prevProp.isOpen) {\n _this.focusFirstItem();\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getNextFocusable\", function (indexItem, available) {\n if (!_this.domItemsList) {\n return null;\n }\n\n var currentItem = typeof indexItem !== 'number' ? -1 : indexItem;\n var latestAvailable = typeof available !== 'number' ? currentItem : available;\n\n if (currentItem < _this.domItemsList.length - 1) {\n currentItem++;\n\n if (_this.domItemsList[currentItem].getAttribute('aria-hidden') !== 'true') {\n return currentItem;\n }\n\n return _this.getNextFocusable(currentItem, latestAvailable);\n }\n\n return latestAvailable;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"getPrevFocusable\", function (indexItem, available) {\n if (!_this.domItemsList) {\n return null;\n }\n\n var currentItem = typeof indexItem !== 'number' ? -1 : indexItem;\n var latestAvailable = typeof available !== 'number' ? currentItem : available;\n\n if (currentItem && currentItem > 0) {\n currentItem--;\n\n if (_this.domItemsList[currentItem].getAttribute('aria-hidden') !== 'true') {\n return currentItem;\n }\n\n return _this.getPrevFocusable(currentItem, latestAvailable);\n }\n\n return latestAvailable || currentItem;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"focusFirstItem\", function () {\n if (_this.sourceOfIsOpen === 'keydown') {\n _this.focusItem(_this.getNextFocusable());\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"focusNextItem\", function () {\n _this.focusItem(_this.getNextFocusable(_this.focusedItem));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"focusPreviousItem\", function () {\n _this.focusItem(_this.getPrevFocusable(_this.focusedItem));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"focusItem\", function (index) {\n if (!_this.domItemsList || !index) {\n return;\n }\n\n _this.focusedItem = index;\n\n _this.domItemsList[_this.focusedItem].focus();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"isTargetChildItem\", function (target) {\n if (!target) return false;\n var isDroplistItem = target.getAttribute('data-role') === 'droplistItem'; // eslint-disable-next-line react/no-find-dom-node\n\n var thisDom = findDOMNode(_assertThisInitialized(_this));\n return isDroplistItem && thisDom ? thisDom.contains(target) : false;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleKeyboardInteractionForClosed\", function (event) {\n if (_this.props.isOpen) {\n return;\n }\n\n switch (event.key) {\n case KEY_DOWN:\n case KEY_SPACE:\n case KEY_ENTER:\n event.preventDefault();\n\n _this.open({\n event: event,\n source: 'keydown'\n });\n\n break;\n\n default:\n break;\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleKeyboardInteractionsDeprecated\", function (event) {\n // KeyboardEvent.target is typed as an EventTarget but we need to access methods on it which\n // are specific to Element. Due limitations of the HTML spec flow doesn't know that an\n // EventTarget can have these methods, so we cast it to Element through Object. This is the\n // safest thing we can do in this situation.\n // https://flow.org/en/docs/types/casting/#toc-type-casting-through-any\n var target = event.target;\n\n if (_this.props.isOpen) {\n if (_this.isTargetChildItem(target)) {\n switch (event.key) {\n case 'ArrowUp':\n event.preventDefault();\n\n _this.focusPreviousItem();\n\n break;\n\n case 'ArrowDown':\n event.preventDefault();\n\n _this.focusNextItem();\n\n break;\n\n case 'Tab':\n event.preventDefault();\n\n _this.close({\n event: event\n });\n\n break;\n\n default:\n break;\n }\n } else if (event.key === 'ArrowDown') {\n _this.sourceOfIsOpen = 'keydown';\n\n _this.focusFirstItem();\n } else if (event.key === 'Tab') {\n _this.close({\n event: event\n });\n }\n } else {\n switch (event.key) {\n case KEY_DOWN:\n case KEY_SPACE:\n case KEY_ENTER:\n event.preventDefault();\n\n _this.open({\n event: event,\n source: 'keydown'\n });\n\n break;\n\n default:\n break;\n }\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"domMenuContainer\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"handleClickDeprecated\", function (event) {\n var menuContainer = _this.domMenuContainer; // Casting target to Element. See comment in `handleKeyboardInteractionsDeprecated`.\n\n var target = event.target;\n\n if (!menuContainer || menuContainer && !menuContainer.contains(target)) {\n _this.toggle({\n source: 'click',\n event: event\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"isUsingDeprecatedAPI\", function () {\n return Boolean(_this.props.items.length);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClick\", function (event) {\n // For any clicks we don't want autofocus\n _this.setState({\n autoFocusDropdownItems: false\n });\n\n if (_this.isUsingDeprecatedAPI()) {\n _this.handleClickDeprecated(event);\n\n return;\n }\n\n var _assertThisInitialize = _assertThisInitialized(_this),\n triggerContainer = _assertThisInitialize.triggerContainer; // Casting target to Element. See comment in `handleKeyboardInteractionsDeprecated`.\n\n\n var target = event.target;\n\n if (triggerContainer && triggerContainer.contains(target) && // $FlowFixMe - disabled is not in Element\n target.disabled !== true) {\n var isOpen = _this.props.isOpen;\n _this.sourceOfIsOpen = 'mouse';\n\n _this.props.onOpenChange({\n isOpen: !isOpen,\n event: event\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"triggerContent\", function () {\n var _this$props = _this.props,\n children = _this$props.children,\n trigger = _this$props.trigger,\n isOpen = _this$props.isOpen,\n triggerButtonProps = _this$props.triggerButtonProps,\n triggerType = _this$props.triggerType,\n testId = _this$props.testId;\n var insideTriggerContent = _this.isUsingDeprecatedAPI() ? children : trigger;\n\n if (triggerType !== 'button') {\n return insideTriggerContent;\n }\n\n var triggerProps = _objectSpread({}, triggerButtonProps);\n\n var defaultButtonProps = {\n 'aria-controls': _this.state.id,\n 'aria-expanded': isOpen,\n 'aria-haspopup': true,\n isSelected: isOpen\n };\n\n if (!triggerProps.iconAfter && !triggerProps.iconBefore) {\n triggerProps.iconAfter = React.createElement(ExpandIcon, {\n size: \"medium\",\n label: \"\"\n });\n }\n\n return React.createElement(Button, _extends({}, defaultButtonProps, triggerProps, {\n testId: testId && \"\".concat(testId, \"--trigger\")\n }), insideTriggerContent);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"open\", function (attrs) {\n _this.sourceOfIsOpen = attrs.source;\n\n _this.props.onOpenChange({\n isOpen: true,\n event: attrs.event\n }); // Dropdown opened via keyboard gets auto focussed\n\n\n _this.setState({\n autoFocusDropdownItems: _this.sourceOfIsOpen === 'keydown'\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"close\", function (attrs) {\n _this.sourceOfIsOpen = null;\n\n _this.props.onOpenChange({\n isOpen: false,\n event: attrs.event\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"toggle\", function (attrs) {\n if (attrs.source === 'keydown') return;\n\n if (_this.props.isOpen) {\n _this.close(attrs);\n } else {\n _this.open(attrs);\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemClicked\", function (event) {\n _this.props.onOpenChange({\n isOpen: false,\n event: event\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"renderTrigger\", function () {\n var triggerContent = _this.triggerContent();\n\n return _this.isUsingDeprecatedAPI() ? triggerContent : React.createElement(\"div\", {\n ref: function ref(_ref) {\n _this.triggerContainer = _ref;\n }\n }, triggerContent);\n });\n\n _defineProperty(_assertThisInitialized(_this), \"renderItems\", function (items) {\n return items.map(function (item, itemIndex) {\n return React.createElement(Item, _extends({}, item, {\n key: itemIndex,\n onActivate: function onActivate(_ref2) {\n var event = _ref2.event;\n\n _this.props.onItemActivated({\n item: item,\n event: event\n });\n }\n }), item.content);\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"renderGroups\", function (groups) {\n return groups.map(function (group, groupIndex) {\n return React.createElement(Group, {\n heading: group.heading,\n elemAfter: group.elemAfter,\n key: groupIndex\n }, _this.renderItems(group.items));\n });\n });\n\n _defineProperty(_assertThisInitialized(_this), \"renderDeprecated\", function () {\n var _this$props2 = _this.props,\n items = _this$props2.items,\n shouldFitContainer = _this$props2.shouldFitContainer;\n var id = _this.state.id;\n return React.createElement(\"div\", {\n id: id,\n ref: function ref(_ref3) {\n _this.domMenuContainer = _ref3;\n _this.domItemsList = _ref3 ? _ref3.querySelectorAll('[data-role=\"droplistItem\"]') : null;\n },\n role: \"menu\",\n style: shouldFitContainer ? null : {\n maxWidth: 300\n }\n }, _this.renderGroups(items));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"onDroplistPositioned\", function () {\n _this.dropdownListPositioned = true; // Trigger render so item focus manager can auto focus for keyboard trigger\n\n _this.setState({\n autoFocusDropdownItems: _this.sourceOfIsOpen === 'keydown'\n });\n\n if (_this.props.onPositioned) _this.props.onPositioned();\n });\n\n _defineProperty(_assertThisInitialized(_this), \"renderDropdownItems\", function () {\n if (_this.sourceOfIsOpen === 'keydown' && _this.dropdownListPositioned) {\n return React.createElement(DropdownItemFocusManager, {\n autoFocus: _this.state.autoFocusDropdownItems,\n close: _this.close\n }, _this.props.children);\n }\n\n return React.createElement(Fragment, null, _this.props.children);\n });\n\n return _this;\n }\n\n _createClass(DropdownMenuStateless, [{\n key: \"render\",\n value: function render() {\n var _this$props3 = this.props,\n appearance = _this$props3.appearance,\n boundariesElement = _this$props3.boundariesElement,\n isLoading = _this$props3.isLoading,\n isOpen = _this$props3.isOpen,\n onOpenChange = _this$props3.onOpenChange,\n position = _this$props3.position,\n isMenuFixed = _this$props3.isMenuFixed,\n shouldAllowMultilineItems = _this$props3.shouldAllowMultilineItems,\n shouldFitContainer = _this$props3.shouldFitContainer,\n shouldFlip = _this$props3.shouldFlip,\n testId = _this$props3.testId;\n var id = this.state.id;\n var isDeprecated = this.isUsingDeprecatedAPI();\n var deprecatedProps = isDeprecated ? {\n onKeyDown: this.handleKeyboardInteractionsDeprecated,\n shouldAllowMultilineItems: shouldAllowMultilineItems\n } : {\n onKeyDown: this.handleKeyboardInteractionForClosed\n };\n return React.createElement(DropdownItemSelectionCache, null, React.createElement(Droplist, _extends({\n appearance: appearance,\n boundariesElement: boundariesElement,\n isLoading: isLoading,\n isOpen: isOpen,\n onClick: this.handleClick,\n onOpenChange: onOpenChange,\n position: position,\n isMenuFixed: isMenuFixed,\n shouldFitContainer: shouldFitContainer,\n shouldFlip: shouldFlip,\n trigger: this.renderTrigger(),\n onPositioned: this.onDroplistPositioned\n }, deprecatedProps, {\n analyticsContext: {\n componentName: 'dropdownMenu',\n packageName: packageName,\n packageVersion: packageVersion\n },\n testId: testId\n }), isDeprecated ? this.renderDeprecated() : React.createElement(WidthConstrainer, {\n id: id,\n role: \"menu\",\n shouldFitContainer: shouldFitContainer\n }, React.createElement(DropdownItemClickManager, {\n onItemClicked: this.handleItemClicked\n }, this.renderDropdownItems()))));\n }\n }]);\n\n return DropdownMenuStateless;\n}(Component);\n\n_defineProperty(DropdownMenuStateless, \"defaultProps\", {\n appearance: 'default',\n boundariesElement: 'viewport',\n isLoading: false,\n isOpen: false,\n items: [],\n onItemActivated: function onItemActivated() {},\n onOpenChange: function onOpenChange() {},\n position: 'bottom left',\n isMenuFixed: false,\n shouldAllowMultilineItems: false,\n shouldFitContainer: false,\n shouldFlip: true,\n triggerType: 'default',\n onPositioned: function onPositioned() {}\n});\n\nexport { DropdownMenuStateless as DropdownMenuStatelessWithoutAnalytics };\nvar createAndFireEventOnAtlaskit = createAndFireEvent('atlaskit');\nexport default withAnalyticsContext({\n componentName: 'dropdownMenu',\n packageName: packageName,\n packageVersion: packageVersion\n})(withAnalyticsEvents({\n onOpenChange: createAndFireEventOnAtlaskit({\n action: 'toggled',\n actionSubject: 'dropdownMenu',\n attributes: {\n componentName: 'dropdownMenu',\n packageName: packageName,\n packageVersion: packageVersion\n }\n })\n})(DropdownMenuStateless));","export default (function (channel) { return function (payload) { return function (createAnalyticsEvent) {\n var consumerEvent = createAnalyticsEvent(payload);\n var clonedEvent = consumerEvent.clone();\n if (clonedEvent) {\n clonedEvent.fire(channel);\n }\n return consumerEvent;\n}; }; });\n//# sourceMappingURL=createAndFireEvent.js.map","import { __assign, __rest } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContext from './AnalyticsContext';\nvar withAnalyticsContext = function (defaultData) { return function (WrappedComponent) {\n var WithAnalyticsContext = React.forwardRef(function (props, ref) {\n var _a = props.analyticsContext, analyticsContext = _a === void 0 ? {} : _a, rest = __rest(props, [\"analyticsContext\"]);\n var analyticsData = __assign(__assign({}, defaultData), analyticsContext);\n return (React.createElement(AnalyticsContext, { data: analyticsData },\n React.createElement(WrappedComponent, __assign({}, rest, { ref: ref }))));\n });\n // @ts-ignore\n WithAnalyticsContext.displayName = \"WithAnalyticsContext(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsContext;\n}; };\nexport default withAnalyticsContext;\n//# sourceMappingURL=withAnalyticsContext.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContextConsumer from './AnalyticsContextConsumer';\nvar withAnalyticsEvents = function (createEventMap) { return function (WrappedComponent) {\n var WithAnalyticsEvents = React.forwardRef(function (props, ref) { return (React.createElement(AnalyticsContextConsumer, { createEventMap: createEventMap, wrappedComponentProps: props }, function (_a) {\n var createAnalyticsEvent = _a.createAnalyticsEvent, patchedEventProps = _a.patchedEventProps;\n return (React.createElement(WrappedComponent, __assign({}, props, patchedEventProps, { createAnalyticsEvent: createAnalyticsEvent, ref: ref })));\n })); });\n // @ts-ignore\n WithAnalyticsEvents.displayName = \"WithAnalyticsEvents(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsEvents;\n}; };\nexport default withAnalyticsEvents;\n//# sourceMappingURL=withAnalyticsEvents.js.map","import _toConsumableArray from \"@babel/runtime/helpers/toConsumableArray\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport React, { Component } from 'react';\nimport StatelessMenu from './DropdownMenuStateless';\n\nvar DropdownMenu =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(DropdownMenu, _Component);\n\n function DropdownMenu() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, DropdownMenu);\n\n for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {\n _args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(DropdownMenu)).call.apply(_getPrototypeOf2, [this].concat(_args)));\n\n _defineProperty(_assertThisInitialized(_this), \"state\", {\n isOpen: _this.props.defaultOpen,\n items: _toConsumableArray(_this.props.items)\n });\n\n _defineProperty(_assertThisInitialized(_this), \"findActivatedGroup\", function (item) {\n return _this.state.items.filter(function (group) {\n return group.items.indexOf(item) > -1;\n })[0];\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleItemActivation\", function (attrs) {\n var activatedItem = attrs.item;\n\n var activatedGroup = _this.findActivatedGroup(activatedItem);\n\n var items = _toConsumableArray(_this.state.items);\n\n switch (activatedItem.type) {\n case 'checkbox':\n activatedItem.isChecked = !activatedItem.isChecked;\n\n _this.props.onItemActivated({\n item: activatedItem\n });\n\n _this.setState({\n items: items\n });\n\n break;\n\n case 'radio':\n activatedGroup.items.forEach(function (i) {\n if (i === activatedItem) {\n i.isChecked = true; // eslint-disable-line no-param-reassign\n } else {\n i.isChecked = false; // eslint-disable-line no-param-reassign\n }\n });\n\n _this.props.onItemActivated({\n item: activatedItem\n });\n\n _this.setState({\n items: items\n });\n\n break;\n\n case 'link':\n default:\n _this.props.onItemActivated({\n item: activatedItem\n });\n\n _this.close();\n\n break;\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleOpenChange\", function (attrs) {\n var _this$props;\n\n if (_this.state.isOpen === attrs.isOpen) return;\n\n _this.setState({\n isOpen: attrs.isOpen\n });\n\n for (var _len2 = arguments.length, args = new Array(_len2 > 1 ? _len2 - 1 : 0), _key2 = 1; _key2 < _len2; _key2++) {\n args[_key2 - 1] = arguments[_key2];\n }\n\n (_this$props = _this.props).onOpenChange.apply(_this$props, [attrs].concat(args));\n });\n\n _defineProperty(_assertThisInitialized(_this), \"close\", function () {\n var _this$props2;\n\n if (_this.state.isOpen === false) return;\n\n _this.setState({\n isOpen: false\n });\n\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n (_this$props2 = _this.props).onOpenChange.apply(_this$props2, [{\n isOpen: false\n }].concat(args));\n });\n\n return _this;\n }\n\n _createClass(DropdownMenu, [{\n key: \"UNSAFE_componentWillReceiveProps\",\n value: function UNSAFE_componentWillReceiveProps(nextProps) {\n if (nextProps.items !== this.state.items) {\n this.setState({\n items: _toConsumableArray(nextProps.items)\n });\n }\n\n if (nextProps.isOpen !== this.props.isOpen) {\n this.setState({\n isOpen: nextProps.isOpen\n });\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var isOpen = this.state.isOpen;\n var _this$props3 = this.props,\n appearance = _this$props3.appearance,\n boundariesElement = _this$props3.boundariesElement,\n children = _this$props3.children,\n isLoading = _this$props3.isLoading,\n items = _this$props3.items,\n position = _this$props3.position,\n isMenuFixed = _this$props3.isMenuFixed,\n shouldAllowMultilineItems = _this$props3.shouldAllowMultilineItems,\n shouldFitContainer = _this$props3.shouldFitContainer,\n shouldFlip = _this$props3.shouldFlip,\n testId = _this$props3.testId,\n trigger = _this$props3.trigger,\n triggerButtonProps = _this$props3.triggerButtonProps,\n triggerType = _this$props3.triggerType,\n onPositioned = _this$props3.onPositioned;\n return React.createElement(StatelessMenu, {\n appearance: appearance,\n boundariesElement: boundariesElement,\n isOpen: isOpen,\n isLoading: isLoading,\n items: items,\n onItemActivated: this.handleItemActivation,\n onOpenChange: this.handleOpenChange,\n position: position,\n isMenuFixed: isMenuFixed,\n shouldAllowMultilineItems: shouldAllowMultilineItems,\n shouldFitContainer: shouldFitContainer,\n shouldFlip: shouldFlip,\n trigger: trigger,\n triggerButtonProps: triggerButtonProps,\n triggerType: triggerType,\n onPositioned: onPositioned,\n testId: testId\n }, children);\n }\n }]);\n\n return DropdownMenu;\n}(Component);\n\n_defineProperty(DropdownMenu, \"defaultProps\", {\n appearance: 'default',\n boundariesElement: 'viewport',\n defaultOpen: false,\n isLoading: false,\n isOpen: false,\n items: [],\n onItemActivated: function onItemActivated() {},\n onOpenChange: function onOpenChange() {},\n position: 'bottom left',\n isMenuFixed: false,\n shouldAllowMultilineItems: false,\n shouldFitContainer: false,\n shouldFlip: true,\n triggerType: 'default',\n onPositioned: function onPositioned() {}\n});\n\nexport { DropdownMenu as default };","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\nvar react_1 = tslib_1.__importDefault(require(\"react\"));\nvar styled_components_1 = tslib_1.__importDefault(require(\"styled-components\"));\nvar uuid_1 = tslib_1.__importDefault(require(\"uuid\"));\nvar colors_1 = require(\"@atlaskit/theme/colors\");\nvar constants_1 = require(\"../constants\");\nvar getSize = function (_a) {\n var size = _a.size;\n return size ? \"height: \" + constants_1.sizes[size] + \"; width: \" + constants_1.sizes[size] + \";\" : null;\n};\nexports.IconWrapper = styled_components_1.default.span(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject([\"\\n \", \";\\n color: \", \";\\n display: inline-block;\\n fill: \", \";\\n flex-shrink: 0;\\n line-height: 1;\\n\\n > svg {\\n \", \";\\n max-height: 100%;\\n max-width: 100%;\\n overflow: hidden;\\n pointer-events: none;\\n vertical-align: bottom;\\n }\\n\\n /**\\n * Stop-color doesn't properly apply in chrome when the inherited/current color changes.\\n * We have to initially set stop-color to inherit (either via DOM attribute or an initial CSS\\n * rule) and then override it with currentColor for the color changes to be picked up.\\n */\\n stop {\\n stop-color: currentColor;\\n }\\n\"], [\"\\n \", \";\\n color: \", \";\\n display: inline-block;\\n fill: \", \";\\n flex-shrink: 0;\\n line-height: 1;\\n\\n > svg {\\n \", \";\\n max-height: 100%;\\n max-width: 100%;\\n overflow: hidden;\\n pointer-events: none;\\n vertical-align: bottom;\\n }\\n\\n /**\\n * Stop-color doesn't properly apply in chrome when the inherited/current color changes.\\n * We have to initially set stop-color to inherit (either via DOM attribute or an initial CSS\\n * rule) and then override it with currentColor for the color changes to be picked up.\\n */\\n stop {\\n stop-color: currentColor;\\n }\\n\"])), getSize, function (p) { return p.primaryColor || 'currentColor'; }, function (p) { return p.secondaryColor || colors_1.background; }, getSize);\n/**\n * Icons need unique gradient IDs across instances for different gradient definitions to work\n * correctly.\n * A step in the icon build process replaces linear gradient IDs and their references in paths\n * to a placeholder string so we can replace them with a dynamic ID here.\n * Replacing the original IDs with placeholders in the build process is more robust than not\n * using placeholders as we do not have to rely on regular expressions to find specific element\n * to replace.\n */\nfunction insertDynamicGradientID(svgStr, label) {\n var id = uuid_1.default();\n var replacedSvgStr = svgStr\n .replace(/id=\"([^\"]+)-idPlaceholder\"/g, \"id=$1-\" + id)\n .replace(/fill=\"url\\(#([^\"]+)-idPlaceholder\\)\"/g, \"fill=\\\"url(#$1-\" + id + \")\\\"\");\n return replacedSvgStr;\n}\nvar Icon = function (props) {\n var Glyph = props.glyph, dangerouslySetGlyph = props.dangerouslySetGlyph, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, size = props.size, testId = props.testId, label = props.label;\n var glyphProps = dangerouslySetGlyph\n ? {\n dangerouslySetInnerHTML: {\n __html: insertDynamicGradientID(dangerouslySetGlyph, label),\n },\n }\n : { children: Glyph ? react_1.default.createElement(Glyph, { role: \"presentation\" }) : null };\n return (react_1.default.createElement(exports.IconWrapper, tslib_1.__assign({ primaryColor: primaryColor, secondaryColor: secondaryColor, size: size, \"data-testid\": testId, role: label ? 'img' : 'presentation', \"aria-label\": label ? label : undefined }, glyphProps)));\n};\nexports.default = Icon;\nvar templateObject_1;\n//# sourceMappingURL=Icon.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sizes = {\n small: '16px',\n medium: '24px',\n large: '32px',\n xlarge: '48px',\n};\nexports.sizeMap = {\n small: 'small',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge',\n};\n//# sourceMappingURL=constants.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _Icon = _interopRequireDefault(require(\"../cjs/components/Icon\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nvar ChevronDownIcon = function ChevronDownIcon(props) {\n return _react.default.createElement(_Icon.default, _extends({\n dangerouslySetGlyph: \"\"\n }, props));\n};\n\nChevronDownIcon.displayName = 'ChevronDownIcon';\nvar _default = ChevronDownIcon;\nexports.default = _default;","// ideally this would be fetched from ../constants but that causes a\n// circular dep loop. This will be refactored as part of a breaking\n// change in the future.\nconst DEFAULT_THEME_MODE = 'light';\nconst THEME_MODES = ['light', 'dark'];\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if ('__ATLASKIT_THEME__' in props.theme) {\n return props.theme.__ATLASKIT_THEME__;\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return { mode: DEFAULT_THEME_MODE };\n}\n//# sourceMappingURL=getTheme.js.map","/* eslint-disable prefer-rest-params */\nimport getTheme from './getTheme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return (props) => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value)\n return value; // TS believes value can be undefined\n }\n }\n return '';\n };\n}\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return (props) => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value)\n return value;\n }\n return '';\n };\n}\n//# sourceMappingURL=themed.js.map","import themed from './utils/themed';\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n// Themed colors\nexport const background = themed({ light: N0, dark: DN30 });\nexport const backgroundActive = themed({ light: B50, dark: B75 });\nexport const backgroundHover = themed({ light: N30, dark: DN70 });\nexport const backgroundOnLayer = themed({ light: N0, dark: DN50 });\nexport const text = themed({ light: N900, dark: DN600 });\nexport const textHover = themed({ light: N800, dark: DN600 });\nexport const textActive = themed({ light: B400, dark: B400 });\nexport const subtleText = themed({ light: N200, dark: DN300 });\nexport const placeholderText = themed({ light: N100, dark: DN200 });\nexport const heading = themed({ light: N800, dark: DN600 });\nexport const subtleHeading = themed({ light: N200, dark: DN300 });\nexport const codeBlock = themed({ light: N20, dark: DN50 });\nexport const link = themed({ light: B400, dark: B100 });\nexport const linkHover = themed({ light: B300, dark: B200 });\nexport const linkActive = themed({ light: B500, dark: B100 });\nexport const linkOutline = themed({ light: B100, dark: B200 });\nexport const primary = themed({ light: B400, dark: B100 });\nexport const blue = themed({ light: B400, dark: B100 });\nexport const teal = themed({ light: T300, dark: T200 });\nexport const purple = themed({ light: P300, dark: P100 });\nexport const red = themed({ light: R300, dark: R300 });\nexport const yellow = themed({ light: Y300, dark: Y300 });\nexport const green = themed({ light: G300, dark: G300 });\nexport const skeleton = () => N20A;\n//# sourceMappingURL=colors.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nvar tslib_1 = require(\"tslib\");\nvar react_1 = tslib_1.__importDefault(require(\"react\"));\nvar styled_components_1 = tslib_1.__importDefault(require(\"styled-components\"));\nvar uuid_1 = tslib_1.__importDefault(require(\"uuid\"));\nvar colors_1 = require(\"@atlaskit/theme/colors\");\nvar constants_1 = require(\"../constants\");\nvar getSize = function (_a) {\n var size = _a.size;\n return size ? \"height: \" + constants_1.sizes[size] + \"; width: \" + constants_1.sizes[size] + \";\" : null;\n};\nexports.IconWrapper = styled_components_1.default.span(templateObject_1 || (templateObject_1 = tslib_1.__makeTemplateObject([\"\\n \", \";\\n color: \", \";\\n display: inline-block;\\n fill: \", \";\\n flex-shrink: 0;\\n line-height: 1;\\n\\n > svg {\\n \", \";\\n max-height: 100%;\\n max-width: 100%;\\n overflow: hidden;\\n pointer-events: none;\\n vertical-align: bottom;\\n }\\n\\n /**\\n * Stop-color doesn't properly apply in chrome when the inherited/current color changes.\\n * We have to initially set stop-color to inherit (either via DOM attribute or an initial CSS\\n * rule) and then override it with currentColor for the color changes to be picked up.\\n */\\n stop {\\n stop-color: currentColor;\\n }\\n\"], [\"\\n \", \";\\n color: \", \";\\n display: inline-block;\\n fill: \", \";\\n flex-shrink: 0;\\n line-height: 1;\\n\\n > svg {\\n \", \";\\n max-height: 100%;\\n max-width: 100%;\\n overflow: hidden;\\n pointer-events: none;\\n vertical-align: bottom;\\n }\\n\\n /**\\n * Stop-color doesn't properly apply in chrome when the inherited/current color changes.\\n * We have to initially set stop-color to inherit (either via DOM attribute or an initial CSS\\n * rule) and then override it with currentColor for the color changes to be picked up.\\n */\\n stop {\\n stop-color: currentColor;\\n }\\n\"])), getSize, function (p) { return p.primaryColor || 'currentColor'; }, function (p) { return p.secondaryColor || colors_1.background; }, getSize);\n/**\n * Icons need unique gradient IDs across instances for different gradient definitions to work\n * correctly.\n * A step in the icon build process replaces linear gradient IDs and their references in paths\n * to a placeholder string so we can replace them with a dynamic ID here.\n * Replacing the original IDs with placeholders in the build process is more robust than not\n * using placeholders as we do not have to rely on regular expressions to find specific element\n * to replace.\n */\nfunction insertDynamicGradientID(svgStr, label) {\n var id = uuid_1.default();\n var replacedSvgStr = svgStr\n .replace(/id=\"([^\"]+)-idPlaceholder\"/g, \"id=$1-\" + id)\n .replace(/fill=\"url\\(#([^\"]+)-idPlaceholder\\)\"/g, \"fill=\\\"url(#$1-\" + id + \")\\\"\");\n return replacedSvgStr;\n}\nvar Icon = function (props) {\n var Glyph = props.glyph, dangerouslySetGlyph = props.dangerouslySetGlyph, primaryColor = props.primaryColor, secondaryColor = props.secondaryColor, size = props.size, testId = props.testId, label = props.label;\n var glyphProps = dangerouslySetGlyph\n ? {\n dangerouslySetInnerHTML: {\n __html: insertDynamicGradientID(dangerouslySetGlyph, label),\n },\n }\n : { children: Glyph ? react_1.default.createElement(Glyph, { role: \"presentation\" }) : null };\n return (react_1.default.createElement(exports.IconWrapper, tslib_1.__assign({ primaryColor: primaryColor, secondaryColor: secondaryColor, size: size, \"data-testid\": testId, role: label ? 'img' : 'presentation', \"aria-label\": label ? label : undefined }, glyphProps)));\n};\nexports.default = Icon;\nvar templateObject_1;\n//# sourceMappingURL=Icon.js.map","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.sizes = {\n small: '16px',\n medium: '24px',\n large: '32px',\n xlarge: '48px',\n};\nexports.sizeMap = {\n small: 'small',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge',\n};\n//# sourceMappingURL=constants.js.map","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _Icon = _interopRequireDefault(require(\"../cjs/components/Icon\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nvar CheckboxIcon = function CheckboxIcon(props) {\n return _react.default.createElement(_Icon.default, _extends({\n dangerouslySetGlyph: \"\"\n }, props));\n};\n\nCheckboxIcon.displayName = 'CheckboxIcon';\nvar _default = CheckboxIcon;\nexports.default = _default;","\"use strict\";\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _Icon = _interopRequireDefault(require(\"../cjs/components/Icon\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nvar RadioIcon = function RadioIcon(props) {\n return _react.default.createElement(_Icon.default, _extends({\n dangerouslySetGlyph: \"\"\n }, props));\n};\n\nRadioIcon.displayName = 'RadioIcon';\nvar _default = RadioIcon;\nexports.default = _default;","import themed from './utils/themed';\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n// Themed colors\nexport const background = themed({ light: N0, dark: DN30 });\nexport const backgroundActive = themed({ light: B50, dark: B75 });\nexport const backgroundHover = themed({ light: N30, dark: DN70 });\nexport const backgroundOnLayer = themed({ light: N0, dark: DN50 });\nexport const text = themed({ light: N900, dark: DN600 });\nexport const textHover = themed({ light: N800, dark: DN600 });\nexport const textActive = themed({ light: B400, dark: B400 });\nexport const subtleText = themed({ light: N200, dark: DN300 });\nexport const placeholderText = themed({ light: N100, dark: DN200 });\nexport const heading = themed({ light: N800, dark: DN600 });\nexport const subtleHeading = themed({ light: N200, dark: DN300 });\nexport const codeBlock = themed({ light: N20, dark: DN50 });\nexport const link = themed({ light: B400, dark: B100 });\nexport const linkHover = themed({ light: B300, dark: B200 });\nexport const linkActive = themed({ light: B500, dark: B100 });\nexport const linkOutline = themed({ light: B100, dark: B200 });\nexport const primary = themed({ light: B400, dark: B100 });\nexport const blue = themed({ light: B400, dark: B100 });\nexport const teal = themed({ light: T300, dark: T200 });\nexport const purple = themed({ light: P300, dark: P100 });\nexport const red = themed({ light: R300, dark: R300 });\nexport const yellow = themed({ light: Y300, dark: Y300 });\nexport const green = themed({ light: G300, dark: G300 });\nexport const skeleton = () => N20A;\n//# sourceMappingURL=colors.js.map","// ideally this would be fetched from ../constants but that causes a\n// circular dep loop. This will be refactored as part of a breaking\n// change in the future.\nconst DEFAULT_THEME_MODE = 'light';\nconst THEME_MODES = ['light', 'dark'];\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if ('__ATLASKIT_THEME__' in props.theme) {\n return props.theme.__ATLASKIT_THEME__;\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return { mode: DEFAULT_THEME_MODE };\n}\n//# sourceMappingURL=getTheme.js.map","/* eslint-disable prefer-rest-params */\nimport getTheme from './getTheme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return (props) => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value)\n return value; // TS believes value can be undefined\n }\n }\n return '';\n };\n}\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return (props) => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value)\n return value;\n }\n return '';\n };\n}\n//# sourceMappingURL=themed.js.map","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\nimport { forwardRef } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { LAYERS } from '../constants';\nimport { SurfaceContext } from './surface-provider';\n\n/**\n * @private\n * @deprecated DSP-8009: This type is scheduled for deletion.\n * Please use `Box` from `@atlaskit/primitives` instead.\n */\n\n// Without this type annotation on Box we don't get autocomplete for props due to forwardRef types\n\n/**\n * __Box__\n *\n * Box is a primitive component that has the design decisions of the Atlassian Design System baked in.\n * Renders a `div` by default.\n *\n * @private\n * @deprecated DSP-8009: This primitive is scheduled for deletion.\n * Please use `Box` from `@atlaskit/primitives` instead.\n */\nexport const Box = /*#__PURE__*/forwardRef(({\n children,\n as,\n className,\n display = 'flex',\n flexDirection,\n alignItems,\n justifyContent,\n backgroundColor,\n borderColor,\n borderStyle,\n borderWidth,\n borderRadius,\n shadow,\n layer,\n padding,\n paddingBlock,\n paddingInline,\n position = 'relative',\n height,\n overflow,\n width,\n UNSAFE_style,\n testId,\n ...htmlAttributes\n}, ref) => {\n const Component = as || 'div';\n const node = jsx(Component, _extends({\n style: UNSAFE_style,\n ref: ref\n // eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props\n }, htmlAttributes, {\n className: className,\n css: [baseStyles, display && displayMap[display], padding && paddingMap[padding], position && positionMap[position], paddingBlock && paddingBlockMap[paddingBlock], paddingInline && paddingInlineMap[paddingInline], alignItems && flexAlignItemsMap[alignItems], justifyContent && flexJustifyContentMap[justifyContent], backgroundColor && backgroundColorMap[backgroundColor], borderColor && borderColorMap[borderColor], borderStyle && borderStyleMap[borderStyle], borderWidth && borderWidthMap[borderWidth], borderRadius && borderRadiusMap[borderRadius], shadow && shadowMap[shadow], layer && layerMap[layer], flexDirection && flexDirectionMap[flexDirection], overflow && overflowMap[overflow], width && widthMap[width], height && heightMap[height]],\n \"data-testid\": testId\n }), children);\n return backgroundColor ? jsx(SurfaceContext.Provider, {\n value: backgroundColor\n }, node) : node;\n});\nBox.displayName = 'Box';\nexport default Box;\n\n// <<< STYLES GO HERE >>>\n\nconst borderStyleMap = {\n none: css({\n borderStyle: 'none'\n }),\n solid: css({\n borderStyle: 'solid'\n }),\n dashed: css({\n borderStyle: 'dashed'\n }),\n dotted: css({\n borderStyle: 'dotted'\n })\n};\nconst borderWidthMap = {\n '0px': css({\n borderWidth: '0px'\n }),\n '1px': css({\n borderWidth: '1px'\n }),\n '2px': css({\n borderWidth: '2px'\n }),\n '3px': css({\n borderWidth: '3px'\n })\n};\nconst borderRadiusMap = {\n normal: css({\n borderRadius: \"var(--ds-radius-100, 3px)\"\n }),\n rounded: css({\n borderRadius: '50%'\n }),\n badge: css({\n borderRadius: '8px'\n })\n};\n\n/**\n * @experimental - this is likely to be removed\n */\n\nconst flexDirectionMap = {\n column: css({\n flexDirection: 'column'\n }),\n row: css({\n flexDirection: 'row'\n })\n};\n\n/**\n * @experimental - this is likely to be removed\n */\n\nconst flexAlignItemsMap = {\n center: css({\n alignItems: 'center'\n }),\n baseline: css({\n alignItems: 'baseline'\n }),\n flexStart: css({\n alignItems: 'flex-start'\n }),\n flexEnd: css({\n alignItems: 'flex-end'\n }),\n start: css({\n alignItems: 'start'\n }),\n end: css({\n alignItems: 'end'\n })\n};\n\n/**\n * @experimental - this is likely to be removed\n */\n\nconst flexJustifyContentMap = {\n center: css({\n justifyContent: 'center'\n }),\n flexStart: css({\n justifyContent: 'flex-start'\n }),\n flexEnd: css({\n justifyContent: 'flex-end'\n }),\n start: css({\n justifyContent: 'start'\n }),\n end: css({\n justifyContent: 'end'\n })\n};\nconst displayMap = {\n block: css({\n display: 'block'\n }),\n inline: css({\n display: 'inline'\n }),\n flex: css({\n display: 'flex'\n }),\n inlineFlex: css({\n display: 'inline-flex'\n }),\n inlineBlock: css({\n display: 'inline-block'\n })\n};\nconst positionMap = {\n absolute: css({\n position: 'absolute'\n }),\n fixed: css({\n position: 'fixed'\n }),\n relative: css({\n position: 'relative'\n }),\n static: css({\n position: 'static'\n })\n};\nconst overflowMap = {\n auto: css({\n overflow: 'auto'\n }),\n hidden: css({\n overflow: 'hidden'\n })\n};\nconst baseStyles = css({\n boxSizing: 'border-box',\n appearance: 'none',\n border: 'none'\n});\n\n/**\n * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}\n * @codegen <>\n * @codegenId dimensions\n * @codegenCommand yarn codegen-styles\n * @codegenParams [\"width\", \"height\"]\n */\nconst widthMap = {\n '100%': css({\n width: '100%'\n }),\n 'size.100': css({\n width: '16px'\n }),\n 'size.1000': css({\n width: '192px'\n }),\n 'size.200': css({\n width: '24px'\n }),\n 'size.300': css({\n width: '32px'\n }),\n 'size.400': css({\n width: '40px'\n }),\n 'size.500': css({\n width: '48px'\n }),\n 'size.600': css({\n width: '96px'\n })\n};\nconst heightMap = {\n '100%': css({\n height: '100%'\n }),\n 'size.100': css({\n height: '16px'\n }),\n 'size.1000': css({\n height: '192px'\n }),\n 'size.200': css({\n height: '24px'\n }),\n 'size.300': css({\n height: '32px'\n }),\n 'size.400': css({\n height: '40px'\n }),\n 'size.500': css({\n height: '48px'\n }),\n 'size.600': css({\n height: '96px'\n })\n};\n/**\n * @codegenEnd\n */\n/**\n * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}\n * @codegen <>\n * @codegenId spacing\n * @codegenCommand yarn codegen-styles\n * @codegenParams [\"padding\", \"paddingBlock\", \"paddingInline\"]\n * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-spacing.tsx <>\n */\nconst paddingMap = {\n 'space.0': css({\n padding: \"var(--ds-space-0, 0px)\"\n }),\n 'space.025': css({\n padding: \"var(--ds-space-025, 2px)\"\n }),\n 'space.050': css({\n padding: \"var(--ds-space-050, 4px)\"\n }),\n 'space.075': css({\n padding: \"var(--ds-space-075, 6px)\"\n }),\n 'space.100': css({\n padding: \"var(--ds-space-100, 8px)\"\n }),\n 'space.1000': css({\n padding: \"var(--ds-space-1000, 80px)\"\n }),\n 'space.150': css({\n padding: \"var(--ds-space-150, 12px)\"\n }),\n 'space.200': css({\n padding: \"var(--ds-space-200, 16px)\"\n }),\n 'space.250': css({\n padding: \"var(--ds-space-250, 20px)\"\n }),\n 'space.300': css({\n padding: \"var(--ds-space-300, 24px)\"\n }),\n 'space.400': css({\n padding: \"var(--ds-space-400, 32px)\"\n }),\n 'space.500': css({\n padding: \"var(--ds-space-500, 40px)\"\n }),\n 'space.600': css({\n padding: \"var(--ds-space-600, 48px)\"\n }),\n 'space.800': css({\n padding: \"var(--ds-space-800, 64px)\"\n })\n};\nconst paddingBlockMap = {\n 'space.0': css({\n paddingBlock: \"var(--ds-space-0, 0px)\"\n }),\n 'space.025': css({\n paddingBlock: \"var(--ds-space-025, 2px)\"\n }),\n 'space.050': css({\n paddingBlock: \"var(--ds-space-050, 4px)\"\n }),\n 'space.075': css({\n paddingBlock: \"var(--ds-space-075, 6px)\"\n }),\n 'space.100': css({\n paddingBlock: \"var(--ds-space-100, 8px)\"\n }),\n 'space.1000': css({\n paddingBlock: \"var(--ds-space-1000, 80px)\"\n }),\n 'space.150': css({\n paddingBlock: \"var(--ds-space-150, 12px)\"\n }),\n 'space.200': css({\n paddingBlock: \"var(--ds-space-200, 16px)\"\n }),\n 'space.250': css({\n paddingBlock: \"var(--ds-space-250, 20px)\"\n }),\n 'space.300': css({\n paddingBlock: \"var(--ds-space-300, 24px)\"\n }),\n 'space.400': css({\n paddingBlock: \"var(--ds-space-400, 32px)\"\n }),\n 'space.500': css({\n paddingBlock: \"var(--ds-space-500, 40px)\"\n }),\n 'space.600': css({\n paddingBlock: \"var(--ds-space-600, 48px)\"\n }),\n 'space.800': css({\n paddingBlock: \"var(--ds-space-800, 64px)\"\n })\n};\nconst paddingInlineMap = {\n 'space.0': css({\n paddingInline: \"var(--ds-space-0, 0px)\"\n }),\n 'space.025': css({\n paddingInline: \"var(--ds-space-025, 2px)\"\n }),\n 'space.050': css({\n paddingInline: \"var(--ds-space-050, 4px)\"\n }),\n 'space.075': css({\n paddingInline: \"var(--ds-space-075, 6px)\"\n }),\n 'space.100': css({\n paddingInline: \"var(--ds-space-100, 8px)\"\n }),\n 'space.1000': css({\n paddingInline: \"var(--ds-space-1000, 80px)\"\n }),\n 'space.150': css({\n paddingInline: \"var(--ds-space-150, 12px)\"\n }),\n 'space.200': css({\n paddingInline: \"var(--ds-space-200, 16px)\"\n }),\n 'space.250': css({\n paddingInline: \"var(--ds-space-250, 20px)\"\n }),\n 'space.300': css({\n paddingInline: \"var(--ds-space-300, 24px)\"\n }),\n 'space.400': css({\n paddingInline: \"var(--ds-space-400, 32px)\"\n }),\n 'space.500': css({\n paddingInline: \"var(--ds-space-500, 40px)\"\n }),\n 'space.600': css({\n paddingInline: \"var(--ds-space-600, 48px)\"\n }),\n 'space.800': css({\n paddingInline: \"var(--ds-space-800, 64px)\"\n })\n};\n/**\n * @codegenEnd\n */\n/**\n * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}\n * @codegen <>\n * @codegenId colors\n * @codegenCommand yarn codegen-styles\n * @codegenParams [\"border\", \"background\", \"shadow\"]\n * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-light.tsx <>\n */\nconst borderColorMap = {\n 'color.border': css({\n borderColor: \"var(--ds-border, #091e4221)\"\n }),\n disabled: css({\n borderColor: \"var(--ds-border-disabled, #FAFBFC)\"\n }),\n focused: css({\n borderColor: \"var(--ds-border-focused, #4C9AFF)\"\n }),\n input: css({\n borderColor: \"var(--ds-border-input, #FAFBFC)\"\n }),\n inverse: css({\n borderColor: \"var(--ds-border-inverse, #FFFFFF)\"\n }),\n selected: css({\n borderColor: \"var(--ds-border-selected, #0052CC)\"\n }),\n brand: css({\n borderColor: \"var(--ds-border-brand, #0052CC)\"\n }),\n danger: css({\n borderColor: \"var(--ds-border-danger, #FF5630)\"\n }),\n warning: css({\n borderColor: \"var(--ds-border-warning, #FFC400)\"\n }),\n success: css({\n borderColor: \"var(--ds-border-success, #00875A)\"\n }),\n discovery: css({\n borderColor: \"var(--ds-border-discovery, #998DD9)\"\n }),\n information: css({\n borderColor: \"var(--ds-border-information, #0065FF)\"\n }),\n bold: css({\n borderColor: \"var(--ds-border-bold, #344563)\"\n })\n};\nconst backgroundColorMap = {\n disabled: css({\n backgroundColor: \"var(--ds-background-disabled, #091e4289)\"\n }),\n input: css({\n backgroundColor: \"var(--ds-background-input, #FAFBFC)\"\n }),\n 'inverse.subtle': css({\n backgroundColor: \"var(--ds-background-inverse-subtle, #00000029)\"\n }),\n neutral: css({\n backgroundColor: \"var(--ds-background-neutral, #DFE1E6)\"\n }),\n 'neutral.subtle': css({\n backgroundColor: \"var(--ds-background-neutral-subtle, transparent)\"\n }),\n 'neutral.bold': css({\n backgroundColor: \"var(--ds-background-neutral-bold, #42526E)\"\n }),\n selected: css({\n backgroundColor: \"var(--ds-background-selected, #DEEBFF)\"\n }),\n 'selected.bold': css({\n backgroundColor: \"var(--ds-background-selected-bold, #0052CC)\"\n }),\n 'brand.bold': css({\n backgroundColor: \"var(--ds-background-brand-bold, #0052CC)\"\n }),\n danger: css({\n backgroundColor: \"var(--ds-background-danger, #FFEBE6)\"\n }),\n 'danger.bold': css({\n backgroundColor: \"var(--ds-background-danger-bold, #DE350B)\"\n }),\n warning: css({\n backgroundColor: \"var(--ds-background-warning, #FFFAE6)\"\n }),\n 'warning.bold': css({\n backgroundColor: \"var(--ds-background-warning-bold, #FFAB00)\"\n }),\n success: css({\n backgroundColor: \"var(--ds-background-success, #E3FCEF)\"\n }),\n 'success.bold': css({\n backgroundColor: \"var(--ds-background-success-bold, #00875A)\"\n }),\n discovery: css({\n backgroundColor: \"var(--ds-background-discovery, #EAE6FF)\"\n }),\n 'discovery.bold': css({\n backgroundColor: \"var(--ds-background-discovery-bold, #5243AA)\"\n }),\n information: css({\n backgroundColor: \"var(--ds-background-information, #DEEBFF)\"\n }),\n 'information.bold': css({\n backgroundColor: \"var(--ds-background-information-bold, #0052CC)\"\n }),\n 'color.blanket': css({\n backgroundColor: \"var(--ds-blanket, #091e4289)\"\n }),\n 'color.blanket.selected': css({\n backgroundColor: \"var(--ds-blanket-selected, #388BFF14)\"\n }),\n 'color.blanket.danger': css({\n backgroundColor: \"var(--ds-blanket-danger, #EF5C4814)\"\n }),\n 'elevation.surface': css({\n backgroundColor: \"var(--ds-surface, #FFFFFF)\"\n }),\n 'elevation.surface.overlay': css({\n backgroundColor: \"var(--ds-surface-overlay, #FFFFFF)\"\n }),\n 'elevation.surface.raised': css({\n backgroundColor: \"var(--ds-surface-raised, #FFFFFF)\"\n }),\n 'elevation.surface.sunken': css({\n backgroundColor: \"var(--ds-surface-sunken, #F4F5F7)\"\n })\n};\nconst shadowMap = {\n overflow: css({\n boxShadow: \"var(--ds-shadow-overflow, 0px 0px 8px #091e423f, 0px 0px 1px #091e424f)\"\n }),\n 'overflow.perimeter': css({\n boxShadow: \"var(--ds-shadow-overflow-perimeter, #091e421f)\"\n }),\n 'overflow.spread': css({\n boxShadow: \"var(--ds-shadow-overflow-spread, #091e4229)\"\n }),\n overlay: css({\n boxShadow: \"var(--ds-shadow-overlay, 0px 8px 12px #091e423f, 0px 0px 1px #091e424f)\"\n }),\n raised: css({\n boxShadow: \"var(--ds-shadow-raised, 0px 1px 1px #091e423f, 0px 0px 1px #091e4221)\"\n })\n};\n/**\n * @codegenEnd\n */\n/**\n * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}\n * @codegen <>\n * @codegenId misc\n * @codegenCommand yarn codegen-styles\n * @codegenParams [\"layer\"]\n */\nconst layerMap = {\n card: css({\n zIndex: LAYERS['card']\n }),\n navigation: css({\n zIndex: LAYERS['navigation']\n }),\n dialog: css({\n zIndex: LAYERS['dialog']\n }),\n layer: css({\n zIndex: LAYERS['layer']\n }),\n blanket: css({\n zIndex: LAYERS['blanket']\n }),\n modal: css({\n zIndex: LAYERS['modal']\n }),\n flag: css({\n zIndex: LAYERS['flag']\n }),\n spotlight: css({\n zIndex: LAYERS['spotlight']\n }),\n tooltip: css({\n zIndex: LAYERS['tooltip']\n })\n};\n\n/**\n * @codegenEnd\n */","export const LAYERS = {\n card: 100,\n navigation: 200,\n dialog: 300,\n layer: 400,\n blanket: 500,\n modal: 510,\n flag: 600,\n spotlight: 700,\n tooltip: 800\n};","import { createContext, useContext } from 'react';\n/**\n * __Surface context__\n *\n * A surface context provides context information on the current background (if set).\n */\nexport const SurfaceContext = /*#__PURE__*/createContext('elevation.surface');\n\n/**\n * __useSurface__\n *\n * Return the current surface. If no parent sets a surface color it falls back to the default surface.\n *\n * @see SurfaceContext\n */\nexport const useSurface = () => {\n return useContext(SurfaceContext);\n};\nSurfaceContext.displayName = 'SurfaceProvider';","/**\n * THIS FILE WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}\n *\n * The color map is used to map a background color token to a matching text color that will meet contrast.\n *\n * @codegen <>\n * @codegenCommand yarn codegen-styles\n * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-light.tsx <>\n */\nexport default {\n 'neutral.bold': 'inverse',\n 'neutral.bold.hovered': 'inverse',\n 'neutral.bold.pressed': 'inverse',\n 'selected.bold': 'inverse',\n 'selected.bold.hovered': 'inverse',\n 'selected.bold.pressed': 'inverse',\n 'brand.bold': 'inverse',\n 'brand.bold.hovered': 'inverse',\n 'brand.bold.pressed': 'inverse',\n 'danger.bold': 'inverse',\n 'danger.bold.hovered': 'inverse',\n 'danger.bold.pressed': 'inverse',\n 'warning.bold': 'warning.inverse',\n 'warning.bold.hovered': 'warning.inverse',\n 'warning.bold.pressed': 'warning.inverse',\n 'success.bold': 'inverse',\n 'success.bold.hovered': 'inverse',\n 'success.bold.pressed': 'inverse',\n 'discovery.bold': 'inverse',\n 'discovery.bold.hovered': 'inverse',\n 'discovery.bold.pressed': 'inverse',\n 'information.bold': 'inverse',\n 'information.bold.hovered': 'inverse',\n 'information.bold.pressed': 'inverse'\n};","/** @jsx jsx */\nimport { createContext, Fragment, useContext } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport invariant from 'tiny-invariant';\nimport surfaceColorMap from '../internal/color-map';\nimport { useSurface } from './surface-provider';\nconst asAllowlist = ['span', 'div', 'p', 'strong'];\nconst textAlignMap = {\n center: css({\n textAlign: 'center'\n }),\n end: css({\n textAlign: 'end'\n }),\n start: css({\n textAlign: 'start'\n })\n};\nconst textTransformMap = {\n none: css({\n textTransform: 'none'\n }),\n lowercase: css({\n textTransform: 'lowercase'\n }),\n uppercase: css({\n textTransform: 'uppercase'\n })\n};\nconst verticalAlignMap = {\n top: css({\n verticalAlign: 'top'\n }),\n middle: css({\n verticalAlign: 'middle'\n }),\n bottom: css({\n verticalAlign: 'bottom'\n })\n};\nconst baseStyles = css({\n boxSizing: 'border-box',\n margin: \"var(--ds-space-0, 0px)\",\n padding: \"var(--ds-space-0, 0px)\"\n});\nconst truncateStyles = css({\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n});\n\n/**\n * Custom hook designed to abstract the parsing of the color props and make it clearer in the future how color is reconciled between themes and tokens.\n */\nconst useColor = colorProp => {\n const surface = useSurface();\n const inverseTextColor = surfaceColorMap[surface];\n\n /**\n * Where the color of the surface is inverted we override the user choice\n * as there is no valid choice that is not covered by the override.\n */\n const color = inverseTextColor !== null && inverseTextColor !== void 0 ? inverseTextColor : colorProp;\n return color;\n};\nconst HasTextAncestorContext = /*#__PURE__*/createContext(false);\nconst useHasTextAncestor = () => useContext(HasTextAncestorContext);\n\n/**\n * __Text__\n *\n * Text is a primitive component that has the Atlassian Design System's design guidelines baked in.\n * This includes considerations for text attributes such as color, font size, font weight, and line height.\n * It renders a `span` by default.\n *\n * @internal\n */\nconst Text = ({\n children,\n ...props\n}) => {\n const {\n as: Component = 'span',\n color: colorProp,\n fontSize,\n fontWeight,\n lineHeight,\n shouldTruncate = false,\n textAlign,\n textTransform,\n verticalAlign,\n testId,\n UNSAFE_style,\n id\n } = props;\n invariant(asAllowlist.includes(Component), `@atlaskit/ds-explorations: Text received an invalid \"as\" value of \"${Component}\"`);\n const color = useColor(colorProp);\n const isWrapped = useHasTextAncestor();\n\n /**\n * If the text is already wrapped and applies no props we can just\n * render the children directly as a fragment.\n */\n if (isWrapped && Object.keys(props).length === 0) {\n return jsx(Fragment, null, children);\n }\n const component = jsx(Component, {\n style: UNSAFE_style,\n css: [baseStyles, fontFamilyMap.sans, color && textColorMap[color], fontSize && fontSizeMap[fontSize], fontWeight && fontWeightMap[fontWeight], lineHeight && lineHeightMap[lineHeight], shouldTruncate && truncateStyles, textAlign && textAlignMap[textAlign], textTransform && textTransformMap[textTransform], verticalAlign && verticalAlignMap[verticalAlign]],\n \"data-testid\": testId,\n id: id\n }, children);\n return isWrapped ?\n // no need to re-apply context if the text is already wrapped\n component : jsx(HasTextAncestorContext.Provider, {\n value: true\n }, component);\n};\nexport default Text;\n\n/**\n * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}\n * @codegen <>\n * @codegenId typography\n * @codegenCommand yarn codegen-styles\n * @codegenParams [\"fontSize\", \"fontWeight\", \"fontFamily\", \"lineHeight\"]\n * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-typography.tsx <>\n */\nconst fontSizeMap = {\n 'size.050': css({\n fontSize: \"var(--ds-font-size-050, 11px)\"\n }),\n 'size.075': css({\n fontSize: \"var(--ds-font-size-075, 12px)\"\n }),\n 'size.100': css({\n fontSize: \"var(--ds-font-size-100, 14px)\"\n }),\n 'size.200': css({\n fontSize: \"var(--ds-font-size-200, 16px)\"\n }),\n 'size.300': css({\n fontSize: \"var(--ds-font-size-300, 20px)\"\n }),\n 'size.400': css({\n fontSize: \"var(--ds-font-size-400, 24px)\"\n }),\n 'size.500': css({\n fontSize: \"var(--ds-font-size-500, 29px)\"\n }),\n 'size.600': css({\n fontSize: \"var(--ds-font-size-600, 35px)\"\n })\n};\nconst fontWeightMap = {\n bold: css({\n fontWeight: \"var(--ds-font-weight-bold, 700)\"\n }),\n medium: css({\n fontWeight: \"var(--ds-font-weight-medium, 500)\"\n }),\n regular: css({\n fontWeight: \"var(--ds-font-weight-regular, 400)\"\n }),\n semibold: css({\n fontWeight: \"var(--ds-font-weight-semibold, 600)\"\n })\n};\nconst fontFamilyMap = {\n monospace: css({\n fontFamily: \"var(--ds-font-family-monospace, \\\"SFMono-Medium\\\", \\\"SF Mono\\\", \\\"Segoe UI Mono\\\", \\\"Roboto Mono\\\", \\\"Ubuntu Mono\\\", Menlo, Consolas, Courier, monospace)\"\n }),\n sans: css({\n fontFamily: \"var(--ds-font-family-sans, -apple-system, BlinkMacSystemFont, \\\"Segoe UI\\\", \\\"Roboto\\\", \\\"Oxygen\\\", \\\"Ubuntu\\\", \\\"Fira Sans\\\", \\\"Droid Sans\\\", \\\"Helvetica Neue\\\", sans-serif)\"\n })\n};\nconst lineHeightMap = {\n 'lineHeight.100': css({\n lineHeight: \"var(--ds-font-lineHeight-100, 16px)\"\n }),\n 'lineHeight.200': css({\n lineHeight: \"var(--ds-font-lineHeight-200, 20px)\"\n }),\n 'lineHeight.300': css({\n lineHeight: \"var(--ds-font-lineHeight-300, 24px)\"\n }),\n 'lineHeight.400': css({\n lineHeight: \"var(--ds-font-lineHeight-400, 28px)\"\n }),\n 'lineHeight.500': css({\n lineHeight: \"var(--ds-font-lineHeight-500, 32px)\"\n }),\n 'lineHeight.600': css({\n lineHeight: \"var(--ds-font-lineHeight-600, 40px)\"\n })\n};\n/**\n * @codegenEnd\n */\n/**\n * THIS SECTION WAS CREATED VIA CODEGEN DO NOT MODIFY {@see http://go/af-codegen}\n * @codegen <>\n * @codegenId colors\n * @codegenCommand yarn codegen-styles\n * @codegenParams [\"text\"]\n * @codegenDependency ../../../tokens/src/artifacts/tokens-raw/atlassian-light.tsx <>\n */\nconst textColorMap = {\n 'color.text': css({\n color: \"var(--ds-text, #172B4D)\"\n }),\n disabled: css({\n color: \"var(--ds-text-disabled, #A5ADBA)\"\n }),\n inverse: css({\n color: \"var(--ds-text-inverse, #FFFFFF)\"\n }),\n selected: css({\n color: \"var(--ds-text-selected, #0052CC)\"\n }),\n brand: css({\n color: \"var(--ds-text-brand, #0065FF)\"\n }),\n danger: css({\n color: \"var(--ds-text-danger, #DE350B)\"\n }),\n warning: css({\n color: \"var(--ds-text-warning, #974F0C)\"\n }),\n 'warning.inverse': css({\n color: \"var(--ds-text-warning-inverse, #172B4D)\"\n }),\n success: css({\n color: \"var(--ds-text-success, #006644)\"\n }),\n discovery: css({\n color: \"var(--ds-text-discovery, #403294)\"\n }),\n information: css({\n color: \"var(--ds-text-information, #0052CC)\"\n }),\n subtlest: css({\n color: \"var(--ds-text-subtlest, #7A869A)\"\n }),\n subtle: css({\n color: \"var(--ds-text-subtle, #42526E)\"\n })\n};\n\n/**\n * @codegenEnd\n */","var isBrowser = \"object\" !== 'undefined';\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false ) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import { useEffect, useRef } from 'react';\n\n/**\n * Focusing on the passed element ref after initial mount.\n * Will only focus on initial mount.\n *\n * https://developer.mozilla.org/en-US/docs/Web/API/HTMLSelectElement/autofocus\n *\n * ```tsx\n * import useAutoFocus from '@atlaskit/ds-lib/use-auto-focus';\n *\n * const elementRef = useRef();\n * useAutoFocus(elementRef, true);\n *\n * \n * \n * )\n * ```\n */\nconst FocusRing = /*#__PURE__*/memo(({\n children,\n isInset,\n focus\n}) => {\n const controlledStyles = isInset ? baseInsetStyles : baseFocusOutsideStyles;\n const uncontrolledStyles = isInset ? insetFocusRingStyles : focusRingStyles;\n const focusCls = typeof focus === 'undefined' ? uncontrolledStyles : focus === 'on' && controlledStyles;\n return jsx(ClassNames, null, ({\n css,\n cx\n }) => Children.only(\n // This may look unwieldy but means we skip applying styles / cloning if no className is applicable\n focusCls ?\n /*#__PURE__*/\n // eslint-disable-next-line @repo/internal/react/no-clone-element\n cloneElement(children, {\n className: cx([css(focusCls), children.props.className])\n }) : children));\n});\nFocusRing.displayName = 'FocusRing';\nexport default FocusRing;","import { gridSize as akGridSize, borderRadius } from '@atlaskit/theme/constants';\nimport * as colors from '@atlaskit/theme/colors';\nexport var themeNamespace = '@atlaskit-shared-theme/item'; // Used for Group titles and Item descriptions\n\nexport var compactSmallFontSize = 10;\nexport var compactLineHeight = 1.2;\nexport var gridSize = akGridSize();\nexport var defaultTheme = {\n afterItemSpacing: {\n compact: akGridSize(),\n default: akGridSize()\n },\n beforeItemSpacing: {\n compact: akGridSize(),\n default: akGridSize()\n },\n borderRadius: borderRadius(),\n focus: {\n outline: colors.B100\n },\n height: {\n compact: 0,\n default: 0\n },\n width: {\n compact: 'auto',\n default: 'auto'\n },\n padding: {\n default: {\n bottom: akGridSize() / 2,\n left: akGridSize() / 2,\n right: akGridSize() / 2,\n top: akGridSize() / 2\n },\n compact: {\n bottom: akGridSize(),\n left: akGridSize(),\n right: akGridSize(),\n top: akGridSize()\n }\n },\n default: {\n background: colors.background,\n text: colors.text,\n secondaryText: colors.N200\n },\n selected: {\n background: colors.backgroundActive,\n text: colors.N500,\n secondaryText: colors.N200\n },\n active: {\n background: colors.backgroundActive,\n text: colors.textActive,\n secondaryText: colors.N200\n },\n hover: {\n background: colors.backgroundHover,\n text: colors.textHover,\n secondaryText: colors.N200\n },\n disabled: {\n background: colors.N0,\n text: colors.N200,\n secondaryText: colors.N200\n },\n // same as hover in this case\n dragging: {\n background: colors.N20,\n text: colors.N800,\n secondaryText: colors.N200\n }\n};\n\nvar isValidCssValue = function isValidCssValue(value) {\n return value !== undefined && value !== null && value !== '';\n}; // Returns the theme that contains the requested theme key(s), preferring the user-supplied\n// theme if it is provided.\n\n\nexport var themeWithKeys = function themeWithKeys(maybeTheme, key, parentKey) {\n if (parentKey) {\n return maybeTheme && maybeTheme[parentKey] && isValidCssValue(maybeTheme[parentKey][key]) ? maybeTheme : defaultTheme;\n }\n\n return maybeTheme && isValidCssValue(maybeTheme[key]) ? maybeTheme : defaultTheme;\n}; // Returns the theme value for the requested key(s), falling back to the default theme if the\n// user-supplied theme doesn't exist or doesn't contain the requested key(s)\n\nexport var getThemeStyle = function getThemeStyle(maybeTheme, key, parentKey) {\n var theme = themeWithKeys(maybeTheme, key, parentKey);\n return parentKey ? theme[parentKey][key] : theme[key];\n};","// ideally this would be fetched from ../constants but that causes a\n// circular dep loop. This will be refactored as part of a breaking\n// change in the future.\nconst DEFAULT_THEME_MODE = 'light';\nconst THEME_MODES = ['light', 'dark'];\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if ('__ATLASKIT_THEME__' in props.theme) {\n return props.theme.__ATLASKIT_THEME__;\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return { mode: DEFAULT_THEME_MODE };\n}\n//# sourceMappingURL=getTheme.js.map","/* eslint-disable prefer-rest-params */\nimport getTheme from './getTheme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return (props) => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value)\n return value; // TS believes value can be undefined\n }\n }\n return '';\n };\n}\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return (props) => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value)\n return value;\n }\n return '';\n };\n}\n//# sourceMappingURL=themed.js.map","import themed from './utils/themed';\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n// Themed colors\nexport const background = themed({ light: N0, dark: DN30 });\nexport const backgroundActive = themed({ light: B50, dark: B75 });\nexport const backgroundHover = themed({ light: N30, dark: DN70 });\nexport const backgroundOnLayer = themed({ light: N0, dark: DN50 });\nexport const text = themed({ light: N900, dark: DN600 });\nexport const textHover = themed({ light: N800, dark: DN600 });\nexport const textActive = themed({ light: B400, dark: B400 });\nexport const subtleText = themed({ light: N200, dark: DN300 });\nexport const placeholderText = themed({ light: N100, dark: DN200 });\nexport const heading = themed({ light: N800, dark: DN600 });\nexport const subtleHeading = themed({ light: N200, dark: DN300 });\nexport const codeBlock = themed({ light: N20, dark: DN50 });\nexport const link = themed({ light: B400, dark: B100 });\nexport const linkHover = themed({ light: B300, dark: B200 });\nexport const linkActive = themed({ light: B500, dark: B100 });\nexport const linkOutline = themed({ light: B100, dark: B200 });\nexport const primary = themed({ light: B400, dark: B100 });\nexport const blue = themed({ light: B400, dark: B100 });\nexport const teal = themed({ light: T300, dark: T200 });\nexport const purple = themed({ light: P300, dark: P100 });\nexport const red = themed({ light: R300, dark: R300 });\nexport const yellow = themed({ light: Y300, dark: Y300 });\nexport const green = themed({ light: G300, dark: G300 });\nexport const skeleton = () => N20A;\n//# sourceMappingURL=colors.js.map","import { css } from 'styled-components';\nimport { B100, N30A, skeleton as skeletonColor } from './colors';\nexport const FLATTENED = '__FLATTENED__';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\nexport const borderRadius = () => 3;\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\nexport const focusRing = (color = B100, outlineWidth = gridSize() / 4) => `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n dialog: () => 300,\n navigation: () => 200,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 800,\n};\nexport const visuallyHidden = () => ({\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important',\n});\n/**\n * Deprecated Styled Components mixin.\n * Use visuallyHidden instead.\n * @deprecated\n */\nexport const assistive = () => css `\n border: 0 !important;\n clip: rect(1px, 1px, 1px, 1px) !important;\n height: 1px !important;\n overflow: hidden !important;\n padding: 0 !important;\n position: absolute !important;\n width: 1px !important;\n white-space: nowrap !important;\n`;\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: skeletonColor(),\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate',\n },\n keyframes: {\n from: {\n backgroundColor: skeletonColor(),\n },\n to: {\n backgroundColor: N30A,\n },\n },\n});\n//# sourceMappingURL=constants.js.map","import React from 'react';\nimport ExitingPersistence from '@atlaskit/motion/exiting-persistence';\n\nconst ModalTransition = props => {\n return /*#__PURE__*/React.createElement(ExitingPersistence, {\n appear: true\n }, props.children);\n};\n\nexport default ModalTransition;","/**\n * An empty function which does nothing.\n */\nexport default function noop() {}","import { useRef } from 'react';\nconst uniqueReferencedValue = {};\n/**\n * Executes the initializer function once and saves its result into a ref.\n *\n * ```js\n * const ref = useLazyRef(() => 10);\n * ```\n *\n * @param initializer\n */\n\nexport default function useLazyRef(initializer) {\n const ref = useRef(uniqueReferencedValue);\n\n if (ref.current === uniqueReferencedValue) {\n ref.current = initializer();\n }\n\n return ref;\n}","import useLazyRef from './use-lazy-ref';\n/**\n * Saves the passed through `callback` to a ref to ensure stability between renders.\n * As a feature this callback will only be created **once**,\n * this means it will have a stale closure on subsequent render.\n *\n * If you need to access things in the parent scope make sure to do it with refs.\n *\n * ```js\n * const callback = useLazyCallback(() => 10);\n * ```\n *\n * @param callback\n */\n\nexport default function useLazyCallback(callback) {\n const ref = useLazyRef(() => callback);\n return ref.current;\n}","import { useRef, useState } from 'react';\n/**\n * Functions similarly to `useState` however the return value is a ref.\n *\n * ```js\n * const [valueRef, setValue] = useStateRef(0);\n * ```\n *\n * @param initialState\n */\n\nexport default function useStateRef(initialState) {\n const [value, setValue] = useState(initialState);\n const valueRef = useRef(value);\n valueRef.current = value;\n return [valueRef, setValue];\n}","import { useEffect } from 'react';\nimport useLazyCallback from '@atlaskit/ds-lib/use-lazy-callback';\nimport usePreviousValue from '@atlaskit/ds-lib/use-previous-value';\nimport useStateRef from '@atlaskit/ds-lib/use-state-ref';\nimport { useExitingPersistence } from '@atlaskit/motion/exiting-persistence';\n/**\n * ________________________________________________\n * | MAJOR VERSIONS WILL NOT KNOW ABOUT EACH OTHER! |\n * ------------------------------------------------\n *\n * An array which holds references to all currently open modal dialogs.\n * This will only work for modal dialogs of the same major version,\n * as the reference will be different between them.\n *\n * E.g. V11 won't know about any from V12.\n */\n\nconst modalStackRegister = [];\n\n/**\n * Returns the position of the calling modal dialog in the modal dialog stack.\n * Stack index of `0` is the highest position in the stack,\n * with every higher number being behind in the stack.\n */\nexport default function useModalStack({\n onStackChange\n}) {\n const {\n isExiting\n } = useExitingPersistence();\n const [stackIndexRef, setStackIndex] = useStateRef(0);\n const currentStackIndex = stackIndexRef.current;\n const previousStackIndex = usePreviousValue(stackIndexRef.current); // We want to ensure this function **never changes** during the lifecycle of this component.\n // This is why it's assigned to a ref and not in a useMemo/useCallback.\n\n const updateStack = useLazyCallback(() => {\n const newStackIndex = modalStackRegister.indexOf(updateStack); // We access the stack index ref instead of state because this closure will always only\n // have the initial state and not any of the later values.\n\n if (stackIndexRef.current !== newStackIndex) {\n setStackIndex(newStackIndex);\n stackIndexRef.current = newStackIndex;\n }\n });\n useEffect(() => {\n const currentStackIndex = modalStackRegister.indexOf(updateStack);\n\n if (!isExiting && currentStackIndex === -1) {\n // We are opening the modal dialog.\n // Add ourselves to the modal stack register!\n modalStackRegister.unshift(updateStack);\n }\n\n if (isExiting && currentStackIndex !== -1) {\n // We are closing the modal dialog using a wrapping modal transition component.\n // Remove ourselves from the modal stack register!\n // NOTE: Modal dialogs that don't have a wrapping modal transition component won't flow through here!\n // For that scenario we cleanup when the component unmounts.\n modalStackRegister.splice(currentStackIndex, 1);\n } // Fire all registered modal dialogs to update their position in the stack.\n\n\n modalStackRegister.forEach(cb => cb());\n }, [updateStack, isExiting]);\n useEffect(() => () => {\n // Final cleanup just in case this modal dialog did not have a wrapping modal transition.\n const currentStackIndex = modalStackRegister.indexOf(updateStack);\n\n if (currentStackIndex !== -1) {\n modalStackRegister.splice(currentStackIndex, 1);\n modalStackRegister.forEach(cb => cb());\n }\n }, [updateStack]);\n useEffect(() => {\n if (previousStackIndex === undefined) {\n // Initial case that we don't need to notify about.\n return;\n }\n\n if (previousStackIndex !== currentStackIndex) {\n onStackChange(currentStackIndex);\n }\n }, [onStackChange, previousStackIndex, currentStackIndex]);\n return currentStackIndex;\n}","export var FOCUS_GROUP = 'data-focus-lock';\nexport var FOCUS_DISABLED = 'data-focus-lock-disabled';\nexport var FOCUS_ALLOW = 'data-no-focus-lock';\nexport var FOCUS_AUTO = 'data-autofocus-inside';","export var toArray = function toArray(a) {\n var ret = Array(a.length);\n for (var i = 0; i < a.length; ++i) {\n ret[i] = a[i];\n }\n return ret;\n};\n\nexport var arrayFind = function arrayFind(array, search) {\n return array.filter(function (a) {\n return a === search;\n })[0];\n};\n\nexport var asArray = function asArray(a) {\n return Array.isArray(a) ? a : [a];\n};","var _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; };\n\nimport { FOCUS_DISABLED, FOCUS_GROUP } from '../constants';\nimport { asArray, toArray } from './array';\n\nvar filterNested = function filterNested(nodes) {\n var l = nodes.length;\n for (var i = 0; i < l; i += 1) {\n var _loop = function _loop(j) {\n if (i !== j) {\n if (nodes[i].contains(nodes[j])) {\n return {\n v: filterNested(nodes.filter(function (x) {\n return x !== nodes[j];\n }))\n };\n }\n }\n };\n\n for (var j = 0; j < l; j += 1) {\n var _ret = _loop(j);\n\n if ((typeof _ret === 'undefined' ? 'undefined' : _typeof(_ret)) === \"object\") return _ret.v;\n }\n }\n return nodes;\n};\n\nvar getTopParent = function getTopParent(node) {\n return node.parentNode ? getTopParent(node.parentNode) : node;\n};\n\nvar getAllAffectedNodes = function getAllAffectedNodes(node) {\n var nodes = asArray(node);\n return nodes.filter(Boolean).reduce(function (acc, currentNode) {\n var group = currentNode.getAttribute(FOCUS_GROUP);\n acc.push.apply(acc, group ? filterNested(toArray(getTopParent(currentNode).querySelectorAll('[' + FOCUS_GROUP + '=\"' + group + '\"]:not([' + FOCUS_DISABLED + '=\"disabled\"])'))) : [currentNode]);\n return acc;\n }, []);\n};\n\nexport default getAllAffectedNodes;","import getAllAffectedNodes from './utils/all-affected';\nimport { arrayFind, toArray } from './utils/array';\n\nvar focusInFrame = function focusInFrame(frame) {\n return frame === document.activeElement;\n};\n\nvar focusInsideIframe = function focusInsideIframe(topNode) {\n return !!arrayFind(toArray(topNode.querySelectorAll('iframe')), focusInFrame);\n};\n\nvar focusInside = function focusInside(topNode) {\n var activeElement = document && document.activeElement;\n\n if (!activeElement || activeElement.dataset && activeElement.dataset.focusGuard) {\n return false;\n }\n return getAllAffectedNodes(topNode).reduce(function (result, node) {\n return result || node.contains(activeElement) || focusInsideIframe(node);\n }, false);\n};\n\nexport default focusInside;","import { toArray } from './array';\n\nexport var tabSort = function tabSort(a, b) {\n var tabDiff = a.tabIndex - b.tabIndex;\n var indexDiff = a.index - b.index;\n\n if (tabDiff) {\n if (!a.tabIndex) return 1;\n if (!b.tabIndex) return -1;\n }\n\n return tabDiff || indexDiff;\n};\n\nexport var orderByTabIndex = function orderByTabIndex(nodes, filterNegative, keepGuards) {\n return toArray(nodes).map(function (node, index) {\n return {\n node: node,\n index: index,\n tabIndex: keepGuards && node.tabIndex === -1 ? (node.dataset || {}).focusGuard ? 0 : -1 : node.tabIndex\n };\n }).filter(function (data) {\n return !filterNegative || data.tabIndex >= 0;\n }).sort(tabSort);\n};","export default ['button:enabled:not([readonly])', 'select:enabled:not([readonly])', 'textarea:enabled:not([readonly])', 'input:enabled:not([readonly])', 'a[href]', 'area[href]', 'iframe', 'object', 'embed', '[tabindex]', '[contenteditable]', '[autofocus]'];","import tabbables from './tabbables';\nimport { toArray } from './array';\nimport { FOCUS_AUTO } from '../constants';\n\nvar queryTabbables = tabbables.join(',');\nvar queryGuardTabbables = queryTabbables + ', [data-focus-guard]';\n\nexport var getFocusables = function getFocusables(parents, withGuards) {\n return parents.reduce(function (acc, parent) {\n return acc.concat(\n // add all tabbables inside\n toArray(parent.querySelectorAll(withGuards ? queryGuardTabbables : queryTabbables)),\n // add if node is tabble itself\n parent.parentNode ? toArray(parent.parentNode.querySelectorAll(tabbables.join(','))).filter(function (node) {\n return node === parent;\n }) : []);\n }, []);\n};\n\nexport var getParentAutofocusables = function getParentAutofocusables(parent) {\n var parentFocus = parent.querySelectorAll('[' + FOCUS_AUTO + ']');\n return toArray(parentFocus).map(function (node) {\n return getFocusables([node]);\n }).reduce(function (acc, nodes) {\n return acc.concat(nodes);\n }, []);\n};","import { orderByTabIndex } from './tabOrder';\nimport { getFocusables, getParentAutofocusables } from './tabUtils';\nimport { toArray } from './array';\n\nvar isElementHidden = function isElementHidden(computedStyle) {\n if (!computedStyle || !computedStyle.getPropertyValue) {\n return false;\n }\n return computedStyle.getPropertyValue('display') === 'none' || computedStyle.getPropertyValue('visibility') === 'hidden';\n};\n\nexport var isVisible = function isVisible(node) {\n return !node || node === document || node.nodeType === Node.DOCUMENT_NODE || !isElementHidden(window.getComputedStyle(node, null)) && isVisible(node.parentNode);\n};\n\nexport var notHiddenInput = function notHiddenInput(node) {\n return !((node.tagName === 'INPUT' || node.tagName === 'BUTTON') && (node.type === 'hidden' || node.disabled));\n};\n\nvar getParents = function getParents(node) {\n var parents = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n\n parents.push(node);\n if (node.parentNode) {\n getParents(node.parentNode, parents);\n }\n return parents;\n};\n\nexport var getCommonParent = function getCommonParent(nodea, nodeb) {\n var parentsA = getParents(nodea);\n var parentsB = getParents(nodeb);\n\n for (var i = 0; i < parentsA.length; i += 1) {\n var currentParent = parentsA[i];\n if (parentsB.indexOf(currentParent) >= 0) {\n return currentParent;\n }\n }\n return false;\n};\n\nexport var filterFocusable = function filterFocusable(nodes) {\n return toArray(nodes).filter(function (node) {\n return isVisible(node);\n }).filter(function (node) {\n return notHiddenInput(node);\n });\n};\n\nexport var getTabbableNodes = function getTabbableNodes(topNodes, withGuards) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes, withGuards)), true, withGuards);\n};\n\nexport var getAllTabbableNodes = function getAllTabbableNodes(topNodes) {\n return orderByTabIndex(filterFocusable(getFocusables(topNodes)), false);\n};\n\nexport var parentAutofocusables = function parentAutofocusables(topNode) {\n return filterFocusable(getParentAutofocusables(topNode));\n};","var isRadio = function isRadio(node) {\n return node.tagName === 'INPUT' && node.type === 'radio';\n};\n\nvar findSelectedRadio = function findSelectedRadio(node, nodes) {\n return nodes.filter(isRadio).filter(function (el) {\n return el.name === node.name;\n }).filter(function (el) {\n return el.checked;\n })[0] || node;\n};\n\nvar pickFirstFocus = function pickFirstFocus(nodes) {\n if (nodes[0] && nodes.length > 1) {\n if (isRadio(nodes[0]) && nodes[0].name) {\n return findSelectedRadio(nodes[0], nodes);\n }\n }\n return nodes[0];\n};\n\nexport var pickFocusable = function pickFocusable(nodes, index) {\n if (nodes.length > 1) {\n if (isRadio(nodes[index]) && nodes[index].name) {\n return nodes.indexOf(findSelectedRadio(nodes[index], nodes));\n }\n }\n return index;\n};\n\nexport default pickFirstFocus;","import { getCommonParent, getTabbableNodes, getAllTabbableNodes, parentAutofocusables } from './utils/DOMutils';\nimport pickFirstFocus, { pickFocusable } from './utils/firstFocus';\nimport getAllAffectedNodes from './utils/all-affected';\nimport { asArray } from './utils/array';\n\nvar findAutoFocused = function findAutoFocused(autoFocusables) {\n return function (node) {\n return !!node.autofocus || node.dataset && !!node.dataset.autofocus || autoFocusables.indexOf(node) >= 0;\n };\n};\n\nvar isGuard = function isGuard(node) {\n return node && node.dataset && node.dataset.focusGuard;\n};\nvar notAGuard = function notAGuard(node) {\n return !isGuard(node);\n};\n\nexport var newFocus = function newFocus(innerNodes, outerNodes, activeElement, lastNode, autoFocused) {\n var cnt = innerNodes.length;\n var firstFocus = innerNodes[0];\n var lastFocus = innerNodes[cnt - 1];\n var isOnGuard = isGuard(activeElement);\n\n // focus is inside\n if (innerNodes.indexOf(activeElement) >= 0) {\n return undefined;\n }\n\n var activeIndex = outerNodes.indexOf(activeElement);\n var lastIndex = outerNodes.indexOf(lastNode || activeIndex);\n var lastNodeInside = innerNodes.indexOf(lastNode);\n var indexDiff = activeIndex - lastIndex;\n var firstNodeIndex = outerNodes.indexOf(firstFocus);\n var lastNodeIndex = outerNodes.indexOf(lastFocus);\n\n var returnFirstNode = pickFocusable(innerNodes, 0);\n var returnLastNode = pickFocusable(innerNodes, cnt - 1);\n\n // new focus\n if (activeIndex === -1 || lastNodeInside === -1) {\n return innerNodes.indexOf(autoFocused && autoFocused.length ? pickFirstFocus(autoFocused) : pickFirstFocus(innerNodes));\n }\n // old focus\n if (!indexDiff && lastNodeInside >= 0) {\n return lastNodeInside;\n }\n // first element\n if (activeIndex <= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnLastNode;\n }\n // last element\n if (activeIndex >= firstNodeIndex && isOnGuard && Math.abs(indexDiff) > 1) {\n return returnFirstNode;\n }\n // jump out, but not on the guard\n if (indexDiff && Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n // focus above lock\n if (activeIndex <= firstNodeIndex) {\n return returnLastNode;\n }\n // focus below lock\n if (activeIndex > lastNodeIndex) {\n return returnFirstNode;\n }\n // index is inside tab order, but outside Lock\n if (indexDiff) {\n if (Math.abs(indexDiff) > 1) {\n return lastNodeInside;\n }\n return (cnt + lastNodeInside + indexDiff) % cnt;\n }\n // do nothing\n return undefined;\n};\n\nvar getTopCommonParent = function getTopCommonParent(baseActiveElement, leftEntry, rightEntries) {\n var activeElements = asArray(baseActiveElement);\n var leftEntries = asArray(leftEntry);\n var activeElement = activeElements[0];\n var topCommon = null;\n leftEntries.filter(Boolean).forEach(function (entry) {\n topCommon = getCommonParent(topCommon || entry, entry) || topCommon;\n rightEntries.filter(Boolean).forEach(function (subEntry) {\n var common = getCommonParent(activeElement, subEntry);\n if (common) {\n if (!topCommon || common.contains(topCommon)) {\n topCommon = common;\n } else {\n topCommon = getCommonParent(common, topCommon);\n }\n }\n });\n });\n return topCommon;\n};\n\nvar allParentAutofocusables = function allParentAutofocusables(entries) {\n return entries.reduce(function (acc, node) {\n return acc.concat(parentAutofocusables(node));\n }, []);\n};\n\nvar reorderNodes = function reorderNodes(srcNodes, dstNodes) {\n var remap = new Map();\n // no Set(dstNodes) for IE11 :(\n dstNodes.forEach(function (entity) {\n return remap.set(entity.node, entity);\n });\n // remap to dstNodes\n return srcNodes.map(function (node) {\n return remap.get(node);\n }).filter(Boolean);\n};\n\nexport var getFocusabledIn = function getFocusabledIn(topNode) {\n var entries = getAllAffectedNodes(topNode).filter(notAGuard);\n var commonParent = getTopCommonParent(topNode, topNode, entries);\n var outerNodes = getTabbableNodes([commonParent], true);\n var innerElements = getTabbableNodes(entries).filter(function (_ref) {\n var node = _ref.node;\n return notAGuard(node);\n }).map(function (_ref2) {\n var node = _ref2.node;\n return node;\n });\n\n return outerNodes.map(function (_ref3) {\n var node = _ref3.node,\n index = _ref3.index;\n return {\n node: node,\n index: index,\n lockItem: innerElements.indexOf(node) >= 0,\n guard: isGuard(node)\n };\n });\n};\n\nvar getFocusMerge = function getFocusMerge(topNode, lastNode) {\n var activeElement = document && document.activeElement;\n var entries = getAllAffectedNodes(topNode).filter(notAGuard);\n\n var commonParent = getTopCommonParent(activeElement || topNode, topNode, entries);\n\n var innerElements = getTabbableNodes(entries).filter(function (_ref4) {\n var node = _ref4.node;\n return notAGuard(node);\n });\n\n if (!innerElements[0]) {\n innerElements = getAllTabbableNodes(entries).filter(function (_ref5) {\n var node = _ref5.node;\n return notAGuard(node);\n });\n if (!innerElements[0]) {\n return undefined;\n }\n }\n\n var outerNodes = getTabbableNodes([commonParent]).map(function (_ref6) {\n var node = _ref6.node;\n return node;\n });\n var orderedInnerElements = reorderNodes(outerNodes, innerElements);\n var innerNodes = orderedInnerElements.map(function (_ref7) {\n var node = _ref7.node;\n return node;\n });\n\n var newId = newFocus(innerNodes, outerNodes, activeElement, lastNode, innerNodes.filter(findAutoFocused(allParentAutofocusables(entries))));\n\n if (newId === undefined) {\n return newId;\n }\n return orderedInnerElements[newId];\n};\n\nexport default getFocusMerge;","import getFocusMerge from './focusMerge';\n\nexport var focusOn = function focusOn(target) {\n target.focus();\n if (target.contentWindow) {\n target.contentWindow.focus();\n }\n};\n\nvar guardCount = 0;\nvar lockDisabled = false;\n\nexport default (function (topNode, lastNode) {\n var focusable = getFocusMerge(topNode, lastNode);\n\n if (lockDisabled) {\n return;\n }\n\n if (focusable) {\n if (guardCount > 2) {\n // eslint-disable-next-line no-console\n console.error('FocusLock: focus-fighting detected. Only one focus management system could be active. ' + 'See https://github.com/theKashey/focus-lock/#focus-fighting');\n lockDisabled = true;\n setTimeout(function () {\n lockDisabled = false;\n }, 1);\n return;\n }\n guardCount++;\n focusOn(focusable.node);\n guardCount--;\n }\n});","export function deferAction(action) {\n // Hidding setImmediate from Webpack to avoid inserting polyfill\n var setImmediate = window.setImmediate;\n\n if (typeof setImmediate !== 'undefined') {\n setImmediate(action);\n } else {\n setTimeout(action, 1);\n }\n}\nexport var inlineProp = function inlineProp(name, value) {\n var obj = {};\n obj[name] = value;\n return obj;\n};","import React from 'react';\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-clientside-effect';\nimport moveFocusInside, { focusInside, focusIsHidden, getFocusabledIn } from 'focus-lock';\nimport { deferAction } from './util';\n\nvar focusOnBody = function focusOnBody() {\n return document && document.activeElement === document.body;\n};\n\nvar isFreeFocus = function isFreeFocus() {\n return focusOnBody() || focusIsHidden();\n};\n\nvar lastActiveTrap = null;\nvar lastActiveFocus = null;\nvar lastPortaledElement = null;\nvar focusWasOutsideWindow = false;\n\nvar defaultWhitelist = function defaultWhitelist() {\n return true;\n};\n\nvar focusWhitelisted = function focusWhitelisted(activeElement) {\n return (lastActiveTrap.whiteList || defaultWhitelist)(activeElement);\n};\n\nvar recordPortal = function recordPortal(observerNode, portaledElement) {\n lastPortaledElement = {\n observerNode: observerNode,\n portaledElement: portaledElement\n };\n};\n\nvar focusIsPortaledPair = function focusIsPortaledPair(element) {\n return lastPortaledElement && lastPortaledElement.portaledElement === element;\n};\n\nfunction autoGuard(startIndex, end, step, allNodes) {\n var lastGuard = null;\n var i = startIndex;\n\n do {\n var item = allNodes[i];\n\n if (item.guard) {\n if (item.node.dataset.focusAutoGuard) {\n lastGuard = item;\n }\n } else if (item.lockItem) {\n if (i !== startIndex) {\n // we will tab to the next element\n return;\n }\n\n lastGuard = null;\n } else {\n break;\n }\n } while ((i += step) !== end);\n\n if (lastGuard) {\n lastGuard.node.tabIndex = 0;\n }\n}\n\nvar extractRef = function extractRef(ref) {\n return ref && 'current' in ref ? ref.current : ref;\n};\n\nvar activateTrap = function activateTrap() {\n var result = false;\n\n if (lastActiveTrap) {\n var _lastActiveTrap = lastActiveTrap,\n observed = _lastActiveTrap.observed,\n persistentFocus = _lastActiveTrap.persistentFocus,\n autoFocus = _lastActiveTrap.autoFocus,\n shards = _lastActiveTrap.shards;\n var workingNode = observed || lastPortaledElement && lastPortaledElement.portaledElement;\n var activeElement = document && document.activeElement;\n\n if (workingNode) {\n var workingArea = [workingNode].concat(shards.map(extractRef).filter(Boolean));\n\n if (!activeElement || focusWhitelisted(activeElement)) {\n if (persistentFocus || focusWasOutsideWindow || !isFreeFocus() || !lastActiveFocus && autoFocus) {\n if (workingNode && !(focusInside(workingArea) || focusIsPortaledPair(activeElement, workingNode))) {\n if (document && !lastActiveFocus && activeElement && !autoFocus) {\n activeElement.blur();\n document.body.focus();\n } else {\n result = moveFocusInside(workingArea, lastActiveFocus);\n lastPortaledElement = {};\n }\n }\n\n focusWasOutsideWindow = false;\n lastActiveFocus = document && document.activeElement;\n }\n }\n\n if (document) {\n var newActiveElement = document && document.activeElement;\n var allNodes = getFocusabledIn(workingArea);\n var focusedItem = allNodes.find(function (_ref) {\n var node = _ref.node;\n return node === newActiveElement;\n });\n\n if (focusedItem) {\n // remove old focus\n allNodes.filter(function (_ref2) {\n var guard = _ref2.guard,\n node = _ref2.node;\n return guard && node.dataset.focusAutoGuard;\n }).forEach(function (_ref3) {\n var node = _ref3.node;\n return node.removeAttribute('tabIndex');\n });\n var focusedIndex = allNodes.indexOf(focusedItem);\n autoGuard(focusedIndex, allNodes.length, +1, allNodes);\n autoGuard(focusedIndex, -1, -1, allNodes);\n }\n }\n }\n }\n\n return result;\n};\n\nvar onTrap = function onTrap(event) {\n if (activateTrap() && event) {\n // prevent scroll jump\n event.stopPropagation();\n event.preventDefault();\n }\n};\n\nexport var onBlur = function onBlur() {\n return deferAction(activateTrap);\n};\nexport var onFocus = function onFocus(event) {\n // detect portal\n var source = event.target;\n var currentNode = event.currentTarget;\n\n if (!currentNode.contains(source)) {\n recordPortal(currentNode, source);\n }\n};\n\nvar FocusWatcher = function FocusWatcher() {\n return null;\n};\n\nvar FocusTrap = function FocusTrap(_ref4) {\n var children = _ref4.children;\n return React.createElement(\"div\", {\n onBlur: onBlur,\n onFocus: onFocus\n }, children);\n};\n\nFocusTrap.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\n\nvar onWindowBlur = function onWindowBlur() {\n focusWasOutsideWindow = true;\n};\n\nvar attachHandler = function attachHandler() {\n document.addEventListener('focusin', onTrap, true);\n document.addEventListener('focusout', onBlur);\n window.addEventListener('blur', onWindowBlur);\n};\n\nvar detachHandler = function detachHandler() {\n document.removeEventListener('focusin', onTrap, true);\n document.removeEventListener('focusout', onBlur);\n window.removeEventListener('blur', onWindowBlur);\n};\n\nfunction reducePropsToState(propsList) {\n return propsList.filter(function (_ref5) {\n var disabled = _ref5.disabled;\n return !disabled;\n }).slice(-1)[0];\n}\n\nfunction handleStateChangeOnClient(trap) {\n if (trap && !lastActiveTrap) {\n attachHandler();\n }\n\n var lastTrap = lastActiveTrap;\n var sameTrap = lastTrap && trap && trap.onActivation === lastTrap.onActivation;\n lastActiveTrap = trap;\n\n if (lastTrap && !sameTrap) {\n lastTrap.onDeactivation();\n }\n\n if (trap) {\n lastActiveFocus = null;\n\n if (!sameTrap || lastTrap.observed !== trap.observed) {\n trap.onActivation();\n }\n\n activateTrap(true);\n deferAction(activateTrap);\n } else {\n detachHandler();\n lastActiveFocus = null;\n }\n}\n\nexport default withSideEffect(reducePropsToState, handleStateChangeOnClient)(FocusWatcher);","import { toArray } from './utils/array';\nimport { FOCUS_ALLOW } from './constants';\n\nvar focusIsHidden = function focusIsHidden() {\n return document && toArray(document.querySelectorAll('[' + FOCUS_ALLOW + ']')).some(function (node) {\n return node.contains(document.activeElement);\n });\n};\n\nexport default focusIsHidden;","import React from 'react';\nimport PropTypes from 'prop-types';\nexport var hiddenGuard = {\n width: '1px',\n height: '0px',\n padding: 0,\n overflow: 'hidden',\n position: 'fixed',\n top: '1px',\n left: '1px'\n};\n\nvar InFocusGuard = function InFocusGuard(_ref) {\n var children = _ref.children;\n return React.createElement(React.Fragment, null, React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }), children, children && React.createElement(\"div\", {\n key: \"guard-last\",\n \"data-focus-guard\": true,\n \"data-focus-auto-guard\": true,\n style: hiddenGuard\n }));\n};\n\nInFocusGuard.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node\n} : {};\nInFocusGuard.defaultProps = {\n children: null\n};\nexport default InFocusGuard;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _inheritsLoose from \"@babel/runtime/helpers/inheritsLoose\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { constants } from 'focus-lock';\nimport FocusTrap, { onBlur, onFocus } from './Trap';\nimport { hiddenGuard } from './FocusGuard';\n\nvar RenderChildren = function RenderChildren(_ref) {\n var children = _ref.children;\n return React.createElement(\"div\", null, children);\n};\n\nRenderChildren.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired\n} : {};\nvar Fragment = React.Fragment ? React.Fragment : RenderChildren;\nvar emptyArray = [];\n\nvar FocusLock =\n/*#__PURE__*/\nfunction (_Component) {\n _inheritsLoose(FocusLock, _Component);\n\n function FocusLock() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _Component.call.apply(_Component, [this].concat(args)) || this;\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"state\", {\n observed: undefined\n });\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"onActivation\", function () {\n _this.originalFocusedElement = _this.originalFocusedElement || document && document.activeElement;\n\n if (_this.state.observed && _this.props.onActivation) {\n _this.props.onActivation(_this.state.observed);\n }\n\n _this.isActive = true;\n });\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"onDeactivation\", function () {\n _this.isActive = false;\n\n if (_this.props.returnFocus && _this.originalFocusedElement && _this.originalFocusedElement.focus) {\n _this.originalFocusedElement.focus();\n\n _this.originalFocusedElement = null;\n }\n\n if (_this.props.onDeactivation) {\n _this.props.onDeactivation(_this.state.observed);\n }\n });\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"onFocus\", function (event) {\n if (_this.isActive) {\n onFocus(event);\n }\n });\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"onBlur\", onBlur);\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"setObserveNode\", function (observed) {\n if (_this.state.observed !== observed) {\n _this.setState({\n observed: observed\n });\n }\n });\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"isActive\", false);\n\n _defineProperty(_assertThisInitialized(_assertThisInitialized(_this)), \"originalFocusedElement\", null);\n\n return _this;\n }\n\n var _proto = FocusLock.prototype;\n\n _proto.render = function render() {\n var _extends2;\n\n var _this$props = this.props,\n children = _this$props.children,\n disabled = _this$props.disabled,\n noFocusGuards = _this$props.noFocusGuards,\n persistentFocus = _this$props.persistentFocus,\n autoFocus = _this$props.autoFocus,\n allowTextSelection = _this$props.allowTextSelection,\n group = _this$props.group,\n className = _this$props.className,\n whiteList = _this$props.whiteList,\n _this$props$shards = _this$props.shards,\n shards = _this$props$shards === void 0 ? emptyArray : _this$props$shards,\n _this$props$as = _this$props.as,\n Container = _this$props$as === void 0 ? 'div' : _this$props$as,\n _this$props$lockProps = _this$props.lockProps,\n containerProps = _this$props$lockProps === void 0 ? {} : _this$props$lockProps;\n var observed = this.state.observed;\n\n if (process.env.NODE_ENV !== 'production') {\n if (typeof allowTextSelection !== 'undefined') {\n // eslint-disable-next-line no-console\n console.warn('React-Focus-Lock: allowTextSelection is deprecated and enabled by default');\n }\n }\n\n var lockProps = _extends((_extends2 = {}, _extends2[constants.FOCUS_DISABLED] = disabled && 'disabled', _extends2[constants.FOCUS_GROUP] = group, _extends2), containerProps);\n\n var hasLeadingGuards = noFocusGuards !== true;\n var hasTailingGuards = hasLeadingGuards && noFocusGuards !== 'tail';\n return React.createElement(Fragment, null, hasLeadingGuards && [React.createElement(\"div\", {\n key: \"guard-first\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }), // nearest focus guard\n React.createElement(\"div\", {\n key: \"guard-nearest\",\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 1,\n style: hiddenGuard\n })], React.createElement(Container, _extends({\n ref: this.setObserveNode\n }, lockProps, {\n className: className,\n onBlur: this.onBlur,\n onFocus: this.onFocus\n }), React.createElement(FocusTrap, {\n observed: observed,\n disabled: disabled,\n persistentFocus: persistentFocus,\n autoFocus: autoFocus,\n whiteList: whiteList,\n shards: shards,\n onActivation: this.onActivation,\n onDeactivation: this.onDeactivation\n }), children), hasTailingGuards && React.createElement(\"div\", {\n \"data-focus-guard\": true,\n tabIndex: disabled ? -1 : 0,\n style: hiddenGuard\n }));\n };\n\n return FocusLock;\n}(Component);\n\nFocusLock.propTypes = process.env.NODE_ENV !== \"production\" ? {\n children: PropTypes.node.isRequired,\n disabled: PropTypes.bool,\n returnFocus: PropTypes.bool,\n noFocusGuards: PropTypes.bool,\n allowTextSelection: PropTypes.bool,\n autoFocus: PropTypes.bool,\n persistentFocus: PropTypes.bool,\n group: PropTypes.string,\n className: PropTypes.string,\n whiteList: PropTypes.func,\n shards: PropTypes.arrayOf(PropTypes.any),\n as: PropTypes.oneOfType([PropTypes.string, PropTypes.func, PropTypes.object]),\n lockProps: PropTypes.object,\n onActivation: PropTypes.func,\n onDeactivation: PropTypes.func\n} : {};\nFocusLock.defaultProps = {\n disabled: false,\n returnFocus: false,\n noFocusGuards: false,\n autoFocus: true,\n persistentFocus: false,\n allowTextSelection: undefined,\n group: undefined,\n className: undefined,\n whiteList: undefined,\n shards: undefined,\n as: 'div',\n lockProps: {},\n onActivation: undefined,\n onDeactivation: undefined\n};\nexport default FocusLock;","import FocusLock from './Lock';\nimport AutoFocusInside from './AutoFocusInside';\nimport MoveFocusInside from './MoveFocusInside';\nimport FreeFocusInside from './FreeFocusInside';\nimport InFocusGuard from './FocusGuard';\nexport { AutoFocusInside, MoveFocusInside, FreeFocusInside, InFocusGuard };\nexport default FocusLock;","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) || // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = { ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n\n this.payload = props.payload;\n }\n\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n\n if (typeof updater === 'object') {\n this.payload = { ...this.payload,\n ...updater\n };\n }\n\n return this;\n }\n\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) || // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n\n return null;\n }\n\n const context = [...this.context];\n const handlers = [...this.handlers];\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n\n return;\n }\n\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n\n return this;\n }\n\n return super.update(updater);\n }\n\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafEventHandler({\n fn,\n action,\n componentName,\n actionSubject,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents(); // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(value => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: actionSubject || componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n }); // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context); // fire an event on the atlaskit channel\n\n const clone = analyticsEvent.clone();\n\n if (clone) {\n clone.fire('atlaskit');\n }\n\n fnRef.current(value, analyticsEvent);\n }, [// These are strings and won't change\n action, componentName, actionSubject, packageName, packageVersion, // This function is memoized in the context\n createAnalyticsEvent, // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","/**\n * Assigns the node to all the refs passed in the argument.\n *\n * @param refs: An array of refs (as function or ref object)\n */\nexport default function mergeRefs(refs) {\n return value => {\n refs.forEach(ref => {\n if (typeof ref === 'function') {\n ref(value);\n } else if (ref !== null) {\n ref.current = value;\n }\n });\n };\n}","import { useEffect } from 'react';\n/**\n * Assigns an event listener to the document and cleans up after itself.\n * This event will not flow through the React event system,\n * which means it could add lots of event listeners affecting performance.\n * Use with caution.\n *\n * ```\n * useDocumentEvent('click', callback, true);\n * ```\n *\n * @param eventName\n * @param callback Ensure a stable reference else you will have your event bound/unbound unexpectedly.\n * @param options Ensure a stable reference else you will have your event bound/unbound unexpectedly.\n */\n\nexport default function useDocumentEvent(eventName, callback, options) {\n useEffect(() => {\n document.addEventListener(eventName, callback, options);\n return () => {\n document.removeEventListener(eventName, callback, options);\n };\n }, [eventName, callback, options]);\n}","import { useCallback, useLayoutEffect, useState } from 'react';\nimport useWindowEvent from '@atlaskit/ds-lib/use-window-event';\n/**\n * Returns how far the body is scrolled from the top of the viewport.\n *\n * ____\n * ||____|| <-- overflow\n * | | <-- viewport\n * |____|\n *\n * Scroll distance is the height of overflow outside the viewport.\n */\n\nfunction getScrollDistance() {\n var _document$documentEle, _document$body;\n\n return window.pageYOffset || ((_document$documentEle = document.documentElement) === null || _document$documentEle === void 0 ? void 0 : _document$documentEle.scrollTop) || ((_document$body = document.body) === null || _document$body === void 0 ? void 0 : _document$body.scrollTop) || 0;\n}\n/**\n * Prevents programatic scrolling of the viewport with `scrollIntoView`.\n * Should be used in conjunction with a scroll lock to prevent a user from scrolling.\n *\n * @returns scroll top offset of the viewport\n */\n\n\nexport default function usePreventProgrammaticScroll() {\n const [scrollTopOffset, setScrollTopOffset] = useState(0);\n useLayoutEffect(() => {\n setScrollTopOffset(getScrollDistance());\n }, []);\n const onWindowScroll = useCallback(() => {\n if (getScrollDistance() !== scrollTopOffset) {\n window.scrollTo(window.pageXOffset, scrollTopOffset);\n }\n }, [scrollTopOffset]);\n useWindowEvent('scroll', onWindowScroll);\n return scrollTopOffset;\n}","import { css } from '@emotion/core';\nimport { prefersReducedMotion } from '@atlaskit/motion/accessibility';\nimport { easeInOut } from '@atlaskit/motion/curves';\nimport { mediumDurationMs } from '@atlaskit/motion/durations';\nimport { N0, N30A, N60A, text } from '@atlaskit/theme/colors';\nimport { borderRadius, layers } from '@atlaskit/theme/constants';\nimport { gutter, verticalOffset, WIDTH_ENUM } from '../constants';\nconst maxWidthDimensions = `calc(100vw - ${gutter * 2}px)`;\nconst maxHeightDimensions = `calc(100vh - ${gutter * 2 - 1}px)`;\nexport const dialogWidth = width => {\n if (!width) {\n return 'auto';\n }\n\n const isWidthName = WIDTH_ENUM.values.indexOf(width.toString()) !== -1;\n const widthName = isWidthName && width;\n\n if (widthName) {\n return `${WIDTH_ENUM.widths[widthName]}px`;\n }\n\n return typeof width === 'number' ? `${width}px` : width;\n};\nexport const dialogHeight = height => {\n if (!height) {\n return 'auto';\n }\n\n return typeof height === 'number' ? `${height}px` : height;\n};\nexport const getFillScreenStyles = scrollDistance => css`\n height: 100vh;\n width: 100vw;\n\n // This instead of fixed so PopupSelect's\n // children are properly positioned.\n position: absolute;\n top: ${scrollDistance}px;\n left: 0;\n\n z-index: ${layers.modal()};\n overflow-y: auto; // Enables scroll outside.\n -webkit-overflow-scrolling: touch;\n`;\n\nconst modalStackTransition = stackIndex => css`\n // We only want to apply transform on modals shifting to the back of the stack.\n transform: ${stackIndex > 0 ? `translateY(${stackIndex * (verticalOffset / 2)}px)` : 'none'};\n transition-property: transform;\n transition-duration: ${mediumDurationMs}ms;\n transition-timing-function: ${easeInOut};\n ${prefersReducedMotion()};\n`;\n\nconst positionerBaseStyles = css`\n top: ${gutter}px;\n left: 0;\n right: 0;\n margin-left: auto;\n margin-right: auto;\n\n max-width: ${maxWidthDimensions};\n max-height: ${maxHeightDimensions};\n\n pointer-events: none;\n width: max-content;\n`;\nconst positionerResponsiveBaseStyles = css`\n position: fixed;\n left: 0;\n top: 0;\n\n height: 100%;\n width: 100%;\n max-width: 100%;\n\n z-index: ${layers.modal()};\n`;\nexport const getPositionRelativeStyles = stackIndex => css`\n ${positionerResponsiveBaseStyles};\n ${modalStackTransition(stackIndex)};\n\n margin: 0;\n\n @media (min-width: 480px) {\n position: relative;\n margin: ${gutter}px auto;\n width: max-content;\n }\n`;\nexport const getPositionAbsoluteStyles = stackIndex => css`\n ${positionerResponsiveBaseStyles};\n ${modalStackTransition(stackIndex)};\n\n @media (min-width: 480px) {\n ${positionerBaseStyles};\n position: absolute;\n }\n`;\nexport const getPositionFixedStyles = stackIndex => css`\n ${positionerResponsiveBaseStyles};\n ${modalStackTransition(stackIndex)};\n\n @media (min-width: 480px) {\n ${positionerBaseStyles};\n position: fixed;\n }\n`;\nexport const getDialogStyles = ({\n isChromeless,\n height,\n width\n}) => css`\n color: ${text()};\n display: flex;\n flex-direction: column;\n\n pointer-events: auto;\n\n height: 100%;\n width: 100%;\n max-height: 100vh;\n max-width: 100vw;\n\n ${isChromeless !== true && css`\n background-color: ${N0};\n `}\n\n @media (min-width: 480px) {\n height: ${dialogHeight(height)};\n width: ${dialogWidth(width)};\n max-height: inherit;\n max-width: inherit;\n\n margin-left: inherit;\n margin-right: inherit;\n\n ${isChromeless !== true && css`\n border-radius: ${borderRadius()}px;\n box-shadow: 0 0 0 1px ${N30A}, 0 2px 1px ${N30A}, 0 0 20px -6px ${N60A};\n `}\n }\n`;","import React, { createContext, useCallback, useContext } from 'react';\n/**\n * createTheme is used to create a set of Providers and Consumers for theming components.\n * - Takes a default theme function; this theme function gets a set of props, and returns tokens\n * based on those props. An example of this default theme function is one that produces the standard\n * appearance of the component\n * - Returns three things - a Provider that allow for additional themes to be applied, a Consumer\n * that can get the current theme and fetch it, and a custom hook - useTheme which provides an alternate (although functionally the same) API\n * to the Consumer.\n */\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n\n /**\n * Internally, Theme uses React Context, with internal providers and consumers.\n * The React Context passes only a function that gets props, and turns them into tokens. This\n * function gets mixed as more Providers with their own themes are added. This mixed function\n * is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n * the theme.\n */\n const ThemeContext = /*#__PURE__*/createContext(defaultGetTokens);\n function useTheme(themeProps) {\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n const tokens = themeFn(themeProps);\n return tokens;\n }\n\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const {\n children,\n ...themeProps\n } = props;\n\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = useTheme(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return /*#__PURE__*/React.createElement(React.Fragment, null, children(tokens));\n }\n\n /**\n * The Theme Provider takes regular nodes as its children, but also takes a *theme function*\n * - The theme function takes a set of props, as well as a function (getTokens) that can turn props into tokens.\n * - The getTokens function isn't called immediately - instead the props are passed\n * through a mix of parent theming functions\n * Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback(themeProps => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: mixedFn\n }, props.children);\n }\n return {\n Consumer,\n Provider,\n useTheme\n };\n}","import { createTheme } from '../utils/create-theme';\n\n// Create default global light theme\nconst {\n Provider,\n Consumer,\n useTheme\n} = createTheme(() => ({\n mode: 'light'\n}));\nexport { useTheme as useGlobalTheme };\nexport default {\n Provider,\n Consumer\n};","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = {\n ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n this.payload = props.payload;\n }\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = {\n ...this.payload,\n ...updater\n };\n }\n return this;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n return null;\n }\n const context = [...this.context];\n const handlers = [...this.handlers];\n\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n return;\n }\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n return this;\n }\n return super.update(updater);\n }\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafEventHandler({\n fn,\n action,\n componentName,\n actionSubject,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n\n // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(value => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: actionSubject || componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n });\n\n // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context);\n\n // fire an event on the atlaskit channel\n const clone = analyticsEvent.clone();\n if (clone) {\n clone.fire('atlaskit');\n }\n fnRef.current(value, analyticsEvent);\n }, [\n // These are strings and won't change\n action, componentName, actionSubject, packageName, packageVersion,\n // This function is memoized in the context\n createAnalyticsEvent,\n // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","/**\n * An empty function which does nothing.\n */\n// eslint-disable-next-line @repo/internal/react/use-noop\nexport default function noop() {}","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","function abort(event) {\n event.preventDefault();\n event.stopPropagation();\n}\nconst tabKeyCode = 9;\nfunction onKey(event) {\n // Allowing tab so that a user can move focus away\n if (event.keyCode === tabKeyCode) {\n return;\n }\n abort(event);\n}\nconst block = {\n onMouseDownCapture: abort,\n onMouseUpCapture: abort,\n // because we have tabIndex = -1 when disabled,\n // keyboard events can only occur when there is an overlay\n onKeyDownCapture: onKey,\n onKeyUpCapture: onKey,\n onTouchStartCapture: abort,\n onTouchEndCapture: abort,\n onPointerDownCapture: abort,\n onPointerUpCapture: abort,\n onClickCapture: abort,\n // Just smashing the existing onClick for good measure\n onClick: abort\n};\nconst doNotBlock = {};\nexport default function blockEvents({\n isInteractive\n}) {\n return isInteractive ? doNotBlock : block;\n}","import * as colors from '@atlaskit/theme/colors';\n// Hard coding the active rgba color value rather than using a helper to convert it\n// With helper it would be: hex2rgba(colors.B75, 0.6)\nconst fadedB75 = 'rgba(179, 212, 255, 0.6)';\nconst values = {\n // Default appearance\n background: {\n default: {\n default: {\n light: `var(--ds-background-neutral, ${colors.N20A})`,\n dark: `var(--ds-background-neutral, ${colors.DN70})`\n },\n hover: {\n light: `var(--ds-background-neutral-hovered, ${colors.N30A})`,\n dark: `var(--ds-background-neutral-hovered, ${colors.DN60})`\n },\n active: {\n light: `var(--ds-background-neutral-pressed, ${fadedB75})`,\n dark: `var(--ds-background-neutral-pressed, ${colors.B75})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n }\n },\n primary: {\n default: {\n light: `var(--ds-background-brand-bold, ${colors.B400})`,\n dark: `var(--ds-background-brand-bold, ${colors.B100})`\n },\n hover: {\n light: `var(--ds-background-brand-bold-hovered, ${colors.B300})`,\n dark: `var(--ds-background-brand-bold-hovered, ${colors.B75})`\n },\n active: {\n light: `var(--ds-background-brand-bold-pressed, ${colors.B500})`,\n dark: `var(--ds-background-brand-bold-pressed, ${colors.B200})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n }\n },\n warning: {\n default: {\n light: `var(--ds-background-warning-bold, ${colors.Y300})`,\n dark: `var(--ds-background-warning-bold, ${colors.Y300})`\n },\n hover: {\n light: `var(--ds-background-warning-bold-hovered, ${colors.Y200})`,\n dark: `var(--ds-background-warning-bold-hovered, ${colors.Y200})`\n },\n active: {\n light: `var(--ds-background-warning-bold-pressed, ${colors.Y400})`,\n dark: `var(--ds-background-warning-bold-pressed, ${colors.Y400})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.Y400})`,\n dark: `var(--ds-background-selected, ${colors.Y400})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.Y400})`,\n dark: `var(--ds-background-selected, ${colors.Y400})`\n }\n },\n danger: {\n default: {\n light: `var(--ds-background-danger-bold, ${colors.R400})`,\n dark: `var(--ds-background-danger-bold, ${colors.R400})`\n },\n hover: {\n light: `var(--ds-background-danger-bold-hovered, ${colors.R300})`,\n dark: `var(--ds-background-danger-bold-hovered, ${colors.R300})`\n },\n active: {\n light: `var(--ds-background-danger-bold-pressed, ${colors.R500})`,\n dark: `var(--ds-background-danger-bold-pressed, ${colors.R500})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.R500})`,\n dark: `var(--ds-background-selected, ${colors.R500})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.R500})`,\n dark: `var(--ds-background-selected, ${colors.R500})`\n }\n },\n link: {\n default: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n }\n },\n subtle: {\n default: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n hover: {\n light: `var(--ds-background-neutral-subtle-hovered, ${colors.N30A})`,\n dark: `var(--ds-background-neutral-subtle-hovered, ${colors.DN60})`\n },\n active: {\n light: `var(--ds-background-neutral-subtle-pressed, ${fadedB75})`,\n dark: `var(--ds-background-neutral-subtle-pressed, ${colors.B75})`\n },\n disabled: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n }\n },\n 'subtle-link': {\n default: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n }\n }\n },\n color: {\n default: {\n default: {\n light: `var(--ds-text, ${colors.N500})`,\n dark: `var(--ds-text, ${colors.DN400})`\n },\n active: {\n light: `var(--ds-text, ${colors.B400})`,\n dark: `var(--ds-text, ${colors.B400})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n },\n primary: {\n default: {\n light: `var(--ds-text-inverse, ${colors.N0})`,\n dark: `var(--ds-text-inverse, ${colors.DN30})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n },\n warning: {\n default: {\n light: `var(--ds-text-warning-inverse, ${colors.N800})`,\n dark: `var(--ds-text-warning-inverse, ${colors.N800})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N800})`,\n dark: `var(--ds-text-selected, ${colors.N800})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N800})`,\n dark: `var(--ds-text-selected, ${colors.N800})`\n }\n },\n danger: {\n default: {\n light: `var(--ds-text-inverse, ${colors.N0})`,\n dark: `var(--ds-text-inverse, ${colors.N0})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N0})`,\n dark: `var(--ds-text-selected, ${colors.N0})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N0})`,\n dark: `var(--ds-text-selected, ${colors.N0})`\n }\n },\n link: {\n default: {\n light: `var(--ds-link, ${colors.B400})`,\n dark: `var(--ds-link, ${colors.B100})`\n },\n hover: {\n light: `var(--ds-link, ${colors.B300})`,\n dark: `var(--ds-link, ${colors.B75})`\n },\n active: {\n light: `var(--ds-link-pressed, ${colors.B500})`,\n dark: `var(--ds-link-pressed, ${colors.B200})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN100})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.N700})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.N700})`\n }\n },\n subtle: {\n default: {\n light: `var(--ds-text, ${colors.N500})`,\n dark: `var(--ds-text, ${colors.DN400})`\n },\n active: {\n light: `var(--ds-text, ${colors.B400})`,\n dark: `var(--ds-text, ${colors.B400})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN100})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n },\n 'subtle-link': {\n default: {\n light: `var(--ds-text-subtle, ${colors.N200})`,\n dark: `var(--ds-text-subtle, ${colors.DN400})`\n },\n hover: {\n light: `var(--ds-text-subtle, ${colors.N90})`,\n dark: `var(--ds-text-subtle, ${colors.B50})`\n },\n active: {\n light: `var(--ds-text, ${colors.N400})`,\n dark: `var(--ds-text, ${colors.DN300})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN100})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n }\n }\n};\nexport default values;","import { css } from '@emotion/react';\nimport { borderRadius as getBorderRadius, fontSize as getFontSize,\n// eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports\ngridSize as getGridSize } from '@atlaskit/theme/constants';\nimport colors from './colors';\nconst borderRadius = getBorderRadius();\nconst gridSize = getGridSize();\nconst fontSize = getFontSize();\n\n// ## Button layout\n//\n// /------------------------------------------------------------------------------------------------------------------\\\n// | → | ← | | → | ← | | → | ← | | → | ← |\n// | 10px → | ← 2px | icon | 2px → | ← 2px | | 2px → | ← 2px | icon | 2px → | ← 10px |\n// | padding | margin | before | margin | margin | content | margin | margin | after | margin | padding |\n// | (12px total) | | (4px total) | | (4px total) | | (12px total) |\n// | → | ← | | → | ← | | → | ← | | → | ← |\n// \\------------------------------------------------------------------------------------------------------------------/\n// ↑ ↑\n// Margins don't collapse with inline-flex\n//\nconst heights = {\n default: `${gridSize * 4 / fontSize}em`,\n // 32px\n compact: `${gridSize * 3 / fontSize}em`,\n none: 'auto'\n};\nconst lineHeights = {\n default: heights.default,\n compact: heights.compact,\n none: 'inherit'\n};\nconst padding = {\n // 10px gutter\n default: `0 ${gridSize + gridSize / 4}px`,\n compact: `0 ${gridSize + gridSize / 4}px`,\n none: '0'\n};\nconst singleIconPadding = {\n // 2px gutter\n compact: `0 ${gridSize / 4}px`,\n default: `0 ${gridSize / 4}px`,\n none: '0'\n};\nconst verticalAlign = {\n default: 'middle',\n compact: 'middle',\n none: 'baseline'\n};\nconst innerMargin = {\n content: `0 ${gridSize / 4}px`,\n icon: `0 ${gridSize / 4}px`\n};\nfunction getColor({\n group,\n key,\n mode\n}) {\n const rule = group[key] || group.default;\n return rule[mode];\n}\nfunction getColors({\n appearance,\n key,\n mode\n}) {\n return {\n background: getColor({\n group: colors.background[appearance],\n key,\n mode\n }),\n // Needing to add !important to overcome specificity issue caused by deprecated AtlaskitThemeProvider\n color: `${getColor({\n group: colors.color[appearance],\n key,\n mode\n })} !important`\n };\n}\nexport function getCss({\n appearance,\n spacing,\n mode,\n isSelected,\n shouldFitContainer,\n isOnlySingleIcon\n}) {\n const baseColors = getColors({\n appearance,\n key: isSelected ? 'selected' : 'default',\n mode\n });\n return {\n // 0px margin added to css-reset\n alignItems: 'baseline',\n borderWidth: 0,\n borderRadius,\n boxSizing: 'border-box',\n display: 'inline-flex',\n fontSize: 'inherit',\n fontStyle: 'normal',\n // Chrome recently changed button so that they use 'arial' as the font family\n fontFamily: 'inherit',\n fontWeight: 500,\n // margin for button has been applied to css reset\n maxWidth: '100%',\n // Needed to position overlay\n position: 'relative',\n textAlign: 'center',\n textDecoration: 'none',\n transition: 'background 0.1s ease-out, box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38)',\n whiteSpace: 'nowrap',\n // dynamic styles\n ...baseColors,\n cursor: 'pointer',\n height: heights[spacing],\n lineHeight: lineHeights[spacing],\n padding: isOnlySingleIcon ? singleIconPadding[spacing] : padding[spacing],\n verticalAlign: verticalAlign[spacing],\n width: shouldFitContainer ? '100%' : 'auto',\n // justifyContent required for shouldFitContainer buttons with an icon inside\n justifyContent: 'center',\n // Note: we cannot disable pointer events when there is an overlay.\n // That would be easy for styling, but it would start letting events through on disabled buttons\n\n // Disabling visited styles (just using the base colors)\n '&:visited': {\n ...baseColors\n },\n '&:hover': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'hover',\n mode\n }),\n textDecoration: !isSelected && (appearance === 'link' || appearance === 'subtle-link') ? 'underline' : 'inherit',\n // background, box-shadow\n transitionDuration: '0s, 0.15s'\n },\n // giving active styles preference by listing them after focus\n '&:active': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'active',\n mode\n }),\n // background, box-shadow\n transitionDuration: '0s, 0s'\n },\n // preventDefault prevents regular active styles from applying in Firefox\n '&[data-firefox-is-active=\"true\"]': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'active',\n mode\n }),\n // background, box-shadow\n transitionDuration: '0s, 0s'\n },\n // Giving disabled styles preference over active by listing them after.\n // Not using '&:disabled' because :disabled is not a valid state for all element types\n // so we are targeting the attribute\n // Attributes have the same specificity a pseudo classes so we are overriding :disabled here\n '&[disabled]': {\n // always using 'disabled' even when selected\n ...getColors({\n appearance,\n key: 'disabled',\n mode\n }),\n cursor: 'not-allowed',\n textDecoration: 'none'\n },\n '&[data-has-overlay=\"true\"]': {\n cursor: 'default',\n textDecoration: 'none'\n },\n // disabling hover and active color changes when there is an overlay, but the button is not disabled\n '&[data-has-overlay=\"true\"]:not([disabled]):hover, &[data-has-overlay=\"true\"]:not([disabled]):active': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'default',\n mode\n })\n },\n '&::-moz-focus-inner': {\n border: 0,\n margin: 0,\n padding: 0\n }\n };\n}\n\n// inline-flex child\nexport function getIconStyle({\n spacing\n}) {\n return css({\n display: 'flex',\n // icon size cannot grow and shrink\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing\n margin: spacing === 'none' ? 0 : innerMargin.icon,\n flexGrow: 0,\n flexShrink: 0,\n alignSelf: 'center',\n fontSize: 0,\n lineHeight: 0,\n userSelect: 'none'\n });\n}\n\n// inline-flex child\nexport function getContentStyle({\n spacing\n}) {\n return css({\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing\n margin: spacing === 'none' ? 0 : innerMargin.content,\n // content can grow and shrink\n flexGrow: 1,\n flexShrink: 1,\n // ellipsis for overflow text\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n });\n}\nexport function getFadingCss({\n hasOverlay\n}) {\n return css({\n opacity: hasOverlay ? 0 : 1,\n transition: 'opacity 0.3s'\n });\n}\nexport const overlayCss = {\n // stretching to full width / height of button\n // this is important as we need it to still block\n // event if clicking in the button's own padding\n position: 'absolute',\n left: 0,\n top: 0,\n right: 0,\n bottom: 0,\n // Putting all children in the center\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center'\n};","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\nimport React, { useCallback, useContext, useEffect, useRef } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { usePlatformLeafEventHandler } from '@atlaskit/analytics-next';\nimport noop from '@atlaskit/ds-lib/noop';\nimport useAutoFocus from '@atlaskit/ds-lib/use-auto-focus';\nimport FocusRing from '@atlaskit/focus-ring';\n// eslint-disable-next-line no-duplicate-imports\nimport InteractionContext from '@atlaskit/interaction-context';\nimport { N500 } from '@atlaskit/theme/colors';\nimport blockEvents from './block-events';\nimport { getContentStyle, getFadingCss, getIconStyle, overlayCss } from './css';\n\n// Disabled buttons will still publish events for nested elements in webkit.\n// We are disabling pointer events on child elements so that\n// the button will always be the target of events\n// Note: firefox does not have this behaviour for child elements\nconst noPointerEventsOnChildrenCss = {\n '> *': {\n pointerEvents: 'none'\n }\n};\nexport default /*#__PURE__*/React.forwardRef(function ButtonBase(props, ref) {\n const {\n appearance = 'default',\n buttonCss,\n spacing = 'default',\n autoFocus = false,\n isDisabled = false,\n shouldFitContainer = false,\n isSelected = false,\n iconBefore,\n iconAfter,\n children,\n className,\n href,\n overlay,\n tabIndex = 0,\n type = !href ? 'button' : undefined,\n onMouseDown: providedOnMouseDown = noop,\n onClick: providedOnClick = noop,\n // use the provided component prop,\n // else default to anchor if there is a href, and button if there is no href\n component: Component = href ? 'a' : 'button',\n testId,\n interactionName,\n // I don't think this should be in button, but for now it is\n analyticsContext,\n ...rest\n } = props;\n const ourRef = useRef();\n const setRef = useCallback(node => {\n ourRef.current = node;\n if (ref == null) {\n return;\n }\n if (typeof ref === 'function') {\n ref(node);\n return;\n }\n\n // @ts-ignore\n ref.current = node;\n }, [ourRef, ref]);\n\n // Cross browser auto focusing is pretty broken, so we are doing it ourselves\n useAutoFocus(ourRef, autoFocus);\n const interactionContext = useContext(InteractionContext);\n const handleClick = useCallback((e, analyticsEvent) => {\n interactionContext && interactionContext.tracePress(interactionName, e.timeStamp);\n providedOnClick(e, analyticsEvent);\n }, [providedOnClick, interactionContext, interactionName]);\n const onClick = usePlatformLeafEventHandler({\n fn: handleClick,\n action: 'clicked',\n componentName: 'button',\n packageName: \"@atlaskit/button\",\n packageVersion: \"16.7.5\",\n analyticsData: analyticsContext\n });\n\n // Button currently calls preventDefault, which is not standard button behaviour\n const onMouseDown = useCallback(event => {\n event.preventDefault();\n providedOnMouseDown(event);\n }, [providedOnMouseDown]);\n\n // Lose focus when becoming disabled (standard button behaviour)\n useEffect(() => {\n const el = ourRef.current;\n if (isDisabled && el && el === document.activeElement) {\n el.blur();\n }\n }, [isDisabled]);\n\n // we are 'disabling' input with a button when there is an overlay\n const hasOverlay = Boolean(overlay);\n const fadeCss = css(getFadingCss({\n hasOverlay\n }));\n const isInteractive = !isDisabled && !hasOverlay;\n\n /**\n * HACK: Spinner needs to have different colours in the \"new\" tokens design compared to the old design.\n * For now, while we support both, these styles reach into Spinner when a theme is set, applies the right color.\n * Ticket to remove: https://product-fabric.atlassian.net/browse/DSP-2067\n */\n var spinnerHackCss = {};\n if (isSelected || isDisabled || appearance === 'warning') {\n spinnerHackCss = {\n '[data-theme] & circle': {\n stroke: `${isSelected || isDisabled ? `var(--ds-icon-subtle, ${N500})` : `var(--ds-icon-warning-inverse, ${N500})`} !important`\n }\n };\n }\n return jsx(FocusRing, null, jsx(Component, _extends({}, rest, {\n css: [buttonCss, isInteractive ? null : noPointerEventsOnChildrenCss],\n className: className,\n ref: setRef,\n onClick: onClick,\n onMouseDown: onMouseDown,\n disabled: isDisabled,\n href: isInteractive ? href : undefined\n // using undefined so that the property doesn't exist when false\n ,\n \"data-has-overlay\": hasOverlay ? true : undefined,\n \"data-testid\": testId,\n type: type\n // Adding a tab index so element is always focusable, even when not a \n * \n * );\n * }\n * ```\n *\n * When the `in` prop is set to `true`, the child component will first receive\n * the class `example-enter`, then the `example-enter-active` will be added in\n * the next tick. `CSSTransition` [forces a\n * reflow](https://github.com/reactjs/react-transition-group/blob/5007303e729a74be66a21c3e2205e4916821524b/src/CSSTransition.js#L208-L215)\n * between before adding the `example-enter-active`. This is an important trick\n * because it allows us to transition between `example-enter` and\n * `example-enter-active` even though they were added immediately one after\n * another. Most notably, this is what makes it possible for us to animate\n * _appearance_.\n *\n * ```css\n * .my-node-enter {\n * opacity: 0;\n * }\n * .my-node-enter-active {\n * opacity: 1;\n * transition: opacity 200ms;\n * }\n * .my-node-exit {\n * opacity: 1;\n * }\n * .my-node-exit-active {\n * opacity: 0;\n * transition: opacity: 200ms;\n * }\n * ```\n *\n * `*-active` classes represent which styles you want to animate **to**.\n */\n\n\nvar CSSTransition =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(CSSTransition, _React$Component);\n\n function CSSTransition() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n\n _this.onEnter = function (node, appearing) {\n var _this$getClassNames = _this.getClassNames(appearing ? 'appear' : 'enter'),\n className = _this$getClassNames.className;\n\n _this.removeClasses(node, 'exit');\n\n addClass(node, className);\n\n if (_this.props.onEnter) {\n _this.props.onEnter(node, appearing);\n }\n };\n\n _this.onEntering = function (node, appearing) {\n var _this$getClassNames2 = _this.getClassNames(appearing ? 'appear' : 'enter'),\n activeClassName = _this$getClassNames2.activeClassName;\n\n _this.reflowAndAddClass(node, activeClassName);\n\n if (_this.props.onEntering) {\n _this.props.onEntering(node, appearing);\n }\n };\n\n _this.onEntered = function (node, appearing) {\n var appearClassName = _this.getClassNames('appear').doneClassName;\n\n var enterClassName = _this.getClassNames('enter').doneClassName;\n\n var doneClassName = appearing ? appearClassName + \" \" + enterClassName : enterClassName;\n\n _this.removeClasses(node, appearing ? 'appear' : 'enter');\n\n addClass(node, doneClassName);\n\n if (_this.props.onEntered) {\n _this.props.onEntered(node, appearing);\n }\n };\n\n _this.onExit = function (node) {\n var _this$getClassNames3 = _this.getClassNames('exit'),\n className = _this$getClassNames3.className;\n\n _this.removeClasses(node, 'appear');\n\n _this.removeClasses(node, 'enter');\n\n addClass(node, className);\n\n if (_this.props.onExit) {\n _this.props.onExit(node);\n }\n };\n\n _this.onExiting = function (node) {\n var _this$getClassNames4 = _this.getClassNames('exit'),\n activeClassName = _this$getClassNames4.activeClassName;\n\n _this.reflowAndAddClass(node, activeClassName);\n\n if (_this.props.onExiting) {\n _this.props.onExiting(node);\n }\n };\n\n _this.onExited = function (node) {\n var _this$getClassNames5 = _this.getClassNames('exit'),\n doneClassName = _this$getClassNames5.doneClassName;\n\n _this.removeClasses(node, 'exit');\n\n addClass(node, doneClassName);\n\n if (_this.props.onExited) {\n _this.props.onExited(node);\n }\n };\n\n _this.getClassNames = function (type) {\n var classNames = _this.props.classNames;\n var isStringClassNames = typeof classNames === 'string';\n var prefix = isStringClassNames && classNames ? classNames + '-' : '';\n var className = isStringClassNames ? prefix + type : classNames[type];\n var activeClassName = isStringClassNames ? className + '-active' : classNames[type + 'Active'];\n var doneClassName = isStringClassNames ? className + '-done' : classNames[type + 'Done'];\n return {\n className: className,\n activeClassName: activeClassName,\n doneClassName: doneClassName\n };\n };\n\n return _this;\n }\n\n var _proto = CSSTransition.prototype;\n\n _proto.removeClasses = function removeClasses(node, type) {\n var _this$getClassNames6 = this.getClassNames(type),\n className = _this$getClassNames6.className,\n activeClassName = _this$getClassNames6.activeClassName,\n doneClassName = _this$getClassNames6.doneClassName;\n\n className && removeClass(node, className);\n activeClassName && removeClass(node, activeClassName);\n doneClassName && removeClass(node, doneClassName);\n };\n\n _proto.reflowAndAddClass = function reflowAndAddClass(node, className) {\n // This is for to force a repaint,\n // which is necessary in order to transition styles when adding a class name.\n if (className) {\n /* eslint-disable no-unused-expressions */\n node && node.scrollTop;\n /* eslint-enable no-unused-expressions */\n\n addClass(node, className);\n }\n };\n\n _proto.render = function render() {\n var props = _extends({}, this.props);\n\n delete props.classNames;\n return _react.default.createElement(_Transition.default, _extends({}, props, {\n onEnter: this.onEnter,\n onEntered: this.onEntered,\n onEntering: this.onEntering,\n onExit: this.onExit,\n onExiting: this.onExiting,\n onExited: this.onExited\n }));\n };\n\n return CSSTransition;\n}(_react.default.Component);\n\nCSSTransition.defaultProps = {\n classNames: ''\n};\nCSSTransition.propTypes = process.env.NODE_ENV !== \"production\" ? _extends({}, _Transition.default.propTypes, {\n /**\n * The animation classNames applied to the component as it enters, exits or\n * has finished the transition. A single name can be provided and it will be\n * suffixed for each stage: e.g.\n *\n * `classNames=\"fade\"` applies `fade-enter`, `fade-enter-active`,\n * `fade-enter-done`, `fade-exit`, `fade-exit-active`, `fade-exit-done`,\n * `fade-appear`, `fade-appear-active`, and `fade-appear-done`.\n *\n * **Note**: `fade-appear-done` and `fade-enter-done` will _both_ be applied.\n * This allows you to define different behavior for when appearing is done and\n * when regular entering is done, using selectors like\n * `.fade-enter-done:not(.fade-appear-done)`. For example, you could apply an\n * epic entrance animation when element first appears in the DOM using\n * [Animate.css](https://daneden.github.io/animate.css/). Otherwise you can\n * simply use `fade-enter-done` for defining both cases.\n *\n * Each individual classNames can also be specified independently like:\n *\n * ```js\n * classNames={{\n * appear: 'my-appear',\n * appearActive: 'my-active-appear',\n * appearDone: 'my-done-appear',\n * enter: 'my-enter',\n * enterActive: 'my-active-enter',\n * enterDone: 'my-done-enter',\n * exit: 'my-exit',\n * exitActive: 'my-active-exit',\n * exitDone: 'my-done-exit',\n * }}\n * ```\n *\n * If you want to set these classes using CSS Modules:\n *\n * ```js\n * import styles from './styles.css';\n * ```\n *\n * you might want to use camelCase in your CSS file, that way could simply\n * spread them instead of listing them one by one:\n *\n * ```js\n * classNames={{ ...styles }}\n * ```\n *\n * @type {string | {\n * appear?: string,\n * appearActive?: string,\n * appearDone?: string,\n * enter?: string,\n * enterActive?: string,\n * enterDone?: string,\n * exit?: string,\n * exitActive?: string,\n * exitDone?: string,\n * }}\n */\n classNames: _PropTypes.classNamesShape,\n\n /**\n * A `` callback fired immediately after the 'enter' or 'appear' class is\n * applied.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEnter: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter-active' or\n * 'appear-active' class is applied.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'enter' or\n * 'appear' classes are **removed** and the `done` class is added to the DOM node.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntered: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' class is\n * applied.\n *\n * @type Function(node: HtmlElement)\n */\n onExit: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit-active' is applied.\n *\n * @type Function(node: HtmlElement)\n */\n onExiting: PropTypes.func,\n\n /**\n * A `` callback fired immediately after the 'exit' classes\n * are **removed** and the `exit-done` class is added to the DOM node.\n *\n * @type Function(node: HtmlElement)\n */\n onExited: PropTypes.func\n}) : {};\nvar _default = CSSTransition;\nexports.default = _default;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _reactDom = require(\"react-dom\");\n\nvar _TransitionGroup = _interopRequireDefault(require(\"./TransitionGroup\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\n/**\n * The `` component is a specialized `Transition` component\n * that animates between two children.\n *\n * ```jsx\n * \n *
I appear first
\n *
I replace the above
\n *
\n * ```\n */\nvar ReplaceTransition =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(ReplaceTransition, _React$Component);\n\n function ReplaceTransition() {\n var _this;\n\n for (var _len = arguments.length, _args = new Array(_len), _key = 0; _key < _len; _key++) {\n _args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(_args)) || this;\n\n _this.handleEnter = function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _this.handleLifecycle('onEnter', 0, args);\n };\n\n _this.handleEntering = function () {\n for (var _len3 = arguments.length, args = new Array(_len3), _key3 = 0; _key3 < _len3; _key3++) {\n args[_key3] = arguments[_key3];\n }\n\n return _this.handleLifecycle('onEntering', 0, args);\n };\n\n _this.handleEntered = function () {\n for (var _len4 = arguments.length, args = new Array(_len4), _key4 = 0; _key4 < _len4; _key4++) {\n args[_key4] = arguments[_key4];\n }\n\n return _this.handleLifecycle('onEntered', 0, args);\n };\n\n _this.handleExit = function () {\n for (var _len5 = arguments.length, args = new Array(_len5), _key5 = 0; _key5 < _len5; _key5++) {\n args[_key5] = arguments[_key5];\n }\n\n return _this.handleLifecycle('onExit', 1, args);\n };\n\n _this.handleExiting = function () {\n for (var _len6 = arguments.length, args = new Array(_len6), _key6 = 0; _key6 < _len6; _key6++) {\n args[_key6] = arguments[_key6];\n }\n\n return _this.handleLifecycle('onExiting', 1, args);\n };\n\n _this.handleExited = function () {\n for (var _len7 = arguments.length, args = new Array(_len7), _key7 = 0; _key7 < _len7; _key7++) {\n args[_key7] = arguments[_key7];\n }\n\n return _this.handleLifecycle('onExited', 1, args);\n };\n\n return _this;\n }\n\n var _proto = ReplaceTransition.prototype;\n\n _proto.handleLifecycle = function handleLifecycle(handler, idx, originalArgs) {\n var _child$props;\n\n var children = this.props.children;\n\n var child = _react.default.Children.toArray(children)[idx];\n\n if (child.props[handler]) (_child$props = child.props)[handler].apply(_child$props, originalArgs);\n if (this.props[handler]) this.props[handler]((0, _reactDom.findDOMNode)(this));\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n children = _this$props.children,\n inProp = _this$props.in,\n props = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\"]);\n\n var _React$Children$toArr = _react.default.Children.toArray(children),\n first = _React$Children$toArr[0],\n second = _React$Children$toArr[1];\n\n delete props.onEnter;\n delete props.onEntering;\n delete props.onEntered;\n delete props.onExit;\n delete props.onExiting;\n delete props.onExited;\n return _react.default.createElement(_TransitionGroup.default, props, inProp ? _react.default.cloneElement(first, {\n key: 'first',\n onEnter: this.handleEnter,\n onEntering: this.handleEntering,\n onEntered: this.handleEntered\n }) : _react.default.cloneElement(second, {\n key: 'second',\n onEnter: this.handleExit,\n onEntering: this.handleExiting,\n onEntered: this.handleExited\n }));\n };\n\n return ReplaceTransition;\n}(_react.default.Component);\n\nReplaceTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n in: _propTypes.default.bool.isRequired,\n children: function children(props, propName) {\n if (_react.default.Children.count(props[propName]) !== 2) return new Error(\"\\\"\" + propName + \"\\\" must be exactly two transition components.\");\n return null;\n }\n} : {};\nvar _default = ReplaceTransition;\nexports.default = _default;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nexports.__esModule = true;\nexports.default = exports.EXITING = exports.ENTERED = exports.ENTERING = exports.EXITED = exports.UNMOUNTED = void 0;\n\nvar PropTypes = _interopRequireWildcard(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nvar _PropTypes = require(\"./utils/PropTypes\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _interopRequireWildcard(obj) { if (obj && obj.__esModule) { return obj; } else { var newObj = {}; if (obj != null) { for (var key in obj) { if (Object.prototype.hasOwnProperty.call(obj, key)) { var desc = Object.defineProperty && Object.getOwnPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : {}; if (desc.get || desc.set) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } } newObj.default = obj; return newObj; } }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nvar UNMOUNTED = 'unmounted';\nexports.UNMOUNTED = UNMOUNTED;\nvar EXITED = 'exited';\nexports.EXITED = EXITED;\nvar ENTERING = 'entering';\nexports.ENTERING = ENTERING;\nvar ENTERED = 'entered';\nexports.ENTERED = ENTERED;\nvar EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 0 },\n * entered: { opacity: 1 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nexports.EXITING = EXITING;\n\nvar Transition =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context.transitionGroup; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n var _proto = Transition.prototype;\n\n _proto.getChildContext = function getChildContext() {\n return {\n transitionGroup: null // allows for nested Transitions\n\n };\n };\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n }; // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n var node = _reactDom.default.findDOMNode(this);\n\n if (nextStatus === ENTERING) {\n this.performEnter(node, mounting);\n } else {\n this.performExit(node);\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(node, mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context.transitionGroup ? this.context.transitionGroup.isMounting : mounting;\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(node);\n });\n return;\n }\n\n this.props.onEnter(node, appearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(node, appearing);\n\n _this2.onTransitionEnd(node, enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(node, appearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit(node) {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts(); // no exit animation skip right to EXITED\n\n if (!exit) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(node);\n });\n return;\n }\n\n this.props.onExit(node);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(node);\n\n _this3.onTransitionEnd(node, timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(node);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(node, timeout, handler) {\n this.setNextCallback(handler);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n this.props.addEndListener(node, this.nextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\"]); // filter props for Transtition\n\n\n delete childProps.in;\n delete childProps.mountOnEnter;\n delete childProps.unmountOnExit;\n delete childProps.appear;\n delete childProps.enter;\n delete childProps.exit;\n delete childProps.timeout;\n delete childProps.addEndListener;\n delete childProps.onEnter;\n delete childProps.onEntering;\n delete childProps.onEntered;\n delete childProps.onExit;\n delete childProps.onExiting;\n delete childProps.onExited;\n\n if (typeof children === 'function') {\n return children(status, childProps);\n }\n\n var child = _react.default.Children.only(children);\n\n return _react.default.cloneElement(child, childProps);\n };\n\n return Transition;\n}(_react.default.Component);\n\nTransition.contextTypes = {\n transitionGroup: PropTypes.object\n};\nTransition.childContextTypes = {\n transitionGroup: function transitionGroup() {}\n};\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`, `'unmounted'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * \n * {state => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * Normally a component is not transitioned if it is shown when the `` component mounts.\n * If you want to transition on the first mount set `appear` to `true`, and the\n * component will transition in as soon as the `` mounts.\n *\n * > Note: there are no specific \"appear\" states. `appear` only adds an additional `enter` transition.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = _PropTypes.timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. **Note:** Timeouts are still used as a fallback if provided.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func // Name the function so it is clearer in the documentation\n\n} : {};\n\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = 0;\nTransition.EXITED = 1;\nTransition.ENTERING = 2;\nTransition.ENTERED = 3;\nTransition.EXITING = 4;\n\nvar _default = (0, _reactLifecyclesCompat.polyfill)(Transition);\n\nexports.default = _default;","\"use strict\";\n\nexports.__esModule = true;\nexports.default = void 0;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _reactLifecyclesCompat = require(\"react-lifecycles-compat\");\n\nvar _ChildMapping = require(\"./utils/ChildMapping\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }\n\nfunction _inheritsLoose(subClass, superClass) { subClass.prototype = Object.create(superClass.prototype); subClass.prototype.constructor = subClass; subClass.__proto__ = superClass; }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nvar values = Object.values || function (obj) {\n return Object.keys(obj).map(function (k) {\n return obj[k];\n });\n};\n\nvar defaultProps = {\n component: 'div',\n childFactory: function childFactory(child) {\n return child;\n }\n /**\n * The `` component manages a set of transition components\n * (`` and ``) in a list. Like with the transition\n * components, `` is a state machine for managing the mounting\n * and unmounting of components over time.\n *\n * Consider the example below. As items are removed or added to the TodoList the\n * `in` prop is toggled automatically by the ``.\n *\n * Note that `` does not define any animation behavior!\n * Exactly _how_ a list item animates is up to the individual transition\n * component. This means you can mix and match animations across different list\n * items.\n */\n\n};\n\nvar TransitionGroup =\n/*#__PURE__*/\nfunction (_React$Component) {\n _inheritsLoose(TransitionGroup, _React$Component);\n\n function TransitionGroup(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n\n var handleExited = _this.handleExited.bind(_assertThisInitialized(_assertThisInitialized(_this))); // Initial children should all be entering, dependent on appear\n\n\n _this.state = {\n handleExited: handleExited,\n firstRender: true\n };\n return _this;\n }\n\n var _proto = TransitionGroup.prototype;\n\n _proto.getChildContext = function getChildContext() {\n return {\n transitionGroup: {\n isMounting: !this.appeared\n }\n };\n };\n\n _proto.componentDidMount = function componentDidMount() {\n this.appeared = true;\n this.mounted = true;\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.mounted = false;\n };\n\n TransitionGroup.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, _ref) {\n var prevChildMapping = _ref.children,\n handleExited = _ref.handleExited,\n firstRender = _ref.firstRender;\n return {\n children: firstRender ? (0, _ChildMapping.getInitialChildMapping)(nextProps, handleExited) : (0, _ChildMapping.getNextChildMapping)(nextProps, prevChildMapping, handleExited),\n firstRender: false\n };\n };\n\n _proto.handleExited = function handleExited(child, node) {\n var currentChildMapping = (0, _ChildMapping.getChildMapping)(this.props.children);\n if (child.key in currentChildMapping) return;\n\n if (child.props.onExited) {\n child.props.onExited(node);\n }\n\n if (this.mounted) {\n this.setState(function (state) {\n var children = _extends({}, state.children);\n\n delete children[child.key];\n return {\n children: children\n };\n });\n }\n };\n\n _proto.render = function render() {\n var _this$props = this.props,\n Component = _this$props.component,\n childFactory = _this$props.childFactory,\n props = _objectWithoutPropertiesLoose(_this$props, [\"component\", \"childFactory\"]);\n\n var children = values(this.state.children).map(childFactory);\n delete props.appear;\n delete props.enter;\n delete props.exit;\n\n if (Component === null) {\n return children;\n }\n\n return _react.default.createElement(Component, props, children);\n };\n\n return TransitionGroup;\n}(_react.default.Component);\n\nTransitionGroup.childContextTypes = {\n transitionGroup: _propTypes.default.object.isRequired\n};\nTransitionGroup.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * `` renders a `
` by default. You can change this\n * behavior by providing a `component` prop.\n * If you use React v16+ and would like to avoid a wrapping `
` element\n * you can pass in `component={null}`. This is useful if the wrapping div\n * borks your css styles.\n */\n component: _propTypes.default.any,\n\n /**\n * A set of `` components, that are toggled `in` and out as they\n * leave. the `` will inject specific transition props, so\n * remember to spread them through if you are wrapping the `` as\n * with our `` example.\n *\n * While this component is meant for multiple `Transition` or `CSSTransition`\n * children, sometimes you may want to have a single transition child with\n * content that you want to be transitioned out and in when you change it\n * (e.g. routes, images etc.) In that case you can change the `key` prop of\n * the transition child as you change its content, this will cause\n * `TransitionGroup` to transition the child out and back in.\n */\n children: _propTypes.default.node,\n\n /**\n * A convenience prop that enables or disables appear animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n appear: _propTypes.default.bool,\n\n /**\n * A convenience prop that enables or disables enter animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n enter: _propTypes.default.bool,\n\n /**\n * A convenience prop that enables or disables exit animations\n * for all children. Note that specifying this will override any defaults set\n * on individual children Transitions.\n */\n exit: _propTypes.default.bool,\n\n /**\n * You may need to apply reactive updates to a child as it is exiting.\n * This is generally done by using `cloneElement` however in the case of an exiting\n * child the element has already been removed and not accessible to the consumer.\n *\n * If you do need to update a child as it leaves you can provide a `childFactory`\n * to wrap every child, even the ones that are leaving.\n *\n * @type Function(child: ReactElement) -> ReactElement\n */\n childFactory: _propTypes.default.func\n} : {};\nTransitionGroup.defaultProps = defaultProps;\n\nvar _default = (0, _reactLifecyclesCompat.polyfill)(TransitionGroup);\n\nexports.default = _default;\nmodule.exports = exports[\"default\"];","\"use strict\";\n\nvar _CSSTransition = _interopRequireDefault(require(\"./CSSTransition\"));\n\nvar _ReplaceTransition = _interopRequireDefault(require(\"./ReplaceTransition\"));\n\nvar _TransitionGroup = _interopRequireDefault(require(\"./TransitionGroup\"));\n\nvar _Transition = _interopRequireDefault(require(\"./Transition\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nmodule.exports = {\n Transition: _Transition.default,\n TransitionGroup: _TransitionGroup.default,\n ReplaceTransition: _ReplaceTransition.default,\n CSSTransition: _CSSTransition.default\n};","\"use strict\";\n\nexports.__esModule = true;\nexports.getChildMapping = getChildMapping;\nexports.mergeChildMappings = mergeChildMappings;\nexports.getInitialChildMapping = getInitialChildMapping;\nexports.getNextChildMapping = getNextChildMapping;\n\nvar _react = require(\"react\");\n\n/**\n * Given `this.props.children`, return an object mapping key to child.\n *\n * @param {*} children `this.props.children`\n * @return {object} Mapping of key to child\n */\nfunction getChildMapping(children, mapFn) {\n var mapper = function mapper(child) {\n return mapFn && (0, _react.isValidElement)(child) ? mapFn(child) : child;\n };\n\n var result = Object.create(null);\n if (children) _react.Children.map(children, function (c) {\n return c;\n }).forEach(function (child) {\n // run the map function here instead so that the key is the computed one\n result[child.key] = mapper(child);\n });\n return result;\n}\n/**\n * When you're adding or removing children some may be added or removed in the\n * same render pass. We want to show *both* since we want to simultaneously\n * animate elements in and out. This function takes a previous set of keys\n * and a new set of keys and merges them with its best guess of the correct\n * ordering. In the future we may expose some of the utilities in\n * ReactMultiChild to make this easy, but for now React itself does not\n * directly have this concept of the union of prevChildren and nextChildren\n * so we implement it here.\n *\n * @param {object} prev prev children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @param {object} next next children as returned from\n * `ReactTransitionChildMapping.getChildMapping()`.\n * @return {object} a key set that contains all keys in `prev` and all keys\n * in `next` in a reasonable order.\n */\n\n\nfunction mergeChildMappings(prev, next) {\n prev = prev || {};\n next = next || {};\n\n function getValueForKey(key) {\n return key in next ? next[key] : prev[key];\n } // For each key of `next`, the list of keys to insert before that key in\n // the combined list\n\n\n var nextKeysPending = Object.create(null);\n var pendingKeys = [];\n\n for (var prevKey in prev) {\n if (prevKey in next) {\n if (pendingKeys.length) {\n nextKeysPending[prevKey] = pendingKeys;\n pendingKeys = [];\n }\n } else {\n pendingKeys.push(prevKey);\n }\n }\n\n var i;\n var childMapping = {};\n\n for (var nextKey in next) {\n if (nextKeysPending[nextKey]) {\n for (i = 0; i < nextKeysPending[nextKey].length; i++) {\n var pendingNextKey = nextKeysPending[nextKey][i];\n childMapping[nextKeysPending[nextKey][i]] = getValueForKey(pendingNextKey);\n }\n }\n\n childMapping[nextKey] = getValueForKey(nextKey);\n } // Finally, add the keys which didn't appear before any key in `next`\n\n\n for (i = 0; i < pendingKeys.length; i++) {\n childMapping[pendingKeys[i]] = getValueForKey(pendingKeys[i]);\n }\n\n return childMapping;\n}\n\nfunction getProp(child, prop, props) {\n return props[prop] != null ? props[prop] : child.props[prop];\n}\n\nfunction getInitialChildMapping(props, onExited) {\n return getChildMapping(props.children, function (child) {\n return (0, _react.cloneElement)(child, {\n onExited: onExited.bind(null, child),\n in: true,\n appear: getProp(child, 'appear', props),\n enter: getProp(child, 'enter', props),\n exit: getProp(child, 'exit', props)\n });\n });\n}\n\nfunction getNextChildMapping(nextProps, prevChildMapping, onExited) {\n var nextChildMapping = getChildMapping(nextProps.children);\n var children = mergeChildMappings(prevChildMapping, nextChildMapping);\n Object.keys(children).forEach(function (key) {\n var child = children[key];\n if (!(0, _react.isValidElement)(child)) return;\n var hasPrev = key in prevChildMapping;\n var hasNext = key in nextChildMapping;\n var prevChild = prevChildMapping[key];\n var isLeaving = (0, _react.isValidElement)(prevChild) && !prevChild.props.in; // item is new (entering)\n\n if (hasNext && (!hasPrev || isLeaving)) {\n // console.log('entering', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited.bind(null, child),\n in: true,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n } else if (!hasNext && hasPrev && !isLeaving) {\n // item is old (exiting)\n // console.log('leaving', key)\n children[key] = (0, _react.cloneElement)(child, {\n in: false\n });\n } else if (hasNext && hasPrev && (0, _react.isValidElement)(prevChild)) {\n // item hasn't changed transition states\n // copy over the last transition props;\n // console.log('unchanged', key)\n children[key] = (0, _react.cloneElement)(child, {\n onExited: onExited.bind(null, child),\n in: prevChild.props.in,\n exit: getProp(child, 'exit', nextProps),\n enter: getProp(child, 'enter', nextProps)\n });\n }\n });\n return children;\n}","\"use strict\";\n\nexports.__esModule = true;\nexports.classNamesShape = exports.timeoutsShape = void 0;\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar timeoutsShape = process.env.NODE_ENV !== 'production' ? _propTypes.default.oneOfType([_propTypes.default.number, _propTypes.default.shape({\n enter: _propTypes.default.number,\n exit: _propTypes.default.number,\n appear: _propTypes.default.number\n}).isRequired]) : null;\nexports.timeoutsShape = timeoutsShape;\nvar classNamesShape = process.env.NODE_ENV !== 'production' ? _propTypes.default.oneOfType([_propTypes.default.string, _propTypes.default.shape({\n enter: _propTypes.default.string,\n exit: _propTypes.default.string,\n active: _propTypes.default.string\n}), _propTypes.default.shape({\n enter: _propTypes.default.string,\n enterDone: _propTypes.default.string,\n enterActive: _propTypes.default.string,\n exit: _propTypes.default.string,\n exitDone: _propTypes.default.string,\n exitActive: _propTypes.default.string\n})]) : null;\nexports.classNamesShape = classNamesShape;","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","function memoize(fn) {\n var cache = {};\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport default memoize;\n","import memoize from '@emotion/memoize';\n\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|inert|itemProp|itemScope|itemType|itemID|itemRef|on|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar index = memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport default index;\n","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport default murmur2;\n","var unitlessKeys = {\n animationIterationCount: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport default unitlessKeys;\n","import hashString from '@emotion/hash';\nimport unitless from '@emotion/unitless';\nimport memoize from '@emotion/memoize';\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\nvar UNDEFINED_AS_OBJECT_KEY_ERROR = \"You have passed in falsy value as style object's key (can happen when in example you pass unexported component as computed key).\";\nvar hyphenateRegex = /[A-Z]|^ms/g;\nvar animationRegex = /_EMO_([^_]+?)_([^]*?)_EMO_/g;\n\nvar isCustomProperty = function isCustomProperty(property) {\n return property.charCodeAt(1) === 45;\n};\n\nvar isProcessableValue = function isProcessableValue(value) {\n return value != null && typeof value !== 'boolean';\n};\n\nvar processStyleName = memoize(function (styleName) {\n return isCustomProperty(styleName) ? styleName : styleName.replace(hyphenateRegex, '-$&').toLowerCase();\n});\n\nvar processStyleValue = function processStyleValue(key, value) {\n switch (key) {\n case 'animation':\n case 'animationName':\n {\n if (typeof value === 'string') {\n return value.replace(animationRegex, function (match, p1, p2) {\n cursor = {\n name: p1,\n styles: p2,\n next: cursor\n };\n return p1;\n });\n }\n }\n }\n\n if (unitless[key] !== 1 && !isCustomProperty(key) && typeof value === 'number' && value !== 0) {\n return value + 'px';\n }\n\n return value;\n};\n\nif (process.env.NODE_ENV !== 'production') {\n var contentValuePattern = /(attr|calc|counters?|url)\\(/;\n var contentValues = ['normal', 'none', 'counter', 'open-quote', 'close-quote', 'no-open-quote', 'no-close-quote', 'initial', 'inherit', 'unset'];\n var oldProcessStyleValue = processStyleValue;\n var msPattern = /^-ms-/;\n var hyphenPattern = /-(.)/g;\n var hyphenatedCache = {};\n\n processStyleValue = function processStyleValue(key, value) {\n if (key === 'content') {\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n console.error(\"You seem to be using a value for 'content' without quotes, try replacing it with `content: '\\\"\" + value + \"\\\"'`\");\n }\n }\n\n var processed = oldProcessStyleValue(key, value);\n\n if (processed !== '' && !isCustomProperty(key) && key.indexOf('-') !== -1 && hyphenatedCache[key] === undefined) {\n hyphenatedCache[key] = true;\n console.error(\"Using kebab-case for css properties in objects is not supported. Did you mean \" + key.replace(msPattern, 'ms-').replace(hyphenPattern, function (str, _char) {\n return _char.toUpperCase();\n }) + \"?\");\n }\n\n return processed;\n };\n}\n\nvar shouldWarnAboutInterpolatingClassNameFromCss = true;\n\nfunction handleInterpolation(mergedProps, registered, interpolation, couldBeSelectorInterpolation) {\n if (interpolation == null) {\n return '';\n }\n\n if (interpolation.__emotion_styles !== undefined) {\n if (process.env.NODE_ENV !== 'production' && interpolation.toString() === 'NO_COMPONENT_SELECTOR') {\n throw new Error('Component selectors can only be used in conjunction with babel-plugin-emotion.');\n }\n\n return interpolation;\n }\n\n switch (typeof interpolation) {\n case 'boolean':\n {\n return '';\n }\n\n case 'object':\n {\n if (interpolation.anim === 1) {\n cursor = {\n name: interpolation.name,\n styles: interpolation.styles,\n next: cursor\n };\n return interpolation.name;\n }\n\n if (interpolation.styles !== undefined) {\n var next = interpolation.next;\n\n if (next !== undefined) {\n // not the most efficient thing ever but this is a pretty rare case\n // and there will be very few iterations of this generally\n while (next !== undefined) {\n cursor = {\n name: next.name,\n styles: next.styles,\n next: cursor\n };\n next = next.next;\n }\n }\n\n var styles = interpolation.styles + \";\";\n\n if (process.env.NODE_ENV !== 'production' && interpolation.map !== undefined) {\n styles += interpolation.map;\n }\n\n return styles;\n }\n\n return createStringFromObject(mergedProps, registered, interpolation);\n }\n\n case 'function':\n {\n if (mergedProps !== undefined) {\n var previousCursor = cursor;\n var result = interpolation(mergedProps);\n cursor = previousCursor;\n return handleInterpolation(mergedProps, registered, result, couldBeSelectorInterpolation);\n } else if (process.env.NODE_ENV !== 'production') {\n console.error('Functions that are interpolated in css calls will be stringified.\\n' + 'If you want to have a css call based on props, create a function that returns a css call like this\\n' + 'let dynamicStyle = (props) => css`color: ${props.color}`\\n' + 'It can be called directly with props or interpolated in a styled call like this\\n' + \"let SomeComponent = styled('div')`${dynamicStyle}`\");\n }\n\n break;\n }\n\n case 'string':\n if (process.env.NODE_ENV !== 'production') {\n var matched = [];\n var replaced = interpolation.replace(animationRegex, function (match, p1, p2) {\n var fakeVarName = \"animation\" + matched.length;\n matched.push(\"const \" + fakeVarName + \" = keyframes`\" + p2.replace(/^@keyframes animation-\\w+/, '') + \"`\");\n return \"${\" + fakeVarName + \"}\";\n });\n\n if (matched.length) {\n console.error('`keyframes` output got interpolated into plain string, please wrap it with `css`.\\n\\n' + 'Instead of doing this:\\n\\n' + [].concat(matched, [\"`\" + replaced + \"`\"]).join('\\n') + '\\n\\nYou should wrap it with `css` like this:\\n\\n' + (\"css`\" + replaced + \"`\"));\n }\n }\n\n break;\n } // finalize string values (regular strings and functions interpolated into css calls)\n\n\n if (registered == null) {\n return interpolation;\n }\n\n var cached = registered[interpolation];\n\n if (process.env.NODE_ENV !== 'production' && couldBeSelectorInterpolation && shouldWarnAboutInterpolatingClassNameFromCss && cached !== undefined) {\n console.error('Interpolating a className from css`` is not recommended and will cause problems with composition.\\n' + 'Interpolating a className from css`` will be completely unsupported in a future major version of Emotion');\n shouldWarnAboutInterpolatingClassNameFromCss = false;\n }\n\n return cached !== undefined && !couldBeSelectorInterpolation ? cached : interpolation;\n}\n\nfunction createStringFromObject(mergedProps, registered, obj) {\n var string = '';\n\n if (Array.isArray(obj)) {\n for (var i = 0; i < obj.length; i++) {\n string += handleInterpolation(mergedProps, registered, obj[i], false);\n }\n } else {\n for (var _key in obj) {\n var value = obj[_key];\n\n if (typeof value !== 'object') {\n if (registered != null && registered[value] !== undefined) {\n string += _key + \"{\" + registered[value] + \"}\";\n } else if (isProcessableValue(value)) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value) + \";\";\n }\n } else {\n if (_key === 'NO_COMPONENT_SELECTOR' && process.env.NODE_ENV !== 'production') {\n throw new Error('Component selectors can only be used in conjunction with babel-plugin-emotion.');\n }\n\n if (Array.isArray(value) && typeof value[0] === 'string' && (registered == null || registered[value[0]] === undefined)) {\n for (var _i = 0; _i < value.length; _i++) {\n if (isProcessableValue(value[_i])) {\n string += processStyleName(_key) + \":\" + processStyleValue(_key, value[_i]) + \";\";\n }\n }\n } else {\n var interpolated = handleInterpolation(mergedProps, registered, value, false);\n\n switch (_key) {\n case 'animation':\n case 'animationName':\n {\n string += processStyleName(_key) + \":\" + interpolated + \";\";\n break;\n }\n\n default:\n {\n if (process.env.NODE_ENV !== 'production' && _key === 'undefined') {\n console.error(UNDEFINED_AS_OBJECT_KEY_ERROR);\n }\n\n string += _key + \"{\" + interpolated + \"}\";\n }\n }\n }\n }\n }\n }\n\n return string;\n}\n\nvar labelPattern = /label:\\s*([^\\s;\\n{]+)\\s*;/g;\nvar sourceMapPattern;\n\nif (process.env.NODE_ENV !== 'production') {\n sourceMapPattern = /\\/\\*#\\ssourceMappingURL=data:application\\/json;\\S+\\s+\\*\\//;\n} // this is the cursor for keyframes\n// keyframes are stored on the SerializedStyles object as a linked list\n\n\nvar cursor;\nvar serializeStyles = function serializeStyles(args, registered, mergedProps) {\n if (args.length === 1 && typeof args[0] === 'object' && args[0] !== null && args[0].styles !== undefined) {\n return args[0];\n }\n\n var stringMode = true;\n var styles = '';\n cursor = undefined;\n var strings = args[0];\n\n if (strings == null || strings.raw === undefined) {\n stringMode = false;\n styles += handleInterpolation(mergedProps, registered, strings, false);\n } else {\n if (process.env.NODE_ENV !== 'production' && strings[0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[0];\n } // we start at 1 since we've already handled the first arg\n\n\n for (var i = 1; i < args.length; i++) {\n styles += handleInterpolation(mergedProps, registered, args[i], styles.charCodeAt(styles.length - 1) === 46);\n\n if (stringMode) {\n if (process.env.NODE_ENV !== 'production' && strings[i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles += strings[i];\n }\n }\n\n var sourceMap;\n\n if (process.env.NODE_ENV !== 'production') {\n styles = styles.replace(sourceMapPattern, function (match) {\n sourceMap = match;\n return '';\n });\n } // using a global regex with .exec is stateful so lastIndex has to be reset each time\n\n\n labelPattern.lastIndex = 0;\n var identifierName = '';\n var match; // https://esbench.com/bench/5b809c2cf2949800a0f61fb5\n\n while ((match = labelPattern.exec(styles)) !== null) {\n identifierName += '-' + // $FlowFixMe we know it's not null\n match[1];\n }\n\n var name = hashString(styles) + identifierName;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe SerializedStyles type doesn't have toString property (and we don't want to add it)\n return {\n name: name,\n styles: styles,\n map: sourceMap,\n next: cursor,\n toString: function toString() {\n return \"You have tried to stringify object returned from `css` function. It isn't supposed to be used directly (e.g. as value of the `className` prop), but rather handed to emotion so it can handle it (e.g. as value of `css` prop).\";\n }\n };\n }\n\n return {\n name: name,\n styles: styles,\n next: cursor\n };\n};\n\nexport { serializeStyles };\n","import _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport { createElement, Fragment } from 'react';\nimport isPropValid from '@emotion/is-prop-valid';\nimport { withEmotionCache, ThemeContext } from '@emotion/core';\nimport { getRegisteredStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\n\nvar testOmitPropsOnStringTag = isPropValid;\n\nvar testOmitPropsOnComponent = function testOmitPropsOnComponent(key) {\n return key !== 'theme' && key !== 'innerRef';\n};\n\nvar getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag) {\n return typeof tag === 'string' && // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;\n};\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\n\nvar Noop = function Noop() {\n return null;\n};\n\nvar createStyled = function createStyled(tag, options) {\n if (process.env.NODE_ENV !== 'production') {\n if (tag === undefined) {\n throw new Error('You are trying to create a styled element with an undefined component.\\nYou may have forgotten to import it.');\n }\n }\n\n var identifierName;\n var shouldForwardProp;\n var targetClassName;\n\n if (options !== undefined) {\n identifierName = options.label;\n targetClassName = options.target;\n shouldForwardProp = tag.__emotion_forwardProp && options.shouldForwardProp ? function (propName) {\n return tag.__emotion_forwardProp(propName) && // $FlowFixMe\n options.shouldForwardProp(propName);\n } : options.shouldForwardProp;\n }\n\n var isReal = tag.__emotion_real === tag;\n var baseTag = isReal && tag.__emotion_base || tag;\n\n if (typeof shouldForwardProp !== 'function' && isReal) {\n shouldForwardProp = tag.__emotion_forwardProp;\n }\n\n var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);\n var shouldUseAs = !defaultShouldForwardProp('as');\n return function () {\n var args = arguments;\n var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];\n\n if (identifierName !== undefined) {\n styles.push(\"label:\" + identifierName + \";\");\n }\n\n if (args[0] == null || args[0].raw === undefined) {\n styles.push.apply(styles, args);\n } else {\n if (process.env.NODE_ENV !== 'production' && args[0][0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[0][0]);\n var len = args.length;\n var i = 1;\n\n for (; i < len; i++) {\n if (process.env.NODE_ENV !== 'production' && args[0][i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[i], args[0][i]);\n }\n } // $FlowFixMe: we need to cast StatelessFunctionalComponent to our PrivateStyledComponent class\n\n\n var Styled = withEmotionCache(function (props, context, ref) {\n return /*#__PURE__*/createElement(ThemeContext.Consumer, null, function (theme) {\n var finalTag = shouldUseAs && props.as || baseTag;\n var className = '';\n var classInterpolations = [];\n var mergedProps = props;\n\n if (props.theme == null) {\n mergedProps = {};\n\n for (var key in props) {\n mergedProps[key] = props[key];\n }\n\n mergedProps.theme = theme;\n }\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(context.registered, classInterpolations, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(styles.concat(classInterpolations), context.registered, mergedProps);\n var rules = insertStyles(context, serialized, typeof finalTag === 'string');\n className += context.key + \"-\" + serialized.name;\n\n if (targetClassName !== undefined) {\n className += \" \" + targetClassName;\n }\n\n var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(finalTag) : defaultShouldForwardProp;\n var newProps = {};\n\n for (var _key in props) {\n if (shouldUseAs && _key === 'as') continue;\n\n if ( // $FlowFixMe\n finalShouldForwardProp(_key)) {\n newProps[_key] = props[_key];\n }\n }\n\n newProps.className = className;\n newProps.ref = ref || props.innerRef;\n\n if (process.env.NODE_ENV !== 'production' && props.innerRef) {\n console.error('`innerRef` is deprecated and will be removed in a future major version of Emotion, please use the `ref` prop instead' + (identifierName === undefined ? '' : \" in the usage of `\" + identifierName + \"`\"));\n }\n\n var ele = /*#__PURE__*/createElement(finalTag, newProps);\n var possiblyStyleElement = /*#__PURE__*/createElement(Noop, null);\n\n\n return /*#__PURE__*/createElement(Fragment, null, possiblyStyleElement, ele);\n });\n });\n Styled.displayName = identifierName !== undefined ? identifierName : \"Styled(\" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + \")\";\n Styled.defaultProps = tag.defaultProps;\n Styled.__emotion_real = Styled;\n Styled.__emotion_base = baseTag;\n Styled.__emotion_styles = styles;\n Styled.__emotion_forwardProp = shouldForwardProp;\n Object.defineProperty(Styled, 'toString', {\n value: function value() {\n if (targetClassName === undefined && process.env.NODE_ENV !== 'production') {\n return 'NO_COMPONENT_SELECTOR';\n } // $FlowFixMe: coerce undefined to string\n\n\n return \".\" + targetClassName;\n }\n });\n\n Styled.withComponent = function (nextTag, nextOptions) {\n return createStyled(nextTag, nextOptions !== undefined ? _objectSpread({}, options || {}, {}, nextOptions) : options).apply(void 0, styles);\n };\n\n return Styled;\n };\n};\n\nexport default createStyled;\n","function memoize(fn) {\n var cache = Object.create(null);\n return function (arg) {\n if (cache[arg] === undefined) cache[arg] = fn(arg);\n return cache[arg];\n };\n}\n\nexport { memoize as default };\n","import memoize from '@emotion/memoize';\n\nvar reactPropsRegex = /^((children|dangerouslySetInnerHTML|key|ref|autoFocus|defaultValue|defaultChecked|innerHTML|suppressContentEditableWarning|suppressHydrationWarning|valueLink|abbr|accept|acceptCharset|accessKey|action|allow|allowUserMedia|allowPaymentRequest|allowFullScreen|allowTransparency|alt|async|autoComplete|autoPlay|capture|cellPadding|cellSpacing|challenge|charSet|checked|cite|classID|className|cols|colSpan|content|contentEditable|contextMenu|controls|controlsList|coords|crossOrigin|data|dateTime|decoding|default|defer|dir|disabled|disablePictureInPicture|download|draggable|encType|enterKeyHint|form|formAction|formEncType|formMethod|formNoValidate|formTarget|frameBorder|headers|height|hidden|high|href|hrefLang|htmlFor|httpEquiv|id|inputMode|integrity|is|keyParams|keyType|kind|label|lang|list|loading|loop|low|marginHeight|marginWidth|max|maxLength|media|mediaGroup|method|min|minLength|multiple|muted|name|nonce|noValidate|open|optimum|pattern|placeholder|playsInline|poster|preload|profile|radioGroup|readOnly|referrerPolicy|rel|required|reversed|role|rows|rowSpan|sandbox|scope|scoped|scrolling|seamless|selected|shape|size|sizes|slot|span|spellCheck|src|srcDoc|srcLang|srcSet|start|step|style|summary|tabIndex|target|title|translate|type|useMap|value|width|wmode|wrap|about|datatype|inlist|prefix|property|resource|typeof|vocab|autoCapitalize|autoCorrect|autoSave|color|incremental|fallback|inert|itemProp|itemScope|itemType|itemID|itemRef|on|option|results|security|unselectable|accentHeight|accumulate|additive|alignmentBaseline|allowReorder|alphabetic|amplitude|arabicForm|ascent|attributeName|attributeType|autoReverse|azimuth|baseFrequency|baselineShift|baseProfile|bbox|begin|bias|by|calcMode|capHeight|clip|clipPathUnits|clipPath|clipRule|colorInterpolation|colorInterpolationFilters|colorProfile|colorRendering|contentScriptType|contentStyleType|cursor|cx|cy|d|decelerate|descent|diffuseConstant|direction|display|divisor|dominantBaseline|dur|dx|dy|edgeMode|elevation|enableBackground|end|exponent|externalResourcesRequired|fill|fillOpacity|fillRule|filter|filterRes|filterUnits|floodColor|floodOpacity|focusable|fontFamily|fontSize|fontSizeAdjust|fontStretch|fontStyle|fontVariant|fontWeight|format|from|fr|fx|fy|g1|g2|glyphName|glyphOrientationHorizontal|glyphOrientationVertical|glyphRef|gradientTransform|gradientUnits|hanging|horizAdvX|horizOriginX|ideographic|imageRendering|in|in2|intercept|k|k1|k2|k3|k4|kernelMatrix|kernelUnitLength|kerning|keyPoints|keySplines|keyTimes|lengthAdjust|letterSpacing|lightingColor|limitingConeAngle|local|markerEnd|markerMid|markerStart|markerHeight|markerUnits|markerWidth|mask|maskContentUnits|maskUnits|mathematical|mode|numOctaves|offset|opacity|operator|order|orient|orientation|origin|overflow|overlinePosition|overlineThickness|panose1|paintOrder|pathLength|patternContentUnits|patternTransform|patternUnits|pointerEvents|points|pointsAtX|pointsAtY|pointsAtZ|preserveAlpha|preserveAspectRatio|primitiveUnits|r|radius|refX|refY|renderingIntent|repeatCount|repeatDur|requiredExtensions|requiredFeatures|restart|result|rotate|rx|ry|scale|seed|shapeRendering|slope|spacing|specularConstant|specularExponent|speed|spreadMethod|startOffset|stdDeviation|stemh|stemv|stitchTiles|stopColor|stopOpacity|strikethroughPosition|strikethroughThickness|string|stroke|strokeDasharray|strokeDashoffset|strokeLinecap|strokeLinejoin|strokeMiterlimit|strokeOpacity|strokeWidth|surfaceScale|systemLanguage|tableValues|targetX|targetY|textAnchor|textDecoration|textRendering|textLength|to|transform|u1|u2|underlinePosition|underlineThickness|unicode|unicodeBidi|unicodeRange|unitsPerEm|vAlphabetic|vHanging|vIdeographic|vMathematical|values|vectorEffect|version|vertAdvY|vertOriginX|vertOriginY|viewBox|viewTarget|visibility|widths|wordSpacing|writingMode|x|xHeight|x1|x2|xChannelSelector|xlinkActuate|xlinkArcrole|xlinkHref|xlinkRole|xlinkShow|xlinkTitle|xlinkType|xmlBase|xmlns|xmlnsXlink|xmlLang|xmlSpace|y|y1|y2|yChannelSelector|z|zoomAndPan|for|class|autofocus)|(([Dd][Aa][Tt][Aa]|[Aa][Rr][Ii][Aa]|x)-.*))$/; // https://esbench.com/bench/5bfee68a4cd7e6009ef61d23\n\nvar isPropValid = /* #__PURE__ */memoize(function (prop) {\n return reactPropsRegex.test(prop) || prop.charCodeAt(0) === 111\n /* o */\n && prop.charCodeAt(1) === 110\n /* n */\n && prop.charCodeAt(2) < 91;\n}\n/* Z+1 */\n);\n\nexport { isPropValid as default };\n","var isBrowser = \"object\" !== 'undefined';\nfunction getRegisteredStyles(registered, registeredStyles, classNames) {\n var rawClassName = '';\n classNames.split(' ').forEach(function (className) {\n if (registered[className] !== undefined) {\n registeredStyles.push(registered[className] + \";\");\n } else {\n rawClassName += className + \" \";\n }\n });\n return rawClassName;\n}\nvar registerStyles = function registerStyles(cache, serialized, isStringTag) {\n var className = cache.key + \"-\" + serialized.name;\n\n if ( // we only need to add the styles to the registered cache if the\n // class name could be used further down\n // the tree but if it's a string tag, we know it won't\n // so we don't have to add it to registered cache.\n // this improves memory usage since we can avoid storing the whole style string\n (isStringTag === false || // we need to always store it if we're in compat mode and\n // in node since emotion-server relies on whether a style is in\n // the registered cache to know whether a style is global or not\n // also, note that this check will be dead code eliminated in the browser\n isBrowser === false ) && cache.registered[className] === undefined) {\n cache.registered[className] = serialized.styles;\n }\n};\nvar insertStyles = function insertStyles(cache, serialized, isStringTag) {\n registerStyles(cache, serialized, isStringTag);\n var className = cache.key + \"-\" + serialized.name;\n\n if (cache.inserted[serialized.name] === undefined) {\n var current = serialized;\n\n do {\n cache.insert(serialized === current ? \".\" + className : '', current, cache.sheet, true);\n\n current = current.next;\n } while (current !== undefined);\n }\n};\n\nexport { getRegisteredStyles, insertStyles, registerStyles };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport * as React from 'react';\nimport isPropValid from '@emotion/is-prop-valid';\nimport { withEmotionCache, ThemeContext } from '@emotion/react';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar testOmitPropsOnStringTag = isPropValid;\n\nvar testOmitPropsOnComponent = function testOmitPropsOnComponent(key) {\n return key !== 'theme';\n};\n\nvar getDefaultShouldForwardProp = function getDefaultShouldForwardProp(tag) {\n return typeof tag === 'string' && // 96 is one less than the char code\n // for \"a\" so this is checking that\n // it's a lowercase character\n tag.charCodeAt(0) > 96 ? testOmitPropsOnStringTag : testOmitPropsOnComponent;\n};\nvar composeShouldForwardProps = function composeShouldForwardProps(tag, options, isReal) {\n var shouldForwardProp;\n\n if (options) {\n var optionsShouldForwardProp = options.shouldForwardProp;\n shouldForwardProp = tag.__emotion_forwardProp && optionsShouldForwardProp ? function (propName) {\n return tag.__emotion_forwardProp(propName) && optionsShouldForwardProp(propName);\n } : optionsShouldForwardProp;\n }\n\n if (typeof shouldForwardProp !== 'function' && isReal) {\n shouldForwardProp = tag.__emotion_forwardProp;\n }\n\n return shouldForwardProp;\n};\n\nvar ILLEGAL_ESCAPE_SEQUENCE_ERROR = \"You have illegal escape sequence in your template literal, most likely inside content's property value.\\nBecause you write your CSS inside a JavaScript string you actually have to do double escaping, so for example \\\"content: '\\\\00d7';\\\" should become \\\"content: '\\\\\\\\00d7';\\\".\\nYou can read more about this here:\\nhttps://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Template_literals#ES2018_revision_of_illegal_escape_sequences\";\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar createStyled = function createStyled(tag, options) {\n if (process.env.NODE_ENV !== 'production') {\n if (tag === undefined) {\n throw new Error('You are trying to create a styled element with an undefined component.\\nYou may have forgotten to import it.');\n }\n }\n\n var isReal = tag.__emotion_real === tag;\n var baseTag = isReal && tag.__emotion_base || tag;\n var identifierName;\n var targetClassName;\n\n if (options !== undefined) {\n identifierName = options.label;\n targetClassName = options.target;\n }\n\n var shouldForwardProp = composeShouldForwardProps(tag, options, isReal);\n var defaultShouldForwardProp = shouldForwardProp || getDefaultShouldForwardProp(baseTag);\n var shouldUseAs = !defaultShouldForwardProp('as');\n return function () {\n var args = arguments;\n var styles = isReal && tag.__emotion_styles !== undefined ? tag.__emotion_styles.slice(0) : [];\n\n if (identifierName !== undefined) {\n styles.push(\"label:\" + identifierName + \";\");\n }\n\n if (args[0] == null || args[0].raw === undefined) {\n styles.push.apply(styles, args);\n } else {\n if (process.env.NODE_ENV !== 'production' && args[0][0] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[0][0]);\n var len = args.length;\n var i = 1;\n\n for (; i < len; i++) {\n if (process.env.NODE_ENV !== 'production' && args[0][i] === undefined) {\n console.error(ILLEGAL_ESCAPE_SEQUENCE_ERROR);\n }\n\n styles.push(args[i], args[0][i]);\n }\n } // $FlowFixMe: we need to cast StatelessFunctionalComponent to our PrivateStyledComponent class\n\n\n var Styled = withEmotionCache(function (props, cache, ref) {\n var FinalTag = shouldUseAs && props.as || baseTag;\n var className = '';\n var classInterpolations = [];\n var mergedProps = props;\n\n if (props.theme == null) {\n mergedProps = {};\n\n for (var key in props) {\n mergedProps[key] = props[key];\n }\n\n mergedProps.theme = React.useContext(ThemeContext);\n }\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, classInterpolations, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(styles.concat(classInterpolations), cache.registered, mergedProps);\n className += cache.key + \"-\" + serialized.name;\n\n if (targetClassName !== undefined) {\n className += \" \" + targetClassName;\n }\n\n var finalShouldForwardProp = shouldUseAs && shouldForwardProp === undefined ? getDefaultShouldForwardProp(FinalTag) : defaultShouldForwardProp;\n var newProps = {};\n\n for (var _key in props) {\n if (shouldUseAs && _key === 'as') continue;\n\n if ( // $FlowFixMe\n finalShouldForwardProp(_key)) {\n newProps[_key] = props[_key];\n }\n }\n\n newProps.className = className;\n newProps.ref = ref;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof FinalTag === 'string'\n }), /*#__PURE__*/React.createElement(FinalTag, newProps));\n });\n Styled.displayName = identifierName !== undefined ? identifierName : \"Styled(\" + (typeof baseTag === 'string' ? baseTag : baseTag.displayName || baseTag.name || 'Component') + \")\";\n Styled.defaultProps = tag.defaultProps;\n Styled.__emotion_real = Styled;\n Styled.__emotion_base = baseTag;\n Styled.__emotion_styles = styles;\n Styled.__emotion_forwardProp = shouldForwardProp;\n Object.defineProperty(Styled, 'toString', {\n value: function value() {\n if (targetClassName === undefined && process.env.NODE_ENV !== 'production') {\n return 'NO_COMPONENT_SELECTOR';\n } // $FlowFixMe: coerce undefined to string\n\n\n return \".\" + targetClassName;\n }\n });\n\n Styled.withComponent = function (nextTag, nextOptions) {\n return createStyled(nextTag, _extends({}, options, nextOptions, {\n shouldForwardProp: composeShouldForwardProps(Styled, nextOptions, true)\n })).apply(void 0, styles);\n };\n\n return Styled;\n };\n};\n\nexport { createStyled as default };\n","import createStyled from '../base/dist/emotion-styled-base.browser.esm.js';\nimport '@babel/runtime/helpers/extends';\nimport 'react';\nimport '@emotion/is-prop-valid';\nimport '@emotion/react';\nimport '@emotion/utils';\nimport '@emotion/serialize';\nimport '@emotion/use-insertion-effect-with-fallbacks';\n\nvar tags = ['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', // SVG\n'circle', 'clipPath', 'defs', 'ellipse', 'foreignObject', 'g', 'image', 'line', 'linearGradient', 'mask', 'path', 'pattern', 'polygon', 'polyline', 'radialGradient', 'rect', 'stop', 'svg', 'text', 'tspan'];\n\nvar newStyled = createStyled.bind();\ntags.forEach(function (tagName) {\n // $FlowFixMe: we can ignore this because its exposed type is defined by the CreateStyled type\n newStyled[tagName] = newStyled(tagName);\n});\n\nexport { newStyled as default };\n","function n(n){for(var r=arguments.length,t=Array(r>1?r-1:0),e=1;e3?r.i-4:r.i:Array.isArray(n)?1:s(n)?2:v(n)?3:0}function u(n,r){return 2===o(n)?n.has(r):Object.prototype.hasOwnProperty.call(n,r)}function a(n,r){return 2===o(n)?n.get(r):n[r]}function f(n,r,t){var e=o(n);2===e?n.set(r,t):3===e?n.add(t):n[r]=t}function c(n,r){return n===r?0!==n||1/n==1/r:n!=n&&r!=r}function s(n){return X&&n instanceof Map}function v(n){return q&&n instanceof Set}function p(n){return n.o||n.t}function l(n){if(Array.isArray(n))return Array.prototype.slice.call(n);var r=rn(n);delete r[Q];for(var t=nn(r),e=0;e1&&(n.set=n.add=n.clear=n.delete=h),Object.freeze(n),e&&i(n,(function(n,r){return d(r,!0)}),!0)),n}function h(){n(2)}function y(n){return null==n||\"object\"!=typeof n||Object.isFrozen(n)}function b(r){var t=tn[r];return t||n(18,r),t}function m(n,r){tn[n]||(tn[n]=r)}function _(){return\"production\"===process.env.NODE_ENV||U||n(0),U}function j(n,r){r&&(b(\"Patches\"),n.u=[],n.s=[],n.v=r)}function g(n){O(n),n.p.forEach(S),n.p=null}function O(n){n===U&&(U=n.l)}function w(n){return U={p:[],l:U,h:n,m:!0,_:0}}function S(n){var r=n[Q];0===r.i||1===r.i?r.j():r.g=!0}function P(r,e){e._=e.p.length;var i=e.p[0],o=void 0!==r&&r!==i;return e.h.O||b(\"ES5\").S(e,r,o),o?(i[Q].P&&(g(e),n(4)),t(r)&&(r=M(e,r),e.l||x(e,r)),e.u&&b(\"Patches\").M(i[Q].t,r,e.u,e.s)):r=M(e,i,[]),g(e),e.u&&e.v(e.u,e.s),r!==H?r:void 0}function M(n,r,t){if(y(r))return r;var e=r[Q];if(!e)return i(r,(function(i,o){return A(n,e,r,i,o,t)}),!0),r;if(e.A!==n)return r;if(!e.P)return x(n,e.t,!0),e.t;if(!e.I){e.I=!0,e.A._--;var o=4===e.i||5===e.i?e.o=l(e.k):e.o,u=o,a=!1;3===e.i&&(u=new Set(o),o.clear(),a=!0),i(u,(function(r,i){return A(n,e,o,r,i,t,a)})),x(n,o,!1),t&&n.u&&b(\"Patches\").N(e,t,n.u,n.s)}return e.o}function A(e,i,o,a,c,s,v){if(\"production\"!==process.env.NODE_ENV&&c===o&&n(5),r(c)){var p=M(e,c,s&&i&&3!==i.i&&!u(i.R,a)?s.concat(a):void 0);if(f(o,a,p),!r(p))return;e.m=!1}else v&&o.add(c);if(t(c)&&!y(c)){if(!e.h.D&&e._<1)return;M(e,c),i&&i.A.l||x(e,c)}}function x(n,r,t){void 0===t&&(t=!1),!n.l&&n.h.D&&n.m&&d(r,t)}function z(n,r){var t=n[Q];return(t?p(t):n)[r]}function I(n,r){if(r in n)for(var t=Object.getPrototypeOf(n);t;){var e=Object.getOwnPropertyDescriptor(t,r);if(e)return e;t=Object.getPrototypeOf(t)}}function k(n){n.P||(n.P=!0,n.l&&k(n.l))}function E(n){n.o||(n.o=l(n.t))}function N(n,r,t){var e=s(r)?b(\"MapSet\").F(r,t):v(r)?b(\"MapSet\").T(r,t):n.O?function(n,r){var t=Array.isArray(n),e={i:t?1:0,A:r?r.A:_(),P:!1,I:!1,R:{},l:r,t:n,k:null,o:null,j:null,C:!1},i=e,o=en;t&&(i=[e],o=on);var u=Proxy.revocable(i,o),a=u.revoke,f=u.proxy;return e.k=f,e.j=a,f}(r,t):b(\"ES5\").J(r,t);return(t?t.A:_()).p.push(e),e}function R(e){return r(e)||n(22,e),function n(r){if(!t(r))return r;var e,u=r[Q],c=o(r);if(u){if(!u.P&&(u.i<4||!b(\"ES5\").K(u)))return u.t;u.I=!0,e=D(r,c),u.I=!1}else e=D(r,c);return i(e,(function(r,t){u&&a(u.t,r)===t||f(e,r,n(t))})),3===c?new Set(e):e}(e)}function D(n,r){switch(r){case 2:return new Map(n);case 3:return Array.from(n)}return l(n)}function F(){function t(n,r){var t=s[n];return t?t.enumerable=r:s[n]=t={configurable:!0,enumerable:r,get:function(){var r=this[Q];return\"production\"!==process.env.NODE_ENV&&f(r),en.get(r,n)},set:function(r){var t=this[Q];\"production\"!==process.env.NODE_ENV&&f(t),en.set(t,n,r)}},t}function e(n){for(var r=n.length-1;r>=0;r--){var t=n[r][Q];if(!t.P)switch(t.i){case 5:a(t)&&k(t);break;case 4:o(t)&&k(t)}}}function o(n){for(var r=n.t,t=n.k,e=nn(t),i=e.length-1;i>=0;i--){var o=e[i];if(o!==Q){var a=r[o];if(void 0===a&&!u(r,o))return!0;var f=t[o],s=f&&f[Q];if(s?s.t!==a:!c(f,a))return!0}}var v=!!r[Q];return e.length!==nn(r).length+(v?0:1)}function a(n){var r=n.k;if(r.length!==n.t.length)return!0;var t=Object.getOwnPropertyDescriptor(r,r.length-1);if(t&&!t.get)return!0;for(var e=0;e1?t-1:0),o=1;o1?t-1:0),o=1;o=0;e--){var i=t[e];if(0===i.path.length&&\"replace\"===i.op){n=i.value;break}}e>-1&&(t=t.slice(e+1));var o=b(\"Patches\").$;return r(n)?o(n,t):this.produce(n,(function(n){return o(n,t)}))},e}(),an=new un,fn=an.produce,cn=an.produceWithPatches.bind(an),sn=an.setAutoFreeze.bind(an),vn=an.setUseProxies.bind(an),pn=an.applyPatches.bind(an),ln=an.createDraft.bind(an),dn=an.finishDraft.bind(an);export default fn;export{un as Immer,pn as applyPatches,K as castDraft,$ as castImmutable,ln as createDraft,R as current,J as enableAllPlugins,F as enableES5,C as enableMapSet,T as enablePatches,dn as finishDraft,d as freeze,L as immerable,r as isDraft,t as isDraftable,H as nothing,e as original,fn as produce,cn as produceWithPatches,sn as setAutoFreeze,vn as setUseProxies};\n//# sourceMappingURL=immer.esm.js.map\n","export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _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 }, _typeof(obj);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _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}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import _typeof from \"./typeof.js\";\nexport default function _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}","import defineProperty from \"./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}\nexport default function _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}","import _objectSpread from '@babel/runtime/helpers/esm/objectSpread2';\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(_objectSpread({}, store), {}, {\n dispatch: _dispatch\n });\n };\n };\n}\n\nexport { ActionTypes as __DO_NOT_USE__ActionTypes, applyMiddleware, bindActionCreators, combineReducers, compose, createStore, legacy_createStore };\n","/** A function that accepts a potential \"extra argument\" value to be injected later,\r\n * and returns an instance of the thunk middleware that uses that value\r\n */\nfunction createThunkMiddleware(extraArgument) {\n // Standard Redux middleware definition pattern:\n // See: https://redux.js.org/tutorials/fundamentals/part-4-store#writing-custom-middleware\n var middleware = function middleware(_ref) {\n var dispatch = _ref.dispatch,\n getState = _ref.getState;\n return function (next) {\n return function (action) {\n // The thunk middleware looks for any functions that were passed to `store.dispatch`.\n // If this \"action\" is really a function, call it and return the result.\n if (typeof action === 'function') {\n // Inject the store's `dispatch` and `getState` methods, as well as any \"extra arg\"\n return action(dispatch, getState, extraArgument);\n } // Otherwise, pass the action down the middleware chain as usual\n\n\n return next(action);\n };\n };\n };\n\n return middleware;\n}\n\nvar thunk = createThunkMiddleware(); // Attach the factory function so users can create a customized version\n// with whatever \"extra arg\" they want to inject into their thunks\n\nthunk.withExtraArgument = createThunkMiddleware;\nexport default thunk;","var __extends = (this && this.__extends) || (function () {\r\n var extendStatics = function (d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n };\r\n return function (d, b) {\r\n if (typeof b !== \"function\" && b !== null)\r\n throw new TypeError(\"Class extends value \" + String(b) + \" is not a constructor or null\");\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n };\r\n})();\r\nvar __generator = (this && this.__generator) || function (thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n};\r\nvar __spreadArray = (this && this.__spreadArray) || function (to, from) {\r\n for (var i = 0, il = from.length, j = to.length; i < il; i++, j++)\r\n to[j] = from[i];\r\n return to;\r\n};\r\nvar __defProp = Object.defineProperty;\r\nvar __defProps = Object.defineProperties;\r\nvar __getOwnPropDescs = Object.getOwnPropertyDescriptors;\r\nvar __getOwnPropSymbols = Object.getOwnPropertySymbols;\r\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\r\nvar __propIsEnum = Object.prototype.propertyIsEnumerable;\r\nvar __defNormalProp = function (obj, key, value) { return key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value: value }) : obj[key] = value; };\r\nvar __spreadValues = function (a, b) {\r\n for (var prop in b || (b = {}))\r\n if (__hasOwnProp.call(b, prop))\r\n __defNormalProp(a, prop, b[prop]);\r\n if (__getOwnPropSymbols)\r\n for (var _i = 0, _c = __getOwnPropSymbols(b); _i < _c.length; _i++) {\r\n var prop = _c[_i];\r\n if (__propIsEnum.call(b, prop))\r\n __defNormalProp(a, prop, b[prop]);\r\n }\r\n return a;\r\n};\r\nvar __spreadProps = function (a, b) { return __defProps(a, __getOwnPropDescs(b)); };\r\nvar __async = function (__this, __arguments, generator) {\r\n return new Promise(function (resolve, reject) {\r\n var fulfilled = function (value) {\r\n try {\r\n step(generator.next(value));\r\n }\r\n catch (e) {\r\n reject(e);\r\n }\r\n };\r\n var rejected = function (value) {\r\n try {\r\n step(generator.throw(value));\r\n }\r\n catch (e) {\r\n reject(e);\r\n }\r\n };\r\n var step = function (x) { return x.done ? resolve(x.value) : Promise.resolve(x.value).then(fulfilled, rejected); };\r\n step((generator = generator.apply(__this, __arguments)).next());\r\n });\r\n};\r\n// src/index.ts\r\nimport { enableES5 } from \"immer\";\r\nexport * from \"redux\";\r\nimport { default as default2, current as current2, freeze, original, isDraft as isDraft4 } from \"immer\";\r\nimport { createSelector as createSelector2 } from \"reselect\";\r\n// src/createDraftSafeSelector.ts\r\nimport { current, isDraft } from \"immer\";\r\nimport { createSelector } from \"reselect\";\r\nvar createDraftSafeSelector = function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var selector = createSelector.apply(void 0, args);\r\n var wrappedSelector = function (value) {\r\n var rest = [];\r\n for (var _i = 1; _i < arguments.length; _i++) {\r\n rest[_i - 1] = arguments[_i];\r\n }\r\n return selector.apply(void 0, __spreadArray([isDraft(value) ? current(value) : value], rest));\r\n };\r\n return wrappedSelector;\r\n};\r\n// src/configureStore.ts\r\nimport { createStore, compose as compose2, applyMiddleware, combineReducers } from \"redux\";\r\n// src/devtoolsExtension.ts\r\nimport { compose } from \"redux\";\r\nvar composeWithDevTools = typeof window !== \"undefined\" && window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ ? window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ : function () {\r\n if (arguments.length === 0)\r\n return void 0;\r\n if (typeof arguments[0] === \"object\")\r\n return compose;\r\n return compose.apply(null, arguments);\r\n};\r\nvar devToolsEnhancer = typeof window !== \"undefined\" && window.__REDUX_DEVTOOLS_EXTENSION__ ? window.__REDUX_DEVTOOLS_EXTENSION__ : function () {\r\n return function (noop2) {\r\n return noop2;\r\n };\r\n};\r\n// src/isPlainObject.ts\r\nfunction isPlainObject(value) {\r\n if (typeof value !== \"object\" || value === null)\r\n return false;\r\n var proto = Object.getPrototypeOf(value);\r\n if (proto === null)\r\n return true;\r\n var baseProto = proto;\r\n while (Object.getPrototypeOf(baseProto) !== null) {\r\n baseProto = Object.getPrototypeOf(baseProto);\r\n }\r\n return proto === baseProto;\r\n}\r\n// src/getDefaultMiddleware.ts\r\nimport thunkMiddleware from \"redux-thunk\";\r\n// src/utils.ts\r\nimport createNextState, { isDraftable } from \"immer\";\r\nfunction getTimeMeasureUtils(maxDelay, fnName) {\r\n var elapsed = 0;\r\n return {\r\n measureTime: function (fn) {\r\n var started = Date.now();\r\n try {\r\n return fn();\r\n }\r\n finally {\r\n var finished = Date.now();\r\n elapsed += finished - started;\r\n }\r\n },\r\n warnIfExceeded: function () {\r\n if (elapsed > maxDelay) {\r\n console.warn(fnName + \" took \" + elapsed + \"ms, which is more than the warning threshold of \" + maxDelay + \"ms. \\nIf your state or actions are very large, you may want to disable the middleware as it might cause too much of a slowdown in development mode. See https://redux-toolkit.js.org/api/getDefaultMiddleware for instructions.\\nIt is disabled in production builds, so you don't need to worry about that.\");\r\n }\r\n }\r\n };\r\n}\r\nvar MiddlewareArray = /** @class */ (function (_super) {\r\n __extends(MiddlewareArray, _super);\r\n function MiddlewareArray() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var _this = _super.apply(this, args) || this;\r\n Object.setPrototypeOf(_this, MiddlewareArray.prototype);\r\n return _this;\r\n }\r\n Object.defineProperty(MiddlewareArray, Symbol.species, {\r\n get: function () {\r\n return MiddlewareArray;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n MiddlewareArray.prototype.concat = function () {\r\n var arr = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n arr[_i] = arguments[_i];\r\n }\r\n return _super.prototype.concat.apply(this, arr);\r\n };\r\n MiddlewareArray.prototype.prepend = function () {\r\n var arr = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n arr[_i] = arguments[_i];\r\n }\r\n if (arr.length === 1 && Array.isArray(arr[0])) {\r\n return new (MiddlewareArray.bind.apply(MiddlewareArray, __spreadArray([void 0], arr[0].concat(this))))();\r\n }\r\n return new (MiddlewareArray.bind.apply(MiddlewareArray, __spreadArray([void 0], arr.concat(this))))();\r\n };\r\n return MiddlewareArray;\r\n}(Array));\r\nvar EnhancerArray = /** @class */ (function (_super) {\r\n __extends(EnhancerArray, _super);\r\n function EnhancerArray() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var _this = _super.apply(this, args) || this;\r\n Object.setPrototypeOf(_this, EnhancerArray.prototype);\r\n return _this;\r\n }\r\n Object.defineProperty(EnhancerArray, Symbol.species, {\r\n get: function () {\r\n return EnhancerArray;\r\n },\r\n enumerable: false,\r\n configurable: true\r\n });\r\n EnhancerArray.prototype.concat = function () {\r\n var arr = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n arr[_i] = arguments[_i];\r\n }\r\n return _super.prototype.concat.apply(this, arr);\r\n };\r\n EnhancerArray.prototype.prepend = function () {\r\n var arr = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n arr[_i] = arguments[_i];\r\n }\r\n if (arr.length === 1 && Array.isArray(arr[0])) {\r\n return new (EnhancerArray.bind.apply(EnhancerArray, __spreadArray([void 0], arr[0].concat(this))))();\r\n }\r\n return new (EnhancerArray.bind.apply(EnhancerArray, __spreadArray([void 0], arr.concat(this))))();\r\n };\r\n return EnhancerArray;\r\n}(Array));\r\nfunction freezeDraftable(val) {\r\n return isDraftable(val) ? createNextState(val, function () {\r\n }) : val;\r\n}\r\n// src/immutableStateInvariantMiddleware.ts\r\nvar isProduction = process.env.NODE_ENV === \"production\";\r\nvar prefix = \"Invariant failed\";\r\nfunction invariant(condition, message) {\r\n if (condition) {\r\n return;\r\n }\r\n if (isProduction) {\r\n throw new Error(prefix);\r\n }\r\n throw new Error(prefix + \": \" + (message || \"\"));\r\n}\r\nfunction stringify(obj, serializer, indent, decycler) {\r\n return JSON.stringify(obj, getSerialize(serializer, decycler), indent);\r\n}\r\nfunction getSerialize(serializer, decycler) {\r\n var stack = [], keys = [];\r\n if (!decycler)\r\n decycler = function (_, value) {\r\n if (stack[0] === value)\r\n return \"[Circular ~]\";\r\n return \"[Circular ~.\" + keys.slice(0, stack.indexOf(value)).join(\".\") + \"]\";\r\n };\r\n return function (key, value) {\r\n if (stack.length > 0) {\r\n var thisPos = stack.indexOf(this);\r\n ~thisPos ? stack.splice(thisPos + 1) : stack.push(this);\r\n ~thisPos ? keys.splice(thisPos, Infinity, key) : keys.push(key);\r\n if (~stack.indexOf(value))\r\n value = decycler.call(this, key, value);\r\n }\r\n else\r\n stack.push(value);\r\n return serializer == null ? value : serializer.call(this, key, value);\r\n };\r\n}\r\nfunction isImmutableDefault(value) {\r\n return typeof value !== \"object\" || value == null || Object.isFrozen(value);\r\n}\r\nfunction trackForMutations(isImmutable, ignorePaths, obj) {\r\n var trackedProperties = trackProperties(isImmutable, ignorePaths, obj);\r\n return {\r\n detectMutations: function () {\r\n return detectMutations(isImmutable, ignorePaths, trackedProperties, obj);\r\n }\r\n };\r\n}\r\nfunction trackProperties(isImmutable, ignorePaths, obj, path) {\r\n if (ignorePaths === void 0) { ignorePaths = []; }\r\n if (path === void 0) { path = \"\"; }\r\n var tracked = { value: obj };\r\n if (!isImmutable(obj)) {\r\n tracked.children = {};\r\n for (var key in obj) {\r\n var childPath = path ? path + \".\" + key : key;\r\n if (ignorePaths.length && ignorePaths.indexOf(childPath) !== -1) {\r\n continue;\r\n }\r\n tracked.children[key] = trackProperties(isImmutable, ignorePaths, obj[key], childPath);\r\n }\r\n }\r\n return tracked;\r\n}\r\nfunction detectMutations(isImmutable, ignoredPaths, trackedProperty, obj, sameParentRef, path) {\r\n if (ignoredPaths === void 0) { ignoredPaths = []; }\r\n if (sameParentRef === void 0) { sameParentRef = false; }\r\n if (path === void 0) { path = \"\"; }\r\n var prevObj = trackedProperty ? trackedProperty.value : void 0;\r\n var sameRef = prevObj === obj;\r\n if (sameParentRef && !sameRef && !Number.isNaN(obj)) {\r\n return { wasMutated: true, path: path };\r\n }\r\n if (isImmutable(prevObj) || isImmutable(obj)) {\r\n return { wasMutated: false };\r\n }\r\n var keysToDetect = {};\r\n for (var key in trackedProperty.children) {\r\n keysToDetect[key] = true;\r\n }\r\n for (var key in obj) {\r\n keysToDetect[key] = true;\r\n }\r\n var hasIgnoredPaths = ignoredPaths.length > 0;\r\n var _loop_1 = function (key) {\r\n var nestedPath = path ? path + \".\" + key : key;\r\n if (hasIgnoredPaths) {\r\n var hasMatches = ignoredPaths.some(function (ignored) {\r\n if (ignored instanceof RegExp) {\r\n return ignored.test(nestedPath);\r\n }\r\n return nestedPath === ignored;\r\n });\r\n if (hasMatches) {\r\n return \"continue\";\r\n }\r\n }\r\n var result = detectMutations(isImmutable, ignoredPaths, trackedProperty.children[key], obj[key], sameRef, nestedPath);\r\n if (result.wasMutated) {\r\n return { value: result };\r\n }\r\n };\r\n for (var key in keysToDetect) {\r\n var state_1 = _loop_1(key);\r\n if (typeof state_1 === \"object\")\r\n return state_1.value;\r\n }\r\n return { wasMutated: false };\r\n}\r\nfunction createImmutableStateInvariantMiddleware(options) {\r\n if (options === void 0) { options = {}; }\r\n if (process.env.NODE_ENV === \"production\") {\r\n return function () { return function (next) { return function (action) { return next(action); }; }; };\r\n }\r\n var _c = options.isImmutable, isImmutable = _c === void 0 ? isImmutableDefault : _c, ignoredPaths = options.ignoredPaths, _d = options.warnAfter, warnAfter = _d === void 0 ? 32 : _d, ignore = options.ignore;\r\n ignoredPaths = ignoredPaths || ignore;\r\n var track = trackForMutations.bind(null, isImmutable, ignoredPaths);\r\n return function (_c) {\r\n var getState = _c.getState;\r\n var state = getState();\r\n var tracker = track(state);\r\n var result;\r\n return function (next) { return function (action) {\r\n var measureUtils = getTimeMeasureUtils(warnAfter, \"ImmutableStateInvariantMiddleware\");\r\n measureUtils.measureTime(function () {\r\n state = getState();\r\n result = tracker.detectMutations();\r\n tracker = track(state);\r\n invariant(!result.wasMutated, \"A state mutation was detected between dispatches, in the path '\" + (result.path || \"\") + \"'. This may cause incorrect behavior. (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)\");\r\n });\r\n var dispatchedAction = next(action);\r\n measureUtils.measureTime(function () {\r\n state = getState();\r\n result = tracker.detectMutations();\r\n tracker = track(state);\r\n result.wasMutated && invariant(!result.wasMutated, \"A state mutation was detected inside a dispatch, in the path: \" + (result.path || \"\") + \". Take a look at the reducer(s) handling the action \" + stringify(action) + \". (https://redux.js.org/style-guide/style-guide#do-not-mutate-state)\");\r\n });\r\n measureUtils.warnIfExceeded();\r\n return dispatchedAction;\r\n }; };\r\n };\r\n}\r\n// src/serializableStateInvariantMiddleware.ts\r\nfunction isPlain(val) {\r\n var type = typeof val;\r\n return val == null || type === \"string\" || type === \"boolean\" || type === \"number\" || Array.isArray(val) || isPlainObject(val);\r\n}\r\nfunction findNonSerializableValue(value, path, isSerializable, getEntries, ignoredPaths, cache) {\r\n if (path === void 0) { path = \"\"; }\r\n if (isSerializable === void 0) { isSerializable = isPlain; }\r\n if (ignoredPaths === void 0) { ignoredPaths = []; }\r\n var foundNestedSerializable;\r\n if (!isSerializable(value)) {\r\n return {\r\n keyPath: path || \"\",\r\n value: value\r\n };\r\n }\r\n if (typeof value !== \"object\" || value === null) {\r\n return false;\r\n }\r\n if (cache == null ? void 0 : cache.has(value))\r\n return false;\r\n var entries = getEntries != null ? getEntries(value) : Object.entries(value);\r\n var hasIgnoredPaths = ignoredPaths.length > 0;\r\n var _loop_2 = function (key, nestedValue) {\r\n var nestedPath = path ? path + \".\" + key : key;\r\n if (hasIgnoredPaths) {\r\n var hasMatches = ignoredPaths.some(function (ignored) {\r\n if (ignored instanceof RegExp) {\r\n return ignored.test(nestedPath);\r\n }\r\n return nestedPath === ignored;\r\n });\r\n if (hasMatches) {\r\n return \"continue\";\r\n }\r\n }\r\n if (!isSerializable(nestedValue)) {\r\n return { value: {\r\n keyPath: nestedPath,\r\n value: nestedValue\r\n } };\r\n }\r\n if (typeof nestedValue === \"object\") {\r\n foundNestedSerializable = findNonSerializableValue(nestedValue, nestedPath, isSerializable, getEntries, ignoredPaths, cache);\r\n if (foundNestedSerializable) {\r\n return { value: foundNestedSerializable };\r\n }\r\n }\r\n };\r\n for (var _i = 0, entries_1 = entries; _i < entries_1.length; _i++) {\r\n var _c = entries_1[_i], key = _c[0], nestedValue = _c[1];\r\n var state_2 = _loop_2(key, nestedValue);\r\n if (typeof state_2 === \"object\")\r\n return state_2.value;\r\n }\r\n if (cache && isNestedFrozen(value))\r\n cache.add(value);\r\n return false;\r\n}\r\nfunction isNestedFrozen(value) {\r\n if (!Object.isFrozen(value))\r\n return false;\r\n for (var _i = 0, _c = Object.values(value); _i < _c.length; _i++) {\r\n var nestedValue = _c[_i];\r\n if (typeof nestedValue !== \"object\" || nestedValue === null)\r\n continue;\r\n if (!isNestedFrozen(nestedValue))\r\n return false;\r\n }\r\n return true;\r\n}\r\nfunction createSerializableStateInvariantMiddleware(options) {\r\n if (options === void 0) { options = {}; }\r\n if (process.env.NODE_ENV === \"production\") {\r\n return function () { return function (next) { return function (action) { return next(action); }; }; };\r\n }\r\n var _c = options.isSerializable, isSerializable = _c === void 0 ? isPlain : _c, getEntries = options.getEntries, _d = options.ignoredActions, ignoredActions = _d === void 0 ? [] : _d, _e = options.ignoredActionPaths, ignoredActionPaths = _e === void 0 ? [\"meta.arg\", \"meta.baseQueryMeta\"] : _e, _f = options.ignoredPaths, ignoredPaths = _f === void 0 ? [] : _f, _g = options.warnAfter, warnAfter = _g === void 0 ? 32 : _g, _h = options.ignoreState, ignoreState = _h === void 0 ? false : _h, _j = options.ignoreActions, ignoreActions = _j === void 0 ? false : _j, _k = options.disableCache, disableCache = _k === void 0 ? false : _k;\r\n var cache = !disableCache && WeakSet ? new WeakSet() : void 0;\r\n return function (storeAPI) { return function (next) { return function (action) {\r\n var result = next(action);\r\n var measureUtils = getTimeMeasureUtils(warnAfter, \"SerializableStateInvariantMiddleware\");\r\n if (!ignoreActions && !(ignoredActions.length && ignoredActions.indexOf(action.type) !== -1)) {\r\n measureUtils.measureTime(function () {\r\n var foundActionNonSerializableValue = findNonSerializableValue(action, \"\", isSerializable, getEntries, ignoredActionPaths, cache);\r\n if (foundActionNonSerializableValue) {\r\n var keyPath = foundActionNonSerializableValue.keyPath, value = foundActionNonSerializableValue.value;\r\n console.error(\"A non-serializable value was detected in an action, in the path: `\" + keyPath + \"`. Value:\", value, \"\\nTake a look at the logic that dispatched this action: \", action, \"\\n(See https://redux.js.org/faq/actions#why-should-type-be-a-string-or-at-least-serializable-why-should-my-action-types-be-constants)\", \"\\n(To allow non-serializable values see: https://redux-toolkit.js.org/usage/usage-guide#working-with-non-serializable-data)\");\r\n }\r\n });\r\n }\r\n if (!ignoreState) {\r\n measureUtils.measureTime(function () {\r\n var state = storeAPI.getState();\r\n var foundStateNonSerializableValue = findNonSerializableValue(state, \"\", isSerializable, getEntries, ignoredPaths, cache);\r\n if (foundStateNonSerializableValue) {\r\n var keyPath = foundStateNonSerializableValue.keyPath, value = foundStateNonSerializableValue.value;\r\n console.error(\"A non-serializable value was detected in the state, in the path: `\" + keyPath + \"`. Value:\", value, \"\\nTake a look at the reducer(s) handling this action type: \" + action.type + \".\\n(See https://redux.js.org/faq/organizing-state#can-i-put-functions-promises-or-other-non-serializable-items-in-my-store-state)\");\r\n }\r\n });\r\n measureUtils.warnIfExceeded();\r\n }\r\n return result;\r\n }; }; };\r\n}\r\n// src/getDefaultMiddleware.ts\r\nfunction isBoolean(x) {\r\n return typeof x === \"boolean\";\r\n}\r\nfunction curryGetDefaultMiddleware() {\r\n return function curriedGetDefaultMiddleware(options) {\r\n return getDefaultMiddleware(options);\r\n };\r\n}\r\nfunction getDefaultMiddleware(options) {\r\n if (options === void 0) { options = {}; }\r\n var _c = options.thunk, thunk = _c === void 0 ? true : _c, _d = options.immutableCheck, immutableCheck = _d === void 0 ? true : _d, _e = options.serializableCheck, serializableCheck = _e === void 0 ? true : _e;\r\n var middlewareArray = new MiddlewareArray();\r\n if (thunk) {\r\n if (isBoolean(thunk)) {\r\n middlewareArray.push(thunkMiddleware);\r\n }\r\n else {\r\n middlewareArray.push(thunkMiddleware.withExtraArgument(thunk.extraArgument));\r\n }\r\n }\r\n if (process.env.NODE_ENV !== \"production\") {\r\n if (immutableCheck) {\r\n var immutableOptions = {};\r\n if (!isBoolean(immutableCheck)) {\r\n immutableOptions = immutableCheck;\r\n }\r\n middlewareArray.unshift(createImmutableStateInvariantMiddleware(immutableOptions));\r\n }\r\n if (serializableCheck) {\r\n var serializableOptions = {};\r\n if (!isBoolean(serializableCheck)) {\r\n serializableOptions = serializableCheck;\r\n }\r\n middlewareArray.push(createSerializableStateInvariantMiddleware(serializableOptions));\r\n }\r\n }\r\n return middlewareArray;\r\n}\r\n// src/configureStore.ts\r\nvar IS_PRODUCTION = process.env.NODE_ENV === \"production\";\r\nfunction configureStore(options) {\r\n var curriedGetDefaultMiddleware = curryGetDefaultMiddleware();\r\n var _c = options || {}, _d = _c.reducer, reducer = _d === void 0 ? void 0 : _d, _e = _c.middleware, middleware = _e === void 0 ? curriedGetDefaultMiddleware() : _e, _f = _c.devTools, devTools = _f === void 0 ? true : _f, _g = _c.preloadedState, preloadedState = _g === void 0 ? void 0 : _g, _h = _c.enhancers, enhancers = _h === void 0 ? void 0 : _h;\r\n var rootReducer;\r\n if (typeof reducer === \"function\") {\r\n rootReducer = reducer;\r\n }\r\n else if (isPlainObject(reducer)) {\r\n rootReducer = combineReducers(reducer);\r\n }\r\n else {\r\n throw new Error('\"reducer\" is a required argument, and must be a function or an object of functions that can be passed to combineReducers');\r\n }\r\n var finalMiddleware = middleware;\r\n if (typeof finalMiddleware === \"function\") {\r\n finalMiddleware = finalMiddleware(curriedGetDefaultMiddleware);\r\n if (!IS_PRODUCTION && !Array.isArray(finalMiddleware)) {\r\n throw new Error(\"when using a middleware builder function, an array of middleware must be returned\");\r\n }\r\n }\r\n if (!IS_PRODUCTION && finalMiddleware.some(function (item) { return typeof item !== \"function\"; })) {\r\n throw new Error(\"each middleware provided to configureStore must be a function\");\r\n }\r\n var middlewareEnhancer = applyMiddleware.apply(void 0, finalMiddleware);\r\n var finalCompose = compose2;\r\n if (devTools) {\r\n finalCompose = composeWithDevTools(__spreadValues({\r\n trace: !IS_PRODUCTION\r\n }, typeof devTools === \"object\" && devTools));\r\n }\r\n var defaultEnhancers = new EnhancerArray(middlewareEnhancer);\r\n var storeEnhancers = defaultEnhancers;\r\n if (Array.isArray(enhancers)) {\r\n storeEnhancers = __spreadArray([middlewareEnhancer], enhancers);\r\n }\r\n else if (typeof enhancers === \"function\") {\r\n storeEnhancers = enhancers(defaultEnhancers);\r\n }\r\n var composedEnhancer = finalCompose.apply(void 0, storeEnhancers);\r\n return createStore(rootReducer, preloadedState, composedEnhancer);\r\n}\r\n// src/createAction.ts\r\nfunction createAction(type, prepareAction) {\r\n function actionCreator() {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n if (prepareAction) {\r\n var prepared = prepareAction.apply(void 0, args);\r\n if (!prepared) {\r\n throw new Error(\"prepareAction did not return an object\");\r\n }\r\n return __spreadValues(__spreadValues({\r\n type: type,\r\n payload: prepared.payload\r\n }, \"meta\" in prepared && { meta: prepared.meta }), \"error\" in prepared && { error: prepared.error });\r\n }\r\n return { type: type, payload: args[0] };\r\n }\r\n actionCreator.toString = function () { return \"\" + type; };\r\n actionCreator.type = type;\r\n actionCreator.match = function (action) { return action.type === type; };\r\n return actionCreator;\r\n}\r\nfunction isAction(action) {\r\n return isPlainObject(action) && \"type\" in action;\r\n}\r\nfunction isFSA(action) {\r\n return isAction(action) && typeof action.type === \"string\" && Object.keys(action).every(isValidKey);\r\n}\r\nfunction isValidKey(key) {\r\n return [\"type\", \"payload\", \"error\", \"meta\"].indexOf(key) > -1;\r\n}\r\nfunction getType(actionCreator) {\r\n return \"\" + actionCreator;\r\n}\r\n// src/createReducer.ts\r\nimport createNextState2, { isDraft as isDraft2, isDraftable as isDraftable2 } from \"immer\";\r\n// src/mapBuilders.ts\r\nfunction executeReducerBuilderCallback(builderCallback) {\r\n var actionsMap = {};\r\n var actionMatchers = [];\r\n var defaultCaseReducer;\r\n var builder = {\r\n addCase: function (typeOrActionCreator, reducer) {\r\n if (process.env.NODE_ENV !== \"production\") {\r\n if (actionMatchers.length > 0) {\r\n throw new Error(\"`builder.addCase` should only be called before calling `builder.addMatcher`\");\r\n }\r\n if (defaultCaseReducer) {\r\n throw new Error(\"`builder.addCase` should only be called before calling `builder.addDefaultCase`\");\r\n }\r\n }\r\n var type = typeof typeOrActionCreator === \"string\" ? typeOrActionCreator : typeOrActionCreator.type;\r\n if (type in actionsMap) {\r\n throw new Error(\"addCase cannot be called with two reducers for the same action type\");\r\n }\r\n actionsMap[type] = reducer;\r\n return builder;\r\n },\r\n addMatcher: function (matcher, reducer) {\r\n if (process.env.NODE_ENV !== \"production\") {\r\n if (defaultCaseReducer) {\r\n throw new Error(\"`builder.addMatcher` should only be called before calling `builder.addDefaultCase`\");\r\n }\r\n }\r\n actionMatchers.push({ matcher: matcher, reducer: reducer });\r\n return builder;\r\n },\r\n addDefaultCase: function (reducer) {\r\n if (process.env.NODE_ENV !== \"production\") {\r\n if (defaultCaseReducer) {\r\n throw new Error(\"`builder.addDefaultCase` can only be called once\");\r\n }\r\n }\r\n defaultCaseReducer = reducer;\r\n return builder;\r\n }\r\n };\r\n builderCallback(builder);\r\n return [actionsMap, actionMatchers, defaultCaseReducer];\r\n}\r\n// src/createReducer.ts\r\nfunction isStateFunction(x) {\r\n return typeof x === \"function\";\r\n}\r\nvar hasWarnedAboutObjectNotation = false;\r\nfunction createReducer(initialState, mapOrBuilderCallback, actionMatchers, defaultCaseReducer) {\r\n if (actionMatchers === void 0) { actionMatchers = []; }\r\n if (process.env.NODE_ENV !== \"production\") {\r\n if (typeof mapOrBuilderCallback === \"object\") {\r\n if (!hasWarnedAboutObjectNotation) {\r\n hasWarnedAboutObjectNotation = true;\r\n console.warn(\"The object notation for `createReducer` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createReducer\");\r\n }\r\n }\r\n }\r\n var _c = typeof mapOrBuilderCallback === \"function\" ? executeReducerBuilderCallback(mapOrBuilderCallback) : [mapOrBuilderCallback, actionMatchers, defaultCaseReducer], actionsMap = _c[0], finalActionMatchers = _c[1], finalDefaultCaseReducer = _c[2];\r\n var getInitialState;\r\n if (isStateFunction(initialState)) {\r\n getInitialState = function () { return freezeDraftable(initialState()); };\r\n }\r\n else {\r\n var frozenInitialState_1 = freezeDraftable(initialState);\r\n getInitialState = function () { return frozenInitialState_1; };\r\n }\r\n function reducer(state, action) {\r\n if (state === void 0) { state = getInitialState(); }\r\n var caseReducers = __spreadArray([\r\n actionsMap[action.type]\r\n ], finalActionMatchers.filter(function (_c) {\r\n var matcher = _c.matcher;\r\n return matcher(action);\r\n }).map(function (_c) {\r\n var reducer2 = _c.reducer;\r\n return reducer2;\r\n }));\r\n if (caseReducers.filter(function (cr) { return !!cr; }).length === 0) {\r\n caseReducers = [finalDefaultCaseReducer];\r\n }\r\n return caseReducers.reduce(function (previousState, caseReducer) {\r\n if (caseReducer) {\r\n if (isDraft2(previousState)) {\r\n var draft = previousState;\r\n var result = caseReducer(draft, action);\r\n if (result === void 0) {\r\n return previousState;\r\n }\r\n return result;\r\n }\r\n else if (!isDraftable2(previousState)) {\r\n var result = caseReducer(previousState, action);\r\n if (result === void 0) {\r\n if (previousState === null) {\r\n return previousState;\r\n }\r\n throw Error(\"A case reducer on a non-draftable value must not return undefined\");\r\n }\r\n return result;\r\n }\r\n else {\r\n return createNextState2(previousState, function (draft) {\r\n return caseReducer(draft, action);\r\n });\r\n }\r\n }\r\n return previousState;\r\n }, state);\r\n }\r\n reducer.getInitialState = getInitialState;\r\n return reducer;\r\n}\r\n// src/createSlice.ts\r\nvar hasWarnedAboutObjectNotation2 = false;\r\nfunction getType2(slice, actionKey) {\r\n return slice + \"/\" + actionKey;\r\n}\r\nfunction createSlice(options) {\r\n var name = options.name;\r\n if (!name) {\r\n throw new Error(\"`name` is a required option for createSlice\");\r\n }\r\n if (typeof process !== \"undefined\" && process.env.NODE_ENV === \"development\") {\r\n if (options.initialState === void 0) {\r\n console.error(\"You must provide an `initialState` value that is not `undefined`. You may have misspelled `initialState`\");\r\n }\r\n }\r\n var initialState = typeof options.initialState == \"function\" ? options.initialState : freezeDraftable(options.initialState);\r\n var reducers = options.reducers || {};\r\n var reducerNames = Object.keys(reducers);\r\n var sliceCaseReducersByName = {};\r\n var sliceCaseReducersByType = {};\r\n var actionCreators = {};\r\n reducerNames.forEach(function (reducerName) {\r\n var maybeReducerWithPrepare = reducers[reducerName];\r\n var type = getType2(name, reducerName);\r\n var caseReducer;\r\n var prepareCallback;\r\n if (\"reducer\" in maybeReducerWithPrepare) {\r\n caseReducer = maybeReducerWithPrepare.reducer;\r\n prepareCallback = maybeReducerWithPrepare.prepare;\r\n }\r\n else {\r\n caseReducer = maybeReducerWithPrepare;\r\n }\r\n sliceCaseReducersByName[reducerName] = caseReducer;\r\n sliceCaseReducersByType[type] = caseReducer;\r\n actionCreators[reducerName] = prepareCallback ? createAction(type, prepareCallback) : createAction(type);\r\n });\r\n function buildReducer() {\r\n if (process.env.NODE_ENV !== \"production\") {\r\n if (typeof options.extraReducers === \"object\") {\r\n if (!hasWarnedAboutObjectNotation2) {\r\n hasWarnedAboutObjectNotation2 = true;\r\n console.warn(\"The object notation for `createSlice.extraReducers` is deprecated, and will be removed in RTK 2.0. Please use the 'builder callback' notation instead: https://redux-toolkit.js.org/api/createSlice\");\r\n }\r\n }\r\n }\r\n var _c = typeof options.extraReducers === \"function\" ? executeReducerBuilderCallback(options.extraReducers) : [options.extraReducers], _d = _c[0], extraReducers = _d === void 0 ? {} : _d, _e = _c[1], actionMatchers = _e === void 0 ? [] : _e, _f = _c[2], defaultCaseReducer = _f === void 0 ? void 0 : _f;\r\n var finalCaseReducers = __spreadValues(__spreadValues({}, extraReducers), sliceCaseReducersByType);\r\n return createReducer(initialState, function (builder) {\r\n for (var key in finalCaseReducers) {\r\n builder.addCase(key, finalCaseReducers[key]);\r\n }\r\n for (var _i = 0, actionMatchers_1 = actionMatchers; _i < actionMatchers_1.length; _i++) {\r\n var m = actionMatchers_1[_i];\r\n builder.addMatcher(m.matcher, m.reducer);\r\n }\r\n if (defaultCaseReducer) {\r\n builder.addDefaultCase(defaultCaseReducer);\r\n }\r\n });\r\n }\r\n var _reducer;\r\n return {\r\n name: name,\r\n reducer: function (state, action) {\r\n if (!_reducer)\r\n _reducer = buildReducer();\r\n return _reducer(state, action);\r\n },\r\n actions: actionCreators,\r\n caseReducers: sliceCaseReducersByName,\r\n getInitialState: function () {\r\n if (!_reducer)\r\n _reducer = buildReducer();\r\n return _reducer.getInitialState();\r\n }\r\n };\r\n}\r\n// src/entities/entity_state.ts\r\nfunction getInitialEntityState() {\r\n return {\r\n ids: [],\r\n entities: {}\r\n };\r\n}\r\nfunction createInitialStateFactory() {\r\n function getInitialState(additionalState) {\r\n if (additionalState === void 0) { additionalState = {}; }\r\n return Object.assign(getInitialEntityState(), additionalState);\r\n }\r\n return { getInitialState: getInitialState };\r\n}\r\n// src/entities/state_selectors.ts\r\nfunction createSelectorsFactory() {\r\n function getSelectors(selectState) {\r\n var selectIds = function (state) { return state.ids; };\r\n var selectEntities = function (state) { return state.entities; };\r\n var selectAll = createDraftSafeSelector(selectIds, selectEntities, function (ids, entities) { return ids.map(function (id) { return entities[id]; }); });\r\n var selectId = function (_, id) { return id; };\r\n var selectById = function (entities, id) { return entities[id]; };\r\n var selectTotal = createDraftSafeSelector(selectIds, function (ids) { return ids.length; });\r\n if (!selectState) {\r\n return {\r\n selectIds: selectIds,\r\n selectEntities: selectEntities,\r\n selectAll: selectAll,\r\n selectTotal: selectTotal,\r\n selectById: createDraftSafeSelector(selectEntities, selectId, selectById)\r\n };\r\n }\r\n var selectGlobalizedEntities = createDraftSafeSelector(selectState, selectEntities);\r\n return {\r\n selectIds: createDraftSafeSelector(selectState, selectIds),\r\n selectEntities: selectGlobalizedEntities,\r\n selectAll: createDraftSafeSelector(selectState, selectAll),\r\n selectTotal: createDraftSafeSelector(selectState, selectTotal),\r\n selectById: createDraftSafeSelector(selectGlobalizedEntities, selectId, selectById)\r\n };\r\n }\r\n return { getSelectors: getSelectors };\r\n}\r\n// src/entities/state_adapter.ts\r\nimport createNextState3, { isDraft as isDraft3 } from \"immer\";\r\nfunction createSingleArgumentStateOperator(mutator) {\r\n var operator = createStateOperator(function (_, state) { return mutator(state); });\r\n return function operation(state) {\r\n return operator(state, void 0);\r\n };\r\n}\r\nfunction createStateOperator(mutator) {\r\n return function operation(state, arg) {\r\n function isPayloadActionArgument(arg2) {\r\n return isFSA(arg2);\r\n }\r\n var runMutator = function (draft) {\r\n if (isPayloadActionArgument(arg)) {\r\n mutator(arg.payload, draft);\r\n }\r\n else {\r\n mutator(arg, draft);\r\n }\r\n };\r\n if (isDraft3(state)) {\r\n runMutator(state);\r\n return state;\r\n }\r\n else {\r\n return createNextState3(state, runMutator);\r\n }\r\n };\r\n}\r\n// src/entities/utils.ts\r\nfunction selectIdValue(entity, selectId) {\r\n var key = selectId(entity);\r\n if (process.env.NODE_ENV !== \"production\" && key === void 0) {\r\n console.warn(\"The entity passed to the `selectId` implementation returned undefined.\", \"You should probably provide your own `selectId` implementation.\", \"The entity that was passed:\", entity, \"The `selectId` implementation:\", selectId.toString());\r\n }\r\n return key;\r\n}\r\nfunction ensureEntitiesArray(entities) {\r\n if (!Array.isArray(entities)) {\r\n entities = Object.values(entities);\r\n }\r\n return entities;\r\n}\r\nfunction splitAddedUpdatedEntities(newEntities, selectId, state) {\r\n newEntities = ensureEntitiesArray(newEntities);\r\n var added = [];\r\n var updated = [];\r\n for (var _i = 0, newEntities_1 = newEntities; _i < newEntities_1.length; _i++) {\r\n var entity = newEntities_1[_i];\r\n var id = selectIdValue(entity, selectId);\r\n if (id in state.entities) {\r\n updated.push({ id: id, changes: entity });\r\n }\r\n else {\r\n added.push(entity);\r\n }\r\n }\r\n return [added, updated];\r\n}\r\n// src/entities/unsorted_state_adapter.ts\r\nfunction createUnsortedStateAdapter(selectId) {\r\n function addOneMutably(entity, state) {\r\n var key = selectIdValue(entity, selectId);\r\n if (key in state.entities) {\r\n return;\r\n }\r\n state.ids.push(key);\r\n state.entities[key] = entity;\r\n }\r\n function addManyMutably(newEntities, state) {\r\n newEntities = ensureEntitiesArray(newEntities);\r\n for (var _i = 0, newEntities_2 = newEntities; _i < newEntities_2.length; _i++) {\r\n var entity = newEntities_2[_i];\r\n addOneMutably(entity, state);\r\n }\r\n }\r\n function setOneMutably(entity, state) {\r\n var key = selectIdValue(entity, selectId);\r\n if (!(key in state.entities)) {\r\n state.ids.push(key);\r\n }\r\n state.entities[key] = entity;\r\n }\r\n function setManyMutably(newEntities, state) {\r\n newEntities = ensureEntitiesArray(newEntities);\r\n for (var _i = 0, newEntities_3 = newEntities; _i < newEntities_3.length; _i++) {\r\n var entity = newEntities_3[_i];\r\n setOneMutably(entity, state);\r\n }\r\n }\r\n function setAllMutably(newEntities, state) {\r\n newEntities = ensureEntitiesArray(newEntities);\r\n state.ids = [];\r\n state.entities = {};\r\n addManyMutably(newEntities, state);\r\n }\r\n function removeOneMutably(key, state) {\r\n return removeManyMutably([key], state);\r\n }\r\n function removeManyMutably(keys, state) {\r\n var didMutate = false;\r\n keys.forEach(function (key) {\r\n if (key in state.entities) {\r\n delete state.entities[key];\r\n didMutate = true;\r\n }\r\n });\r\n if (didMutate) {\r\n state.ids = state.ids.filter(function (id) { return id in state.entities; });\r\n }\r\n }\r\n function removeAllMutably(state) {\r\n Object.assign(state, {\r\n ids: [],\r\n entities: {}\r\n });\r\n }\r\n function takeNewKey(keys, update, state) {\r\n var original2 = state.entities[update.id];\r\n var updated = Object.assign({}, original2, update.changes);\r\n var newKey = selectIdValue(updated, selectId);\r\n var hasNewKey = newKey !== update.id;\r\n if (hasNewKey) {\r\n keys[update.id] = newKey;\r\n delete state.entities[update.id];\r\n }\r\n state.entities[newKey] = updated;\r\n return hasNewKey;\r\n }\r\n function updateOneMutably(update, state) {\r\n return updateManyMutably([update], state);\r\n }\r\n function updateManyMutably(updates, state) {\r\n var newKeys = {};\r\n var updatesPerEntity = {};\r\n updates.forEach(function (update) {\r\n if (update.id in state.entities) {\r\n updatesPerEntity[update.id] = {\r\n id: update.id,\r\n changes: __spreadValues(__spreadValues({}, updatesPerEntity[update.id] ? updatesPerEntity[update.id].changes : null), update.changes)\r\n };\r\n }\r\n });\r\n updates = Object.values(updatesPerEntity);\r\n var didMutateEntities = updates.length > 0;\r\n if (didMutateEntities) {\r\n var didMutateIds = updates.filter(function (update) { return takeNewKey(newKeys, update, state); }).length > 0;\r\n if (didMutateIds) {\r\n state.ids = Object.keys(state.entities);\r\n }\r\n }\r\n }\r\n function upsertOneMutably(entity, state) {\r\n return upsertManyMutably([entity], state);\r\n }\r\n function upsertManyMutably(newEntities, state) {\r\n var _c = splitAddedUpdatedEntities(newEntities, selectId, state), added = _c[0], updated = _c[1];\r\n updateManyMutably(updated, state);\r\n addManyMutably(added, state);\r\n }\r\n return {\r\n removeAll: createSingleArgumentStateOperator(removeAllMutably),\r\n addOne: createStateOperator(addOneMutably),\r\n addMany: createStateOperator(addManyMutably),\r\n setOne: createStateOperator(setOneMutably),\r\n setMany: createStateOperator(setManyMutably),\r\n setAll: createStateOperator(setAllMutably),\r\n updateOne: createStateOperator(updateOneMutably),\r\n updateMany: createStateOperator(updateManyMutably),\r\n upsertOne: createStateOperator(upsertOneMutably),\r\n upsertMany: createStateOperator(upsertManyMutably),\r\n removeOne: createStateOperator(removeOneMutably),\r\n removeMany: createStateOperator(removeManyMutably)\r\n };\r\n}\r\n// src/entities/sorted_state_adapter.ts\r\nfunction createSortedStateAdapter(selectId, sort) {\r\n var _c = createUnsortedStateAdapter(selectId), removeOne = _c.removeOne, removeMany = _c.removeMany, removeAll = _c.removeAll;\r\n function addOneMutably(entity, state) {\r\n return addManyMutably([entity], state);\r\n }\r\n function addManyMutably(newEntities, state) {\r\n newEntities = ensureEntitiesArray(newEntities);\r\n var models = newEntities.filter(function (model) { return !(selectIdValue(model, selectId) in state.entities); });\r\n if (models.length !== 0) {\r\n merge(models, state);\r\n }\r\n }\r\n function setOneMutably(entity, state) {\r\n return setManyMutably([entity], state);\r\n }\r\n function setManyMutably(newEntities, state) {\r\n newEntities = ensureEntitiesArray(newEntities);\r\n if (newEntities.length !== 0) {\r\n merge(newEntities, state);\r\n }\r\n }\r\n function setAllMutably(newEntities, state) {\r\n newEntities = ensureEntitiesArray(newEntities);\r\n state.entities = {};\r\n state.ids = [];\r\n addManyMutably(newEntities, state);\r\n }\r\n function updateOneMutably(update, state) {\r\n return updateManyMutably([update], state);\r\n }\r\n function updateManyMutably(updates, state) {\r\n var appliedUpdates = false;\r\n for (var _i = 0, updates_1 = updates; _i < updates_1.length; _i++) {\r\n var update = updates_1[_i];\r\n var entity = state.entities[update.id];\r\n if (!entity) {\r\n continue;\r\n }\r\n appliedUpdates = true;\r\n Object.assign(entity, update.changes);\r\n var newId = selectId(entity);\r\n if (update.id !== newId) {\r\n delete state.entities[update.id];\r\n state.entities[newId] = entity;\r\n }\r\n }\r\n if (appliedUpdates) {\r\n resortEntities(state);\r\n }\r\n }\r\n function upsertOneMutably(entity, state) {\r\n return upsertManyMutably([entity], state);\r\n }\r\n function upsertManyMutably(newEntities, state) {\r\n var _c = splitAddedUpdatedEntities(newEntities, selectId, state), added = _c[0], updated = _c[1];\r\n updateManyMutably(updated, state);\r\n addManyMutably(added, state);\r\n }\r\n function areArraysEqual(a, b) {\r\n if (a.length !== b.length) {\r\n return false;\r\n }\r\n for (var i = 0; i < a.length && i < b.length; i++) {\r\n if (a[i] === b[i]) {\r\n continue;\r\n }\r\n return false;\r\n }\r\n return true;\r\n }\r\n function merge(models, state) {\r\n models.forEach(function (model) {\r\n state.entities[selectId(model)] = model;\r\n });\r\n resortEntities(state);\r\n }\r\n function resortEntities(state) {\r\n var allEntities = Object.values(state.entities);\r\n allEntities.sort(sort);\r\n var newSortedIds = allEntities.map(selectId);\r\n var ids = state.ids;\r\n if (!areArraysEqual(ids, newSortedIds)) {\r\n state.ids = newSortedIds;\r\n }\r\n }\r\n return {\r\n removeOne: removeOne,\r\n removeMany: removeMany,\r\n removeAll: removeAll,\r\n addOne: createStateOperator(addOneMutably),\r\n updateOne: createStateOperator(updateOneMutably),\r\n upsertOne: createStateOperator(upsertOneMutably),\r\n setOne: createStateOperator(setOneMutably),\r\n setMany: createStateOperator(setManyMutably),\r\n setAll: createStateOperator(setAllMutably),\r\n addMany: createStateOperator(addManyMutably),\r\n updateMany: createStateOperator(updateManyMutably),\r\n upsertMany: createStateOperator(upsertManyMutably)\r\n };\r\n}\r\n// src/entities/create_adapter.ts\r\nfunction createEntityAdapter(options) {\r\n if (options === void 0) { options = {}; }\r\n var _c = __spreadValues({\r\n sortComparer: false,\r\n selectId: function (instance) { return instance.id; }\r\n }, options), selectId = _c.selectId, sortComparer = _c.sortComparer;\r\n var stateFactory = createInitialStateFactory();\r\n var selectorsFactory = createSelectorsFactory();\r\n var stateAdapter = sortComparer ? createSortedStateAdapter(selectId, sortComparer) : createUnsortedStateAdapter(selectId);\r\n return __spreadValues(__spreadValues(__spreadValues({\r\n selectId: selectId,\r\n sortComparer: sortComparer\r\n }, stateFactory), selectorsFactory), stateAdapter);\r\n}\r\n// src/nanoid.ts\r\nvar urlAlphabet = \"ModuleSymbhasOwnPr-0123456789ABCDEFGHNRVfgctiUvz_KqYTJkLxpZXIjQW\";\r\nvar nanoid = function (size) {\r\n if (size === void 0) { size = 21; }\r\n var id = \"\";\r\n var i = size;\r\n while (i--) {\r\n id += urlAlphabet[Math.random() * 64 | 0];\r\n }\r\n return id;\r\n};\r\n// src/createAsyncThunk.ts\r\nvar commonProperties = [\r\n \"name\",\r\n \"message\",\r\n \"stack\",\r\n \"code\"\r\n];\r\nvar RejectWithValue = /** @class */ (function () {\r\n function RejectWithValue(payload, meta) {\r\n this.payload = payload;\r\n this.meta = meta;\r\n }\r\n return RejectWithValue;\r\n}());\r\nvar FulfillWithMeta = /** @class */ (function () {\r\n function FulfillWithMeta(payload, meta) {\r\n this.payload = payload;\r\n this.meta = meta;\r\n }\r\n return FulfillWithMeta;\r\n}());\r\nvar miniSerializeError = function (value) {\r\n if (typeof value === \"object\" && value !== null) {\r\n var simpleError = {};\r\n for (var _i = 0, commonProperties_1 = commonProperties; _i < commonProperties_1.length; _i++) {\r\n var property = commonProperties_1[_i];\r\n if (typeof value[property] === \"string\") {\r\n simpleError[property] = value[property];\r\n }\r\n }\r\n return simpleError;\r\n }\r\n return { message: String(value) };\r\n};\r\nvar createAsyncThunk = (function () {\r\n function createAsyncThunk2(typePrefix, payloadCreator, options) {\r\n var fulfilled = createAction(typePrefix + \"/fulfilled\", function (payload, requestId, arg, meta) { return ({\r\n payload: payload,\r\n meta: __spreadProps(__spreadValues({}, meta || {}), {\r\n arg: arg,\r\n requestId: requestId,\r\n requestStatus: \"fulfilled\"\r\n })\r\n }); });\r\n var pending = createAction(typePrefix + \"/pending\", function (requestId, arg, meta) { return ({\r\n payload: void 0,\r\n meta: __spreadProps(__spreadValues({}, meta || {}), {\r\n arg: arg,\r\n requestId: requestId,\r\n requestStatus: \"pending\"\r\n })\r\n }); });\r\n var rejected = createAction(typePrefix + \"/rejected\", function (error, requestId, arg, payload, meta) { return ({\r\n payload: payload,\r\n error: (options && options.serializeError || miniSerializeError)(error || \"Rejected\"),\r\n meta: __spreadProps(__spreadValues({}, meta || {}), {\r\n arg: arg,\r\n requestId: requestId,\r\n rejectedWithValue: !!payload,\r\n requestStatus: \"rejected\",\r\n aborted: (error == null ? void 0 : error.name) === \"AbortError\",\r\n condition: (error == null ? void 0 : error.name) === \"ConditionError\"\r\n })\r\n }); });\r\n var displayedWarning = false;\r\n var AC = typeof AbortController !== \"undefined\" ? AbortController : /** @class */ (function () {\r\n function class_1() {\r\n this.signal = {\r\n aborted: false,\r\n addEventListener: function () {\r\n },\r\n dispatchEvent: function () {\r\n return false;\r\n },\r\n onabort: function () {\r\n },\r\n removeEventListener: function () {\r\n },\r\n reason: void 0,\r\n throwIfAborted: function () {\r\n }\r\n };\r\n }\r\n class_1.prototype.abort = function () {\r\n if (process.env.NODE_ENV !== \"production\") {\r\n if (!displayedWarning) {\r\n displayedWarning = true;\r\n console.info(\"This platform does not implement AbortController. \\nIf you want to use the AbortController to react to `abort` events, please consider importing a polyfill like 'abortcontroller-polyfill/dist/abortcontroller-polyfill-only'.\");\r\n }\r\n }\r\n };\r\n return class_1;\r\n }());\r\n function actionCreator(arg) {\r\n return function (dispatch, getState, extra) {\r\n var requestId = (options == null ? void 0 : options.idGenerator) ? options.idGenerator(arg) : nanoid();\r\n var abortController = new AC();\r\n var abortReason;\r\n var started = false;\r\n function abort(reason) {\r\n abortReason = reason;\r\n abortController.abort();\r\n }\r\n var promise2 = function () {\r\n return __async(this, null, function () {\r\n var _a, _b, finalAction, conditionResult, abortedPromise, err_1, skipDispatch;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n _c.trys.push([0, 4, , 5]);\r\n conditionResult = (_a = options == null ? void 0 : options.condition) == null ? void 0 : _a.call(options, arg, { getState: getState, extra: extra });\r\n if (!isThenable(conditionResult)) return [3 /*break*/, 2];\r\n return [4 /*yield*/, conditionResult];\r\n case 1:\r\n conditionResult = _c.sent();\r\n _c.label = 2;\r\n case 2:\r\n if (conditionResult === false || abortController.signal.aborted) {\r\n throw {\r\n name: \"ConditionError\",\r\n message: \"Aborted due to condition callback returning false.\"\r\n };\r\n }\r\n started = true;\r\n abortedPromise = new Promise(function (_, reject) { return abortController.signal.addEventListener(\"abort\", function () { return reject({\r\n name: \"AbortError\",\r\n message: abortReason || \"Aborted\"\r\n }); }); });\r\n dispatch(pending(requestId, arg, (_b = options == null ? void 0 : options.getPendingMeta) == null ? void 0 : _b.call(options, { requestId: requestId, arg: arg }, { getState: getState, extra: extra })));\r\n return [4 /*yield*/, Promise.race([\r\n abortedPromise,\r\n Promise.resolve(payloadCreator(arg, {\r\n dispatch: dispatch,\r\n getState: getState,\r\n extra: extra,\r\n requestId: requestId,\r\n signal: abortController.signal,\r\n abort: abort,\r\n rejectWithValue: function (value, meta) {\r\n return new RejectWithValue(value, meta);\r\n },\r\n fulfillWithValue: function (value, meta) {\r\n return new FulfillWithMeta(value, meta);\r\n }\r\n })).then(function (result) {\r\n if (result instanceof RejectWithValue) {\r\n throw result;\r\n }\r\n if (result instanceof FulfillWithMeta) {\r\n return fulfilled(result.payload, requestId, arg, result.meta);\r\n }\r\n return fulfilled(result, requestId, arg);\r\n })\r\n ])];\r\n case 3:\r\n finalAction = _c.sent();\r\n return [3 /*break*/, 5];\r\n case 4:\r\n err_1 = _c.sent();\r\n finalAction = err_1 instanceof RejectWithValue ? rejected(null, requestId, arg, err_1.payload, err_1.meta) : rejected(err_1, requestId, arg);\r\n return [3 /*break*/, 5];\r\n case 5:\r\n skipDispatch = options && !options.dispatchConditionRejection && rejected.match(finalAction) && finalAction.meta.condition;\r\n if (!skipDispatch) {\r\n dispatch(finalAction);\r\n }\r\n return [2 /*return*/, finalAction];\r\n }\r\n });\r\n });\r\n }();\r\n return Object.assign(promise2, {\r\n abort: abort,\r\n requestId: requestId,\r\n arg: arg,\r\n unwrap: function () {\r\n return promise2.then(unwrapResult);\r\n }\r\n });\r\n };\r\n }\r\n return Object.assign(actionCreator, {\r\n pending: pending,\r\n rejected: rejected,\r\n fulfilled: fulfilled,\r\n typePrefix: typePrefix\r\n });\r\n }\r\n createAsyncThunk2.withTypes = function () { return createAsyncThunk2; };\r\n return createAsyncThunk2;\r\n})();\r\nfunction unwrapResult(action) {\r\n if (action.meta && action.meta.rejectedWithValue) {\r\n throw action.payload;\r\n }\r\n if (action.error) {\r\n throw action.error;\r\n }\r\n return action.payload;\r\n}\r\nfunction isThenable(value) {\r\n return value !== null && typeof value === \"object\" && typeof value.then === \"function\";\r\n}\r\n// src/tsHelpers.ts\r\nvar hasMatchFunction = function (v) {\r\n return v && typeof v.match === \"function\";\r\n};\r\n// src/matchers.ts\r\nvar matches = function (matcher, action) {\r\n if (hasMatchFunction(matcher)) {\r\n return matcher.match(action);\r\n }\r\n else {\r\n return matcher(action);\r\n }\r\n};\r\nfunction isAnyOf() {\r\n var matchers = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n matchers[_i] = arguments[_i];\r\n }\r\n return function (action) {\r\n return matchers.some(function (matcher) { return matches(matcher, action); });\r\n };\r\n}\r\nfunction isAllOf() {\r\n var matchers = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n matchers[_i] = arguments[_i];\r\n }\r\n return function (action) {\r\n return matchers.every(function (matcher) { return matches(matcher, action); });\r\n };\r\n}\r\nfunction hasExpectedRequestMetadata(action, validStatus) {\r\n if (!action || !action.meta)\r\n return false;\r\n var hasValidRequestId = typeof action.meta.requestId === \"string\";\r\n var hasValidRequestStatus = validStatus.indexOf(action.meta.requestStatus) > -1;\r\n return hasValidRequestId && hasValidRequestStatus;\r\n}\r\nfunction isAsyncThunkArray(a) {\r\n return typeof a[0] === \"function\" && \"pending\" in a[0] && \"fulfilled\" in a[0] && \"rejected\" in a[0];\r\n}\r\nfunction isPending() {\r\n var asyncThunks = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n asyncThunks[_i] = arguments[_i];\r\n }\r\n if (asyncThunks.length === 0) {\r\n return function (action) { return hasExpectedRequestMetadata(action, [\"pending\"]); };\r\n }\r\n if (!isAsyncThunkArray(asyncThunks)) {\r\n return isPending()(asyncThunks[0]);\r\n }\r\n return function (action) {\r\n var matchers = asyncThunks.map(function (asyncThunk) { return asyncThunk.pending; });\r\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\r\n return combinedMatcher(action);\r\n };\r\n}\r\nfunction isRejected() {\r\n var asyncThunks = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n asyncThunks[_i] = arguments[_i];\r\n }\r\n if (asyncThunks.length === 0) {\r\n return function (action) { return hasExpectedRequestMetadata(action, [\"rejected\"]); };\r\n }\r\n if (!isAsyncThunkArray(asyncThunks)) {\r\n return isRejected()(asyncThunks[0]);\r\n }\r\n return function (action) {\r\n var matchers = asyncThunks.map(function (asyncThunk) { return asyncThunk.rejected; });\r\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\r\n return combinedMatcher(action);\r\n };\r\n}\r\nfunction isRejectedWithValue() {\r\n var asyncThunks = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n asyncThunks[_i] = arguments[_i];\r\n }\r\n var hasFlag = function (action) {\r\n return action && action.meta && action.meta.rejectedWithValue;\r\n };\r\n if (asyncThunks.length === 0) {\r\n return function (action) {\r\n var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);\r\n return combinedMatcher(action);\r\n };\r\n }\r\n if (!isAsyncThunkArray(asyncThunks)) {\r\n return isRejectedWithValue()(asyncThunks[0]);\r\n }\r\n return function (action) {\r\n var combinedMatcher = isAllOf(isRejected.apply(void 0, asyncThunks), hasFlag);\r\n return combinedMatcher(action);\r\n };\r\n}\r\nfunction isFulfilled() {\r\n var asyncThunks = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n asyncThunks[_i] = arguments[_i];\r\n }\r\n if (asyncThunks.length === 0) {\r\n return function (action) { return hasExpectedRequestMetadata(action, [\"fulfilled\"]); };\r\n }\r\n if (!isAsyncThunkArray(asyncThunks)) {\r\n return isFulfilled()(asyncThunks[0]);\r\n }\r\n return function (action) {\r\n var matchers = asyncThunks.map(function (asyncThunk) { return asyncThunk.fulfilled; });\r\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\r\n return combinedMatcher(action);\r\n };\r\n}\r\nfunction isAsyncThunkAction() {\r\n var asyncThunks = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n asyncThunks[_i] = arguments[_i];\r\n }\r\n if (asyncThunks.length === 0) {\r\n return function (action) { return hasExpectedRequestMetadata(action, [\"pending\", \"fulfilled\", \"rejected\"]); };\r\n }\r\n if (!isAsyncThunkArray(asyncThunks)) {\r\n return isAsyncThunkAction()(asyncThunks[0]);\r\n }\r\n return function (action) {\r\n var matchers = [];\r\n for (var _i = 0, asyncThunks_1 = asyncThunks; _i < asyncThunks_1.length; _i++) {\r\n var asyncThunk = asyncThunks_1[_i];\r\n matchers.push(asyncThunk.pending, asyncThunk.rejected, asyncThunk.fulfilled);\r\n }\r\n var combinedMatcher = isAnyOf.apply(void 0, matchers);\r\n return combinedMatcher(action);\r\n };\r\n}\r\n// src/listenerMiddleware/utils.ts\r\nvar assertFunction = function (func, expected) {\r\n if (typeof func !== \"function\") {\r\n throw new TypeError(expected + \" is not a function\");\r\n }\r\n};\r\nvar noop = function () {\r\n};\r\nvar catchRejection = function (promise2, onError) {\r\n if (onError === void 0) { onError = noop; }\r\n promise2.catch(onError);\r\n return promise2;\r\n};\r\nvar addAbortSignalListener = function (abortSignal, callback) {\r\n abortSignal.addEventListener(\"abort\", callback, { once: true });\r\n return function () { return abortSignal.removeEventListener(\"abort\", callback); };\r\n};\r\nvar abortControllerWithReason = function (abortController, reason) {\r\n var signal = abortController.signal;\r\n if (signal.aborted) {\r\n return;\r\n }\r\n if (!(\"reason\" in signal)) {\r\n Object.defineProperty(signal, \"reason\", {\r\n enumerable: true,\r\n value: reason,\r\n configurable: true,\r\n writable: true\r\n });\r\n }\r\n ;\r\n abortController.abort(reason);\r\n};\r\n// src/listenerMiddleware/exceptions.ts\r\nvar task = \"task\";\r\nvar listener = \"listener\";\r\nvar completed = \"completed\";\r\nvar cancelled = \"cancelled\";\r\nvar taskCancelled = \"task-\" + cancelled;\r\nvar taskCompleted = \"task-\" + completed;\r\nvar listenerCancelled = listener + \"-\" + cancelled;\r\nvar listenerCompleted = listener + \"-\" + completed;\r\nvar TaskAbortError = /** @class */ (function () {\r\n function TaskAbortError(code) {\r\n this.code = code;\r\n this.name = \"TaskAbortError\";\r\n this.message = task + \" \" + cancelled + \" (reason: \" + code + \")\";\r\n }\r\n return TaskAbortError;\r\n}());\r\n// src/listenerMiddleware/task.ts\r\nvar validateActive = function (signal) {\r\n if (signal.aborted) {\r\n throw new TaskAbortError(signal.reason);\r\n }\r\n};\r\nfunction raceWithSignal(signal, promise2) {\r\n var cleanup = noop;\r\n return new Promise(function (resolve, reject) {\r\n var notifyRejection = function () { return reject(new TaskAbortError(signal.reason)); };\r\n if (signal.aborted) {\r\n notifyRejection();\r\n return;\r\n }\r\n cleanup = addAbortSignalListener(signal, notifyRejection);\r\n promise2.finally(function () { return cleanup(); }).then(resolve, reject);\r\n }).finally(function () {\r\n cleanup = noop;\r\n });\r\n}\r\nvar runTask = function (task2, cleanUp) { return __async(void 0, null, function () {\r\n var value, error_1;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n _c.trys.push([0, 3, 4, 5]);\r\n return [4 /*yield*/, Promise.resolve()];\r\n case 1:\r\n _c.sent();\r\n return [4 /*yield*/, task2()];\r\n case 2:\r\n value = _c.sent();\r\n return [2 /*return*/, {\r\n status: \"ok\",\r\n value: value\r\n }];\r\n case 3:\r\n error_1 = _c.sent();\r\n return [2 /*return*/, {\r\n status: error_1 instanceof TaskAbortError ? \"cancelled\" : \"rejected\",\r\n error: error_1\r\n }];\r\n case 4:\r\n cleanUp == null ? void 0 : cleanUp();\r\n return [7 /*endfinally*/];\r\n case 5: return [2 /*return*/];\r\n }\r\n });\r\n}); };\r\nvar createPause = function (signal) {\r\n return function (promise2) {\r\n return catchRejection(raceWithSignal(signal, promise2).then(function (output) {\r\n validateActive(signal);\r\n return output;\r\n }));\r\n };\r\n};\r\nvar createDelay = function (signal) {\r\n var pause = createPause(signal);\r\n return function (timeoutMs) {\r\n return pause(new Promise(function (resolve) { return setTimeout(resolve, timeoutMs); }));\r\n };\r\n};\r\n// src/listenerMiddleware/index.ts\r\nvar assign = Object.assign;\r\nvar INTERNAL_NIL_TOKEN = {};\r\nvar alm = \"listenerMiddleware\";\r\nvar createFork = function (parentAbortSignal) {\r\n var linkControllers = function (controller) { return addAbortSignalListener(parentAbortSignal, function () { return abortControllerWithReason(controller, parentAbortSignal.reason); }); };\r\n return function (taskExecutor) {\r\n assertFunction(taskExecutor, \"taskExecutor\");\r\n var childAbortController = new AbortController();\r\n linkControllers(childAbortController);\r\n var result = runTask(function () { return __async(void 0, null, function () {\r\n var result2;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n validateActive(parentAbortSignal);\r\n validateActive(childAbortController.signal);\r\n return [4 /*yield*/, taskExecutor({\r\n pause: createPause(childAbortController.signal),\r\n delay: createDelay(childAbortController.signal),\r\n signal: childAbortController.signal\r\n })];\r\n case 1:\r\n result2 = _c.sent();\r\n validateActive(childAbortController.signal);\r\n return [2 /*return*/, result2];\r\n }\r\n });\r\n }); }, function () { return abortControllerWithReason(childAbortController, taskCompleted); });\r\n return {\r\n result: createPause(parentAbortSignal)(result),\r\n cancel: function () {\r\n abortControllerWithReason(childAbortController, taskCancelled);\r\n }\r\n };\r\n };\r\n};\r\nvar createTakePattern = function (startListening, signal) {\r\n var take = function (predicate, timeout) { return __async(void 0, null, function () {\r\n var unsubscribe, tuplePromise, promises, output;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n validateActive(signal);\r\n unsubscribe = function () {\r\n };\r\n tuplePromise = new Promise(function (resolve, reject) {\r\n var stopListening = startListening({\r\n predicate: predicate,\r\n effect: function (action, listenerApi) {\r\n listenerApi.unsubscribe();\r\n resolve([\r\n action,\r\n listenerApi.getState(),\r\n listenerApi.getOriginalState()\r\n ]);\r\n }\r\n });\r\n unsubscribe = function () {\r\n stopListening();\r\n reject();\r\n };\r\n });\r\n promises = [\r\n tuplePromise\r\n ];\r\n if (timeout != null) {\r\n promises.push(new Promise(function (resolve) { return setTimeout(resolve, timeout, null); }));\r\n }\r\n _c.label = 1;\r\n case 1:\r\n _c.trys.push([1, , 3, 4]);\r\n return [4 /*yield*/, raceWithSignal(signal, Promise.race(promises))];\r\n case 2:\r\n output = _c.sent();\r\n validateActive(signal);\r\n return [2 /*return*/, output];\r\n case 3:\r\n unsubscribe();\r\n return [7 /*endfinally*/];\r\n case 4: return [2 /*return*/];\r\n }\r\n });\r\n }); };\r\n return function (predicate, timeout) { return catchRejection(take(predicate, timeout)); };\r\n};\r\nvar getListenerEntryPropsFrom = function (options) {\r\n var type = options.type, actionCreator = options.actionCreator, matcher = options.matcher, predicate = options.predicate, effect = options.effect;\r\n if (type) {\r\n predicate = createAction(type).match;\r\n }\r\n else if (actionCreator) {\r\n type = actionCreator.type;\r\n predicate = actionCreator.match;\r\n }\r\n else if (matcher) {\r\n predicate = matcher;\r\n }\r\n else if (predicate) {\r\n }\r\n else {\r\n throw new Error(\"Creating or removing a listener requires one of the known fields for matching an action\");\r\n }\r\n assertFunction(effect, \"options.listener\");\r\n return { predicate: predicate, type: type, effect: effect };\r\n};\r\nvar createListenerEntry = function (options) {\r\n var _c = getListenerEntryPropsFrom(options), type = _c.type, predicate = _c.predicate, effect = _c.effect;\r\n var id = nanoid();\r\n var entry = {\r\n id: id,\r\n effect: effect,\r\n type: type,\r\n predicate: predicate,\r\n pending: new Set(),\r\n unsubscribe: function () {\r\n throw new Error(\"Unsubscribe not initialized\");\r\n }\r\n };\r\n return entry;\r\n};\r\nvar cancelActiveListeners = function (entry) {\r\n entry.pending.forEach(function (controller) {\r\n abortControllerWithReason(controller, listenerCancelled);\r\n });\r\n};\r\nvar createClearListenerMiddleware = function (listenerMap) {\r\n return function () {\r\n listenerMap.forEach(cancelActiveListeners);\r\n listenerMap.clear();\r\n };\r\n};\r\nvar safelyNotifyError = function (errorHandler, errorToNotify, errorInfo) {\r\n try {\r\n errorHandler(errorToNotify, errorInfo);\r\n }\r\n catch (errorHandlerError) {\r\n setTimeout(function () {\r\n throw errorHandlerError;\r\n }, 0);\r\n }\r\n};\r\nvar addListener = createAction(alm + \"/add\");\r\nvar clearAllListeners = createAction(alm + \"/removeAll\");\r\nvar removeListener = createAction(alm + \"/remove\");\r\nvar defaultErrorHandler = function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n console.error.apply(console, __spreadArray([alm + \"/error\"], args));\r\n};\r\nfunction createListenerMiddleware(middlewareOptions) {\r\n var _this = this;\r\n if (middlewareOptions === void 0) { middlewareOptions = {}; }\r\n var listenerMap = new Map();\r\n var extra = middlewareOptions.extra, _c = middlewareOptions.onError, onError = _c === void 0 ? defaultErrorHandler : _c;\r\n assertFunction(onError, \"onError\");\r\n var insertEntry = function (entry) {\r\n entry.unsubscribe = function () { return listenerMap.delete(entry.id); };\r\n listenerMap.set(entry.id, entry);\r\n return function (cancelOptions) {\r\n entry.unsubscribe();\r\n if (cancelOptions == null ? void 0 : cancelOptions.cancelActive) {\r\n cancelActiveListeners(entry);\r\n }\r\n };\r\n };\r\n var findListenerEntry = function (comparator) {\r\n for (var _i = 0, _c = Array.from(listenerMap.values()); _i < _c.length; _i++) {\r\n var entry = _c[_i];\r\n if (comparator(entry)) {\r\n return entry;\r\n }\r\n }\r\n return void 0;\r\n };\r\n var startListening = function (options) {\r\n var entry = findListenerEntry(function (existingEntry) { return existingEntry.effect === options.effect; });\r\n if (!entry) {\r\n entry = createListenerEntry(options);\r\n }\r\n return insertEntry(entry);\r\n };\r\n var stopListening = function (options) {\r\n var _c = getListenerEntryPropsFrom(options), type = _c.type, effect = _c.effect, predicate = _c.predicate;\r\n var entry = findListenerEntry(function (entry2) {\r\n var matchPredicateOrType = typeof type === \"string\" ? entry2.type === type : entry2.predicate === predicate;\r\n return matchPredicateOrType && entry2.effect === effect;\r\n });\r\n if (entry) {\r\n entry.unsubscribe();\r\n if (options.cancelActive) {\r\n cancelActiveListeners(entry);\r\n }\r\n }\r\n return !!entry;\r\n };\r\n var notifyListener = function (entry, action, api, getOriginalState) { return __async(_this, null, function () {\r\n var internalTaskController, take, listenerError_1;\r\n return __generator(this, function (_c) {\r\n switch (_c.label) {\r\n case 0:\r\n internalTaskController = new AbortController();\r\n take = createTakePattern(startListening, internalTaskController.signal);\r\n _c.label = 1;\r\n case 1:\r\n _c.trys.push([1, 3, 4, 5]);\r\n entry.pending.add(internalTaskController);\r\n return [4 /*yield*/, Promise.resolve(entry.effect(action, assign({}, api, {\r\n getOriginalState: getOriginalState,\r\n condition: function (predicate, timeout) { return take(predicate, timeout).then(Boolean); },\r\n take: take,\r\n delay: createDelay(internalTaskController.signal),\r\n pause: createPause(internalTaskController.signal),\r\n extra: extra,\r\n signal: internalTaskController.signal,\r\n fork: createFork(internalTaskController.signal),\r\n unsubscribe: entry.unsubscribe,\r\n subscribe: function () {\r\n listenerMap.set(entry.id, entry);\r\n },\r\n cancelActiveListeners: function () {\r\n entry.pending.forEach(function (controller, _, set) {\r\n if (controller !== internalTaskController) {\r\n abortControllerWithReason(controller, listenerCancelled);\r\n set.delete(controller);\r\n }\r\n });\r\n }\r\n })))];\r\n case 2:\r\n _c.sent();\r\n return [3 /*break*/, 5];\r\n case 3:\r\n listenerError_1 = _c.sent();\r\n if (!(listenerError_1 instanceof TaskAbortError)) {\r\n safelyNotifyError(onError, listenerError_1, {\r\n raisedBy: \"effect\"\r\n });\r\n }\r\n return [3 /*break*/, 5];\r\n case 4:\r\n abortControllerWithReason(internalTaskController, listenerCompleted);\r\n entry.pending.delete(internalTaskController);\r\n return [7 /*endfinally*/];\r\n case 5: return [2 /*return*/];\r\n }\r\n });\r\n }); };\r\n var clearListenerMiddleware = createClearListenerMiddleware(listenerMap);\r\n var middleware = function (api) { return function (next) { return function (action) {\r\n if (!isAction(action)) {\r\n return next(action);\r\n }\r\n if (addListener.match(action)) {\r\n return startListening(action.payload);\r\n }\r\n if (clearAllListeners.match(action)) {\r\n clearListenerMiddleware();\r\n return;\r\n }\r\n if (removeListener.match(action)) {\r\n return stopListening(action.payload);\r\n }\r\n var originalState = api.getState();\r\n var getOriginalState = function () {\r\n if (originalState === INTERNAL_NIL_TOKEN) {\r\n throw new Error(alm + \": getOriginalState can only be called synchronously\");\r\n }\r\n return originalState;\r\n };\r\n var result;\r\n try {\r\n result = next(action);\r\n if (listenerMap.size > 0) {\r\n var currentState = api.getState();\r\n var listenerEntries = Array.from(listenerMap.values());\r\n for (var _i = 0, listenerEntries_1 = listenerEntries; _i < listenerEntries_1.length; _i++) {\r\n var entry = listenerEntries_1[_i];\r\n var runListener = false;\r\n try {\r\n runListener = entry.predicate(action, currentState, originalState);\r\n }\r\n catch (predicateError) {\r\n runListener = false;\r\n safelyNotifyError(onError, predicateError, {\r\n raisedBy: \"predicate\"\r\n });\r\n }\r\n if (!runListener) {\r\n continue;\r\n }\r\n notifyListener(entry, action, api, getOriginalState);\r\n }\r\n }\r\n }\r\n finally {\r\n originalState = INTERNAL_NIL_TOKEN;\r\n }\r\n return result;\r\n }; }; };\r\n return {\r\n middleware: middleware,\r\n startListening: startListening,\r\n stopListening: stopListening,\r\n clearListeners: clearListenerMiddleware\r\n };\r\n}\r\n// src/autoBatchEnhancer.ts\r\nvar SHOULD_AUTOBATCH = \"RTK_autoBatch\";\r\nvar prepareAutoBatched = function () { return function (payload) {\r\n var _c;\r\n return ({\r\n payload: payload,\r\n meta: (_c = {}, _c[SHOULD_AUTOBATCH] = true, _c)\r\n });\r\n}; };\r\nvar promise;\r\nvar queueMicrotaskShim = typeof queueMicrotask === \"function\" ? queueMicrotask.bind(typeof window !== \"undefined\" ? window : typeof global !== \"undefined\" ? global : globalThis) : function (cb) { return (promise || (promise = Promise.resolve())).then(cb).catch(function (err) { return setTimeout(function () {\r\n throw err;\r\n}, 0); }); };\r\nvar createQueueWithTimer = function (timeout) {\r\n return function (notify) {\r\n setTimeout(notify, timeout);\r\n };\r\n};\r\nvar rAF = typeof window !== \"undefined\" && window.requestAnimationFrame ? window.requestAnimationFrame : createQueueWithTimer(10);\r\nvar autoBatchEnhancer = function (options) {\r\n if (options === void 0) { options = { type: \"raf\" }; }\r\n return function (next) { return function () {\r\n var args = [];\r\n for (var _i = 0; _i < arguments.length; _i++) {\r\n args[_i] = arguments[_i];\r\n }\r\n var store = next.apply(void 0, args);\r\n var notifying = true;\r\n var shouldNotifyAtEndOfTick = false;\r\n var notificationQueued = false;\r\n var listeners = new Set();\r\n var queueCallback = options.type === \"tick\" ? queueMicrotaskShim : options.type === \"raf\" ? rAF : options.type === \"callback\" ? options.queueNotification : createQueueWithTimer(options.timeout);\r\n var notifyListeners = function () {\r\n notificationQueued = false;\r\n if (shouldNotifyAtEndOfTick) {\r\n shouldNotifyAtEndOfTick = false;\r\n listeners.forEach(function (l) { return l(); });\r\n }\r\n };\r\n return Object.assign({}, store, {\r\n subscribe: function (listener2) {\r\n var wrappedListener = function () { return notifying && listener2(); };\r\n var unsubscribe = store.subscribe(wrappedListener);\r\n listeners.add(listener2);\r\n return function () {\r\n unsubscribe();\r\n listeners.delete(listener2);\r\n };\r\n },\r\n dispatch: function (action) {\r\n var _a;\r\n try {\r\n notifying = !((_a = action == null ? void 0 : action.meta) == null ? void 0 : _a[SHOULD_AUTOBATCH]);\r\n shouldNotifyAtEndOfTick = !notifying;\r\n if (shouldNotifyAtEndOfTick) {\r\n if (!notificationQueued) {\r\n notificationQueued = true;\r\n queueCallback(notifyListeners);\r\n }\r\n }\r\n return store.dispatch(action);\r\n }\r\n finally {\r\n notifying = true;\r\n }\r\n }\r\n });\r\n }; };\r\n};\r\n// src/index.ts\r\nenableES5();\r\nexport { EnhancerArray, MiddlewareArray, SHOULD_AUTOBATCH, TaskAbortError, addListener, autoBatchEnhancer, clearAllListeners, configureStore, createAction, createAsyncThunk, createDraftSafeSelector, createEntityAdapter, createImmutableStateInvariantMiddleware, createListenerMiddleware, default2 as createNextState, createReducer, createSelector2 as createSelector, createSerializableStateInvariantMiddleware, createSlice, current2 as current, findNonSerializableValue, freeze, getDefaultMiddleware, getType, isAction, isAllOf, isAnyOf, isAsyncThunkAction, isDraft4 as isDraft, isFSA as isFluxStandardAction, isFulfilled, isImmutableDefault, isPending, isPlain, isPlainObject, isRejected, isRejectedWithValue, miniSerializeError, nanoid, original, prepareAutoBatched, removeListener, unwrapResult };\r\n//# sourceMappingURL=redux-toolkit.esm.js.map","'use strict';\n\nfunction find(array, predicate, context) {\n if (typeof Array.prototype.find === 'function') {\n return array.find(predicate, context);\n }\n\n context = context || this;\n var length = array.length;\n var i;\n\n if (typeof predicate !== 'function') {\n throw new TypeError(predicate + ' is not a function');\n }\n\n for (i = 0; i < length; i++) {\n if (predicate.call(context, array[i], i, array)) {\n return array[i];\n }\n }\n}\n\nmodule.exports = find;\n","// Packages\nvar retrier = require('retry');\n\nfunction retry(fn, opts) {\n function run(resolve, reject) {\n var options = opts || {};\n var op;\n\n // Default `randomize` to true\n if (!('randomize' in options)) {\n options.randomize = true;\n }\n\n op = retrier.operation(options);\n\n // We allow the user to abort retrying\n // this makes sense in the cases where\n // knowledge is obtained that retrying\n // would be futile (e.g.: auth errors)\n\n function bail(err) {\n reject(err || new Error('Aborted'));\n }\n\n function onError(err, num) {\n if (err.bail) {\n bail(err);\n return;\n }\n\n if (!op.retry(err)) {\n reject(op.mainError());\n } else if (options.onRetry) {\n options.onRetry(err, num);\n }\n }\n\n function runAttempt(num) {\n var val;\n\n try {\n val = fn(bail, num);\n } catch (err) {\n onError(err, num);\n return;\n }\n\n Promise.resolve(val)\n .then(resolve)\n .catch(function catchIt(err) {\n onError(err, num);\n });\n }\n\n op.attempt(runAttempt);\n }\n\n return new Promise(run);\n}\n\nmodule.exports = retry;\n","\"use strict\";\nvar __assign = (this && this.__assign) || function () {\n __assign = Object.assign || function(t) {\n for (var s, i = 1, n = arguments.length; i < n; i++) {\n s = arguments[i];\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))\n t[p] = s[p];\n }\n return t;\n };\n return __assign.apply(this, arguments);\n};\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bindAll = void 0;\nvar bind_1 = require(\"./bind\");\nfunction toOptions(value) {\n if (typeof value === 'undefined') {\n return undefined;\n }\n if (typeof value === 'boolean') {\n return {\n capture: value,\n };\n }\n return value;\n}\nfunction getBinding(original, sharedOptions) {\n if (sharedOptions == null) {\n return original;\n }\n var binding = __assign(__assign({}, original), { options: __assign(__assign({}, toOptions(sharedOptions)), toOptions(original.options)) });\n return binding;\n}\nfunction bindAll(target, bindings, sharedOptions) {\n var unbinds = bindings.map(function (original) {\n var binding = getBinding(original, sharedOptions);\n return (0, bind_1.bind)(target, binding);\n });\n return function unbindAll() {\n unbinds.forEach(function (unbind) { return unbind(); });\n };\n}\nexports.bindAll = bindAll;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bind = void 0;\nfunction bind(target, _a) {\n var type = _a.type, listener = _a.listener, options = _a.options;\n target.addEventListener(type, listener, options);\n return function unbind() {\n target.removeEventListener(type, listener, options);\n };\n}\nexports.bind = bind;\n","\"use strict\";\nObject.defineProperty(exports, \"__esModule\", { value: true });\nexports.bindAll = exports.bind = void 0;\nvar bind_1 = require(\"./bind\");\nObject.defineProperty(exports, \"bind\", { enumerable: true, get: function () { return bind_1.bind; } });\nvar bind_all_1 = require(\"./bind-all\");\nObject.defineProperty(exports, \"bindAll\", { enumerable: true, get: function () { return bind_all_1.bindAll; } });\n","!function(e,t){\"object\"==typeof exports&&\"object\"==typeof module?module.exports=t():\"function\"==typeof define&&define.amd?define([],t):\"object\"==typeof exports?exports.bowser=t():e.bowser=t()}(this,(function(){return function(e){var t={};function r(n){if(t[n])return t[n].exports;var i=t[n]={i:n,l:!1,exports:{}};return e[n].call(i.exports,i,i.exports,r),i.l=!0,i.exports}return r.m=e,r.c=t,r.d=function(e,t,n){r.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:n})},r.r=function(e){\"undefined\"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:\"Module\"}),Object.defineProperty(e,\"__esModule\",{value:!0})},r.t=function(e,t){if(1&t&&(e=r(e)),8&t)return e;if(4&t&&\"object\"==typeof e&&e&&e.__esModule)return e;var n=Object.create(null);if(r.r(n),Object.defineProperty(n,\"default\",{enumerable:!0,value:e}),2&t&&\"string\"!=typeof e)for(var i in e)r.d(n,i,function(t){return e[t]}.bind(null,i));return n},r.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return r.d(t,\"a\",t),t},r.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},r.p=\"\",r(r.s=90)}({17:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n=r(18),i=function(){function e(){}return e.getFirstMatch=function(e,t){var r=t.match(e);return r&&r.length>0&&r[1]||\"\"},e.getSecondMatch=function(e,t){var r=t.match(e);return r&&r.length>1&&r[2]||\"\"},e.matchAndReturnConst=function(e,t,r){if(e.test(t))return r},e.getWindowsVersionName=function(e){switch(e){case\"NT\":return\"NT\";case\"XP\":return\"XP\";case\"NT 5.0\":return\"2000\";case\"NT 5.1\":return\"XP\";case\"NT 5.2\":return\"2003\";case\"NT 6.0\":return\"Vista\";case\"NT 6.1\":return\"7\";case\"NT 6.2\":return\"8\";case\"NT 6.3\":return\"8.1\";case\"NT 10.0\":return\"10\";default:return}},e.getMacOSVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),10===t[0])switch(t[1]){case 5:return\"Leopard\";case 6:return\"Snow Leopard\";case 7:return\"Lion\";case 8:return\"Mountain Lion\";case 9:return\"Mavericks\";case 10:return\"Yosemite\";case 11:return\"El Capitan\";case 12:return\"Sierra\";case 13:return\"High Sierra\";case 14:return\"Mojave\";case 15:return\"Catalina\";default:return}},e.getAndroidVersionName=function(e){var t=e.split(\".\").splice(0,2).map((function(e){return parseInt(e,10)||0}));if(t.push(0),!(1===t[0]&&t[1]<5))return 1===t[0]&&t[1]<6?\"Cupcake\":1===t[0]&&t[1]>=6?\"Donut\":2===t[0]&&t[1]<2?\"Eclair\":2===t[0]&&2===t[1]?\"Froyo\":2===t[0]&&t[1]>2?\"Gingerbread\":3===t[0]?\"Honeycomb\":4===t[0]&&t[1]<1?\"Ice Cream Sandwich\":4===t[0]&&t[1]<4?\"Jelly Bean\":4===t[0]&&t[1]>=4?\"KitKat\":5===t[0]?\"Lollipop\":6===t[0]?\"Marshmallow\":7===t[0]?\"Nougat\":8===t[0]?\"Oreo\":9===t[0]?\"Pie\":void 0},e.getVersionPrecision=function(e){return e.split(\".\").length},e.compareVersions=function(t,r,n){void 0===n&&(n=!1);var i=e.getVersionPrecision(t),s=e.getVersionPrecision(r),a=Math.max(i,s),o=0,u=e.map([t,r],(function(t){var r=a-e.getVersionPrecision(t),n=t+new Array(r+1).join(\".0\");return e.map(n.split(\".\"),(function(e){return new Array(20-e.length).join(\"0\")+e})).reverse()}));for(n&&(o=a-Math.min(i,s)),a-=1;a>=o;){if(u[0][a]>u[1][a])return 1;if(u[0][a]===u[1][a]){if(a===o)return 0;a-=1}else if(u[0][a]1?i-1:0),a=1;a0){var a=Object.keys(r),u=o.default.find(a,(function(e){return t.isOS(e)}));if(u){var d=this.satisfies(r[u]);if(void 0!==d)return d}var c=o.default.find(a,(function(e){return t.isPlatform(e)}));if(c){var f=this.satisfies(r[c]);if(void 0!==f)return f}}if(s>0){var l=Object.keys(i),h=o.default.find(l,(function(e){return t.isBrowser(e,!0)}));if(void 0!==h)return this.compareVersion(i[h])}},t.isBrowser=function(e,t){void 0===t&&(t=!1);var r=this.getBrowserName().toLowerCase(),n=e.toLowerCase(),i=o.default.getBrowserTypeByAlias(n);return t&&i&&(n=i.toLowerCase()),n===r},t.compareVersion=function(e){var t=[0],r=e,n=!1,i=this.getBrowserVersion();if(\"string\"==typeof i)return\">\"===e[0]||\"<\"===e[0]?(r=e.substr(1),\"=\"===e[1]?(n=!0,r=e.substr(2)):t=[],\">\"===e[0]?t.push(1):t.push(-1)):\"=\"===e[0]?r=e.substr(1):\"~\"===e[0]&&(n=!0,r=e.substr(1)),t.indexOf(o.default.compareVersions(i,r,n))>-1},t.isOS=function(e){return this.getOSName(!0)===String(e).toLowerCase()},t.isPlatform=function(e){return this.getPlatformType(!0)===String(e).toLowerCase()},t.isEngine=function(e){return this.getEngineName(!0)===String(e).toLowerCase()},t.is=function(e,t){return void 0===t&&(t=!1),this.isBrowser(e,t)||this.isOS(e)||this.isPlatform(e)},t.some=function(e){var t=this;return void 0===e&&(e=[]),e.some((function(e){return t.is(e)}))},e}();t.default=d,e.exports=t.default},92:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n};var s=/version\\/(\\d+(\\.?_?\\d+)+)/i,a=[{test:[/googlebot/i],describe:function(e){var t={name:\"Googlebot\"},r=i.default.getFirstMatch(/googlebot\\/(\\d+(\\.\\d+))/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/opera/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:opera)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opr\\/|opios/i],describe:function(e){var t={name:\"Opera\"},r=i.default.getFirstMatch(/(?:opr|opios)[\\s/](\\S+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/SamsungBrowser/i],describe:function(e){var t={name:\"Samsung Internet for Android\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:SamsungBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Whale/i],describe:function(e){var t={name:\"NAVER Whale Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:whale)[\\s/](\\d+(?:\\.\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MZBrowser/i],describe:function(e){var t={name:\"MZ Browser\"},r=i.default.getFirstMatch(/(?:MZBrowser)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/focus/i],describe:function(e){var t={name:\"Focus\"},r=i.default.getFirstMatch(/(?:focus)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/swing/i],describe:function(e){var t={name:\"Swing\"},r=i.default.getFirstMatch(/(?:swing)[\\s/](\\d+(?:\\.\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/coast/i],describe:function(e){var t={name:\"Opera Coast\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:coast)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/opt\\/\\d+(?:.?_?\\d+)+/i],describe:function(e){var t={name:\"Opera Touch\"},r=i.default.getFirstMatch(/(?:opt)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/yabrowser/i],describe:function(e){var t={name:\"Yandex Browser\"},r=i.default.getFirstMatch(/(?:yabrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/ucbrowser/i],describe:function(e){var t={name:\"UC Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:ucbrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/Maxthon|mxios/i],describe:function(e){var t={name:\"Maxthon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:Maxthon|mxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/epiphany/i],describe:function(e){var t={name:\"Epiphany\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:epiphany)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/puffin/i],describe:function(e){var t={name:\"Puffin\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:puffin)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sleipnir/i],describe:function(e){var t={name:\"Sleipnir\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:sleipnir)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/k-meleon/i],describe:function(e){var t={name:\"K-Meleon\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/(?:k-meleon)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/micromessenger/i],describe:function(e){var t={name:\"WeChat\"},r=i.default.getFirstMatch(/(?:micromessenger)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qqbrowser/i],describe:function(e){var t={name:/qqbrowserlite/i.test(e)?\"QQ Browser Lite\":\"QQ Browser\"},r=i.default.getFirstMatch(/(?:qqbrowserlite|qqbrowser)[/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/msie|trident/i],describe:function(e){var t={name:\"Internet Explorer\"},r=i.default.getFirstMatch(/(?:msie |rv:)(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/\\sedg\\//i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getFirstMatch(/\\sedg\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/edg([ea]|ios)/i],describe:function(e){var t={name:\"Microsoft Edge\"},r=i.default.getSecondMatch(/edg([ea]|ios)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/vivaldi/i],describe:function(e){var t={name:\"Vivaldi\"},r=i.default.getFirstMatch(/vivaldi\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/seamonkey/i],describe:function(e){var t={name:\"SeaMonkey\"},r=i.default.getFirstMatch(/seamonkey\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/sailfish/i],describe:function(e){var t={name:\"Sailfish\"},r=i.default.getFirstMatch(/sailfish\\s?browser\\/(\\d+(\\.\\d+)?)/i,e);return r&&(t.version=r),t}},{test:[/silk/i],describe:function(e){var t={name:\"Amazon Silk\"},r=i.default.getFirstMatch(/silk\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/phantom/i],describe:function(e){var t={name:\"PhantomJS\"},r=i.default.getFirstMatch(/phantomjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/slimerjs/i],describe:function(e){var t={name:\"SlimerJS\"},r=i.default.getFirstMatch(/slimerjs\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t={name:\"BlackBerry\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/blackberry[\\d]+\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t={name:\"WebOS Browser\"},r=i.default.getFirstMatch(s,e)||i.default.getFirstMatch(/w(?:eb)?[o0]sbrowser\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/bada/i],describe:function(e){var t={name:\"Bada\"},r=i.default.getFirstMatch(/dolfin\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/tizen/i],describe:function(e){var t={name:\"Tizen\"},r=i.default.getFirstMatch(/(?:tizen\\s?)?browser\\/(\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/qupzilla/i],describe:function(e){var t={name:\"QupZilla\"},r=i.default.getFirstMatch(/(?:qupzilla)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/firefox|iceweasel|fxios/i],describe:function(e){var t={name:\"Firefox\"},r=i.default.getFirstMatch(/(?:firefox|iceweasel|fxios)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/electron/i],describe:function(e){var t={name:\"Electron\"},r=i.default.getFirstMatch(/(?:electron)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/MiuiBrowser/i],describe:function(e){var t={name:\"Miui\"},r=i.default.getFirstMatch(/(?:MiuiBrowser)[\\s/](\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/chromium/i],describe:function(e){var t={name:\"Chromium\"},r=i.default.getFirstMatch(/(?:chromium)[\\s/](\\d+(\\.?_?\\d+)+)/i,e)||i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/chrome|crios|crmo/i],describe:function(e){var t={name:\"Chrome\"},r=i.default.getFirstMatch(/(?:chrome|crios|crmo)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/GSA/i],describe:function(e){var t={name:\"Google Search\"},r=i.default.getFirstMatch(/(?:GSA)\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t={name:\"Android Browser\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/playstation 4/i],describe:function(e){var t={name:\"PlayStation 4\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/safari|applewebkit/i],describe:function(e){var t={name:\"Safari\"},r=i.default.getFirstMatch(s,e);return r&&(t.version=r),t}},{test:[/.*/i],describe:function(e){var t=-1!==e.search(\"\\\\(\")?/^(.*)\\/(.*)[ \\t]\\((.*)/:/^(.*)\\/(.*) /;return{name:i.default.getFirstMatch(t,e),version:i.default.getSecondMatch(t,e)}}}];t.default=a,e.exports=t.default},93:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/Roku\\/DVP/],describe:function(e){var t=i.default.getFirstMatch(/Roku\\/DVP-(\\d+\\.\\d+)/i,e);return{name:s.OS_MAP.Roku,version:t}}},{test:[/windows phone/i],describe:function(e){var t=i.default.getFirstMatch(/windows phone (?:os)?\\s?(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.WindowsPhone,version:t}}},{test:[/windows /i],describe:function(e){var t=i.default.getFirstMatch(/Windows ((NT|XP)( \\d\\d?.\\d)?)/i,e),r=i.default.getWindowsVersionName(t);return{name:s.OS_MAP.Windows,version:t,versionName:r}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(e){var t={name:s.OS_MAP.iOS},r=i.default.getSecondMatch(/(Version\\/)(\\d[\\d.]+)/,e);return r&&(t.version=r),t}},{test:[/macintosh/i],describe:function(e){var t=i.default.getFirstMatch(/mac os x (\\d+(\\.?_?\\d+)+)/i,e).replace(/[_\\s]/g,\".\"),r=i.default.getMacOSVersionName(t),n={name:s.OS_MAP.MacOS,version:t};return r&&(n.versionName=r),n}},{test:[/(ipod|iphone|ipad)/i],describe:function(e){var t=i.default.getFirstMatch(/os (\\d+([_\\s]\\d+)*) like mac os x/i,e).replace(/[_\\s]/g,\".\");return{name:s.OS_MAP.iOS,version:t}}},{test:function(e){var t=!e.test(/like android/i),r=e.test(/android/i);return t&&r},describe:function(e){var t=i.default.getFirstMatch(/android[\\s/-](\\d+(\\.\\d+)*)/i,e),r=i.default.getAndroidVersionName(t),n={name:s.OS_MAP.Android,version:t};return r&&(n.versionName=r),n}},{test:[/(web|hpw)[o0]s/i],describe:function(e){var t=i.default.getFirstMatch(/(?:web|hpw)[o0]s\\/(\\d+(\\.\\d+)*)/i,e),r={name:s.OS_MAP.WebOS};return t&&t.length&&(r.version=t),r}},{test:[/blackberry|\\bbb\\d+/i,/rim\\stablet/i],describe:function(e){var t=i.default.getFirstMatch(/rim\\stablet\\sos\\s(\\d+(\\.\\d+)*)/i,e)||i.default.getFirstMatch(/blackberry\\d+\\/(\\d+([_\\s]\\d+)*)/i,e)||i.default.getFirstMatch(/\\bbb(\\d+)/i,e);return{name:s.OS_MAP.BlackBerry,version:t}}},{test:[/bada/i],describe:function(e){var t=i.default.getFirstMatch(/bada\\/(\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Bada,version:t}}},{test:[/tizen/i],describe:function(e){var t=i.default.getFirstMatch(/tizen[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.Tizen,version:t}}},{test:[/linux/i],describe:function(){return{name:s.OS_MAP.Linux}}},{test:[/CrOS/],describe:function(){return{name:s.OS_MAP.ChromeOS}}},{test:[/PlayStation 4/],describe:function(e){var t=i.default.getFirstMatch(/PlayStation 4[/\\s](\\d+(\\.\\d+)*)/i,e);return{name:s.OS_MAP.PlayStation4,version:t}}}];t.default=a,e.exports=t.default},94:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:[/googlebot/i],describe:function(){return{type:\"bot\",vendor:\"Google\"}}},{test:[/huawei/i],describe:function(e){var t=i.default.getFirstMatch(/(can-l01)/i,e)&&\"Nova\",r={type:s.PLATFORMS_MAP.mobile,vendor:\"Huawei\"};return t&&(r.model=t),r}},{test:[/nexus\\s*(?:7|8|9|10).*/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Nexus\"}}},{test:[/ipad/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/Macintosh(.*?) FxiOS(.*?)\\//],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Apple\",model:\"iPad\"}}},{test:[/kftt build/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\",model:\"Kindle Fire HD 7\"}}},{test:[/silk/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet,vendor:\"Amazon\"}}},{test:[/tablet(?! pc)/i],describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){var t=e.test(/ipod|iphone/i),r=e.test(/like (ipod|iphone)/i);return t&&!r},describe:function(e){var t=i.default.getFirstMatch(/(ipod|iphone)/i,e);return{type:s.PLATFORMS_MAP.mobile,vendor:\"Apple\",model:t}}},{test:[/nexus\\s*[0-6].*/i,/galaxy nexus/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Nexus\"}}},{test:[/[^-]mobi/i],describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"blackberry\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"BlackBerry\"}}},{test:function(e){return\"bada\"===e.getBrowserName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"windows phone\"===e.getBrowserName()},describe:function(){return{type:s.PLATFORMS_MAP.mobile,vendor:\"Microsoft\"}}},{test:function(e){var t=Number(String(e.getOSVersion()).split(\".\")[0]);return\"android\"===e.getOSName(!0)&&t>=3},describe:function(){return{type:s.PLATFORMS_MAP.tablet}}},{test:function(e){return\"android\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.mobile}}},{test:function(e){return\"macos\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop,vendor:\"Apple\"}}},{test:function(e){return\"windows\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"linux\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.desktop}}},{test:function(e){return\"playstation 4\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}},{test:function(e){return\"roku\"===e.getOSName(!0)},describe:function(){return{type:s.PLATFORMS_MAP.tv}}}];t.default=a,e.exports=t.default},95:function(e,t,r){\"use strict\";t.__esModule=!0,t.default=void 0;var n,i=(n=r(17))&&n.__esModule?n:{default:n},s=r(18);var a=[{test:function(e){return\"microsoft edge\"===e.getBrowserName(!0)},describe:function(e){if(/\\sedg\\//i.test(e))return{name:s.ENGINE_MAP.Blink};var t=i.default.getFirstMatch(/edge\\/(\\d+(\\.?_?\\d+)+)/i,e);return{name:s.ENGINE_MAP.EdgeHTML,version:t}}},{test:[/trident/i],describe:function(e){var t={name:s.ENGINE_MAP.Trident},r=i.default.getFirstMatch(/trident\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){return e.test(/presto/i)},describe:function(e){var t={name:s.ENGINE_MAP.Presto},r=i.default.getFirstMatch(/presto\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:function(e){var t=e.test(/gecko/i),r=e.test(/like gecko/i);return t&&!r},describe:function(e){var t={name:s.ENGINE_MAP.Gecko},r=i.default.getFirstMatch(/gecko\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}},{test:[/(apple)?webkit\\/537\\.36/i],describe:function(){return{name:s.ENGINE_MAP.Blink}}},{test:[/(apple)?webkit/i],describe:function(e){var t={name:s.ENGINE_MAP.WebKit},r=i.default.getFirstMatch(/webkit\\/(\\d+(\\.?_?\\d+)+)/i,e);return r&&(t.version=r),t}}];t.default=a,e.exports=t.default}})}));","'use strict';\n\nexports.__esModule = true;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _propTypes = require('prop-types');\n\nvar _propTypes2 = _interopRequireDefault(_propTypes);\n\nvar _gud = require('gud');\n\nvar _gud2 = _interopRequireDefault(_gud);\n\nvar _warning = require('warning');\n\nvar _warning2 = _interopRequireDefault(_warning);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar MAX_SIGNED_31_BIT_INT = 1073741823;\n\n// Inlined Object.is polyfill.\n// https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Object/is\nfunction objectIs(x, y) {\n if (x === y) {\n return x !== 0 || 1 / x === 1 / y;\n } else {\n return x !== x && y !== y;\n }\n}\n\nfunction createEventEmitter(value) {\n var handlers = [];\n return {\n on: function on(handler) {\n handlers.push(handler);\n },\n off: function off(handler) {\n handlers = handlers.filter(function (h) {\n return h !== handler;\n });\n },\n get: function get() {\n return value;\n },\n set: function set(newValue, changedBits) {\n value = newValue;\n handlers.forEach(function (handler) {\n return handler(value, changedBits);\n });\n }\n };\n}\n\nfunction onlyChild(children) {\n return Array.isArray(children) ? children[0] : children;\n}\n\nfunction createReactContext(defaultValue, calculateChangedBits) {\n var _Provider$childContex, _Consumer$contextType;\n\n var contextProp = '__create-react-context-' + (0, _gud2.default)() + '__';\n\n var Provider = function (_Component) {\n _inherits(Provider, _Component);\n\n function Provider() {\n var _temp, _this, _ret;\n\n _classCallCheck(this, Provider);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, _Component.call.apply(_Component, [this].concat(args))), _this), _this.emitter = createEventEmitter(_this.props.value), _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n Provider.prototype.getChildContext = function getChildContext() {\n var _ref;\n\n return _ref = {}, _ref[contextProp] = this.emitter, _ref;\n };\n\n Provider.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n if (this.props.value !== nextProps.value) {\n var oldValue = this.props.value;\n var newValue = nextProps.value;\n var changedBits = void 0;\n\n if (objectIs(oldValue, newValue)) {\n changedBits = 0; // No change\n } else {\n changedBits = typeof calculateChangedBits === 'function' ? calculateChangedBits(oldValue, newValue) : MAX_SIGNED_31_BIT_INT;\n if (process.env.NODE_ENV !== 'production') {\n (0, _warning2.default)((changedBits & MAX_SIGNED_31_BIT_INT) === changedBits, 'calculateChangedBits: Expected the return value to be a ' + '31-bit integer. Instead received: %s', changedBits);\n }\n\n changedBits |= 0;\n\n if (changedBits !== 0) {\n this.emitter.set(nextProps.value, changedBits);\n }\n }\n }\n };\n\n Provider.prototype.render = function render() {\n return this.props.children;\n };\n\n return Provider;\n }(_react.Component);\n\n Provider.childContextTypes = (_Provider$childContex = {}, _Provider$childContex[contextProp] = _propTypes2.default.object.isRequired, _Provider$childContex);\n\n var Consumer = function (_Component2) {\n _inherits(Consumer, _Component2);\n\n function Consumer() {\n var _temp2, _this2, _ret2;\n\n _classCallCheck(this, Consumer);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this2 = _possibleConstructorReturn(this, _Component2.call.apply(_Component2, [this].concat(args))), _this2), _this2.state = {\n value: _this2.getValue()\n }, _this2.onUpdate = function (newValue, changedBits) {\n var observedBits = _this2.observedBits | 0;\n if ((observedBits & changedBits) !== 0) {\n _this2.setState({ value: _this2.getValue() });\n }\n }, _temp2), _possibleConstructorReturn(_this2, _ret2);\n }\n\n Consumer.prototype.componentWillReceiveProps = function componentWillReceiveProps(nextProps) {\n var observedBits = nextProps.observedBits;\n\n this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default\n : observedBits;\n };\n\n Consumer.prototype.componentDidMount = function componentDidMount() {\n if (this.context[contextProp]) {\n this.context[contextProp].on(this.onUpdate);\n }\n var observedBits = this.props.observedBits;\n\n this.observedBits = observedBits === undefined || observedBits === null ? MAX_SIGNED_31_BIT_INT // Subscribe to all changes by default\n : observedBits;\n };\n\n Consumer.prototype.componentWillUnmount = function componentWillUnmount() {\n if (this.context[contextProp]) {\n this.context[contextProp].off(this.onUpdate);\n }\n };\n\n Consumer.prototype.getValue = function getValue() {\n if (this.context[contextProp]) {\n return this.context[contextProp].get();\n } else {\n return defaultValue;\n }\n };\n\n Consumer.prototype.render = function render() {\n return onlyChild(this.props.children)(this.state.value);\n };\n\n return Consumer;\n }(_react.Component);\n\n Consumer.contextTypes = (_Consumer$contextType = {}, _Consumer$contextType[contextProp] = _propTypes2.default.object, _Consumer$contextType);\n\n\n return {\n Provider: Provider,\n Consumer: Consumer\n };\n}\n\nexports.default = createReactContext;\nmodule.exports = exports['default'];","'use strict';\n\nexports.__esModule = true;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _implementation = require('./implementation');\n\nvar _implementation2 = _interopRequireDefault(_implementation);\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nexports.default = _react2.default.createContext || _implementation2.default;\nmodule.exports = exports['default'];","/*!\n Copyright (c) 2015 Jed Watson.\n Based on code that is Copyright 2013-2015, Facebook, Inc.\n All rights reserved.\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar canUseDOM = !!(\n\t\ttypeof window !== 'undefined' &&\n\t\twindow.document &&\n\t\twindow.document.createElement\n\t);\n\n\tvar ExecutionEnvironment = {\n\n\t\tcanUseDOM: canUseDOM,\n\n\t\tcanUseWorkers: typeof Worker !== 'undefined',\n\n\t\tcanUseEventListeners:\n\t\t\tcanUseDOM && !!(window.addEventListener || window.attachEvent),\n\n\t\tcanUseViewport: canUseDOM && !!window.screen\n\n\t};\n\n\tif (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\tdefine(function () {\n\t\t\treturn ExecutionEnvironment;\n\t\t});\n\t} else if (typeof module !== 'undefined' && module.exports) {\n\t\tmodule.exports = ExecutionEnvironment;\n\t} else {\n\t\twindow.ExecutionEnvironment = ExecutionEnvironment;\n\t}\n\n}());\n","import { getIn } from 'final-form';\n\n// \n\n/**\n * Predicate to identify inputs that can have focus() called on them\n */\nvar isFocusableInput = function isFocusableInput(wtf) {\n return !!(wtf && typeof wtf.focus === 'function');\n};\n\n// \n/**\n * Gets all the inputs inside all forms on the page\n */\n\nvar getAllInputs = function getAllInputs() {\n if (typeof document === 'undefined') {\n return [];\n }\n\n return Array.prototype.slice.call(document.forms).reduce(function (accumulator, form) {\n return accumulator.concat(Array.prototype.slice.call(form).filter(isFocusableInput));\n }, []);\n};\n\n// \n/**\n * Finds the input by looking if the name attribute path is existing in the errors object\n */\n\nvar findInput = function findInput(inputs, errors) {\n return inputs.find(function (input) {\n return input.name && getIn(errors, input.name);\n });\n};\n\n// \n\nvar noop = function noop() {};\n\nvar createDecorator = function createDecorator(getInputs, findInput$$1) {\n return function (form) {\n var focusOnFirstError = function focusOnFirstError(errors) {\n if (!getInputs) {\n getInputs = getAllInputs;\n }\n\n if (!findInput$$1) {\n findInput$$1 = findInput;\n }\n\n var firstInput = findInput$$1(getInputs(), errors);\n\n if (firstInput) {\n firstInput.focus();\n }\n }; // Save original submit function\n\n\n var originalSubmit = form.submit; // Subscribe to errors, and keep a local copy of them\n\n var state = {};\n var unsubscribe = form.subscribe(function (nextState) {\n state = nextState;\n }, {\n errors: true,\n submitErrors: true\n }); // What to do after submit\n\n var afterSubmit = function afterSubmit() {\n var _state = state,\n errors = _state.errors,\n submitErrors = _state.submitErrors;\n\n if (errors && Object.keys(errors).length) {\n focusOnFirstError(errors);\n } else if (submitErrors && Object.keys(submitErrors).length) {\n focusOnFirstError(submitErrors);\n }\n }; // Rewrite submit function\n\n\n form.submit = function () {\n var result = originalSubmit.call(form);\n\n if (result && typeof result.then === 'function') {\n // async\n result.then(afterSubmit, noop);\n } else {\n // sync\n afterSubmit();\n }\n\n return result;\n };\n\n return function () {\n unsubscribe();\n form.submit = originalSubmit;\n };\n };\n};\n\n// \n/**\n * Generates a function to get all the inputs in a form with the specified name\n */\n\nvar getFormInputs = function getFormInputs(name) {\n return function () {\n if (typeof document === 'undefined') {\n return [];\n } // $FlowFixMe\n\n\n var form = document.forms[name];\n return form && form.length ? Array.prototype.slice.call(form).filter(isFocusableInput) : []; // cast cheat to get from HTMLFormElement children to FocusableInput\n };\n};\n\n//\n\nexport default createDecorator;\nexport { getFormInputs };\n","import _extends from '@babel/runtime/helpers/esm/extends';\nimport _objectWithoutPropertiesLoose from '@babel/runtime/helpers/esm/objectWithoutPropertiesLoose';\n\n// \n\nvar charCodeOfDot = \".\".charCodeAt(0);\nvar reEscapeChar = /\\\\(\\\\)?/g;\nvar rePropName = RegExp(\n// Match anything that isn't a dot or bracket.\n\"[^.[\\\\]]+\" + \"|\" +\n// Or match property names within brackets.\n\"\\\\[(?:\" +\n// Match a non-string expression.\n\"([^\\\"'][^[]*)\" + \"|\" +\n// Or match strings (supports escaping characters).\n\"([\\\"'])((?:(?!\\\\2)[^\\\\\\\\]|\\\\\\\\.)*?)\\\\2\" + \")\\\\]\" + \"|\" +\n// Or match \"\" as the space between consecutive dots or empty brackets.\n\"(?=(?:\\\\.|\\\\[\\\\])(?:\\\\.|\\\\[\\\\]|$))\", \"g\");\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = function stringToPath(string) {\n var result = [];\n if (string.charCodeAt(0) === charCodeOfDot) {\n result.push(\"\");\n }\n string.replace(rePropName, function (match, expression, quote, subString) {\n var key = match;\n if (quote) {\n key = subString.replace(reEscapeChar, \"$1\");\n } else if (expression) {\n key = expression.trim();\n }\n result.push(key);\n });\n return result;\n};\nvar keysCache = {};\nvar keysRegex = /[.[\\]]+/;\nvar toPath = function toPath(key) {\n if (key === null || key === undefined || !key.length) {\n return [];\n }\n if (typeof key !== \"string\") {\n throw new Error(\"toPath() expects a string\");\n }\n if (keysCache[key] == null) {\n /**\n * The following patch fixes issue 456, introduced since v4.20.3:\n *\n * Before v4.20.3, i.e. in v4.20.2, a `key` like 'choices[]' would map to ['choices']\n * (e.g. an array of choices used where 'choices[]' is name attribute of an input of type checkbox).\n *\n * Since v4.20.3, a `key` like 'choices[]' would map to ['choices', ''] which is wrong and breaks\n * this kind of inputs e.g. in React.\n *\n * v4.20.3 introduced an unwanted breaking change, this patch fixes it, see the issue at the link below.\n *\n * @see https://github.com/final-form/final-form/issues/456\n */\n if (key.endsWith(\"[]\")) {\n // v4.20.2 (a `key` like 'choices[]' should map to ['choices'], which is fine).\n keysCache[key] = key.split(keysRegex).filter(Boolean);\n } else {\n // v4.20.3 (a `key` like 'choices[]' maps to ['choices', ''], which breaks applications relying on inputs like ``).\n keysCache[key] = stringToPath(key);\n }\n }\n return keysCache[key];\n};\n\n// \nvar getIn = function getIn(state, complexKey) {\n // Intentionally using iteration rather than recursion\n var path = toPath(complexKey);\n var current = state;\n for (var i = 0; i < path.length; i++) {\n var key = path[i];\n if (current === undefined || current === null || typeof current !== \"object\" || Array.isArray(current) && isNaN(key)) {\n return undefined;\n }\n current = current[key];\n }\n return current;\n};\n\nfunction _toPropertyKey(arg) { var key = _toPrimitive(arg, \"string\"); return typeof key === \"symbol\" ? key : String(key); }\nfunction _toPrimitive(input, hint) { if (typeof input !== \"object\" || input === null) return input; var prim = input[Symbol.toPrimitive]; if (prim !== undefined) { var res = prim.call(input, hint || \"default\"); if (typeof res !== \"object\") return res; throw new TypeError(\"@@toPrimitive must return a primitive value.\"); } return (hint === \"string\" ? String : Number)(input); }\nvar setInRecursor = function setInRecursor(current, index, path, value, destroyArrays) {\n if (index >= path.length) {\n // end of recursion\n return value;\n }\n var key = path[index];\n\n // determine type of key\n if (isNaN(key)) {\n var _extends2;\n // object set\n if (current === undefined || current === null) {\n var _ref;\n // recurse\n var _result = setInRecursor(undefined, index + 1, path, value, destroyArrays);\n\n // delete or create an object\n return _result === undefined ? undefined : (_ref = {}, _ref[key] = _result, _ref);\n }\n if (Array.isArray(current)) {\n throw new Error(\"Cannot set a non-numeric property on an array\");\n }\n // current exists, so make a copy of all its values, and add/update the new one\n var _result2 = setInRecursor(current[key], index + 1, path, value, destroyArrays);\n if (_result2 === undefined) {\n var numKeys = Object.keys(current).length;\n if (current[key] === undefined && numKeys === 0) {\n // object was already empty\n return undefined;\n }\n if (current[key] !== undefined && numKeys <= 1) {\n // only key we had was the one we are deleting\n if (!isNaN(path[index - 1]) && !destroyArrays) {\n // we are in an array, so return an empty object\n return {};\n } else {\n return undefined;\n }\n }\n current[key];\n var _final = _objectWithoutPropertiesLoose(current, [key].map(_toPropertyKey));\n return _final;\n }\n // set result in key\n return _extends({}, current, (_extends2 = {}, _extends2[key] = _result2, _extends2));\n }\n // array set\n var numericKey = Number(key);\n if (current === undefined || current === null) {\n // recurse\n var _result3 = setInRecursor(undefined, index + 1, path, value, destroyArrays);\n\n // if nothing returned, delete it\n if (_result3 === undefined) {\n return undefined;\n }\n\n // create an array\n var _array = [];\n _array[numericKey] = _result3;\n return _array;\n }\n if (!Array.isArray(current)) {\n throw new Error(\"Cannot set a numeric property on an object\");\n }\n // recurse\n var existingValue = current[numericKey];\n var result = setInRecursor(existingValue, index + 1, path, value, destroyArrays);\n\n // current exists, so make a copy of all its values, and add/update the new one\n var array = [].concat(current);\n if (destroyArrays && result === undefined) {\n array.splice(numericKey, 1);\n if (array.length === 0) {\n return undefined;\n }\n } else {\n array[numericKey] = result;\n }\n return array;\n};\nvar setIn = function setIn(state, key, value, destroyArrays) {\n if (destroyArrays === void 0) {\n destroyArrays = false;\n }\n if (state === undefined || state === null) {\n throw new Error(\"Cannot call setIn() with \" + String(state) + \" state\");\n }\n if (key === undefined || key === null) {\n throw new Error(\"Cannot call setIn() with \" + String(key) + \" key\");\n }\n // Recursive function needs to accept and return State, but public API should\n // only deal with Objects\n return setInRecursor(state, 0, toPath(key), value, destroyArrays);\n};\n\nvar FORM_ERROR = \"FINAL_FORM/form-error\";\nvar ARRAY_ERROR = \"FINAL_FORM/array-error\";\n\n// \n\n\n/**\n * Converts internal field state to published field state\n */\nfunction publishFieldState(formState, field) {\n var errors = formState.errors,\n initialValues = formState.initialValues,\n lastSubmittedValues = formState.lastSubmittedValues,\n submitErrors = formState.submitErrors,\n submitFailed = formState.submitFailed,\n submitSucceeded = formState.submitSucceeded,\n submitting = formState.submitting,\n values = formState.values;\n var active = field.active,\n blur = field.blur,\n change = field.change,\n data = field.data,\n focus = field.focus,\n modified = field.modified,\n modifiedSinceLastSubmit = field.modifiedSinceLastSubmit,\n name = field.name,\n touched = field.touched,\n validating = field.validating,\n visited = field.visited;\n var value = getIn(values, name);\n var error = getIn(errors, name);\n if (error && error[ARRAY_ERROR]) {\n error = error[ARRAY_ERROR];\n }\n var submitError = submitErrors && getIn(submitErrors, name);\n var initial = initialValues && getIn(initialValues, name);\n var pristine = field.isEqual(initial, value);\n var dirtySinceLastSubmit = !!(lastSubmittedValues && !field.isEqual(getIn(lastSubmittedValues, name), value));\n var valid = !error && !submitError;\n return {\n active: active,\n blur: blur,\n change: change,\n data: data,\n dirty: !pristine,\n dirtySinceLastSubmit: dirtySinceLastSubmit,\n error: error,\n focus: focus,\n initial: initial,\n invalid: !valid,\n length: Array.isArray(value) ? value.length : undefined,\n modified: modified,\n modifiedSinceLastSubmit: modifiedSinceLastSubmit,\n name: name,\n pristine: pristine,\n submitError: submitError,\n submitFailed: submitFailed,\n submitSucceeded: submitSucceeded,\n submitting: submitting,\n touched: touched,\n valid: valid,\n value: value,\n visited: visited,\n validating: validating\n };\n}\n\n// \nvar fieldSubscriptionItems = [\"active\", \"data\", \"dirty\", \"dirtySinceLastSubmit\", \"error\", \"initial\", \"invalid\", \"length\", \"modified\", \"modifiedSinceLastSubmit\", \"pristine\", \"submitError\", \"submitFailed\", \"submitSucceeded\", \"submitting\", \"touched\", \"valid\", \"value\", \"visited\", \"validating\"];\n\n// \n\nvar shallowEqual = function shallowEqual(a, b) {\n if (a === b) {\n return true;\n }\n if (typeof a !== \"object\" || !a || typeof b !== \"object\" || !b) {\n return false;\n }\n var keysA = Object.keys(a);\n var keysB = Object.keys(b);\n if (keysA.length !== keysB.length) {\n return false;\n }\n var bHasOwnProperty = Object.prototype.hasOwnProperty.bind(b);\n for (var idx = 0; idx < keysA.length; idx++) {\n var key = keysA[idx];\n if (!bHasOwnProperty(key) || a[key] !== b[key]) {\n return false;\n }\n }\n return true;\n};\n\n// \nfunction subscriptionFilter (dest, src, previous, subscription, keys, shallowEqualKeys) {\n var different = false;\n keys.forEach(function (key) {\n if (subscription[key]) {\n dest[key] = src[key];\n if (!previous || (~shallowEqualKeys.indexOf(key) ? !shallowEqual(src[key], previous[key]) : src[key] !== previous[key])) {\n different = true;\n }\n }\n });\n return different;\n}\n\n// \nvar shallowEqualKeys$1 = [\"data\"];\n\n/**\n * Filters items in a FieldState based on a FieldSubscription\n */\nvar filterFieldState = function filterFieldState(state, previousState, subscription, force) {\n var result = {\n blur: state.blur,\n change: state.change,\n focus: state.focus,\n name: state.name\n };\n var different = subscriptionFilter(result, state, previousState, subscription, fieldSubscriptionItems, shallowEqualKeys$1) || !previousState;\n return different || force ? result : undefined;\n};\n\n// \nvar formSubscriptionItems = [\"active\", \"dirty\", \"dirtyFields\", \"dirtyFieldsSinceLastSubmit\", \"dirtySinceLastSubmit\", \"error\", \"errors\", \"hasSubmitErrors\", \"hasValidationErrors\", \"initialValues\", \"invalid\", \"modified\", \"modifiedSinceLastSubmit\", \"pristine\", \"submitting\", \"submitError\", \"submitErrors\", \"submitFailed\", \"submitSucceeded\", \"touched\", \"valid\", \"validating\", \"values\", \"visited\"];\n\n// \nvar shallowEqualKeys = [\"touched\", \"visited\"];\n\n/**\n * Filters items in a FormState based on a FormSubscription\n */\nfunction filterFormState(state, previousState, subscription, force) {\n var result = {};\n var different = subscriptionFilter(result, state, previousState, subscription, formSubscriptionItems, shallowEqualKeys) || !previousState;\n return different || force ? result : undefined;\n}\n\n// \nvar memoize = function memoize(fn) {\n var lastArgs;\n var lastResult;\n return function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n if (!lastArgs || args.length !== lastArgs.length || args.some(function (arg, index) {\n return !shallowEqual(lastArgs[index], arg);\n })) {\n lastArgs = args;\n lastResult = fn.apply(void 0, args);\n }\n return lastResult;\n };\n};\n\nvar isPromise = (function (obj) {\n return !!obj && (typeof obj === \"object\" || typeof obj === \"function\") && typeof obj.then === \"function\";\n});\n\nvar version = \"4.20.10\";\n\nvar configOptions = [\"debug\", \"initialValues\", \"keepDirtyOnReinitialize\", \"mutators\", \"onSubmit\", \"validate\", \"validateOnBlur\"];\nvar tripleEquals = function tripleEquals(a, b) {\n return a === b;\n};\nvar hasAnyError = function hasAnyError(errors) {\n return Object.keys(errors).some(function (key) {\n var value = errors[key];\n if (value && typeof value === \"object\" && !(value instanceof Error)) {\n return hasAnyError(value);\n }\n return typeof value !== \"undefined\";\n });\n};\nfunction convertToExternalFormState(_ref) {\n var active = _ref.active,\n dirtySinceLastSubmit = _ref.dirtySinceLastSubmit,\n modifiedSinceLastSubmit = _ref.modifiedSinceLastSubmit,\n error = _ref.error,\n errors = _ref.errors,\n initialValues = _ref.initialValues,\n pristine = _ref.pristine,\n submitting = _ref.submitting,\n submitFailed = _ref.submitFailed,\n submitSucceeded = _ref.submitSucceeded,\n submitError = _ref.submitError,\n submitErrors = _ref.submitErrors,\n valid = _ref.valid,\n validating = _ref.validating,\n values = _ref.values;\n return {\n active: active,\n dirty: !pristine,\n dirtySinceLastSubmit: dirtySinceLastSubmit,\n modifiedSinceLastSubmit: modifiedSinceLastSubmit,\n error: error,\n errors: errors,\n hasSubmitErrors: !!(submitError || submitErrors && hasAnyError(submitErrors)),\n hasValidationErrors: !!(error || hasAnyError(errors)),\n invalid: !valid,\n initialValues: initialValues,\n pristine: pristine,\n submitting: submitting,\n submitFailed: submitFailed,\n submitSucceeded: submitSucceeded,\n submitError: submitError,\n submitErrors: submitErrors,\n valid: valid,\n validating: validating > 0,\n values: values\n };\n}\nfunction notifySubscriber(subscriber, subscription, state, lastState, filter, force) {\n var notification = filter(state, lastState, subscription, force);\n if (notification) {\n subscriber(notification);\n return true;\n }\n return false;\n}\nfunction notify(_ref2, state, lastState, filter, force) {\n var entries = _ref2.entries;\n Object.keys(entries).forEach(function (key) {\n var entry = entries[Number(key)];\n // istanbul ignore next\n if (entry) {\n var subscription = entry.subscription,\n subscriber = entry.subscriber,\n notified = entry.notified;\n if (notifySubscriber(subscriber, subscription, state, lastState, filter, force || !notified)) {\n entry.notified = true;\n }\n }\n });\n}\nfunction createForm(config) {\n if (!config) {\n throw new Error(\"No config specified\");\n }\n var debug = config.debug,\n destroyOnUnregister = config.destroyOnUnregister,\n keepDirtyOnReinitialize = config.keepDirtyOnReinitialize,\n initialValues = config.initialValues,\n mutators = config.mutators,\n onSubmit = config.onSubmit,\n validate = config.validate,\n validateOnBlur = config.validateOnBlur;\n if (!onSubmit) {\n throw new Error(\"No onSubmit function specified\");\n }\n var state = {\n subscribers: {\n index: 0,\n entries: {}\n },\n fieldSubscribers: {},\n fields: {},\n formState: {\n asyncErrors: {},\n dirtySinceLastSubmit: false,\n modifiedSinceLastSubmit: false,\n errors: {},\n initialValues: initialValues && _extends({}, initialValues),\n invalid: false,\n pristine: true,\n submitting: false,\n submitFailed: false,\n submitSucceeded: false,\n resetWhileSubmitting: false,\n valid: true,\n validating: 0,\n values: initialValues ? _extends({}, initialValues) : {}\n },\n lastFormState: undefined\n };\n var inBatch = 0;\n var validationPaused = false;\n var validationBlocked = false;\n var preventNotificationWhileValidationPaused = false;\n var nextAsyncValidationKey = 0;\n var asyncValidationPromises = {};\n var clearAsyncValidationPromise = function clearAsyncValidationPromise(key) {\n return function (result) {\n delete asyncValidationPromises[key];\n return result;\n };\n };\n var changeValue = function changeValue(state, name, mutate) {\n var before = getIn(state.formState.values, name);\n var after = mutate(before);\n state.formState.values = setIn(state.formState.values, name, after) || {};\n };\n var renameField = function renameField(state, from, to) {\n if (state.fields[from]) {\n var _extends2, _extends3;\n state.fields = _extends({}, state.fields, (_extends2 = {}, _extends2[to] = _extends({}, state.fields[from], {\n name: to,\n // rebind event handlers\n blur: function blur() {\n return api.blur(to);\n },\n change: function change(value) {\n return api.change(to, value);\n },\n focus: function focus() {\n return api.focus(to);\n },\n lastFieldState: undefined\n }), _extends2));\n delete state.fields[from];\n state.fieldSubscribers = _extends({}, state.fieldSubscribers, (_extends3 = {}, _extends3[to] = state.fieldSubscribers[from], _extends3));\n delete state.fieldSubscribers[from];\n var value = getIn(state.formState.values, from);\n state.formState.values = setIn(state.formState.values, from, undefined) || {};\n state.formState.values = setIn(state.formState.values, to, value);\n delete state.lastFormState;\n }\n };\n\n // bind state to mutators\n var getMutatorApi = function getMutatorApi(key) {\n return function () {\n // istanbul ignore next\n if (mutators) {\n // ^^ causes branch coverage warning, but needed to appease the Flow gods\n var mutatableState = {\n formState: state.formState,\n fields: state.fields,\n fieldSubscribers: state.fieldSubscribers,\n lastFormState: state.lastFormState\n };\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n var returnValue = mutators[key](args, mutatableState, {\n changeValue: changeValue,\n getIn: getIn,\n renameField: renameField,\n resetFieldState: api.resetFieldState,\n setIn: setIn,\n shallowEqual: shallowEqual\n });\n state.formState = mutatableState.formState;\n state.fields = mutatableState.fields;\n state.fieldSubscribers = mutatableState.fieldSubscribers;\n state.lastFormState = mutatableState.lastFormState;\n runValidation(undefined, function () {\n notifyFieldListeners();\n notifyFormListeners();\n });\n return returnValue;\n }\n };\n };\n var mutatorsApi = mutators ? Object.keys(mutators).reduce(function (result, key) {\n result[key] = getMutatorApi(key);\n return result;\n }, {}) : {};\n var runRecordLevelValidation = function runRecordLevelValidation(setErrors) {\n var promises = [];\n if (validate) {\n var errorsOrPromise = validate(_extends({}, state.formState.values)); // clone to avoid writing\n if (isPromise(errorsOrPromise)) {\n promises.push(errorsOrPromise.then(function (errors) {\n return setErrors(errors, true);\n }));\n } else {\n setErrors(errorsOrPromise, false);\n }\n }\n return promises;\n };\n var getValidators = function getValidators(field) {\n return Object.keys(field.validators).reduce(function (result, index) {\n var validator = field.validators[Number(index)]();\n if (validator) {\n result.push(validator);\n }\n return result;\n }, []);\n };\n var runFieldLevelValidation = function runFieldLevelValidation(field, setError) {\n var promises = [];\n var validators = getValidators(field);\n if (validators.length) {\n var error;\n validators.forEach(function (validator) {\n var errorOrPromise = validator(getIn(state.formState.values, field.name), state.formState.values, validator.length === 0 || validator.length === 3 ? publishFieldState(state.formState, state.fields[field.name]) : undefined);\n if (errorOrPromise && isPromise(errorOrPromise)) {\n field.validating = true;\n var promise = errorOrPromise.then(function (error) {\n if (state.fields[field.name]) {\n state.fields[field.name].validating = false;\n setError(error);\n }\n }); // errors must be resolved, not rejected\n promises.push(promise);\n } else if (!error) {\n // first registered validator wins\n error = errorOrPromise;\n }\n });\n setError(error);\n }\n return promises;\n };\n var runValidation = function runValidation(fieldChanged, callback) {\n if (validationPaused) {\n validationBlocked = true;\n callback();\n return;\n }\n var fields = state.fields,\n formState = state.formState;\n var safeFields = _extends({}, fields);\n var fieldKeys = Object.keys(safeFields);\n if (!validate && !fieldKeys.some(function (key) {\n return getValidators(safeFields[key]).length;\n })) {\n callback();\n return; // no validation rules\n }\n\n // pare down field keys to actually validate\n var limitedFieldLevelValidation = false;\n if (fieldChanged) {\n var changedField = safeFields[fieldChanged];\n if (changedField) {\n var validateFields = changedField.validateFields;\n if (validateFields) {\n limitedFieldLevelValidation = true;\n fieldKeys = validateFields.length ? validateFields.concat(fieldChanged) : [fieldChanged];\n }\n }\n }\n var recordLevelErrors = {};\n var asyncRecordLevelErrors = {};\n var fieldLevelErrors = {};\n var promises = [].concat(runRecordLevelValidation(function (errors, wasAsync) {\n if (wasAsync) {\n asyncRecordLevelErrors = errors || {};\n } else {\n recordLevelErrors = errors || {};\n }\n }), fieldKeys.reduce(function (result, name) {\n return result.concat(runFieldLevelValidation(fields[name], function (error) {\n fieldLevelErrors[name] = error;\n }));\n }, []));\n var hasAsyncValidations = promises.length > 0;\n var asyncValidationPromiseKey = ++nextAsyncValidationKey;\n var promise = Promise.all(promises).then(clearAsyncValidationPromise(asyncValidationPromiseKey));\n\n // backwards-compat: add promise to submit-blocking promises iff there are any promises to await\n if (hasAsyncValidations) {\n asyncValidationPromises[asyncValidationPromiseKey] = promise;\n }\n var processErrors = function processErrors(afterAsync) {\n var merged = _extends({}, limitedFieldLevelValidation ? formState.errors : {}, recordLevelErrors, afterAsync ? asyncRecordLevelErrors // new async errors\n : formState.asyncErrors);\n var forEachError = function forEachError(fn) {\n fieldKeys.forEach(function (name) {\n if (fields[name]) {\n // make sure field is still registered\n // field-level errors take precedent over record-level errors\n var recordLevelError = getIn(recordLevelErrors, name);\n var errorFromParent = getIn(merged, name);\n var hasFieldLevelValidation = getValidators(safeFields[name]).length;\n var fieldLevelError = fieldLevelErrors[name];\n fn(name, hasFieldLevelValidation && fieldLevelError || validate && recordLevelError || (!recordLevelError && !limitedFieldLevelValidation ? errorFromParent : undefined));\n }\n });\n };\n forEachError(function (name, error) {\n merged = setIn(merged, name, error) || {};\n });\n forEachError(function (name, error) {\n if (error && error[ARRAY_ERROR]) {\n var existing = getIn(merged, name);\n var copy = [].concat(existing);\n copy[ARRAY_ERROR] = error[ARRAY_ERROR];\n merged = setIn(merged, name, copy);\n }\n });\n if (!shallowEqual(formState.errors, merged)) {\n formState.errors = merged;\n }\n if (afterAsync) {\n formState.asyncErrors = asyncRecordLevelErrors;\n }\n formState.error = recordLevelErrors[FORM_ERROR];\n };\n if (hasAsyncValidations) {\n // async validations are running, ensure validating is true before notifying\n state.formState.validating++;\n callback();\n }\n\n // process sync errors\n processErrors(false);\n // sync errors have been set. notify listeners while we wait for others\n callback();\n if (hasAsyncValidations) {\n var afterPromise = function afterPromise() {\n state.formState.validating--;\n callback();\n // field async validation may affect formState validating\n // so force notifyFormListeners if validating is still 0 after callback finished\n // and lastFormState validating is true\n if (state.formState.validating === 0 && state.lastFormState.validating) {\n notifyFormListeners();\n }\n };\n promise.then(function () {\n if (nextAsyncValidationKey > asyncValidationPromiseKey) {\n // if this async validator has been superseded by another, ignore its results\n return;\n }\n processErrors(true);\n }).then(afterPromise, afterPromise);\n }\n };\n var notifyFieldListeners = function notifyFieldListeners(name) {\n if (inBatch) {\n return;\n }\n var fields = state.fields,\n fieldSubscribers = state.fieldSubscribers,\n formState = state.formState;\n var safeFields = _extends({}, fields);\n var notifyField = function notifyField(name) {\n var field = safeFields[name];\n var fieldState = publishFieldState(formState, field);\n var lastFieldState = field.lastFieldState;\n field.lastFieldState = fieldState;\n var fieldSubscriber = fieldSubscribers[name];\n if (fieldSubscriber) {\n notify(fieldSubscriber, fieldState, lastFieldState, filterFieldState, lastFieldState === undefined);\n }\n };\n if (name) {\n notifyField(name);\n } else {\n Object.keys(safeFields).forEach(notifyField);\n }\n };\n var markAllFieldsTouched = function markAllFieldsTouched() {\n Object.keys(state.fields).forEach(function (key) {\n state.fields[key].touched = true;\n });\n };\n var hasSyncErrors = function hasSyncErrors() {\n return !!(state.formState.error || hasAnyError(state.formState.errors));\n };\n var calculateNextFormState = function calculateNextFormState() {\n var fields = state.fields,\n formState = state.formState,\n lastFormState = state.lastFormState;\n var safeFields = _extends({}, fields);\n var safeFieldKeys = Object.keys(safeFields);\n\n // calculate dirty/pristine\n var foundDirty = false;\n var dirtyFields = safeFieldKeys.reduce(function (result, key) {\n var dirty = !safeFields[key].isEqual(getIn(formState.values, key), getIn(formState.initialValues || {}, key));\n if (dirty) {\n foundDirty = true;\n result[key] = true;\n }\n return result;\n }, {});\n var dirtyFieldsSinceLastSubmit = safeFieldKeys.reduce(function (result, key) {\n // istanbul ignore next\n var nonNullLastSubmittedValues = formState.lastSubmittedValues || {}; // || {} is for flow, but causes branch coverage complaint\n if (!safeFields[key].isEqual(getIn(formState.values, key), getIn(nonNullLastSubmittedValues, key))) {\n result[key] = true;\n }\n return result;\n }, {});\n formState.pristine = !foundDirty;\n formState.dirtySinceLastSubmit = !!(formState.lastSubmittedValues && Object.values(dirtyFieldsSinceLastSubmit).some(function (value) {\n return value;\n }));\n formState.modifiedSinceLastSubmit = !!(formState.lastSubmittedValues &&\n // Object.values would treat values as mixed (facebook/flow#2221)\n Object.keys(safeFields).some(function (value) {\n return safeFields[value].modifiedSinceLastSubmit;\n }));\n formState.valid = !formState.error && !formState.submitError && !hasAnyError(formState.errors) && !(formState.submitErrors && hasAnyError(formState.submitErrors));\n var nextFormState = convertToExternalFormState(formState);\n var _safeFieldKeys$reduce = safeFieldKeys.reduce(function (result, key) {\n result.modified[key] = safeFields[key].modified;\n result.touched[key] = safeFields[key].touched;\n result.visited[key] = safeFields[key].visited;\n return result;\n }, {\n modified: {},\n touched: {},\n visited: {}\n }),\n modified = _safeFieldKeys$reduce.modified,\n touched = _safeFieldKeys$reduce.touched,\n visited = _safeFieldKeys$reduce.visited;\n nextFormState.dirtyFields = lastFormState && shallowEqual(lastFormState.dirtyFields, dirtyFields) ? lastFormState.dirtyFields : dirtyFields;\n nextFormState.dirtyFieldsSinceLastSubmit = lastFormState && shallowEqual(lastFormState.dirtyFieldsSinceLastSubmit, dirtyFieldsSinceLastSubmit) ? lastFormState.dirtyFieldsSinceLastSubmit : dirtyFieldsSinceLastSubmit;\n nextFormState.modified = lastFormState && shallowEqual(lastFormState.modified, modified) ? lastFormState.modified : modified;\n nextFormState.touched = lastFormState && shallowEqual(lastFormState.touched, touched) ? lastFormState.touched : touched;\n nextFormState.visited = lastFormState && shallowEqual(lastFormState.visited, visited) ? lastFormState.visited : visited;\n return lastFormState && shallowEqual(lastFormState, nextFormState) ? lastFormState : nextFormState;\n };\n var callDebug = function callDebug() {\n return debug && \"development\" !== \"production\" && debug(calculateNextFormState(), Object.keys(state.fields).reduce(function (result, key) {\n result[key] = state.fields[key];\n return result;\n }, {}));\n };\n var notifying = false;\n var scheduleNotification = false;\n var notifyFormListeners = function notifyFormListeners() {\n if (notifying) {\n scheduleNotification = true;\n } else {\n notifying = true;\n callDebug();\n if (!inBatch && !(validationPaused && preventNotificationWhileValidationPaused)) {\n var lastFormState = state.lastFormState;\n var nextFormState = calculateNextFormState();\n if (nextFormState !== lastFormState) {\n state.lastFormState = nextFormState;\n notify(state.subscribers, nextFormState, lastFormState, filterFormState);\n }\n }\n notifying = false;\n if (scheduleNotification) {\n scheduleNotification = false;\n notifyFormListeners();\n }\n }\n };\n var beforeSubmit = function beforeSubmit() {\n return Object.keys(state.fields).some(function (name) {\n return state.fields[name].beforeSubmit && state.fields[name].beforeSubmit() === false;\n });\n };\n var afterSubmit = function afterSubmit() {\n return Object.keys(state.fields).forEach(function (name) {\n return state.fields[name].afterSubmit && state.fields[name].afterSubmit();\n });\n };\n var resetModifiedAfterSubmit = function resetModifiedAfterSubmit() {\n return Object.keys(state.fields).forEach(function (key) {\n return state.fields[key].modifiedSinceLastSubmit = false;\n });\n };\n\n // generate initial errors\n runValidation(undefined, function () {\n notifyFormListeners();\n });\n var api = {\n batch: function batch(fn) {\n inBatch++;\n fn();\n inBatch--;\n notifyFieldListeners();\n notifyFormListeners();\n },\n blur: function blur(name) {\n var fields = state.fields,\n formState = state.formState;\n var previous = fields[name];\n if (previous) {\n // can only blur registered fields\n delete formState.active;\n fields[name] = _extends({}, previous, {\n active: false,\n touched: true\n });\n if (validateOnBlur) {\n runValidation(name, function () {\n notifyFieldListeners();\n notifyFormListeners();\n });\n } else {\n notifyFieldListeners();\n notifyFormListeners();\n }\n }\n },\n change: function change(name, value) {\n var fields = state.fields,\n formState = state.formState;\n if (getIn(formState.values, name) !== value) {\n changeValue(state, name, function () {\n return value;\n });\n var previous = fields[name];\n if (previous) {\n // only track modified for registered fields\n fields[name] = _extends({}, previous, {\n modified: true,\n modifiedSinceLastSubmit: !!formState.lastSubmittedValues\n });\n }\n if (validateOnBlur) {\n notifyFieldListeners();\n notifyFormListeners();\n } else {\n runValidation(name, function () {\n notifyFieldListeners();\n notifyFormListeners();\n });\n }\n }\n },\n get destroyOnUnregister() {\n return !!destroyOnUnregister;\n },\n set destroyOnUnregister(value) {\n destroyOnUnregister = value;\n },\n focus: function focus(name) {\n var field = state.fields[name];\n if (field && !field.active) {\n state.formState.active = name;\n field.active = true;\n field.visited = true;\n notifyFieldListeners();\n notifyFormListeners();\n }\n },\n mutators: mutatorsApi,\n getFieldState: function getFieldState(name) {\n var field = state.fields[name];\n return field && field.lastFieldState;\n },\n getRegisteredFields: function getRegisteredFields() {\n return Object.keys(state.fields);\n },\n getState: function getState() {\n return calculateNextFormState();\n },\n initialize: function initialize(data) {\n var fields = state.fields,\n formState = state.formState;\n var safeFields = _extends({}, fields);\n var values = typeof data === \"function\" ? data(formState.values) : data;\n if (!keepDirtyOnReinitialize) {\n formState.values = values;\n }\n /**\n * Hello, inquisitive code reader! Thanks for taking the time to dig in!\n *\n * The following code is the way it is to allow for non-registered deep\n * field values to be set via initialize()\n */\n\n // save dirty values\n var savedDirtyValues = keepDirtyOnReinitialize ? Object.keys(safeFields).reduce(function (result, key) {\n var field = safeFields[key];\n var pristine = field.isEqual(getIn(formState.values, key), getIn(formState.initialValues || {}, key));\n if (!pristine) {\n result[key] = getIn(formState.values, key);\n }\n return result;\n }, {}) : {};\n // update initalValues and values\n formState.initialValues = values;\n formState.values = values;\n // restore the dirty values\n Object.keys(savedDirtyValues).forEach(function (key) {\n formState.values = setIn(formState.values, key, savedDirtyValues[key]) || {};\n });\n runValidation(undefined, function () {\n notifyFieldListeners();\n notifyFormListeners();\n });\n },\n isValidationPaused: function isValidationPaused() {\n return validationPaused;\n },\n pauseValidation: function pauseValidation(preventNotification) {\n if (preventNotification === void 0) {\n preventNotification = true;\n }\n validationPaused = true;\n preventNotificationWhileValidationPaused = preventNotification;\n },\n registerField: function registerField(name, subscriber, subscription, fieldConfig) {\n if (subscription === void 0) {\n subscription = {};\n }\n if (!state.fieldSubscribers[name]) {\n state.fieldSubscribers[name] = {\n index: 0,\n entries: {}\n };\n }\n var index = state.fieldSubscribers[name].index++;\n\n // save field subscriber callback\n state.fieldSubscribers[name].entries[index] = {\n subscriber: memoize(subscriber),\n subscription: subscription,\n notified: false\n };\n\n // create initial field state if not exists\n var field = state.fields[name] || {\n active: false,\n afterSubmit: fieldConfig && fieldConfig.afterSubmit,\n beforeSubmit: fieldConfig && fieldConfig.beforeSubmit,\n data: fieldConfig && fieldConfig.data || {},\n isEqual: fieldConfig && fieldConfig.isEqual || tripleEquals,\n lastFieldState: undefined,\n modified: false,\n modifiedSinceLastSubmit: false,\n name: name,\n touched: false,\n valid: true,\n validateFields: fieldConfig && fieldConfig.validateFields,\n validators: {},\n validating: false,\n visited: false\n };\n // Mutators can create a field in order to keep the field states\n // We must update this field when registerField is called afterwards\n field.blur = field.blur || function () {\n return api.blur(name);\n };\n field.change = field.change || function (value) {\n return api.change(name, value);\n };\n field.focus = field.focus || function () {\n return api.focus(name);\n };\n state.fields[name] = field;\n var haveValidator = false;\n var silent = fieldConfig && fieldConfig.silent;\n var notify = function notify() {\n if (silent && state.fields[name]) {\n notifyFieldListeners(name);\n } else {\n notifyFormListeners();\n notifyFieldListeners();\n }\n };\n if (fieldConfig) {\n haveValidator = !!(fieldConfig.getValidator && fieldConfig.getValidator());\n if (fieldConfig.getValidator) {\n state.fields[name].validators[index] = fieldConfig.getValidator;\n }\n var noValueInFormState = getIn(state.formState.values, name) === undefined;\n if (fieldConfig.initialValue !== undefined && (noValueInFormState || getIn(state.formState.values, name) === getIn(state.formState.initialValues, name))\n // only initialize if we don't yet have any value for this field\n ) {\n state.formState.initialValues = setIn(state.formState.initialValues || {}, name, fieldConfig.initialValue);\n state.formState.values = setIn(state.formState.values, name, fieldConfig.initialValue);\n runValidation(undefined, notify);\n }\n\n // only use defaultValue if we don't yet have any value for this field\n if (fieldConfig.defaultValue !== undefined && fieldConfig.initialValue === undefined && getIn(state.formState.initialValues, name) === undefined && noValueInFormState) {\n state.formState.values = setIn(state.formState.values, name, fieldConfig.defaultValue);\n }\n }\n if (haveValidator) {\n runValidation(undefined, notify);\n } else {\n notify();\n }\n return function () {\n var validatorRemoved = false;\n // istanbul ignore next\n if (state.fields[name]) {\n // state.fields[name] may have been removed by a mutator\n validatorRemoved = !!(state.fields[name].validators[index] && state.fields[name].validators[index]());\n delete state.fields[name].validators[index];\n }\n var hasFieldSubscribers = !!state.fieldSubscribers[name];\n if (hasFieldSubscribers) {\n // state.fieldSubscribers[name] may have been removed by a mutator\n delete state.fieldSubscribers[name].entries[index];\n }\n var lastOne = hasFieldSubscribers && !Object.keys(state.fieldSubscribers[name].entries).length;\n if (lastOne) {\n delete state.fieldSubscribers[name];\n delete state.fields[name];\n if (validatorRemoved) {\n state.formState.errors = setIn(state.formState.errors, name, undefined) || {};\n }\n if (destroyOnUnregister) {\n state.formState.values = setIn(state.formState.values, name, undefined, true) || {};\n }\n }\n if (!silent) {\n if (validatorRemoved) {\n runValidation(undefined, function () {\n notifyFormListeners();\n notifyFieldListeners();\n });\n } else if (lastOne) {\n // values or errors may have changed\n notifyFormListeners();\n }\n }\n };\n },\n reset: function reset(initialValues) {\n if (initialValues === void 0) {\n initialValues = state.formState.initialValues;\n }\n if (state.formState.submitting) {\n state.formState.resetWhileSubmitting = true;\n }\n state.formState.submitFailed = false;\n state.formState.submitSucceeded = false;\n delete state.formState.submitError;\n delete state.formState.submitErrors;\n delete state.formState.lastSubmittedValues;\n api.initialize(initialValues || {});\n },\n /**\n * Resets all field flags (e.g. touched, visited, etc.) to their initial state\n */\n resetFieldState: function resetFieldState(name) {\n state.fields[name] = _extends({}, state.fields[name], {\n active: false,\n lastFieldState: undefined,\n modified: false,\n touched: false,\n valid: true,\n validating: false,\n visited: false\n });\n runValidation(undefined, function () {\n notifyFieldListeners();\n notifyFormListeners();\n });\n },\n /**\n * Returns the form to a clean slate; that is:\n * - Clear all values\n * - Resets all fields to their initial state\n */\n restart: function restart(initialValues) {\n if (initialValues === void 0) {\n initialValues = state.formState.initialValues;\n }\n api.batch(function () {\n for (var name in state.fields) {\n api.resetFieldState(name);\n state.fields[name] = _extends({}, state.fields[name], {\n active: false,\n lastFieldState: undefined,\n modified: false,\n modifiedSinceLastSubmit: false,\n touched: false,\n valid: true,\n validating: false,\n visited: false\n });\n }\n api.reset(initialValues);\n });\n },\n resumeValidation: function resumeValidation() {\n validationPaused = false;\n preventNotificationWhileValidationPaused = false;\n if (validationBlocked) {\n // validation was attempted while it was paused, so run it now\n runValidation(undefined, function () {\n notifyFieldListeners();\n notifyFormListeners();\n });\n }\n validationBlocked = false;\n },\n setConfig: function setConfig(name, value) {\n switch (name) {\n case \"debug\":\n debug = value;\n break;\n case \"destroyOnUnregister\":\n destroyOnUnregister = value;\n break;\n case \"initialValues\":\n api.initialize(value);\n break;\n case \"keepDirtyOnReinitialize\":\n keepDirtyOnReinitialize = value;\n break;\n case \"mutators\":\n mutators = value;\n if (value) {\n Object.keys(mutatorsApi).forEach(function (key) {\n if (!(key in value)) {\n delete mutatorsApi[key];\n }\n });\n Object.keys(value).forEach(function (key) {\n mutatorsApi[key] = getMutatorApi(key);\n });\n } else {\n Object.keys(mutatorsApi).forEach(function (key) {\n delete mutatorsApi[key];\n });\n }\n break;\n case \"onSubmit\":\n onSubmit = value;\n break;\n case \"validate\":\n validate = value;\n runValidation(undefined, function () {\n notifyFieldListeners();\n notifyFormListeners();\n });\n break;\n case \"validateOnBlur\":\n validateOnBlur = value;\n break;\n default:\n throw new Error(\"Unrecognised option \" + name);\n }\n },\n submit: function submit() {\n var formState = state.formState;\n if (formState.submitting) {\n return;\n }\n delete formState.submitErrors;\n delete formState.submitError;\n formState.lastSubmittedValues = _extends({}, formState.values);\n if (hasSyncErrors()) {\n markAllFieldsTouched();\n resetModifiedAfterSubmit();\n state.formState.submitFailed = true;\n notifyFormListeners();\n notifyFieldListeners();\n return; // no submit for you!!\n }\n\n var asyncValidationPromisesKeys = Object.keys(asyncValidationPromises);\n if (asyncValidationPromisesKeys.length) {\n // still waiting on async validation to complete...\n Promise.all(asyncValidationPromisesKeys.map(function (key) {\n return asyncValidationPromises[Number(key)];\n })).then(api.submit, console.error);\n return;\n }\n var submitIsBlocked = beforeSubmit();\n if (submitIsBlocked) {\n return;\n }\n var resolvePromise;\n var completeCalled = false;\n var complete = function complete(errors) {\n formState.submitting = false;\n var resetWhileSubmitting = formState.resetWhileSubmitting;\n if (resetWhileSubmitting) {\n formState.resetWhileSubmitting = false;\n }\n if (errors && hasAnyError(errors)) {\n formState.submitFailed = true;\n formState.submitSucceeded = false;\n formState.submitErrors = errors;\n formState.submitError = errors[FORM_ERROR];\n markAllFieldsTouched();\n } else {\n if (!resetWhileSubmitting) {\n formState.submitFailed = false;\n formState.submitSucceeded = true;\n }\n afterSubmit();\n }\n notifyFormListeners();\n notifyFieldListeners();\n completeCalled = true;\n if (resolvePromise) {\n resolvePromise(errors);\n }\n return errors;\n };\n formState.submitting = true;\n formState.submitFailed = false;\n formState.submitSucceeded = false;\n formState.lastSubmittedValues = _extends({}, formState.values);\n resetModifiedAfterSubmit();\n\n // onSubmit is either sync, callback or async with a Promise\n var result = onSubmit(formState.values, api, complete);\n if (!completeCalled) {\n if (result && isPromise(result)) {\n // onSubmit is async with a Promise\n notifyFormListeners(); // let everyone know we are submitting\n notifyFieldListeners(); // notify fields also\n return result.then(complete, function (error) {\n complete();\n throw error;\n });\n } else if (onSubmit.length >= 3) {\n // must be async, so we should return a Promise\n notifyFormListeners(); // let everyone know we are submitting\n notifyFieldListeners(); // notify fields also\n return new Promise(function (resolve) {\n resolvePromise = resolve;\n });\n } else {\n // onSubmit is sync\n complete(result);\n }\n }\n },\n subscribe: function subscribe(subscriber, subscription) {\n if (!subscriber) {\n throw new Error(\"No callback given.\");\n }\n if (!subscription) {\n throw new Error(\"No subscription provided. What values do you want to listen to?\");\n }\n var memoized = memoize(subscriber);\n var subscribers = state.subscribers;\n var index = subscribers.index++;\n subscribers.entries[index] = {\n subscriber: memoized,\n subscription: subscription,\n notified: false\n };\n var nextFormState = calculateNextFormState();\n notifySubscriber(memoized, subscription, nextFormState, nextFormState, filterFormState, true);\n return function () {\n delete subscribers.entries[index];\n };\n }\n };\n return api;\n}\n\nexport { ARRAY_ERROR, FORM_ERROR, configOptions, createForm, fieldSubscriptionItems, formSubscriptionItems, getIn, setIn, version };\n","(function (global, factory) {\n typeof exports === 'object' && typeof module !== 'undefined' ? module.exports = factory() :\n typeof define === 'function' && define.amd ? define(factory) :\n (global.map = factory());\n}(this, (function () { 'use strict';\n\n // a timeout function that can be flushed and cancelled\n var flushable = function flushable(onComplete, delay) {\n var timeoutId = setTimeout(function () {\n timeoutId = null;\n onComplete(false);\n }, delay);\n\n var clearTimer = function clearTimer() {\n if (timeoutId) {\n clearTimeout(timeoutId);\n timeoutId = null;\n }\n };\n\n return {\n cancel: clearTimer,\n flush: function flush() {\n if (!timeoutId) {\n return;\n }\n\n clearTimer();\n onComplete(true);\n },\n pending: function pending() {\n return Boolean(timeoutId);\n }\n };\n };\n\n return flushable;\n\n})));\n","'use strict';\n\nvar isArray = Array.isArray;\nvar keyList = Object.keys;\nvar hasProp = Object.prototype.hasOwnProperty;\nvar hasElementType = typeof Element !== 'undefined';\n\nfunction equal(a, b) {\n // fast-deep-equal index.js 2.0.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n var arrA = isArray(a)\n , arrB = isArray(b)\n , i\n , length\n , key;\n\n if (arrA && arrB) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n if (arrA != arrB) return false;\n\n var dateA = a instanceof Date\n , dateB = b instanceof Date;\n if (dateA != dateB) return false;\n if (dateA && dateB) return a.getTime() == b.getTime();\n\n var regexpA = a instanceof RegExp\n , regexpB = b instanceof RegExp;\n if (regexpA != regexpB) return false;\n if (regexpA && regexpB) return a.toString() == b.toString();\n\n var keys = keyList(a);\n length = keys.length;\n\n if (length !== keyList(b).length)\n return false;\n\n for (i = length; i-- !== 0;)\n if (!hasProp.call(b, keys[i])) return false;\n // end fast-deep-equal\n\n // start react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element && b instanceof Element)\n return a === b;\n\n // custom handling for React\n for (i = length; i-- !== 0;) {\n key = keys[i];\n if (key === '_owner' && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner.\n // _owner contains circular references\n // and is not needed when comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of a react element\n continue;\n } else {\n // all other properties should be traversed as usual\n if (!equal(a[key], b[key])) return false;\n }\n }\n // end react-fast-compare\n\n // fast-deep-equal index.js 2.0.1\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function exportedEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message && error.message.match(/stack|recursion/i)) || (error.number === -2146828260)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('Warning: react-fast-compare does not handle circular references.', error.name, error.message);\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","// @flow\n'use strict';\n\nvar key = '__global_unique_id__';\n\nmodule.exports = function() {\n return global[key] = (global[key] || 0) + 1;\n};\n","export default function _extends() {\n _extends = Object.assign ? Object.assign.bind() : function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n return target;\n };\n return _extends.apply(this, arguments);\n}","import _extends from '@babel/runtime/helpers/esm/extends';\n\n/**\r\n * Actions represent the type of change to a location value.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#action\r\n */\nvar Action;\n\n(function (Action) {\n /**\r\n * A POP indicates a change to an arbitrary index in the history stack, such\r\n * as a back or forward navigation. It does not describe the direction of the\r\n * navigation, only that the current index changed.\r\n *\r\n * Note: This is the default action for newly created history objects.\r\n */\n Action[\"Pop\"] = \"POP\";\n /**\r\n * A PUSH indicates a new entry being added to the history stack, such as when\r\n * a link is clicked and a new page loads. When this happens, all subsequent\r\n * entries in the stack are lost.\r\n */\n\n Action[\"Push\"] = \"PUSH\";\n /**\r\n * A REPLACE indicates the entry at the current index in the history stack\r\n * being replaced by a new one.\r\n */\n\n Action[\"Replace\"] = \"REPLACE\";\n})(Action || (Action = {}));\n\nvar readOnly = process.env.NODE_ENV !== \"production\" ? function (obj) {\n return Object.freeze(obj);\n} : function (obj) {\n return obj;\n};\n\nfunction warning(cond, message) {\n if (!cond) {\n // eslint-disable-next-line no-console\n if (typeof console !== 'undefined') console.warn(message);\n\n try {\n // Welcome to debugging history!\n //\n // This error is thrown as a convenience so you can more easily\n // find the source for a warning that appears in the console by\n // enabling \"pause on exceptions\" in your JavaScript debugger.\n throw new Error(message); // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\n\nvar BeforeUnloadEventType = 'beforeunload';\nvar HashChangeEventType = 'hashchange';\nvar PopStateEventType = 'popstate';\n/**\r\n * Browser history stores the location in regular URLs. This is the standard for\r\n * most web apps, but it requires some configuration on the server to ensure you\r\n * serve the same app at multiple URLs.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createbrowserhistory\r\n */\n\nfunction createBrowserHistory(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options = options,\n _options$window = _options.window,\n window = _options$window === void 0 ? document.defaultView : _options$window;\n var globalHistory = window.history;\n\n function getIndexAndLocation() {\n var _window$location = window.location,\n pathname = _window$location.pathname,\n search = _window$location.search,\n hash = _window$location.hash;\n var state = globalHistory.state || {};\n return [state.idx, readOnly({\n pathname: pathname,\n search: search,\n hash: hash,\n state: state.usr || null,\n key: state.key || 'default'\n })];\n }\n\n var blockedPopTx = null;\n\n function handlePop() {\n if (blockedPopTx) {\n blockers.call(blockedPopTx);\n blockedPopTx = null;\n } else {\n var nextAction = Action.Pop;\n\n var _getIndexAndLocation = getIndexAndLocation(),\n nextIndex = _getIndexAndLocation[0],\n nextLocation = _getIndexAndLocation[1];\n\n if (blockers.length) {\n if (nextIndex != null) {\n var delta = index - nextIndex;\n\n if (delta) {\n // Revert the POP\n blockedPopTx = {\n action: nextAction,\n location: nextLocation,\n retry: function retry() {\n go(delta * -1);\n }\n };\n go(delta);\n }\n } else {\n // Trying to POP to a location with no index. We did not create\n // this location, so we can't effectively block the navigation.\n process.env.NODE_ENV !== \"production\" ? warning(false, // TODO: Write up a doc that explains our blocking strategy in\n // detail and link to it here so people can understand better what\n // is going on and how to avoid it.\n \"You are trying to block a POP navigation to a location that was not \" + \"created by the history library. The block will fail silently in \" + \"production, but in general you should do all navigation with the \" + \"history library (instead of using window.history.pushState directly) \" + \"to avoid this situation.\") : void 0;\n }\n } else {\n applyTx(nextAction);\n }\n }\n }\n\n window.addEventListener(PopStateEventType, handlePop);\n var action = Action.Pop;\n\n var _getIndexAndLocation2 = getIndexAndLocation(),\n index = _getIndexAndLocation2[0],\n location = _getIndexAndLocation2[1];\n\n var listeners = createEvents();\n var blockers = createEvents();\n\n if (index == null) {\n index = 0;\n globalHistory.replaceState(_extends({}, globalHistory.state, {\n idx: index\n }), '');\n }\n\n function createHref(to) {\n return typeof to === 'string' ? to : createPath(to);\n } // state defaults to `null` because `window.history.state` does\n\n\n function getNextLocation(to, state) {\n if (state === void 0) {\n state = null;\n }\n\n return readOnly(_extends({\n pathname: location.pathname,\n hash: '',\n search: ''\n }, typeof to === 'string' ? parsePath(to) : to, {\n state: state,\n key: createKey()\n }));\n }\n\n function getHistoryStateAndUrl(nextLocation, index) {\n return [{\n usr: nextLocation.state,\n key: nextLocation.key,\n idx: index\n }, createHref(nextLocation)];\n }\n\n function allowTx(action, location, retry) {\n return !blockers.length || (blockers.call({\n action: action,\n location: location,\n retry: retry\n }), false);\n }\n\n function applyTx(nextAction) {\n action = nextAction;\n\n var _getIndexAndLocation3 = getIndexAndLocation();\n\n index = _getIndexAndLocation3[0];\n location = _getIndexAndLocation3[1];\n listeners.call({\n action: action,\n location: location\n });\n }\n\n function push(to, state) {\n var nextAction = Action.Push;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n push(to, state);\n }\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr = getHistoryStateAndUrl(nextLocation, index + 1),\n historyState = _getHistoryStateAndUr[0],\n url = _getHistoryStateAndUr[1]; // TODO: Support forced reloading\n // try...catch because iOS limits us to 100 pushState calls :/\n\n\n try {\n globalHistory.pushState(historyState, '', url);\n } catch (error) {\n // They are going to lose state here, but there is no real\n // way to warn them about it since the page will refresh...\n window.location.assign(url);\n }\n\n applyTx(nextAction);\n }\n }\n\n function replace(to, state) {\n var nextAction = Action.Replace;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n replace(to, state);\n }\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr2 = getHistoryStateAndUrl(nextLocation, index),\n historyState = _getHistoryStateAndUr2[0],\n url = _getHistoryStateAndUr2[1]; // TODO: Support forced reloading\n\n\n globalHistory.replaceState(historyState, '', url);\n applyTx(nextAction);\n }\n }\n\n function go(delta) {\n globalHistory.go(delta);\n }\n\n var history = {\n get action() {\n return action;\n },\n\n get location() {\n return location;\n },\n\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n back: function back() {\n go(-1);\n },\n forward: function forward() {\n go(1);\n },\n listen: function listen(listener) {\n return listeners.push(listener);\n },\n block: function block(blocker) {\n var unblock = blockers.push(blocker);\n\n if (blockers.length === 1) {\n window.addEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n\n return function () {\n unblock(); // Remove the beforeunload listener so the document may\n // still be salvageable in the pagehide event.\n // See https://html.spec.whatwg.org/#unloading-documents\n\n if (!blockers.length) {\n window.removeEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n };\n }\n };\n return history;\n}\n/**\r\n * Hash history stores the location in window.location.hash. This makes it ideal\r\n * for situations where you don't want to send the location to the server for\r\n * some reason, either because you do cannot configure it or the URL space is\r\n * reserved for something else.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createhashhistory\r\n */\n\nfunction createHashHistory(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options2 = options,\n _options2$window = _options2.window,\n window = _options2$window === void 0 ? document.defaultView : _options2$window;\n var globalHistory = window.history;\n\n function getIndexAndLocation() {\n var _parsePath = parsePath(window.location.hash.substr(1)),\n _parsePath$pathname = _parsePath.pathname,\n pathname = _parsePath$pathname === void 0 ? '/' : _parsePath$pathname,\n _parsePath$search = _parsePath.search,\n search = _parsePath$search === void 0 ? '' : _parsePath$search,\n _parsePath$hash = _parsePath.hash,\n hash = _parsePath$hash === void 0 ? '' : _parsePath$hash;\n\n var state = globalHistory.state || {};\n return [state.idx, readOnly({\n pathname: pathname,\n search: search,\n hash: hash,\n state: state.usr || null,\n key: state.key || 'default'\n })];\n }\n\n var blockedPopTx = null;\n\n function handlePop() {\n if (blockedPopTx) {\n blockers.call(blockedPopTx);\n blockedPopTx = null;\n } else {\n var nextAction = Action.Pop;\n\n var _getIndexAndLocation4 = getIndexAndLocation(),\n nextIndex = _getIndexAndLocation4[0],\n nextLocation = _getIndexAndLocation4[1];\n\n if (blockers.length) {\n if (nextIndex != null) {\n var delta = index - nextIndex;\n\n if (delta) {\n // Revert the POP\n blockedPopTx = {\n action: nextAction,\n location: nextLocation,\n retry: function retry() {\n go(delta * -1);\n }\n };\n go(delta);\n }\n } else {\n // Trying to POP to a location with no index. We did not create\n // this location, so we can't effectively block the navigation.\n process.env.NODE_ENV !== \"production\" ? warning(false, // TODO: Write up a doc that explains our blocking strategy in\n // detail and link to it here so people can understand better\n // what is going on and how to avoid it.\n \"You are trying to block a POP navigation to a location that was not \" + \"created by the history library. The block will fail silently in \" + \"production, but in general you should do all navigation with the \" + \"history library (instead of using window.history.pushState directly) \" + \"to avoid this situation.\") : void 0;\n }\n } else {\n applyTx(nextAction);\n }\n }\n }\n\n window.addEventListener(PopStateEventType, handlePop); // popstate does not fire on hashchange in IE 11 and old (trident) Edge\n // https://developer.mozilla.org/de/docs/Web/API/Window/popstate_event\n\n window.addEventListener(HashChangeEventType, function () {\n var _getIndexAndLocation5 = getIndexAndLocation(),\n nextLocation = _getIndexAndLocation5[1]; // Ignore extraneous hashchange events.\n\n\n if (createPath(nextLocation) !== createPath(location)) {\n handlePop();\n }\n });\n var action = Action.Pop;\n\n var _getIndexAndLocation6 = getIndexAndLocation(),\n index = _getIndexAndLocation6[0],\n location = _getIndexAndLocation6[1];\n\n var listeners = createEvents();\n var blockers = createEvents();\n\n if (index == null) {\n index = 0;\n globalHistory.replaceState(_extends({}, globalHistory.state, {\n idx: index\n }), '');\n }\n\n function getBaseHref() {\n var base = document.querySelector('base');\n var href = '';\n\n if (base && base.getAttribute('href')) {\n var url = window.location.href;\n var hashIndex = url.indexOf('#');\n href = hashIndex === -1 ? url : url.slice(0, hashIndex);\n }\n\n return href;\n }\n\n function createHref(to) {\n return getBaseHref() + '#' + (typeof to === 'string' ? to : createPath(to));\n }\n\n function getNextLocation(to, state) {\n if (state === void 0) {\n state = null;\n }\n\n return readOnly(_extends({\n pathname: location.pathname,\n hash: '',\n search: ''\n }, typeof to === 'string' ? parsePath(to) : to, {\n state: state,\n key: createKey()\n }));\n }\n\n function getHistoryStateAndUrl(nextLocation, index) {\n return [{\n usr: nextLocation.state,\n key: nextLocation.key,\n idx: index\n }, createHref(nextLocation)];\n }\n\n function allowTx(action, location, retry) {\n return !blockers.length || (blockers.call({\n action: action,\n location: location,\n retry: retry\n }), false);\n }\n\n function applyTx(nextAction) {\n action = nextAction;\n\n var _getIndexAndLocation7 = getIndexAndLocation();\n\n index = _getIndexAndLocation7[0];\n location = _getIndexAndLocation7[1];\n listeners.call({\n action: action,\n location: location\n });\n }\n\n function push(to, state) {\n var nextAction = Action.Push;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n push(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(nextLocation.pathname.charAt(0) === '/', \"Relative pathnames are not supported in hash history.push(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr3 = getHistoryStateAndUrl(nextLocation, index + 1),\n historyState = _getHistoryStateAndUr3[0],\n url = _getHistoryStateAndUr3[1]; // TODO: Support forced reloading\n // try...catch because iOS limits us to 100 pushState calls :/\n\n\n try {\n globalHistory.pushState(historyState, '', url);\n } catch (error) {\n // They are going to lose state here, but there is no real\n // way to warn them about it since the page will refresh...\n window.location.assign(url);\n }\n\n applyTx(nextAction);\n }\n }\n\n function replace(to, state) {\n var nextAction = Action.Replace;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n replace(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(nextLocation.pathname.charAt(0) === '/', \"Relative pathnames are not supported in hash history.replace(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n var _getHistoryStateAndUr4 = getHistoryStateAndUrl(nextLocation, index),\n historyState = _getHistoryStateAndUr4[0],\n url = _getHistoryStateAndUr4[1]; // TODO: Support forced reloading\n\n\n globalHistory.replaceState(historyState, '', url);\n applyTx(nextAction);\n }\n }\n\n function go(delta) {\n globalHistory.go(delta);\n }\n\n var history = {\n get action() {\n return action;\n },\n\n get location() {\n return location;\n },\n\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n back: function back() {\n go(-1);\n },\n forward: function forward() {\n go(1);\n },\n listen: function listen(listener) {\n return listeners.push(listener);\n },\n block: function block(blocker) {\n var unblock = blockers.push(blocker);\n\n if (blockers.length === 1) {\n window.addEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n\n return function () {\n unblock(); // Remove the beforeunload listener so the document may\n // still be salvageable in the pagehide event.\n // See https://html.spec.whatwg.org/#unloading-documents\n\n if (!blockers.length) {\n window.removeEventListener(BeforeUnloadEventType, promptBeforeUnload);\n }\n };\n }\n };\n return history;\n}\n/**\r\n * Memory history stores the current location in memory. It is designed for use\r\n * in stateful non-browser environments like tests and React Native.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#creatememoryhistory\r\n */\n\nfunction createMemoryHistory(options) {\n if (options === void 0) {\n options = {};\n }\n\n var _options3 = options,\n _options3$initialEntr = _options3.initialEntries,\n initialEntries = _options3$initialEntr === void 0 ? ['/'] : _options3$initialEntr,\n initialIndex = _options3.initialIndex;\n var entries = initialEntries.map(function (entry) {\n var location = readOnly(_extends({\n pathname: '/',\n search: '',\n hash: '',\n state: null,\n key: createKey()\n }, typeof entry === 'string' ? parsePath(entry) : entry));\n process.env.NODE_ENV !== \"production\" ? warning(location.pathname.charAt(0) === '/', \"Relative pathnames are not supported in createMemoryHistory({ initialEntries }) (invalid entry: \" + JSON.stringify(entry) + \")\") : void 0;\n return location;\n });\n var index = clamp(initialIndex == null ? entries.length - 1 : initialIndex, 0, entries.length - 1);\n var action = Action.Pop;\n var location = entries[index];\n var listeners = createEvents();\n var blockers = createEvents();\n\n function createHref(to) {\n return typeof to === 'string' ? to : createPath(to);\n }\n\n function getNextLocation(to, state) {\n if (state === void 0) {\n state = null;\n }\n\n return readOnly(_extends({\n pathname: location.pathname,\n search: '',\n hash: ''\n }, typeof to === 'string' ? parsePath(to) : to, {\n state: state,\n key: createKey()\n }));\n }\n\n function allowTx(action, location, retry) {\n return !blockers.length || (blockers.call({\n action: action,\n location: location,\n retry: retry\n }), false);\n }\n\n function applyTx(nextAction, nextLocation) {\n action = nextAction;\n location = nextLocation;\n listeners.call({\n action: action,\n location: location\n });\n }\n\n function push(to, state) {\n var nextAction = Action.Push;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n push(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(location.pathname.charAt(0) === '/', \"Relative pathnames are not supported in memory history.push(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n index += 1;\n entries.splice(index, entries.length, nextLocation);\n applyTx(nextAction, nextLocation);\n }\n }\n\n function replace(to, state) {\n var nextAction = Action.Replace;\n var nextLocation = getNextLocation(to, state);\n\n function retry() {\n replace(to, state);\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(location.pathname.charAt(0) === '/', \"Relative pathnames are not supported in memory history.replace(\" + JSON.stringify(to) + \")\") : void 0;\n\n if (allowTx(nextAction, nextLocation, retry)) {\n entries[index] = nextLocation;\n applyTx(nextAction, nextLocation);\n }\n }\n\n function go(delta) {\n var nextIndex = clamp(index + delta, 0, entries.length - 1);\n var nextAction = Action.Pop;\n var nextLocation = entries[nextIndex];\n\n function retry() {\n go(delta);\n }\n\n if (allowTx(nextAction, nextLocation, retry)) {\n index = nextIndex;\n applyTx(nextAction, nextLocation);\n }\n }\n\n var history = {\n get index() {\n return index;\n },\n\n get action() {\n return action;\n },\n\n get location() {\n return location;\n },\n\n createHref: createHref,\n push: push,\n replace: replace,\n go: go,\n back: function back() {\n go(-1);\n },\n forward: function forward() {\n go(1);\n },\n listen: function listen(listener) {\n return listeners.push(listener);\n },\n block: function block(blocker) {\n return blockers.push(blocker);\n }\n };\n return history;\n} ////////////////////////////////////////////////////////////////////////////////\n// UTILS\n////////////////////////////////////////////////////////////////////////////////\n\nfunction clamp(n, lowerBound, upperBound) {\n return Math.min(Math.max(n, lowerBound), upperBound);\n}\n\nfunction promptBeforeUnload(event) {\n // Cancel the event.\n event.preventDefault(); // Chrome (and legacy IE) requires returnValue to be set.\n\n event.returnValue = '';\n}\n\nfunction createEvents() {\n var handlers = [];\n return {\n get length() {\n return handlers.length;\n },\n\n push: function push(fn) {\n handlers.push(fn);\n return function () {\n handlers = handlers.filter(function (handler) {\n return handler !== fn;\n });\n };\n },\n call: function call(arg) {\n handlers.forEach(function (fn) {\n return fn && fn(arg);\n });\n }\n };\n}\n\nfunction createKey() {\n return Math.random().toString(36).substr(2, 8);\n}\n/**\r\n * Creates a string URL path from the given pathname, search, and hash components.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#createpath\r\n */\n\n\nfunction createPath(_ref) {\n var _ref$pathname = _ref.pathname,\n pathname = _ref$pathname === void 0 ? '/' : _ref$pathname,\n _ref$search = _ref.search,\n search = _ref$search === void 0 ? '' : _ref$search,\n _ref$hash = _ref.hash,\n hash = _ref$hash === void 0 ? '' : _ref$hash;\n if (search && search !== '?') pathname += search.charAt(0) === '?' ? search : '?' + search;\n if (hash && hash !== '#') pathname += hash.charAt(0) === '#' ? hash : '#' + hash;\n return pathname;\n}\n/**\r\n * Parses a string URL path into its separate pathname, search, and hash components.\r\n *\r\n * @see https://github.com/remix-run/history/tree/main/docs/api-reference.md#parsepath\r\n */\n\nfunction parsePath(path) {\n var parsedPath = {};\n\n if (path) {\n var hashIndex = path.indexOf('#');\n\n if (hashIndex >= 0) {\n parsedPath.hash = path.substr(hashIndex);\n path = path.substr(0, hashIndex);\n }\n\n var searchIndex = path.indexOf('?');\n\n if (searchIndex >= 0) {\n parsedPath.search = path.substr(searchIndex);\n path = path.substr(0, searchIndex);\n }\n\n if (path) {\n parsedPath.pathname = path;\n }\n }\n\n return parsedPath;\n}\n\nexport { Action, createBrowserHistory, createHashHistory, createMemoryHistory, createPath, parsePath };\n//# sourceMappingURL=index.js.map\n","// the whatwg-fetch polyfill installs the fetch() function\n// on the global object (window or self)\n//\n// Return that as the export for use in Webpack, Browserify etc.\nrequire('whatwg-fetch');\nmodule.exports = self.fetch.bind(self);\n","/**!\n * @fileOverview Kickass library to create and place poppers near their reference elements.\n * @version 1.16.1\n * @license\n * Copyright (c) 2016 Federico Zivolo and contributors\n *\n * Permission is hereby granted, free of charge, to any person obtaining a copy\n * of this software and associated documentation files (the \"Software\"), to deal\n * in the Software without restriction, including without limitation the rights\n * to use, copy, modify, merge, publish, distribute, sublicense, and/or sell\n * copies of the Software, and to permit persons to whom the Software is\n * furnished to do so, subject to the following conditions:\n *\n * The above copyright notice and this permission notice shall be included in all\n * copies or substantial portions of the Software.\n *\n * THE SOFTWARE IS PROVIDED \"AS IS\", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR\n * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,\n * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE\n * AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER\n * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,\n * OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE\n * SOFTWARE.\n */\nvar isBrowser = typeof window !== 'undefined' && typeof document !== 'undefined' && typeof navigator !== 'undefined';\n\nvar timeoutDuration = function () {\n var longerTimeoutBrowsers = ['Edge', 'Trident', 'Firefox'];\n for (var i = 0; i < longerTimeoutBrowsers.length; i += 1) {\n if (isBrowser && navigator.userAgent.indexOf(longerTimeoutBrowsers[i]) >= 0) {\n return 1;\n }\n }\n return 0;\n}();\n\nfunction microtaskDebounce(fn) {\n var called = false;\n return function () {\n if (called) {\n return;\n }\n called = true;\n window.Promise.resolve().then(function () {\n called = false;\n fn();\n });\n };\n}\n\nfunction taskDebounce(fn) {\n var scheduled = false;\n return function () {\n if (!scheduled) {\n scheduled = true;\n setTimeout(function () {\n scheduled = false;\n fn();\n }, timeoutDuration);\n }\n };\n}\n\nvar supportsMicroTasks = isBrowser && window.Promise;\n\n/**\n* Create a debounced version of a method, that's asynchronously deferred\n* but called in the minimum time possible.\n*\n* @method\n* @memberof Popper.Utils\n* @argument {Function} fn\n* @returns {Function}\n*/\nvar debounce = supportsMicroTasks ? microtaskDebounce : taskDebounce;\n\n/**\n * Check if the given variable is a function\n * @method\n * @memberof Popper.Utils\n * @argument {Any} functionToCheck - variable to check\n * @returns {Boolean} answer to: is a function?\n */\nfunction isFunction(functionToCheck) {\n var getType = {};\n return functionToCheck && getType.toString.call(functionToCheck) === '[object Function]';\n}\n\n/**\n * Get CSS computed property of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Eement} element\n * @argument {String} property\n */\nfunction getStyleComputedProperty(element, property) {\n if (element.nodeType !== 1) {\n return [];\n }\n // NOTE: 1 DOM access here\n var window = element.ownerDocument.defaultView;\n var css = window.getComputedStyle(element, null);\n return property ? css[property] : css;\n}\n\n/**\n * Returns the parentNode or the host of the element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} parent\n */\nfunction getParentNode(element) {\n if (element.nodeName === 'HTML') {\n return element;\n }\n return element.parentNode || element.host;\n}\n\n/**\n * Returns the scrolling parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} scroll parent\n */\nfunction getScrollParent(element) {\n // Return body, `getScroll` will take care to get the correct `scrollTop` from it\n if (!element) {\n return document.body;\n }\n\n switch (element.nodeName) {\n case 'HTML':\n case 'BODY':\n return element.ownerDocument.body;\n case '#document':\n return element.body;\n }\n\n // Firefox want us to check `-x` and `-y` variations as well\n\n var _getStyleComputedProp = getStyleComputedProperty(element),\n overflow = _getStyleComputedProp.overflow,\n overflowX = _getStyleComputedProp.overflowX,\n overflowY = _getStyleComputedProp.overflowY;\n\n if (/(auto|scroll|overlay)/.test(overflow + overflowY + overflowX)) {\n return element;\n }\n\n return getScrollParent(getParentNode(element));\n}\n\n/**\n * Returns the reference node of the reference object, or the reference object itself.\n * @method\n * @memberof Popper.Utils\n * @param {Element|Object} reference - the reference element (the popper will be relative to this)\n * @returns {Element} parent\n */\nfunction getReferenceNode(reference) {\n return reference && reference.referenceNode ? reference.referenceNode : reference;\n}\n\nvar isIE11 = isBrowser && !!(window.MSInputMethodContext && document.documentMode);\nvar isIE10 = isBrowser && /MSIE 10/.test(navigator.userAgent);\n\n/**\n * Determines if the browser is Internet Explorer\n * @method\n * @memberof Popper.Utils\n * @param {Number} version to check\n * @returns {Boolean} isIE\n */\nfunction isIE(version) {\n if (version === 11) {\n return isIE11;\n }\n if (version === 10) {\n return isIE10;\n }\n return isIE11 || isIE10;\n}\n\n/**\n * Returns the offset parent of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} offset parent\n */\nfunction getOffsetParent(element) {\n if (!element) {\n return document.documentElement;\n }\n\n var noOffsetParent = isIE(10) ? document.body : null;\n\n // NOTE: 1 DOM access here\n var offsetParent = element.offsetParent || null;\n // Skip hidden elements which don't have an offsetParent\n while (offsetParent === noOffsetParent && element.nextElementSibling) {\n offsetParent = (element = element.nextElementSibling).offsetParent;\n }\n\n var nodeName = offsetParent && offsetParent.nodeName;\n\n if (!nodeName || nodeName === 'BODY' || nodeName === 'HTML') {\n return element ? element.ownerDocument.documentElement : document.documentElement;\n }\n\n // .offsetParent will return the closest TH, TD or TABLE in case\n // no offsetParent is present, I hate this job...\n if (['TH', 'TD', 'TABLE'].indexOf(offsetParent.nodeName) !== -1 && getStyleComputedProperty(offsetParent, 'position') === 'static') {\n return getOffsetParent(offsetParent);\n }\n\n return offsetParent;\n}\n\nfunction isOffsetContainer(element) {\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY') {\n return false;\n }\n return nodeName === 'HTML' || getOffsetParent(element.firstElementChild) === element;\n}\n\n/**\n * Finds the root node (document, shadowDOM root) of the given element\n * @method\n * @memberof Popper.Utils\n * @argument {Element} node\n * @returns {Element} root node\n */\nfunction getRoot(node) {\n if (node.parentNode !== null) {\n return getRoot(node.parentNode);\n }\n\n return node;\n}\n\n/**\n * Finds the offset parent common to the two provided nodes\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element1\n * @argument {Element} element2\n * @returns {Element} common offset parent\n */\nfunction findCommonOffsetParent(element1, element2) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element1 || !element1.nodeType || !element2 || !element2.nodeType) {\n return document.documentElement;\n }\n\n // Here we make sure to give as \"start\" the element that comes first in the DOM\n var order = element1.compareDocumentPosition(element2) & Node.DOCUMENT_POSITION_FOLLOWING;\n var start = order ? element1 : element2;\n var end = order ? element2 : element1;\n\n // Get common ancestor container\n var range = document.createRange();\n range.setStart(start, 0);\n range.setEnd(end, 0);\n var commonAncestorContainer = range.commonAncestorContainer;\n\n // Both nodes are inside #document\n\n if (element1 !== commonAncestorContainer && element2 !== commonAncestorContainer || start.contains(end)) {\n if (isOffsetContainer(commonAncestorContainer)) {\n return commonAncestorContainer;\n }\n\n return getOffsetParent(commonAncestorContainer);\n }\n\n // one of the nodes is inside shadowDOM, find which one\n var element1root = getRoot(element1);\n if (element1root.host) {\n return findCommonOffsetParent(element1root.host, element2);\n } else {\n return findCommonOffsetParent(element1, getRoot(element2).host);\n }\n}\n\n/**\n * Gets the scroll value of the given element in the given side (top and left)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {String} side `top` or `left`\n * @returns {number} amount of scrolled pixels\n */\nfunction getScroll(element) {\n var side = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : 'top';\n\n var upperSide = side === 'top' ? 'scrollTop' : 'scrollLeft';\n var nodeName = element.nodeName;\n\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n var html = element.ownerDocument.documentElement;\n var scrollingElement = element.ownerDocument.scrollingElement || html;\n return scrollingElement[upperSide];\n }\n\n return element[upperSide];\n}\n\n/*\n * Sum or subtract the element scroll values (left and top) from a given rect object\n * @method\n * @memberof Popper.Utils\n * @param {Object} rect - Rect object you want to change\n * @param {HTMLElement} element - The element from the function reads the scroll values\n * @param {Boolean} subtract - set to true if you want to subtract the scroll values\n * @return {Object} rect - The modifier rect object\n */\nfunction includeScroll(rect, element) {\n var subtract = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n var modifier = subtract ? -1 : 1;\n rect.top += scrollTop * modifier;\n rect.bottom += scrollTop * modifier;\n rect.left += scrollLeft * modifier;\n rect.right += scrollLeft * modifier;\n return rect;\n}\n\n/*\n * Helper to detect borders of a given element\n * @method\n * @memberof Popper.Utils\n * @param {CSSStyleDeclaration} styles\n * Result of `getStyleComputedProperty` on the given element\n * @param {String} axis - `x` or `y`\n * @return {number} borders - The borders size of the given axis\n */\n\nfunction getBordersSize(styles, axis) {\n var sideA = axis === 'x' ? 'Left' : 'Top';\n var sideB = sideA === 'Left' ? 'Right' : 'Bottom';\n\n return parseFloat(styles['border' + sideA + 'Width']) + parseFloat(styles['border' + sideB + 'Width']);\n}\n\nfunction getSize(axis, body, html, computedStyle) {\n return Math.max(body['offset' + axis], body['scroll' + axis], html['client' + axis], html['offset' + axis], html['scroll' + axis], isIE(10) ? parseInt(html['offset' + axis]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Top' : 'Left')]) + parseInt(computedStyle['margin' + (axis === 'Height' ? 'Bottom' : 'Right')]) : 0);\n}\n\nfunction getWindowSizes(document) {\n var body = document.body;\n var html = document.documentElement;\n var computedStyle = isIE(10) && getComputedStyle(html);\n\n return {\n height: getSize('Height', body, html, computedStyle),\n width: getSize('Width', body, html, computedStyle)\n };\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\n\n\n\n\nvar defineProperty = function (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\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\n/**\n * Given element offsets, generate an output similar to getBoundingClientRect\n * @method\n * @memberof Popper.Utils\n * @argument {Object} offsets\n * @returns {Object} ClientRect like output\n */\nfunction getClientRect(offsets) {\n return _extends({}, offsets, {\n right: offsets.left + offsets.width,\n bottom: offsets.top + offsets.height\n });\n}\n\n/**\n * Get bounding client rect of given element\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} element\n * @return {Object} client rect\n */\nfunction getBoundingClientRect(element) {\n var rect = {};\n\n // IE10 10 FIX: Please, don't ask, the element isn't\n // considered in DOM in some circumstances...\n // This isn't reproducible in IE10 compatibility mode of IE11\n try {\n if (isIE(10)) {\n rect = element.getBoundingClientRect();\n var scrollTop = getScroll(element, 'top');\n var scrollLeft = getScroll(element, 'left');\n rect.top += scrollTop;\n rect.left += scrollLeft;\n rect.bottom += scrollTop;\n rect.right += scrollLeft;\n } else {\n rect = element.getBoundingClientRect();\n }\n } catch (e) {}\n\n var result = {\n left: rect.left,\n top: rect.top,\n width: rect.right - rect.left,\n height: rect.bottom - rect.top\n };\n\n // subtract scrollbar size from sizes\n var sizes = element.nodeName === 'HTML' ? getWindowSizes(element.ownerDocument) : {};\n var width = sizes.width || element.clientWidth || result.width;\n var height = sizes.height || element.clientHeight || result.height;\n\n var horizScrollbar = element.offsetWidth - width;\n var vertScrollbar = element.offsetHeight - height;\n\n // if an hypothetical scrollbar is detected, we must be sure it's not a `border`\n // we make this check conditional for performance reasons\n if (horizScrollbar || vertScrollbar) {\n var styles = getStyleComputedProperty(element);\n horizScrollbar -= getBordersSize(styles, 'x');\n vertScrollbar -= getBordersSize(styles, 'y');\n\n result.width -= horizScrollbar;\n result.height -= vertScrollbar;\n }\n\n return getClientRect(result);\n}\n\nfunction getOffsetRectRelativeToArbitraryNode(children, parent) {\n var fixedPosition = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : false;\n\n var isIE10 = isIE(10);\n var isHTML = parent.nodeName === 'HTML';\n var childrenRect = getBoundingClientRect(children);\n var parentRect = getBoundingClientRect(parent);\n var scrollParent = getScrollParent(children);\n\n var styles = getStyleComputedProperty(parent);\n var borderTopWidth = parseFloat(styles.borderTopWidth);\n var borderLeftWidth = parseFloat(styles.borderLeftWidth);\n\n // In cases where the parent is fixed, we must ignore negative scroll in offset calc\n if (fixedPosition && isHTML) {\n parentRect.top = Math.max(parentRect.top, 0);\n parentRect.left = Math.max(parentRect.left, 0);\n }\n var offsets = getClientRect({\n top: childrenRect.top - parentRect.top - borderTopWidth,\n left: childrenRect.left - parentRect.left - borderLeftWidth,\n width: childrenRect.width,\n height: childrenRect.height\n });\n offsets.marginTop = 0;\n offsets.marginLeft = 0;\n\n // Subtract margins of documentElement in case it's being used as parent\n // we do this only on HTML because it's the only element that behaves\n // differently when margins are applied to it. The margins are included in\n // the box of the documentElement, in the other cases not.\n if (!isIE10 && isHTML) {\n var marginTop = parseFloat(styles.marginTop);\n var marginLeft = parseFloat(styles.marginLeft);\n\n offsets.top -= borderTopWidth - marginTop;\n offsets.bottom -= borderTopWidth - marginTop;\n offsets.left -= borderLeftWidth - marginLeft;\n offsets.right -= borderLeftWidth - marginLeft;\n\n // Attach marginTop and marginLeft because in some circumstances we may need them\n offsets.marginTop = marginTop;\n offsets.marginLeft = marginLeft;\n }\n\n if (isIE10 && !fixedPosition ? parent.contains(scrollParent) : parent === scrollParent && scrollParent.nodeName !== 'BODY') {\n offsets = includeScroll(offsets, parent);\n }\n\n return offsets;\n}\n\nfunction getViewportOffsetRectRelativeToArtbitraryNode(element) {\n var excludeScroll = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var html = element.ownerDocument.documentElement;\n var relativeOffset = getOffsetRectRelativeToArbitraryNode(element, html);\n var width = Math.max(html.clientWidth, window.innerWidth || 0);\n var height = Math.max(html.clientHeight, window.innerHeight || 0);\n\n var scrollTop = !excludeScroll ? getScroll(html) : 0;\n var scrollLeft = !excludeScroll ? getScroll(html, 'left') : 0;\n\n var offset = {\n top: scrollTop - relativeOffset.top + relativeOffset.marginTop,\n left: scrollLeft - relativeOffset.left + relativeOffset.marginLeft,\n width: width,\n height: height\n };\n\n return getClientRect(offset);\n}\n\n/**\n * Check if the given element is fixed or is inside a fixed parent\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @argument {Element} customContainer\n * @returns {Boolean} answer to \"isFixed?\"\n */\nfunction isFixed(element) {\n var nodeName = element.nodeName;\n if (nodeName === 'BODY' || nodeName === 'HTML') {\n return false;\n }\n if (getStyleComputedProperty(element, 'position') === 'fixed') {\n return true;\n }\n var parentNode = getParentNode(element);\n if (!parentNode) {\n return false;\n }\n return isFixed(parentNode);\n}\n\n/**\n * Finds the first parent of an element that has a transformed property defined\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Element} first transformed parent or documentElement\n */\n\nfunction getFixedPositionOffsetParent(element) {\n // This check is needed to avoid errors in case one of the elements isn't defined for any reason\n if (!element || !element.parentElement || isIE()) {\n return document.documentElement;\n }\n var el = element.parentElement;\n while (el && getStyleComputedProperty(el, 'transform') === 'none') {\n el = el.parentElement;\n }\n return el || document.documentElement;\n}\n\n/**\n * Computed the boundaries limits and return them\n * @method\n * @memberof Popper.Utils\n * @param {HTMLElement} popper\n * @param {HTMLElement} reference\n * @param {number} padding\n * @param {HTMLElement} boundariesElement - Element used to define the boundaries\n * @param {Boolean} fixedPosition - Is in fixed position mode\n * @returns {Object} Coordinates of the boundaries\n */\nfunction getBoundaries(popper, reference, padding, boundariesElement) {\n var fixedPosition = arguments.length > 4 && arguments[4] !== undefined ? arguments[4] : false;\n\n // NOTE: 1 DOM access here\n\n var boundaries = { top: 0, left: 0 };\n var offsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n\n // Handle viewport case\n if (boundariesElement === 'viewport') {\n boundaries = getViewportOffsetRectRelativeToArtbitraryNode(offsetParent, fixedPosition);\n } else {\n // Handle other cases based on DOM element used as boundaries\n var boundariesNode = void 0;\n if (boundariesElement === 'scrollParent') {\n boundariesNode = getScrollParent(getParentNode(reference));\n if (boundariesNode.nodeName === 'BODY') {\n boundariesNode = popper.ownerDocument.documentElement;\n }\n } else if (boundariesElement === 'window') {\n boundariesNode = popper.ownerDocument.documentElement;\n } else {\n boundariesNode = boundariesElement;\n }\n\n var offsets = getOffsetRectRelativeToArbitraryNode(boundariesNode, offsetParent, fixedPosition);\n\n // In case of HTML, we need a different computation\n if (boundariesNode.nodeName === 'HTML' && !isFixed(offsetParent)) {\n var _getWindowSizes = getWindowSizes(popper.ownerDocument),\n height = _getWindowSizes.height,\n width = _getWindowSizes.width;\n\n boundaries.top += offsets.top - offsets.marginTop;\n boundaries.bottom = height + offsets.top;\n boundaries.left += offsets.left - offsets.marginLeft;\n boundaries.right = width + offsets.left;\n } else {\n // for all the other DOM elements, this one is good\n boundaries = offsets;\n }\n }\n\n // Add paddings\n padding = padding || 0;\n var isPaddingNumber = typeof padding === 'number';\n boundaries.left += isPaddingNumber ? padding : padding.left || 0;\n boundaries.top += isPaddingNumber ? padding : padding.top || 0;\n boundaries.right -= isPaddingNumber ? padding : padding.right || 0;\n boundaries.bottom -= isPaddingNumber ? padding : padding.bottom || 0;\n\n return boundaries;\n}\n\nfunction getArea(_ref) {\n var width = _ref.width,\n height = _ref.height;\n\n return width * height;\n}\n\n/**\n * Utility used to transform the `auto` placement to the placement with more\n * available space.\n * @method\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeAutoPlacement(placement, refRect, popper, reference, boundariesElement) {\n var padding = arguments.length > 5 && arguments[5] !== undefined ? arguments[5] : 0;\n\n if (placement.indexOf('auto') === -1) {\n return placement;\n }\n\n var boundaries = getBoundaries(popper, reference, padding, boundariesElement);\n\n var rects = {\n top: {\n width: boundaries.width,\n height: refRect.top - boundaries.top\n },\n right: {\n width: boundaries.right - refRect.right,\n height: boundaries.height\n },\n bottom: {\n width: boundaries.width,\n height: boundaries.bottom - refRect.bottom\n },\n left: {\n width: refRect.left - boundaries.left,\n height: boundaries.height\n }\n };\n\n var sortedAreas = Object.keys(rects).map(function (key) {\n return _extends({\n key: key\n }, rects[key], {\n area: getArea(rects[key])\n });\n }).sort(function (a, b) {\n return b.area - a.area;\n });\n\n var filteredAreas = sortedAreas.filter(function (_ref2) {\n var width = _ref2.width,\n height = _ref2.height;\n return width >= popper.clientWidth && height >= popper.clientHeight;\n });\n\n var computedPlacement = filteredAreas.length > 0 ? filteredAreas[0].key : sortedAreas[0].key;\n\n var variation = placement.split('-')[1];\n\n return computedPlacement + (variation ? '-' + variation : '');\n}\n\n/**\n * Get offsets to the reference element\n * @method\n * @memberof Popper.Utils\n * @param {Object} state\n * @param {Element} popper - the popper element\n * @param {Element} reference - the reference element (the popper will be relative to this)\n * @param {Element} fixedPosition - is in fixed position mode\n * @returns {Object} An object containing the offsets which will be applied to the popper\n */\nfunction getReferenceOffsets(state, popper, reference) {\n var fixedPosition = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : null;\n\n var commonOffsetParent = fixedPosition ? getFixedPositionOffsetParent(popper) : findCommonOffsetParent(popper, getReferenceNode(reference));\n return getOffsetRectRelativeToArbitraryNode(reference, commonOffsetParent, fixedPosition);\n}\n\n/**\n * Get the outer sizes of the given element (offset size + margins)\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element\n * @returns {Object} object containing width and height properties\n */\nfunction getOuterSizes(element) {\n var window = element.ownerDocument.defaultView;\n var styles = window.getComputedStyle(element);\n var x = parseFloat(styles.marginTop || 0) + parseFloat(styles.marginBottom || 0);\n var y = parseFloat(styles.marginLeft || 0) + parseFloat(styles.marginRight || 0);\n var result = {\n width: element.offsetWidth + y,\n height: element.offsetHeight + x\n };\n return result;\n}\n\n/**\n * Get the opposite placement of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement\n * @returns {String} flipped placement\n */\nfunction getOppositePlacement(placement) {\n var hash = { left: 'right', right: 'left', bottom: 'top', top: 'bottom' };\n return placement.replace(/left|right|bottom|top/g, function (matched) {\n return hash[matched];\n });\n}\n\n/**\n * Get offsets to the popper\n * @method\n * @memberof Popper.Utils\n * @param {Object} position - CSS position the Popper will get applied\n * @param {HTMLElement} popper - the popper element\n * @param {Object} referenceOffsets - the reference offsets (the popper will be relative to this)\n * @param {String} placement - one of the valid placement options\n * @returns {Object} popperOffsets - An object containing the offsets which will be applied to the popper\n */\nfunction getPopperOffsets(popper, referenceOffsets, placement) {\n placement = placement.split('-')[0];\n\n // Get popper node sizes\n var popperRect = getOuterSizes(popper);\n\n // Add position, width and height to our offsets object\n var popperOffsets = {\n width: popperRect.width,\n height: popperRect.height\n };\n\n // depending by the popper placement we have to compute its offsets slightly differently\n var isHoriz = ['right', 'left'].indexOf(placement) !== -1;\n var mainSide = isHoriz ? 'top' : 'left';\n var secondarySide = isHoriz ? 'left' : 'top';\n var measurement = isHoriz ? 'height' : 'width';\n var secondaryMeasurement = !isHoriz ? 'height' : 'width';\n\n popperOffsets[mainSide] = referenceOffsets[mainSide] + referenceOffsets[measurement] / 2 - popperRect[measurement] / 2;\n if (placement === secondarySide) {\n popperOffsets[secondarySide] = referenceOffsets[secondarySide] - popperRect[secondaryMeasurement];\n } else {\n popperOffsets[secondarySide] = referenceOffsets[getOppositePlacement(secondarySide)];\n }\n\n return popperOffsets;\n}\n\n/**\n * Mimics the `find` method of Array\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction find(arr, check) {\n // use native find if supported\n if (Array.prototype.find) {\n return arr.find(check);\n }\n\n // use `filter` to obtain the same behavior of `find`\n return arr.filter(check)[0];\n}\n\n/**\n * Return the index of the matching object\n * @method\n * @memberof Popper.Utils\n * @argument {Array} arr\n * @argument prop\n * @argument value\n * @returns index or -1\n */\nfunction findIndex(arr, prop, value) {\n // use native findIndex if supported\n if (Array.prototype.findIndex) {\n return arr.findIndex(function (cur) {\n return cur[prop] === value;\n });\n }\n\n // use `find` + `indexOf` if `findIndex` isn't supported\n var match = find(arr, function (obj) {\n return obj[prop] === value;\n });\n return arr.indexOf(match);\n}\n\n/**\n * Loop trough the list of modifiers and run them in order,\n * each of them will then edit the data object.\n * @method\n * @memberof Popper.Utils\n * @param {dataObject} data\n * @param {Array} modifiers\n * @param {String} ends - Optional modifier name used as stopper\n * @returns {dataObject}\n */\nfunction runModifiers(modifiers, data, ends) {\n var modifiersToRun = ends === undefined ? modifiers : modifiers.slice(0, findIndex(modifiers, 'name', ends));\n\n modifiersToRun.forEach(function (modifier) {\n if (modifier['function']) {\n // eslint-disable-line dot-notation\n console.warn('`modifier.function` is deprecated, use `modifier.fn`!');\n }\n var fn = modifier['function'] || modifier.fn; // eslint-disable-line dot-notation\n if (modifier.enabled && isFunction(fn)) {\n // Add properties to offsets to make them a complete clientRect object\n // we do this before each modifier to make sure the previous one doesn't\n // mess with these values\n data.offsets.popper = getClientRect(data.offsets.popper);\n data.offsets.reference = getClientRect(data.offsets.reference);\n\n data = fn(data, modifier);\n }\n });\n\n return data;\n}\n\n/**\n * Updates the position of the popper, computing the new offsets and applying\n * the new style.
\n * Prefer `scheduleUpdate` over `update` because of performance reasons.\n * @method\n * @memberof Popper\n */\nfunction update() {\n // if popper is destroyed, don't perform any further update\n if (this.state.isDestroyed) {\n return;\n }\n\n var data = {\n instance: this,\n styles: {},\n arrowStyles: {},\n attributes: {},\n flipped: false,\n offsets: {}\n };\n\n // compute reference element offsets\n data.offsets.reference = getReferenceOffsets(this.state, this.popper, this.reference, this.options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n data.placement = computeAutoPlacement(this.options.placement, data.offsets.reference, this.popper, this.reference, this.options.modifiers.flip.boundariesElement, this.options.modifiers.flip.padding);\n\n // store the computed placement inside `originalPlacement`\n data.originalPlacement = data.placement;\n\n data.positionFixed = this.options.positionFixed;\n\n // compute the popper offsets\n data.offsets.popper = getPopperOffsets(this.popper, data.offsets.reference, data.placement);\n\n data.offsets.popper.position = this.options.positionFixed ? 'fixed' : 'absolute';\n\n // run the modifiers\n data = runModifiers(this.modifiers, data);\n\n // the first `update` will call `onCreate` callback\n // the other ones will call `onUpdate` callback\n if (!this.state.isCreated) {\n this.state.isCreated = true;\n this.options.onCreate(data);\n } else {\n this.options.onUpdate(data);\n }\n}\n\n/**\n * Helper used to know if the given modifier is enabled.\n * @method\n * @memberof Popper.Utils\n * @returns {Boolean}\n */\nfunction isModifierEnabled(modifiers, modifierName) {\n return modifiers.some(function (_ref) {\n var name = _ref.name,\n enabled = _ref.enabled;\n return enabled && name === modifierName;\n });\n}\n\n/**\n * Get the prefixed supported property name\n * @method\n * @memberof Popper.Utils\n * @argument {String} property (camelCase)\n * @returns {String} prefixed property (camelCase or PascalCase, depending on the vendor prefix)\n */\nfunction getSupportedPropertyName(property) {\n var prefixes = [false, 'ms', 'Webkit', 'Moz', 'O'];\n var upperProp = property.charAt(0).toUpperCase() + property.slice(1);\n\n for (var i = 0; i < prefixes.length; i++) {\n var prefix = prefixes[i];\n var toCheck = prefix ? '' + prefix + upperProp : property;\n if (typeof document.body.style[toCheck] !== 'undefined') {\n return toCheck;\n }\n }\n return null;\n}\n\n/**\n * Destroys the popper.\n * @method\n * @memberof Popper\n */\nfunction destroy() {\n this.state.isDestroyed = true;\n\n // touch DOM only if `applyStyle` modifier is enabled\n if (isModifierEnabled(this.modifiers, 'applyStyle')) {\n this.popper.removeAttribute('x-placement');\n this.popper.style.position = '';\n this.popper.style.top = '';\n this.popper.style.left = '';\n this.popper.style.right = '';\n this.popper.style.bottom = '';\n this.popper.style.willChange = '';\n this.popper.style[getSupportedPropertyName('transform')] = '';\n }\n\n this.disableEventListeners();\n\n // remove the popper if user explicitly asked for the deletion on destroy\n // do not use `remove` because IE11 doesn't support it\n if (this.options.removeOnDestroy) {\n this.popper.parentNode.removeChild(this.popper);\n }\n return this;\n}\n\n/**\n * Get the window associated with the element\n * @argument {Element} element\n * @returns {Window}\n */\nfunction getWindow(element) {\n var ownerDocument = element.ownerDocument;\n return ownerDocument ? ownerDocument.defaultView : window;\n}\n\nfunction attachToScrollParents(scrollParent, event, callback, scrollParents) {\n var isBody = scrollParent.nodeName === 'BODY';\n var target = isBody ? scrollParent.ownerDocument.defaultView : scrollParent;\n target.addEventListener(event, callback, { passive: true });\n\n if (!isBody) {\n attachToScrollParents(getScrollParent(target.parentNode), event, callback, scrollParents);\n }\n scrollParents.push(target);\n}\n\n/**\n * Setup needed event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction setupEventListeners(reference, options, state, updateBound) {\n // Resize event listener on window\n state.updateBound = updateBound;\n getWindow(reference).addEventListener('resize', state.updateBound, { passive: true });\n\n // Scroll event listener on scroll parents\n var scrollElement = getScrollParent(reference);\n attachToScrollParents(scrollElement, 'scroll', state.updateBound, state.scrollParents);\n state.scrollElement = scrollElement;\n state.eventsEnabled = true;\n\n return state;\n}\n\n/**\n * It will add resize/scroll events and start recalculating\n * position of the popper element when they are triggered.\n * @method\n * @memberof Popper\n */\nfunction enableEventListeners() {\n if (!this.state.eventsEnabled) {\n this.state = setupEventListeners(this.reference, this.options, this.state, this.scheduleUpdate);\n }\n}\n\n/**\n * Remove event listeners used to update the popper position\n * @method\n * @memberof Popper.Utils\n * @private\n */\nfunction removeEventListeners(reference, state) {\n // Remove resize event listener on window\n getWindow(reference).removeEventListener('resize', state.updateBound);\n\n // Remove scroll event listener on scroll parents\n state.scrollParents.forEach(function (target) {\n target.removeEventListener('scroll', state.updateBound);\n });\n\n // Reset state\n state.updateBound = null;\n state.scrollParents = [];\n state.scrollElement = null;\n state.eventsEnabled = false;\n return state;\n}\n\n/**\n * It will remove resize/scroll events and won't recalculate popper position\n * when they are triggered. It also won't trigger `onUpdate` callback anymore,\n * unless you call `update` method manually.\n * @method\n * @memberof Popper\n */\nfunction disableEventListeners() {\n if (this.state.eventsEnabled) {\n cancelAnimationFrame(this.scheduleUpdate);\n this.state = removeEventListeners(this.reference, this.state);\n }\n}\n\n/**\n * Tells if a given input is a number\n * @method\n * @memberof Popper.Utils\n * @param {*} input to check\n * @return {Boolean}\n */\nfunction isNumeric(n) {\n return n !== '' && !isNaN(parseFloat(n)) && isFinite(n);\n}\n\n/**\n * Set the style to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the style to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setStyles(element, styles) {\n Object.keys(styles).forEach(function (prop) {\n var unit = '';\n // add unit if the value is numeric and is one of the following\n if (['width', 'height', 'top', 'right', 'bottom', 'left'].indexOf(prop) !== -1 && isNumeric(styles[prop])) {\n unit = 'px';\n }\n element.style[prop] = styles[prop] + unit;\n });\n}\n\n/**\n * Set the attributes to the given popper\n * @method\n * @memberof Popper.Utils\n * @argument {Element} element - Element to apply the attributes to\n * @argument {Object} styles\n * Object with a list of properties and values which will be applied to the element\n */\nfunction setAttributes(element, attributes) {\n Object.keys(attributes).forEach(function (prop) {\n var value = attributes[prop];\n if (value !== false) {\n element.setAttribute(prop, attributes[prop]);\n } else {\n element.removeAttribute(prop);\n }\n });\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} data.styles - List of style properties - values to apply to popper element\n * @argument {Object} data.attributes - List of attribute properties - values to apply to popper element\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The same data object\n */\nfunction applyStyle(data) {\n // any property present in `data.styles` will be applied to the popper,\n // in this way we can make the 3rd party modifiers add custom styles to it\n // Be aware, modifiers could override the properties defined in the previous\n // lines of this modifier!\n setStyles(data.instance.popper, data.styles);\n\n // any property present in `data.attributes` will be applied to the popper,\n // they will be set as HTML attributes of the element\n setAttributes(data.instance.popper, data.attributes);\n\n // if arrowElement is defined and arrowStyles has some properties\n if (data.arrowElement && Object.keys(data.arrowStyles).length) {\n setStyles(data.arrowElement, data.arrowStyles);\n }\n\n return data;\n}\n\n/**\n * Set the x-placement attribute before everything else because it could be used\n * to add margins to the popper margins needs to be calculated to get the\n * correct popper offsets.\n * @method\n * @memberof Popper.modifiers\n * @param {HTMLElement} reference - The reference element used to position the popper\n * @param {HTMLElement} popper - The HTML element used as popper\n * @param {Object} options - Popper.js options\n */\nfunction applyStyleOnLoad(reference, popper, options, modifierOptions, state) {\n // compute reference element offsets\n var referenceOffsets = getReferenceOffsets(state, popper, reference, options.positionFixed);\n\n // compute auto placement, store placement inside the data object,\n // modifiers will be able to edit `placement` if needed\n // and refer to originalPlacement to know the original value\n var placement = computeAutoPlacement(options.placement, referenceOffsets, popper, reference, options.modifiers.flip.boundariesElement, options.modifiers.flip.padding);\n\n popper.setAttribute('x-placement', placement);\n\n // Apply `position` to popper before anything else because\n // without the position applied we can't guarantee correct computations\n setStyles(popper, { position: options.positionFixed ? 'fixed' : 'absolute' });\n\n return options;\n}\n\n/**\n * @function\n * @memberof Popper.Utils\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Boolean} shouldRound - If the offsets should be rounded at all\n * @returns {Object} The popper's position offsets rounded\n *\n * The tale of pixel-perfect positioning. It's still not 100% perfect, but as\n * good as it can be within reason.\n * Discussion here: https://github.com/FezVrasta/popper.js/pull/715\n *\n * Low DPI screens cause a popper to be blurry if not using full pixels (Safari\n * as well on High DPI screens).\n *\n * Firefox prefers no rounding for positioning and does not have blurriness on\n * high DPI screens.\n *\n * Only horizontal placement and left/right values need to be considered.\n */\nfunction getRoundedOffsets(data, shouldRound) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n var round = Math.round,\n floor = Math.floor;\n\n var noRound = function noRound(v) {\n return v;\n };\n\n var referenceWidth = round(reference.width);\n var popperWidth = round(popper.width);\n\n var isVertical = ['left', 'right'].indexOf(data.placement) !== -1;\n var isVariation = data.placement.indexOf('-') !== -1;\n var sameWidthParity = referenceWidth % 2 === popperWidth % 2;\n var bothOddWidth = referenceWidth % 2 === 1 && popperWidth % 2 === 1;\n\n var horizontalToInteger = !shouldRound ? noRound : isVertical || isVariation || sameWidthParity ? round : floor;\n var verticalToInteger = !shouldRound ? noRound : round;\n\n return {\n left: horizontalToInteger(bothOddWidth && !isVariation && shouldRound ? popper.left - 1 : popper.left),\n top: verticalToInteger(popper.top),\n bottom: verticalToInteger(popper.bottom),\n right: horizontalToInteger(popper.right)\n };\n}\n\nvar isFirefox = isBrowser && /Firefox/i.test(navigator.userAgent);\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction computeStyle(data, options) {\n var x = options.x,\n y = options.y;\n var popper = data.offsets.popper;\n\n // Remove this legacy support in Popper.js v2\n\n var legacyGpuAccelerationOption = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'applyStyle';\n }).gpuAcceleration;\n if (legacyGpuAccelerationOption !== undefined) {\n console.warn('WARNING: `gpuAcceleration` option moved to `computeStyle` modifier and will not be supported in future versions of Popper.js!');\n }\n var gpuAcceleration = legacyGpuAccelerationOption !== undefined ? legacyGpuAccelerationOption : options.gpuAcceleration;\n\n var offsetParent = getOffsetParent(data.instance.popper);\n var offsetParentRect = getBoundingClientRect(offsetParent);\n\n // Styles\n var styles = {\n position: popper.position\n };\n\n var offsets = getRoundedOffsets(data, window.devicePixelRatio < 2 || !isFirefox);\n\n var sideA = x === 'bottom' ? 'top' : 'bottom';\n var sideB = y === 'right' ? 'left' : 'right';\n\n // if gpuAcceleration is set to `true` and transform is supported,\n // we use `translate3d` to apply the position to the popper we\n // automatically use the supported prefixed version if needed\n var prefixedProperty = getSupportedPropertyName('transform');\n\n // now, let's make a step back and look at this code closely (wtf?)\n // If the content of the popper grows once it's been positioned, it\n // may happen that the popper gets misplaced because of the new content\n // overflowing its reference element\n // To avoid this problem, we provide two options (x and y), which allow\n // the consumer to define the offset origin.\n // If we position a popper on top of a reference element, we can set\n // `x` to `top` to make the popper grow towards its top instead of\n // its bottom.\n var left = void 0,\n top = void 0;\n if (sideA === 'bottom') {\n // when offsetParent is the positioning is relative to the bottom of the screen (excluding the scrollbar)\n // and not the bottom of the html element\n if (offsetParent.nodeName === 'HTML') {\n top = -offsetParent.clientHeight + offsets.bottom;\n } else {\n top = -offsetParentRect.height + offsets.bottom;\n }\n } else {\n top = offsets.top;\n }\n if (sideB === 'right') {\n if (offsetParent.nodeName === 'HTML') {\n left = -offsetParent.clientWidth + offsets.right;\n } else {\n left = -offsetParentRect.width + offsets.right;\n }\n } else {\n left = offsets.left;\n }\n if (gpuAcceleration && prefixedProperty) {\n styles[prefixedProperty] = 'translate3d(' + left + 'px, ' + top + 'px, 0)';\n styles[sideA] = 0;\n styles[sideB] = 0;\n styles.willChange = 'transform';\n } else {\n // othwerise, we use the standard `top`, `left`, `bottom` and `right` properties\n var invertTop = sideA === 'bottom' ? -1 : 1;\n var invertLeft = sideB === 'right' ? -1 : 1;\n styles[sideA] = top * invertTop;\n styles[sideB] = left * invertLeft;\n styles.willChange = sideA + ', ' + sideB;\n }\n\n // Attributes\n var attributes = {\n 'x-placement': data.placement\n };\n\n // Update `data` attributes, styles and arrowStyles\n data.attributes = _extends({}, attributes, data.attributes);\n data.styles = _extends({}, styles, data.styles);\n data.arrowStyles = _extends({}, data.offsets.arrow, data.arrowStyles);\n\n return data;\n}\n\n/**\n * Helper used to know if the given modifier depends from another one.
\n * It checks if the needed modifier is listed and enabled.\n * @method\n * @memberof Popper.Utils\n * @param {Array} modifiers - list of modifiers\n * @param {String} requestingName - name of requesting modifier\n * @param {String} requestedName - name of requested modifier\n * @returns {Boolean}\n */\nfunction isModifierRequired(modifiers, requestingName, requestedName) {\n var requesting = find(modifiers, function (_ref) {\n var name = _ref.name;\n return name === requestingName;\n });\n\n var isRequired = !!requesting && modifiers.some(function (modifier) {\n return modifier.name === requestedName && modifier.enabled && modifier.order < requesting.order;\n });\n\n if (!isRequired) {\n var _requesting = '`' + requestingName + '`';\n var requested = '`' + requestedName + '`';\n console.warn(requested + ' modifier is required by ' + _requesting + ' modifier in order to work, be sure to include it before ' + _requesting + '!');\n }\n return isRequired;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction arrow(data, options) {\n var _data$offsets$arrow;\n\n // arrow depends on keepTogether in order to work\n if (!isModifierRequired(data.instance.modifiers, 'arrow', 'keepTogether')) {\n return data;\n }\n\n var arrowElement = options.element;\n\n // if arrowElement is a string, suppose it's a CSS selector\n if (typeof arrowElement === 'string') {\n arrowElement = data.instance.popper.querySelector(arrowElement);\n\n // if arrowElement is not found, don't run the modifier\n if (!arrowElement) {\n return data;\n }\n } else {\n // if the arrowElement isn't a query selector we must check that the\n // provided DOM node is child of its popper node\n if (!data.instance.popper.contains(arrowElement)) {\n console.warn('WARNING: `arrow.element` must be child of its popper element!');\n return data;\n }\n }\n\n var placement = data.placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isVertical = ['left', 'right'].indexOf(placement) !== -1;\n\n var len = isVertical ? 'height' : 'width';\n var sideCapitalized = isVertical ? 'Top' : 'Left';\n var side = sideCapitalized.toLowerCase();\n var altSide = isVertical ? 'left' : 'top';\n var opSide = isVertical ? 'bottom' : 'right';\n var arrowElementSize = getOuterSizes(arrowElement)[len];\n\n //\n // extends keepTogether behavior making sure the popper and its\n // reference have enough pixels in conjunction\n //\n\n // top/left side\n if (reference[opSide] - arrowElementSize < popper[side]) {\n data.offsets.popper[side] -= popper[side] - (reference[opSide] - arrowElementSize);\n }\n // bottom/right side\n if (reference[side] + arrowElementSize > popper[opSide]) {\n data.offsets.popper[side] += reference[side] + arrowElementSize - popper[opSide];\n }\n data.offsets.popper = getClientRect(data.offsets.popper);\n\n // compute center of the popper\n var center = reference[side] + reference[len] / 2 - arrowElementSize / 2;\n\n // Compute the sideValue using the updated popper offsets\n // take popper margin in account because we don't have this info available\n var css = getStyleComputedProperty(data.instance.popper);\n var popperMarginSide = parseFloat(css['margin' + sideCapitalized]);\n var popperBorderSide = parseFloat(css['border' + sideCapitalized + 'Width']);\n var sideValue = center - data.offsets.popper[side] - popperMarginSide - popperBorderSide;\n\n // prevent arrowElement from being placed not contiguously to its popper\n sideValue = Math.max(Math.min(popper[len] - arrowElementSize, sideValue), 0);\n\n data.arrowElement = arrowElement;\n data.offsets.arrow = (_data$offsets$arrow = {}, defineProperty(_data$offsets$arrow, side, Math.round(sideValue)), defineProperty(_data$offsets$arrow, altSide, ''), _data$offsets$arrow);\n\n return data;\n}\n\n/**\n * Get the opposite placement variation of the given one\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement variation\n * @returns {String} flipped placement variation\n */\nfunction getOppositeVariation(variation) {\n if (variation === 'end') {\n return 'start';\n } else if (variation === 'start') {\n return 'end';\n }\n return variation;\n}\n\n/**\n * List of accepted placements to use as values of the `placement` option.
\n * Valid placements are:\n * - `auto`\n * - `top`\n * - `right`\n * - `bottom`\n * - `left`\n *\n * Each placement can have a variation from this list:\n * - `-start`\n * - `-end`\n *\n * Variations are interpreted easily if you think of them as the left to right\n * written languages. Horizontally (`top` and `bottom`), `start` is left and `end`\n * is right.
\n * Vertically (`left` and `right`), `start` is top and `end` is bottom.\n *\n * Some valid examples are:\n * - `top-end` (on top of reference, right aligned)\n * - `right-start` (on right of reference, top aligned)\n * - `bottom` (on bottom, centered)\n * - `auto-end` (on the side with more space available, alignment depends by placement)\n *\n * @static\n * @type {Array}\n * @enum {String}\n * @readonly\n * @method placements\n * @memberof Popper\n */\nvar placements = ['auto-start', 'auto', 'auto-end', 'top-start', 'top', 'top-end', 'right-start', 'right', 'right-end', 'bottom-end', 'bottom', 'bottom-start', 'left-end', 'left', 'left-start'];\n\n// Get rid of `auto` `auto-start` and `auto-end`\nvar validPlacements = placements.slice(3);\n\n/**\n * Given an initial placement, returns all the subsequent placements\n * clockwise (or counter-clockwise).\n *\n * @method\n * @memberof Popper.Utils\n * @argument {String} placement - A valid placement (it accepts variations)\n * @argument {Boolean} counter - Set to true to walk the placements counterclockwise\n * @returns {Array} placements including their variations\n */\nfunction clockwise(placement) {\n var counter = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n\n var index = validPlacements.indexOf(placement);\n var arr = validPlacements.slice(index + 1).concat(validPlacements.slice(0, index));\n return counter ? arr.reverse() : arr;\n}\n\nvar BEHAVIORS = {\n FLIP: 'flip',\n CLOCKWISE: 'clockwise',\n COUNTERCLOCKWISE: 'counterclockwise'\n};\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction flip(data, options) {\n // if `inner` modifier is enabled, we can't use the `flip` modifier\n if (isModifierEnabled(data.instance.modifiers, 'inner')) {\n return data;\n }\n\n if (data.flipped && data.placement === data.originalPlacement) {\n // seems like flip is trying to loop, probably there's not enough space on any of the flippable sides\n return data;\n }\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, options.boundariesElement, data.positionFixed);\n\n var placement = data.placement.split('-')[0];\n var placementOpposite = getOppositePlacement(placement);\n var variation = data.placement.split('-')[1] || '';\n\n var flipOrder = [];\n\n switch (options.behavior) {\n case BEHAVIORS.FLIP:\n flipOrder = [placement, placementOpposite];\n break;\n case BEHAVIORS.CLOCKWISE:\n flipOrder = clockwise(placement);\n break;\n case BEHAVIORS.COUNTERCLOCKWISE:\n flipOrder = clockwise(placement, true);\n break;\n default:\n flipOrder = options.behavior;\n }\n\n flipOrder.forEach(function (step, index) {\n if (placement !== step || flipOrder.length === index + 1) {\n return data;\n }\n\n placement = data.placement.split('-')[0];\n placementOpposite = getOppositePlacement(placement);\n\n var popperOffsets = data.offsets.popper;\n var refOffsets = data.offsets.reference;\n\n // using floor because the reference offsets may contain decimals we are not going to consider here\n var floor = Math.floor;\n var overlapsRef = placement === 'left' && floor(popperOffsets.right) > floor(refOffsets.left) || placement === 'right' && floor(popperOffsets.left) < floor(refOffsets.right) || placement === 'top' && floor(popperOffsets.bottom) > floor(refOffsets.top) || placement === 'bottom' && floor(popperOffsets.top) < floor(refOffsets.bottom);\n\n var overflowsLeft = floor(popperOffsets.left) < floor(boundaries.left);\n var overflowsRight = floor(popperOffsets.right) > floor(boundaries.right);\n var overflowsTop = floor(popperOffsets.top) < floor(boundaries.top);\n var overflowsBottom = floor(popperOffsets.bottom) > floor(boundaries.bottom);\n\n var overflowsBoundaries = placement === 'left' && overflowsLeft || placement === 'right' && overflowsRight || placement === 'top' && overflowsTop || placement === 'bottom' && overflowsBottom;\n\n // flip the variation if required\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n\n // flips variation if reference element overflows boundaries\n var flippedVariationByRef = !!options.flipVariations && (isVertical && variation === 'start' && overflowsLeft || isVertical && variation === 'end' && overflowsRight || !isVertical && variation === 'start' && overflowsTop || !isVertical && variation === 'end' && overflowsBottom);\n\n // flips variation if popper content overflows boundaries\n var flippedVariationByContent = !!options.flipVariationsByContent && (isVertical && variation === 'start' && overflowsRight || isVertical && variation === 'end' && overflowsLeft || !isVertical && variation === 'start' && overflowsBottom || !isVertical && variation === 'end' && overflowsTop);\n\n var flippedVariation = flippedVariationByRef || flippedVariationByContent;\n\n if (overlapsRef || overflowsBoundaries || flippedVariation) {\n // this boolean to detect any flip loop\n data.flipped = true;\n\n if (overlapsRef || overflowsBoundaries) {\n placement = flipOrder[index + 1];\n }\n\n if (flippedVariation) {\n variation = getOppositeVariation(variation);\n }\n\n data.placement = placement + (variation ? '-' + variation : '');\n\n // this object contains `position`, we want to preserve it along with\n // any additional property we may add in the future\n data.offsets.popper = _extends({}, data.offsets.popper, getPopperOffsets(data.instance.popper, data.offsets.reference, data.placement));\n\n data = runModifiers(data.instance.modifiers, data, 'flip');\n }\n });\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction keepTogether(data) {\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var placement = data.placement.split('-')[0];\n var floor = Math.floor;\n var isVertical = ['top', 'bottom'].indexOf(placement) !== -1;\n var side = isVertical ? 'right' : 'bottom';\n var opSide = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n if (popper[side] < floor(reference[opSide])) {\n data.offsets.popper[opSide] = floor(reference[opSide]) - popper[measurement];\n }\n if (popper[opSide] > floor(reference[side])) {\n data.offsets.popper[opSide] = floor(reference[side]);\n }\n\n return data;\n}\n\n/**\n * Converts a string containing value + unit into a px value number\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} str - Value + unit string\n * @argument {String} measurement - `height` or `width`\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @returns {Number|String}\n * Value in pixels, or original string if no values were extracted\n */\nfunction toValue(str, measurement, popperOffsets, referenceOffsets) {\n // separate value from unit\n var split = str.match(/((?:\\-|\\+)?\\d*\\.?\\d*)(.*)/);\n var value = +split[1];\n var unit = split[2];\n\n // If it's not a number it's an operator, I guess\n if (!value) {\n return str;\n }\n\n if (unit.indexOf('%') === 0) {\n var element = void 0;\n switch (unit) {\n case '%p':\n element = popperOffsets;\n break;\n case '%':\n case '%r':\n default:\n element = referenceOffsets;\n }\n\n var rect = getClientRect(element);\n return rect[measurement] / 100 * value;\n } else if (unit === 'vh' || unit === 'vw') {\n // if is a vh or vw, we calculate the size based on the viewport\n var size = void 0;\n if (unit === 'vh') {\n size = Math.max(document.documentElement.clientHeight, window.innerHeight || 0);\n } else {\n size = Math.max(document.documentElement.clientWidth, window.innerWidth || 0);\n }\n return size / 100 * value;\n } else {\n // if is an explicit pixel unit, we get rid of the unit and keep the value\n // if is an implicit unit, it's px, and we return just the value\n return value;\n }\n}\n\n/**\n * Parse an `offset` string to extrapolate `x` and `y` numeric offsets.\n * @function\n * @memberof {modifiers~offset}\n * @private\n * @argument {String} offset\n * @argument {Object} popperOffsets\n * @argument {Object} referenceOffsets\n * @argument {String} basePlacement\n * @returns {Array} a two cells array with x and y offsets in numbers\n */\nfunction parseOffset(offset, popperOffsets, referenceOffsets, basePlacement) {\n var offsets = [0, 0];\n\n // Use height if placement is left or right and index is 0 otherwise use width\n // in this way the first offset will use an axis and the second one\n // will use the other one\n var useHeight = ['right', 'left'].indexOf(basePlacement) !== -1;\n\n // Split the offset string to obtain a list of values and operands\n // The regex addresses values with the plus or minus sign in front (+10, -20, etc)\n var fragments = offset.split(/(\\+|\\-)/).map(function (frag) {\n return frag.trim();\n });\n\n // Detect if the offset string contains a pair of values or a single one\n // they could be separated by comma or space\n var divider = fragments.indexOf(find(fragments, function (frag) {\n return frag.search(/,|\\s/) !== -1;\n }));\n\n if (fragments[divider] && fragments[divider].indexOf(',') === -1) {\n console.warn('Offsets separated by white space(s) are deprecated, use a comma (,) instead.');\n }\n\n // If divider is found, we divide the list of values and operands to divide\n // them by ofset X and Y.\n var splitRegex = /\\s*,\\s*|\\s+/;\n var ops = divider !== -1 ? [fragments.slice(0, divider).concat([fragments[divider].split(splitRegex)[0]]), [fragments[divider].split(splitRegex)[1]].concat(fragments.slice(divider + 1))] : [fragments];\n\n // Convert the values with units to absolute pixels to allow our computations\n ops = ops.map(function (op, index) {\n // Most of the units rely on the orientation of the popper\n var measurement = (index === 1 ? !useHeight : useHeight) ? 'height' : 'width';\n var mergeWithPrevious = false;\n return op\n // This aggregates any `+` or `-` sign that aren't considered operators\n // e.g.: 10 + +5 => [10, +, +5]\n .reduce(function (a, b) {\n if (a[a.length - 1] === '' && ['+', '-'].indexOf(b) !== -1) {\n a[a.length - 1] = b;\n mergeWithPrevious = true;\n return a;\n } else if (mergeWithPrevious) {\n a[a.length - 1] += b;\n mergeWithPrevious = false;\n return a;\n } else {\n return a.concat(b);\n }\n }, [])\n // Here we convert the string values into number values (in px)\n .map(function (str) {\n return toValue(str, measurement, popperOffsets, referenceOffsets);\n });\n });\n\n // Loop trough the offsets arrays and execute the operations\n ops.forEach(function (op, index) {\n op.forEach(function (frag, index2) {\n if (isNumeric(frag)) {\n offsets[index] += frag * (op[index2 - 1] === '-' ? -1 : 1);\n }\n });\n });\n return offsets;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @argument {Number|String} options.offset=0\n * The offset value as described in the modifier description\n * @returns {Object} The data object, properly modified\n */\nfunction offset(data, _ref) {\n var offset = _ref.offset;\n var placement = data.placement,\n _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var basePlacement = placement.split('-')[0];\n\n var offsets = void 0;\n if (isNumeric(+offset)) {\n offsets = [+offset, 0];\n } else {\n offsets = parseOffset(offset, popper, reference, basePlacement);\n }\n\n if (basePlacement === 'left') {\n popper.top += offsets[0];\n popper.left -= offsets[1];\n } else if (basePlacement === 'right') {\n popper.top += offsets[0];\n popper.left += offsets[1];\n } else if (basePlacement === 'top') {\n popper.left += offsets[0];\n popper.top -= offsets[1];\n } else if (basePlacement === 'bottom') {\n popper.left += offsets[0];\n popper.top += offsets[1];\n }\n\n data.popper = popper;\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction preventOverflow(data, options) {\n var boundariesElement = options.boundariesElement || getOffsetParent(data.instance.popper);\n\n // If offsetParent is the reference element, we really want to\n // go one step up and use the next offsetParent as reference to\n // avoid to make this modifier completely useless and look like broken\n if (data.instance.reference === boundariesElement) {\n boundariesElement = getOffsetParent(boundariesElement);\n }\n\n // NOTE: DOM access here\n // resets the popper's position so that the document size can be calculated excluding\n // the size of the popper element itself\n var transformProp = getSupportedPropertyName('transform');\n var popperStyles = data.instance.popper.style; // assignment to help minification\n var top = popperStyles.top,\n left = popperStyles.left,\n transform = popperStyles[transformProp];\n\n popperStyles.top = '';\n popperStyles.left = '';\n popperStyles[transformProp] = '';\n\n var boundaries = getBoundaries(data.instance.popper, data.instance.reference, options.padding, boundariesElement, data.positionFixed);\n\n // NOTE: DOM access here\n // restores the original style properties after the offsets have been computed\n popperStyles.top = top;\n popperStyles.left = left;\n popperStyles[transformProp] = transform;\n\n options.boundaries = boundaries;\n\n var order = options.priority;\n var popper = data.offsets.popper;\n\n var check = {\n primary: function primary(placement) {\n var value = popper[placement];\n if (popper[placement] < boundaries[placement] && !options.escapeWithReference) {\n value = Math.max(popper[placement], boundaries[placement]);\n }\n return defineProperty({}, placement, value);\n },\n secondary: function secondary(placement) {\n var mainSide = placement === 'right' ? 'left' : 'top';\n var value = popper[mainSide];\n if (popper[placement] > boundaries[placement] && !options.escapeWithReference) {\n value = Math.min(popper[mainSide], boundaries[placement] - (placement === 'right' ? popper.width : popper.height));\n }\n return defineProperty({}, mainSide, value);\n }\n };\n\n order.forEach(function (placement) {\n var side = ['left', 'top'].indexOf(placement) !== -1 ? 'primary' : 'secondary';\n popper = _extends({}, popper, check[side](placement));\n });\n\n data.offsets.popper = popper;\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction shift(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var shiftvariation = placement.split('-')[1];\n\n // if shift shiftvariation is specified, run the modifier\n if (shiftvariation) {\n var _data$offsets = data.offsets,\n reference = _data$offsets.reference,\n popper = _data$offsets.popper;\n\n var isVertical = ['bottom', 'top'].indexOf(basePlacement) !== -1;\n var side = isVertical ? 'left' : 'top';\n var measurement = isVertical ? 'width' : 'height';\n\n var shiftOffsets = {\n start: defineProperty({}, side, reference[side]),\n end: defineProperty({}, side, reference[side] + reference[measurement] - popper[measurement])\n };\n\n data.offsets.popper = _extends({}, popper, shiftOffsets[shiftvariation]);\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by update method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction hide(data) {\n if (!isModifierRequired(data.instance.modifiers, 'hide', 'preventOverflow')) {\n return data;\n }\n\n var refRect = data.offsets.reference;\n var bound = find(data.instance.modifiers, function (modifier) {\n return modifier.name === 'preventOverflow';\n }).boundaries;\n\n if (refRect.bottom < bound.top || refRect.left > bound.right || refRect.top > bound.bottom || refRect.right < bound.left) {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === true) {\n return data;\n }\n\n data.hide = true;\n data.attributes['x-out-of-boundaries'] = '';\n } else {\n // Avoid unnecessary DOM access if visibility hasn't changed\n if (data.hide === false) {\n return data;\n }\n\n data.hide = false;\n data.attributes['x-out-of-boundaries'] = false;\n }\n\n return data;\n}\n\n/**\n * @function\n * @memberof Modifiers\n * @argument {Object} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {Object} The data object, properly modified\n */\nfunction inner(data) {\n var placement = data.placement;\n var basePlacement = placement.split('-')[0];\n var _data$offsets = data.offsets,\n popper = _data$offsets.popper,\n reference = _data$offsets.reference;\n\n var isHoriz = ['left', 'right'].indexOf(basePlacement) !== -1;\n\n var subtractLength = ['top', 'left'].indexOf(basePlacement) === -1;\n\n popper[isHoriz ? 'left' : 'top'] = reference[basePlacement] - (subtractLength ? popper[isHoriz ? 'width' : 'height'] : 0);\n\n data.placement = getOppositePlacement(placement);\n data.offsets.popper = getClientRect(popper);\n\n return data;\n}\n\n/**\n * Modifier function, each modifier can have a function of this type assigned\n * to its `fn` property.
\n * These functions will be called on each update, this means that you must\n * make sure they are performant enough to avoid performance bottlenecks.\n *\n * @function ModifierFn\n * @argument {dataObject} data - The data object generated by `update` method\n * @argument {Object} options - Modifiers configuration and options\n * @returns {dataObject} The data object, properly modified\n */\n\n/**\n * Modifiers are plugins used to alter the behavior of your poppers.
\n * Popper.js uses a set of 9 modifiers to provide all the basic functionalities\n * needed by the library.\n *\n * Usually you don't want to override the `order`, `fn` and `onLoad` props.\n * All the other properties are configurations that could be tweaked.\n * @namespace modifiers\n */\nvar modifiers = {\n /**\n * Modifier used to shift the popper on the start or end of its reference\n * element.
\n * It will read the variation of the `placement` property.
\n * It can be one either `-end` or `-start`.\n * @memberof modifiers\n * @inner\n */\n shift: {\n /** @prop {number} order=100 - Index used to define the order of execution */\n order: 100,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: shift\n },\n\n /**\n * The `offset` modifier can shift your popper on both its axis.\n *\n * It accepts the following units:\n * - `px` or unit-less, interpreted as pixels\n * - `%` or `%r`, percentage relative to the length of the reference element\n * - `%p`, percentage relative to the length of the popper element\n * - `vw`, CSS viewport width unit\n * - `vh`, CSS viewport height unit\n *\n * For length is intended the main axis relative to the placement of the popper.
\n * This means that if the placement is `top` or `bottom`, the length will be the\n * `width`. In case of `left` or `right`, it will be the `height`.\n *\n * You can provide a single value (as `Number` or `String`), or a pair of values\n * as `String` divided by a comma or one (or more) white spaces.
\n * The latter is a deprecated method because it leads to confusion and will be\n * removed in v2.
\n * Additionally, it accepts additions and subtractions between different units.\n * Note that multiplications and divisions aren't supported.\n *\n * Valid examples are:\n * ```\n * 10\n * '10%'\n * '10, 10'\n * '10%, 10'\n * '10 + 10%'\n * '10 - 5vh + 3%'\n * '-10px + 5vh, 5px - 6%'\n * ```\n * > **NB**: If you desire to apply offsets to your poppers in a way that may make them overlap\n * > with their reference element, unfortunately, you will have to disable the `flip` modifier.\n * > You can read more on this at this [issue](https://github.com/FezVrasta/popper.js/issues/373).\n *\n * @memberof modifiers\n * @inner\n */\n offset: {\n /** @prop {number} order=200 - Index used to define the order of execution */\n order: 200,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: offset,\n /** @prop {Number|String} offset=0\n * The offset value as described in the modifier description\n */\n offset: 0\n },\n\n /**\n * Modifier used to prevent the popper from being positioned outside the boundary.\n *\n * A scenario exists where the reference itself is not within the boundaries.
\n * We can say it has \"escaped the boundaries\" — or just \"escaped\".
\n * In this case we need to decide whether the popper should either:\n *\n * - detach from the reference and remain \"trapped\" in the boundaries, or\n * - if it should ignore the boundary and \"escape with its reference\"\n *\n * When `escapeWithReference` is set to`true` and reference is completely\n * outside its boundaries, the popper will overflow (or completely leave)\n * the boundaries in order to remain attached to the edge of the reference.\n *\n * @memberof modifiers\n * @inner\n */\n preventOverflow: {\n /** @prop {number} order=300 - Index used to define the order of execution */\n order: 300,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: preventOverflow,\n /**\n * @prop {Array} [priority=['left','right','top','bottom']]\n * Popper will try to prevent overflow following these priorities by default,\n * then, it could overflow on the left and on top of the `boundariesElement`\n */\n priority: ['left', 'right', 'top', 'bottom'],\n /**\n * @prop {number} padding=5\n * Amount of pixel used to define a minimum distance between the boundaries\n * and the popper. This makes sure the popper always has a little padding\n * between the edges of its container\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='scrollParent'\n * Boundaries used by the modifier. Can be `scrollParent`, `window`,\n * `viewport` or any DOM element.\n */\n boundariesElement: 'scrollParent'\n },\n\n /**\n * Modifier used to make sure the reference and its popper stay near each other\n * without leaving any gap between the two. Especially useful when the arrow is\n * enabled and you want to ensure that it points to its reference element.\n * It cares only about the first axis. You can still have poppers with margin\n * between the popper and its reference element.\n * @memberof modifiers\n * @inner\n */\n keepTogether: {\n /** @prop {number} order=400 - Index used to define the order of execution */\n order: 400,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: keepTogether\n },\n\n /**\n * This modifier is used to move the `arrowElement` of the popper to make\n * sure it is positioned between the reference element and its popper element.\n * It will read the outer size of the `arrowElement` node to detect how many\n * pixels of conjunction are needed.\n *\n * It has no effect if no `arrowElement` is provided.\n * @memberof modifiers\n * @inner\n */\n arrow: {\n /** @prop {number} order=500 - Index used to define the order of execution */\n order: 500,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: arrow,\n /** @prop {String|HTMLElement} element='[x-arrow]' - Selector or node used as arrow */\n element: '[x-arrow]'\n },\n\n /**\n * Modifier used to flip the popper's placement when it starts to overlap its\n * reference element.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n *\n * **NOTE:** this modifier will interrupt the current update cycle and will\n * restart it if it detects the need to flip the placement.\n * @memberof modifiers\n * @inner\n */\n flip: {\n /** @prop {number} order=600 - Index used to define the order of execution */\n order: 600,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: flip,\n /**\n * @prop {String|Array} behavior='flip'\n * The behavior used to change the popper's placement. It can be one of\n * `flip`, `clockwise`, `counterclockwise` or an array with a list of valid\n * placements (with optional variations)\n */\n behavior: 'flip',\n /**\n * @prop {number} padding=5\n * The popper will flip if it hits the edges of the `boundariesElement`\n */\n padding: 5,\n /**\n * @prop {String|HTMLElement} boundariesElement='viewport'\n * The element which will define the boundaries of the popper position.\n * The popper will never be placed outside of the defined boundaries\n * (except if `keepTogether` is enabled)\n */\n boundariesElement: 'viewport',\n /**\n * @prop {Boolean} flipVariations=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the reference element overlaps its boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariations: false,\n /**\n * @prop {Boolean} flipVariationsByContent=false\n * The popper will switch placement variation between `-start` and `-end` when\n * the popper element overlaps its reference boundaries.\n *\n * The original placement should have a set variation.\n */\n flipVariationsByContent: false\n },\n\n /**\n * Modifier used to make the popper flow toward the inner of the reference element.\n * By default, when this modifier is disabled, the popper will be placed outside\n * the reference element.\n * @memberof modifiers\n * @inner\n */\n inner: {\n /** @prop {number} order=700 - Index used to define the order of execution */\n order: 700,\n /** @prop {Boolean} enabled=false - Whether the modifier is enabled or not */\n enabled: false,\n /** @prop {ModifierFn} */\n fn: inner\n },\n\n /**\n * Modifier used to hide the popper when its reference element is outside of the\n * popper boundaries. It will set a `x-out-of-boundaries` attribute which can\n * be used to hide with a CSS selector the popper when its reference is\n * out of boundaries.\n *\n * Requires the `preventOverflow` modifier before it in order to work.\n * @memberof modifiers\n * @inner\n */\n hide: {\n /** @prop {number} order=800 - Index used to define the order of execution */\n order: 800,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: hide\n },\n\n /**\n * Computes the style that will be applied to the popper element to gets\n * properly positioned.\n *\n * Note that this modifier will not touch the DOM, it just prepares the styles\n * so that `applyStyle` modifier can apply it. This separation is useful\n * in case you need to replace `applyStyle` with a custom implementation.\n *\n * This modifier has `850` as `order` value to maintain backward compatibility\n * with previous versions of Popper.js. Expect the modifiers ordering method\n * to change in future major versions of the library.\n *\n * @memberof modifiers\n * @inner\n */\n computeStyle: {\n /** @prop {number} order=850 - Index used to define the order of execution */\n order: 850,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: computeStyle,\n /**\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: true,\n /**\n * @prop {string} [x='bottom']\n * Where to anchor the X axis (`bottom` or `top`). AKA X offset origin.\n * Change this if your popper should grow in a direction different from `bottom`\n */\n x: 'bottom',\n /**\n * @prop {string} [x='left']\n * Where to anchor the Y axis (`left` or `right`). AKA Y offset origin.\n * Change this if your popper should grow in a direction different from `right`\n */\n y: 'right'\n },\n\n /**\n * Applies the computed styles to the popper element.\n *\n * All the DOM manipulations are limited to this modifier. This is useful in case\n * you want to integrate Popper.js inside a framework or view library and you\n * want to delegate all the DOM manipulations to it.\n *\n * Note that if you disable this modifier, you must make sure the popper element\n * has its position set to `absolute` before Popper.js can do its work!\n *\n * Just disable this modifier and define your own to achieve the desired effect.\n *\n * @memberof modifiers\n * @inner\n */\n applyStyle: {\n /** @prop {number} order=900 - Index used to define the order of execution */\n order: 900,\n /** @prop {Boolean} enabled=true - Whether the modifier is enabled or not */\n enabled: true,\n /** @prop {ModifierFn} */\n fn: applyStyle,\n /** @prop {Function} */\n onLoad: applyStyleOnLoad,\n /**\n * @deprecated since version 1.10.0, the property moved to `computeStyle` modifier\n * @prop {Boolean} gpuAcceleration=true\n * If true, it uses the CSS 3D transformation to position the popper.\n * Otherwise, it will use the `top` and `left` properties\n */\n gpuAcceleration: undefined\n }\n};\n\n/**\n * The `dataObject` is an object containing all the information used by Popper.js.\n * This object is passed to modifiers and to the `onCreate` and `onUpdate` callbacks.\n * @name dataObject\n * @property {Object} data.instance The Popper.js instance\n * @property {String} data.placement Placement applied to popper\n * @property {String} data.originalPlacement Placement originally defined on init\n * @property {Boolean} data.flipped True if popper has been flipped by flip modifier\n * @property {Boolean} data.hide True if the reference element is out of boundaries, useful to know when to hide the popper\n * @property {HTMLElement} data.arrowElement Node used as arrow by arrow modifier\n * @property {Object} data.styles Any CSS property defined here will be applied to the popper. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.arrowStyles Any CSS property defined here will be applied to the popper arrow. It expects the JavaScript nomenclature (eg. `marginBottom`)\n * @property {Object} data.boundaries Offsets of the popper boundaries\n * @property {Object} data.offsets The measurements of popper, reference and arrow elements\n * @property {Object} data.offsets.popper `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.reference `top`, `left`, `width`, `height` values\n * @property {Object} data.offsets.arrow] `top` and `left` offsets, only one of them will be different from 0\n */\n\n/**\n * Default options provided to Popper.js constructor.
\n * These can be overridden using the `options` argument of Popper.js.
\n * To override an option, simply pass an object with the same\n * structure of the `options` object, as the 3rd argument. For example:\n * ```\n * new Popper(ref, pop, {\n * modifiers: {\n * preventOverflow: { enabled: false }\n * }\n * })\n * ```\n * @type {Object}\n * @static\n * @memberof Popper\n */\nvar Defaults = {\n /**\n * Popper's placement.\n * @prop {Popper.placements} placement='bottom'\n */\n placement: 'bottom',\n\n /**\n * Set this to true if you want popper to position it self in 'fixed' mode\n * @prop {Boolean} positionFixed=false\n */\n positionFixed: false,\n\n /**\n * Whether events (resize, scroll) are initially enabled.\n * @prop {Boolean} eventsEnabled=true\n */\n eventsEnabled: true,\n\n /**\n * Set to true if you want to automatically remove the popper when\n * you call the `destroy` method.\n * @prop {Boolean} removeOnDestroy=false\n */\n removeOnDestroy: false,\n\n /**\n * Callback called when the popper is created.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onCreate}\n */\n onCreate: function onCreate() {},\n\n /**\n * Callback called when the popper is updated. This callback is not called\n * on the initialization/creation of the popper, but only on subsequent\n * updates.
\n * By default, it is set to no-op.
\n * Access Popper.js instance with `data.instance`.\n * @prop {onUpdate}\n */\n onUpdate: function onUpdate() {},\n\n /**\n * List of modifiers used to modify the offsets before they are applied to the popper.\n * They provide most of the functionalities of Popper.js.\n * @prop {modifiers}\n */\n modifiers: modifiers\n};\n\n/**\n * @callback onCreate\n * @param {dataObject} data\n */\n\n/**\n * @callback onUpdate\n * @param {dataObject} data\n */\n\n// Utils\n// Methods\nvar Popper = function () {\n /**\n * Creates a new Popper.js instance.\n * @class Popper\n * @param {Element|referenceObject} reference - The reference element used to position the popper\n * @param {Element} popper - The HTML / XML element used as the popper\n * @param {Object} options - Your custom options to override the ones defined in [Defaults](#defaults)\n * @return {Object} instance - The generated Popper.js instance\n */\n function Popper(reference, popper) {\n var _this = this;\n\n var options = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n classCallCheck(this, Popper);\n\n this.scheduleUpdate = function () {\n return requestAnimationFrame(_this.update);\n };\n\n // make update() debounced, so that it only runs at most once-per-tick\n this.update = debounce(this.update.bind(this));\n\n // with {} we create a new object with the options inside it\n this.options = _extends({}, Popper.Defaults, options);\n\n // init state\n this.state = {\n isDestroyed: false,\n isCreated: false,\n scrollParents: []\n };\n\n // get reference and popper elements (allow jQuery wrappers)\n this.reference = reference && reference.jquery ? reference[0] : reference;\n this.popper = popper && popper.jquery ? popper[0] : popper;\n\n // Deep merge modifiers options\n this.options.modifiers = {};\n Object.keys(_extends({}, Popper.Defaults.modifiers, options.modifiers)).forEach(function (name) {\n _this.options.modifiers[name] = _extends({}, Popper.Defaults.modifiers[name] || {}, options.modifiers ? options.modifiers[name] : {});\n });\n\n // Refactoring modifiers' list (Object => Array)\n this.modifiers = Object.keys(this.options.modifiers).map(function (name) {\n return _extends({\n name: name\n }, _this.options.modifiers[name]);\n })\n // sort the modifiers by order\n .sort(function (a, b) {\n return a.order - b.order;\n });\n\n // modifiers have the ability to execute arbitrary code when Popper.js get inited\n // such code is executed in the same order of its modifier\n // they could add new properties to their options configuration\n // BE AWARE: don't add options to `options.modifiers.name` but to `modifierOptions`!\n this.modifiers.forEach(function (modifierOptions) {\n if (modifierOptions.enabled && isFunction(modifierOptions.onLoad)) {\n modifierOptions.onLoad(_this.reference, _this.popper, _this.options, modifierOptions, _this.state);\n }\n });\n\n // fire the first update to position the popper in the right place\n this.update();\n\n var eventsEnabled = this.options.eventsEnabled;\n if (eventsEnabled) {\n // setup event listeners, they will take care of update the position in specific situations\n this.enableEventListeners();\n }\n\n this.state.eventsEnabled = eventsEnabled;\n }\n\n // We can't use class properties because they don't get listed in the\n // class prototype and break stuff like Sinon stubs\n\n\n createClass(Popper, [{\n key: 'update',\n value: function update$$1() {\n return update.call(this);\n }\n }, {\n key: 'destroy',\n value: function destroy$$1() {\n return destroy.call(this);\n }\n }, {\n key: 'enableEventListeners',\n value: function enableEventListeners$$1() {\n return enableEventListeners.call(this);\n }\n }, {\n key: 'disableEventListeners',\n value: function disableEventListeners$$1() {\n return disableEventListeners.call(this);\n }\n\n /**\n * Schedules an update. It will run on the next UI update available.\n * @method scheduleUpdate\n * @memberof Popper\n */\n\n\n /**\n * Collection of utilities useful when writing custom modifiers.\n * Starting from version 1.7, this method is available only if you\n * include `popper-utils.js` before `popper.js`.\n *\n * **DEPRECATION**: This way to access PopperUtils is deprecated\n * and will be removed in v2! Use the PopperUtils module directly instead.\n * Due to the high instability of the methods contained in Utils, we can't\n * guarantee them to follow semver. Use them at your own risk!\n * @static\n * @private\n * @type {Object}\n * @deprecated since version 1.8\n * @member Utils\n * @memberof Popper\n */\n\n }]);\n return Popper;\n}();\n\n/**\n * The `referenceObject` is an object that provides an interface compatible with Popper.js\n * and lets you use it as replacement of a real DOM node.
\n * You can use this method to position a popper relatively to a set of coordinates\n * in case you don't have a DOM node to use as reference.\n *\n * ```\n * new Popper(referenceObject, popperNode);\n * ```\n *\n * NB: This feature isn't supported in Internet Explorer 10.\n * @name referenceObject\n * @property {Function} data.getBoundingClientRect\n * A function that returns a set of coordinates compatible with the native `getBoundingClientRect` method.\n * @property {number} data.clientWidth\n * An ES6 getter that will return the width of the virtual reference element.\n * @property {number} data.clientHeight\n * An ES6 getter that will return the height of the virtual reference element.\n */\n\n\nPopper.Utils = (typeof window !== 'undefined' ? window : global).PopperUtils;\nPopper.placements = placements;\nPopper.Defaults = Defaults;\n\nexport default Popper;\n//# sourceMappingURL=popper.js.map\n","/**\n * Based on Kendo UI Core expression code \n */\n'use strict'\n\nfunction Cache(maxSize) {\n this._maxSize = maxSize\n this.clear()\n}\nCache.prototype.clear = function () {\n this._size = 0\n this._values = Object.create(null)\n}\nCache.prototype.get = function (key) {\n return this._values[key]\n}\nCache.prototype.set = function (key, value) {\n this._size >= this._maxSize && this.clear()\n if (!(key in this._values)) this._size++\n\n return (this._values[key] = value)\n}\n\nvar SPLIT_REGEX = /[^.^\\]^[]+|(?=\\[\\]|\\.\\.)/g,\n DIGIT_REGEX = /^\\d+$/,\n LEAD_DIGIT_REGEX = /^\\d/,\n SPEC_CHAR_REGEX = /[~`!#$%\\^&*+=\\-\\[\\]\\\\';,/{}|\\\\\":<>\\?]/g,\n CLEAN_QUOTES_REGEX = /^\\s*(['\"]?)(.*?)(\\1)\\s*$/,\n MAX_CACHE_SIZE = 512\n\nvar pathCache = new Cache(MAX_CACHE_SIZE),\n setCache = new Cache(MAX_CACHE_SIZE),\n getCache = new Cache(MAX_CACHE_SIZE)\n\nvar config\n\nmodule.exports = {\n Cache: Cache,\n\n split: split,\n\n normalizePath: normalizePath,\n\n setter: function (path) {\n var parts = normalizePath(path)\n\n return (\n setCache.get(path) ||\n setCache.set(path, function setter(obj, value) {\n var index = 0\n var len = parts.length\n var data = obj\n\n while (index < len - 1) {\n var part = parts[index]\n if (\n part === '__proto__' ||\n part === 'constructor' ||\n part === 'prototype'\n ) {\n return obj\n }\n\n data = data[parts[index++]]\n }\n data[parts[index]] = value\n })\n )\n },\n\n getter: function (path, safe) {\n var parts = normalizePath(path)\n return (\n getCache.get(path) ||\n getCache.set(path, function getter(data) {\n var index = 0,\n len = parts.length\n while (index < len) {\n if (data != null || !safe) data = data[parts[index++]]\n else return\n }\n return data\n })\n )\n },\n\n join: function (segments) {\n return segments.reduce(function (path, part) {\n return (\n path +\n (isQuoted(part) || DIGIT_REGEX.test(part)\n ? '[' + part + ']'\n : (path ? '.' : '') + part)\n )\n }, '')\n },\n\n forEach: function (path, cb, thisArg) {\n forEach(Array.isArray(path) ? path : split(path), cb, thisArg)\n },\n}\n\nfunction normalizePath(path) {\n return (\n pathCache.get(path) ||\n pathCache.set(\n path,\n split(path).map(function (part) {\n return part.replace(CLEAN_QUOTES_REGEX, '$2')\n })\n )\n )\n}\n\nfunction split(path) {\n return path.match(SPLIT_REGEX) || ['']\n}\n\nfunction forEach(parts, iter, thisArg) {\n var len = parts.length,\n part,\n idx,\n isArray,\n isBracket\n\n for (idx = 0; idx < len; idx++) {\n part = parts[idx]\n\n if (part) {\n if (shouldBeQuoted(part)) {\n part = '\"' + part + '\"'\n }\n\n isBracket = isQuoted(part)\n isArray = !isBracket && /^\\d+$/.test(part)\n\n iter.call(thisArg, part, isBracket, isArray, idx, parts)\n }\n }\n}\n\nfunction isQuoted(str) {\n return (\n typeof str === 'string' && str && [\"'\", '\"'].indexOf(str.charAt(0)) !== -1\n )\n}\n\nfunction hasLeadingNumber(part) {\n return part.match(LEAD_DIGIT_REGEX) && !part.match(DIGIT_REGEX)\n}\n\nfunction hasSpecialChars(part) {\n return SPEC_CHAR_REGEX.test(part)\n}\n\nfunction shouldBeQuoted(part) {\n return !isQuoted(part) && (hasLeadingNumber(part) || hasSpecialChars(part))\n}\n","'use strict';\n\nfunction getText(rootChild) {\n var res = '';\n var rr = function rr(child) {\n if (typeof child === 'string' || typeof child === 'number') {\n res += child;\n } else if (Array.isArray(child)) {\n child.forEach(function (c) {\n return rr(c);\n });\n } else if (child && child.props) {\n var children = child.props.children;\n\n\n if (Array.isArray(children)) {\n children.forEach(function (c) {\n return rr(c);\n });\n } else {\n rr(children);\n }\n }\n };\n\n rr(rootChild);\n\n return res;\n}\n\nmodule.exports = getText;","import _inheritsLoose from '@babel/runtime/helpers/esm/inheritsLoose';\nimport _defineProperty from '@babel/runtime/helpers/esm/defineProperty';\nimport React, { PureComponent } from 'react';\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (process.env.NODE_ENV !== \"production\") {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n handleStateChangeOnClient(state);\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n }\n\n // Try to use displayName of wrapped component\n SideEffect.peek = function peek() {\n return state;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n return SideEffect;\n };\n}\n\nexport default withSideEffect;\n","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\n\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView;\n\n// Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.3\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n\n var length, i, keys;\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (!equal(a[i], b[i])) return false;\n return true;\n }\n\n // START: Modifications:\n // 1. Extra `has &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n var it;\n if (hasMap && (a instanceof Map) && (b instanceof Map)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n return true;\n }\n\n if (hasSet && (a instanceof Set) && (b instanceof Set)) {\n if (a.size !== b.size) return false;\n it = a.entries();\n while (!(i = it.next()).done)\n if (!b.has(i.value[0])) return false;\n return true;\n }\n // END: Modifications\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n for (i = length; i-- !== 0;)\n if (a[i] !== b[i]) return false;\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n // START: Modifications:\n // Apply guards for `Object.create(null)` handling. See:\n // - https://github.com/FormidableLabs/react-fast-compare/issues/64\n // - https://github.com/epoberezkin/fast-deep-equal/issues/49\n if (a.valueOf !== Object.prototype.valueOf && typeof a.valueOf === 'function' && typeof b.valueOf === 'function') return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString && typeof a.toString === 'function' && typeof b.toString === 'function') return a.toString() === b.toString();\n // END: Modifications\n\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;)\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n // END: fast-deep-equal\n\n // START: react-fast-compare\n // custom handling for DOM elements\n if (hasElementType && a instanceof Element) return false;\n\n // custom handling for React/Preact\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n\n continue;\n }\n\n // all other properties should be traversed as usual\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n }\n // END: react-fast-compare\n\n // START: fast-deep-equal\n return true;\n }\n\n return a !== a && b !== b;\n}\n// end fast-deep-equal\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if (((error.message || '').match(/stack|recursion/i))) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n }\n // some other error. we should definitely know about these\n throw error;\n }\n};\n","import e,{createContext as t,useState as r,useRef as o,useEffect as n,useCallback as a,useMemo as c,useContext as i}from\"react\";\n/*! *****************************************************************************\nCopyright (c) Microsoft Corporation.\n\nPermission to use, copy, modify, and/or distribute this software for any\npurpose with or without fee is hereby granted.\n\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\nPERFORMANCE OF THIS SOFTWARE.\n***************************************************************************** */var s=function(){return s=Object.assign||function(e){for(var t,r=1,o=arguments.length;r0&&n[n.length-1])||6!==a[0]&&2!==a[0])){c=0;continue}if(3===a[0]&&(!n||a[1]>n[0]&&a[1] \"+f.SCRIPT_NOT_AVAILABLE)},onError:function(){m(\"Error loading google recaptcha script\")}}),function(){d(e,null==S?void 0:S.element)}}m(\" recaptcha key not provided\")}),[l,b,E,R,g,i,null==S?void 0:S.element]);var M=a((function(e){if(!C||!C.execute)throw new Error(\" Google Recaptcha has not been loaded\");return C.execute(x.current,{action:e})}),[C,x]),N=c((function(){return{executeRecaptcha:C?M:void 0,container:null==S?void 0:S.element}}),[M,C,null==S?void 0:S.element]);return e.createElement(v.Provider,{value:N},w)}var g=function(){return i(v)};function S(t){var r=this,o=t.action,a=t.onVerify,c=t.refreshReCaptcha,i=g();n((function(){var e=i.executeRecaptcha;if(e){u(r,void 0,void 0,(function(){var t;return l(this,(function(r){switch(r.label){case 0:return[4,e(o)];case 1:return t=r.sent(),a?(a(t),[2]):(m(\"Please define an onVerify function\"),[2])}}))}))}}),[o,a,c,i]);var s=i.container;return\"string\"==typeof s?e.createElement(\"div\",{id:s}):null}function w(e,t){return e(t={exports:{}},t.exports),t.exports\n/** @license React v16.13.1\n * react-is.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */}var $=\"function\"==typeof Symbol&&Symbol.for,C=$?Symbol.for(\"react.element\"):60103,P=$?Symbol.for(\"react.portal\"):60106,x=$?Symbol.for(\"react.fragment\"):60107,E=$?Symbol.for(\"react.strict_mode\"):60108,R=$?Symbol.for(\"react.profiler\"):60114,M=$?Symbol.for(\"react.provider\"):60109,N=$?Symbol.for(\"react.context\"):60110,O=$?Symbol.for(\"react.async_mode\"):60111,_=$?Symbol.for(\"react.concurrent_mode\"):60111,T=$?Symbol.for(\"react.forward_ref\"):60112,j=$?Symbol.for(\"react.suspense\"):60113,L=$?Symbol.for(\"react.suspense_list\"):60120,k=$?Symbol.for(\"react.memo\"):60115,F=$?Symbol.for(\"react.lazy\"):60116,A=$?Symbol.for(\"react.block\"):60121,V=$?Symbol.for(\"react.fundamental\"):60117,z=$?Symbol.for(\"react.responder\"):60118,G=$?Symbol.for(\"react.scope\"):60119;function I(e){if(\"object\"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case C:switch(e=e.type){case O:case _:case x:case R:case E:case j:return e;default:switch(e=e&&e.$$typeof){case N:case T:case F:case k:case M:return e;default:return t}}case P:return t}}}function D(e){return I(e)===_}var q={AsyncMode:O,ConcurrentMode:_,ContextConsumer:N,ContextProvider:M,Element:C,ForwardRef:T,Fragment:x,Lazy:F,Memo:k,Portal:P,Profiler:R,StrictMode:E,Suspense:j,isAsyncMode:function(e){return D(e)||I(e)===O},isConcurrentMode:D,isContextConsumer:function(e){return I(e)===N},isContextProvider:function(e){return I(e)===M},isElement:function(e){return\"object\"==typeof e&&null!==e&&e.$$typeof===C},isForwardRef:function(e){return I(e)===T},isFragment:function(e){return I(e)===x},isLazy:function(e){return I(e)===F},isMemo:function(e){return I(e)===k},isPortal:function(e){return I(e)===P},isProfiler:function(e){return I(e)===R},isStrictMode:function(e){return I(e)===E},isSuspense:function(e){return I(e)===j},isValidElementType:function(e){return\"string\"==typeof e||\"function\"==typeof e||e===x||e===_||e===R||e===E||e===j||e===L||\"object\"==typeof e&&null!==e&&(e.$$typeof===F||e.$$typeof===k||e.$$typeof===M||e.$$typeof===N||e.$$typeof===T||e.$$typeof===V||e.$$typeof===z||e.$$typeof===G||e.$$typeof===A)},typeOf:I},B=w((function(e,t){\"production\"!==process.env.NODE_ENV&&function(){var e=\"function\"==typeof Symbol&&Symbol.for,r=e?Symbol.for(\"react.element\"):60103,o=e?Symbol.for(\"react.portal\"):60106,n=e?Symbol.for(\"react.fragment\"):60107,a=e?Symbol.for(\"react.strict_mode\"):60108,c=e?Symbol.for(\"react.profiler\"):60114,i=e?Symbol.for(\"react.provider\"):60109,s=e?Symbol.for(\"react.context\"):60110,u=e?Symbol.for(\"react.async_mode\"):60111,l=e?Symbol.for(\"react.concurrent_mode\"):60111,f=e?Symbol.for(\"react.forward_ref\"):60112,p=e?Symbol.for(\"react.suspense\"):60113,d=e?Symbol.for(\"react.suspense_list\"):60120,y=e?Symbol.for(\"react.memo\"):60115,m=e?Symbol.for(\"react.lazy\"):60116,v=e?Symbol.for(\"react.block\"):60121,b=e?Symbol.for(\"react.fundamental\"):60117,h=e?Symbol.for(\"react.responder\"):60118,g=e?Symbol.for(\"react.scope\"):60119;function S(e){if(\"object\"==typeof e&&null!==e){var t=e.$$typeof;switch(t){case r:var d=e.type;switch(d){case u:case l:case n:case c:case a:case p:return d;default:var v=d&&d.$$typeof;switch(v){case s:case f:case m:case y:case i:return v;default:return t}}case o:return t}}}var w=u,$=l,C=s,P=i,x=r,E=f,R=n,M=m,N=y,O=o,_=c,T=a,j=p,L=!1;function k(e){return S(e)===l}t.AsyncMode=w,t.ConcurrentMode=$,t.ContextConsumer=C,t.ContextProvider=P,t.Element=x,t.ForwardRef=E,t.Fragment=R,t.Lazy=M,t.Memo=N,t.Portal=O,t.Profiler=_,t.StrictMode=T,t.Suspense=j,t.isAsyncMode=function(e){return L||(L=!0,console.warn(\"The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.\")),k(e)||S(e)===u},t.isConcurrentMode=k,t.isContextConsumer=function(e){return S(e)===s},t.isContextProvider=function(e){return S(e)===i},t.isElement=function(e){return\"object\"==typeof e&&null!==e&&e.$$typeof===r},t.isForwardRef=function(e){return S(e)===f},t.isFragment=function(e){return S(e)===n},t.isLazy=function(e){return S(e)===m},t.isMemo=function(e){return S(e)===y},t.isPortal=function(e){return S(e)===o},t.isProfiler=function(e){return S(e)===c},t.isStrictMode=function(e){return S(e)===a},t.isSuspense=function(e){return S(e)===p},t.isValidElementType=function(e){return\"string\"==typeof e||\"function\"==typeof e||e===n||e===l||e===c||e===a||e===p||e===d||\"object\"==typeof e&&null!==e&&(e.$$typeof===m||e.$$typeof===y||e.$$typeof===i||e.$$typeof===s||e.$$typeof===f||e.$$typeof===b||e.$$typeof===h||e.$$typeof===g||e.$$typeof===v)},t.typeOf=S}()})),J=(B.AsyncMode,B.ConcurrentMode,B.ContextConsumer,B.ContextProvider,B.Element,B.ForwardRef,B.Fragment,B.Lazy,B.Memo,B.Portal,B.Profiler,B.StrictMode,B.Suspense,B.isAsyncMode,B.isConcurrentMode,B.isContextConsumer,B.isContextProvider,B.isElement,B.isForwardRef,B.isFragment,B.isLazy,B.isMemo,B.isPortal,B.isProfiler,B.isStrictMode,B.isSuspense,B.isValidElementType,B.typeOf,w((function(e){\"production\"===process.env.NODE_ENV?e.exports=q:e.exports=B}))),K={childContextTypes:!0,contextType:!0,contextTypes:!0,defaultProps:!0,displayName:!0,getDefaultProps:!0,getDerivedStateFromError:!0,getDerivedStateFromProps:!0,mixins:!0,propTypes:!0,type:!0},U={name:!0,length:!0,prototype:!0,caller:!0,callee:!0,arguments:!0,arity:!0},H={$$typeof:!0,compare:!0,defaultProps:!0,displayName:!0,propTypes:!0,type:!0},Q={};function W(e){return J.isMemo(e)?H:Q[e.$$typeof]||K}Q[J.ForwardRef]={$$typeof:!0,render:!0,defaultProps:!0,displayName:!0,propTypes:!0},Q[J.Memo]=H;var X=Object.defineProperty,Y=Object.getOwnPropertyNames,Z=Object.getOwnPropertySymbols,ee=Object.getOwnPropertyDescriptor,te=Object.getPrototypeOf,re=Object.prototype;var oe=function e(t,r,o){if(\"string\"!=typeof r){if(re){var n=te(r);n&&n!==re&&e(t,n,o)}var a=Y(r);Z&&(a=a.concat(Z(r)));for(var c=W(t),i=W(r),s=0;s 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return fn.apply(void 0, args);\n }\n};\n/**\n * Sets a ref using either a ref callback or a ref object\n */\n\nexport var setRef = function setRef(ref, node) {\n // if its a function call it\n if (typeof ref === 'function') {\n return safeInvoke(ref, node);\n } // otherwise we should treat it as a ref object\n else if (ref != null) {\n ref.current = node;\n }\n};\n/**\n * Simple ponyfill for Object.fromEntries\n */\n\nexport var fromEntries = function fromEntries(entries) {\n return entries.reduce(function (acc, _ref) {\n var key = _ref[0],\n value = _ref[1];\n acc[key] = value;\n return acc;\n }, {});\n};\n/**\n * Small wrapper around `useLayoutEffect` to get rid of the warning on SSR envs\n */\n\nexport var useIsomorphicLayoutEffect = typeof window !== 'undefined' && window.document && window.document.createElement ? React.useLayoutEffect : React.useEffect;","/**\n * React Router DOM v6.3.0\n *\n * Copyright (c) Remix Software Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { useRef, useState, useLayoutEffect, createElement, forwardRef, useCallback, useMemo } from 'react';\nimport { createBrowserHistory, createHashHistory } from 'history';\nimport { Router, useHref, createPath, useLocation, useResolvedPath, useNavigate } from 'react-router';\nexport { MemoryRouter, Navigate, NavigationType, Outlet, Route, Router, Routes, UNSAFE_LocationContext, UNSAFE_NavigationContext, UNSAFE_RouteContext, createPath, createRoutesFromChildren, generatePath, matchPath, matchRoutes, parsePath, renderMatches, resolvePath, useHref, useInRouterContext, useLocation, useMatch, useNavigate, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRoutes } from 'react-router';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\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\nconst _excluded = [\"onClick\", \"reloadDocument\", \"replace\", \"state\", \"target\", \"to\"],\n _excluded2 = [\"aria-current\", \"caseSensitive\", \"className\", \"end\", \"style\", \"to\", \"children\"];\n\nfunction warning(cond, message) {\n if (!cond) {\n // eslint-disable-next-line no-console\n if (typeof console !== \"undefined\") console.warn(message);\n\n try {\n // Welcome to debugging React Router!\n //\n // This error is thrown as a convenience so you can more easily\n // find the source for a warning that appears in the console by\n // enabling \"pause on exceptions\" in your JavaScript debugger.\n throw new Error(message); // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n} ////////////////////////////////////////////////////////////////////////////////\n// COMPONENTS\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * A `` for use in web browsers. Provides the cleanest URLs.\n */\nfunction BrowserRouter(_ref) {\n let {\n basename,\n children,\n window\n } = _ref;\n let historyRef = useRef();\n\n if (historyRef.current == null) {\n historyRef.current = createBrowserHistory({\n window\n });\n }\n\n let history = historyRef.current;\n let [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\n/**\n * A `` for use in web browsers. Stores the location in the hash\n * portion of the URL so it is not sent to the server.\n */\nfunction HashRouter(_ref2) {\n let {\n basename,\n children,\n window\n } = _ref2;\n let historyRef = useRef();\n\n if (historyRef.current == null) {\n historyRef.current = createHashHistory({\n window\n });\n }\n\n let history = historyRef.current;\n let [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\n/**\n * A `` that accepts a pre-instantiated history object. It's important\n * to note that using your own history object is highly discouraged and may add\n * two versions of the history library to your bundles unless you use the same\n * version of the history library that React Router uses internally.\n */\nfunction HistoryRouter(_ref3) {\n let {\n basename,\n children,\n history\n } = _ref3;\n const [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\nif (process.env.NODE_ENV !== \"production\") {\n HistoryRouter.displayName = \"unstable_HistoryRouter\";\n}\n\nfunction isModifiedEvent(event) {\n return !!(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n}\n\n/**\n * The public API for rendering a history-aware
.\n */\nconst Link = /*#__PURE__*/forwardRef(function LinkWithRef(_ref4, ref) {\n let {\n onClick,\n reloadDocument,\n replace = false,\n state,\n target,\n to\n } = _ref4,\n rest = _objectWithoutPropertiesLoose(_ref4, _excluded);\n\n let href = useHref(to);\n let internalOnClick = useLinkClickHandler(to, {\n replace,\n state,\n target\n });\n\n function handleClick(event) {\n if (onClick) onClick(event);\n\n if (!event.defaultPrevented && !reloadDocument) {\n internalOnClick(event);\n }\n }\n\n return (\n /*#__PURE__*/\n // eslint-disable-next-line jsx-a11y/anchor-has-content\n createElement(\"a\", _extends({}, rest, {\n href: href,\n onClick: handleClick,\n ref: ref,\n target: target\n }))\n );\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n Link.displayName = \"Link\";\n}\n\n/**\n * A wrapper that knows if it's \"active\" or not.\n */\nconst NavLink = /*#__PURE__*/forwardRef(function NavLinkWithRef(_ref5, ref) {\n let {\n \"aria-current\": ariaCurrentProp = \"page\",\n caseSensitive = false,\n className: classNameProp = \"\",\n end = false,\n style: styleProp,\n to,\n children\n } = _ref5,\n rest = _objectWithoutPropertiesLoose(_ref5, _excluded2);\n\n let location = useLocation();\n let path = useResolvedPath(to);\n let locationPathname = location.pathname;\n let toPathname = path.pathname;\n\n if (!caseSensitive) {\n locationPathname = locationPathname.toLowerCase();\n toPathname = toPathname.toLowerCase();\n }\n\n let isActive = locationPathname === toPathname || !end && locationPathname.startsWith(toPathname) && locationPathname.charAt(toPathname.length) === \"/\";\n let ariaCurrent = isActive ? ariaCurrentProp : undefined;\n let className;\n\n if (typeof classNameProp === \"function\") {\n className = classNameProp({\n isActive\n });\n } else {\n // If the className prop is not a function, we use a default `active`\n // class for s that are active. In v5 `active` was the default\n // value for `activeClassName`, but we are removing that API and can still\n // use the old default behavior for a cleaner upgrade path and keep the\n // simple styling rules working as they currently do.\n className = [classNameProp, isActive ? \"active\" : null].filter(Boolean).join(\" \");\n }\n\n let style = typeof styleProp === \"function\" ? styleProp({\n isActive\n }) : styleProp;\n return /*#__PURE__*/createElement(Link, _extends({}, rest, {\n \"aria-current\": ariaCurrent,\n className: className,\n ref: ref,\n style: style,\n to: to\n }), typeof children === \"function\" ? children({\n isActive\n }) : children);\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n NavLink.displayName = \"NavLink\";\n} ////////////////////////////////////////////////////////////////////////////////\n// HOOKS\n////////////////////////////////////////////////////////////////////////////////\n\n/**\n * Handles the click behavior for router `` components. This is useful if\n * you need to create custom `` components with the same click behavior we\n * use in our exported ``.\n */\n\n\nfunction useLinkClickHandler(to, _temp) {\n let {\n target,\n replace: replaceProp,\n state\n } = _temp === void 0 ? {} : _temp;\n let navigate = useNavigate();\n let location = useLocation();\n let path = useResolvedPath(to);\n return useCallback(event => {\n if (event.button === 0 && ( // Ignore everything but left clicks\n !target || target === \"_self\") && // Let browser handle \"target=_blank\" etc.\n !isModifiedEvent(event) // Ignore clicks with modifier keys\n ) {\n event.preventDefault(); // If the URL hasn't changed, a regular will do a replace instead of\n // a push, so do the same here.\n\n let replace = !!replaceProp || createPath(location) === createPath(path);\n navigate(to, {\n replace,\n state\n });\n }\n }, [location, navigate, path, replaceProp, state, target, to]);\n}\n/**\n * A convenient wrapper for reading and writing search parameters via the\n * URLSearchParams interface.\n */\n\nfunction useSearchParams(defaultInit) {\n process.env.NODE_ENV !== \"production\" ? warning(typeof URLSearchParams !== \"undefined\", \"You cannot use the `useSearchParams` hook in a browser that does not \" + \"support the URLSearchParams API. If you need to support Internet \" + \"Explorer 11, we recommend you load a polyfill such as \" + \"https://github.com/ungap/url-search-params\\n\\n\" + \"If you're unsure how to load polyfills, we recommend you check out \" + \"https://polyfill.io/v3/ which provides some recommendations about how \" + \"to load polyfills only for users that need them, instead of for every \" + \"user.\") : void 0;\n let defaultSearchParamsRef = useRef(createSearchParams(defaultInit));\n let location = useLocation();\n let searchParams = useMemo(() => {\n let searchParams = createSearchParams(location.search);\n\n for (let key of defaultSearchParamsRef.current.keys()) {\n if (!searchParams.has(key)) {\n defaultSearchParamsRef.current.getAll(key).forEach(value => {\n searchParams.append(key, value);\n });\n }\n }\n\n return searchParams;\n }, [location.search]);\n let navigate = useNavigate();\n let setSearchParams = useCallback((nextInit, navigateOptions) => {\n navigate(\"?\" + createSearchParams(nextInit), navigateOptions);\n }, [navigate]);\n return [searchParams, setSearchParams];\n}\n\n/**\n * Creates a URLSearchParams object using the given initializer.\n *\n * This is identical to `new URLSearchParams(init)` except it also\n * supports arrays as values in the object form of the initializer\n * instead of just strings. This is convenient when you need multiple\n * values for a given key, but don't want to use an array initializer.\n *\n * For example, instead of:\n *\n * let searchParams = new URLSearchParams([\n * ['sort', 'name'],\n * ['sort', 'price']\n * ]);\n *\n * you can do:\n *\n * let searchParams = createSearchParams({\n * sort: ['name', 'price']\n * });\n */\nfunction createSearchParams(init) {\n if (init === void 0) {\n init = \"\";\n }\n\n return new URLSearchParams(typeof init === \"string\" || Array.isArray(init) || init instanceof URLSearchParams ? init : Object.keys(init).reduce((memo, key) => {\n let value = init[key];\n return memo.concat(Array.isArray(value) ? value.map(v => [key, v]) : [[key, value]]);\n }, []));\n}\n\nexport { BrowserRouter, HashRouter, Link, NavLink, createSearchParams, HistoryRouter as unstable_HistoryRouter, useLinkClickHandler, useSearchParams };\n//# sourceMappingURL=index.js.map\n","/**\n * React Router v6.3.0\n *\n * Copyright (c) Remix Software Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE.md file in the root directory of this source tree.\n *\n * @license MIT\n */\nimport { parsePath, createMemoryHistory, Action } from 'history';\nexport { Action as NavigationType, createPath, parsePath } from 'history';\nimport { createContext, useContext, useMemo, useRef, useEffect, useCallback, createElement, useState, useLayoutEffect, Children, isValidElement, Fragment } from 'react';\n\nconst NavigationContext = /*#__PURE__*/createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n NavigationContext.displayName = \"Navigation\";\n}\n\nconst LocationContext = /*#__PURE__*/createContext(null);\n\nif (process.env.NODE_ENV !== \"production\") {\n LocationContext.displayName = \"Location\";\n}\n\nconst RouteContext = /*#__PURE__*/createContext({\n outlet: null,\n matches: []\n});\n\nif (process.env.NODE_ENV !== \"production\") {\n RouteContext.displayName = \"Route\";\n}\n\nfunction invariant(cond, message) {\n if (!cond) throw new Error(message);\n}\nfunction warning(cond, message) {\n if (!cond) {\n // eslint-disable-next-line no-console\n if (typeof console !== \"undefined\") console.warn(message);\n\n try {\n // Welcome to debugging React Router!\n //\n // This error is thrown as a convenience so you can more easily\n // find the source for a warning that appears in the console by\n // enabling \"pause on exceptions\" in your JavaScript debugger.\n throw new Error(message); // eslint-disable-next-line no-empty\n } catch (e) {}\n }\n}\nconst alreadyWarned = {};\nfunction warningOnce(key, cond, message) {\n if (!cond && !alreadyWarned[key]) {\n alreadyWarned[key] = true;\n process.env.NODE_ENV !== \"production\" ? warning(false, message) : void 0;\n }\n}\n\n/**\n * Returns a path with params interpolated.\n *\n * @see https://reactrouter.com/docs/en/v6/api#generatepath\n */\nfunction generatePath(path, params) {\n if (params === void 0) {\n params = {};\n }\n\n return path.replace(/:(\\w+)/g, (_, key) => {\n !(params[key] != null) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Missing \\\":\" + key + \"\\\" param\") : invariant(false) : void 0;\n return params[key];\n }).replace(/\\/*\\*$/, _ => params[\"*\"] == null ? \"\" : params[\"*\"].replace(/^\\/*/, \"/\"));\n}\n/**\n * A RouteMatch contains info about how a route matched a URL.\n */\n\n/**\n * Matches the given routes to a location and returns the match data.\n *\n * @see https://reactrouter.com/docs/en/v6/api#matchroutes\n */\nfunction matchRoutes(routes, locationArg, basename) {\n if (basename === void 0) {\n basename = \"/\";\n }\n\n let location = typeof locationArg === \"string\" ? parsePath(locationArg) : locationArg;\n let pathname = stripBasename(location.pathname || \"/\", basename);\n\n if (pathname == null) {\n return null;\n }\n\n let branches = flattenRoutes(routes);\n rankRouteBranches(branches);\n let matches = null;\n\n for (let i = 0; matches == null && i < branches.length; ++i) {\n matches = matchRouteBranch(branches[i], pathname);\n }\n\n return matches;\n}\n\nfunction flattenRoutes(routes, branches, parentsMeta, parentPath) {\n if (branches === void 0) {\n branches = [];\n }\n\n if (parentsMeta === void 0) {\n parentsMeta = [];\n }\n\n if (parentPath === void 0) {\n parentPath = \"\";\n }\n\n routes.forEach((route, index) => {\n let meta = {\n relativePath: route.path || \"\",\n caseSensitive: route.caseSensitive === true,\n childrenIndex: index,\n route\n };\n\n if (meta.relativePath.startsWith(\"/\")) {\n !meta.relativePath.startsWith(parentPath) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Absolute route path \\\"\" + meta.relativePath + \"\\\" nested under path \" + (\"\\\"\" + parentPath + \"\\\" is not valid. An absolute child route path \") + \"must start with the combined path of all its parent routes.\") : invariant(false) : void 0;\n meta.relativePath = meta.relativePath.slice(parentPath.length);\n }\n\n let path = joinPaths([parentPath, meta.relativePath]);\n let routesMeta = parentsMeta.concat(meta); // Add the children before adding this route to the array so we traverse the\n // route tree depth-first and child routes appear before their parents in\n // the \"flattened\" version.\n\n if (route.children && route.children.length > 0) {\n !(route.index !== true) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Index routes must not have child routes. Please remove \" + (\"all child routes from route path \\\"\" + path + \"\\\".\")) : invariant(false) : void 0;\n flattenRoutes(route.children, branches, routesMeta, path);\n } // Routes without a path shouldn't ever match by themselves unless they are\n // index routes, so don't add them to the list of possible branches.\n\n\n if (route.path == null && !route.index) {\n return;\n }\n\n branches.push({\n path,\n score: computeScore(path, route.index),\n routesMeta\n });\n });\n return branches;\n}\n\nfunction rankRouteBranches(branches) {\n branches.sort((a, b) => a.score !== b.score ? b.score - a.score // Higher score first\n : compareIndexes(a.routesMeta.map(meta => meta.childrenIndex), b.routesMeta.map(meta => meta.childrenIndex)));\n}\n\nconst paramRe = /^:\\w+$/;\nconst dynamicSegmentValue = 3;\nconst indexRouteValue = 2;\nconst emptySegmentValue = 1;\nconst staticSegmentValue = 10;\nconst splatPenalty = -2;\n\nconst isSplat = s => s === \"*\";\n\nfunction computeScore(path, index) {\n let segments = path.split(\"/\");\n let initialScore = segments.length;\n\n if (segments.some(isSplat)) {\n initialScore += splatPenalty;\n }\n\n if (index) {\n initialScore += indexRouteValue;\n }\n\n return segments.filter(s => !isSplat(s)).reduce((score, segment) => score + (paramRe.test(segment) ? dynamicSegmentValue : segment === \"\" ? emptySegmentValue : staticSegmentValue), initialScore);\n}\n\nfunction compareIndexes(a, b) {\n let siblings = a.length === b.length && a.slice(0, -1).every((n, i) => n === b[i]);\n return siblings ? // If two routes are siblings, we should try to match the earlier sibling\n // first. This allows people to have fine-grained control over the matching\n // behavior by simply putting routes with identical paths in the order they\n // want them tried.\n a[a.length - 1] - b[b.length - 1] : // Otherwise, it doesn't really make sense to rank non-siblings by index,\n // so they sort equally.\n 0;\n}\n\nfunction matchRouteBranch(branch, pathname) {\n let {\n routesMeta\n } = branch;\n let matchedParams = {};\n let matchedPathname = \"/\";\n let matches = [];\n\n for (let i = 0; i < routesMeta.length; ++i) {\n let meta = routesMeta[i];\n let end = i === routesMeta.length - 1;\n let remainingPathname = matchedPathname === \"/\" ? pathname : pathname.slice(matchedPathname.length) || \"/\";\n let match = matchPath({\n path: meta.relativePath,\n caseSensitive: meta.caseSensitive,\n end\n }, remainingPathname);\n if (!match) return null;\n Object.assign(matchedParams, match.params);\n let route = meta.route;\n matches.push({\n params: matchedParams,\n pathname: joinPaths([matchedPathname, match.pathname]),\n pathnameBase: normalizePathname(joinPaths([matchedPathname, match.pathnameBase])),\n route\n });\n\n if (match.pathnameBase !== \"/\") {\n matchedPathname = joinPaths([matchedPathname, match.pathnameBase]);\n }\n }\n\n return matches;\n}\n/**\n * A PathPattern is used to match on some portion of a URL pathname.\n */\n\n\n/**\n * Performs pattern matching on a URL pathname and returns information about\n * the match.\n *\n * @see https://reactrouter.com/docs/en/v6/api#matchpath\n */\nfunction matchPath(pattern, pathname) {\n if (typeof pattern === \"string\") {\n pattern = {\n path: pattern,\n caseSensitive: false,\n end: true\n };\n }\n\n let [matcher, paramNames] = compilePath(pattern.path, pattern.caseSensitive, pattern.end);\n let match = pathname.match(matcher);\n if (!match) return null;\n let matchedPathname = match[0];\n let pathnameBase = matchedPathname.replace(/(.)\\/+$/, \"$1\");\n let captureGroups = match.slice(1);\n let params = paramNames.reduce((memo, paramName, index) => {\n // We need to compute the pathnameBase here using the raw splat value\n // instead of using params[\"*\"] later because it will be decoded then\n if (paramName === \"*\") {\n let splatValue = captureGroups[index] || \"\";\n pathnameBase = matchedPathname.slice(0, matchedPathname.length - splatValue.length).replace(/(.)\\/+$/, \"$1\");\n }\n\n memo[paramName] = safelyDecodeURIComponent(captureGroups[index] || \"\", paramName);\n return memo;\n }, {});\n return {\n params,\n pathname: matchedPathname,\n pathnameBase,\n pattern\n };\n}\n\nfunction compilePath(path, caseSensitive, end) {\n if (caseSensitive === void 0) {\n caseSensitive = false;\n }\n\n if (end === void 0) {\n end = true;\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(path === \"*\" || !path.endsWith(\"*\") || path.endsWith(\"/*\"), \"Route path \\\"\" + path + \"\\\" will be treated as if it were \" + (\"\\\"\" + path.replace(/\\*$/, \"/*\") + \"\\\" because the `*` character must \") + \"always follow a `/` in the pattern. To get rid of this warning, \" + (\"please change the route path to \\\"\" + path.replace(/\\*$/, \"/*\") + \"\\\".\")) : void 0;\n let paramNames = [];\n let regexpSource = \"^\" + path.replace(/\\/*\\*?$/, \"\") // Ignore trailing / and /*, we'll handle it below\n .replace(/^\\/*/, \"/\") // Make sure it has a leading /\n .replace(/[\\\\.*+^$?{}|()[\\]]/g, \"\\\\$&\") // Escape special regex chars\n .replace(/:(\\w+)/g, (_, paramName) => {\n paramNames.push(paramName);\n return \"([^\\\\/]+)\";\n });\n\n if (path.endsWith(\"*\")) {\n paramNames.push(\"*\");\n regexpSource += path === \"*\" || path === \"/*\" ? \"(.*)$\" // Already matched the initial /, just match the rest\n : \"(?:\\\\/(.+)|\\\\/*)$\"; // Don't include the / in params[\"*\"]\n } else {\n regexpSource += end ? \"\\\\/*$\" // When matching to the end, ignore trailing slashes\n : // Otherwise, match a word boundary or a proceeding /. The word boundary restricts\n // parent routes to matching only their own words and nothing more, e.g. parent\n // route \"/home\" should not match \"/home2\".\n // Additionally, allow paths starting with `.`, `-`, `~`, and url-encoded entities,\n // but do not consume the character in the matched path so they can match against\n // nested paths.\n \"(?:(?=[.~-]|%[0-9A-F]{2})|\\\\b|\\\\/|$)\";\n }\n\n let matcher = new RegExp(regexpSource, caseSensitive ? undefined : \"i\");\n return [matcher, paramNames];\n}\n\nfunction safelyDecodeURIComponent(value, paramName) {\n try {\n return decodeURIComponent(value);\n } catch (error) {\n process.env.NODE_ENV !== \"production\" ? warning(false, \"The value for the URL param \\\"\" + paramName + \"\\\" will not be decoded because\" + (\" the string \\\"\" + value + \"\\\" is a malformed URL segment. This is probably\") + (\" due to a bad percent encoding (\" + error + \").\")) : void 0;\n return value;\n }\n}\n/**\n * Returns a resolved path object relative to the given pathname.\n *\n * @see https://reactrouter.com/docs/en/v6/api#resolvepath\n */\n\n\nfunction resolvePath(to, fromPathname) {\n if (fromPathname === void 0) {\n fromPathname = \"/\";\n }\n\n let {\n pathname: toPathname,\n search = \"\",\n hash = \"\"\n } = typeof to === \"string\" ? parsePath(to) : to;\n let pathname = toPathname ? toPathname.startsWith(\"/\") ? toPathname : resolvePathname(toPathname, fromPathname) : fromPathname;\n return {\n pathname,\n search: normalizeSearch(search),\n hash: normalizeHash(hash)\n };\n}\n\nfunction resolvePathname(relativePath, fromPathname) {\n let segments = fromPathname.replace(/\\/+$/, \"\").split(\"/\");\n let relativeSegments = relativePath.split(\"/\");\n relativeSegments.forEach(segment => {\n if (segment === \"..\") {\n // Keep the root \"\" segment so the pathname starts at /\n if (segments.length > 1) segments.pop();\n } else if (segment !== \".\") {\n segments.push(segment);\n }\n });\n return segments.length > 1 ? segments.join(\"/\") : \"/\";\n}\n\nfunction resolveTo(toArg, routePathnames, locationPathname) {\n let to = typeof toArg === \"string\" ? parsePath(toArg) : toArg;\n let toPathname = toArg === \"\" || to.pathname === \"\" ? \"/\" : to.pathname; // If a pathname is explicitly provided in `to`, it should be relative to the\n // route context. This is explained in `Note on `` values` in our\n // migration guide from v5 as a means of disambiguation between `to` values\n // that begin with `/` and those that do not. However, this is problematic for\n // `to` values that do not provide a pathname. `to` can simply be a search or\n // hash string, in which case we should assume that the navigation is relative\n // to the current location's pathname and *not* the route pathname.\n\n let from;\n\n if (toPathname == null) {\n from = locationPathname;\n } else {\n let routePathnameIndex = routePathnames.length - 1;\n\n if (toPathname.startsWith(\"..\")) {\n let toSegments = toPathname.split(\"/\"); // Each leading .. segment means \"go up one route\" instead of \"go up one\n // URL segment\". This is a key difference from how works and a\n // major reason we call this a \"to\" value instead of a \"href\".\n\n while (toSegments[0] === \"..\") {\n toSegments.shift();\n routePathnameIndex -= 1;\n }\n\n to.pathname = toSegments.join(\"/\");\n } // If there are more \"..\" segments than parent routes, resolve relative to\n // the root / URL.\n\n\n from = routePathnameIndex >= 0 ? routePathnames[routePathnameIndex] : \"/\";\n }\n\n let path = resolvePath(to, from); // Ensure the pathname has a trailing slash if the original to value had one.\n\n if (toPathname && toPathname !== \"/\" && toPathname.endsWith(\"/\") && !path.pathname.endsWith(\"/\")) {\n path.pathname += \"/\";\n }\n\n return path;\n}\nfunction getToPathname(to) {\n // Empty strings should be treated the same as / paths\n return to === \"\" || to.pathname === \"\" ? \"/\" : typeof to === \"string\" ? parsePath(to).pathname : to.pathname;\n}\nfunction stripBasename(pathname, basename) {\n if (basename === \"/\") return pathname;\n\n if (!pathname.toLowerCase().startsWith(basename.toLowerCase())) {\n return null;\n }\n\n let nextChar = pathname.charAt(basename.length);\n\n if (nextChar && nextChar !== \"/\") {\n // pathname does not start with basename/\n return null;\n }\n\n return pathname.slice(basename.length) || \"/\";\n}\nconst joinPaths = paths => paths.join(\"/\").replace(/\\/\\/+/g, \"/\");\nconst normalizePathname = pathname => pathname.replace(/\\/+$/, \"\").replace(/^\\/*/, \"/\");\n\nconst normalizeSearch = search => !search || search === \"?\" ? \"\" : search.startsWith(\"?\") ? search : \"?\" + search;\n\nconst normalizeHash = hash => !hash || hash === \"#\" ? \"\" : hash.startsWith(\"#\") ? hash : \"#\" + hash;\n\n/**\n * Returns the full href for the given \"to\" value. This is useful for building\n * custom links that are also accessible and preserve right-click behavior.\n *\n * @see https://reactrouter.com/docs/en/v6/api#usehref\n */\n\nfunction useHref(to) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useHref() may be used only in the context of a component.\") : invariant(false) : void 0;\n let {\n basename,\n navigator\n } = useContext(NavigationContext);\n let {\n hash,\n pathname,\n search\n } = useResolvedPath(to);\n let joinedPathname = pathname;\n\n if (basename !== \"/\") {\n let toPathname = getToPathname(to);\n let endsWithSlash = toPathname != null && toPathname.endsWith(\"/\");\n joinedPathname = pathname === \"/\" ? basename + (endsWithSlash ? \"/\" : \"\") : joinPaths([basename, pathname]);\n }\n\n return navigator.createHref({\n pathname: joinedPathname,\n search,\n hash\n });\n}\n/**\n * Returns true if this component is a descendant of a .\n *\n * @see https://reactrouter.com/docs/en/v6/api#useinroutercontext\n */\n\nfunction useInRouterContext() {\n return useContext(LocationContext) != null;\n}\n/**\n * Returns the current location object, which represents the current URL in web\n * browsers.\n *\n * Note: If you're using this it may mean you're doing some of your own\n * \"routing\" in your app, and we'd like to know what your use case is. We may\n * be able to provide something higher-level to better suit your needs.\n *\n * @see https://reactrouter.com/docs/en/v6/api#uselocation\n */\n\nfunction useLocation() {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useLocation() may be used only in the context of a component.\") : invariant(false) : void 0;\n return useContext(LocationContext).location;\n}\n/**\n * Returns the current navigation action which describes how the router came to\n * the current location, either by a pop, push, or replace on the history stack.\n *\n * @see https://reactrouter.com/docs/en/v6/api#usenavigationtype\n */\n\nfunction useNavigationType() {\n return useContext(LocationContext).navigationType;\n}\n/**\n * Returns true if the URL for the given \"to\" value matches the current URL.\n * This is useful for components that need to know \"active\" state, e.g.\n * .\n *\n * @see https://reactrouter.com/docs/en/v6/api#usematch\n */\n\nfunction useMatch(pattern) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useMatch() may be used only in the context of a component.\") : invariant(false) : void 0;\n let {\n pathname\n } = useLocation();\n return useMemo(() => matchPath(pattern, pathname), [pathname, pattern]);\n}\n/**\n * The interface for the navigate() function returned from useNavigate().\n */\n\n/**\n * Returns an imperative method for changing the location. Used by s, but\n * may also be used by other elements to change the location.\n *\n * @see https://reactrouter.com/docs/en/v6/api#usenavigate\n */\nfunction useNavigate() {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useNavigate() may be used only in the context of a component.\") : invariant(false) : void 0;\n let {\n basename,\n navigator\n } = useContext(NavigationContext);\n let {\n matches\n } = useContext(RouteContext);\n let {\n pathname: locationPathname\n } = useLocation();\n let routePathnamesJson = JSON.stringify(matches.map(match => match.pathnameBase));\n let activeRef = useRef(false);\n useEffect(() => {\n activeRef.current = true;\n });\n let navigate = useCallback(function (to, options) {\n if (options === void 0) {\n options = {};\n }\n\n process.env.NODE_ENV !== \"production\" ? warning(activeRef.current, \"You should call navigate() in a React.useEffect(), not when \" + \"your component is first rendered.\") : void 0;\n if (!activeRef.current) return;\n\n if (typeof to === \"number\") {\n navigator.go(to);\n return;\n }\n\n let path = resolveTo(to, JSON.parse(routePathnamesJson), locationPathname);\n\n if (basename !== \"/\") {\n path.pathname = joinPaths([basename, path.pathname]);\n }\n\n (!!options.replace ? navigator.replace : navigator.push)(path, options.state);\n }, [basename, navigator, routePathnamesJson, locationPathname]);\n return navigate;\n}\nconst OutletContext = /*#__PURE__*/createContext(null);\n/**\n * Returns the context (if provided) for the child route at this level of the route\n * hierarchy.\n * @see https://reactrouter.com/docs/en/v6/api#useoutletcontext\n */\n\nfunction useOutletContext() {\n return useContext(OutletContext);\n}\n/**\n * Returns the element for the child route at this level of the route\n * hierarchy. Used internally by to render child routes.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useoutlet\n */\n\nfunction useOutlet(context) {\n let outlet = useContext(RouteContext).outlet;\n\n if (outlet) {\n return /*#__PURE__*/createElement(OutletContext.Provider, {\n value: context\n }, outlet);\n }\n\n return outlet;\n}\n/**\n * Returns an object of key/value pairs of the dynamic params from the current\n * URL that were matched by the route path.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useparams\n */\n\nfunction useParams() {\n let {\n matches\n } = useContext(RouteContext);\n let routeMatch = matches[matches.length - 1];\n return routeMatch ? routeMatch.params : {};\n}\n/**\n * Resolves the pathname of the given `to` value against the current location.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useresolvedpath\n */\n\nfunction useResolvedPath(to) {\n let {\n matches\n } = useContext(RouteContext);\n let {\n pathname: locationPathname\n } = useLocation();\n let routePathnamesJson = JSON.stringify(matches.map(match => match.pathnameBase));\n return useMemo(() => resolveTo(to, JSON.parse(routePathnamesJson), locationPathname), [to, routePathnamesJson, locationPathname]);\n}\n/**\n * Returns the element of the route that matched the current location, prepared\n * with the correct context to render the remainder of the route tree. Route\n * elements in the tree must render an to render their child route's\n * element.\n *\n * @see https://reactrouter.com/docs/en/v6/api#useroutes\n */\n\nfunction useRoutes(routes, locationArg) {\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of the\n // router loaded. We can help them understand how to avoid that.\n \"useRoutes() may be used only in the context of a component.\") : invariant(false) : void 0;\n let {\n matches: parentMatches\n } = useContext(RouteContext);\n let routeMatch = parentMatches[parentMatches.length - 1];\n let parentParams = routeMatch ? routeMatch.params : {};\n let parentPathname = routeMatch ? routeMatch.pathname : \"/\";\n let parentPathnameBase = routeMatch ? routeMatch.pathnameBase : \"/\";\n let parentRoute = routeMatch && routeMatch.route;\n\n if (process.env.NODE_ENV !== \"production\") {\n // You won't get a warning about 2 different under a \n // without a trailing *, but this is a best-effort warning anyway since we\n // cannot even give the warning unless they land at the parent route.\n //\n // Example:\n //\n // \n // {/* This route path MUST end with /* because otherwise\n // it will never match /blog/post/123 */}\n // } />\n // } />\n // \n //\n // function Blog() {\n // return (\n // \n // } />\n // \n // );\n // }\n let parentPath = parentRoute && parentRoute.path || \"\";\n warningOnce(parentPathname, !parentRoute || parentPath.endsWith(\"*\"), \"You rendered descendant (or called `useRoutes()`) at \" + (\"\\\"\" + parentPathname + \"\\\" (under ) but the \") + \"parent route path has no trailing \\\"*\\\". This means if you navigate \" + \"deeper, the parent won't match anymore and therefore the child \" + \"routes will never render.\\n\\n\" + (\"Please change the parent to .\"));\n }\n\n let locationFromContext = useLocation();\n let location;\n\n if (locationArg) {\n var _parsedLocationArg$pa;\n\n let parsedLocationArg = typeof locationArg === \"string\" ? parsePath(locationArg) : locationArg;\n !(parentPathnameBase === \"/\" || ((_parsedLocationArg$pa = parsedLocationArg.pathname) == null ? void 0 : _parsedLocationArg$pa.startsWith(parentPathnameBase))) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"When overriding the location using `` or `useRoutes(routes, location)`, \" + \"the location pathname must begin with the portion of the URL pathname that was \" + (\"matched by all parent routes. The current pathname base is \\\"\" + parentPathnameBase + \"\\\" \") + (\"but pathname \\\"\" + parsedLocationArg.pathname + \"\\\" was given in the `location` prop.\")) : invariant(false) : void 0;\n location = parsedLocationArg;\n } else {\n location = locationFromContext;\n }\n\n let pathname = location.pathname || \"/\";\n let remainingPathname = parentPathnameBase === \"/\" ? pathname : pathname.slice(parentPathnameBase.length) || \"/\";\n let matches = matchRoutes(routes, {\n pathname: remainingPathname\n });\n\n if (process.env.NODE_ENV !== \"production\") {\n process.env.NODE_ENV !== \"production\" ? warning(parentRoute || matches != null, \"No routes matched location \\\"\" + location.pathname + location.search + location.hash + \"\\\" \") : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(matches == null || matches[matches.length - 1].route.element !== undefined, \"Matched leaf route at location \\\"\" + location.pathname + location.search + location.hash + \"\\\" does not have an element. \" + \"This means it will render an with a null value by default resulting in an \\\"empty\\\" page.\") : void 0;\n }\n\n return _renderMatches(matches && matches.map(match => Object.assign({}, match, {\n params: Object.assign({}, parentParams, match.params),\n pathname: joinPaths([parentPathnameBase, match.pathname]),\n pathnameBase: match.pathnameBase === \"/\" ? parentPathnameBase : joinPaths([parentPathnameBase, match.pathnameBase])\n })), parentMatches);\n}\nfunction _renderMatches(matches, parentMatches) {\n if (parentMatches === void 0) {\n parentMatches = [];\n }\n\n if (matches == null) return null;\n return matches.reduceRight((outlet, match, index) => {\n return /*#__PURE__*/createElement(RouteContext.Provider, {\n children: match.route.element !== undefined ? match.route.element : outlet,\n value: {\n outlet,\n matches: parentMatches.concat(matches.slice(0, index + 1))\n }\n });\n }, null);\n}\n\n/**\n * A that stores all entries in memory.\n *\n * @see https://reactrouter.com/docs/en/v6/api#memoryrouter\n */\nfunction MemoryRouter(_ref) {\n let {\n basename,\n children,\n initialEntries,\n initialIndex\n } = _ref;\n let historyRef = useRef();\n\n if (historyRef.current == null) {\n historyRef.current = createMemoryHistory({\n initialEntries,\n initialIndex\n });\n }\n\n let history = historyRef.current;\n let [state, setState] = useState({\n action: history.action,\n location: history.location\n });\n useLayoutEffect(() => history.listen(setState), [history]);\n return /*#__PURE__*/createElement(Router, {\n basename: basename,\n children: children,\n location: state.location,\n navigationType: state.action,\n navigator: history\n });\n}\n\n/**\n * Changes the current location.\n *\n * Note: This API is mostly useful in React.Component subclasses that are not\n * able to use hooks. In functional components, we recommend you use the\n * `useNavigate` hook instead.\n *\n * @see https://reactrouter.com/docs/en/v6/api#navigate\n */\nfunction Navigate(_ref2) {\n let {\n to,\n replace,\n state\n } = _ref2;\n !useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, // TODO: This error is probably because they somehow have 2 versions of\n // the router loaded. We can help them understand how to avoid that.\n \" may be used only in the context of a component.\") : invariant(false) : void 0;\n process.env.NODE_ENV !== \"production\" ? warning(!useContext(NavigationContext).static, \" must not be used on the initial render in a . \" + \"This is a no-op, but you should modify your code so the is \" + \"only ever rendered in response to some user interaction or state change.\") : void 0;\n let navigate = useNavigate();\n useEffect(() => {\n navigate(to, {\n replace,\n state\n });\n });\n return null;\n}\n\n/**\n * Renders the child route's element, if there is one.\n *\n * @see https://reactrouter.com/docs/en/v6/api#outlet\n */\nfunction Outlet(props) {\n return useOutlet(props.context);\n}\n\n/**\n * Declares an element that should be rendered at a certain URL path.\n *\n * @see https://reactrouter.com/docs/en/v6/api#route\n */\nfunction Route(_props) {\n process.env.NODE_ENV !== \"production\" ? invariant(false, \"A is only ever to be used as the child of element, \" + \"never rendered directly. Please wrap your in a .\") : invariant(false) ;\n}\n\n/**\n * Provides location context for the rest of the app.\n *\n * Note: You usually won't render a directly. Instead, you'll render a\n * router that is more specific to your environment such as a \n * in web browsers or a for server rendering.\n *\n * @see https://reactrouter.com/docs/en/v6/api#router\n */\nfunction Router(_ref3) {\n let {\n basename: basenameProp = \"/\",\n children = null,\n location: locationProp,\n navigationType = Action.Pop,\n navigator,\n static: staticProp = false\n } = _ref3;\n !!useInRouterContext() ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"You cannot render a inside another .\" + \" You should never have more than one in your app.\") : invariant(false) : void 0;\n let basename = normalizePathname(basenameProp);\n let navigationContext = useMemo(() => ({\n basename,\n navigator,\n static: staticProp\n }), [basename, navigator, staticProp]);\n\n if (typeof locationProp === \"string\") {\n locationProp = parsePath(locationProp);\n }\n\n let {\n pathname = \"/\",\n search = \"\",\n hash = \"\",\n state = null,\n key = \"default\"\n } = locationProp;\n let location = useMemo(() => {\n let trailingPathname = stripBasename(pathname, basename);\n\n if (trailingPathname == null) {\n return null;\n }\n\n return {\n pathname: trailingPathname,\n search,\n hash,\n state,\n key\n };\n }, [basename, pathname, search, hash, state, key]);\n process.env.NODE_ENV !== \"production\" ? warning(location != null, \" is not able to match the URL \" + (\"\\\"\" + pathname + search + hash + \"\\\" because it does not start with the \") + \"basename, so the won't render anything.\") : void 0;\n\n if (location == null) {\n return null;\n }\n\n return /*#__PURE__*/createElement(NavigationContext.Provider, {\n value: navigationContext\n }, /*#__PURE__*/createElement(LocationContext.Provider, {\n children: children,\n value: {\n location,\n navigationType\n }\n }));\n}\n\n/**\n * A container for a nested tree of elements that renders the branch\n * that best matches the current location.\n *\n * @see https://reactrouter.com/docs/en/v6/api#routes\n */\nfunction Routes(_ref4) {\n let {\n children,\n location\n } = _ref4;\n return useRoutes(createRoutesFromChildren(children), location);\n} ///////////////////////////////////////////////////////////////////////////////\n// UTILS\n///////////////////////////////////////////////////////////////////////////////\n\n/**\n * Creates a route config from a React \"children\" object, which is usually\n * either a `` element or an array of them. Used internally by\n * `` to create a route config from its children.\n *\n * @see https://reactrouter.com/docs/en/v6/api#createroutesfromchildren\n */\n\nfunction createRoutesFromChildren(children) {\n let routes = [];\n Children.forEach(children, element => {\n if (! /*#__PURE__*/isValidElement(element)) {\n // Ignore non-elements. This allows people to more easily inline\n // conditionals in their route config.\n return;\n }\n\n if (element.type === Fragment) {\n // Transparently support React.Fragment and its children.\n routes.push.apply(routes, createRoutesFromChildren(element.props.children));\n return;\n }\n\n !(element.type === Route) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"[\" + (typeof element.type === \"string\" ? element.type : element.type.name) + \"] is not a component. All component children of must be a or \") : invariant(false) : void 0;\n let route = {\n caseSensitive: element.props.caseSensitive,\n element: element.props.element,\n index: element.props.index,\n path: element.props.path\n };\n\n if (element.props.children) {\n route.children = createRoutesFromChildren(element.props.children);\n }\n\n routes.push(route);\n });\n return routes;\n}\n/**\n * Renders the result of `matchRoutes()` into a React element.\n */\n\nfunction renderMatches(matches) {\n return _renderMatches(matches);\n}\n\nexport { MemoryRouter, Navigate, Outlet, Route, Router, Routes, LocationContext as UNSAFE_LocationContext, NavigationContext as UNSAFE_NavigationContext, RouteContext as UNSAFE_RouteContext, createRoutesFromChildren, generatePath, matchPath, matchRoutes, renderMatches, resolvePath, useHref, useInRouterContext, useLocation, useMatch, useNavigate, useNavigationType, useOutlet, useOutletContext, useParams, useResolvedPath, useRoutes };\n//# sourceMappingURL=index.js.map\n","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _exenv = require('exenv');\n\nvar _TouchScrollable = require('./TouchScrollable');\n\nvar _withLockSheet = require('./withLockSheet');\n\nvar _withLockSheet2 = _interopRequireDefault(_withLockSheet);\n\nvar _withTouchListeners = require('./withTouchListeners');\n\nvar _withTouchListeners2 = _interopRequireDefault(_withTouchListeners);\n\nvar _utils = require('./utils');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar ScrollLock = function (_PureComponent) {\n _inherits(ScrollLock, _PureComponent);\n\n function ScrollLock() {\n _classCallCheck(this, ScrollLock);\n\n return _possibleConstructorReturn(this, (ScrollLock.__proto__ || Object.getPrototypeOf(ScrollLock)).apply(this, arguments));\n }\n\n _createClass(ScrollLock, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (!_exenv.canUseDOM) return;\n this.initialHeight = window.innerHeight;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n var offset = window.innerHeight - this.initialHeight;\n\n // adjust scroll if the window has been resized since the lock was engaged\n // e.g. mobile safari dynamic chrome heights\n if (offset) {\n window.scrollTo(0, window.pageYOffset + offset);\n }\n\n // reset the initial height in case this scroll lock is used again\n this.initialHeight = window.innerHeight;\n }\n }, {\n key: 'render',\n value: function render() {\n var children = this.props.children;\n\n\n return children ? _react2.default.createElement(\n _TouchScrollable.TouchScrollable,\n null,\n children\n ) : null;\n }\n }]);\n\n return ScrollLock;\n}(_react.PureComponent);\n\n// attach the stylesheet and inject styles on [un]mount\n\n\nvar compose = (0, _utils.pipe)(_withTouchListeners2.default, _withLockSheet2.default);\nvar SheetLock = compose(ScrollLock);\n\n// toggle the lock based on `isActive` prop\nvar LockToggle = function LockToggle(props) {\n return props.isActive ? _react2.default.createElement(SheetLock, props) : props.children;\n};\n\nLockToggle.defaultProps = {\n accountForScrollbars: true,\n children: null,\n isActive: true\n};\n\nexports.default = LockToggle;","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.TouchScrollable = undefined;\n\nvar _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nvar _react = require('react');\n\nvar _exenv = require('exenv');\n\nvar _utils = require('./utils');\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nvar TouchScrollable = exports.TouchScrollable = function (_PureComponent) {\n _inherits(TouchScrollable, _PureComponent);\n\n function TouchScrollable() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, TouchScrollable);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = TouchScrollable.__proto__ || Object.getPrototypeOf(TouchScrollable)).call.apply(_ref, [this].concat(args))), _this), _this.getScrollableArea = function (ref) {\n _this.scrollableArea = ref;\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(TouchScrollable, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (!_exenv.canUseEventListeners) return;\n\n this.scrollableArea.addEventListener('touchstart', _utils.preventInertiaScroll, _utils.listenerOptions);\n this.scrollableArea.addEventListener('touchmove', _utils.allowTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (!_exenv.canUseEventListeners) return;\n\n this.scrollableArea.removeEventListener('touchstart', _utils.preventInertiaScroll, _utils.listenerOptions);\n this.scrollableArea.removeEventListener('touchmove', _utils.allowTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'render',\n value: function render() {\n var _props = this.props,\n children = _props.children,\n rest = _objectWithoutProperties(_props, ['children']);\n\n return typeof children === 'function' ? children(this.getScrollableArea) : (0, _react.cloneElement)(children, _extends({ ref: this.getScrollableArea }, rest));\n }\n }]);\n\n return TouchScrollable;\n}(_react.PureComponent);","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _ScrollLock = require('./ScrollLock');\n\nObject.defineProperty(exports, 'default', {\n enumerable: true,\n get: function get() {\n return _interopRequireDefault(_ScrollLock).default;\n }\n});\n\nvar _TouchScrollable = require('./TouchScrollable');\n\nObject.defineProperty(exports, 'TouchScrollable', {\n enumerable: true,\n get: function get() {\n return _TouchScrollable.TouchScrollable;\n }\n});\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.pipe = exports.listenerOptions = undefined;\nexports.preventTouchMove = preventTouchMove;\nexports.allowTouchMove = allowTouchMove;\nexports.preventInertiaScroll = preventInertiaScroll;\nexports.isTouchDevice = isTouchDevice;\nexports.camelToKebab = camelToKebab;\nexports.parse = parse;\nexports.getPadding = getPadding;\nexports.getWindowHeight = getWindowHeight;\nexports.getDocumentHeight = getDocumentHeight;\nexports.makeStyleTag = makeStyleTag;\nexports.injectStyles = injectStyles;\nexports.insertStyleTag = insertStyleTag;\n\nvar _exenv = require('exenv');\n\nvar listenerOptions = exports.listenerOptions = {\n capture: false,\n passive: false\n};\n\n// ==============================\n// Touch Helpers\n// ==============================\n\nfunction preventTouchMove(e) {\n e.preventDefault();\n\n return false;\n}\n\nfunction allowTouchMove(e) {\n var target = e.currentTarget;\n\n if (target.scrollHeight > target.clientHeight) {\n e.stopPropagation();\n return true;\n }\n\n e.preventDefault();\n return false;\n}\n\nfunction preventInertiaScroll() {\n var top = this.scrollTop;\n var totalScroll = this.scrollHeight;\n var currentScroll = top + this.offsetHeight;\n\n if (top === 0) {\n this.scrollTop = 1;\n } else if (currentScroll === totalScroll) {\n this.scrollTop = top - 1;\n }\n}\n\n// `ontouchstart` check works on most browsers\n// `maxTouchPoints` works on IE10/11 and Surface\nfunction isTouchDevice() {\n if (!_exenv.canUseDOM) return false;\n return 'ontouchstart' in window || navigator.maxTouchPoints;\n}\n\n// ==============================\n// Misc.\n// ==============================\n\nfunction camelToKebab(str) {\n return str.replace(/([a-z])([A-Z])/g, '$1-$2').toLowerCase();\n}\n\nfunction parse(val) {\n return isNaN(val) ? val : val + 'px';\n}\n\n// Take a list of functions and return a function that applies the list of\n// functions from left to right\n\nvar pipeFns = function pipeFns(a, b) {\n return function () {\n return b(a.apply(undefined, arguments));\n };\n};\nvar pipe = exports.pipe = function pipe() {\n for (var _len = arguments.length, fns = Array(_len), _key = 0; _key < _len; _key++) {\n fns[_key] = arguments[_key];\n }\n\n return fns.reduce(pipeFns);\n};\n\n// ==============================\n// Document Helpers\n// ==============================\n\nfunction getPadding() {\n if (!_exenv.canUseDOM) return 0;\n\n var paddingRight = parseInt(window.getComputedStyle(document.body).paddingRight, 10);\n var scrollbarWidth = window.innerWidth - document.documentElement.clientWidth;\n\n return paddingRight + scrollbarWidth;\n}\n\nfunction getWindowHeight() {\n var multiplier = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 1;\n\n if (_exenv.canUseDOM) {\n return window.innerHeight * multiplier;\n }\n}\n\nfunction getDocumentHeight() {\n if (_exenv.canUseDOM) {\n return document.body.clientHeight;\n }\n}\n\n// ==============================\n// Style Sheets\n// ==============================\n\nfunction makeStyleTag() {\n if (!_exenv.canUseDOM) return;\n\n var tag = document.createElement('style');\n tag.type = 'text/css';\n tag.setAttribute('data-react-scrolllock', '');\n\n return tag;\n}\nfunction injectStyles(tag, css) {\n if (!_exenv.canUseDOM) return;\n\n if (tag.styleSheet) {\n tag.styleSheet.cssText = css;\n } else {\n tag.appendChild(document.createTextNode(css));\n }\n}\nfunction insertStyleTag(tag) {\n if (!_exenv.canUseDOM) return;\n\n var head = document.head || document.getElementsByTagName('head')[0];\n\n head.appendChild(tag);\n}","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = withLockSheet;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _utils = require('./utils');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\nfunction withLockSheet(WrappedComponent) {\n return function (_PureComponent) {\n _inherits(SheetProvider, _PureComponent);\n\n function SheetProvider() {\n var _ref;\n\n var _temp, _this, _ret;\n\n _classCallCheck(this, SheetProvider);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, (_ref = SheetProvider.__proto__ || Object.getPrototypeOf(SheetProvider)).call.apply(_ref, [this].concat(args))), _this), _this.addSheet = function () {\n var styles = _this.getStyles();\n\n var sheet = (0, _utils.makeStyleTag)();\n if (!sheet) return;\n\n (0, _utils.injectStyles)(sheet, styles);\n (0, _utils.insertStyleTag)(sheet);\n\n _this.sheet = sheet;\n }, _this.getStyles = function () {\n var accountForScrollbars = _this.props.accountForScrollbars;\n\n\n var height = (0, _utils.getDocumentHeight)();\n var paddingRight = accountForScrollbars ? (0, _utils.getPadding)() : null;\n var styles = 'body {\\n box-sizing: border-box !important;\\n overflow: hidden !important;\\n position: relative !important;\\n ' + (height ? 'height: ' + height + 'px !important;' : '') + '\\n ' + (paddingRight ? 'padding-right: ' + paddingRight + 'px !important;' : '') + '\\n }';\n\n return styles;\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n _createClass(SheetProvider, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n this.addSheet();\n }\n }, {\n key: 'removeSheet',\n value: function removeSheet() {\n if (!this.sheet) return;\n\n // $FlowFixMe\n this.sheet.parentNode.removeChild(this.sheet);\n this.sheet = null;\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n this.removeSheet();\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(WrappedComponent, this.props);\n }\n }]);\n\n return SheetProvider;\n }(_react.PureComponent);\n}","'use strict';\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n\nvar _createClass = function () { function defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } } return function (Constructor, protoProps, staticProps) { if (protoProps) defineProperties(Constructor.prototype, protoProps); if (staticProps) defineProperties(Constructor, staticProps); return Constructor; }; }();\n\nexports.default = withTouchListeners;\n\nvar _react = require('react');\n\nvar _react2 = _interopRequireDefault(_react);\n\nvar _exenv = require('exenv');\n\nvar _utils = require('./utils');\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n// Mobile Safari ignores { overflow: hidden } declaration on the body,\n// so we have to prevent touchmove events via JS\nfunction withTouchListeners(WrappedComponent) {\n return function (_PureComponent) {\n _inherits(TouchProvider, _PureComponent);\n\n function TouchProvider() {\n _classCallCheck(this, TouchProvider);\n\n return _possibleConstructorReturn(this, (TouchProvider.__proto__ || Object.getPrototypeOf(TouchProvider)).apply(this, arguments));\n }\n\n _createClass(TouchProvider, [{\n key: 'componentDidMount',\n value: function componentDidMount() {\n if (!_exenv.canUseDOM || !(0, _utils.isTouchDevice)()) return;\n\n document.addEventListener('touchmove', _utils.preventTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'componentWillUnmount',\n value: function componentWillUnmount() {\n if (!_exenv.canUseDOM || !(0, _utils.isTouchDevice)()) return;\n\n document.removeEventListener('touchmove', _utils.preventTouchMove, _utils.listenerOptions);\n }\n }, {\n key: 'render',\n value: function render() {\n return _react2.default.createElement(WrappedComponent, this.props);\n }\n }]);\n\n return TouchProvider;\n }(_react.PureComponent);\n}","export default {\n disabled: false\n};","import React from 'react';\nexport default React.createContext(null);","export var forceReflow = function forceReflow(node) {\n return node.scrollTop;\n};","import _objectWithoutPropertiesLoose from \"@babel/runtime/helpers/esm/objectWithoutPropertiesLoose\";\nimport _inheritsLoose from \"@babel/runtime/helpers/esm/inheritsLoose\";\nimport PropTypes from 'prop-types';\nimport React from 'react';\nimport ReactDOM from 'react-dom';\nimport config from './config';\nimport { timeoutsShape } from './utils/PropTypes';\nimport TransitionGroupContext from './TransitionGroupContext';\nimport { forceReflow } from './utils/reflow';\nexport var UNMOUNTED = 'unmounted';\nexport var EXITED = 'exited';\nexport var ENTERING = 'entering';\nexport var ENTERED = 'entered';\nexport var EXITING = 'exiting';\n/**\n * The Transition component lets you describe a transition from one component\n * state to another _over time_ with a simple declarative API. Most commonly\n * it's used to animate the mounting and unmounting of a component, but can also\n * be used to describe in-place transition states as well.\n *\n * ---\n *\n * **Note**: `Transition` is a platform-agnostic base component. If you're using\n * transitions in CSS, you'll probably want to use\n * [`CSSTransition`](https://reactcommunity.org/react-transition-group/css-transition)\n * instead. It inherits all the features of `Transition`, but contains\n * additional features necessary to play nice with CSS transitions (hence the\n * name of the component).\n *\n * ---\n *\n * By default the `Transition` component does not alter the behavior of the\n * component it renders, it only tracks \"enter\" and \"exit\" states for the\n * components. It's up to you to give meaning and effect to those states. For\n * example we can add styles to a component when it enters or exits:\n *\n * ```jsx\n * import { Transition } from 'react-transition-group';\n *\n * const duration = 300;\n *\n * const defaultStyle = {\n * transition: `opacity ${duration}ms ease-in-out`,\n * opacity: 0,\n * }\n *\n * const transitionStyles = {\n * entering: { opacity: 1 },\n * entered: { opacity: 1 },\n * exiting: { opacity: 0 },\n * exited: { opacity: 0 },\n * };\n *\n * const Fade = ({ in: inProp }) => (\n * \n * {state => (\n *
\n * I'm a fade Transition!\n *
\n * )}\n *
\n * );\n * ```\n *\n * There are 4 main states a Transition can be in:\n * - `'entering'`\n * - `'entered'`\n * - `'exiting'`\n * - `'exited'`\n *\n * Transition state is toggled via the `in` prop. When `true` the component\n * begins the \"Enter\" stage. During this stage, the component will shift from\n * its current transition state, to `'entering'` for the duration of the\n * transition and then to the `'entered'` stage once it's complete. Let's take\n * the following example (we'll use the\n * [useState](https://reactjs.org/docs/hooks-reference.html#usestate) hook):\n *\n * ```jsx\n * function App() {\n * const [inProp, setInProp] = useState(false);\n * return (\n *
\n * \n * {state => (\n * // ...\n * )}\n * \n * \n *
\n * );\n * }\n * ```\n *\n * When the button is clicked the component will shift to the `'entering'` state\n * and stay there for 500ms (the value of `timeout`) before it finally switches\n * to `'entered'`.\n *\n * When `in` is `false` the same thing happens except the state moves from\n * `'exiting'` to `'exited'`.\n */\n\nvar Transition = /*#__PURE__*/function (_React$Component) {\n _inheritsLoose(Transition, _React$Component);\n\n function Transition(props, context) {\n var _this;\n\n _this = _React$Component.call(this, props, context) || this;\n var parentGroup = context; // In the context of a TransitionGroup all enters are really appears\n\n var appear = parentGroup && !parentGroup.isMounting ? props.enter : props.appear;\n var initialStatus;\n _this.appearStatus = null;\n\n if (props.in) {\n if (appear) {\n initialStatus = EXITED;\n _this.appearStatus = ENTERING;\n } else {\n initialStatus = ENTERED;\n }\n } else {\n if (props.unmountOnExit || props.mountOnEnter) {\n initialStatus = UNMOUNTED;\n } else {\n initialStatus = EXITED;\n }\n }\n\n _this.state = {\n status: initialStatus\n };\n _this.nextCallback = null;\n return _this;\n }\n\n Transition.getDerivedStateFromProps = function getDerivedStateFromProps(_ref, prevState) {\n var nextIn = _ref.in;\n\n if (nextIn && prevState.status === UNMOUNTED) {\n return {\n status: EXITED\n };\n }\n\n return null;\n } // getSnapshotBeforeUpdate(prevProps) {\n // let nextStatus = null\n // if (prevProps !== this.props) {\n // const { status } = this.state\n // if (this.props.in) {\n // if (status !== ENTERING && status !== ENTERED) {\n // nextStatus = ENTERING\n // }\n // } else {\n // if (status === ENTERING || status === ENTERED) {\n // nextStatus = EXITING\n // }\n // }\n // }\n // return { nextStatus }\n // }\n ;\n\n var _proto = Transition.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n this.updateStatus(true, this.appearStatus);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var nextStatus = null;\n\n if (prevProps !== this.props) {\n var status = this.state.status;\n\n if (this.props.in) {\n if (status !== ENTERING && status !== ENTERED) {\n nextStatus = ENTERING;\n }\n } else {\n if (status === ENTERING || status === ENTERED) {\n nextStatus = EXITING;\n }\n }\n }\n\n this.updateStatus(false, nextStatus);\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n this.cancelNextCallback();\n };\n\n _proto.getTimeouts = function getTimeouts() {\n var timeout = this.props.timeout;\n var exit, enter, appear;\n exit = enter = appear = timeout;\n\n if (timeout != null && typeof timeout !== 'number') {\n exit = timeout.exit;\n enter = timeout.enter; // TODO: remove fallback for next major\n\n appear = timeout.appear !== undefined ? timeout.appear : enter;\n }\n\n return {\n exit: exit,\n enter: enter,\n appear: appear\n };\n };\n\n _proto.updateStatus = function updateStatus(mounting, nextStatus) {\n if (mounting === void 0) {\n mounting = false;\n }\n\n if (nextStatus !== null) {\n // nextStatus will always be ENTERING or EXITING.\n this.cancelNextCallback();\n\n if (nextStatus === ENTERING) {\n if (this.props.unmountOnExit || this.props.mountOnEnter) {\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this); // https://github.com/reactjs/react-transition-group/pull/749\n // With unmountOnExit or mountOnEnter, the enter animation should happen at the transition between `exited` and `entering`.\n // To make the animation happen, we have to separate each rendering and avoid being processed as batched.\n\n if (node) forceReflow(node);\n }\n\n this.performEnter(mounting);\n } else {\n this.performExit();\n }\n } else if (this.props.unmountOnExit && this.state.status === EXITED) {\n this.setState({\n status: UNMOUNTED\n });\n }\n };\n\n _proto.performEnter = function performEnter(mounting) {\n var _this2 = this;\n\n var enter = this.props.enter;\n var appearing = this.context ? this.context.isMounting : mounting;\n\n var _ref2 = this.props.nodeRef ? [appearing] : [ReactDOM.findDOMNode(this), appearing],\n maybeNode = _ref2[0],\n maybeAppearing = _ref2[1];\n\n var timeouts = this.getTimeouts();\n var enterTimeout = appearing ? timeouts.appear : timeouts.enter; // no enter animation skip right to ENTERED\n // if we are mounting and running this it means appear _must_ be set\n\n if (!mounting && !enter || config.disabled) {\n this.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode);\n });\n return;\n }\n\n this.props.onEnter(maybeNode, maybeAppearing);\n this.safeSetState({\n status: ENTERING\n }, function () {\n _this2.props.onEntering(maybeNode, maybeAppearing);\n\n _this2.onTransitionEnd(enterTimeout, function () {\n _this2.safeSetState({\n status: ENTERED\n }, function () {\n _this2.props.onEntered(maybeNode, maybeAppearing);\n });\n });\n });\n };\n\n _proto.performExit = function performExit() {\n var _this3 = this;\n\n var exit = this.props.exit;\n var timeouts = this.getTimeouts();\n var maybeNode = this.props.nodeRef ? undefined : ReactDOM.findDOMNode(this); // no exit animation skip right to EXITED\n\n if (!exit || config.disabled) {\n this.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n return;\n }\n\n this.props.onExit(maybeNode);\n this.safeSetState({\n status: EXITING\n }, function () {\n _this3.props.onExiting(maybeNode);\n\n _this3.onTransitionEnd(timeouts.exit, function () {\n _this3.safeSetState({\n status: EXITED\n }, function () {\n _this3.props.onExited(maybeNode);\n });\n });\n });\n };\n\n _proto.cancelNextCallback = function cancelNextCallback() {\n if (this.nextCallback !== null) {\n this.nextCallback.cancel();\n this.nextCallback = null;\n }\n };\n\n _proto.safeSetState = function safeSetState(nextState, callback) {\n // This shouldn't be necessary, but there are weird race conditions with\n // setState callbacks and unmounting in testing, so always make sure that\n // we can cancel any pending setState callbacks after we unmount.\n callback = this.setNextCallback(callback);\n this.setState(nextState, callback);\n };\n\n _proto.setNextCallback = function setNextCallback(callback) {\n var _this4 = this;\n\n var active = true;\n\n this.nextCallback = function (event) {\n if (active) {\n active = false;\n _this4.nextCallback = null;\n callback(event);\n }\n };\n\n this.nextCallback.cancel = function () {\n active = false;\n };\n\n return this.nextCallback;\n };\n\n _proto.onTransitionEnd = function onTransitionEnd(timeout, handler) {\n this.setNextCallback(handler);\n var node = this.props.nodeRef ? this.props.nodeRef.current : ReactDOM.findDOMNode(this);\n var doesNotHaveTimeoutOrListener = timeout == null && !this.props.addEndListener;\n\n if (!node || doesNotHaveTimeoutOrListener) {\n setTimeout(this.nextCallback, 0);\n return;\n }\n\n if (this.props.addEndListener) {\n var _ref3 = this.props.nodeRef ? [this.nextCallback] : [node, this.nextCallback],\n maybeNode = _ref3[0],\n maybeNextCallback = _ref3[1];\n\n this.props.addEndListener(maybeNode, maybeNextCallback);\n }\n\n if (timeout != null) {\n setTimeout(this.nextCallback, timeout);\n }\n };\n\n _proto.render = function render() {\n var status = this.state.status;\n\n if (status === UNMOUNTED) {\n return null;\n }\n\n var _this$props = this.props,\n children = _this$props.children,\n _in = _this$props.in,\n _mountOnEnter = _this$props.mountOnEnter,\n _unmountOnExit = _this$props.unmountOnExit,\n _appear = _this$props.appear,\n _enter = _this$props.enter,\n _exit = _this$props.exit,\n _timeout = _this$props.timeout,\n _addEndListener = _this$props.addEndListener,\n _onEnter = _this$props.onEnter,\n _onEntering = _this$props.onEntering,\n _onEntered = _this$props.onEntered,\n _onExit = _this$props.onExit,\n _onExiting = _this$props.onExiting,\n _onExited = _this$props.onExited,\n _nodeRef = _this$props.nodeRef,\n childProps = _objectWithoutPropertiesLoose(_this$props, [\"children\", \"in\", \"mountOnEnter\", \"unmountOnExit\", \"appear\", \"enter\", \"exit\", \"timeout\", \"addEndListener\", \"onEnter\", \"onEntering\", \"onEntered\", \"onExit\", \"onExiting\", \"onExited\", \"nodeRef\"]);\n\n return (\n /*#__PURE__*/\n // allows for nested Transitions\n React.createElement(TransitionGroupContext.Provider, {\n value: null\n }, typeof children === 'function' ? children(status, childProps) : React.cloneElement(React.Children.only(children), childProps))\n );\n };\n\n return Transition;\n}(React.Component);\n\nTransition.contextType = TransitionGroupContext;\nTransition.propTypes = process.env.NODE_ENV !== \"production\" ? {\n /**\n * A React reference to DOM element that need to transition:\n * https://stackoverflow.com/a/51127130/4671932\n *\n * - When `nodeRef` prop is used, `node` is not passed to callback functions\n * (e.g. `onEnter`) because user already has direct access to the node.\n * - When changing `key` prop of `Transition` in a `TransitionGroup` a new\n * `nodeRef` need to be provided to `Transition` with changed `key` prop\n * (see\n * [test/CSSTransition-test.js](https://github.com/reactjs/react-transition-group/blob/13435f897b3ab71f6e19d724f145596f5910581c/test/CSSTransition-test.js#L362-L437)).\n */\n nodeRef: PropTypes.shape({\n current: typeof Element === 'undefined' ? PropTypes.any : function (propValue, key, componentName, location, propFullName, secret) {\n var value = propValue[key];\n return PropTypes.instanceOf(value && 'ownerDocument' in value ? value.ownerDocument.defaultView.Element : Element)(propValue, key, componentName, location, propFullName, secret);\n }\n }),\n\n /**\n * A `function` child can be used instead of a React element. This function is\n * called with the current transition status (`'entering'`, `'entered'`,\n * `'exiting'`, `'exited'`), which can be used to apply context\n * specific props to a component.\n *\n * ```jsx\n * \n * {state => (\n * \n * )}\n * \n * ```\n */\n children: PropTypes.oneOfType([PropTypes.func.isRequired, PropTypes.element.isRequired]).isRequired,\n\n /**\n * Show the component; triggers the enter or exit states\n */\n in: PropTypes.bool,\n\n /**\n * By default the child component is mounted immediately along with\n * the parent `Transition` component. If you want to \"lazy mount\" the component on the\n * first `in={true}` you can set `mountOnEnter`. After the first enter transition the component will stay\n * mounted, even on \"exited\", unless you also specify `unmountOnExit`.\n */\n mountOnEnter: PropTypes.bool,\n\n /**\n * By default the child component stays mounted after it reaches the `'exited'` state.\n * Set `unmountOnExit` if you'd prefer to unmount the component after it finishes exiting.\n */\n unmountOnExit: PropTypes.bool,\n\n /**\n * By default the child component does not perform the enter transition when\n * it first mounts, regardless of the value of `in`. If you want this\n * behavior, set both `appear` and `in` to `true`.\n *\n * > **Note**: there are no special appear states like `appearing`/`appeared`, this prop\n * > only adds an additional enter transition. However, in the\n * > `` component that first enter transition does result in\n * > additional `.appear-*` classes, that way you can choose to style it\n * > differently.\n */\n appear: PropTypes.bool,\n\n /**\n * Enable or disable enter transitions.\n */\n enter: PropTypes.bool,\n\n /**\n * Enable or disable exit transitions.\n */\n exit: PropTypes.bool,\n\n /**\n * The duration of the transition, in milliseconds.\n * Required unless `addEndListener` is provided.\n *\n * You may specify a single timeout for all transitions:\n *\n * ```jsx\n * timeout={500}\n * ```\n *\n * or individually:\n *\n * ```jsx\n * timeout={{\n * appear: 500,\n * enter: 300,\n * exit: 500,\n * }}\n * ```\n *\n * - `appear` defaults to the value of `enter`\n * - `enter` defaults to `0`\n * - `exit` defaults to `0`\n *\n * @type {number | { enter?: number, exit?: number, appear?: number }}\n */\n timeout: function timeout(props) {\n var pt = timeoutsShape;\n if (!props.addEndListener) pt = pt.isRequired;\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return pt.apply(void 0, [props].concat(args));\n },\n\n /**\n * Add a custom transition end trigger. Called with the transitioning\n * DOM node and a `done` callback. Allows for more fine grained transition end\n * logic. Timeouts are still used as a fallback if provided.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * ```jsx\n * addEndListener={(node, done) => {\n * // use the css transitionend event to mark the finish of a transition\n * node.addEventListener('transitionend', done, false);\n * }}\n * ```\n */\n addEndListener: PropTypes.func,\n\n /**\n * Callback fired before the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEnter: PropTypes.func,\n\n /**\n * Callback fired after the \"entering\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool)\n */\n onEntering: PropTypes.func,\n\n /**\n * Callback fired after the \"entered\" status is applied. An extra parameter\n * `isAppearing` is supplied to indicate if the enter stage is occurring on the initial mount\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement, isAppearing: bool) -> void\n */\n onEntered: PropTypes.func,\n\n /**\n * Callback fired before the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExit: PropTypes.func,\n\n /**\n * Callback fired after the \"exiting\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed.\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExiting: PropTypes.func,\n\n /**\n * Callback fired after the \"exited\" status is applied.\n *\n * **Note**: when `nodeRef` prop is passed, `node` is not passed\n *\n * @type Function(node: HtmlElement) -> void\n */\n onExited: PropTypes.func\n} : {}; // Name the function so it is clearer in the documentation\n\nfunction noop() {}\n\nTransition.defaultProps = {\n in: false,\n mountOnEnter: false,\n unmountOnExit: false,\n appear: false,\n enter: true,\n exit: true,\n onEnter: noop,\n onEntering: noop,\n onEntered: noop,\n onExit: noop,\n onExiting: noop,\n onExited: noop\n};\nTransition.UNMOUNTED = UNMOUNTED;\nTransition.EXITED = EXITED;\nTransition.ENTERING = ENTERING;\nTransition.ENTERED = ENTERED;\nTransition.EXITING = EXITING;\nexport default Transition;","import * as React from 'react';\nimport { generateUID } from './uid';\nexport const createSource = (prefix = '') => ({\n value: 1,\n prefix: prefix,\n uid: generateUID(),\n});\nexport const counter = createSource();\nexport const source = React.createContext(createSource());\nexport const getId = (source) => source.value++;\nexport const getPrefix = (source) => (source ? source.prefix : '');\n","import * as React from 'react';\nimport { useContext, useState } from 'react';\nimport { counter, getId, getPrefix, source } from './context';\nconst generateUID = (context) => {\n const quartz = context || counter;\n const prefix = getPrefix(quartz);\n const id = getId(quartz);\n const uid = prefix + id;\n const gen = (item) => uid + quartz.uid(item);\n return { uid, gen };\n};\nconst useUIDState = () => {\n if (process.env.NODE_ENV !== 'production') {\n if (!('useContext' in React)) {\n throw new Error('Hooks API requires React 16.8+');\n }\n }\n const context = useContext(source);\n const [uid] = useState(() => generateUID(context));\n return uid;\n};\n/**\n * returns and unique id. SSR friendly\n * returns {String}\n * @see {@link UIDConsumer}\n * @see https://github.com/thearnica/react-uid#hooks-168\n * @example\n * const id = useUID();\n * id == 1; // for example\n */\nexport const useUID = () => {\n const { uid } = useUIDState();\n return uid;\n};\n/**\n * returns an uid generator\n * @see {@link UIDConsumer}\n * @see https://github.com/thearnica/react-uid#hooks-168\n * @example\n * const uid = useUIDSeed();\n * return (\n * <>\n * \n * \n * {data.map(item =>
...
\n * \n * )\n */\nexport const useUIDSeed = () => {\n const { gen } = useUIDState();\n return gen;\n};\n","/**\n * generates a UID factory\n * @internal\n * @example\n * const uid = generateUID();\n * uid(object) = 1;\n * uid(object) = 1;\n * uid(anotherObject) = 2;\n */\nexport const generateUID = () => {\n let counter = 1;\n const map = new WeakMap();\n /**\n * @borrows {uid}\n */\n const uid = (item, index) => {\n if (typeof item === 'number' || typeof item === 'string') {\n return index ? `idx-${index}` : `val-${item}`;\n }\n if (!map.has(item)) {\n map.set(item, counter++);\n return uid(item);\n }\n return 'uid' + map.get(item);\n };\n return uid;\n};\n/**\n * @name uid\n * returns an UID associated with {item}\n * @param {Object} item - object to generate UID for\n * @param {Number} index, a fallback index\n * @example\n * uid(object) == 1;\n * uid(object) == 1;\n * uid(anotherObject) == 2;\n * uid(\"not object\", 42) == 42\n *\n * @see {@link useUID}\n */\nexport const uid = generateUID();\n","module.exports = require('./lib/retry');","var RetryOperation = require('./retry_operation');\n\nexports.operation = function(options) {\n var timeouts = exports.timeouts(options);\n return new RetryOperation(timeouts, {\n forever: options && (options.forever || options.retries === Infinity),\n unref: options && options.unref,\n maxRetryTime: options && options.maxRetryTime\n });\n};\n\nexports.timeouts = function(options) {\n if (options instanceof Array) {\n return [].concat(options);\n }\n\n var opts = {\n retries: 10,\n factor: 2,\n minTimeout: 1 * 1000,\n maxTimeout: Infinity,\n randomize: false\n };\n for (var key in options) {\n opts[key] = options[key];\n }\n\n if (opts.minTimeout > opts.maxTimeout) {\n throw new Error('minTimeout is greater than maxTimeout');\n }\n\n var timeouts = [];\n for (var i = 0; i < opts.retries; i++) {\n timeouts.push(this.createTimeout(i, opts));\n }\n\n if (options && options.forever && !timeouts.length) {\n timeouts.push(this.createTimeout(i, opts));\n }\n\n // sort the array numerically ascending\n timeouts.sort(function(a,b) {\n return a - b;\n });\n\n return timeouts;\n};\n\nexports.createTimeout = function(attempt, opts) {\n var random = (opts.randomize)\n ? (Math.random() + 1)\n : 1;\n\n var timeout = Math.round(random * Math.max(opts.minTimeout, 1) * Math.pow(opts.factor, attempt));\n timeout = Math.min(timeout, opts.maxTimeout);\n\n return timeout;\n};\n\nexports.wrap = function(obj, options, methods) {\n if (options instanceof Array) {\n methods = options;\n options = null;\n }\n\n if (!methods) {\n methods = [];\n for (var key in obj) {\n if (typeof obj[key] === 'function') {\n methods.push(key);\n }\n }\n }\n\n for (var i = 0; i < methods.length; i++) {\n var method = methods[i];\n var original = obj[method];\n\n obj[method] = function retryWrapper(original) {\n var op = exports.operation(options);\n var args = Array.prototype.slice.call(arguments, 1);\n var callback = args.pop();\n\n args.push(function(err) {\n if (op.retry(err)) {\n return;\n }\n if (err) {\n arguments[0] = op.mainError();\n }\n callback.apply(this, arguments);\n });\n\n op.attempt(function() {\n original.apply(obj, args);\n });\n }.bind(obj, original);\n obj[method].options = options;\n }\n};\n","function RetryOperation(timeouts, options) {\n // Compatibility for the old (timeouts, retryForever) signature\n if (typeof options === 'boolean') {\n options = { forever: options };\n }\n\n this._originalTimeouts = JSON.parse(JSON.stringify(timeouts));\n this._timeouts = timeouts;\n this._options = options || {};\n this._maxRetryTime = options && options.maxRetryTime || Infinity;\n this._fn = null;\n this._errors = [];\n this._attempts = 1;\n this._operationTimeout = null;\n this._operationTimeoutCb = null;\n this._timeout = null;\n this._operationStart = null;\n this._timer = null;\n\n if (this._options.forever) {\n this._cachedTimeouts = this._timeouts.slice(0);\n }\n}\nmodule.exports = RetryOperation;\n\nRetryOperation.prototype.reset = function() {\n this._attempts = 1;\n this._timeouts = this._originalTimeouts.slice(0);\n}\n\nRetryOperation.prototype.stop = function() {\n if (this._timeout) {\n clearTimeout(this._timeout);\n }\n if (this._timer) {\n clearTimeout(this._timer);\n }\n\n this._timeouts = [];\n this._cachedTimeouts = null;\n};\n\nRetryOperation.prototype.retry = function(err) {\n if (this._timeout) {\n clearTimeout(this._timeout);\n }\n\n if (!err) {\n return false;\n }\n var currentTime = new Date().getTime();\n if (err && currentTime - this._operationStart >= this._maxRetryTime) {\n this._errors.push(err);\n this._errors.unshift(new Error('RetryOperation timeout occurred'));\n return false;\n }\n\n this._errors.push(err);\n\n var timeout = this._timeouts.shift();\n if (timeout === undefined) {\n if (this._cachedTimeouts) {\n // retry forever, only keep last error\n this._errors.splice(0, this._errors.length - 1);\n timeout = this._cachedTimeouts.slice(-1);\n } else {\n return false;\n }\n }\n\n var self = this;\n this._timer = setTimeout(function() {\n self._attempts++;\n\n if (self._operationTimeoutCb) {\n self._timeout = setTimeout(function() {\n self._operationTimeoutCb(self._attempts);\n }, self._operationTimeout);\n\n if (self._options.unref) {\n self._timeout.unref();\n }\n }\n\n self._fn(self._attempts);\n }, timeout);\n\n if (this._options.unref) {\n this._timer.unref();\n }\n\n return true;\n};\n\nRetryOperation.prototype.attempt = function(fn, timeoutOps) {\n this._fn = fn;\n\n if (timeoutOps) {\n if (timeoutOps.timeout) {\n this._operationTimeout = timeoutOps.timeout;\n }\n if (timeoutOps.cb) {\n this._operationTimeoutCb = timeoutOps.cb;\n }\n }\n\n var self = this;\n if (this._operationTimeoutCb) {\n this._timeout = setTimeout(function() {\n self._operationTimeoutCb();\n }, self._operationTimeout);\n }\n\n this._operationStart = new Date().getTime();\n\n this._fn(this._attempts);\n};\n\nRetryOperation.prototype.try = function(fn) {\n console.log('Using RetryOperation.try() is deprecated');\n this.attempt(fn);\n};\n\nRetryOperation.prototype.start = function(fn) {\n console.log('Using RetryOperation.start() is deprecated');\n this.attempt(fn);\n};\n\nRetryOperation.prototype.start = RetryOperation.prototype.try;\n\nRetryOperation.prototype.errors = function() {\n return this._errors;\n};\n\nRetryOperation.prototype.attempts = function() {\n return this._attempts;\n};\n\nRetryOperation.prototype.mainError = function() {\n if (this._errors.length === 0) {\n return null;\n }\n\n var counts = {};\n var mainError = null;\n var mainErrorCount = 0;\n\n for (var i = 0; i < this._errors.length; i++) {\n var error = this._errors[i];\n var message = error.message;\n var count = (counts[message] || 0) + 1;\n\n counts[message] = count;\n\n if (count >= mainErrorCount) {\n mainError = error;\n mainErrorCount = count;\n }\n }\n\n return mainError;\n};\n","import FeatureGates, {\n ClientOptions,\n FeatureGateEnvironment,\n Identifiers,\n CustomAttributes,\n} from \"@atlassian/feature-gate-js-client\";\nimport { FeatureGatesInitialization } from \"@atlassian/feature-gates-react\";\nimport { PropsWithChildren } from \"react\";\n\n// wac statsig api keys - https://developer.atlassian.com/platform/frontend-feature-flags/resources/api-keys/#statsig-only-supported\nconst EnvironmentApiKeyMapping = new Map([\n [\n FeatureGateEnvironment.Development,\n \"ab9944a4-9eb2-482b-b997-36f41f3a1edf\",\n ],\n [FeatureGateEnvironment.Staging, \"ff9c70b0-ab7e-4abc-be4f-53f9c3fd37d6\"],\n [FeatureGateEnvironment.Production, \"4e18bcb9-52fb-4f76-b7b6-a0d9d8e56f8f\"],\n]);\n\n/**\n * Initializes the feature gate client with the given configuration values.\n * @param @FeatureGateProps\n */\nexport const FeatureGatesInitializationProvider = ({\n environment,\n identifiers,\n customAttributes,\n initializingComponent,\n clientOptions = {} as ClientOptions,\n children,\n}: FeatureGateProps) => {\n const apiKey = EnvironmentApiKeyMapping.get(environment) ?? \"\";\n\n return (\n \n {children}\n \n );\n};\n\nexport type FeatureGateProps = PropsWithChildren<{\n environment: FeatureGateEnvironment;\n identifiers: Identifiers;\n customAttributes?: CustomAttributes;\n initializingComponent?: JSX.Element;\n clientOptions?: ClientOptions;\n}>;\n\nexport const Experiments = FeatureGates;\n","export * from \"./feature-gate-client\";\nexport * from \"./use-experiment\";\nexport * from \"./use-feature-gate\";\nexport * from \"@atlassian/feature-gate-js-client\";\n","import { useMemo } from \"react\";\n\nimport { Experiments } from \".\";\n\n/**\n * Represents a hook to retrieve an experiment.\n * @param name The name of the experiment.\n * @param fireExperimentExposure Boolean indicating if an exposure event should be fired.\n * @returns The configuration for the experiment.\n */\nexport const useExperiment = (\n name: string,\n fireExperimentExposure: boolean = true\n) => {\n return useMemo(\n () =>\n fireExperimentExposure\n ? Experiments.getExperiment(name)\n : Experiments.getExperimentWithExposureLoggingDisabled(name),\n [name, fireExperimentExposure]\n );\n};\n\n/**\n * Represents a hook to retrieve an experiment cohort.\n * @param name The name of the experiment.\n * @param defaultValue The default value.\n * @param fireExperimentExposure Boolean indicating if an exposure event should be fired.\n * @returns The configuration for the experiment.\n */\nexport const useExperimentCohort = (\n name: string,\n defaultValue: string,\n fireExperimentExposure?: boolean\n) => {\n return useMemo(\n () =>\n Experiments.getExperimentCohort(\n name,\n defaultValue,\n fireExperimentExposure\n ),\n [name, defaultValue, fireExperimentExposure]\n );\n};\n","import { useMemo } from \"react\";\n\nimport { Experiments } from \".\";\n\n/**\n * Represents a hook to retrieve a feature gate.\n * @param name The name of the feature gate.\n * @returns Boolean indicating if the feature gate is enabled.\n */\nexport const useFeatureGate = (name: string) => {\n return useMemo(() => Experiments.checkGate(name), [name]);\n};\n","/*! *****************************************************************************\r\nCopyright (c) Microsoft Corporation.\r\n\r\nPermission to use, copy, modify, and/or distribute this software for any\r\npurpose with or without fee is hereby granted.\r\n\r\nTHE SOFTWARE IS PROVIDED \"AS IS\" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH\r\nREGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY\r\nAND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,\r\nINDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM\r\nLOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR\r\nOTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR\r\nPERFORMANCE OF THIS SOFTWARE.\r\n***************************************************************************** */\r\n/* global Reflect, Promise */\r\n\r\nvar extendStatics = function(d, b) {\r\n extendStatics = Object.setPrototypeOf ||\r\n ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||\r\n function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; };\r\n return extendStatics(d, b);\r\n};\r\n\r\nexport function __extends(d, b) {\r\n extendStatics(d, b);\r\n function __() { this.constructor = d; }\r\n d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());\r\n}\r\n\r\nexport var __assign = function() {\r\n __assign = Object.assign || function __assign(t) {\r\n for (var s, i = 1, n = arguments.length; i < n; i++) {\r\n s = arguments[i];\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p)) t[p] = s[p];\r\n }\r\n return t;\r\n }\r\n return __assign.apply(this, arguments);\r\n}\r\n\r\nexport function __rest(s, e) {\r\n var t = {};\r\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0)\r\n t[p] = s[p];\r\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\")\r\n for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\r\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i]))\r\n t[p[i]] = s[p[i]];\r\n }\r\n return t;\r\n}\r\n\r\nexport function __decorate(decorators, target, key, desc) {\r\n var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;\r\n if (typeof Reflect === \"object\" && typeof Reflect.decorate === \"function\") r = Reflect.decorate(decorators, target, key, desc);\r\n else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;\r\n return c > 3 && r && Object.defineProperty(target, key, r), r;\r\n}\r\n\r\nexport function __param(paramIndex, decorator) {\r\n return function (target, key) { decorator(target, key, paramIndex); }\r\n}\r\n\r\nexport function __metadata(metadataKey, metadataValue) {\r\n if (typeof Reflect === \"object\" && typeof Reflect.metadata === \"function\") return Reflect.metadata(metadataKey, metadataValue);\r\n}\r\n\r\nexport function __awaiter(thisArg, _arguments, P, generator) {\r\n function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }\r\n return new (P || (P = Promise))(function (resolve, reject) {\r\n function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }\r\n function rejected(value) { try { step(generator[\"throw\"](value)); } catch (e) { reject(e); } }\r\n function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }\r\n step((generator = generator.apply(thisArg, _arguments || [])).next());\r\n });\r\n}\r\n\r\nexport function __generator(thisArg, body) {\r\n var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;\r\n return g = { next: verb(0), \"throw\": verb(1), \"return\": verb(2) }, typeof Symbol === \"function\" && (g[Symbol.iterator] = function() { return this; }), g;\r\n function verb(n) { return function (v) { return step([n, v]); }; }\r\n function step(op) {\r\n if (f) throw new TypeError(\"Generator is already executing.\");\r\n while (_) try {\r\n if (f = 1, y && (t = op[0] & 2 ? y[\"return\"] : op[0] ? y[\"throw\"] || ((t = y[\"return\"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;\r\n if (y = 0, t) op = [op[0] & 2, t.value];\r\n switch (op[0]) {\r\n case 0: case 1: t = op; break;\r\n case 4: _.label++; return { value: op[1], done: false };\r\n case 5: _.label++; y = op[1]; op = [0]; continue;\r\n case 7: op = _.ops.pop(); _.trys.pop(); continue;\r\n default:\r\n if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }\r\n if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }\r\n if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }\r\n if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }\r\n if (t[2]) _.ops.pop();\r\n _.trys.pop(); continue;\r\n }\r\n op = body.call(thisArg, _);\r\n } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }\r\n if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };\r\n }\r\n}\r\n\r\nexport function __createBinding(o, m, k, k2) {\r\n if (k2 === undefined) k2 = k;\r\n o[k2] = m[k];\r\n}\r\n\r\nexport function __exportStar(m, exports) {\r\n for (var p in m) if (p !== \"default\" && !exports.hasOwnProperty(p)) exports[p] = m[p];\r\n}\r\n\r\nexport function __values(o) {\r\n var s = typeof Symbol === \"function\" && Symbol.iterator, m = s && o[s], i = 0;\r\n if (m) return m.call(o);\r\n if (o && typeof o.length === \"number\") return {\r\n next: function () {\r\n if (o && i >= o.length) o = void 0;\r\n return { value: o && o[i++], done: !o };\r\n }\r\n };\r\n throw new TypeError(s ? \"Object is not iterable.\" : \"Symbol.iterator is not defined.\");\r\n}\r\n\r\nexport function __read(o, n) {\r\n var m = typeof Symbol === \"function\" && o[Symbol.iterator];\r\n if (!m) return o;\r\n var i = m.call(o), r, ar = [], e;\r\n try {\r\n while ((n === void 0 || n-- > 0) && !(r = i.next()).done) ar.push(r.value);\r\n }\r\n catch (error) { e = { error: error }; }\r\n finally {\r\n try {\r\n if (r && !r.done && (m = i[\"return\"])) m.call(i);\r\n }\r\n finally { if (e) throw e.error; }\r\n }\r\n return ar;\r\n}\r\n\r\nexport function __spread() {\r\n for (var ar = [], i = 0; i < arguments.length; i++)\r\n ar = ar.concat(__read(arguments[i]));\r\n return ar;\r\n}\r\n\r\nexport function __spreadArrays() {\r\n for (var s = 0, i = 0, il = arguments.length; i < il; i++) s += arguments[i].length;\r\n for (var r = Array(s), k = 0, i = 0; i < il; i++)\r\n for (var a = arguments[i], j = 0, jl = a.length; j < jl; j++, k++)\r\n r[k] = a[j];\r\n return r;\r\n};\r\n\r\nexport function __await(v) {\r\n return this instanceof __await ? (this.v = v, this) : new __await(v);\r\n}\r\n\r\nexport function __asyncGenerator(thisArg, _arguments, generator) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var g = generator.apply(thisArg, _arguments || []), i, q = [];\r\n return i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i;\r\n function verb(n) { if (g[n]) i[n] = function (v) { return new Promise(function (a, b) { q.push([n, v, a, b]) > 1 || resume(n, v); }); }; }\r\n function resume(n, v) { try { step(g[n](v)); } catch (e) { settle(q[0][3], e); } }\r\n function step(r) { r.value instanceof __await ? Promise.resolve(r.value.v).then(fulfill, reject) : settle(q[0][2], r); }\r\n function fulfill(value) { resume(\"next\", value); }\r\n function reject(value) { resume(\"throw\", value); }\r\n function settle(f, v) { if (f(v), q.shift(), q.length) resume(q[0][0], q[0][1]); }\r\n}\r\n\r\nexport function __asyncDelegator(o) {\r\n var i, p;\r\n return i = {}, verb(\"next\"), verb(\"throw\", function (e) { throw e; }), verb(\"return\"), i[Symbol.iterator] = function () { return this; }, i;\r\n function verb(n, f) { i[n] = o[n] ? function (v) { return (p = !p) ? { value: __await(o[n](v)), done: n === \"return\" } : f ? f(v) : v; } : f; }\r\n}\r\n\r\nexport function __asyncValues(o) {\r\n if (!Symbol.asyncIterator) throw new TypeError(\"Symbol.asyncIterator is not defined.\");\r\n var m = o[Symbol.asyncIterator], i;\r\n return m ? m.call(o) : (o = typeof __values === \"function\" ? __values(o) : o[Symbol.iterator](), i = {}, verb(\"next\"), verb(\"throw\"), verb(\"return\"), i[Symbol.asyncIterator] = function () { return this; }, i);\r\n function verb(n) { i[n] = o[n] && function (v) { return new Promise(function (resolve, reject) { v = o[n](v), settle(resolve, reject, v.done, v.value); }); }; }\r\n function settle(resolve, reject, d, v) { Promise.resolve(v).then(function(v) { resolve({ value: v, done: d }); }, reject); }\r\n}\r\n\r\nexport function __makeTemplateObject(cooked, raw) {\r\n if (Object.defineProperty) { Object.defineProperty(cooked, \"raw\", { value: raw }); } else { cooked.raw = raw; }\r\n return cooked;\r\n};\r\n\r\nexport function __importStar(mod) {\r\n if (mod && mod.__esModule) return mod;\r\n var result = {};\r\n if (mod != null) for (var k in mod) if (Object.hasOwnProperty.call(mod, k)) result[k] = mod[k];\r\n result.default = mod;\r\n return result;\r\n}\r\n\r\nexport function __importDefault(mod) {\r\n return (mod && mod.__esModule) ? mod : { default: mod };\r\n}\r\n\r\nexport function __classPrivateFieldGet(receiver, privateMap) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to get private field on non-instance\");\r\n }\r\n return privateMap.get(receiver);\r\n}\r\n\r\nexport function __classPrivateFieldSet(receiver, privateMap, value) {\r\n if (!privateMap.has(receiver)) {\r\n throw new TypeError(\"attempted to set private field on non-instance\");\r\n }\r\n privateMap.set(receiver, value);\r\n return value;\r\n}\r\n","import { __extends, __read, __spread } from \"tslib\";\nimport AnalyticsEvent from './AnalyticsEvent';\nvar UIAnalyticsEvent = /** @class */ (function (_super) {\n __extends(UIAnalyticsEvent, _super);\n function UIAnalyticsEvent(props) {\n var _this = _super.call(this, props) || this;\n _this.clone = function () {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n return null;\n }\n var context = __spread(_this.context);\n var handlers = __spread(_this.handlers);\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new UIAnalyticsEvent({ context: context, handlers: handlers, payload: payload });\n };\n _this.fire = function (channel) {\n if (_this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n return;\n }\n _this.handlers.forEach(function (handler) { return handler(_this, channel); });\n _this.hasFired = true;\n };\n _this.context = props.context || [];\n _this.handlers = props.handlers || [];\n _this.hasFired = false;\n return _this;\n }\n UIAnalyticsEvent.prototype.update = function (updater) {\n if (this.hasFired) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n return this;\n }\n return _super.prototype.update.call(this, updater);\n };\n return UIAnalyticsEvent;\n}(AnalyticsEvent));\nexport default UIAnalyticsEvent;\n//# sourceMappingURL=UIAnalyticsEvent.js.map","import { __assign } from \"tslib\";\nvar AnalyticsEvent = /** @class */ (function () {\n function AnalyticsEvent(props) {\n var _this = this;\n this.clone = function () {\n // We stringify and parse here to get a hacky \"deep clone\" of the object.\n // This has some limitations in that it wont support functions, regexs, Maps, Sets, etc,\n // but none of those need to be represented in our payload, so we consider this fine\n var payload = JSON.parse(JSON.stringify(_this.payload));\n return new AnalyticsEvent({ payload: payload });\n };\n this.payload = props.payload;\n }\n AnalyticsEvent.prototype.update = function (updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = __assign(__assign({}, this.payload), updater);\n }\n return this;\n };\n return AnalyticsEvent;\n}());\nexport default AnalyticsEvent;\n//# sourceMappingURL=AnalyticsEvent.js.map","import { __assign, __extends, __read, __spread } from \"tslib\";\nimport React from 'react';\nimport PropTypes from 'prop-types';\nimport UIAnalyticsEvent from './UIAnalyticsEvent';\n/**\n * This component is used to grab the analytics functions off context.\n * It uses legacy context, but provides an API similar to 16.3 context.\n * This makes it easier to use with the forward ref API.\n */\nvar AnalyticsContextConsumer = /** @class */ (function (_super) {\n __extends(AnalyticsContextConsumer, _super);\n function AnalyticsContextConsumer(props) {\n var _this = _super.call(this, props) || this;\n /**\n * Store references to the original and patched event props so we can\n * determine when to update the patched props\n */\n _this.originalEventProps = {};\n _this.patchedEventProps = {};\n // Update patched event props only if the original props have changed\n _this.updatePatchedEventProps = function (props) {\n var changedPropCallbacks = Object.keys(_this.props.createEventMap).filter(function (p) { return _this.originalEventProps[p] !== props[p]; });\n if (changedPropCallbacks.length > 0) {\n _this.patchedEventProps = __assign(__assign({}, _this.patchedEventProps), _this.mapCreateEventsToProps(changedPropCallbacks, props));\n changedPropCallbacks.forEach(function (p) {\n _this.originalEventProps[p] = props[p];\n });\n }\n return _this.patchedEventProps;\n };\n _this.mapCreateEventsToProps = function (changedPropNames, props) {\n return changedPropNames.reduce(function (modified, propCallbackName) {\n var _a;\n var eventCreator = _this.props.createEventMap[propCallbackName];\n var providedCallback = props[propCallbackName];\n if (!['object', 'function'].includes(typeof eventCreator)) {\n return modified;\n }\n var modifiedCallback = function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var analyticsEvent = typeof eventCreator === 'function'\n ? eventCreator(_this.createAnalyticsEvent, props)\n : _this.createAnalyticsEvent(eventCreator);\n if (providedCallback) {\n providedCallback.apply(void 0, __spread(args, [analyticsEvent]));\n }\n };\n return __assign(__assign({}, modified), (_a = {}, _a[propCallbackName] = modifiedCallback, _a));\n }, {});\n };\n _this.createAnalyticsEvent = function (payload) {\n var _a = _this.context, getAtlaskitAnalyticsEventHandlers = _a.getAtlaskitAnalyticsEventHandlers, getAtlaskitAnalyticsContext = _a.getAtlaskitAnalyticsContext;\n return new UIAnalyticsEvent({\n context: (typeof getAtlaskitAnalyticsContext === 'function' &&\n getAtlaskitAnalyticsContext()) ||\n [],\n handlers: (typeof getAtlaskitAnalyticsEventHandlers === 'function' &&\n getAtlaskitAnalyticsEventHandlers()) ||\n [],\n payload: payload,\n });\n };\n Object.keys(_this.props.createEventMap).forEach(function (p) {\n _this.originalEventProps[p] = props.wrappedComponentProps[p];\n });\n _this.patchedEventProps = _this.mapCreateEventsToProps(Object.keys(_this.props.createEventMap), props.wrappedComponentProps);\n return _this;\n }\n AnalyticsContextConsumer.prototype.render = function () {\n var patchedEventProps = this.updatePatchedEventProps(this.props.wrappedComponentProps);\n return this.props.children({\n createAnalyticsEvent: this.createAnalyticsEvent,\n patchedEventProps: patchedEventProps,\n });\n };\n AnalyticsContextConsumer.contextTypes = {\n getAtlaskitAnalyticsEventHandlers: PropTypes.func,\n getAtlaskitAnalyticsContext: PropTypes.func,\n };\n AnalyticsContextConsumer.defaultProps = {\n createEventMap: {},\n };\n return AnalyticsContextConsumer;\n}(React.Component));\nexport default AnalyticsContextConsumer;\n//# sourceMappingURL=AnalyticsContextConsumer.js.map","import { __assign } from \"tslib\";\nimport React from 'react';\nimport AnalyticsContextConsumer from './AnalyticsContextConsumer';\nvar withAnalyticsEvents = function (createEventMap) { return function (WrappedComponent) {\n var WithAnalyticsEvents = React.forwardRef(function (props, ref) { return (React.createElement(AnalyticsContextConsumer, { createEventMap: createEventMap, wrappedComponentProps: props }, function (_a) {\n var createAnalyticsEvent = _a.createAnalyticsEvent, patchedEventProps = _a.patchedEventProps;\n return (React.createElement(WrappedComponent, __assign({}, props, patchedEventProps, { createAnalyticsEvent: createAnalyticsEvent, ref: ref })));\n })); });\n // @ts-ignore\n WithAnalyticsEvents.displayName = \"WithAnalyticsEvents(\" + (WrappedComponent.displayName ||\n WrappedComponent.name) + \")\";\n return WithAnalyticsEvents;\n}; };\nexport default withAnalyticsEvents;\n//# sourceMappingURL=withAnalyticsEvents.js.map","export function getInitials(fullName: string): string {\n return fullName.split(/[^\\w]+/).reduce((result, part) => {\n if (result.length < 3 && part.length > 0) {\n return result + part[0].toUpperCase();\n } else {\n return result;\n }\n }, '');\n}\n","import Avatar from '@atlaskit/avatar';\nimport { colors, fontFamily } from '@atlaskit/theme';\nimport React from 'react';\nimport styled from 'styled-components';\nimport { getInitials } from '../utils/initials';\n\nexport type UserAvatarProps = {\n readonly userName: string;\n readonly avatarSrc?: string;\n readonly enableTooltip?: boolean;\n readonly isDisabled?: boolean;\n readonly isFocus?: boolean;\n};\n\nexport function UserAvatar({\n userName,\n avatarSrc,\n enableTooltip = false,\n isDisabled = false,\n isFocus = false\n}: UserAvatarProps) {\n if (avatarSrc !== undefined) {\n return (\n \n );\n } else {\n return (\n (\n
\n {getInitials(userName)}\n
\n )}\n name={userName}\n size=\"small\"\n isDisabled={isDisabled}\n isFocus={isFocus}\n enableTooltip={enableTooltip}\n />\n );\n }\n}\n\nconst Initials = styled.span`\n display: flex;\n align-items: center;\n justify-content: center;\n\n font-family: ${fontFamily};\n font-size: 10px;\n line-height: 10px;\n color: ${colors.N500};\n\n width: 100%;\n height: 100%;\n background-color: ${colors.N40};\n border-radius: 50%;\n`;\n","import { defineMessages } from 'react-intl';\n\nexport const messages = defineMessages({\n getStarted: {\n id: 'UserProfileDropdown.getStarted',\n defaultMessage: 'Get started with any product'\n },\n cloudProducts: {\n id: 'UserProfileDropdown.cloudProducts',\n defaultMessage: 'My cloud products'\n },\n cloudProductsMobile: {\n id: 'UserProfileDropdown.cloudProductsMobile',\n defaultMessage: 'MY CLOUD PRODUCTS'\n },\n activeSites: {\n id: 'UserProfileDropdown.activeSites',\n defaultMessage: 'Active in {sites} sites:'\n },\n profile: {\n id: 'UserProfileDropdown.profile',\n defaultMessage: 'Profile'\n },\n licenses: {\n id: 'UserProfileDropdown.licenses',\n defaultMessage: 'Licenses'\n },\n logOut: {\n id: 'UserProfileDropdown.logOut',\n defaultMessage: 'Log Out'\n },\n switchAccount: {\n id: 'UserProfileDropdown.switchAccount',\n defaultMessage: 'Switch Account'\n }\n});\n","import React from 'react';\n\nexport function BlankPointerImage() {\n return (\n \n );\n}\n","import { colors, fontFamily } from '@atlaskit/theme';\nimport React, { MouseEventHandler } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { messages } from '../messages';\nimport { BlankPointerImage } from './blank-pointer-image';\n\nexport type EmptyViewProps = {\n readonly getStartedUrl: string;\n readonly onGetStartedClick?: MouseEventHandler;\n};\n\nexport function EmptyView({\n getStartedUrl,\n onGetStartedClick\n}: EmptyViewProps) {\n return (\n \n \n {\n if (onGetStartedClick) {\n onGetStartedClick(event);\n }\n }}\n >\n \n \n \n );\n}\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n margin: 27px;\n`;\n\nconst Link = styled.a`\n margin: 15px 15px 0;\n\n color: ${colors.B400};\n text-decoration: none;\n cursor: pointer;\n font-family: ${fontFamily};\n font-size: 12px;\n line-height: 14px;\n text-align: center;\n`;\n","import { useContext, useRef } from 'react';\nimport { useCallbackOne } from 'use-memo-one';\nimport { AnalyticsReactContext, } from './AnalyticsReactContext';\nimport UIAnalyticsEvent from './UIAnalyticsEvent';\nvar noop = function () { return []; };\nexport function useAnalyticsEvents() {\n var analyticsContext = useContext(AnalyticsReactContext);\n var contextRef = useRef(analyticsContext);\n contextRef.current.getAtlaskitAnalyticsEventHandlers =\n analyticsContext.getAtlaskitAnalyticsEventHandlers;\n contextRef.current.getAtlaskitAnalyticsContext =\n analyticsContext.getAtlaskitAnalyticsContext;\n var createAnalyticsEvent = useCallbackOne(function (payload) {\n var getAtlaskitAnalyticsContext = contextRef.current.getAtlaskitAnalyticsContext || noop;\n var getAtlaskitAnalyticsEventHandlers = contextRef.current.getAtlaskitAnalyticsEventHandlers || noop;\n return new UIAnalyticsEvent({\n context: getAtlaskitAnalyticsContext(),\n handlers: getAtlaskitAnalyticsEventHandlers(),\n payload: payload,\n });\n }, []);\n return {\n createAnalyticsEvent: createAnalyticsEvent,\n };\n}\n//# sourceMappingURL=useAnalyticsEvents.js.map","import { __read, __spread } from \"tslib\";\nimport { useCallback, useRef, useEffect } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nexport var useCallbackWithAnalytics = function (method, payload, channel) {\n var createAnalyticsEvent = useAnalyticsEvents().createAnalyticsEvent;\n // given input might be new function/object each render\n // we optimise and store in refs so we can memoize the callback\n // and at the same time avoid stale values\n var methodRef = useRef(method);\n var payloadRef = useRef(payload);\n useEffect(function () {\n methodRef.current = method;\n payloadRef.current = payload;\n }, [method, payload]);\n return useCallback(function () {\n var args = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n args[_i] = arguments[_i];\n }\n var pload = typeof payloadRef.current === 'function'\n ? payloadRef.current.apply(payloadRef, __spread(args)) : payloadRef.current;\n createAnalyticsEvent(pload).fire(channel);\n methodRef.current.apply(methodRef, __spread(args));\n }, [createAnalyticsEvent, methodRef, payloadRef, channel]);\n};\n//# sourceMappingURL=useCallbackWithAnalytics.js.map","import camelCase from 'camelcase';\n\nexport const trackingData = {\n dropdownToggle: {\n eventType: 'track',\n eventContainer: 'globalNavProfile',\n eventComponent: 'DropdownMenu',\n event: 'clicked',\n magnoliaComponentId: null\n },\n siteLink: {\n eventType: 'track',\n eventContainer: 'globalNavProfile',\n eventComponent: 'SiteLink',\n event: 'clicked',\n magnoliaComponentId: null,\n productKey: null,\n atlOrigin: null\n }\n};\n\nexport const parseProductKey = (product: string) => {\n return camelCase(product);\n};\n\nexport const getParameterByName = (name: string, url: string) => {\n name = name.replace(/[\\[\\]]/g, '\\\\$&');\n const regex = new RegExp('[?&]' + name + '(=([^&#]*)|&|#|$)');\n const results = regex.exec(url);\n\n if (!results) {\n return null;\n }\n if (!results[2]) {\n return '';\n }\n return decodeURIComponent(results[2].replace(/\\+/g, ' '));\n};\n","import ChevronDownIcon from '@atlaskit/icon/glyph/chevron-down';\nimport ChevronUpIcon from '@atlaskit/icon/glyph/chevron-up';\nimport React from 'react';\n\nexport type ChrevronProps = {\n readonly isOpen: boolean;\n};\n\nexport function Chevron({ isOpen }: ChrevronProps) {\n if (isOpen) {\n return ;\n } else {\n return ;\n }\n}\n","import {\n useCallbackWithAnalytics,\n withAnalyticsEvents,\n WithAnalyticsEventsProps\n} from '@atlaskit/analytics-next';\nimport { B400, N600 } from '@atlaskit/theme/colors';\nimport React, { MouseEvent } from 'react';\nimport styled from 'styled-components';\nimport { getParameterByName, parseProductKey, trackingData } from '../tracking';\n\nexport type SiteLinkProps = {\n readonly site: string;\n readonly name: string;\n readonly domRootId?: string;\n} & WithAnalyticsEventsProps;\n\nfunction SiteLink({ site, name, domRootId }: SiteLinkProps) {\n const { hostname } = new URL(site);\n const index = hostname.indexOf('.');\n\n const subdomain = hostname.substring(0, index);\n const rest = hostname.substring(index);\n\n const trackAndFollowUrl = (label: string, domain: string) => {\n const analyticsData = Object.assign(\n { ...trackingData.siteLink },\n {\n magnoliaComponentId: domRootId,\n atlOrigin: getParameterByName('atlOrigin', domain),\n productKey: parseProductKey(label)\n }\n );\n\n return useCallbackWithAnalytics((event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n window.location.assign(domain);\n }, analyticsData);\n };\n\n return (\n \n {subdomain}\n {rest}\n \n );\n}\n\nexport const Link = styled.a`\n color: ${N600};\n text-decoration: none;\n`;\n\nexport const SubDomain = styled.span`\n color: ${B400};\n`;\n\nexport default withAnalyticsEvents()(SiteLink);\n","import { N600, N800 } from '@atlaskit/theme/colors';\nimport React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { messages } from '../messages';\nimport { default as SiteLinkWithAnalytics } from './site-link';\n\nexport type SiteListProps = {\n readonly sites: string[];\n readonly product: string;\n readonly domRootId?: string;\n};\n\nexport function SiteList({ sites, product, domRootId }: SiteListProps) {\n return (\n \n \n \n \n \n {sites.map((site) => (\n \n \n \n ))}\n \n \n );\n}\n\nexport const Message = styled.div`\n font-size: 10px;\n line-height: 16px;\n color: ${N800};\n`;\n\nconst Container = styled.div`\n margin: 6px 0;\n`;\n\nconst List = styled.ul`\n margin: 0;\n padding: 0;\n list-style: none;\n`;\n\nconst ListItem = styled.li`\n font-size: 10px;\n line-height: 16px;\n color: ${N600};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n","import {\n useCallbackWithAnalytics,\n withAnalyticsEvents,\n WithAnalyticsEventsProps\n} from '@atlaskit/analytics-next';\nimport { N20, N800 } from '@atlaskit/theme/colors';\nimport React, { MouseEvent, useState } from 'react';\nimport styled from 'styled-components';\nimport { getParameterByName, parseProductKey, trackingData } from '../tracking';\n\nimport { Chevron } from './chevron';\nimport { SiteList } from './site-list';\n\nexport type ProductDropdownItemProps = {\n readonly name: string;\n readonly icon: JSX.Element;\n readonly sites: string[];\n readonly domRootId?: string;\n} & WithAnalyticsEventsProps;\n\nexport type ProductDropdownItemState = {\n readonly isOpen: boolean;\n};\n\nexport function ProductDropdownItem({\n name,\n icon,\n sites,\n domRootId\n}: ProductDropdownItemProps): JSX.Element {\n const [isOpen, setIsOpen] = useState(false);\n const toggleOpen = () => setIsOpen(!isOpen);\n const singleSite = sites[0];\n\n const trackAndFollowUrl = (label: string, domain: string) => {\n const analyticsData = Object.assign(\n { ...trackingData.siteLink },\n {\n magnoliaComponentId: domRootId,\n atlOrigin: getParameterByName('atlOrigin', domain),\n productKey: parseProductKey(label)\n }\n );\n\n return useCallbackWithAnalytics((event: MouseEvent) => {\n event.preventDefault();\n event.stopPropagation();\n window.location.assign(domain);\n }, analyticsData);\n };\n\n if (sites.length > 1) {\n return (\n \n
\n {icon}\n {name}\n \n
\n {isOpen ? (\n \n ) : null}\n
\n );\n } else {\n return (\n \n \n
\n {icon}\n {name}\n
\n \n
\n );\n }\n}\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n align-items: stretch;\n\n padding: 4px 12px;\n\n &:hover {\n background-color: ${N20};\n }\n`;\n\nconst ProductLink = styled.a`\n text-decoration: none;\n\n &:hover {\n text-decoration: none;\n }\n`;\n\nconst Header = styled.div`\n display: flex;\n flex-direction: row;\n align-items: center;\n`;\n\nconst ProductNameLabel = styled.span`\n margin-left: 8px;\n flex: 1;\n font-size: 12px;\n line-height: 14px;\n color: ${N800};\n`;\n\nexport default withAnalyticsEvents()(ProductDropdownItem);\n","import { N800 } from '@atlaskit/theme/colors';\nimport React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport styled from 'styled-components';\n\nimport { messages } from '../messages';\nimport { isNotEmpty } from '../utils/filters';\nimport {\n default as ProductDropdownItemWithAnalytics,\n ProductDropdownItemProps\n} from './product-dropdown-item';\n\nimport { UserProfileViewType } from '../user-profile-view';\n\nexport type ProductsViewProps = {\n readonly products: ProductDropdownItemProps[];\n readonly type?: UserProfileViewType;\n readonly domRootId?: string;\n};\n\nexport function ProductsView({ products, type, domRootId }: ProductsViewProps) {\n return (\n \n \n {type === 'wac-mobile' ? (\n
\n \n \n
\n ) : (\n \n )}\n
\n {products\n .filter(({ sites }) => isNotEmpty(sites))\n .map((product) => (\n \n ))}\n
\n );\n}\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n align-items: stretch;\n margin: 12px 0;\n`;\n\nconst MessageLabel = styled.span`\n margin-left: 12px;\n margin-bottom: 11px;\n font-size: 12px;\n line-height: 14px;\n color: ${N800};\n`;\n\nconst MessageLabelDivider = styled.hr`\n width: 64px;\n margin-left: 0px;\n`;\n","export function isNotEmpty(array: T[]): boolean {\n return array.length > 0;\n}\n","import { colors, fontFamily } from '@atlaskit/theme';\nimport React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport styled from 'styled-components';\nimport { messages } from '../messages';\n\nexport type UserNavProps = {\n readonly onSwitchAccountClick?: () => void;\n readonly onProfileClick: () => void;\n readonly onLicensesClick: () => void;\n readonly onLogOutClick?: () => void;\n};\n\nexport function UserNav({\n onSwitchAccountClick,\n onProfileClick,\n onLicensesClick,\n onLogOutClick\n}: UserNavProps): JSX.Element {\n if (onLogOutClick) {\n return (\n \n \n \n \n \n \n );\n } else {\n return (\n \n \n \n \n );\n }\n}\n\nconst Container = styled.div`\n display: flex;\n flex-direction: column;\n align-items: flex-start;\n`;\n\nconst Button = styled.button`\n background: none;\n border: none;\n padding: 0;\n margin: 0;\n font: inherit;\n outline: inherit;\n\n color: ${colors.N600};\n text-decoration: none;\n font-family: ${fontFamily};\n font-size: 12px;\n line-height: 21px;\n cursor: pointer;\n`;\n","import Button from '@atlaskit/button';\nimport ChevronLeftLargeIcon from '@atlaskit/icon/glyph/chevron-left-large';\nimport CrossIcon from '@atlaskit/icon/glyph/cross';\nimport { colors, fontFamily } from '@atlaskit/theme';\nimport React from 'react';\nimport styled from 'styled-components';\n\nimport { UserAvatar } from './components/user-avatar';\nimport { EmptyView } from './components/empty-view';\nimport { ProductDropdownItemProps } from './components/product-dropdown-item';\nimport { ProductsView } from './components/products-view';\nimport { UserNav } from './components/user-nav';\n\nexport type UserProfileViewType = 'wac-desktop' | 'wac-mobile';\n\nexport type UserProfileViewProps = {\n readonly userName: string;\n readonly userEmail: string;\n readonly products: ProductDropdownItemProps[];\n\n readonly onSwitchAccountClick: () => void;\n readonly onProfileClick: () => void;\n readonly onLicensesClick: () => void;\n readonly onLogOutClick: () => void;\n\n readonly getStartedUrl: string;\n readonly onGetStartedClick?: () => void;\n readonly onMobileBackClick?: () => void;\n readonly onMobileCloseClick?: () => void;\n\n readonly avatarSrc?: string;\n readonly type?: UserProfileViewType;\n readonly domRootId?: string;\n};\n\nexport function UserProfileView({\n userName,\n userEmail,\n products,\n getStartedUrl,\n onGetStartedClick,\n onSwitchAccountClick,\n onProfileClick,\n onLicensesClick,\n onLogOutClick,\n onMobileBackClick,\n onMobileCloseClick,\n domRootId,\n avatarSrc,\n type = 'wac-desktop'\n}: UserProfileViewProps) {\n switch (type) {\n case 'wac-mobile':\n return (\n \n \n }\n onClick={() => onMobileBackClick && onMobileBackClick()}\n />\n \n {userName}\n {userEmail}\n \n }\n onClick={() => onMobileCloseClick && onMobileCloseClick()}\n />\n \n {products.length > 0 ? (\n \n ) : (\n \n )}\n \n \n \n \n );\n default:\n return (\n \n \n \n \n {userName}\n {userEmail}\n \n \n\n {products.length > 0 ? (\n \n ) : (\n \n )}\n
\n \n
\n
\n );\n }\n}\n\nconst RootContainer = styled.div`\n width: 190px;\n margin: -4px 0;\n font-family: ${fontFamily};\n`;\n\nconst RootContainerMobile = styled.div`\n width: 100%;\n margin: -4px 0;\n font-family: ${fontFamily};\n`;\n\nconst UserDetailsContainer = styled.div`\n display: flex;\n flex-flow: row nowrap;\n align-items: center;\n padding: 8px 14px;\n background-color: ${colors.N800};\n`;\n\nconst UserInfoContainer = styled.div`\n display: flex;\n flex-flow: column;\n margin-left: 8px;\n`;\n\nconst UserDetailsContainerMobile = styled.div`\n flex: 1;\n padding: 8px 14px;\n color: white;\n`;\n\nconst Footer = styled.div`\n margin: 12px;\n padding-top: 11px;\n border-top: 1px solid ${colors.N40};\n`;\n\nconst FooterMobile = styled.div`\n padding: 20px 15px;\n border-top: 1px solid ${colors.N40};\n background-color: ${colors.N20};\n`;\n\nconst UserNameLabel = styled.div`\n font-size: 15px;\n line-height: 18px;\n color: ${colors.N0};\n`;\n\nconst UserEmailLabel = styled.div`\n font-size: 10px;\n line-height: 12px;\n color: ${colors.N50};\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst UserNameLabelMobile = styled.div`\n font-size: 15px;\n line-height: 18px;\n color: black;\n`;\n\nconst UserEmailLabelMobile = styled.div`\n font-size: 10px;\n line-height: 12px;\n color: black;\n white-space: nowrap;\n overflow: hidden;\n text-overflow: ellipsis;\n`;\n\nconst TopRowContainer = styled.div`\n width: 100%;\n display: flex;\n border-bottom: 1px solid ${colors.N40};\n`;\n","import Avatar from '@atlaskit/avatar';\nimport { colors, fontFamily } from '@atlaskit/theme';\nimport React, { Component } from 'react';\nimport styled from 'styled-components';\n\nimport { getInitials } from '../utils/initials';\n\nexport type TriggerProps = {\n readonly userName: string;\n readonly isBorderVisible: boolean;\n readonly avatarSrc?: string;\n};\n\nexport class Trigger extends Component {\n public static defaultProps = {\n isBorderVisible: false\n };\n\n public render() {\n const { userName, avatarSrc, isBorderVisible } = this.props;\n if (avatarSrc !== undefined) {\n return (\n \n );\n } else {\n return (\n (\n
\n {getInitials(userName)}\n
\n )}\n name={userName}\n size=\"small\"\n isFocus={isBorderVisible}\n isInteractive\n />\n );\n }\n }\n}\n\nconst Initials = styled.span`\n display: flex;\n align-items: center;\n justify-content: center;\n\n font-family: ${fontFamily};\n font-size: 10px;\n line-height: 10px;\n color: ${colors.N500};\n\n width: 100%;\n height: 100%;\n background-color: ${colors.N40};\n border-radius: 50%;\n`;\n","import {\n withAnalyticsEvents,\n WithAnalyticsEventsProps\n} from '@atlaskit/analytics-next';\nimport DropdownMenu from '@atlaskit/dropdown-menu';\nimport React, { Component } from 'react';\nimport { UserProfileView } from './user-profile-view';\n\nimport { ProductDropdownItemProps } from './components/product-dropdown-item';\nimport { Trigger } from './components/trigger';\nimport { messages } from './messages';\nimport { trackingData } from './tracking';\n\nexport { ProductDropdownItemProps };\n\nexport type UserProfileDropdownProps = {\n readonly userName: string;\n readonly userEmail: string;\n readonly products: ProductDropdownItemProps[];\n readonly defaultOpen: boolean;\n\n readonly onSwitchAccountClick: () => void;\n readonly onProfileClick: () => void;\n readonly onLicensesClick: () => void;\n readonly onLogOutClick: () => void;\n\n readonly getStartedUrl: string;\n readonly onGetStartedClick?: () => void;\n readonly onMobileBackClick?: () => void;\n readonly onMobileCloseClick?: () => void;\n\n readonly avatarSrc?: string;\n readonly domRootId?: string;\n} & WithAnalyticsEventsProps;\n\nexport type UserProfileDropdownState = {\n readonly isOpen: boolean;\n};\n\nexport type onOpenChangeProps = {\n readonly event?: { [key: string]: unknown };\n} & UserProfileDropdownState;\n\nexport class UserProfileDropdown extends Component<\n UserProfileDropdownProps,\n UserProfileDropdownState\n> {\n public static defaultProps = {\n defaultOpen: false\n };\n\n public static messages = messages;\n\n public constructor(props: UserProfileDropdownProps) {\n super(props);\n\n this.state = {\n isOpen: props.defaultOpen\n };\n }\n\n public render() {\n const {\n userName,\n userEmail,\n products,\n avatarSrc,\n getStartedUrl,\n onGetStartedClick,\n onSwitchAccountClick,\n onProfileClick,\n onLicensesClick,\n onLogOutClick,\n onMobileBackClick,\n onMobileCloseClick,\n domRootId,\n createAnalyticsEvent,\n ...rest\n } = this.props;\n const { isOpen } = this.state;\n const trigger = (\n \n );\n\n const onOpenChange = ({ isOpen: open }: onOpenChangeProps) => {\n if (open === true && createAnalyticsEvent) {\n const analyticsData = Object.assign(trackingData.dropdownToggle, {\n magnoliaComponentId: domRootId\n });\n\n const analyticsEvent = createAnalyticsEvent(analyticsData);\n analyticsEvent.fire();\n }\n };\n\n return (\n \n \n \n );\n }\n}\n\nexport default withAnalyticsEvents()(UserProfileDropdown);\n","import Avatar from '@atlaskit/avatar';\nimport { colors, fontFamily } from '@atlaskit/theme';\nimport React, { Component } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport styled from 'styled-components';\n\nexport type MobileTriggerProps = {\n readonly userName: string;\n readonly avatarSrc?: string;\n readonly onClick?: () => void;\n readonly logOutUrl?: string;\n readonly logOutMessage?: FormattedMessage.MessageDescriptor;\n};\n\nexport class MobileTrigger extends Component {\n public render() {\n const { userName, avatarSrc, onClick, logOutUrl, logOutMessage } =\n this.props;\n if (avatarSrc !== undefined) {\n if (logOutUrl !== undefined && logOutMessage !== undefined) {\n return (\n {\n if (onClick) {\n onClick();\n window.location.assign(logOutUrl);\n }\n }}\n >\n \n
\n {userName}\n \n \n \n
\n \n );\n }\n\n return (\n {\n if (onClick) {\n onClick();\n }\n }}\n >\n \n {userName}\n \n );\n } else {\n return (\n {\n if (onClick) {\n onClick();\n }\n }}\n >\n \n {userName}\n \n );\n }\n }\n}\n\nconst AvatarContainer = styled.div`\n display: flex;\n align-items: center;\n font-family: ${fontFamily};\n font-size: 12px;\n line-height: 12px;\n color: ${colors.N500};\n cursor: pointer;\n`;\n\nconst UserNameLabel = styled.div`\n padding-left: 10px;\n`;\nconst DevopsUserName = styled.div`\n padding-left: 10px;\n color: ${colors.N30};\n font-weight: 700;\n`;\nconst DevOpsLogOut = styled.a`\n padding-left: 10px;\n text-decoration: none;\n font-weight: 500;\n color: ${colors.N30};\n span {\n margin-top: 4px;\n display: inline-block;\n color: ${colors.N30};\n text-decoration: underline;\n }\n`;\n","import { defineMessages } from 'react-intl';\n\nconst ID_PREFIX = 'WacSignupForm.';\nexport const messages = defineMessages({\n buttonText: {\n id: `${ID_PREFIX}submitCouponLabel`,\n defaultMessage: 'Agree'\n },\n startButtonText: {\n id: `${ID_PREFIX}submitN2ELabel`,\n defaultMessage: 'Agree and Start now'\n },\n contactSupportForCCPSite: {\n id: `${ID_PREFIX}contactSupportForCCPSite`,\n defaultMessage: 'Contact support'\n },\n ccpSiteMigrationRequiresSupport: {\n id: `${ID_PREFIX}ccpSiteMigrationRequiresSupport`,\n defaultMessage:\n 'Migrating to this site requires some additional support from us.'\n },\n ccpStartNewSiteRequiresSupport: {\n id: `${ID_PREFIX}ccpStartNewSiteRequiresSupport`,\n defaultMessage:\n 'Creating a new site requires some additional support from us.'\n },\n ccpSiteMigrationFollowSteps: {\n id: `${ID_PREFIX}ccpSiteMigrationfollowSteps`,\n defaultMessage: 'Please follow these steps once you '\n },\n ccpSiteMigrationFollowStepsBelow: {\n id: `${ID_PREFIX}ccpSiteMigrationFollowStepsBelow`,\n defaultMessage: ' below.'\n },\n ccpSiteMigrationStepSelect: {\n id: `${ID_PREFIX}ccpSiteMigrationStepSelect`,\n defaultMessage: '1. Select '\n },\n ccpSiteMigrationStepProductTrials: {\n id: `${ID_PREFIX}ccpSiteMigrationStepProductTrials`,\n defaultMessage: 'Product trials'\n },\n ccpSiteMigrationStepChoose: {\n id: `${ID_PREFIX}ccpSiteMigrationStepChoose`,\n defaultMessage: ', then choose '\n },\n ccpSiteMigrationStepExtendProductTrials: {\n id: `${ID_PREFIX}ccpSiteMigrationStepExtendProductTrials`,\n defaultMessage: 'Extend product trials'\n },\n ccpSiteMigrationStepSelectThe: {\n id: `${ID_PREFIX}ccpSiteMigrationStepSelectThe`,\n defaultMessage: '2. Select the '\n },\n ccpSiteMigrationStepSEN: {\n id: `${ID_PREFIX}ccpSiteMigrationStepSEN`,\n defaultMessage: 'SEN'\n },\n ccpSiteMigrationStepDCLicense: {\n id: `${ID_PREFIX}ccpSiteMigrationStepDCLicense`,\n defaultMessage: ' of the Data Center license, and click '\n },\n ccpSiteMigrationStepHelp: {\n id: `${ID_PREFIX}ccpSiteMigrationStepHelp`,\n defaultMessage: 'Need more help'\n },\n ccpSiteMigrationStepAdditionalInfo: {\n id: `${ID_PREFIX}ccpSiteMigrationStepAdditionalInfo`,\n defaultMessage:\n '3. In the {AdditionalDetailsFieldName} field, provide the cloud URL or entitlement number on which you wish to apply your cloud migration trial.'\n },\n ccpSiteMigrationStepAdditionalDetailsFieldName: {\n id: `${ID_PREFIX}ccpSiteMigrationStepAdditionalDetailsFieldName`,\n defaultMessage: 'Additional Details'\n },\n startButtonTextChooseSignup: {\n id: `${ID_PREFIX}startButtonTextChooseSignup`,\n defaultMessage: 'Continue'\n },\n loginChooseSignup: {\n id: `${ID_PREFIX}loginChooseSignup`,\n defaultMessage:\n \"

Trying to access Confluence? Log in

\"\n },\n devopsButtonText: {\n id: `${ID_PREFIX}devopsButtonText`,\n defaultMessage: 'Sign up'\n },\n devopsStartButtonText: {\n id: `${ID_PREFIX}devopsStartButtonText`,\n defaultMessage: 'Sign up'\n },\n submitProcessingLabel: {\n id: `${ID_PREFIX}submitProcessingLabel`,\n defaultMessage: 'Starting...'\n },\n defaultWelcomeMessage: {\n id: `${ID_PREFIX}signupFormGreeting`,\n defaultMessage: 'Create your account'\n },\n personalizedWelcomeMessage: {\n id: `${ID_PREFIX}signupFormPersonalizedGreeting`,\n defaultMessage: 'Welcome back, {username}'\n },\n noCard: {\n id: `${ID_PREFIX}signupFormPostContent`,\n defaultMessage: 'NO CREDIT CARD REQUIRED'\n },\n alwaysFreeForUpto: {\n id: `${ID_PREFIX}alwaysFreeForUpto`,\n defaultMessage: 'Always free for up to 10 users.'\n },\n noCreditCardNeeded: {\n id: `${ID_PREFIX}noCreditCardNeeded`,\n defaultMessage: 'No credit card needed.'\n },\n freeAndNoCreditCardNeeded: {\n id: `${ID_PREFIX}freeAndNoCreditCardNeeded`,\n defaultMessage: 'Free for up to 10 users. No credit card needed.'\n },\n eula: {\n id: `${ID_PREFIX}cloudEulaText`,\n defaultMessage:\n \"

By clicking below, you agree to the Atlassian Cloud Terms of Service and Privacy Policy.

\"\n },\n eulaCompass: {\n id: `${ID_PREFIX}eulaCompass`,\n defaultMessage:\n \"

By signing up for this Early Access Program (“EAP”), you agree to the Atlassian Cloud Terms of Service (“TOS”) and acknowledge the Atlassian Privacy Policy

\"\n },\n eulaCompassTooltip: {\n id: `${ID_PREFIX}eulaCompassTooltip`,\n defaultMessage:\n '

The EAP products are considered “Beta Versions”, as set forth in Section 14 of the TOS and are subject to applicable terms, conditions, and disclaimers. Atlassian will use the information you provide on this sign-up form to contact you about the EAP program, including updates to the program, feedback requests, and offers.

'\n },\n eulaChooseSignup: {\n id: `${ID_PREFIX}eulaChooseSignup`,\n defaultMessage:\n \"

By clicking “Continue” below, you agree to the Atlassian Cloud Terms of Service and acknowledge the Atlassian Privacy Policy.

\"\n },\n marketingConsent: {\n id: `${ID_PREFIX}marketingCommunicationsCheckboxSignupText`,\n defaultMessage: `Yes! I would like to receive promotional emails including product news, events and more from Atlassian and its affiliates.`\n },\n newSite: {\n id: `${ID_PREFIX}informMessageStartNewSiteSimplified`,\n defaultMessage: 'Start a new site'\n },\n createNewSite: {\n id: `${ID_PREFIX}createNewSite`,\n defaultMessage: 'Create a new site'\n },\n existingSite: {\n id: `${ID_PREFIX}existingSite`,\n defaultMessage: 'Use an existing site'\n },\n differentAcountSignin: {\n id: `${ID_PREFIX}informEmailLoggedInMsg`,\n defaultMessage:\n '

Sign in with a different Atlassian account

'\n },\n useDifferentAccountSignin: {\n id: `${ID_PREFIX}useDifferentAccountSignin`,\n defaultMessage:\n '

Use a different Atlassian account

'\n },\n developerMode: {\n id: `${ID_PREFIX}informMessageDeveloperWarning`,\n defaultMessage:\n '

You are signing up for a free development instance of Atlassian Cloud.

Free development instances are intended to be used for development and testing purposes only and has the usage limits noted below. Atlassian does not offer support for free development instances and reserves the right to delete such instances at any time without notice. Atlassian monitors the usage of such development instances and may cancel any instance being used in an unauthorized or unintended manner.

  • Jira Software, Jira Core: 5 users free
  • Jira Service Desk: 1 agent free
  • Confluence: 5 users free
'\n },\n invalidMigrationSource: {\n id: `${ID_PREFIX}invalidMigrationSource`,\n defaultMessage:\n '

Invalid trial activation

It looks we weren\\'t able to activate your extended trial.

Check with the site administrator, or login to my.atlassian.com to confirm your activation link is complete and correct, and that you have an eligible server or data center license.

'\n },\n claimedMigrationSource: {\n id: `${ID_PREFIX}claimedMigrationSource`,\n defaultMessage:\n '

Your extended trial has already been activated

It looks like someone has already activated this trial.

Log in to my.atlassian.com or contact your site administrator for more information.

'\n },\n selectSite: {\n id: `${ID_PREFIX}selectSite`,\n defaultMessage: 'Select a site'\n },\n selectAccount: {\n id: `${ID_PREFIX}selectAccount`,\n defaultMessage: 'Select an account'\n },\n selectOrganization: {\n id: `${ID_PREFIX}selectOrganization`,\n defaultMessage: 'Select your Atlassian organization'\n },\n yourSite: {\n id: `${ID_PREFIX}siteNameN2ELabel`,\n defaultMessage: 'Your site'\n },\n siteNameLabel: {\n id: `${ID_PREFIX}siteNameLabel`,\n defaultMessage: 'Site name'\n },\n siteNameOptional: {\n id: `${ID_PREFIX}siteNameOptional`,\n defaultMessage: 'Site name (optional)'\n },\n siteNameOptionalMessageN2N: {\n id: `${ID_PREFIX}siteNameOptionalMessageN2N`,\n defaultMessage: `Don't worry, you can change this later.`\n },\n siteNameOptionalMessageN2E: {\n id: `${ID_PREFIX}siteNameOptionalMessageN2E`,\n defaultMessage: `Choose an existing site below, or create a new one.`\n },\n siteNameSuite: {\n id: `${ID_PREFIX}siteNameSuiteLabel`,\n defaultMessage: 'Name your suite'\n },\n siteNameSuiteDescription: {\n id: `${ID_PREFIX}siteNameSuiteDescriptionLabel`,\n defaultMessage: '* We’ll use this to name your site and workspaces'\n },\n email: {\n id: `${ID_PREFIX}emailLabel`,\n defaultMessage: 'Work email'\n },\n password: {\n id: `${ID_PREFIX}passwordLabel`,\n defaultMessage: 'Password'\n },\n firstName: {\n id: `${ID_PREFIX}firstNameLabel`,\n defaultMessage: 'First name'\n },\n lastName: {\n id: `${ID_PREFIX}lastNameLabel`,\n defaultMessage: 'Last name'\n },\n fullNameLabel: {\n id: `${ID_PREFIX}fullNameLabel`,\n defaultMessage: 'Full name'\n },\n gdprMessage: {\n id: `${ID_PREFIX}gdprMessage`,\n defaultMessage:\n 'Select the data center region to store your Opsgenie specific product data:'\n },\n errorValidationMessage: {\n id: `${ID_PREFIX}errorValidationMessage`,\n defaultMessage: 'Please review the highlighted fields below and try again.'\n },\n errorDomainLengthMinMsg: {\n id: `${ID_PREFIX}errorDomainLengthMinMsg`,\n defaultMessage:\n 'Your site name must be 3 or more lowercase letters and/or numbers. Hyphens are ok if they’re in the middle.'\n },\n errorDomainLengthMinMsgDeferredSiteName: {\n id: `${ID_PREFIX}errorDomainLengthMinMsgDeferredSiteName`,\n defaultMessage:\n 'Must be at least three characters (numerals or lowercase letters only). Can’t start or end with a hyphen (-).'\n },\n errorDomainLengthMaxMsg: {\n id: `${ID_PREFIX}errorDomainLengthMaxMsg`,\n defaultMessage:\n \"That's a bit too long — try something 50 characters or less.\"\n },\n errorDomainTakenMsg: {\n id: `${ID_PREFIX}errorDomainTakenMsg`,\n defaultMessage: 'This site is already taken.'\n },\n errorDomainTakenMsgDeferredSiteName: {\n id: `${ID_PREFIX}errorDomainTakenMsgDeferredSiteName`,\n defaultMessage: 'This site name is already taken.'\n },\n errorDomainIsAnnualMsg: {\n id: `${ID_PREFIX}errorDomainIsAnnualMsg`,\n defaultMessage:\n 'The Free plan is not yet available for annual subscriptions. Please select a site on a monthly subscription.'\n },\n errorFirstNameMsg: {\n id: `${ID_PREFIX}errorFirstNameMsg`,\n defaultMessage: 'Please enter your first name'\n },\n errorLastNameMsg: {\n id: `${ID_PREFIX}gdprMessage`,\n defaultMessage: 'Please enter your last name'\n },\n errorEmailInvalidMsg: {\n id: `${ID_PREFIX}errorEmailInvalidMsg`,\n defaultMessage: 'Please enter a valid email address'\n },\n errorEmailInUseMsg: {\n id: `${ID_PREFIX}errorEmailInUseMsg`,\n defaultMessage: `Oops, an Atlassian account with this email already exists. If you are the owner of this account, please login to continue.`\n },\n errorEmailInUseLoginToContinueMsg: {\n id: `${ID_PREFIX}errorEmailInUseLoginToContinueMsg`,\n defaultMessage: 'log in to continue'\n },\n errorPasswordMinMsg: {\n id: `${ID_PREFIX}errorPasswordMinMsg`,\n defaultMessage: 'Password must be at least 8 characters long'\n },\n errorCaptchaMsg: {\n id: `${ID_PREFIX}errorCaptchaMsg`,\n defaultMessage: 'Error with captcha verification'\n },\n warningTimeoutPending: {\n id: `${ID_PREFIX}warningTimeoutPending`,\n defaultMessage: 'Something went wrong. Wait a few minutes, then try again.'\n },\n warningNetworkError: {\n id: `${ID_PREFIX}warningNetworkError`,\n defaultMessage: 'Something went wrong. Please try again.'\n },\n errorTimeout: {\n id: `${ID_PREFIX}errorTimeout`,\n defaultMessage:\n 'It\\'s taking longer than expected to get you started. Please check your inbox to see if the order has completed successfully, or contact us.'\n },\n aaidMismatch: {\n id: `${ID_PREFIX}aaidMismatch`,\n defaultMessage:\n 'Something went wrong. Please refresh your page, then try again.'\n },\n helpTooltipText: {\n id: `${ID_PREFIX}helpTooltipText`,\n defaultMessage:\n 'Must be at least 3 lowercase characters, numbers and letters only.'\n },\n deferredSiteNameTooltipText: {\n id: `${ID_PREFIX}deferredSiteNameTooltipText`,\n defaultMessage:\n 'Your site name is the URL used to find your site, so try something your team will easily recognize.'\n },\n reCaptchaLegal: {\n id: `${ID_PREFIX}reCaptchaLegal`,\n defaultMessage:\n 'This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.'\n },\n infoBoxModal: {\n id: `${ID_PREFIX}infoBoxModal`,\n defaultMessage:\n 'A site is the unique URL where you access your Atlassian products–Confluence, Jira Software, Jira Service Management, or Jira Work Management.

You access Bitbucket Cloud account on bitbucket.org.'\n },\n infoBoxModalCta: {\n id: `${ID_PREFIX}infoBoxModalCta`,\n defaultMessage: 'Understand site and Bitbucket Cloud account'\n },\n infoBoxDefault: {\n id: `${ID_PREFIX}infoBoxDefault`,\n defaultMessage: ' '\n },\n infoBoxSite: {\n id: `${ID_PREFIX}infoBoxSite`,\n defaultMessage:\n \"You already have a site with other Atlassian products in which Jira Software will be added to. We'll create a new Bitbucket Cloud account for you using the same name.\"\n },\n infoBoxSiteJsw: {\n id: `${ID_PREFIX}infoBoxSiteJsw`,\n defaultMessage:\n 'Select an existing site below and we’ll create a new Bitbucket Cloud account for you using the same name.'\n },\n infoBoxBb: {\n id: `${ID_PREFIX}infoBoxBb`,\n defaultMessage:\n \"You already have a Bitbucket Cloud account. Create a new site for Jira Software and they'll be automatically integrated.\"\n },\n infoBoxSiteBb: {\n id: `${ID_PREFIX}infoBoxSiteBb`,\n defaultMessage:\n 'You already have a site with other Atlassian products in which Jira Software will be added to. You also have a Bitbucket Cloud account. They will be automatically integrated.'\n },\n jswTrialNotice: {\n id: `${ID_PREFIX}jswTrialNotice`,\n defaultMessage:\n \"You'll get a 1-month free trial of Jira Software for this site.\"\n },\n jsmConfluenceNotice: {\n id: `${ID_PREFIX}jsmConfluenceNotice`,\n defaultMessage:\n 'We recommend you add Jira Service Management to an existing Confluence site now since there will be no way to link them afterwards.'\n },\n yourBitbucketAccount: {\n id: `${ID_PREFIX}yourBitbucketAccount`,\n defaultMessage: 'Your Bitbucket Cloud account'\n },\n bitbucketAccountDuplicate: {\n id: `${ID_PREFIX}bitbucketAccountDuplicate`,\n defaultMessage:\n 'Check this box if you prefer a new account with the same name as the site below.'\n },\n dropdownWithJiraSoftware: {\n id: `${ID_PREFIX}dropdownWithJiraSoftware`,\n defaultMessage: 'Sites with Jira Software:'\n },\n dropdownWithoutJiraSoftware: {\n id: `${ID_PREFIX}dropdownWithoutJiraSoftware`,\n defaultMessage: 'Sites without Jira Software:'\n },\n dropdownWithRecommended: {\n id: `${ID_PREFIX}dropdownWithRecommended`,\n defaultMessage: 'RECOMMENDED SITES'\n },\n dropdownWithoutRecommended: {\n id: `${ID_PREFIX}dropdownWithoutRecommended`,\n defaultMessage: 'OTHER SITES'\n },\n errorName: {\n id: `${ID_PREFIX}errorName`,\n defaultMessage: 'Invalid name pattern.'\n },\n errorNameLength: {\n id: `${ID_PREFIX}errorNameLength`,\n defaultMessage: 'Full name must not be greater than 255 characters'\n },\n siteAdminManageError: {\n id: `${ID_PREFIX}siteAdminManageError`,\n defaultMessage:\n 'You do not have permission to manage this site. For further support, contact the site’s administrator.'\n },\n freeBreachInfoBoxConsiderTrial: {\n id: `${ID_PREFIX}freeBreachInfoBoxConsiderTrial`,\n defaultMessage: 'Consider a Standard trial'\n },\n freeBreachInfoBoxCopy: {\n id: `${ID_PREFIX}freeBreachInfoBoxCopy`,\n defaultMessage:\n \"

This site is eligible for a 30-day trial of a Standard plan, with full-feature access for 5,000 users or agents.

A trial lets your team use everything together. If you start a new site, it won't be integrated with your other products.

\"\n },\n freeBreachInfoBoxStartTrialCta: {\n id: `${ID_PREFIX}freeBreachInfoBoxStartTrialCta`,\n defaultMessage: 'Start a 30-day trial'\n },\n freeBreachLimitExceededError: {\n id: `${ID_PREFIX}freeBreachLimitExceededError`,\n defaultMessage: 'This site has more users than Free allows.'\n },\n devopsCarouselEndTextOne: {\n id: `${ID_PREFIX}devopsCarouselEndTextOne`,\n defaultMessage:\n 'Check your inbox for useful information and guides to help you get started.'\n },\n devopsCarouselEndTextTwo: {\n id: `${ID_PREFIX}devopsCarouselEndTextTwo`,\n defaultMessage:\n 'Easily switch to other Atlassian Products directly from the navigation bar.'\n },\n devopsCarouselEndTextThree: {\n id: `${ID_PREFIX}devopsCarouselEndTextThree`,\n defaultMessage:\n 'Add your teammates to plan, track and release great software together.'\n },\n devopsCarouselButton: {\n id: `${ID_PREFIX}devopsCarouselButton`,\n defaultMessage: 'Go to {product}'\n },\n devopsCarouselEndHeading: {\n id: `${ID_PREFIX}devopsCarouselEndHeading`,\n defaultMessage: \"You're all set up!\"\n },\n devopsSignedInWelcomeMessage: {\n id: `${ID_PREFIX}devopsSignedInWelcomeMessage`,\n defaultMessage: \"Let's set up your DevOps suite\"\n },\n siteNameSuiteDescriptionDevops: {\n id: `${ID_PREFIX}siteNameSuiteDescriptionDevops`,\n defaultMessage: '* We’ll use this to name your suite and workspaces'\n },\n errorDomainTakenMsgDevops: {\n id: `${ID_PREFIX}errorDomainTakenMsgDevops`,\n defaultMessage: 'This suite is already taken.'\n },\n errorDomainLengthMinMsgDevops: {\n id: `${ID_PREFIX}errorDomainLengthMinMsgDevops`,\n defaultMessage:\n 'Your suite name must be 3 or more lowercase letters and/or numbers. Hyphens are ok if they’re in the middle.'\n },\n eulaDevops: {\n id: `${ID_PREFIX}eulaDevops`,\n defaultMessage:\n \"

By signing up, you agree to the Atlassian Cloud Terms of Service and Privacy Policy.

\"\n },\n helpTooltipTextDevops: {\n id: `${ID_PREFIX}helpTooltipTextDevops`,\n defaultMessage:\n 'Choose a name for the sites and workspaces that will make up your suite. Most teams use their company or organization.'\n },\n opsgenieDataStorageInfoBoxCopy: {\n id: `${ID_PREFIX}opsgenieDataStorageInfoBoxCopy`,\n defaultMessage:\n '

Some of your data is automatically stored in the US. Learn more

'\n },\n heading: {\n id: `${ID_PREFIX}signupOfferingIncludesFeaturesSignupFormHeading`,\n defaultMessage: 'Start now'\n },\n subheading: {\n id: `${ID_PREFIX}signupOfferingIncludesFeaturesSignupFormSubheading`,\n defaultMessage: ''\n },\n greeting: {\n id: `${ID_PREFIX}signupFormPersonalizedGreeting`,\n defaultMessage: 'Welcome back, {username}'\n },\n cloudStandard: {\n id: `${ID_PREFIX}cloudStandard`,\n defaultMessage: 'Cloud Standard'\n },\n cloudPremium: {\n id: `${ID_PREFIX}cloudPremium`,\n defaultMessage: 'Cloud Premium'\n },\n cloudFree: {\n id: `${ID_PREFIX}cloudFree`,\n defaultMessage: 'Cloud Free'\n },\n ssoCheck: {\n id: `${ID_PREFIX}errorSsoInUse`,\n defaultMessage:\n 'You must use single sign-on to access your account and continue signing up for your product. Login to continue.'\n },\n localeError: {\n id: `${ID_PREFIX}localeError`,\n defaultMessage: 'We stand with Ukraine'\n },\n localeErrorMessage: {\n id: `${ID_PREFIX}localeErrorMessage`,\n defaultMessage:\n 'Following the Russian invasion of Ukraine, we are pausing the sale of new software in Russia and Belarus.'\n },\n localeErrorButton: {\n id: `${ID_PREFIX}localeErrorButton`,\n defaultMessage: 'Learn more'\n },\n beaconRequireProducts: {\n id: `${ID_PREFIX}beaconRequireProducts`,\n defaultMessage:\n 'Beacon requires one or more Atlassian products. Since there are no products associated with this account, switch accounts above or explore our Atlassian suite.'\n },\n beaconExplore: {\n id: `${ID_PREFIX}beaconExplore`,\n defaultMessage: 'Explore Atlassian products'\n },\n inputSiteNameMessage: {\n id: `${ID_PREFIX}inputSiteNameMessage`,\n defaultMessage:\n 'Your site name appears in the URL for your Atlassian products. Most people use their team or company name. You can change your site name later.'\n },\n siteNameInstructions: {\n id: `${ID_PREFIX}siteNameInstructions`,\n defaultMessage:\n 'Must be at least three characters (numbers or lowercase letters only) and can’t start or end with a hyphen (-).'\n },\n siteNameInstructionsExperimentB: {\n id: `${ID_PREFIX}siteNameInstructionsExperimentB`,\n defaultMessage:\n 'This site name is just a suggestion. Feel free to change to something your team will recognize.'\n },\n personalizedNameSiteMessage: {\n id: `${ID_PREFIX}personalizedNameSiteMessage`,\n defaultMessage: \"Let's name your site, {username}\"\n },\n bitbucketWorkspaceIdFieldLabelMessage: {\n id: `${ID_PREFIX}bitbucketWorkspaceIdFieldLabelMessage`,\n defaultMessage: 'Your new workspace'\n },\n bitbucketOrganizationIdFieldLabelMessage: {\n id: `${ID_PREFIX}bitbucketOrganizationIdFieldLabelMessage`,\n defaultMessage: \"We'll create your workspace in this organization\"\n },\n bitbucketWorkspaceIdFieldHelperMessage: {\n id: `${ID_PREFIX}bitbucketWorkspaceIdFieldHelperMessage`,\n defaultMessage:\n 'The workspace ID can only contain lowercase letters, numbers, dashes, and underscores.'\n },\n bitbucketSubmitButtonTextMessage: {\n id: `${ID_PREFIX}bitbucketSubmitButtonTextMessage`,\n defaultMessage: 'Agree and create workspace'\n },\n bitbucketWorkspaceIdFieldErrorMessageCMT: {\n id: `${ID_PREFIX}bitbucketWorkspaceIdFieldErrorMessageCMT`,\n defaultMessage:\n 'The workspace ID is invalid. Workspace IDs can only contain lowercase letters, numbers, dashes, and underscores.'\n },\n bitbucketWorkspaceIdTakenErrorMessageCMT: {\n id: `${ID_PREFIX}bitbucketWorkspaceIdTakenErrorMessageCMT`,\n defaultMessage: 'This workspace ID is taken. Try another ID.'\n },\n bitbucketMissingOrgsInfoMessage: {\n id: `${ID_PREFIX}bitbucketMissingOrgsInfoMessage`,\n defaultMessage:\n 'If an organization is not listed in the dropdown menu, contact our Support team for assistance.'\n },\n bitbucketCreateNewOrgInfoMessage: {\n id: `${ID_PREFIX}bitbucketCreateNewOrgInfoMessage`,\n defaultMessage:\n 'We need to create a new Atlassian organization, because you currently do not have an organization in Atlassian\\'s centralized user management. If you have any questions, contact our Support team for assistance.'\n },\n bitbucketOrgCreationPreparingProductMessage: {\n id: `${ID_PREFIX}bitbucketOrgCreationPreparingProductMessage`,\n defaultMessage: \"We're preparing your product.\"\n },\n bitbucketOrgCreationEstimatedTimeMessage: {\n id: `${ID_PREFIX}bitbucketOrgCreationEstimatedTimeMessage`,\n defaultMessage: \"This won't take more than a minute or two.\"\n },\n productActivationFailureMessage: {\n id: `${ID_PREFIX}productActivationFailureMessage`,\n defaultMessage:\n '

Something went wrong on our end. Please try again. If this keeps happening, contact support.

'\n }\n});\n\nexport const getTranslatableError = (\n error: string,\n isDevops?: boolean,\n isDeferredSiteName?: boolean\n) => {\n switch (error) {\n case 'Please enter a valid email address':\n return messages.errorEmailInvalidMsg;\n case 'Password must be at least 8 characters':\n return messages.errorPasswordMinMsg;\n case 'Your site name must be at least 3 characters long. Use only lowercase letters and numbers.':\n if (isDevops) {\n return messages.errorDomainLengthMinMsgDevops;\n } else if (isDeferredSiteName) {\n return messages.errorDomainLengthMinMsgDeferredSiteName;\n } else {\n return messages.errorDomainLengthMinMsg;\n }\n case \"That's a bit too long — try something 50 characters or less.\":\n return messages.errorDomainLengthMaxMsg;\n case 'Invalid name pattern.':\n return messages.errorName;\n case 'Site name is unavailable':\n if (isDevops) {\n return messages.errorDomainTakenMsgDevops;\n } else if (isDeferredSiteName) {\n return messages.errorDomainTakenMsgDeferredSiteName;\n } else {\n return messages.errorDomainTakenMsg;\n }\n case 'An Atlassian account exists for this email address':\n return messages.errorEmailInUseMsg;\n case 'warningTimeoutPending':\n return messages.warningTimeoutPending;\n case 'errorTimeout':\n return messages.errorTimeout;\n case 'accountIdMisMatch':\n return messages.aaidMismatch;\n case 'orgCreateFailure':\n case 'productActivateFailure':\n return messages.productActivationFailureMessage;\n default:\n return { defaultMessage: error, id: `${ID_PREFIX}errorFallThrough` };\n }\n};\n","/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","/** @jsx jsx */\nimport { forwardRef } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { layers } from '@atlaskit/theme/constants';\nconst VAR_PRIMITIVE_ZINDEX = 'tooltipPrimitiveZindex';\nconst primitiveStyles = css({\n zindex: `var(${VAR_PRIMITIVE_ZINDEX})`,\n cursor: `default`\n});\nconst TooltipPrimitive = /*#__PURE__*/forwardRef(function TooltipPrimitive({\n style,\n className,\n children,\n placement,\n testId,\n onMouseOut,\n onMouseOver,\n id\n}, ref) {\n const styleWithZIndex = {\n ...style,\n [VAR_PRIMITIVE_ZINDEX]: layers.tooltip()\n };\n return jsx(\"div\", {\n ref: ref,\n style: styleWithZIndex,\n \"data-testid\": testId ? `${testId}--wrapper` : undefined\n }, jsx(\"div\", {\n role: \"tooltip\",\n className: className,\n onMouseOut: onMouseOut,\n onMouseOver: onMouseOver,\n css: primitiveStyles,\n \"data-placement\": placement,\n \"data-testid\": testId,\n id: id\n }, children));\n});\nTooltipPrimitive.displayName = 'TooltipPrimitive';\nexport default TooltipPrimitive;","import {\n B100,\n B300,\n B400,\n B50,\n G300,\n linkHover,\n N0,\n N10,\n N100,\n N20,\n N200,\n N40,\n N400,\n N500,\n N60,\n N600,\n N700,\n N80,\n N800,\n N90,\n N900,\n R400\n} from '@atlaskit/theme/colors';\nimport { TooltipPrimitive } from '@atlaskit/tooltip';\nimport styled from '@emotion/styled';\nimport React from 'react';\n\nconst text =\n \"Charlie Text, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Noto Sans', 'Ubuntu', 'Droid Sans', 'Helvetica Neue', sans-serif\";\n\nconst display =\n \"Charlie Display, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Noto Sans', 'Ubuntu', 'Droid Sans', 'Helvetica Neue', sans-serif\";\n\nconst product =\n \"-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Noto Sans', 'Ubuntu', 'Droid Sans', 'Helvetica Neue', sans-serif\";\n\nconst WacSignupFormContainer = styled.form`\n box-sizing: border-box;\n font-family: ${text};\n font-weight: 500;\n max-width: 400px;\n * {\n box-sizing: border-box;\n }\n`;\nconst ResendEmailContainer = styled.div`\n box-sizing: border-box;\n font-family: ${text};\n font-weight: 500;\n max-width: 536px;\n min-height: 564px;\n margin: 0 auto;\n * {\n box-sizing: border-box;\n }\n`;\n\nconst StyledPassword = styled.div`\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n div {\n div:nth-child(2) {\n padding: 4px;\n }\n }\n`;\n\nconst FieldContainer = styled.div`\n position: relative;\n margin-bottom: 16px;\n`;\n\ninterface FieldErrorStateProps {\n showError: boolean;\n}\nconst FieldErrorState = styled.div`\n padding: 0;\n background-color: ${(props) => {\n if (props.showError) {\n return R400;\n } else {\n return 'transparent';\n }\n }};\n border-radius: 3px;\n`;\n\nconst FullNameFieldWrapper = styled.div`\n position: relative;\n margin-bottom: 16px;\n`;\n\nconst TwoColumnFieldGroup = styled.div`\n display: grid;\n grid-template-columns: 1fr 1fr;\n grid-column-gap: 16px;\n`;\n\ninterface NameProps {\n isValid: boolean;\n val: string;\n isDisabled?: boolean;\n fadeOnDisable?: boolean;\n outlineOnFocus?: boolean;\n isFocused?: boolean;\n}\nconst NameFieldGroup = styled.div`\n transition: all 0.1s linear 0s;\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n > div {\n border-color: ${(props) => {\n if (props.isDisabled) {\n return `${N60} !important`;\n }\n if (props.isValid && props.val.length > 0) {\n return '#36b37e';\n } else if (!props.isValid) {\n return R400;\n }\n if (props.outlineOnFocus && props.isFocused) {\n return `${B100}`;\n }\n return N60;\n }};\n background: ${N0} !important;\n }\n`;\n\nconst Input = styled.input`\n border: 2px solid ${N60};\n border-radius: 4px;\n color: ${N700};\n display: inline-block;\n font-size: 1rem;\n outline: none;\n padding: 8px;\n width: 100%;\n &.field-error {\n border-color: ${R400};\n }\n`;\n\nexport const InfoIcon = styled.div`\n height: 24px;\n svg {\n margin: 0;\n }\n div {\n display: none;\n }\n :hover {\n div {\n display: block;\n }\n }\n`;\n\nconst Label = styled.label`\n transition: all 0.1s linear 0s;\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n span {\n color: ${N500};\n display: inline-block;\n font-size: 0.875rem;\n font-weight: 500;\n margin-bottom: 5px;\n line-height: normal;\n ::after {\n color: ${R400};\n content: '*';\n display: inline-block;\n padding-left: 4px;\n\n .no-asterisks & {\n content: '';\n }\n }\n }\n display: flex;\n`;\n\nconst InputSiteNameMessage = styled.label`\n color: ${N600};\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n line-height: 21px;\n display: flex;\n justify-content: center;\n margin-bottom: 32px;\n text-align: center;\n`;\n\nconst InputSiteNameInstructions = styled.label`\n color: ${N500};\n font-feature-settings: 'clig' off, 'liga' off;\n font-family: Charlie Text;\n font-size: 12px;\n font-style: normal;\n font-weight: 400;\n line-height: 18px;\n width: 375px;\n`;\n\nconst LabelDefaultExpandedEmail = styled.label`\n transition: all 0.1s linear 0s;\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n span {\n color: ${N500};\n display: inline-block;\n font-size: 0.875rem;\n font-weight: 500;\n margin-bottom: 4px;\n line-height: normal;\n ::after {\n color: ${R400};\n content: '*';\n display: inline-block;\n padding-left: 5px;\n\n .no-asterisks & {\n content: '';\n }\n }\n }\n display: flex;\n`;\n\nconst ChooseSignupLabel = styled.label`\n transition: all 0.1s linear 0s;\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n span {\n color: ${N800};\n display: inline-block;\n font-size: 12px;\n font-weight: 400;\n margin-bottom: 4px;\n line-height: 18px;\n ::after {\n color: ${R400};\n content: '*';\n display: inline-block;\n padding-left: 5px;\n\n .no-asterisks & {\n content: '';\n }\n }\n }\n display: flex;\n`;\n\nconst InputDescription = styled.div`\n color: ${N500};\n font-weight: 400;\n font-size: 12px;\n margin: 3px 0px;\n`;\n\nconst DropdownTrigger = styled.div`\n font-family: ${text};\n text-align: left;\n font-size: 14px;\n span: {\n fontsize: '14px';\n }\n`;\n\n// Atlaskit dropdown button theme prop\nconst DropdownButtonStyle = {\n width: '100%',\n background: N0,\n appearance: 'none',\n cursor: 'pointer',\n fontSize: '14px',\n color: text,\n paddingTop: '6px',\n paddingBottom: '6px',\n borderColor: N60,\n borderRadius: '3px',\n borderWidth: '2px',\n borderStyle: 'solid'\n};\n\nconst OrganizationDropdownButtonStyle = {\n width: '100%',\n height: '32px',\n borderRadius: '3px',\n background: N0,\n borderColor: 'transparent',\n color: N800\n};\n\nconst JswTrialNotice = styled.div`\n font-size: 12px;\n font-weight: 400;\n color: ${text};\n margin: 6px 0 4px;\n\n span {\n min-width: 28px;\n vertical-align: middle;\n }\n`;\n\nconst DropdownButtonStyleOpen = {\n background: N20,\n borderColor: B100\n};\n\nconst OrganizationDropdownButtonStyleOpen = {\n background: N0,\n borderColor: 'transparent',\n color: '#0C66E4'\n};\n\nconst SiteNameAfter = styled.div`\n padding-right: 8px;\n display: flex;\n font-size: 16px;\n align-items: center;\n justify-content: flex-end;\n width: auto;\n color: #7a869a;\n font-weight: 400;\n svg {\n margin-bottom: 0px;\n }\n span {\n display: flex;\n align-items: center;\n min-width: 24px;\n }\n`;\nconst SiteNameAfterRadioList = styled.div`\n padding-right: 8px;\n display: flex;\n font-size: 14px;\n align-items: center;\n justify-content: flex-start;\n width: auto;\n color: #7a869a;\n svg {\n margin-bottom: 0px;\n }\n span {\n display: flex;\n align-items: center;\n }\n`;\nconst SiteNameAfterLabel = styled.span`\n font-size: 14px !important;\n white-space: nowrap;\n padding-right: 8px;\n`;\n\nconst EmailAfter = styled.div`\n padding-right: 8px;\n display: flex;\n font-size: 16px;\n align-items: center;\n svg {\n margin-bottom: 0px;\n }\n`;\ninterface SharedProps {\n readonly isValid?: boolean;\n readonly textInput?: string;\n readonly hasAccount?: boolean;\n readonly isEmpty?: boolean;\n readonly isFocused?: boolean;\n readonly isDisabled?: boolean;\n readonly popOverError?: boolean; // popover error style type\n readonly outlineOnFocus?: boolean; // blue outline on focus\n readonly fadeOnDisable?: boolean; // fade entire field if disabled\n readonly children?: React.ReactNode;\n readonly className?: string;\n readonly onClick?: (event: any) => void;\n readonly isValidating?: boolean;\n}\n\nconst SuccessTextfieldWrapper = styled.div`\n .errorMessage {\n background-color: white !important;\n }\n #site-field {\n padding-right: 0px;\n }\n > div {\n transition: all 0.1s linear 0s;\n max-height: 40px;\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n background: ${N0};\n background: ${(props) => {\n if (props.hasAccount) {\n return `${N20} !important;`;\n }\n return `${N0};`;\n }};\n border-color: ${(props) => {\n if (props.isEmpty || props.hasAccount || props.isDisabled) {\n if (props.outlineOnFocus && props.isFocused) {\n return `${B100} !important`; // blue\n }\n return `${N60} !important`; // dark-grey\n }\n if (props.isValidating) {\n return `${B100} !important`; // blue\n }\n if (props.isValid) {\n return `${G300} !important`; // green\n }\n return `${R400} !important`; // red\n }};\n }\n > input {\n background: ${(props) => {\n if (props.hasAccount) {\n return '#F4F5F7';\n }\n return '#FFFFFF';\n }};\n }\n`;\n\nconst ChooseSignupSuccessTextfieldWrapper = styled.div`\n .errorMessage {\n background-color: white !important;\n }\n #site-field {\n padding-right: 0px;\n }\n > div {\n transition: all 0.1s linear 0s;\n max-height: 40px;\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n background: ${N0};\n background: ${(props) => {\n if (props.hasAccount) {\n return `${N20} !important;`;\n }\n return `${N0};`;\n }};\n border-color: ${(props) => {\n if (props.isValid) {\n return `${G300} !important`; // green\n }\n if (props.isFocused || props.hasAccount || props.isDisabled) {\n if (props.outlineOnFocus) {\n return `${B100} !important`; // blue\n }\n return `${N60} !important`; // dark-grey\n }\n return `${R400} !important`; // red\n }};\n }\n > input {\n background: ${(props) => {\n if (props.hasAccount) {\n return '#F4F5F7';\n }\n return '#FFFFFF';\n }};\n }\n`;\n\nconst ErrorTextfieldWrapper = styled.div`\n > div {\n border-color: ${R400}!important;\n }\n`;\n\nconst CompoundField = styled.div`\n transition: all 0.1s linear 0s;\n display: grid;\n grid-template-columns: max-content 1fr;\n margin-bottom: 5px;\n border-radius: 3px 0 0 3px;\n opacity: ${(props) => {\n if (props.isDisabled && props.fadeOnDisable) {\n return 0.4;\n }\n return 1;\n }};\n > div {\n > div {\n transition: all 0.1s linear 0s;\n border-right: none;\n border-radius: 3px 0 0 3px;\n background: ${N0} !important;\n border-color: ${(props) => {\n if (props.isEmpty || props.isDisabled) {\n if (props.outlineOnFocus && props.isFocused) {\n return `${B100} !important`;\n }\n return `${N60} !important`;\n }\n if (props.isValid) {\n return `${G300} !important`;\n }\n return `${R400}`;\n }};\n }\n }\n\n > label {\n > span {\n margin: 0;\n }\n }\n\n .domain-name-tooltip-trigger {\n border-color: ${B400};\n border-right: 1px solid;\n border-radius: 3px;\n }\n .domain-name-tooltip-trigger-devops {\n background: ${N0};\n border-color: ${N0};\n box-shadow: 0px 3px 5px rgba(9, 30, 66, 0.2),\n 0px 0px 1px rgba(9, 30, 66, 0.31);\n border-radius: 3px;\n }\n`;\n\nexport const PasswordCompoundField = styled(CompoundField)`\n display: flex;\n .full-width {\n width: 100%;\n }\n`;\n\nconst CompoundInput = styled(Input)`\n @supports (display: grid) {\n border-radius: 4px 0 0 4px;\n border-right: none;\n margin: 0;\n min-height: 40px;\n padding-right: 0;\n }\n`;\n\nconst CompoundInputSegment = styled.div`\n @supports (display: grid) {\n transition: all 0.1s linear 0s;\n border: 2px solid ${N60};\n border-radius: 0 4px 4px 0;\n border-color: ${(props) => {\n if (props.isEmpty || props.isDisabled) {\n if (props.outlineOnFocus && props.isFocused) {\n return `${B100} !important`;\n }\n return `${N60} !important`;\n }\n if (props.isValid) {\n return `${G300} !important`;\n }\n return `${R400} !important`;\n }};\n border-left: none;\n display: flex;\n align-items: center;\n height: 100%;\n padding: 4px 8px;\n &.field-error {\n border-color: ${R400};\n }\n }\n`;\n\nconst ErrorMessage = styled.div`\n color: ${R400};\n font-weight: 400;\n margin: 6px 0;\n font-size: 12px;\n line-height: 12px;\n\n a {\n text-decoration: none;\n color: ${B400};\n\n &:hover {\n text-decoration: underline;\n color: ${B300};\n }\n }\n\n ${(props) =>\n props.popOverError &&\n `\n position: absolute;\n display: ${props.isDisabled && props.fadeOnDisable ? 'none' : 'grid'};\n justify-items: center;\n align-items: start;\n width: 100%;\n margin: 0;\n z-index: 9;\n color: ${N900};\n background: transparent !important;\n\n span {\n padding: 7px;\n background: white;\n box-shadow: 0px 0px 1px rgba(9, 30, 66, 0.31), 0px 3px 5px rgba(9, 30, 66, 0.2);\n border-radius: 3px;\n margin-top: 2px;\n max-width: 90%;\n line-height: 1.2em;\n }\n `}\n`;\n\nfunction ErrorMessageWithDefaultClassName({\n className,\n ...props\n}: SharedProps) {\n return (\n \n {props.children}\n \n );\n}\n\nexport const RadioGroupWrapper = styled.div`\n line-height: 1;\n margin-bottom: 12px;\n\n svg {\n margin: 0;\n }\n`;\n\nexport const RadioGroupSpacedWrapper = styled.div`\n line-height: 1;\n margin-top: 12px;\n margin-bottom: 12px;\n\n svg {\n margin: 0;\n }\n`;\n\nexport const RadioWrapper = styled.div`\n display: flex;\n & label {\n flex-direction: row;\n align-items: center;\n }\n`;\n\nconst InfoMessage = styled.div`\n color: ${N700};\n font-size: 0.875rem;\n font-weight: 400;\n margin-top: 6px;\n`;\n\nconst Cursor = styled.div`\n cursor: ${(props) =>\n props.isDisabled && props.fadeOnDisable ? 'not-allowed' : 'pointer'};\n display: flex;\n align-items: center;\n margin-top: 0;\n @supports (display: grid) {\n display: flex;\n align-items: center;\n }\n`;\n\nconst SvgContainer = styled.div`\n svg {\n display: block;\n margin-bottom: 0;\n }\n`;\n\nconst AttentionContainer = styled.div`\n width: 0;\n height: 0;\n left: -29px;\n position: relative;\n top: 6px;\n svg {\n display: block;\n margin-bottom: 0;\n }\n`;\n\nconst Domain = styled.div`\n color: ${N80};\n font-family: ${display};\n font-size: 1rem;\n letter-spacing: 1px;\n`;\n\nconst ToolTipContainer = styled.div`\n position: relative;\n display: none;\n @supports (display: grid) {\n display: block;\n }\n`;\n\nconst ToolTipText = styled.div`\n background: ${N0};\n border: 1px solid ${B400};\n border-radius: 2px;\n box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);\n color: ${N800};\n font-family: ${text};\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.42857143;\n padding: 12px;\n position: absolute;\n left: 6px;\n top: 25px;\n width: 298px;\n`;\n\nconst DomainToolTip = styled.div`\n cursor: pointer;\n margin: 0 6px;\n svg {\n height: 18px;\n width: 18px;\n }\n`;\n\nconst AppRegionContainer = styled.div`\n color: ${N700};\n display: grid;\n grid-template-columns: min-content min-content;\n grid-column-gap: 16px;\n margin-bottom: 24px;\n div {\n display: grid;\n grid-template-columns: min-content min-content;\n grid-column-gap: 8px;\n }\n`;\n\nconst CheckboxContainer = styled.div`\n color: ${N700};\n display: grid;\n grid-template-columns: min-content 1fr;\n grid-column-gap: 8px;\n font-size: 0.875rem;\n margin-bottom: 16px;\n &.hidden {\n grid-template-columns: 1fr;\n .checkbox {\n display: none;\n }\n }\n .full-width {\n grid-column: 1 / 3;\n }\n p {\n font-size: 0.875rem;\n line-height: 1.25;\n margin: 0;\n }\n`;\n\nconst SmallPrint = styled.div`\n color: ${N500};\n font-size: 0.75rem;\n margin-bottom: 16px;\n &.compact {\n margin-bottom: 4px;\n }\n p {\n font-size: 0.75rem;\n line-height: 1.25;\n margin: 0;\n }\n`;\nconst ButtonSpinner = styled.div`\n display: inline-block;\n margin-right: 12px;\n margin-left: -28px;\n`;\n\nconst Button = styled.button`\n border: none;\n border-radius: 3px;\n background-color: ${B400};\n color: ${N0};\n cursor: pointer;\n font-size: 1rem;\n font-weight: 500;\n font-family: ${text};\n min-height: 40px;\n width: 100%;\n &:hover {\n background: ${B300};\n }\n &:active {\n background-color: #0047b3;\n }\n &[disabled] {\n cursor: not-allowed;\n background-color: #0047b3;\n }\n`;\n\nconst CapsPrint = styled.div`\n color: ${N500};\n font-size: 0.875rem;\n margin-bottom: 16px;\n margin-top: 8px;\n text-align: center;\n text-transform: uppercase;\n @media (min-width: 540px) {\n margin-top: 16px;\n }\n`;\n\nconst CaptchaContainer = styled.div`\n margin-bottom: 16px;\n`;\n\ninterface WelcomDivProps {\n readonly headerStyle?: boolean;\n}\n\nconst WelcomeDiv = styled.div`\n font-size: 1.25rem;\n line-height: 1.2;\n margin-bottom: 30px;\n letter-spacing: 0.3px;\n font-family: ${display};\n font-style: normal;\n -webkit-font-smoothing: antialiased;\n font-weight: 500;\n\n ${(props) =>\n props.headerStyle &&\n `\n color: ${N600};\n text-align: center;\n font-size: 32px;\n line-height: 40px;\n\n @media only screen and (max-width: 769px) {\n font-size: 28px;\n text-align: left;\n }\n `}\n`;\n\nexport const WelcomeDivDevops = styled.div`\n max-width: 300px;\n margin: 0 auto;\n text-align: center;\n`;\n\nexport const StyledInfoBoxWrapper = styled.div`\n margin: 12px auto 26px;\n`;\n\nconst InfoBoxContainer = styled.div`\n display: flex;\n flex-direction: row;\n justify-content: space-between;\n background-color: ${B50};\n padding: 12px 16px;\n border-radius: 3px;\n margin-bottom: 12px;\n`;\n\ninterface InfoBoxContentProps {\n readonly fontSize?: string;\n}\n\nconst InfoBoxContent = styled.div`\n width: 93%;\n\n .title {\n font-weight: 500;\n }\n\n p {\n font-size: ${({ fontSize }) => {\n if (fontSize) {\n return fontSize;\n } else {\n return '12px';\n }\n }};\n font-weight: 400;\n line-height: 17px;\n margin: 0 0 12px 0;\n color: ${text};\n\n a {\n color: ${B400};\n text-decoration: none;\n cursor: pointer;\n\n a:hover {\n color: ${linkHover};\n }\n }\n\n &.link {\n display: inline-block;\n color: ${B400};\n cursor: pointer;\n\n &:hover {\n color: ${linkHover};\n }\n }\n\n &:last-child {\n margin: 0;\n }\n }\n`;\n\nconst ModalContents = styled.div`\n position: relative;\n font-family: ${text};\n font-size: 14px;\n color: ${text};\n padding: 18px 0;\n\n .message {\n padding-right: 24px;\n line-height: 22px;\n }\n\n a {\n color: ${text};\n text-decoration: none;\n font-weight: 500;\n\n &:focus {\n outline: none;\n }\n }\n\n .exit {\n position: absolute;\n top: 8px;\n right: -12px;\n cursor: pointer;\n }\n`;\n\nconst ReCaptchaEula = styled.div`\n margin-top: 40px;\n font-size: 12px;\n color: ${N200};\n line-height: 16px;\n text-align: center;\n > * {\n margin-block-start: 0;\n > a {\n color: ${N200};\n text-decoration: underline;\n }\n }\n}\n`;\n\nconst ReCaptchaEulaDefaultExpandedEmail = styled.div`\n margin-top: 32px;\n margin-bottom: 8px;\n font-size: 12px;\n color: ${N200};\n line-height: 16px;\n text-align: center;\n font-weight: 400;\n > * {\n margin-block-start: 0;\n > a {\n color: ${N200};\n text-decoration: underline;\n }\n }\n}\n`;\n\nconst ReCaptchaEulaChooseSignup = styled.div`\n position: absolute;\n bottom: 60px;\n font-size: 12px;\n color: ${N800};\n line-height: 18px;\n text-align: center;\n font-weight: 400;\n width: 320px;\n font-family: Charlie Text;\n > * {\n margin-block-start: 0;\n > a {\n color: ${B400};\n text-decoration: underline;\n }\n }\n @media only screen and (max-width: 768px) {\n position: relative;\n }\n @media only screen and (max-height: 918px) {\n position: unset;\n }\n}\n`;\n\nconst Eula = styled.div`\n font-size: 12px;\n line-height: 16px;\n color: ${N200};\n vertical-align: middle;\n padding: 0 0 5px 0;\n font-family: ${text};\n font-weight: 400;\n\n a {\n color: ${B400};\n text-decoration: none;\n cursor: pointer;\n }\n\n p {\n font-size: 12px;\n line-height: 16px;\n margin-bottom: 24px;\n margin-top: 0;\n\n &.eula-compass {\n p {\n display: inline;\n }\n }\n }\n\n div {\n display: inline;\n }\n\n .tooltip {\n color: ${B400};\n cursor: pointer;\n }\n`;\n\nconst EulaDefaultExpandedEmail = styled.div`\n font-size: 12px;\n line-height: 16px;\n color: ${N200};\n vertical-align: middle;\n padding: 0;\n font-family: ${text};\n font-weight: 400;\n\n a {\n color: ${B400};\n text-decoration: none;\n cursor: pointer;\n }\n\n p {\n font-size: 12px;\n line-height: 16px;\n margin-bottom: 16px;\n margin-top: 0;\n\n &.eula-compass {\n p {\n display: inline;\n }\n }\n }\n\n div {\n display: inline;\n }\n\n .tooltip {\n color: ${B400};\n cursor: pointer;\n }\n`;\n\nconst EulaChooseSignup = styled.div`\n font-size: 12px;\n line-height: 18px;\n color: ${N400};\n vertical-align: middle;\n padding: 0;\n font-family: ${text};\n font-weight: 400;\n margin-bottom: 8px;\n margin-top: 40px;\n\n a {\n color: ${B400};\n text-decoration: none;\n cursor: pointer;\n }\n\n p {\n font-size: 12px;\n line-height: 18px;\n margin-bottom: 0px !important;\n\n &.eula-compass {\n p {\n display: inline;\n }\n }\n }\n\n div {\n display: inline;\n }\n\n .tooltip {\n color: ${B400};\n cursor: pointer;\n }\n`;\n\nexport const RequiredFieldMessage = styled.div`\n font-size: 12px;\n line-height: 16px;\n color: #6c798f;\n vertical-align: middle;\n padding: 0 0 5px 0;\n font-family: ${text};\n font-weight: 400;\n`;\n\nexport const UnderLabelMessage = styled.div`\n font-size: 12px;\n line-height: 16px;\n color: ${N800};\n vertical-align: middle;\n padding: 0 0 8px 0;\n font-family: ${text};\n font-weight: 400;\n`;\n\nconst TooltipDialog = styled(TooltipPrimitive)`\n font-family: ${text};\n box-sizing: content-box;\n border-radius: 4px;\n padding: 8px 12px;\n max-width: 330px;\n background: #0e0e0e;\n color: ${N0};\n font-size: 14px;\n font-weight: 500;\n\n p {\n margin: 0;\n }\n\n @media only screen and (max-width: 375px) {\n max-width: 300px;\n }\n`;\nconst SigninWithDiffAccount = styled.div`\n font-size: 12px;\n line-height: 16px;\n color: #6c798f;\n vertical-align: middle;\n padding: 5px 0;\n font-family: ${text};\n font-weight: 500;\n > * {\n > * {\n margin-block-start: 0;\n margin-bottom: 0px;\n > a {\n color: ${B400};\n text-decoration: none;\n }\n }\n }\n`;\n\nconst SitePickerToggle = styled.span`\n display: block;\n font-size: 12px;\n line-height: 16px;\n color: ${B400};\n vertical-align: middle;\n padding: 5px 0;\n margin: 0 0 0 0;\n font-family: ${text};\n font-weight: 500;\n cursor: pointer;\n`;\n\nconst NoCard = styled.div`\n margin-top: 15px;\n font-weight: 500;\n margin-bottom: 0;\n text-align: center;\n font-size: 0.875rem;\n letter-spacing: 1px;\n line-height: 1.25;\n font-family: ${display};\n font-style: normal;\n`;\n\nconst NoCardDefaultExpandedEmail = styled.div`\n margin-top: 32px;\n font-weight: 500;\n margin-bottom: 0;\n text-align: center;\n font-size: 0.875rem;\n letter-spacing: 1px;\n line-height: 1.25;\n font-family: ${display};\n font-style: normal;\n`;\n\nconst NoCardChooseSignup = styled.div`\n font-weight: 600;\n margin-bottom: 8px;\n text-align: center;\n font-size: 0.8rem;\n letter-spacing: 1px;\n line-height: 18px;\n font-family: ${display};\n font-style: normal;\n color: ${N90};\n`;\n\nconst MarketingConsent = styled.div`\n > label {\n > span {\n border: none !important;\n padding: 0 !important;\n border-radius: 3px;\n margin-bottom: 12px;\n line-height: 20px;\n font-size: 100%;\n vertical-align: baseline;\n font-family: ${display};\n font-style: normal;\n font-size: 13px;\n letter-spacing: 0.3px;\n }\n }\n`;\n\nconst DeveloperModeDiv = styled.div`\n font-family: ${display};\n font-style: normal;\n border: 1px solid ${N60};\n color: #6c798f;\n border-radius: 6px;\n margin: 20px 0;\n padding: 16px 30px 16px 38px;\n font-size: 14px;\n position: relative;\n h4 {\n font-style: inherit;\n font-family: inherit;\n color: #6c798f;\n font-size: 14px;\n line-height: 20px;\n font-weight: 500;\n }\n p {\n color: inherit;\n font-size: inherit;\n line-height: 20px;\n font-weight: normal;\n font-family: inherit;\n font-style: inherit;\n margin-bottom: 0;\n }\n ul {\n list-style-type: disc;\n margin-bottom: 8px;\n padding-left: 20px;\n }\n`;\nconst MigrationSourceDiv = styled.div`\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n vertical-align: baseline;\n font-family: ${text}\n font-style: normal;\n span {\n > div {\n font-size: 1.25rem;\n line-height: 1.2;\n margin-bottom: 24px;\n font-weight: 500;\n font-family: inherit;\n font-style: inherit;\n }\n > p {\n font-size: 1rem;\n line-height: 24px;\n margin-bottom: 24px;\n font-family: inherit;\n font-style: inherit;\n font-weight: normal;\n > a {\n color: ${B400};\n text-decoration: none;\n vertical-align: baseline;\n font-family: inherit;\n font-style: inherit;\n font-weight: inherit;\n }\n }\n }\n`;\n\nconst SitePickerTextfieldWrapper = styled.div`\n > div {\n max-height: 40px;\n background: ${N20} !important;\n border-color: ${N60} !important;\n }\n\n svg {\n margin-bottom: 0;\n }\n`;\n\nconst BitbucketAccountCheckbox = styled.div`\n font-size: 12px;\n font-weight: 400;\n color: ${text};\n max-width: 390px;\n margin-top: 4px;\n`;\n\nconst RadioLabel = styled.div`\n display: flex;\n font-weight: 400;\n font-size: 14px;\n line-height: 18px;\n flex-direction: column;\n color: ${N900};\n font-family: ${text}\n font-style: normal;\n`;\n\nconst DevopsCarouselRadioGroup = styled.div`\n margin-top: 27px;\n label {\n margin-bottom: 15px;\n font-size: 14px;\n line-height: 24px;\n color: ${N800};\n font-family: ${text}\n font-style: normal;\n }\n`;\nconst DevopsCarouselWorkspaces = styled.div`\n width: 204px;\n`;\nconst DevopsCarouselSites = styled.div`\n width: 204px;\n`;\n\nconst BitbucketFieldsContainer = styled.div`\n margin: 24px 0px;\n`;\n\nconst OrgPickerElementMargin = styled.div`\n margin-top: 24px;\n`;\n\nconst OrganizationDropdownContainer = styled.div`\n height: 32px;\n border-radius: 3px;\n color: ${N800};\n\n button {\n background-color: ${N20};\n &:hover {\n cursor: pointer;\n }\n }\n`;\n\nconst OrganizationDropdownTextContainer = styled.div`\n font-size: 14px;\n line-height: 20px;\n font-weight: 500;\n`;\n\nconst OrganizationDropdownItemContainer = styled.div`\n font-size: 14px;\n height: 34px;\n line-height: 18px;\n color: #172b4d;\n font-weight: 400;\n padding: 8px 4px;\n`;\n\nconst FieldLabel = styled.div`\n margin-bottom: 5px;\n\n font-family: ${text};\n font-size: 14px;\n font-weight: 500;\n line-height: normal;\n letter-spacing: 0px;\n text-align: left;\n color: ${N500};\n`;\n\nconst WorkspaceIdPrefix = styled.div`\n height: 40px;\n background-color: ${N20};\n border-right: 2px solid ${N40};\n padding: 8px;\n\n font-family: ${text};\n font-weight: 400;\n line-height: 24px;\n color: ${N100};\n`;\n\nconst TextFieldWrapper = styled.div<{ error?: Boolean }>`\n > div {\n border-color: ${(props) => (props.error ? R400 : N40)};\n }\n\n input {\n margin-top: 0px;\n background-color: ${N10};\n color: ${N100};\n }\n`;\n\nconst HelperMessageContainer = styled.div`\n font-family: ${text};\n font-size: 12px;\n font-weight: 400;\n line-height: 16px;\n color: ${N200};\n`;\n\nconst OrgProvisioningProgressContainer = styled.div`\n font-family: 'Charlie Display';\n font-weight: 400;\n font-size: 14px;\n line-height: 20px;\n margin: 24px auto;\n text-align: center;\n max-width: 253px;\n height: 40px;\n`;\n\nconst CCPSiteMigrationContainer = styled.div`\n p,\n li {\n font-family: ${text};\n font-weight: 400;\n font-size: 11px;\n }\n\n ul {\n list-style-type: none;\n padding: 0;\n margin: 0;\n }\n`;\n\nexport {\n text,\n display,\n product,\n WacSignupFormContainer,\n StyledPassword,\n FieldContainer,\n FieldErrorState,\n FullNameFieldWrapper,\n TwoColumnFieldGroup,\n NameFieldGroup,\n Input,\n Label,\n LabelDefaultExpandedEmail,\n ChooseSignupLabel,\n InputDescription,\n DropdownTrigger,\n DropdownButtonStyle,\n JswTrialNotice,\n DropdownButtonStyleOpen,\n SiteNameAfter,\n SiteNameAfterRadioList,\n SiteNameAfterLabel,\n EmailAfter,\n SuccessTextfieldWrapper,\n ChooseSignupSuccessTextfieldWrapper,\n ErrorTextfieldWrapper,\n CompoundField,\n CompoundInput,\n CompoundInputSegment,\n ErrorMessage,\n ErrorMessageWithDefaultClassName,\n InfoMessage,\n Cursor,\n SvgContainer,\n AttentionContainer,\n Domain,\n ToolTipContainer,\n ToolTipText,\n DomainToolTip,\n AppRegionContainer,\n CheckboxContainer,\n SmallPrint,\n ButtonSpinner,\n Button,\n CapsPrint,\n CaptchaContainer,\n WelcomeDiv,\n InfoBoxContainer,\n InfoBoxContent,\n ModalContents,\n ReCaptchaEula,\n ReCaptchaEulaDefaultExpandedEmail,\n ReCaptchaEulaChooseSignup,\n Eula,\n EulaDefaultExpandedEmail,\n EulaChooseSignup,\n SigninWithDiffAccount,\n SitePickerToggle,\n NoCard,\n NoCardDefaultExpandedEmail,\n NoCardChooseSignup,\n MarketingConsent,\n DeveloperModeDiv,\n MigrationSourceDiv,\n SitePickerTextfieldWrapper,\n BitbucketAccountCheckbox,\n RadioLabel,\n ResendEmailContainer,\n DevopsCarouselRadioGroup,\n DevopsCarouselWorkspaces,\n DevopsCarouselSites,\n TooltipDialog,\n InputSiteNameMessage,\n InputSiteNameInstructions,\n WorkspaceIdPrefix,\n BitbucketFieldsContainer,\n OrgPickerElementMargin,\n OrganizationDropdownContainer,\n OrganizationDropdownTextContainer,\n OrganizationDropdownItemContainer,\n OrganizationDropdownButtonStyle,\n OrganizationDropdownButtonStyleOpen,\n FieldLabel,\n TextFieldWrapper,\n HelperMessageContainer,\n OrgProvisioningProgressContainer,\n CCPSiteMigrationContainer\n};\n","import { N700, N900 } from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\n\nexport const FormHeaderRoot = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: flex-start;\n`;\n\ninterface FormHeaderHeadingProps {\n isGreeting: boolean;\n}\n\nexport const FormHeaderHeading = styled.p`\n font-size: ${(props) => (props.isGreeting ? '24px' : '36px')};\n line-height: 40px;\n font-family: 'Charlie Display';\n margin: 0;\n margin-bottom: 0;\n font-weight: 500;\n word-break: break-all;\n`;\n\nexport const ChooseSignupFormHeaderHeading = styled.h2`\n font-size: 36px;\n line-height: 44px;\n font-family: 'Charlie Display';\n margin: 0;\n margin-bottom: 13px;\n font-weight: 500;\n word-break: break-all;\n color: ${N700};\n`;\n\nexport const FormHeaderSubheading = styled.p`\n font-size: 16px;\n line-height: 24px;\n letter-spacing: 0.03em;\n font-family: 'Charlie Display';\n margin: 0;\n text-align: center;\n`;\n\nexport const ChooseSignupFormHeaderSubheading = styled.p`\n font-size: 16px;\n line-height: 24px;\n font-weight: 400;\n letter-spacing: 0.03em;\n font-family: 'Charlie Display';\n color: ${N900};\n margin-top: 0;\n margin-bottom: 40px;\n`;\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../messages';\nimport type { UserDataType } from '../../../../model';\nimport { NoCardChooseSignup } from '../sign-up-form/components/styled';\nimport {\n ChooseSignupFormHeaderHeading,\n ChooseSignupFormHeaderSubheading,\n FormHeaderHeading,\n FormHeaderRoot,\n FormHeaderSubheading\n} from './styled';\nimport { useExperiment } from '@atlassiansox/bxp-web-statsig-client';\nimport { ProductKeysType, Url } from '@atlassiansox/bxpkit-core';\n\nexport interface SignUpFormHeaderProps {\n heading: FormattedMessage.MessageDescriptor;\n subheading: FormattedMessage.MessageDescriptor;\n userInfo: UserDataType;\n allowSignupWithAllSocialOptions?: boolean;\n products?: ProductKeysType[];\n}\n\nfunction SignUpFormHeader({\n heading,\n subheading,\n userInfo,\n allowSignupWithAllSocialOptions,\n products\n}: SignUpFormHeaderProps) {\n const shouldShowGreeting = userInfo?.isLoggedIn;\n const shouldShowSubheading =\n Boolean(subheading.defaultMessage) && !userInfo?.isLoggedIn;\n const experiment = useExperiment('frontend_site_name_additional_copy');\n const { site_name_additional_copy, site_name_generation } = experiment.value;\n const isNewUser = userInfo?.isNewUser;\n const isPaid = !Url.getUrl()?.includes('/try/cloud/signup');\n const isJiraOrConfluenceFree =\n (products ?? []).filter(\n (item) =>\n (item.product.includes('jira-software') ||\n item.product.includes('confluence')) &&\n item.edition === 'free'\n ).length === 1;\n\n const isConfluence =\n (products ?? []).filter((item) => item.product.includes('confluence'))\n .length > 0;\n\n const isNewUserInSiteNameExperiment =\n (site_name_additional_copy || site_name_generation) &&\n isNewUser &&\n isJiraOrConfluenceFree &&\n !isPaid;\n const greeting = isNewUserInSiteNameExperiment\n ? messages.personalizedNameSiteMessage\n : messages.greeting;\n\n if (allowSignupWithAllSocialOptions && !isConfluence) {\n return (\n \n \n \n \n \n \n \n \n );\n }\n\n return (\n \n {isConfluence && !shouldShowGreeting ? (\n \n \n \n ) : (\n \n {shouldShowGreeting ? (\n \n ) : (\n \n )}\n \n )}\n {isConfluence && !shouldShowGreeting && (\n \n \n \n )}\n {shouldShowSubheading &&\n (!isConfluence ? (\n \n \n \n ) : (\n \n \n \n ))}\n \n );\n}\n\nexport default SignUpFormHeader;\n","import { defineMessages } from 'react-intl';\n\nconst ID_PREFIX = 'WacSignupForm.';\n\nexport const messages = defineMessages({\n heading: {\n id: `${ID_PREFIX}signupOfferingIncludesFeaturesSignupFormHeading`,\n defaultMessage: 'Start now'\n },\n subheading: {\n id: `${ID_PREFIX}signupOfferingIncludesFeaturesSignupFormSubheading`,\n defaultMessage: ''\n },\n greeting: {\n id: `${ID_PREFIX}signupFormPersonalizedGreeting`,\n defaultMessage: 'Welcome back, {username}'\n }\n});\n","import { useMemo } from 'react';\nimport {\n getEditionLabelFragment,\n getProductLabelFragment\n} from '../utility/sign-up-form-header';\nimport { ProductKeysType } from '../../../../model';\nimport { messages } from './messages';\n\nexport interface UseFormHeaderLabelsParams {\n edition: string;\n labels: {\n [key: string]: string;\n };\n productKeys: ProductKeysType[];\n skip?: boolean;\n useBundleHeaderOverride?: boolean;\n}\n\nexport const useFormHeaderLabels = ({\n labels,\n edition,\n productKeys,\n skip,\n useBundleHeaderOverride\n}: UseFormHeaderLabelsParams) => {\n const { heading, subheading } = useMemo(() => {\n if (skip) {\n return {\n heading: messages.heading,\n subheading: messages.subheading\n };\n }\n const editionLabelFragment = getEditionLabelFragment(edition);\n const productLabelFragment = getProductLabelFragment(productKeys);\n const bundleHeaderOverrideOrEmpty = useBundleHeaderOverride\n ? 'BundlesLayout'\n : '';\n\n const headingLabel = `${messages.heading.id}${editionLabelFragment}${productLabelFragment}${bundleHeaderOverrideOrEmpty}`;\n const subheadingLabel = `${messages.subheading.id}${editionLabelFragment}${productLabelFragment}${bundleHeaderOverrideOrEmpty}`;\n return {\n heading: {\n id: headingLabel,\n defaultMessage: labels[headingLabel] || messages.heading.defaultMessage\n },\n subheading: {\n id: subheadingLabel,\n defaultMessage:\n labels[subheadingLabel] || messages.subheading.defaultMessage\n }\n };\n }, []);\n\n return { heading, subheading };\n};\n","export const getEditionLabelFragment = (edition: string) => {\n const matcher: Array<[RegExp, string]> = [\n [/free/gi, 'Free'],\n [/standard/gi, 'Standard'],\n [/premium/gi, 'Standard'],\n [/.*/, 'Free']\n ];\n\n const [, label] = matcher.find(([regex]) => regex.test(edition)) || [];\n return label;\n};\n","import { ProductKeysType } from '../../../../../model';\nimport { ProductKey } from '@atlassiansox/bxpkit-core';\n\nexport const getProductLabelFragment = (productKeys: ProductKeysType[]) => {\n const [{ product: productKey }] = productKeys;\n switch (productKey) {\n case ProductKey.JIRA_SERVICE_DESK:\n case ProductKey.JIRA_SERVICE_MANAGEMENT:\n return 'JSD';\n case ProductKey.JIRA_PRODUCT_DISCOVERY:\n return 'JiraProductDiscovery';\n case ProductKey.COMPASS:\n return 'Compass';\n case ProductKey.TEAM_CENTRAL:\n return 'Atlas';\n case ProductKey.FABRIC:\n return 'Fabric';\n case ProductKey.BEACON:\n return 'Beacon';\n case ProductKey.CONFLUENCE:\n return 'Confluence';\n default:\n return '';\n }\n};\n","import { AnyAction } from '@reduxjs/toolkit';\nimport { AppDispatch, RootState } from '../';\nimport { N2NFieldsType } from '../../layouts/devops-screen/types';\n\ntype N2NFieldProgressActionType = {\n readonly type: string;\n readonly payload?: {\n readonly fieldName: 'email' | 'password' | 'fullName' | 'sitenameNew';\n readonly isPopulated: boolean;\n };\n};\n\n// Actions\nconst INPUT_POPULATED_EMAIL = 'n2n-field-progress/INPUT_POPULATED_EMAIL';\nconst INPUT_POPULATED_PASSWORD = 'n2n-field-progress/INPUT_POPULATED_PASSWORD';\nconst INPUT_POPULATED_FULL_NAME =\n 'n2n-field-progress/INPUT_POPULATED_FULL_NAME';\n\n// Initial State\nconst initialState: N2NFieldsType = {\n email: false,\n password: false,\n fullName: false,\n sitenameNew: false\n};\n\n// Reducer\nexport const n2nFieldProgressReducer = (\n state = initialState,\n action: N2NFieldProgressActionType\n): N2NFieldsType => {\n switch (action.type) {\n case INPUT_POPULATED_EMAIL:\n case INPUT_POPULATED_PASSWORD:\n case INPUT_POPULATED_FULL_NAME:\n return Object.assign({}, state, {\n [action?.payload?.fieldName as string]: action?.payload?.isPopulated\n });\n default:\n return state;\n }\n};\n\n// Thunks\nexport function updateN2NFieldProgressEmail(payload: boolean) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldProgress: { email }\n } = getState();\n if (email !== payload) {\n dispatch({\n type: INPUT_POPULATED_EMAIL,\n payload: {\n fieldName: 'email',\n isPopulated: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n\nexport function updateN2NFieldProgressPassword(payload: boolean) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldProgress: { password }\n } = getState();\n if (password !== payload) {\n dispatch({\n type: INPUT_POPULATED_PASSWORD,\n payload: {\n fieldName: 'password',\n isPopulated: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n\nexport function updateN2NFieldProgressFullName(payload: boolean) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldProgress: { fullName }\n } = getState();\n if (fullName !== payload) {\n dispatch({\n type: INPUT_POPULATED_FULL_NAME,\n payload: {\n fieldName: 'fullName',\n isPopulated: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n","import { AnyAction } from '@reduxjs/toolkit';\nimport { AppDispatch, RootState } from '../';\nimport { ValidationStateType } from '../../layouts/devops-screen/types';\n\ntype N2NFieldValidationType = {\n readonly email?: ValidationStateType;\n readonly password?: ValidationStateType;\n readonly fullName?: ValidationStateType;\n readonly sitenameNew?: ValidationStateType;\n};\n\ntype N2NFieldValidationActionType = {\n readonly type: string;\n readonly payload?: {\n readonly fieldName: 'email' | 'password' | 'fullName' | 'sitenameNew';\n readonly validationState?: ValidationStateType;\n };\n};\n\n// Actions\nconst INPUT_VALIDATION_EMAIL = 'n2n-field-validation/INPUT_VALIDATION_EMAIL';\nconst INPUT_VALIDATION_PASSWORD =\n 'n2n-field-validation/INPUT_VALIDATION_PASSWORD';\nconst INPUT_VALIDATION_FULL_NAME =\n 'n2n-field-validation/INPUT_VALIDATION_FULL_NAME';\nconst INPUT_VALIDATION_SITENAME =\n 'n2n-field-validation/INPUT_VALIDATION_SITENAME';\n\n// Initial State\nconst initialState: N2NFieldValidationType = {\n email: undefined,\n password: undefined,\n fullName: undefined,\n sitenameNew: undefined\n};\n\n// Reducer\nexport const n2nFieldValidationReducer = (\n state = initialState,\n action: N2NFieldValidationActionType\n): N2NFieldValidationType => {\n switch (action.type) {\n case INPUT_VALIDATION_EMAIL:\n case INPUT_VALIDATION_PASSWORD:\n case INPUT_VALIDATION_FULL_NAME:\n case INPUT_VALIDATION_SITENAME:\n return Object.assign({}, state, {\n [action?.payload?.fieldName as string]: action?.payload?.validationState\n });\n default:\n return state;\n }\n};\n\n// Thunks\nexport function updateN2NFieldValidationEmail(payload: ValidationStateType) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldValidation: { email }\n } = getState();\n if (email !== payload) {\n dispatch({\n type: INPUT_VALIDATION_EMAIL,\n payload: {\n fieldName: 'email',\n validationState: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n\nexport function updateN2NFieldValidationPassword(payload: ValidationStateType) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldValidation: { password }\n } = getState();\n if (password !== payload) {\n dispatch({\n type: INPUT_VALIDATION_PASSWORD,\n payload: {\n fieldName: 'password',\n validationState: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n\nexport function updateN2NFieldValidationFullName(payload: ValidationStateType) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldValidation: { fullName }\n } = getState();\n if (fullName !== payload) {\n dispatch({\n type: INPUT_VALIDATION_FULL_NAME,\n payload: {\n fieldName: 'fullName',\n validationState: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n\nexport function updateN2NFieldValidationSitename(payload: ValidationStateType) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldValidation: { sitenameNew }\n } = getState();\n if (sitenameNew !== payload) {\n dispatch({\n type: INPUT_VALIDATION_SITENAME,\n payload: {\n fieldName: 'sitenameNew',\n validationState: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n","type LoggedInFormValidType = {\n readonly isValid: boolean;\n};\ntype LoggedInFormValidActionType = {\n readonly type: string;\n readonly payload?: LoggedInFormValidType;\n};\n\n// Actions\nconst SET_FORM_VALID = 'logged-in-form-valid/SET_FORM_VALID';\n\n// Initial State\nconst initialState: LoggedInFormValidType = {\n isValid: false\n};\n\n// Reducer\nexport const loggedInFormValidReducer = (\n state = initialState,\n action: LoggedInFormValidActionType\n): LoggedInFormValidType => {\n switch (action.type) {\n case SET_FORM_VALID:\n return Object.assign({}, state, { isValid: action.payload?.isValid });\n default:\n return state;\n }\n};\n\n// Action Creators\nexport function updateLoggedInFormValid(\n isValid: boolean\n): LoggedInFormValidActionType {\n return {\n type: SET_FORM_VALID,\n payload: {\n isValid\n }\n };\n}\n","import { ProductKey } from '@atlassiansox/bxpkit-core';\nimport { ProductPayloadType } from '../../layouts/devops-screen/types';\n\ntype LoggedInFormDataConsentType = {\n readonly marketingConsent?: boolean;\n};\n\ntype LoggedInFormDataProductType = {\n readonly cloudName?: string;\n readonly productsNew?: ProductPayloadType[];\n readonly productsExisting?: ProductKey[];\n readonly bbWorkspaceName?: string;\n};\n\ntype SubmitType =\n | undefined\n | 'shouldSubmit'\n | 'submitting'\n | 'success'\n | 'failure';\n\ntype LoggedInFormDataSubmitType = {\n readonly submitStatus: SubmitType;\n};\n\ntype LoggedInFormDataFreeBreachType = {\n readonly isSiteInFreeBreach: boolean;\n};\n\nexport type LoggedInFormDataType = LoggedInFormDataConsentType &\n LoggedInFormDataProductType &\n LoggedInFormDataSubmitType &\n LoggedInFormDataFreeBreachType;\n\ntype LoggedInFormDataActionType = {\n readonly type: string;\n readonly payload?: Partial | LoggedInFormDataType;\n};\n\n// Actions\nconst UPDATE_PRODUCTS = 'logged-in-form-data/UPDATE_PRODUCTS';\nconst UPDATE_CONSENT = 'logged-in-form-data/UPDATE_CONSENT';\nconst UPDATE_SUBMIT = 'logged-in-form-data/UPDATE_SUBMIT';\nconst UPDATE_FREE_BREACH = 'logged-in-form-data/UPDATE_FREE_BREACH';\n\n// Initial State\nconst initialState: LoggedInFormDataType = {\n cloudName: undefined,\n productsNew: undefined,\n productsExisting: undefined,\n marketingConsent: undefined,\n bbWorkspaceName: undefined,\n isSiteInFreeBreach: false,\n submitStatus: undefined\n};\n\n// Reducer\nexport const loggedInFormDataReducer = (\n state = initialState,\n action: LoggedInFormDataActionType\n): LoggedInFormDataType => {\n switch (action.type) {\n case UPDATE_PRODUCTS:\n return Object.assign({}, state, action.payload);\n case UPDATE_CONSENT:\n return {\n ...state,\n marketingConsent: action.payload?.marketingConsent\n };\n case UPDATE_SUBMIT:\n return {\n ...state,\n submitStatus: action.payload?.submitStatus\n };\n case UPDATE_FREE_BREACH:\n return {\n ...state,\n isSiteInFreeBreach: action.payload?.isSiteInFreeBreach || false\n };\n default:\n return state;\n }\n};\n\n// Action Creators\nexport function updateLoggedInFormDataProducts(\n payload: LoggedInFormDataProductType\n): LoggedInFormDataActionType {\n return {\n type: UPDATE_PRODUCTS,\n payload\n };\n}\n\nexport function updateLoggedInFormDataConsent(\n payload: LoggedInFormDataConsentType\n): LoggedInFormDataActionType {\n return {\n type: UPDATE_CONSENT,\n payload\n };\n}\n\nexport function updateLoggedInFormDataSubmitStatus(\n submitStatus: SubmitType\n): LoggedInFormDataActionType {\n return {\n type: UPDATE_SUBMIT,\n payload: {\n submitStatus\n }\n };\n}\n\nexport function updateLoggedInFormDataFreeBreach(\n isSiteInFreeBreach: boolean\n): LoggedInFormDataActionType {\n return {\n type: UPDATE_FREE_BREACH,\n payload: {\n isSiteInFreeBreach\n }\n };\n}\n","import { SanitizedFormattedHtmlMessageProps } from '@atlassiansox/bxpkit-core';\n\ntype SharedFormDataType = {\n readonly goToProductUrl: string;\n readonly submitErrorMessage?: SanitizedFormattedHtmlMessageProps;\n readonly resendEmailAddress: string;\n};\n\ntype SharedFormDataActionType = {\n readonly type: string;\n readonly payload?: Partial | SharedFormDataType;\n};\n\n// Actions\nconst UPDATE_GOTO_PRODUCT_URL = 'shared-form-data/UPDATE_GOTO_PRODUCT_URL';\nconst UPDATE_SUBMIT_ERROR_MESSAGE =\n 'shared-form-data/UPDATE_SUBMIT_ERROR_MESSAGE';\nconst UPDATE_RESEND_EMAIL_ADDRESS =\n 'shared-form-data/UPDATE_RESEND_EMAIL_ADDRESS';\n// Initial State\nconst initialState: SharedFormDataType = {\n goToProductUrl: '',\n submitErrorMessage: undefined,\n resendEmailAddress: ''\n};\n\n// Reducer\nexport const sharedFormDataReducer = (\n state = initialState,\n action: SharedFormDataActionType\n): SharedFormDataType => {\n switch (action.type) {\n case UPDATE_GOTO_PRODUCT_URL:\n return {\n ...state,\n goToProductUrl: action.payload?.goToProductUrl || ''\n };\n case UPDATE_SUBMIT_ERROR_MESSAGE:\n return {\n ...state,\n submitErrorMessage: action.payload?.submitErrorMessage\n };\n case UPDATE_RESEND_EMAIL_ADDRESS:\n return {\n ...state,\n resendEmailAddress: action.payload?.resendEmailAddress || ''\n };\n default:\n return state;\n }\n};\n\n// Action Creators\nexport function updateSharedFormDataGoToProductUrl(\n goToProductUrl: string\n): SharedFormDataActionType {\n return {\n type: UPDATE_GOTO_PRODUCT_URL,\n payload: {\n goToProductUrl\n }\n };\n}\n\nexport function updateSharedFormDataResendEmailAddress(\n resendEmailAddress: string\n): SharedFormDataActionType {\n return {\n type: UPDATE_RESEND_EMAIL_ADDRESS,\n payload: {\n resendEmailAddress\n }\n };\n}\n\nexport function updateSharedFormDataSubmitErrorMessage(\n submitErrorMessage: undefined | SanitizedFormattedHtmlMessageProps\n): SharedFormDataActionType {\n return {\n type: UPDATE_SUBMIT_ERROR_MESSAGE,\n payload: {\n submitErrorMessage\n }\n };\n}\n","import { AnyAction } from '@reduxjs/toolkit';\nimport { AppDispatch, RootState } from '../';\nimport { ValidationStateType } from '../../layouts/devops-screen/types';\n\ntype N2NDeferredPasswordFieldValidationType = {\n readonly email?: ValidationStateType;\n readonly fullName?: ValidationStateType;\n};\n\ntype N2NDeferredPasswordFieldValidationActionType = {\n readonly type: string;\n readonly payload?: {\n readonly fieldName: 'email' | 'fullName';\n readonly validationState?: ValidationStateType;\n };\n};\n\n// Actions\nconst INPUT_VALIDATION_EMAIL = 'n2n-field-validation/INPUT_VALIDATION_EMAIL';\nconst INPUT_VALIDATION_FULL_NAME =\n 'n2n-field-validation/INPUT_VALIDATION_FULL_NAME';\n\n// Initial State\nconst initialState: N2NDeferredPasswordFieldValidationType = {\n email: undefined,\n fullName: undefined\n};\n\n// Reducer\nexport const n2nDeferredPasswordFieldValidationReducer = (\n state = initialState,\n action: N2NDeferredPasswordFieldValidationActionType\n): N2NDeferredPasswordFieldValidationType => {\n switch (action.type) {\n case INPUT_VALIDATION_EMAIL:\n case INPUT_VALIDATION_FULL_NAME:\n return Object.assign({}, state, {\n [action?.payload?.fieldName as string]: action?.payload?.validationState\n });\n default:\n return state;\n }\n};\n\n// Thunks\nexport function updateN2NDeferredPasswordFieldValidationEmail(\n payload: ValidationStateType\n) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldValidation: { email }\n } = getState();\n if (email !== payload) {\n dispatch({\n type: INPUT_VALIDATION_EMAIL,\n payload: {\n fieldName: 'email',\n validationState: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n\nexport function updateN2NDeferredPasswordFieldValidationFullName(\n payload: ValidationStateType\n) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldValidation: { fullName }\n } = getState();\n if (fullName !== payload) {\n dispatch({\n type: INPUT_VALIDATION_FULL_NAME,\n payload: {\n fieldName: 'fullName',\n validationState: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n","import { AnyAction } from '@reduxjs/toolkit';\nimport { AppDispatch, RootState } from '../';\nimport { N2NDeferredPasswordFieldsType } from '../../layouts/devops-screen/types';\n\ntype N2NDeferredPasswordFieldProgressActionType = {\n readonly type: string;\n readonly payload?: {\n readonly fieldName: 'email' | 'fullName';\n readonly isPopulated: boolean;\n };\n};\n\n// Actions\nconst INPUT_POPULATED_EMAIL = 'n2n-field-progress/INPUT_POPULATED_EMAIL';\nconst INPUT_POPULATED_FULL_NAME =\n 'n2n-field-progress/INPUT_POPULATED_FULL_NAME';\n\n// Initial State\nconst initialState: N2NDeferredPasswordFieldsType = {\n email: false,\n fullName: false\n};\n\n// Reducer\nexport const n2nDeferredPasswordFieldProgressReducer = (\n state = initialState,\n action: N2NDeferredPasswordFieldProgressActionType\n): N2NDeferredPasswordFieldsType => {\n switch (action.type) {\n case INPUT_POPULATED_EMAIL:\n case INPUT_POPULATED_FULL_NAME:\n return Object.assign({}, state, {\n [action?.payload?.fieldName as string]: action?.payload?.isPopulated\n });\n default:\n return state;\n }\n};\n\n// Thunks\nexport function updateN2NDeferredPasswordFieldProgressEmail(payload: boolean) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldProgress: { email }\n } = getState();\n if (email !== payload) {\n dispatch({\n type: INPUT_POPULATED_EMAIL,\n payload: {\n fieldName: 'email',\n isPopulated: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n\nexport function updateN2NDeferredPasswordFieldProgressFullName(\n payload: boolean\n) {\n return ((dispatch: AppDispatch, getState: () => RootState) => {\n const {\n n2nFieldProgress: { fullName }\n } = getState();\n if (fullName !== payload) {\n dispatch({\n type: INPUT_POPULATED_FULL_NAME,\n payload: {\n fieldName: 'fullName',\n isPopulated: payload\n }\n });\n }\n }) as unknown as AnyAction;\n}\n","type LoggedInFormInputType = {\n readonly isNewSiteInput: boolean;\n};\ntype LoggedInFormInputActionType = {\n readonly type: string;\n readonly payload?: LoggedInFormInputType;\n};\n\n// Actions\nconst SET_FORM_INPUT = 'logged-in-form-input/SET_FORM_INPUT';\n\n// Initial State\nconst initialState: LoggedInFormInputType = {\n isNewSiteInput: true\n};\n\n// Reducer\nexport const loggedInFormInputReducer = (\n state = initialState,\n action: LoggedInFormInputActionType\n): LoggedInFormInputType => {\n switch (action.type) {\n case SET_FORM_INPUT:\n return Object.assign({}, state, {\n isNewSiteInput: action.payload?.isNewSiteInput\n });\n default:\n return state;\n }\n};\n\n// Action Creators\nexport function updateLoggedInFormInput(\n isNewSiteInput: boolean\n): LoggedInFormInputActionType {\n return {\n type: SET_FORM_INPUT,\n payload: {\n isNewSiteInput\n }\n };\n}\n","import { ProductKey } from '@atlassiansox/bxpkit-core';\n\nexport const WAC_SIGNUP_FORM_KEY_BASE = 'WacSignupForm.';\nexport const SIGNUP_OFFERING_LABEL_KEY_BASE =\n WAC_SIGNUP_FORM_KEY_BASE + 'signupOffering';\nexport const TRIAL_DURATION_LABEL_KEY_BASE =\n SIGNUP_OFFERING_LABEL_KEY_BASE + 'TrialLengthText';\nexport const TRIAL_DURATION_LABEL_KEY_EXISTING_SITE =\n TRIAL_DURATION_LABEL_KEY_BASE + 'ExistingSite';\nexport const TRIAL_DURATION_LABEL_KEY_NEW_SITE =\n TRIAL_DURATION_LABEL_KEY_BASE + 'NewSite';\nexport const SIGNUP_OFFERING_LABEL_KEY_PREFIX =\n SIGNUP_OFFERING_LABEL_KEY_BASE + 'IncludesFeatures';\nexport const SIGNUP_SIDE_INFO_HEADER_PREFIX =\n WAC_SIGNUP_FORM_KEY_BASE + 'sideInfoHeader';\n\nexport const [\n CONFLUENCE,\n JIRA_CORE,\n JSW,\n JSD,\n OPSGENIE,\n BITBUCKET,\n STATUSPAGE,\n DEVELOPER_MODE,\n DEVOPS,\n TEAM_CENTRAL,\n JIRA_PRODUCT_DISCOVERY,\n COMPASS,\n BEACON\n] = [\n 'Confluence',\n 'JiraCore',\n 'JSW',\n 'JSD',\n 'Opsgenie',\n 'Bitbucket',\n 'Statuspage',\n 'DeveloperMode',\n 'Devops',\n 'TeamCentral',\n 'JiraProductDiscovery',\n 'Compass',\n 'Beacon'\n];\n\nexport const PRODUCT_NAMES = [\n JSD,\n OPSGENIE,\n BITBUCKET,\n STATUSPAGE,\n DEVELOPER_MODE,\n DEVOPS,\n CONFLUENCE,\n TEAM_CENTRAL,\n JSW,\n JIRA_PRODUCT_DISCOVERY,\n BEACON\n];\nexport const STANDARD_EDITION_LABEL_KEY = 'Standard';\nexport const FREE_EDITION_LABEL_KEY = 'Free';\nexport const PREMIUM_EDITION_LABEL_KEY = 'Premium';\nexport const BETA_EDITION_LABEL_KEY = 'Beta';\nexport const BUNDLE_LABEL_KEY = 'Bundle';\nexport const MIGRATION_USERS_LABEL_KEY = 'userTypeUsersLabel';\nexport const MIGRATION_AGENTS_LABEL_KEY = 'userTypeAgentsLabel';\nexport const EDITION_LABEL_ARRAY = [\n STANDARD_EDITION_LABEL_KEY,\n FREE_EDITION_LABEL_KEY,\n PREMIUM_EDITION_LABEL_KEY,\n BETA_EDITION_LABEL_KEY\n];\n\nconst SOCIAL_PROOF_KEY_PREFIX =\n 'WacSignupForm.signupOfferingIncludesFeaturesSocialProof';\n\nexport const SOCIAL_PROOF_TEXT_KEY_PREFIX = SOCIAL_PROOF_KEY_PREFIX + 'Text';\nexport const SOCIAL_PROOF_SUPPORT_IMAGE_KEY_PREFIX =\n SOCIAL_PROOF_KEY_PREFIX + 'Image';\nexport const SOCIAL_PROOF_HERO_IMAGE_KEY_PREFIX =\n SOCIAL_PROOF_KEY_PREFIX + 'HeroImage';\n\nexport const FIRST_IMPRESSION_JIRA_SOFTWARE_FEATURE_LIST = 'JSWFI';\nexport const FIRST_IMPRESSION_JIRA_SERVICE_DESK_FEATURE_LIST = 'JSDFI';\n\nexport const DEFERRED_SITENAME_AVAILABLE_PRODUCTS = [\n ProductKey.JIRA_SOFTWARE as string,\n ProductKey.CONFLUENCE as string,\n ProductKey.JIRA_SERVICE_MANAGEMENT as string,\n ProductKey.JIRA_WORK_MANAGEMENT as string\n];\n\nexport const DEFERRED_SITENAME_AVAILABLE_EDITIONS = [\n FREE_EDITION_LABEL_KEY.toLowerCase()\n];\n","import _ from 'lodash';\nimport { IncludesProductOptionsType, ProductKeysType } from '../model';\nimport { BITBUCKET, OPSGENIE, PRODUCT_NAMES } from './constants';\n\n/**\n * Given Product Key, return Product name\n */\n\nexport const getProductNameFromKey = (productKey: string): string => {\n const nameIdx = PRODUCT_NAMES.map((name: string) =>\n name.toLowerCase()\n ).findIndex((productName) => productKey.includes(productName));\n return nameIdx === -1 ? '' : PRODUCT_NAMES[nameIdx];\n};\n\n/**\n * Check for a matching productName within products\n */\n\nexport const includesProduct = ({\n products,\n productName\n}: IncludesProductOptionsType): boolean => {\n return products.some(({ product: productKey }) => {\n if (typeof productKey !== 'string') {\n return false;\n }\n return getProductNameFromKey(productKey) === productName;\n });\n};\n\nexport const onProductsRequireSitename = (productKeys: ProductKeysType[]) => {\n return productKeys\n .map(({ product: productKey }) => productKey)\n .map(getProductNameFromKey)\n .some((productName: string) => [BITBUCKET, OPSGENIE].includes(productName));\n};\n","import {\n getIsBundleBbJsw,\n getIsBundleDevops,\n ProductKey\n} from '@atlassiansox/bxpkit-core';\nimport _ from 'lodash';\nimport {\n GetEditionLabelsOptionsType,\n GetEditionLabelsReturnType,\n GetSideInfoHeaderOptionsType,\n GetTrialDurationSiteLabelOptionsType\n} from '../model';\nimport {\n BITBUCKET,\n BUNDLE_LABEL_KEY,\n DEVELOPER_MODE,\n DEVOPS,\n FIRST_IMPRESSION_JIRA_SOFTWARE_FEATURE_LIST,\n FREE_EDITION_LABEL_KEY,\n JIRA_CORE,\n JIRA_PRODUCT_DISCOVERY,\n JSD,\n JSW,\n OPSGENIE,\n SIGNUP_OFFERING_LABEL_KEY_PREFIX,\n SIGNUP_SIDE_INFO_HEADER_PREFIX,\n STATUSPAGE,\n TRIAL_DURATION_LABEL_KEY_EXISTING_SITE,\n TRIAL_DURATION_LABEL_KEY_NEW_SITE,\n WAC_SIGNUP_FORM_KEY_BASE\n} from './constants';\nimport { getProductNameFromKey } from './product-data';\nimport { BundleData } from './types';\n\n/**\n * Label for side-info header (if applicable)\n */\n\nexport const getSideInfoHeader = ({\n labels,\n productKeys,\n developerMode\n}: GetSideInfoHeaderOptionsType): string => {\n let contentKey = SIGNUP_SIDE_INFO_HEADER_PREFIX;\n\n if (getIsBundleBbJsw(productKeys)) {\n contentKey += BUNDLE_LABEL_KEY + JSW + BITBUCKET;\n }\n\n if (getIsBundleDevops(productKeys)) {\n contentKey += BUNDLE_LABEL_KEY + DEVOPS;\n }\n\n if (developerMode) {\n contentKey += BUNDLE_LABEL_KEY + DEVELOPER_MODE;\n }\n\n return labels[contentKey];\n};\n\n/**\n * Edition Labels, eg. 'Cloud Free', 'Cloud Premium'\n */\n\nexport const getEditionLabels = ({\n productKey,\n edition: originalEdition\n}: GetEditionLabelsOptionsType): GetEditionLabelsReturnType => {\n let editionLabel = `Cloud ${_.capitalize(\n originalEdition || FREE_EDITION_LABEL_KEY\n )}`;\n let featuresListEditionLabelKey = originalEdition || FREE_EDITION_LABEL_KEY;\n\n if (getProductNameFromKey(productKey) === BITBUCKET) {\n editionLabel = `Cloud ${_.capitalize(FREE_EDITION_LABEL_KEY)}`;\n featuresListEditionLabelKey = FREE_EDITION_LABEL_KEY;\n }\n\n if (getProductNameFromKey(productKey) === STATUSPAGE) {\n editionLabel = '';\n }\n\n return { editionLabel, featuresListEditionLabelKey };\n};\n\n/**\n * Trial duration text, eg. '1-month free cloud trial',\n * for existing sites\n *\n * Returns empty string for BB & Statuspage\n */\n\nexport const getTrialDurationExistingSiteLabel = ({\n productKey,\n labels\n}: GetTrialDurationSiteLabelOptionsType): string => {\n const productName = getProductNameFromKey(productKey);\n return productName === BITBUCKET || productName === STATUSPAGE\n ? ''\n : labels[TRIAL_DURATION_LABEL_KEY_EXISTING_SITE];\n};\n\n/**\n * Trial duration text, eg. '7-day free cloud trial',\n * for new sites\n *\n * Returns empty string for BB & Statuspage\n */\n\nexport const getTrialDurationNewSiteLabel = ({\n productKey,\n labels\n}: GetTrialDurationSiteLabelOptionsType): string => {\n const productName = getProductNameFromKey(productKey);\n return productName === BITBUCKET || productName === STATUSPAGE\n ? ''\n : labels[\n TRIAL_DURATION_LABEL_KEY_NEW_SITE +\n (productName === OPSGENIE ? OPSGENIE : '')\n ];\n};\n\n/**\n * Get list of features, eg. side-info
  • 's\n */\n\nexport type Labels = { [key: string]: string };\n\nexport type MigrationDataType = {\n readonly migrationSourceUuid: string;\n readonly migrationUserLimit: number;\n readonly migrationUserType: string;\n readonly migrationProductName: string;\n readonly migrationSites: string[];\n readonly invalidMigration: boolean;\n readonly claimedMigration: boolean;\n};\n\nexport type GetFeaturesListOptions = {\n readonly labels: Labels;\n readonly bundleData: BundleData;\n readonly featuresListEditionLabelKey: string;\n readonly migrationData?: MigrationDataType;\n readonly developerMode?: boolean;\n};\n\nexport const getFeaturesList = ({\n labels,\n bundleData,\n featuresListEditionLabelKey,\n migrationData,\n developerMode\n}: GetFeaturesListOptions): string => {\n const isBundle = bundleData.products.length > 1;\n const edition = _.capitalize(featuresListEditionLabelKey);\n const includesJiraServiceManagement = _.includes(\n _.map(\n bundleData.products,\n (product) => product.productKey === ProductKey.JIRA_SERVICE_DESK\n ),\n true\n );\n\n if (migrationData && migrationData.migrationSourceUuid) {\n const migrationFeatureList =\n labels[`${WAC_SIGNUP_FORM_KEY_BASE}migrationFeatureList`] || '';\n if (\n migrationData.migrationUserLimit &&\n migrationData.migrationUserType &&\n migrationData.migrationProductName\n ) {\n return migrationFeatureList\n .replace('{productName}', migrationData.migrationProductName)\n .replace('{usageLimit}', migrationData.migrationUserLimit.toString())\n .replace('{userType}', migrationData.migrationUserType);\n }\n return migrationFeatureList;\n }\n\n const primaryProductKey = bundleData.products[0].productKey;\n let productNameFromKey = getProductNameFromKey(primaryProductKey);\n\n // JSD Standalone\n if (primaryProductKey.includes(ProductKey.JIRA_SERVICE_DESK)) {\n productNameFromKey = JSD;\n }\n\n // Jira Core Standalone\n if (primaryProductKey.includes(ProductKey.JIRA_CORE)) {\n productNameFromKey = JIRA_CORE;\n }\n\n // Jira Software Standalone\n if (primaryProductKey.includes(ProductKey.JIRA_SOFTWARE)) {\n productNameFromKey = FIRST_IMPRESSION_JIRA_SOFTWARE_FEATURE_LIST;\n }\n\n // Free bundles that include JSD\n if (\n isBundle &&\n includesJiraServiceManagement &&\n edition === FREE_EDITION_LABEL_KEY\n ) {\n productNameFromKey = BUNDLE_LABEL_KEY + JSD;\n }\n\n // jira-software-bitbucket\n if (bundleData.bundleName === 'jira-software-bitbucket') {\n productNameFromKey = BUNDLE_LABEL_KEY + JSW + BITBUCKET;\n }\n\n // devops\n if (bundleData.bundleName === 'devops') {\n productNameFromKey = BUNDLE_LABEL_KEY + DEVOPS;\n }\n\n if (developerMode) {\n productNameFromKey = BUNDLE_LABEL_KEY + DEVELOPER_MODE;\n }\n\n // team central\n if (primaryProductKey.includes(ProductKey.TEAM_CENTRAL)) {\n productNameFromKey = 'TeamCentral';\n }\n\n // Jira Product Discovery\n if (primaryProductKey.includes(ProductKey.JIRA_PRODUCT_DISCOVERY)) {\n productNameFromKey = JIRA_PRODUCT_DISCOVERY;\n }\n\n return labels[\n SIGNUP_OFFERING_LABEL_KEY_PREFIX + edition + productNameFromKey\n ];\n};\n","import { ProductDataType } from '../model';\nimport { BundleData } from './types';\nimport _ from 'lodash';\nimport { FREE_EDITION_LABEL_KEY } from './constants';\n\nexport type GetBundleDataOptions = {\n readonly activeBundlesMap: { [key: string]: ProductDataType };\n readonly bundleName?: string;\n readonly productKeys?: string;\n readonly edition?: string;\n};\n\nexport function getBundleData({\n activeBundlesMap,\n bundleName,\n productKeys,\n edition\n}: GetBundleDataOptions): BundleData {\n let bundleData;\n\n if (bundleName && bundleName.length) {\n bundleData = getBundleDataByBundleName({\n activeBundlesMap,\n bundleName,\n edition\n });\n } else if (productKeys && productKeys.length) {\n bundleData = getBundleDataByProduct({\n activeBundlesMap,\n productKeys,\n edition\n });\n }\n\n // if all else fails, go with default\n if (!bundleData) {\n return {\n ...activeBundlesMap['default'],\n bundleName: 'default',\n edition: FREE_EDITION_LABEL_KEY.toLowerCase()\n };\n }\n\n return bundleData;\n}\n\nfunction getBundleDataByProduct({\n activeBundlesMap,\n productKeys,\n edition = FREE_EDITION_LABEL_KEY.toLowerCase()\n}: GetBundleDataOptions): BundleData | undefined {\n if (productKeys) {\n const entry = Object.entries(activeBundlesMap).find(\n ([_, rawBundleData]) => {\n return rawBundleData.bundleProductKeys === `${productKeys}`;\n }\n );\n\n if (entry) {\n const [bundleName, rawBundleData] = entry;\n return {\n ...rawBundleData,\n bundleName,\n edition\n };\n }\n }\n\n return undefined;\n}\n\nfunction getBundleDataByBundleName({\n activeBundlesMap,\n bundleName,\n edition = FREE_EDITION_LABEL_KEY.toLowerCase()\n}: GetBundleDataOptions): BundleData | undefined {\n if (bundleName) {\n const rawBundleData = activeBundlesMap[bundleName];\n if (rawBundleData) {\n return {\n ...rawBundleData,\n bundleName,\n edition\n };\n }\n }\n\n return undefined;\n}\n","import { messages } from '../messages';\nimport { BundleData } from './types';\nimport ReactIntl from 'react-intl';\n\nexport interface PageHeaderLabelsParameters {\n readonly labels: {\n [key: string]: string;\n };\n readonly bundleData: BundleData;\n readonly skip?: boolean;\n}\n\nexport type PageHeaderLabels = {\n heading: ReactIntl.FormattedMessage.MessageDescriptor;\n subheading: ReactIntl.FormattedMessage.MessageDescriptor;\n};\n\nexport const getPageHeaderLabels = ({\n labels,\n bundleData,\n skip\n}: PageHeaderLabelsParameters): PageHeaderLabels => {\n if (skip) {\n return {\n heading: messages.heading,\n subheading: messages.subheading\n };\n }\n const editionLabelFragment = getEditionLabelFragment(bundleData.edition);\n const productLabelFragment = getProductLabelFragment(bundleData);\n\n const headingLabel = `${messages.heading.id}${editionLabelFragment}${productLabelFragment}`;\n const subheadingLabel = `${messages.subheading.id}${editionLabelFragment}${productLabelFragment}`;\n\n return {\n heading: {\n id: headingLabel,\n defaultMessage: labels[headingLabel] || messages.heading.defaultMessage\n },\n subheading: {\n id: subheadingLabel,\n defaultMessage:\n labels[subheadingLabel] || messages.subheading.defaultMessage\n }\n };\n};\n\nexport const getEditionLabelFragment = (edition: string) => {\n const matcher: Array<[RegExp, string]> = [\n [/free/gi, 'Free'],\n [/standard/gi, 'Standard'],\n [/premium/gi, 'Standard'],\n [/.*/, 'Free']\n ];\n\n const [, label] = matcher.find(([regex]) => regex.test(edition)) || [];\n return label;\n};\n\nconst JSD_KEY = 'jira-servicedesk.ondemand';\n\nexport const getProductLabelFragment = (bundleData: BundleData) => {\n switch (bundleData.products[0].productKey) {\n case JSD_KEY:\n return 'JSD';\n default:\n return '';\n }\n};\n","import { ProductDataType } from '../model';\n\nexport type BundleData = ProductDataType & {\n readonly bundleName: string;\n readonly edition: string;\n};\n\nexport type AvailableProductsSite = {\n readonly adminAccess: boolean;\n readonly cloudId: string;\n readonly products: string[];\n readonly url: string;\n readonly displayName: string;\n readonly avatarUrl?: string;\n readonly isVertigo?: boolean;\n};\n\n// to get status code from stargate error\nexport type ResponseError = Error & {\n response: Response;\n};\n\n// to check if response is available in error\nexport function isResponseError(error: unknown): error is ResponseError {\n return (\n error instanceof Error &&\n typeof (error as ResponseError).response === 'object'\n );\n}\n","import { ResponseError } from './types';\n\nexport function getRedirectUrlFromShadowItError(error: ResponseError) {\n const errorResponse = error.message?.trim();\n\n // different browsers may have different error shapes\n const errorBody = errorResponse.startsWith('Forbidden')\n ? // Firefox, eg.'Forbidden {\"redirectUrl\":\"https://some-url.com\"}'\n errorResponse.substring(9).trim()\n : // Chrome and others, eg.'{\"redirectUrl\":\"https://some-url.com\"}'\n errorResponse;\n\n // extract redirect url from error body\n try {\n return JSON.parse(errorBody)?.redirectUrl as string;\n } catch (err) {\n console.warn('Shadow IT redirectUrl is not valid JSON');\n return '';\n }\n}\n","import {\n DEFERRED_SITENAME_AVAILABLE_PRODUCTS,\n DEFERRED_SITENAME_AVAILABLE_EDITIONS\n} from '../../utility';\nimport { AppDispatch, RootState, FeatureFlagState } from '../';\nimport { ProductKeysType, ProductKey } from '@atlassiansox/bxpkit-core';\n\ntype DeferredSiteNameType = {\n readonly isEnabled: boolean;\n};\n\ntype DeferredSiteNameThunkType = {\n readonly featureFlags: FeatureFlagState;\n readonly productKeys: ProductKeysType[];\n};\n\ntype DeferredSiteNameActionType = {\n readonly type: string;\n readonly payload?: DeferredSiteNameType &\n DeferredSiteNameThunkType &\n ProductKeysType[];\n};\n\n// Actions\nexport const SET_STATUS = 'deferred-sitename/SET_STATUS';\n\n// Initial State\nexport const initialState: DeferredSiteNameType = {\n isEnabled: false\n};\n\n// Reducer\nexport const deferredSiteNameReducer = (\n state = initialState,\n action: DeferredSiteNameActionType\n): DeferredSiteNameType => {\n switch (action.type) {\n case SET_STATUS:\n const isEnabled =\n action.payload?.featureFlags.enableDeferredSiteName &&\n action.payload?.productKeys &&\n action.payload?.productKeys.length > 0 &&\n (action.payload?.productKeys[0].product === ProductKey.JIRA_SOFTWARE ||\n action.payload?.productKeys[0].product === ProductKey.CONFLUENCE) &&\n action.payload?.productKeys.filter(\n (p: ProductKeysType) =>\n p.product &&\n DEFERRED_SITENAME_AVAILABLE_PRODUCTS.includes(p.product) &&\n p.edition &&\n DEFERRED_SITENAME_AVAILABLE_EDITIONS.includes(p.edition)\n ).length === action.payload.productKeys.length;\n return { ...state, isEnabled: !!isEnabled };\n default:\n return state;\n }\n};\n\n// Thunks\nexport function updateDeferredSiteNameStatus() {\n return (dispatch: AppDispatch, getState: () => RootState) => {\n const { featureFlags, productKeys } = getState();\n dispatch({ type: SET_STATUS, payload: { featureFlags, productKeys } });\n };\n}\n","declare global {\n interface Window {\n grecaptcha: {\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n execute: (wigitId?: any) => any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n render: (val?: any, data?: any) => any;\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n reset: (wigitId?: any) => any;\n };\n }\n}\n\nimport { ProductKey as ProductKeys } from '@atlassiansox/bxpkit-core';\nimport type { AnalyticsTrackType, Product } from '@atlassiansox/bxpkit-core';\nimport { InjectedIntlProps } from 'react-intl';\nimport { OriginAnalytics } from './email-field';\nimport { FirstImpressionsImageUrlsType } from './first-impressions';\nimport { MigrationDataType } from './utils';\nimport { SetStateAction } from 'react';\nimport { OrgInfoResponse } from '../hook/use-org-info';\n\nexport { AnalyticsTrackType, ProductKeys, Product };\n\n// eslint-disable-next-line @typescript-eslint/no-extraneous-class\nexport class SubmitErrorIDType {\n public static ERROR_TIMEOUT(\n error_id?: string\n ): SetStateAction {\n let issueIdMessage = error_id\n ? ` (Issue ID for Atlassian use: ${error_id})`\n : '';\n return `

    Something went wrong on our end. Please try again. If this keeps happening, contact support.${issueIdMessage}

    ` as SetStateAction;\n }\n}\n\nexport enum SubmitErrorType {\n NO_ERROR = '',\n WARNING_TIMEOUT_PENDING = 'warningTimeoutPending',\n ERROR_TIMEOUT = 'errorTimeout',\n AAID_MISMATCH = 'accountIdMisMatch',\n ERROR_ORG_CREATE = 'orgCreateFailure',\n ERROR_PRODUCT_ACTIVATE = 'productActivateFailure'\n}\n\nexport enum ResendEmailType {\n RESEND_DATA = 'r.e.d'\n}\n\nexport enum ChooseSignupExperimentVariants {\n VARIANT1 = 'variant_without_login',\n VARIANT2 = 'variant_with_login',\n CONTROL = 'control',\n UNENROLLED = 'unenrolled'\n}\n\nexport enum ReverseTrialExperimentVariants {\n VARIANT = 'variant',\n CONTROL = 'control',\n UNENROLLED = 'not_enrolled'\n}\n\nexport type ConsentsObject = {\n key: string;\n displayedText: unknown;\n granted: boolean;\n};\n\nexport type Consent = {\n site: string | null;\n locale: string | null;\n formUrl: string | null;\n consents: ConsentsObject[];\n};\n\nexport type WacSignupFormState = {\n email: string | null;\n firstName: string | null;\n lastName: string | null;\n displayName?: string | null;\n password?: string | null;\n cloudName: string | null;\n bbName: string | null;\n dataRegion?: string | null;\n products: Product[];\n consent: Consent;\n isExistingSitePickerN2E: boolean | null;\n isLoggedIn: boolean | null;\n selectedSite: Sites | null;\n migrationId: string | null;\n isSubmitting: boolean;\n isSSOValid: boolean;\n cloudNameLength?: number;\n isNewUser?: boolean | null;\n hasCCPEntitlements: boolean | null;\n};\n\nexport type Sites = {\n readonly adminAccess: boolean;\n readonly cloudId: string;\n readonly displayName: string;\n readonly url: string | null;\n readonly products: string[];\n readonly productsAndEditions?: ProductsAndEditions[];\n readonly entitlements?: [] | null;\n};\n\nexport type ProductsAndEditions = {\n readonly productKey: string;\n readonly productEdition: string;\n};\n\nexport type UserInfo = {\n readonly firstName: string | undefined;\n readonly fullName: string | null;\n readonly lastName: string | null;\n readonly email: string | null;\n readonly sites: Sites[] | null;\n readonly isLoggedIn: boolean | false;\n readonly extendedTrialOverridableSites: string[] | null;\n readonly accountId: string | null;\n readonly isNewUser?: boolean | null;\n};\n\nexport type BitbucketTeam = {\n readonly username: string;\n readonly uuid: string;\n};\n\nexport type BitbucketWorkspace = {\n // owner: has admin access, collaborator: has write access\n readonly permission: 'owner' | 'member' | 'collaborator';\n readonly user: WorkspaceUserType;\n readonly workspace: WorkspaceType;\n readonly last_accessed: string | null;\n readonly type: string;\n readonly links: Record;\n readonly added_on: string | null;\n};\nexport type WorkspaceUserType = {\n readonly display_name: string;\n readonly account_id: string;\n readonly links: Record;\n readonly nickname: string;\n readonly type: string;\n readonly uuid: string;\n};\n\nexport type WorkspaceType = {\n readonly name: string;\n readonly type: string;\n readonly uuid: string;\n readonly links: Record;\n readonly slug: string;\n};\n\nexport type BitbucketWorkspaces = {\n readonly size: number;\n readonly values: BitbucketWorkspace[];\n};\n\nexport type ProductPayloadObject = {\n readonly accountName?: string | null;\n readonly edition?: string | null;\n readonly product?: string | null;\n readonly productKey?: string | null;\n};\n\nexport type WacSignupFormProps = {\n readonly productKeys: Product[];\n readonly bitbucketWorkspaces?: BitbucketWorkspaces;\n readonly hideFullName: boolean;\n readonly showEmail: boolean;\n readonly userInfo?: UserInfo;\n readonly marketingConsentRequired: boolean;\n readonly signInAccountUrl: string;\n readonly switchAccountUrl: string;\n readonly originAnalyticsAttributes: OriginAnalytics;\n readonly reCaptchaKey: string;\n readonly devMode: boolean;\n readonly migrationData?: MigrationDataType;\n readonly isStaging: boolean;\n readonly wacEnvUrl: string;\n readonly locale: string;\n readonly templateId?: { templateId: string };\n readonly teamType?: string;\n readonly analyticsTrack: AnalyticsTrackType;\n readonly formExistingSiteShown: (val: boolean) => void;\n readonly deferSiteNameCreation: boolean;\n readonly defaultErrorType?: SubmitErrorType;\n readonly enableFreeBreachTest: boolean;\n readonly simulateFreeBreachState?: boolean;\n readonly spProduct?: string;\n readonly hideGreeting?: boolean;\n readonly outlineOnFocus?: boolean;\n readonly fadeOnDisable?: boolean;\n readonly popOverError?: boolean;\n readonly enableFieldProgression?: boolean;\n readonly showWarningIcon?: boolean;\n readonly selectedSiteId?: string;\n readonly hideCaptchaEula?: boolean;\n readonly enableResendEmail?: boolean;\n readonly enableCarouselEndCard?: boolean;\n readonly firstImpressionsImageUrls?: FirstImpressionsImageUrlsType;\n readonly siteRenamePageUrl: string;\n readonly enableSkipRecaptcha?: boolean;\n readonly allowSignupWithAllSocialOptions?: boolean;\n readonly userOrgInfo?: OrgInfoResponse | null;\n};\n\nexport type WacSignupFormWithIntlProps = WacSignupFormProps & InjectedIntlProps;\n\nexport type HandleSubmitType = {\n readonly payload: WacSignupFormState;\n readonly activateProducts?: boolean;\n readonly cloudId?: string;\n readonly isJswIncluded?: boolean | null;\n readonly gRecaptchaResponse?: string | null;\n readonly productEdition?: string | null;\n};\n\n/**\n * userInfo\n */\n\nexport type UserSubmitCheckType = {\n readonly accountId: string | null;\n};\n","import { createSlice, PayloadAction } from '@reduxjs/toolkit';\nimport { ChooseSignupExperimentVariants } from '../../model';\nimport type { RootState } from '../store';\n\nexport type FeatureFlagState = {\n readonly enableTintinMvp: boolean;\n readonly provisionSecondPartyApps: boolean;\n readonly enableDeferredSiteName: boolean;\n readonly enableDeferredFullName: boolean;\n readonly enableBundlesAfterSignup?: boolean;\n readonly enableDefaultExpandedEmail?: boolean;\n readonly enableUseCodeAWSContent?: boolean;\n readonly enableChooseSignup?: ChooseSignupExperimentVariants;\n readonly enableMoreSocialSignUpButtons?: boolean;\n};\n\nconst initialState = {\n enableTintinMvp: false,\n provisionSecondPartyApps: false,\n enableDeferredSiteName: false,\n enableDeferredFullName: false,\n enableBundlesAfterSignup: false,\n enableDefaultExpandedEmail: false,\n enableUseCodeAWSContent: false,\n enableChooseSignup: ChooseSignupExperimentVariants.VARIANT2, // productionizing this variant\n enableMoreSocialSignUpButtons: false\n} as FeatureFlagState;\n\nconst sliceFeatureFlags = createSlice({\n name: 'featureFlags',\n initialState,\n reducers: {\n updateFeatureFlags(state, action: PayloadAction>) {\n return { ...state, ...action.payload };\n }\n }\n});\n\n// export actions\nexport const { updateFeatureFlags } = sliceFeatureFlags.actions;\n// optional - convenience function / state selector for minimal consumer syntax\nexport const selectFeatureFlags = (state: RootState) => state.featureFlags;\n// export named reducer (for nicer syntax in store)\nexport const { reducer: reducerFeatureFlags } = sliceFeatureFlags;\n","import { createSlice, PayloadAction } from '@reduxjs/toolkit';\nimport { ProductKeysType } from '../../model';\n\nconst initialState: ProductKeysType[] = [];\n\nconst sliceProductKeys = createSlice({\n name: 'productKeys',\n initialState,\n reducers: {\n updateProductKeys(state, action: PayloadAction) {\n state = action.payload;\n return state;\n }\n }\n});\n\n// export actions\nexport const { updateProductKeys } = sliceProductKeys.actions;\n// export named reducer (for nicer syntax in store)\nexport const { reducer: reducerProductKeys } = sliceProductKeys;\n","import { configureStore } from '@reduxjs/toolkit';\nimport {\n loggedInFormDataReducer as loggedInFormData,\n loggedInFormInputReducer as formInputSelection,\n loggedInFormValidReducer as loggedInFormValid,\n n2nDeferredPasswordFieldProgressReducer as n2nDeferredPasswordProgress,\n n2nDeferredPasswordFieldValidationReducer as n2nDeferredPasswordFieldValidation,\n n2nFieldProgressReducer as n2nFieldProgress,\n n2nFieldValidationReducer as n2nFieldValidation,\n sharedFormDataReducer as sharedFormData\n} from './ducks-devops';\nimport { deferredSiteNameReducer as deferredSiteName } from './ducks-experimentation';\nimport { reducerFeatureFlags, reducerProductKeys } from './slice';\n\nconst store = configureStore({\n reducer: {\n // ------ Global Redux Slices --\n featureFlags: reducerFeatureFlags,\n productKeys: reducerProductKeys,\n // ------ Devops ducks ------\n n2nFieldProgress,\n n2nFieldValidation,\n n2nDeferredPasswordFieldValidation,\n n2nDeferredPasswordProgress,\n loggedInFormValid,\n loggedInFormData,\n sharedFormData,\n formInputSelection,\n // ------ Experimentation ducks ------\n deferredSiteName\n },\n devTools: {\n name: '@atlassiansox/bxpkit-wac-sign-up/global'\n }\n});\n\n// Infer the `RootState` and `AppDispatch` types from the store itself\nexport type RootState = ReturnType;\n// Inferred type: {posts: PostsState, comments: CommentsState, users: UsersState}\nexport type AppDispatch = typeof store.dispatch;\n\nexport default store;\n","import React from 'react';\nexport var ReactReduxContext = /*#__PURE__*/React.createContext(null);\n\nif (process.env.NODE_ENV !== 'production') {\n ReactReduxContext.displayName = 'ReactRedux';\n}\n\nexport default ReactReduxContext;","// Default to a dummy \"batch\" implementation that just runs the callback\nfunction defaultNoopBatch(callback) {\n callback();\n}\n\nvar batch = defaultNoopBatch; // Allow injecting another batching function later\n\nexport var setBatch = function setBatch(newBatch) {\n return batch = newBatch;\n}; // Supply a getter just to skip dealing with ESM bindings\n\nexport var getBatch = function getBatch() {\n return batch;\n};","import { getBatch } from './batch'; // encapsulates the subscription logic for connecting a component to the redux store, as\n// well as nesting subscriptions of descendant components, so that we can ensure the\n// ancestor components re-render before descendants\n\nfunction createListenerCollection() {\n var batch = getBatch();\n var first = null;\n var last = null;\n return {\n clear: function clear() {\n first = null;\n last = null;\n },\n notify: function notify() {\n batch(function () {\n var listener = first;\n\n while (listener) {\n listener.callback();\n listener = listener.next;\n }\n });\n },\n get: function get() {\n var listeners = [];\n var listener = first;\n\n while (listener) {\n listeners.push(listener);\n listener = listener.next;\n }\n\n return listeners;\n },\n subscribe: function subscribe(callback) {\n var isSubscribed = true;\n var listener = last = {\n callback: callback,\n next: null,\n prev: last\n };\n\n if (listener.prev) {\n listener.prev.next = listener;\n } else {\n first = listener;\n }\n\n return function unsubscribe() {\n if (!isSubscribed || first === null) return;\n isSubscribed = false;\n\n if (listener.next) {\n listener.next.prev = listener.prev;\n } else {\n last = listener.prev;\n }\n\n if (listener.prev) {\n listener.prev.next = listener.next;\n } else {\n first = listener.next;\n }\n };\n }\n };\n}\n\nvar nullListeners = {\n notify: function notify() {},\n get: function get() {\n return [];\n }\n};\nexport function createSubscription(store, parentSub) {\n var unsubscribe;\n var listeners = nullListeners;\n\n function addNestedSub(listener) {\n trySubscribe();\n return listeners.subscribe(listener);\n }\n\n function notifyNestedSubs() {\n listeners.notify();\n }\n\n function handleChangeWrapper() {\n if (subscription.onStateChange) {\n subscription.onStateChange();\n }\n }\n\n function isSubscribed() {\n return Boolean(unsubscribe);\n }\n\n function trySubscribe() {\n if (!unsubscribe) {\n unsubscribe = parentSub ? parentSub.addNestedSub(handleChangeWrapper) : store.subscribe(handleChangeWrapper);\n listeners = createListenerCollection();\n }\n }\n\n function tryUnsubscribe() {\n if (unsubscribe) {\n unsubscribe();\n unsubscribe = undefined;\n listeners.clear();\n listeners = nullListeners;\n }\n }\n\n var subscription = {\n addNestedSub: addNestedSub,\n notifyNestedSubs: notifyNestedSubs,\n handleChangeWrapper: handleChangeWrapper,\n isSubscribed: isSubscribed,\n trySubscribe: trySubscribe,\n tryUnsubscribe: tryUnsubscribe,\n getListeners: function getListeners() {\n return listeners;\n }\n };\n return subscription;\n}","import { useEffect, useLayoutEffect } from 'react'; // React currently throws a warning when using useLayoutEffect on the server.\n// To get around it, we can conditionally useEffect on the server (no-op) and\n// useLayoutEffect in the browser. We need useLayoutEffect to ensure the store\n// subscription callback always has the selector from the latest render commit\n// available, otherwise a store update may happen between render and the effect,\n// which may cause missed updates; we also must ensure the store subscription\n// is created synchronously, otherwise a store update may occur before the\n// subscription is created and an inconsistent state may be observed\n\nexport var useIsomorphicLayoutEffect = typeof window !== 'undefined' && typeof window.document !== 'undefined' && typeof window.document.createElement !== 'undefined' ? useLayoutEffect : useEffect;","import React, { useMemo } from 'react';\nimport PropTypes from 'prop-types';\nimport { ReactReduxContext } from './Context';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\n\nfunction Provider(_ref) {\n var store = _ref.store,\n context = _ref.context,\n children = _ref.children;\n var contextValue = useMemo(function () {\n var subscription = createSubscription(store);\n return {\n store: store,\n subscription: subscription\n };\n }, [store]);\n var previousState = useMemo(function () {\n return store.getState();\n }, [store]);\n useIsomorphicLayoutEffect(function () {\n var subscription = contextValue.subscription;\n subscription.onStateChange = subscription.notifyNestedSubs;\n subscription.trySubscribe();\n\n if (previousState !== store.getState()) {\n subscription.notifyNestedSubs();\n }\n\n return function () {\n subscription.tryUnsubscribe();\n subscription.onStateChange = null;\n };\n }, [contextValue, previousState]);\n var Context = context || ReactReduxContext;\n return /*#__PURE__*/React.createElement(Context.Provider, {\n value: contextValue\n }, children);\n}\n\nif (process.env.NODE_ENV !== 'production') {\n Provider.propTypes = {\n store: PropTypes.shape({\n subscribe: PropTypes.func.isRequired,\n dispatch: PropTypes.func.isRequired,\n getState: PropTypes.func.isRequired\n }),\n context: PropTypes.object,\n children: PropTypes.any\n };\n}\n\nexport default Provider;","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\n/**\r\n * A hook to access the value of the `ReactReduxContext`. This is a low-level\r\n * hook that you should usually not need to call directly.\r\n *\r\n * @returns {any} the value of the `ReactReduxContext`\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useReduxContext } from 'react-redux'\r\n *\r\n * export const CounterComponent = ({ value }) => {\r\n * const { store } = useReduxContext()\r\n * return
    {store.getState()}
    \r\n * }\r\n */\n\nexport function useReduxContext() {\n var contextValue = useContext(ReactReduxContext);\n\n if (process.env.NODE_ENV !== 'production' && !contextValue) {\n throw new Error('could not find react-redux context value; please ensure the component is wrapped in a ');\n }\n\n return contextValue;\n}","import { useContext } from 'react';\nimport { ReactReduxContext } from '../components/Context';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\n/**\r\n * Hook factory, which creates a `useStore` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useStore` hook bound to the specified context.\r\n */\n\nexport function createStoreHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useStore() {\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store;\n\n return store;\n };\n}\n/**\r\n * A hook to access the redux store.\r\n *\r\n * @returns {any} the redux store\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useStore } from 'react-redux'\r\n *\r\n * export const ExampleComponent = () => {\r\n * const store = useStore()\r\n * return
    {store.getState()}
    \r\n * }\r\n */\n\nexport var useStore = /*#__PURE__*/createStoreHook();","import { ReactReduxContext } from '../components/Context';\nimport { useStore as useDefaultStore, createStoreHook } from './useStore';\n/**\r\n * Hook factory, which creates a `useDispatch` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useDispatch` hook bound to the specified context.\r\n */\n\nexport function createDispatchHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useStore = context === ReactReduxContext ? useDefaultStore : createStoreHook(context);\n return function useDispatch() {\n var store = useStore();\n return store.dispatch;\n };\n}\n/**\r\n * A hook to access the redux `dispatch` function.\r\n *\r\n * @returns {any|function} redux store's `dispatch` function\r\n *\r\n * @example\r\n *\r\n * import React, { useCallback } from 'react'\r\n * import { useDispatch } from 'react-redux'\r\n *\r\n * export const CounterComponent = ({ value }) => {\r\n * const dispatch = useDispatch()\r\n * const increaseCounter = useCallback(() => dispatch({ type: 'increase-counter' }), [])\r\n * return (\r\n *
    \r\n * {value}\r\n * \r\n *
    \r\n * )\r\n * }\r\n */\n\nexport var useDispatch = /*#__PURE__*/createDispatchHook();","import { useReducer, useRef, useMemo, useContext, useDebugValue } from 'react';\nimport { useReduxContext as useDefaultReduxContext } from './useReduxContext';\nimport { createSubscription } from '../utils/Subscription';\nimport { useIsomorphicLayoutEffect } from '../utils/useIsomorphicLayoutEffect';\nimport { ReactReduxContext } from '../components/Context';\n\nvar refEquality = function refEquality(a, b) {\n return a === b;\n};\n\nfunction useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub) {\n var _useReducer = useReducer(function (s) {\n return s + 1;\n }, 0),\n forceRender = _useReducer[1];\n\n var subscription = useMemo(function () {\n return createSubscription(store, contextSub);\n }, [store, contextSub]);\n var latestSubscriptionCallbackError = useRef();\n var latestSelector = useRef();\n var latestStoreState = useRef();\n var latestSelectedState = useRef();\n var storeState = store.getState();\n var selectedState;\n\n try {\n if (selector !== latestSelector.current || storeState !== latestStoreState.current || latestSubscriptionCallbackError.current) {\n var newSelectedState = selector(storeState); // ensure latest selected state is reused so that a custom equality function can result in identical references\n\n if (latestSelectedState.current === undefined || !equalityFn(newSelectedState, latestSelectedState.current)) {\n selectedState = newSelectedState;\n } else {\n selectedState = latestSelectedState.current;\n }\n } else {\n selectedState = latestSelectedState.current;\n }\n } catch (err) {\n if (latestSubscriptionCallbackError.current) {\n err.message += \"\\nThe error may be correlated with this previous error:\\n\" + latestSubscriptionCallbackError.current.stack + \"\\n\\n\";\n }\n\n throw err;\n }\n\n useIsomorphicLayoutEffect(function () {\n latestSelector.current = selector;\n latestStoreState.current = storeState;\n latestSelectedState.current = selectedState;\n latestSubscriptionCallbackError.current = undefined;\n });\n useIsomorphicLayoutEffect(function () {\n function checkForUpdates() {\n try {\n var newStoreState = store.getState(); // Avoid calling selector multiple times if the store's state has not changed\n\n if (newStoreState === latestStoreState.current) {\n return;\n }\n\n var _newSelectedState = latestSelector.current(newStoreState);\n\n if (equalityFn(_newSelectedState, latestSelectedState.current)) {\n return;\n }\n\n latestSelectedState.current = _newSelectedState;\n latestStoreState.current = newStoreState;\n } catch (err) {\n // we ignore all errors here, since when the component\n // is re-rendered, the selectors are called again, and\n // will throw again, if neither props nor store state\n // changed\n latestSubscriptionCallbackError.current = err;\n }\n\n forceRender();\n }\n\n subscription.onStateChange = checkForUpdates;\n subscription.trySubscribe();\n checkForUpdates();\n return function () {\n return subscription.tryUnsubscribe();\n };\n }, [store, subscription]);\n return selectedState;\n}\n/**\r\n * Hook factory, which creates a `useSelector` hook bound to a given context.\r\n *\r\n * @param {React.Context} [context=ReactReduxContext] Context passed to your ``.\r\n * @returns {Function} A `useSelector` hook bound to the specified context.\r\n */\n\n\nexport function createSelectorHook(context) {\n if (context === void 0) {\n context = ReactReduxContext;\n }\n\n var useReduxContext = context === ReactReduxContext ? useDefaultReduxContext : function () {\n return useContext(context);\n };\n return function useSelector(selector, equalityFn) {\n if (equalityFn === void 0) {\n equalityFn = refEquality;\n }\n\n if (process.env.NODE_ENV !== 'production') {\n if (!selector) {\n throw new Error(\"You must pass a selector to useSelector\");\n }\n\n if (typeof selector !== 'function') {\n throw new Error(\"You must pass a function as a selector to useSelector\");\n }\n\n if (typeof equalityFn !== 'function') {\n throw new Error(\"You must pass a function as an equality function to useSelector\");\n }\n }\n\n var _useReduxContext = useReduxContext(),\n store = _useReduxContext.store,\n contextSub = _useReduxContext.subscription;\n\n var selectedState = useSelectorWithStoreAndSubscription(selector, equalityFn, store, contextSub);\n useDebugValue(selectedState);\n return selectedState;\n };\n}\n/**\r\n * A hook to access the redux store's state. This hook takes a selector function\r\n * as an argument. The selector is called with the store state.\r\n *\r\n * This hook takes an optional equality comparison function as the second parameter\r\n * that allows you to customize the way the selected state is compared to determine\r\n * whether the component needs to be re-rendered.\r\n *\r\n * @param {Function} selector the selector function\r\n * @param {Function=} equalityFn the function that will be used to determine equality\r\n *\r\n * @returns {any} the selected state\r\n *\r\n * @example\r\n *\r\n * import React from 'react'\r\n * import { useSelector } from 'react-redux'\r\n *\r\n * export const CounterComponent = () => {\r\n * const counter = useSelector(state => state.counter)\r\n * return
    {counter}
    \r\n * }\r\n */\n\nexport var useSelector = /*#__PURE__*/createSelectorHook();","export * from './exports';\nimport { unstable_batchedUpdates as batch } from './utils/reactBatchedUpdates';\nimport { setBatch } from './utils/batch'; // Enable batched updates in our subscriptions for use\n// with standard React renderers (ReactDOM, React Native)\n\nsetBatch(batch);\nexport { batch };","import { TypedUseSelectorHook, useDispatch, useSelector } from 'react-redux';\nimport { AppDispatch, RootState } from './store';\n\n// Use throughout your app instead of plain `useDispatch` and `useSelector`\nexport const useAppDispatch = () => useDispatch();\nexport const useAppSelector: TypedUseSelectorHook = useSelector;\n","import { defineMessages } from 'react-intl';\n\nconst ID_PREFIX = 'WacSignupForm.';\nexport const messages = defineMessages({\n socialSignUpButtonContinueWithGoogle: {\n id: `${ID_PREFIX}socialSignUpButtonContinueWithGoogle`,\n defaultMessage: 'Continue with Google'\n },\n socialSignUpButtonContinueWithMicrosoft: {\n id: `${ID_PREFIX}socialSignUpButtonContinueWithMicrosoft`,\n defaultMessage: 'Continue with Microsoft'\n },\n socialSignUpButtonSignUpWithEmail: {\n id: `${ID_PREFIX}socialSignUpButtonSignUpWithEmail`,\n defaultMessage: 'Sign up with email'\n },\n socialSignUpButtonSignUpWithGoogle: {\n id: `${ID_PREFIX}socialSignUpButtonSignUpWithGoogle`,\n defaultMessage: 'Sign up with Google'\n }\n});\n","import { N500 } from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\n\nconst text =\n \"Charlie Text, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Noto Sans', 'Ubuntu', 'Droid Sans', 'Helvetica Neue', sans-serif\";\n\nexport const SocialButtonIcon = styled.img`\n height: 18px;\n width: 18px;\n margin-right: 8px;\n margin-bottom: 0;\n`;\n\nexport const DefaultButton = styled.div`\n height: 39px;\n width: 100%;\n border-radius: 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: ${N500};\n cursor: pointer;\n font-weight: 500;\n box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 5px 0 !important;\n\n margin: 0px 0px 20px 0px;\n padding: 0;\n border: 0;\n font-size: 100%;\n vertical-align: baseline;\n font-family: ${text};\n font-style: normal;\n background-color: #e8e9ee;\n`;\n\nexport const SocialButton = styled.a`\n text-decoration: none;\n height: 39px;\n width: 100%;\n border-radius: 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: ${N500};\n :hover{\n color: ${N500}\n text-decoration: none;\n }\n cursor: pointer;\n font-weight: 500;\n box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 5px 0 !important;\n background-color: #FFF;\n\n margin: 0px 0px 20px 0px;\n padding: 0;\n border: 0;\n font-size: 100%;\n vertical-align: baseline;\n font-family: ${text};\n font-style: normal;\n`;\n\nexport const SocialButtonDefaultExpandedEmail = styled.a`\n text-decoration: none;\n height: 40px;\n width: 100%;\n border-radius: 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: ${N500};\n :hover{\n color: ${N500}\n text-decoration: none;\n }\n cursor: pointer;\n font-weight: 500;\n box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 5px 0 !important;\n background-color: #FFF;\n\n margin: 40px 0px 24px 0px;\n padding: 0;\n border: 0;\n font-size: 100%;\n vertical-align: baseline;\n font-family: ${text};\n font-style: normal;\n`;\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { useAppSelector } from '../../../../redux';\nimport { messages } from './messages';\nimport {\n DefaultButton,\n SocialButton,\n SocialButtonDefaultExpandedEmail,\n SocialButtonIcon\n} from './styled';\n\nexport type SocialSignUpButtonProps = {\n readonly href?: string;\n readonly buttonType: string;\n readonly onClick?: () => void;\n readonly className?: string;\n readonly id?: string;\n};\n\nfunction SocialSignUpButton(props: SocialSignUpButtonProps) {\n const { href, buttonType, onClick, id, className } = props;\n const { enableDefaultExpandedEmail } = useAppSelector(\n (state) => state.featureFlags\n );\n\n let btn;\n switch (buttonType) {\n case 'google':\n {\n enableDefaultExpandedEmail\n ? (btn = (\n \n {' '}\n \n \n ))\n : (btn = (\n \n {' '}\n \n \n ));\n }\n\n break;\n case 'microsoft':\n btn = (\n \n {' '}\n \n \n );\n break;\n default:\n btn = (\n \n \n \n );\n break;\n }\n\n return btn;\n}\n\nexport default SocialSignUpButton;\n","import { createTheme } from '../utils/create-theme';\n\n// Create default global light theme\nconst {\n Provider,\n Consumer,\n useTheme\n} = createTheme(() => ({\n mode: 'light'\n}));\nexport { useTheme as useGlobalTheme };\nexport default {\n Provider,\n Consumer\n};","import React, { createContext, useCallback, useContext } from 'react';\n/**\n * createTheme is used to create a set of Providers and Consumers for theming components.\n * - Takes a default theme function; this theme function gets a set of props, and returns tokens\n * based on those props. An example of this default theme function is one that produces the standard\n * appearance of the component\n * - Returns three things - a Provider that allow for additional themes to be applied, a Consumer\n * that can get the current theme and fetch it, and a custom hook - useTheme which provides an alternate (although functionally the same) API\n * to the Consumer.\n */\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n\n /**\n * Internally, Theme uses React Context, with internal providers and consumers.\n * The React Context passes only a function that gets props, and turns them into tokens. This\n * function gets mixed as more Providers with their own themes are added. This mixed function\n * is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n * the theme.\n */\n const ThemeContext = /*#__PURE__*/createContext(defaultGetTokens);\n function useTheme(themeProps) {\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n const tokens = themeFn(themeProps);\n return tokens;\n }\n\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const {\n children,\n ...themeProps\n } = props;\n\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = useTheme(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return /*#__PURE__*/React.createElement(React.Fragment, null, children(tokens));\n }\n\n /**\n * The Theme Provider takes regular nodes as its children, but also takes a *theme function*\n * - The theme function takes a set of props, as well as a function (getTokens) that can turn props into tokens.\n * - The getTokens function isn't called immediately - instead the props are passed\n * through a mix of parent theming functions\n * Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback(themeProps => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: mixedFn\n }, props.children);\n }\n return {\n Consumer,\n Provider,\n useTheme\n };\n}","/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = {\n ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n this.payload = props.payload;\n }\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = {\n ...this.payload,\n ...updater\n };\n }\n return this;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n return null;\n }\n const context = [...this.context];\n const handlers = [...this.handlers];\n\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n return;\n }\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n return this;\n }\n return super.update(updater);\n }\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafEventHandler({\n fn,\n action,\n componentName,\n actionSubject,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n\n // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(value => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: actionSubject || componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n });\n\n // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context);\n\n // fire an event on the atlaskit channel\n const clone = analyticsEvent.clone();\n if (clone) {\n clone.fire('atlaskit');\n }\n fnRef.current(value, analyticsEvent);\n }, [\n // These are strings and won't change\n action, componentName, actionSubject, packageName, packageVersion,\n // This function is memoized in the context\n createAnalyticsEvent,\n // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","function abort(event) {\n event.preventDefault();\n event.stopPropagation();\n}\nconst tabKeyCode = 9;\nfunction onKey(event) {\n // Allowing tab so that a user can move focus away\n if (event.keyCode === tabKeyCode) {\n return;\n }\n abort(event);\n}\nconst block = {\n onMouseDownCapture: abort,\n onMouseUpCapture: abort,\n // because we have tabIndex = -1 when disabled,\n // keyboard events can only occur when there is an overlay\n onKeyDownCapture: onKey,\n onKeyUpCapture: onKey,\n onTouchStartCapture: abort,\n onTouchEndCapture: abort,\n onPointerDownCapture: abort,\n onPointerUpCapture: abort,\n onClickCapture: abort,\n // Just smashing the existing onClick for good measure\n onClick: abort\n};\nconst doNotBlock = {};\nexport default function blockEvents({\n isInteractive\n}) {\n return isInteractive ? doNotBlock : block;\n}","import * as colors from '@atlaskit/theme/colors';\n// Hard coding the active rgba color value rather than using a helper to convert it\n// With helper it would be: hex2rgba(colors.B75, 0.6)\nconst fadedB75 = 'rgba(179, 212, 255, 0.6)';\nconst values = {\n // Default appearance\n background: {\n default: {\n default: {\n light: `var(--ds-background-neutral, ${colors.N20A})`,\n dark: `var(--ds-background-neutral, ${colors.DN70})`\n },\n hover: {\n light: `var(--ds-background-neutral-hovered, ${colors.N30A})`,\n dark: `var(--ds-background-neutral-hovered, ${colors.DN60})`\n },\n active: {\n light: `var(--ds-background-neutral-pressed, ${fadedB75})`,\n dark: `var(--ds-background-neutral-pressed, ${colors.B75})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n }\n },\n primary: {\n default: {\n light: `var(--ds-background-brand-bold, ${colors.B400})`,\n dark: `var(--ds-background-brand-bold, ${colors.B100})`\n },\n hover: {\n light: `var(--ds-background-brand-bold-hovered, ${colors.B300})`,\n dark: `var(--ds-background-brand-bold-hovered, ${colors.B75})`\n },\n active: {\n light: `var(--ds-background-brand-bold-pressed, ${colors.B500})`,\n dark: `var(--ds-background-brand-bold-pressed, ${colors.B200})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n }\n },\n warning: {\n default: {\n light: `var(--ds-background-warning-bold, ${colors.Y300})`,\n dark: `var(--ds-background-warning-bold, ${colors.Y300})`\n },\n hover: {\n light: `var(--ds-background-warning-bold-hovered, ${colors.Y200})`,\n dark: `var(--ds-background-warning-bold-hovered, ${colors.Y200})`\n },\n active: {\n light: `var(--ds-background-warning-bold-pressed, ${colors.Y400})`,\n dark: `var(--ds-background-warning-bold-pressed, ${colors.Y400})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.Y400})`,\n dark: `var(--ds-background-selected, ${colors.Y400})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.Y400})`,\n dark: `var(--ds-background-selected, ${colors.Y400})`\n }\n },\n danger: {\n default: {\n light: `var(--ds-background-danger-bold, ${colors.R400})`,\n dark: `var(--ds-background-danger-bold, ${colors.R400})`\n },\n hover: {\n light: `var(--ds-background-danger-bold-hovered, ${colors.R300})`,\n dark: `var(--ds-background-danger-bold-hovered, ${colors.R300})`\n },\n active: {\n light: `var(--ds-background-danger-bold-pressed, ${colors.R500})`,\n dark: `var(--ds-background-danger-bold-pressed, ${colors.R500})`\n },\n disabled: {\n light: `var(--ds-background-disabled, ${colors.N20A})`,\n dark: `var(--ds-background-disabled, ${colors.DN70})`\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.R500})`,\n dark: `var(--ds-background-selected, ${colors.R500})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.R500})`,\n dark: `var(--ds-background-selected, ${colors.R500})`\n }\n },\n link: {\n default: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n }\n },\n subtle: {\n default: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n hover: {\n light: `var(--ds-background-neutral-subtle-hovered, ${colors.N30A})`,\n dark: `var(--ds-background-neutral-subtle-hovered, ${colors.DN60})`\n },\n active: {\n light: `var(--ds-background-neutral-subtle-pressed, ${fadedB75})`,\n dark: `var(--ds-background-neutral-subtle-pressed, ${colors.B75})`\n },\n disabled: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.DN0})`\n }\n },\n 'subtle-link': {\n default: {\n light: \"var(--ds-background-neutral-subtle, none)\",\n dark: \"var(--ds-background-neutral-subtle, none)\"\n },\n selected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n },\n focusSelected: {\n light: `var(--ds-background-selected, ${colors.N700})`,\n dark: `var(--ds-background-selected, ${colors.N20})`\n }\n }\n },\n color: {\n default: {\n default: {\n light: `var(--ds-text, ${colors.N500})`,\n dark: `var(--ds-text, ${colors.DN400})`\n },\n active: {\n light: `var(--ds-text, ${colors.B400})`,\n dark: `var(--ds-text, ${colors.B400})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n },\n primary: {\n default: {\n light: `var(--ds-text-inverse, ${colors.N0})`,\n dark: `var(--ds-text-inverse, ${colors.DN30})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n },\n warning: {\n default: {\n light: `var(--ds-text-warning-inverse, ${colors.N800})`,\n dark: `var(--ds-text-warning-inverse, ${colors.N800})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N800})`,\n dark: `var(--ds-text-selected, ${colors.N800})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N800})`,\n dark: `var(--ds-text-selected, ${colors.N800})`\n }\n },\n danger: {\n default: {\n light: `var(--ds-text-inverse, ${colors.N0})`,\n dark: `var(--ds-text-inverse, ${colors.N0})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN30})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N0})`,\n dark: `var(--ds-text-selected, ${colors.N0})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N0})`,\n dark: `var(--ds-text-selected, ${colors.N0})`\n }\n },\n link: {\n default: {\n light: `var(--ds-link, ${colors.B400})`,\n dark: `var(--ds-link, ${colors.B100})`\n },\n hover: {\n light: `var(--ds-link, ${colors.B300})`,\n dark: `var(--ds-link, ${colors.B75})`\n },\n active: {\n light: `var(--ds-link-pressed, ${colors.B500})`,\n dark: `var(--ds-link-pressed, ${colors.B200})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN100})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.N700})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.N700})`\n }\n },\n subtle: {\n default: {\n light: `var(--ds-text, ${colors.N500})`,\n dark: `var(--ds-text, ${colors.DN400})`\n },\n active: {\n light: `var(--ds-text, ${colors.B400})`,\n dark: `var(--ds-text, ${colors.B400})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN100})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n },\n 'subtle-link': {\n default: {\n light: `var(--ds-text-subtle, ${colors.N200})`,\n dark: `var(--ds-text-subtle, ${colors.DN400})`\n },\n hover: {\n light: `var(--ds-text-subtle, ${colors.N90})`,\n dark: `var(--ds-text-subtle, ${colors.B50})`\n },\n active: {\n light: `var(--ds-text, ${colors.N400})`,\n dark: `var(--ds-text, ${colors.DN300})`\n },\n disabled: {\n light: `var(--ds-text-disabled, ${colors.N70})`,\n dark: `var(--ds-text-disabled, ${colors.DN100})`\n },\n selected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n },\n focusSelected: {\n light: `var(--ds-text-selected, ${colors.N20})`,\n dark: `var(--ds-text-selected, ${colors.DN400})`\n }\n }\n }\n};\nexport default values;","import { css } from '@emotion/react';\nimport { borderRadius as getBorderRadius, fontSize as getFontSize,\n// eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports\ngridSize as getGridSize } from '@atlaskit/theme/constants';\nimport colors from './colors';\nconst borderRadius = getBorderRadius();\nconst gridSize = getGridSize();\nconst fontSize = getFontSize();\n\n// ## Button layout\n//\n// /------------------------------------------------------------------------------------------------------------------\\\n// | → | ← | | → | ← | | → | ← | | → | ← |\n// | 10px → | ← 2px | icon | 2px → | ← 2px | | 2px → | ← 2px | icon | 2px → | ← 10px |\n// | padding | margin | before | margin | margin | content | margin | margin | after | margin | padding |\n// | (12px total) | | (4px total) | | (4px total) | | (12px total) |\n// | → | ← | | → | ← | | → | ← | | → | ← |\n// \\------------------------------------------------------------------------------------------------------------------/\n// ↑ ↑\n// Margins don't collapse with inline-flex\n//\nconst heights = {\n default: `${gridSize * 4 / fontSize}em`,\n // 32px\n compact: `${gridSize * 3 / fontSize}em`,\n none: 'auto'\n};\nconst lineHeights = {\n default: heights.default,\n compact: heights.compact,\n none: 'inherit'\n};\nconst padding = {\n // 10px gutter\n default: `0 ${gridSize + gridSize / 4}px`,\n compact: `0 ${gridSize + gridSize / 4}px`,\n none: '0'\n};\nconst singleIconPadding = {\n // 2px gutter\n compact: `0 ${gridSize / 4}px`,\n default: `0 ${gridSize / 4}px`,\n none: '0'\n};\nconst verticalAlign = {\n default: 'middle',\n compact: 'middle',\n none: 'baseline'\n};\nconst innerMargin = {\n content: `0 ${gridSize / 4}px`,\n icon: `0 ${gridSize / 4}px`\n};\nfunction getColor({\n group,\n key,\n mode\n}) {\n const rule = group[key] || group.default;\n return rule[mode];\n}\nfunction getColors({\n appearance,\n key,\n mode\n}) {\n return {\n background: getColor({\n group: colors.background[appearance],\n key,\n mode\n }),\n // Needing to add !important to overcome specificity issue caused by deprecated AtlaskitThemeProvider\n color: `${getColor({\n group: colors.color[appearance],\n key,\n mode\n })} !important`\n };\n}\nexport function getCss({\n appearance,\n spacing,\n mode,\n isSelected,\n shouldFitContainer,\n isOnlySingleIcon\n}) {\n const baseColors = getColors({\n appearance,\n key: isSelected ? 'selected' : 'default',\n mode\n });\n return {\n // 0px margin added to css-reset\n alignItems: 'baseline',\n borderWidth: 0,\n borderRadius,\n boxSizing: 'border-box',\n display: 'inline-flex',\n fontSize: 'inherit',\n fontStyle: 'normal',\n // Chrome recently changed button so that they use 'arial' as the font family\n fontFamily: 'inherit',\n fontWeight: 500,\n // margin for button has been applied to css reset\n maxWidth: '100%',\n // Needed to position overlay\n position: 'relative',\n textAlign: 'center',\n textDecoration: 'none',\n transition: 'background 0.1s ease-out, box-shadow 0.15s cubic-bezier(0.47, 0.03, 0.49, 1.38)',\n whiteSpace: 'nowrap',\n // dynamic styles\n ...baseColors,\n cursor: 'pointer',\n height: heights[spacing],\n lineHeight: lineHeights[spacing],\n padding: isOnlySingleIcon ? singleIconPadding[spacing] : padding[spacing],\n verticalAlign: verticalAlign[spacing],\n width: shouldFitContainer ? '100%' : 'auto',\n // justifyContent required for shouldFitContainer buttons with an icon inside\n justifyContent: 'center',\n // Note: we cannot disable pointer events when there is an overlay.\n // That would be easy for styling, but it would start letting events through on disabled buttons\n\n // Disabling visited styles (just using the base colors)\n '&:visited': {\n ...baseColors\n },\n '&:hover': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'hover',\n mode\n }),\n textDecoration: !isSelected && (appearance === 'link' || appearance === 'subtle-link') ? 'underline' : 'inherit',\n // background, box-shadow\n transitionDuration: '0s, 0.15s'\n },\n // giving active styles preference by listing them after focus\n '&:active': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'active',\n mode\n }),\n // background, box-shadow\n transitionDuration: '0s, 0s'\n },\n // preventDefault prevents regular active styles from applying in Firefox\n '&[data-firefox-is-active=\"true\"]': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'active',\n mode\n }),\n // background, box-shadow\n transitionDuration: '0s, 0s'\n },\n // Giving disabled styles preference over active by listing them after.\n // Not using '&:disabled' because :disabled is not a valid state for all element types\n // so we are targeting the attribute\n // Attributes have the same specificity a pseudo classes so we are overriding :disabled here\n '&[disabled]': {\n // always using 'disabled' even when selected\n ...getColors({\n appearance,\n key: 'disabled',\n mode\n }),\n cursor: 'not-allowed',\n textDecoration: 'none'\n },\n '&[data-has-overlay=\"true\"]': {\n cursor: 'default',\n textDecoration: 'none'\n },\n // disabling hover and active color changes when there is an overlay, but the button is not disabled\n '&[data-has-overlay=\"true\"]:not([disabled]):hover, &[data-has-overlay=\"true\"]:not([disabled]):active': {\n ...getColors({\n appearance,\n key: isSelected ? 'selected' : 'default',\n mode\n })\n },\n '&::-moz-focus-inner': {\n border: 0,\n margin: 0,\n padding: 0\n }\n };\n}\n\n// inline-flex child\nexport function getIconStyle({\n spacing\n}) {\n return css({\n display: 'flex',\n // icon size cannot grow and shrink\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing\n margin: spacing === 'none' ? 0 : innerMargin.icon,\n flexGrow: 0,\n flexShrink: 0,\n alignSelf: 'center',\n fontSize: 0,\n lineHeight: 0,\n userSelect: 'none'\n });\n}\n\n// inline-flex child\nexport function getContentStyle({\n spacing\n}) {\n return css({\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage-spacing\n margin: spacing === 'none' ? 0 : innerMargin.content,\n // content can grow and shrink\n flexGrow: 1,\n flexShrink: 1,\n // ellipsis for overflow text\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n });\n}\nexport function getFadingCss({\n hasOverlay\n}) {\n return css({\n opacity: hasOverlay ? 0 : 1,\n transition: 'opacity 0.3s'\n });\n}\nexport const overlayCss = {\n // stretching to full width / height of button\n // this is important as we need it to still block\n // event if clicking in the button's own padding\n position: 'absolute',\n left: 0,\n top: 0,\n right: 0,\n bottom: 0,\n // Putting all children in the center\n display: 'flex',\n justifyContent: 'center',\n alignItems: 'center'\n};","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\nimport React, { useCallback, useContext, useEffect, useRef } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { usePlatformLeafEventHandler } from '@atlaskit/analytics-next';\nimport noop from '@atlaskit/ds-lib/noop';\nimport useAutoFocus from '@atlaskit/ds-lib/use-auto-focus';\nimport FocusRing from '@atlaskit/focus-ring';\n// eslint-disable-next-line no-duplicate-imports\nimport InteractionContext from '@atlaskit/interaction-context';\nimport { N500 } from '@atlaskit/theme/colors';\nimport blockEvents from './block-events';\nimport { getContentStyle, getFadingCss, getIconStyle, overlayCss } from './css';\n\n// Disabled buttons will still publish events for nested elements in webkit.\n// We are disabling pointer events on child elements so that\n// the button will always be the target of events\n// Note: firefox does not have this behaviour for child elements\nconst noPointerEventsOnChildrenCss = {\n '> *': {\n pointerEvents: 'none'\n }\n};\nexport default /*#__PURE__*/React.forwardRef(function ButtonBase(props, ref) {\n const {\n appearance = 'default',\n buttonCss,\n spacing = 'default',\n autoFocus = false,\n isDisabled = false,\n shouldFitContainer = false,\n isSelected = false,\n iconBefore,\n iconAfter,\n children,\n className,\n href,\n overlay,\n tabIndex = 0,\n type = !href ? 'button' : undefined,\n onMouseDown: providedOnMouseDown = noop,\n onClick: providedOnClick = noop,\n // use the provided component prop,\n // else default to anchor if there is a href, and button if there is no href\n component: Component = href ? 'a' : 'button',\n testId,\n interactionName,\n // I don't think this should be in button, but for now it is\n analyticsContext,\n ...rest\n } = props;\n const ourRef = useRef();\n const setRef = useCallback(node => {\n ourRef.current = node;\n if (ref == null) {\n return;\n }\n if (typeof ref === 'function') {\n ref(node);\n return;\n }\n\n // @ts-ignore\n ref.current = node;\n }, [ourRef, ref]);\n\n // Cross browser auto focusing is pretty broken, so we are doing it ourselves\n useAutoFocus(ourRef, autoFocus);\n const interactionContext = useContext(InteractionContext);\n const handleClick = useCallback((e, analyticsEvent) => {\n interactionContext && interactionContext.tracePress(interactionName, e.timeStamp);\n providedOnClick(e, analyticsEvent);\n }, [providedOnClick, interactionContext, interactionName]);\n const onClick = usePlatformLeafEventHandler({\n fn: handleClick,\n action: 'clicked',\n componentName: 'button',\n packageName: \"@atlaskit/button\",\n packageVersion: \"16.7.5\",\n analyticsData: analyticsContext\n });\n\n // Button currently calls preventDefault, which is not standard button behaviour\n const onMouseDown = useCallback(event => {\n event.preventDefault();\n providedOnMouseDown(event);\n }, [providedOnMouseDown]);\n\n // Lose focus when becoming disabled (standard button behaviour)\n useEffect(() => {\n const el = ourRef.current;\n if (isDisabled && el && el === document.activeElement) {\n el.blur();\n }\n }, [isDisabled]);\n\n // we are 'disabling' input with a button when there is an overlay\n const hasOverlay = Boolean(overlay);\n const fadeCss = css(getFadingCss({\n hasOverlay\n }));\n const isInteractive = !isDisabled && !hasOverlay;\n\n /**\n * HACK: Spinner needs to have different colours in the \"new\" tokens design compared to the old design.\n * For now, while we support both, these styles reach into Spinner when a theme is set, applies the right color.\n * Ticket to remove: https://product-fabric.atlassian.net/browse/DSP-2067\n */\n var spinnerHackCss = {};\n if (isSelected || isDisabled || appearance === 'warning') {\n spinnerHackCss = {\n '[data-theme] & circle': {\n stroke: `${isSelected || isDisabled ? `var(--ds-icon-subtle, ${N500})` : `var(--ds-icon-warning-inverse, ${N500})`} !important`\n }\n };\n }\n return jsx(FocusRing, null, jsx(Component, _extends({}, rest, {\n css: [buttonCss, isInteractive ? null : noPointerEventsOnChildrenCss],\n className: className,\n ref: setRef,\n onClick: onClick,\n onMouseDown: onMouseDown,\n disabled: isDisabled,\n href: isInteractive ? href : undefined\n // using undefined so that the property doesn't exist when false\n ,\n \"data-has-overlay\": hasOverlay ? true : undefined,\n \"data-testid\": testId,\n type: type\n // Adding a tab index so element is always focusable, even when not a \n \n \n \n \n \n \n );\n}\nconst Root = styled.div`\n margin: 10px 10px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n position: relative;\n font-family: Charlie Text, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,\n Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n`;\nconst ContactUs = styled.div`\n div {\n a {\n color: #0065ff;\n text-decoration: none;\n cursor: pointer;\n }\n }\n`;\nconst Bar = styled.div`\n width: 130px;\n border-bottom: 1px solid #dfe1e6;\n height: 1px;\n margin-top: 20px;\n margin-bottom: 10px;\n`;\n","/*! js-cookie v3.0.5 | MIT */\n/* eslint-disable no-var */\nfunction assign (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n for (var key in source) {\n target[key] = source[key];\n }\n }\n return target\n}\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\nvar defaultConverter = {\n read: function (value) {\n if (value[0] === '\"') {\n value = value.slice(1, -1);\n }\n return value.replace(/(%[\\dA-F]{2})+/gi, decodeURIComponent)\n },\n write: function (value) {\n return encodeURIComponent(value).replace(\n /%(2[346BF]|3[AC-F]|40|5[BDE]|60|7[BCD])/g,\n decodeURIComponent\n )\n }\n};\n/* eslint-enable no-var */\n\n/* eslint-disable no-var */\n\nfunction init (converter, defaultAttributes) {\n function set (name, value, attributes) {\n if (typeof document === 'undefined') {\n return\n }\n\n attributes = assign({}, defaultAttributes, attributes);\n\n if (typeof attributes.expires === 'number') {\n attributes.expires = new Date(Date.now() + attributes.expires * 864e5);\n }\n if (attributes.expires) {\n attributes.expires = attributes.expires.toUTCString();\n }\n\n name = encodeURIComponent(name)\n .replace(/%(2[346B]|5E|60|7C)/g, decodeURIComponent)\n .replace(/[()]/g, escape);\n\n var stringifiedAttributes = '';\n for (var attributeName in attributes) {\n if (!attributes[attributeName]) {\n continue\n }\n\n stringifiedAttributes += '; ' + attributeName;\n\n if (attributes[attributeName] === true) {\n continue\n }\n\n // Considers RFC 6265 section 5.2:\n // ...\n // 3. If the remaining unparsed-attributes contains a %x3B (\";\")\n // character:\n // Consume the characters of the unparsed-attributes up to,\n // not including, the first %x3B (\";\") character.\n // ...\n stringifiedAttributes += '=' + attributes[attributeName].split(';')[0];\n }\n\n return (document.cookie =\n name + '=' + converter.write(value, name) + stringifiedAttributes)\n }\n\n function get (name) {\n if (typeof document === 'undefined' || (arguments.length && !name)) {\n return\n }\n\n // To prevent the for loop in the first place assign an empty array\n // in case there are no cookies at all.\n var cookies = document.cookie ? document.cookie.split('; ') : [];\n var jar = {};\n for (var i = 0; i < cookies.length; i++) {\n var parts = cookies[i].split('=');\n var value = parts.slice(1).join('=');\n\n try {\n var found = decodeURIComponent(parts[0]);\n jar[found] = converter.read(value, found);\n\n if (name === found) {\n break\n }\n } catch (e) {}\n }\n\n return name ? jar[name] : jar\n }\n\n return Object.create(\n {\n set,\n get,\n remove: function (name, attributes) {\n set(\n name,\n '',\n assign({}, attributes, {\n expires: -1\n })\n );\n },\n withAttributes: function (attributes) {\n return init(this.converter, assign({}, this.attributes, attributes))\n },\n withConverter: function (converter) {\n return init(assign({}, this.converter, converter), this.attributes)\n }\n },\n {\n attributes: { value: Object.freeze(defaultAttributes) },\n converter: { value: Object.freeze(converter) }\n }\n )\n}\n\nvar api = init(defaultConverter, { path: '/' });\n/* eslint-enable no-var */\n\nexport { api as default };\n","import React, { createContext, useContext, PropsWithChildren } from 'react';\n\nexport type SignUpFormGlobalConfiguration = {\n readonly confirmationPageUrl: string;\n readonly checkEmailPageUrl: string;\n readonly newUserSignupRedirectUrl?: string;\n};\n\nexport type SignUpFormGlobalConfigurationContextProps = {\n readonly confirmationPageUrl?: string;\n readonly checkEmailPageUrl?: string;\n readonly newUserSignupRedirectUrl?: string;\n};\n\nexport const SignUpGlobalConfigurationContext =\n createContext({});\n\nexport function SignUpGlobalConfigurationContextProvider({\n children,\n ...props\n}: PropsWithChildren) {\n return (\n \n {children}\n \n );\n}\n\nexport function useSignUpFormGlobalConfiguration(): SignUpFormGlobalConfiguration {\n const { confirmationPageUrl, checkEmailPageUrl, newUserSignupRedirectUrl } =\n useContext(SignUpGlobalConfigurationContext);\n\n return {\n confirmationPageUrl:\n confirmationPageUrl ?? '/wac/ondemand/signup/confirmation',\n checkEmailPageUrl: checkEmailPageUrl ?? '/wac/ondemand/signup/checkemail',\n newUserSignupRedirectUrl: newUserSignupRedirectUrl\n };\n}\n","import { Environment, Url } from '@atlassiansox/bxpkit-core';\nimport { Storage } from '@atlassiansox/bxpkit-core';\nimport type { AnalyticsTrackType } from '@atlassiansox/bxpkit-core';\nimport OriginTracing from '@atlassiansox/origin-tracing';\nimport { SignupLayoutAnalyticsType } from '../../model';\n\n/**\n * Analytics Singleton for Signup Layout\n */\n\nexport class SignupLayoutAnalytics {\n public static instance: SignupLayoutAnalytics;\n\n public instance?: SignupLayoutAnalytics;\n public isLoggedIn: boolean;\n public analyticsTrack: AnalyticsTrackType;\n public queryParameters: { [key: string]: string };\n public performanceStartTime?: number;\n public signInUserOrigin?: OriginTracing;\n public switchUserOrigin?: OriginTracing;\n public signInAccountUrl = '';\n public switchAccountUrl = '';\n public originAnalyticsAttributes?: any;\n\n public constructor({\n isLoggedIn,\n analyticsTrack,\n performanceStartTime\n }: SignupLayoutAnalyticsType) {\n this.isLoggedIn = isLoggedIn;\n this.analyticsTrack = analyticsTrack;\n this.performanceStartTime = performanceStartTime;\n this.queryParameters = Url.getUrlParams() || {};\n\n if (SignupLayoutAnalytics.instance) {\n // only use 1/first-created instance (this is a singleton)\n return SignupLayoutAnalytics.instance;\n }\n\n SignupLayoutAnalytics.instance = this;\n this._initOrigin();\n this._onloadAnalytics();\n }\n\n /**\n * Initialize Origin ID Tracing values\n */\n\n public _initOrigin() {\n this.signInUserOrigin = new OriginTracing({ product: 'wac-signup-login' });\n this.switchUserOrigin = new OriginTracing({ product: 'wac-signup-switch' });\n\n this.signInAccountUrl = Environment.getIdSigninUrl(\n this.signInUserOrigin.encode(),\n undefined,\n this.queryParameters['continue']\n );\n this.switchAccountUrl = Environment.getIdSwitchUserUrl(\n this.switchUserOrigin.encode()\n );\n\n this.originAnalyticsAttributes = {\n signInUser: this.signInUserOrigin.toAnalyticsAttributes({\n hasGeneratedId: true\n }),\n switchUser: this.switchUserOrigin.toAnalyticsAttributes({\n hasGeneratedId: true\n })\n };\n }\n\n /**\n * Events to fired when the component has mounted\n */\n\n public _onloadAnalytics() {\n const { segment, newRelic } = this.analyticsTrack;\n\n segment('bxp.try.signup.reactversionshown', {});\n newRelic.attribute('isReact', true);\n newRelic.attribute(\n 'anonymous_id',\n (Storage.getCookie('ajs_anonymous_id') || '').replace(/\"/g, '')\n );\n ['edition', 'product', 'bundle', 'coupon'].forEach((paramName) =>\n newRelic.attribute(\n paramName,\n this.queryParameters[paramName] || `no ${paramName}`\n )\n );\n\n // performance\n if (this.performanceStartTime) {\n const performanceDuration = performance.now() - this.performanceStartTime;\n segment('bxp.formCloudSignup.timeToFormReady', {\n performanceDuration,\n isLoggedIn: this.isLoggedIn\n });\n newRelic.attribute('isLoggedIn', this.isLoggedIn);\n newRelic.action('bxp.formCloudSignup.timeToFormReady', {\n performanceDuration,\n isLoggedIn: this.isLoggedIn\n });\n }\n }\n\n /**\n * Getters\n */\n\n public getOriginTraces() {\n return {\n signInAccountUrl: this.signInAccountUrl || '',\n switchAccountUrl: this.switchAccountUrl || '',\n originAnalyticsAttributes: this.originAnalyticsAttributes\n };\n }\n\n /**\n * Custom Events/Attributes\n */\n\n public setIsMigration(isMigration: boolean) {\n const { newRelic } = this.analyticsTrack;\n newRelic.attribute('isMigration', isMigration);\n }\n\n public trackBbSignupPerf() {\n const { segment } = this.analyticsTrack;\n if (this.performanceStartTime) {\n const performanceDuration = performance.now() - this.performanceStartTime;\n segment('bxp.formCloudSignup.timeToFormReadyBitbucketTeams', {\n performanceDuration,\n isLoggedIn: this.isLoggedIn\n });\n }\n }\n}\n","export const WAC_SIGNUP_FORM_KEY_BASE = 'WacSignupForm.';\nexport const SIGNUP_OFFERING_LABEL_KEY_BASE =\n WAC_SIGNUP_FORM_KEY_BASE + 'signupOffering';\nexport const TRIAL_DURATION_LABEL_KEY_BASE =\n SIGNUP_OFFERING_LABEL_KEY_BASE + 'TrialLengthText';\nexport const TRIAL_DURATION_LABEL_KEY_EXISTING_SITE =\n TRIAL_DURATION_LABEL_KEY_BASE + 'ExistingSite';\nexport const TRIAL_DURATION_LABEL_KEY_NEW_SITE =\n TRIAL_DURATION_LABEL_KEY_BASE + 'NewSite';\nexport const SIGNUP_OFFERING_LABEL_KEY_PREFIX =\n SIGNUP_OFFERING_LABEL_KEY_BASE + 'IncludesFeatures';\nexport const SIGNUP_SIDE_INFO_HEADER_PREFIX =\n WAC_SIGNUP_FORM_KEY_BASE + 'sideInfoHeader';\n\nexport const [\n CONFLUENCE,\n JIRA_CORE,\n JSW,\n JSD,\n OPSGENIE,\n BITBUCKET,\n STATUSPAGE,\n DEVELOPER_MODE,\n DEVOPS,\n TEAM_CENTRAL,\n JIRA_PRODUCT_DISCOVERY,\n COMPASS,\n FABRIC,\n BEACON,\n JIRA_FAMILY\n] = [\n 'Confluence',\n 'JiraCore',\n 'JSW',\n 'JSD',\n 'Opsgenie',\n 'Bitbucket',\n 'Statuspage',\n 'DeveloperMode',\n 'Devops',\n 'Townsquare',\n 'JiraProductDiscovery',\n 'Compass',\n 'Canvas',\n 'Beacon',\n 'Jira'\n];\n\nexport const PRODUCT_NAMES = [\n JSD,\n OPSGENIE,\n BITBUCKET,\n STATUSPAGE,\n DEVELOPER_MODE,\n DEVOPS,\n CONFLUENCE,\n TEAM_CENTRAL,\n JSW,\n JIRA_PRODUCT_DISCOVERY,\n COMPASS,\n FABRIC,\n BEACON\n];\nexport const STANDARD_EDITION_LABEL_KEY = 'Standard';\nexport const FREE_EDITION_LABEL_KEY = 'Free';\nexport const PREMIUM_EDITION_LABEL_KEY = 'Premium';\nexport const BETA_EDITION_LABEL_KEY = 'Beta';\nexport const STANDARD_EDITION_HALP_PROMO_KEY = 'Halp'; // SPICE-738 JSM promo for existing HALP users\nexport const BUNDLE_LABEL_KEY = 'Bundle';\nexport const MIGRATION_USERS_LABEL_KEY = 'userTypeUsersLabel';\nexport const MIGRATION_AGENTS_LABEL_KEY = 'userTypeAgentsLabel';\nexport const EDITION_LABEL_ARRAY = [\n STANDARD_EDITION_LABEL_KEY,\n FREE_EDITION_LABEL_KEY,\n PREMIUM_EDITION_LABEL_KEY,\n STANDARD_EDITION_HALP_PROMO_KEY\n];\n\nconst SOCIAL_PROOF_KEY_PREFIX =\n 'WacSignupForm.signupOfferingIncludesFeaturesSocialProof';\n\nexport const SOCIAL_PROOF_TEXT_KEY_PREFIX = SOCIAL_PROOF_KEY_PREFIX + 'Text';\nexport const SOCIAL_PROOF_SUPPORT_IMAGE_KEY_PREFIX =\n SOCIAL_PROOF_KEY_PREFIX + 'Image';\nexport const SOCIAL_PROOF_HERO_IMAGE_KEY_PREFIX =\n SOCIAL_PROOF_KEY_PREFIX + 'HeroImage';\n\nexport const FIRST_IMPRESSION_JIRA_SOFTWARE_FEATURE_LIST = 'JSWFI';\nexport const FIRST_IMPRESSION_JIRA_SERVICE_DESK_FEATURE_LIST = 'JSDFI';\n","import { Environment } from '@atlassiansox/bxpkit-core';\nimport { SignupLayoutAnalytics } from '..';\nimport {\n CheckExtendedTrialAvailabilityOptionsType,\n CheckExtendedTrialAvailabilityResponseType,\n GetMigrationDataOptionsType,\n MigrationDataType,\n SitesType\n} from '../../model';\nimport {\n MIGRATION_AGENTS_LABEL_KEY,\n MIGRATION_USERS_LABEL_KEY,\n WAC_SIGNUP_FORM_KEY_BASE\n} from '../../layouts/legacy/view/utility/sign-up-layout-container/constants';\n\nexport const getMigrationData = async ({\n queryParameters,\n analyticsTrack,\n productKeys,\n userInfo,\n labels\n}: GetMigrationDataOptionsType): Promise => {\n const analytics = new SignupLayoutAnalytics({\n analyticsTrack,\n isLoggedIn: userInfo?.isLoggedIn\n });\n const migrationSourceUuid = queryParameters.hasOwnProperty(\n 'migrationSourceUuid'\n )\n ? queryParameters.migrationSourceUuid\n : null;\n let product = null;\n let sites: SitesType = null;\n\n if (\n migrationSourceUuid &&\n userInfo.email &&\n userInfo.sites &&\n productKeys &&\n productKeys.length > 0 &&\n productKeys[0].productContent\n ) {\n product = productKeys[0].productContent[0];\n sites = userInfo.sites || [];\n } else {\n return Promise.resolve(null);\n }\n\n const humanUsageType = (usageType: string) => {\n switch (usageType) {\n case 'remote-agent-tier':\n case 'bamboo-agent-tier':\n case 'servicedesk-agent-tier':\n return labels[\n `${WAC_SIGNUP_FORM_KEY_BASE}${MIGRATION_AGENTS_LABEL_KEY}`\n ];\n default:\n return labels[\n `${WAC_SIGNUP_FORM_KEY_BASE}${MIGRATION_USERS_LABEL_KEY}`\n ];\n }\n };\n\n const cloudIds = sites ? sites.map((site) => site.cloudId) : null;\n\n if (!product?.productKey || !cloudIds) {\n return Promise.resolve(null);\n }\n\n const data = await checkExtendedTrialAvailability({\n migrationSourceUuid,\n productKey: product.productKey,\n cloudIds\n }).catch((err: Error) => {\n // tslint:disable-next-line:no-console\n console.log(err);\n return null;\n });\n\n if (!data) {\n return Promise.resolve(null);\n }\n\n const status = data.cloudCreation;\n\n const eligibleSites = data.sites\n ? Object.keys(data.sites).filter((cloudId) => data.sites[cloudId].available)\n : [];\n\n analytics.setIsMigration(true);\n return Promise.resolve({\n migrationSourceUuid,\n migrationUserLimit: data.usageLimit || 0,\n migrationUserType: humanUsageType(data.usageType),\n migrationProductName: product.productName,\n migrationSites: eligibleSites,\n invalidMigration: !status.available,\n claimedMigration: status.reason === 'ALREADY_CLAIMED'\n });\n};\n\nconst checkExtendedTrialAvailability = async ({\n migrationSourceUuid,\n productKey,\n cloudIds\n}: CheckExtendedTrialAvailabilityOptionsType): Promise => {\n const url = `${Environment.getHamletUrl()}/1.0/public/account/${migrationSourceUuid}/extendedTrial/availability`;\n const options = {\n method: 'POST',\n headers: { 'Content-Type': 'application/json' },\n body: JSON.stringify({\n productKey,\n cloudIds\n }),\n withCredentials: true\n };\n\n const response = await fetch(url, options);\n if (response.ok) {\n return Promise.resolve(response.json());\n } else {\n return Promise.resolve();\n }\n};\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) || // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = { ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n\n this.payload = props.payload;\n }\n\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n\n if (typeof updater === 'object') {\n this.payload = { ...this.payload,\n ...updater\n };\n }\n\n return this;\n }\n\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) || // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n\n return null;\n }\n\n const context = [...this.context];\n const handlers = [...this.handlers];\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n\n return;\n }\n\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n\n return this;\n }\n\n return super.update(updater);\n }\n\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","export var SIZES_MAP = {\n xsmall: 8,\n small: 16,\n medium: 24,\n large: 48,\n xlarge: 96,\n};\nexport var DEFAULT_SIZE = SIZES_MAP.small;\n//# sourceMappingURL=constants.js.map","import { __makeTemplateObject } from \"tslib\";\nimport styled, { keyframes, css } from 'styled-components';\n/* Define keyframes statically to prevent a perfomance issue in styled components v1 where the keyframes function\n * does not cache previous values resulting in each spinner injecting the same keyframe definition\n * in the DOM.\n * This can be reverted to use dynamic keyframes when we upgrade to styled components v2\n */\nvar keyframeNames = {\n noop: keyframes(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n from { opacity: 0; }\\n to { opacity: 0; }\\n \"], [\"\\n from { opacity: 0; }\\n to { opacity: 0; }\\n \"]))),\n enterRotate: keyframes(templateObject_2 || (templateObject_2 = __makeTemplateObject([\"\\n from { transform: rotate(50deg); }\\n to { transform: rotate(230deg); }\\n \"], [\"\\n from { transform: rotate(50deg); }\\n to { transform: rotate(230deg); }\\n \"]))),\n leaveRotate: keyframes(templateObject_3 || (templateObject_3 = __makeTemplateObject([\"\\n from { transform: rotate(230deg); }\\n to { transform: rotate(510deg); }\\n \"], [\"\\n from { transform: rotate(230deg); }\\n to { transform: rotate(510deg); }\\n \"]))),\n leaveOpacity: keyframes(templateObject_4 || (templateObject_4 = __makeTemplateObject([\"\\n from { opacity: 1; }\\n to { opacity: 0; }\\n \"], [\"\\n from { opacity: 1; }\\n to { opacity: 0; }\\n \"]))),\n};\nexport var getContainerAnimation = function (_a) {\n var delay = _a.delay, phase = _a.phase;\n if (phase === 'DELAY') {\n /* This hides the spinner and allows us to use animationend events to move to the next phase in\n * the same way we do with the other lifecycle stages */\n return css(templateObject_5 || (templateObject_5 = __makeTemplateObject([\"\\n animation: \", \"s \", \";\\n \"], [\"\\n animation: \", \"s \", \";\\n \"])), delay, keyframeNames.noop);\n }\n if (phase === 'ENTER' || phase === 'IDLE') {\n return css(templateObject_6 || (templateObject_6 = __makeTemplateObject([\"\\n animation: 1s ease-in-out forwards \", \";\\n \"], [\"\\n animation: 1s ease-in-out forwards \", \";\\n \"])), keyframeNames.enterRotate);\n }\n if (phase === 'LEAVE') {\n return css(templateObject_7 || (templateObject_7 = __makeTemplateObject([\"\\n animation: 0.53s ease-in-out forwards \", \",\\n 0.2s ease-in-out 0.33s \", \";\\n \"], [\"\\n animation: 0.53s ease-in-out forwards \", \",\\n 0.2s ease-in-out 0.33s \", \";\\n \"])), keyframeNames.leaveRotate, keyframeNames.leaveOpacity);\n }\n return '';\n};\nvar getSize = function (_a) {\n var size = _a.size;\n return size + \"px\";\n};\nvar Container = styled.span(templateObject_8 || (templateObject_8 = __makeTemplateObject([\"\\n \", \"\\n display: flex;\\n height: \", \";\\n width: \", \";\\n\\n /* Rapidly creating and removing spinners will result in multiple spinners being visible while\\n * they complete their exit animations. This rules hides the spinner if another one has been\\n * added. */\\n div + & {\\n display: none;\\n }\\n\"], [\"\\n \", \"\\n display: flex;\\n height: \", \";\\n width: \", \";\\n\\n /* Rapidly creating and removing spinners will result in multiple spinners being visible while\\n * they complete their exit animations. This rules hides the spinner if another one has been\\n * added. */\\n div + & {\\n display: none;\\n }\\n\"])), getContainerAnimation, getSize, getSize);\nContainer.displayName = 'SpinnerContainer';\nexport default Container;\nvar templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8;\n//# sourceMappingURL=styledContainer.js.map","import { __makeTemplateObject, __rest } from \"tslib\";\nimport styled, { css, keyframes } from 'styled-components';\nimport { themed } from '@atlaskit/theme/components';\nimport { N500, N0 } from '@atlaskit/theme/colors';\nimport { SIZES_MAP } from './constants';\nvar getStrokeWidth = function (size) { return Math.round(size / 10); };\nvar getStrokeCircumference = function (size) {\n var strokeWidth = getStrokeWidth(size);\n var strokeRadius = size / 2 - strokeWidth / 2;\n return Math.PI * strokeRadius * 2;\n};\n/* Define keyframes statically to prevent a perfomance issue in styled components v1 where the keyframes function\n * does not cache previous values resulting in each spinner injecting the same keyframe definition\n * in the DOM.\n * This can be reverted to dynamic keyframes when we upgrade to styled components v2\n */\nvar keyframeNames = {\n noop: keyframes(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n from { opacity: 0; }\\n to { opacity: 0; }\\n \"], [\"\\n from { opacity: 0; }\\n to { opacity: 0; }\\n \"]))),\n rotate: keyframes(templateObject_2 || (templateObject_2 = __makeTemplateObject([\"\\n to { transform: rotate(360deg); }\\n \"], [\"\\n to { transform: rotate(360deg); }\\n \"]))),\n enterOpacity: keyframes(templateObject_3 || (templateObject_3 = __makeTemplateObject([\"\\n from { opacity: 0; }\\n to { opacity: 1; }\\n \"], [\"\\n from { opacity: 0; }\\n to { opacity: 1; }\\n \"]))),\n smallEnterStroke: keyframes(templateObject_4 || (templateObject_4 = __makeTemplateObject([\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \", \"px; }\\n \"], [\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \",\n \"px; }\\n \"])), getStrokeCircumference(SIZES_MAP.small), getStrokeCircumference(SIZES_MAP.small) *\n 0.8),\n mediumEnterStroke: keyframes(templateObject_5 || (templateObject_5 = __makeTemplateObject([\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \", \"px; }\\n \"], [\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \",\n \"px; }\\n \"])), getStrokeCircumference(SIZES_MAP.medium), getStrokeCircumference(SIZES_MAP.medium) *\n 0.8),\n largeEnterStroke: keyframes(templateObject_6 || (templateObject_6 = __makeTemplateObject([\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \", \"px; }\\n \"], [\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \",\n \"px; }\\n \"])), getStrokeCircumference(SIZES_MAP.large), getStrokeCircumference(SIZES_MAP.large) *\n 0.8),\n xlargeEnterStroke: keyframes(templateObject_7 || (templateObject_7 = __makeTemplateObject([\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \", \"px; }\\n \"], [\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \",\n \"px; }\\n \"])), getStrokeCircumference(SIZES_MAP.xlarge), getStrokeCircumference(SIZES_MAP.xlarge) *\n 0.8),\n};\n/* If a standard size is used, we can use one of our statically defined keyframes, otherwise\n * we're forced to dynamically create the keyframe and incur a performance cost.\n */\nvar getEnterStrokeKeyframe = function (size) {\n var standardSizeName = Object.keys(SIZES_MAP).find(function (sizeName) { return size === SIZES_MAP[sizeName]; });\n if (standardSizeName) {\n return keyframeNames[standardSizeName + \"EnterStroke\"];\n }\n var circumference = getStrokeCircumference(size);\n return keyframes(templateObject_8 || (templateObject_8 = __makeTemplateObject([\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \", \"px; }\\n \"], [\"\\n from { stroke-dashoffset: \", \"px; }\\n to { stroke-dashoffset: \", \"px; }\\n \"])), circumference, circumference * 0.8);\n};\nvar spinnerColor = themed({ light: N500, dark: N0 });\nvar spinnerColorInverted = themed({ light: N0, dark: N0 });\nexport var getStrokeColor = function (_a) {\n var invertColor = _a.invertColor, props = __rest(_a, [\"invertColor\"]);\n return invertColor ? spinnerColorInverted(props) : spinnerColor(props);\n};\nexport var svgStyles = css(templateObject_12 || (templateObject_12 = __makeTemplateObject([\"\\n \", \";\\n\"], [\"\\n \",\n \";\\n\"])), function (props) {\n var circumference = getStrokeCircumference(props.size);\n var animation = function (animProps) {\n var baseAnimation = '0.86s cubic-bezier(0.4, 0.15, 0.6, 0.85) infinite';\n if (animProps.phase === 'ENTER') {\n return css(templateObject_9 || (templateObject_9 = __makeTemplateObject([\"\\n animation: \", \" \", \",\\n 0.8s ease-in-out \", \",\\n 0.2s ease-in-out \", \";\\n \"], [\"\\n animation: \", \" \", \",\\n 0.8s ease-in-out \", \",\\n 0.2s ease-in-out \", \";\\n \"])), baseAnimation, keyframeNames.rotate, getEnterStrokeKeyframe(animProps.size), keyframeNames.enterOpacity);\n }\n return css(templateObject_10 || (templateObject_10 = __makeTemplateObject([\"\\n animation: \", \" \", \";\\n \"], [\"\\n animation: \", \" \", \";\\n \"])), baseAnimation, keyframeNames.rotate);\n };\n return css(templateObject_11 || (templateObject_11 = __makeTemplateObject([\"\\n \", \"\\n fill: none;\\n stroke: \", \";\\n stroke-dasharray: \", \"px;\\n stroke-dashoffset: \", \"px;\\n stroke-linecap: round;\\n stroke-width: \", \"px;\\n transform-origin: center;\\n \"], [\"\\n \", \"\\n fill: none;\\n stroke: \", \";\\n stroke-dasharray: \", \"px;\\n stroke-dashoffset: \", \"px;\\n stroke-linecap: round;\\n stroke-width: \", \"px;\\n transform-origin: center;\\n \"])), animation, getStrokeColor, circumference, circumference * 0.8, getStrokeWidth(props.size));\n});\nvar Svg = styled.svg(templateObject_13 || (templateObject_13 = __makeTemplateObject([\"\\n \", \";\\n\"], [\"\\n \", \";\\n\"])), svgStyles);\nSvg.displayName = 'SpinnerSvg';\nexport default Svg;\nvar templateObject_1, templateObject_2, templateObject_3, templateObject_4, templateObject_5, templateObject_6, templateObject_7, templateObject_8, templateObject_9, templateObject_10, templateObject_11, templateObject_12, templateObject_13;\n//# sourceMappingURL=styledSvg.js.map","import { __extends, __makeTemplateObject } from \"tslib\";\nimport React, { Component } from 'react';\nimport { Transition } from 'react-transition-group';\nimport styled from 'styled-components';\nimport { SIZES_MAP, DEFAULT_SIZE } from './constants';\nimport Container from './styledContainer';\nimport Svg from './styledSvg';\nvar Outer = styled.span(templateObject_1 || (templateObject_1 = __makeTemplateObject([\"\\n display: inline-block;\\n vertical-align: middle;\\n\"], [\"\\n display: inline-block;\\n vertical-align: middle;\\n\"])));\nOuter.displayName = 'Outer';\nvar Spinner = /** @class */ (function (_super) {\n __extends(Spinner, _super);\n function Spinner(props) {\n var _this = _super.call(this, props) || this;\n _this.transitionNode = null;\n _this.enter = function () {\n var delay = _this.props.delay;\n if (delay) {\n _this.setState({ phase: 'DELAY' });\n }\n else {\n _this.setState({ phase: 'ENTER' });\n }\n };\n _this.idle = function () {\n _this.setState({ phase: 'IDLE' });\n };\n _this.exit = function () {\n _this.setState({ phase: 'LEAVE' });\n };\n _this.endListener = function (node, done) {\n var executeCallback = function (event) {\n // ignore animation events on the glyph\n if (event.target.tagName === 'svg') {\n return;\n }\n if (_this.state.phase === 'DELAY') {\n _this.setState({ phase: 'ENTER' });\n _this.endListener(node, done);\n }\n else {\n done();\n }\n return node && node.removeEventListener('animationend', executeCallback);\n };\n // FIX - jest-emotion doesn't recognise the DOM node so it can't add\n // the eventListener in the @atlaskit/button tests.\n // Should be fixed when we move to emotion@10\n if (node && node.addEventListener) {\n return node.addEventListener('animationend', executeCallback);\n }\n return done();\n };\n _this.validateSize = function () {\n var size = _this.props.size;\n var spinnerSize = SIZES_MAP[size] || size;\n return typeof spinnerSize === 'number' ? spinnerSize : DEFAULT_SIZE;\n };\n _this.state = {\n phase: '',\n };\n return _this;\n }\n Spinner.prototype.render = function () {\n var _this = this;\n var phase = this.state.phase;\n var _a = this.props, delay = _a.delay, invertColor = _a.invertColor, isCompleting = _a.isCompleting, testId = _a.testId;\n var size = this.validateSize();\n var strokeWidth = Math.round(size / 10);\n var strokeRadius = size / 2 - strokeWidth / 2;\n return (React.createElement(Outer, null,\n React.createElement(Transition, { addEndListener: this.endListener, appear: true, in: !isCompleting, mountOnEnter: true, unmountOnExit: true, onEnter: this.enter, onEntered: this.idle, onExit: this.exit, onExited: function () { return _this.props.onComplete(); }, timeout: 0, ref: function (node) {\n _this.transitionNode = node;\n } },\n React.createElement(Container, { delay: delay / 1000, phase: phase, size: size, \"data-testid\": testId },\n React.createElement(Svg, { focusable: \"false\", height: size, invertColor: invertColor, phase: phase, size: size, viewBox: \"0 0 \" + size + \" \" + size, width: size, xmlns: \"http://www.w3.org/2000/svg\" },\n React.createElement(\"circle\", { cx: size / 2, cy: size / 2, r: strokeRadius }))))));\n };\n Spinner.defaultProps = {\n delay: 100,\n isCompleting: false,\n invertColor: false,\n onComplete: function () { },\n size: 'medium',\n };\n return Spinner;\n}(Component));\nexport default Spinner;\nvar templateObject_1;\n//# sourceMappingURL=index.js.map","/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = {\n ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n this.payload = props.payload;\n }\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = {\n ...this.payload,\n ...updater\n };\n }\n return this;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n return null;\n }\n const context = [...this.context];\n const handlers = [...this.handlers];\n\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n return;\n }\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n return this;\n }\n return super.update(updater);\n }\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafEventHandler({\n fn,\n action,\n componentName,\n actionSubject,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n\n // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(value => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: actionSubject || componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n });\n\n // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context);\n\n // fire an event on the atlaskit channel\n const clone = analyticsEvent.clone();\n if (clone) {\n clone.fire('atlaskit');\n }\n fnRef.current(value, analyticsEvent);\n }, [\n // These are strings and won't change\n action, componentName, actionSubject, packageName, packageVersion,\n // This function is memoized in the context\n createAnalyticsEvent,\n // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","import { createTheme } from '../utils/create-theme';\n\n// Create default global light theme\nconst {\n Provider,\n Consumer,\n useTheme\n} = createTheme(() => ({\n mode: 'light'\n}));\nexport { useTheme as useGlobalTheme };\nexport default {\n Provider,\n Consumer\n};","import React, { createContext, useCallback, useContext } from 'react';\n/**\n * createTheme is used to create a set of Providers and Consumers for theming components.\n * - Takes a default theme function; this theme function gets a set of props, and returns tokens\n * based on those props. An example of this default theme function is one that produces the standard\n * appearance of the component\n * - Returns three things - a Provider that allow for additional themes to be applied, a Consumer\n * that can get the current theme and fetch it, and a custom hook - useTheme which provides an alternate (although functionally the same) API\n * to the Consumer.\n */\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n\n /**\n * Internally, Theme uses React Context, with internal providers and consumers.\n * The React Context passes only a function that gets props, and turns them into tokens. This\n * function gets mixed as more Providers with their own themes are added. This mixed function\n * is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n * the theme.\n */\n const ThemeContext = /*#__PURE__*/createContext(defaultGetTokens);\n function useTheme(themeProps) {\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n const tokens = themeFn(themeProps);\n return tokens;\n }\n\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const {\n children,\n ...themeProps\n } = props;\n\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = useTheme(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return /*#__PURE__*/React.createElement(React.Fragment, null, children(tokens));\n }\n\n /**\n * The Theme Provider takes regular nodes as its children, but also takes a *theme function*\n * - The theme function takes a set of props, as well as a function (getTokens) that can turn props into tokens.\n * - The getTokens function isn't called immediately - instead the props are passed\n * through a mix of parent theming functions\n * Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback(themeProps => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: mixedFn\n }, props.children);\n }\n return {\n Consumer,\n Provider,\n useTheme\n };\n}","var _ref, _process, _process$env, _process2, _process2$env;\n// We can't rely on NODE_ENV === 'test' if its value is already configured by the consumer to some other value, so better to use JEST_WORKER_ID\n// https://jestjs.io/docs/environment-variables#jest_worker_id\nconst TESTS_MODE = (_ref = (globalThis === null || globalThis === void 0 ? void 0 : (_process = globalThis.process) === null || _process === void 0 ? void 0 : (_process$env = _process.env) === null || _process$env === void 0 ? void 0 : _process$env.JEST_WORKER_ID) !== undefined) !== null && _ref !== void 0 ? _ref : false;\nconst DEBUG_MODE = !TESTS_MODE && (globalThis === null || globalThis === void 0 ? void 0 : (_process2 = globalThis.process) === null || _process2 === void 0 ? void 0 : (_process2$env = _process2.env) === null || _process2$env === void 0 ? void 0 : _process2$env.NODE_ENV) !== 'production';\nexport const debug = (...args) => {\n if (!DEBUG_MODE) {\n return;\n }\n\n // eslint-disable-next-line no-console\n console.debug(...args);\n};","import { debug } from './debug';\nconst pkgName = '@atlaskit/platform-feature-flags';\nexport const PFF_GLOBAL_KEY = '__PLATFORM_FEATURE_FLAGS__';\nconst hasProcessEnv = typeof process !== 'undefined' && typeof process.env !== 'undefined';\n\n// FF global overrides can be configured by test runners or Storybook\nconst ENV_ENABLE_PLATFORM_FF = hasProcessEnv ?\n// Use global \"process\" variable and process.env['FLAG_NAME'] syntax, so it can be replaced by webpack DefinePlugin\nprocess.env['ENABLE_PLATFORM_FF'] === 'true' : false;\n\n// STORYBOOK_ENABLE_PLATFORM_FF is included as storybook only allows env vars prefixed with STORYBOOK\n// https://github.com/storybookjs/storybook/issues/12270\n\nconst ENV_STORYBOOK_ENABLE_PLATFORM_FF = hasProcessEnv ?\n// Use global \"process\" variable and process.env['FLAG_NAME'] syntax, so it can be replaced by webpack DefinePlugin\nprocess.env['STORYBOOK_ENABLE_PLATFORM_FF'] === 'true' : false;\nconst ENABLE_GLOBAL_PLATFORM_FF_OVERRIDE = ENV_ENABLE_PLATFORM_FF || ENV_STORYBOOK_ENABLE_PLATFORM_FF;\nconst DEFAULT_PFF_GLOBAL = {\n // In development mode we want to capture any feature flag checks that happen using the default resolver and log this result when the resolver is replaced.\n // This is because evaluating feature flags when the resolver/FF client is loaded asynchronously could cause unexpected issues.\n earlyResolvedFlags: new Map(),\n booleanResolver: function (flagKey) {\n if (process.env.NODE_ENV !== 'production') {\n const unresolvedFlagCount = this.earlyResolvedFlags.get(flagKey) || 0;\n this.earlyResolvedFlags.set(flagKey, unresolvedFlagCount + 1);\n }\n return false;\n }\n};\nconst globalVar = typeof window !== 'undefined' ? window : globalThis;\nglobalVar[PFF_GLOBAL_KEY] = globalVar[PFF_GLOBAL_KEY] || DEFAULT_PFF_GLOBAL;\nexport function setBooleanResolver(resolver) {\n globalVar[PFF_GLOBAL_KEY].booleanResolver = resolver;\n if (process.env.NODE_ENV !== 'production') {\n var _globalVar$PFF_GLOBAL, _globalVar$PFF_GLOBAL2;\n if (((_globalVar$PFF_GLOBAL = globalVar[PFF_GLOBAL_KEY]) === null || _globalVar$PFF_GLOBAL === void 0 ? void 0 : (_globalVar$PFF_GLOBAL2 = _globalVar$PFF_GLOBAL.earlyResolvedFlags) === null || _globalVar$PFF_GLOBAL2 === void 0 ? void 0 : _globalVar$PFF_GLOBAL2.size) > 0) {\n debug(`[%s]: The following list of Feature Flags were called, the following number of times, before setBooleanResolver.`, pkgName, Array.from(globalVar[PFF_GLOBAL_KEY].earlyResolvedFlags.entries()));\n globalVar[PFF_GLOBAL_KEY].earlyResolvedFlags.clear();\n }\n }\n}\nexport function resolveBooleanFlag(flagKey) {\n if (ENABLE_GLOBAL_PLATFORM_FF_OVERRIDE) {\n debug('[%s]: The feature flags were enabled while running tests. The flag \"%s\" will be always enabled.', pkgName, flagKey);\n return true;\n }\n try {\n var _globalVar$PFF_GLOBAL3;\n const result = (_globalVar$PFF_GLOBAL3 = globalVar[PFF_GLOBAL_KEY]) === null || _globalVar$PFF_GLOBAL3 === void 0 ? void 0 : _globalVar$PFF_GLOBAL3.booleanResolver(flagKey);\n if (typeof result !== 'boolean') {\n // eslint-disable-next-line no-console\n console.warn(`${flagKey} resolved to a non-boolean value, returning false for safety`);\n return false;\n }\n return result;\n } catch (e) {\n return false;\n }\n}","import { setBooleanResolver, resolveBooleanFlag } from './resolvers';\n\n/**\n * This creates a boolean flag resolver that allows calls to `getBooleanFF` inside of Platform components to use a Product's\n * feature flag client and LD project, rather than installing a feature flag client of their own, or passing those flags in via props.\n *\n * @param flagResolver\n */\nexport function setBooleanFeatureFlagResolver(flagResolver) {\n setBooleanResolver(flagResolver);\n}\n\n/**\n * Returns the value of a feature flag. If the flag does not resolve, it returns the \"false\" as a default value.\n *\n * @param name\n */\nexport function getBooleanFF(name) {\n return resolveBooleanFlag(name);\n}","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","import { getBooleanFF } from '@atlaskit/platform-feature-flags';\nimport { B100, B75, DN10, DN200, DN30, DN40, DN600, DN90, N0, N10, N100, N200, N30, N40, N70, N900 } from '@atlaskit/theme/colors';\nexport const disabledBackgroundColor = {\n light: `var(--ds-background-disabled, ${N10})`,\n dark: `var(--ds-background-disabled, ${DN10})`\n};\nexport const defaultBackgroundColor = {\n light: `var(--ds-background-input, ${N10})`,\n dark: `var(--ds-background-input, ${DN10})`\n};\nexport const defaultBackgroundColorFocus = {\n light: `var(--ds-background-input-pressed, ${N0})`,\n dark: `var(--ds-background-input-pressed, ${DN10})`\n};\nexport const defaultBackgroundColorHover = {\n light: `var(--ds-background-input-hovered, ${N30})`,\n dark: `var(--ds-background-input-hovered, ${DN30})`\n};\nexport const defaultBorderColor = {\n light: `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? N100 : N40})`,\n dark: `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? DN200 : DN40})`\n};\nexport const defaultBorderColorFocus = {\n light: `var(--ds-border-focused, ${B100})`,\n dark: `var(--ds-border-focused, ${B75})`\n};\nexport const subtleBorderColorHover = {\n light: \"var(--ds-border-input, transparent)\",\n dark: \"var(--ds-border-input, transparent)\"\n};\nexport const transparent = {\n light: 'transparent',\n dark: 'transparent'\n};\nexport const textColor = {\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n};\nexport const disabledTextColor = {\n light: `var(--ds-text-disabled, ${N70})`,\n dark: `var(--ds-text-disabled, ${DN90})`\n};\nexport const placeholderTextColor = {\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n};","import { getBooleanFF } from '@atlaskit/platform-feature-flags';\nimport { R400 } from '@atlaskit/theme/colors';\nimport { codeFontFamily, fontFamily, fontSize as getFontSize,\n// eslint-disable-next-line @atlaskit/design-system/no-deprecated-imports\ngridSize as getGridSize } from '@atlaskit/theme/constants';\nimport * as componentTokens from './component-tokens';\nconst fontSize = getFontSize();\nconst gridSize = getGridSize();\nconst disabledRules = {\n light: {\n backgroundColor: componentTokens.disabledBackgroundColor.light,\n backgroundColorHover: componentTokens.disabledBackgroundColor.light,\n borderColor: componentTokens.disabledBackgroundColor.light,\n textColor: componentTokens.disabledTextColor.light\n },\n dark: {\n backgroundColor: componentTokens.disabledBackgroundColor.dark,\n backgroundColorHover: componentTokens.disabledBackgroundColor.dark,\n borderColor: componentTokens.disabledBackgroundColor.dark,\n textColor: componentTokens.disabledTextColor.dark\n }\n};\nconst invalidRules = {\n light: {\n // ----\n backgroundColor: componentTokens.defaultBackgroundColor.light,\n backgroundColorHover: componentTokens.defaultBackgroundColorHover.light,\n // ^--- the above values aren't used directly they remain because its exposed by the `textFieldColors` export\n backgroundColorFocus: componentTokens.defaultBackgroundColorFocus.light,\n borderColor: `var(--ds-border-danger, ${R400})`,\n borderColorFocus: componentTokens.defaultBorderColorFocus.light\n },\n dark: {\n // ----\n backgroundColor: componentTokens.defaultBackgroundColor.dark,\n backgroundColorHover: componentTokens.defaultBackgroundColorHover.dark,\n // ^--- the above values aren't used directly they remain because its exposed by the `textFieldColors` export\n backgroundColorFocus: componentTokens.defaultBackgroundColorFocus.dark,\n borderColor: `var(--ds-border-danger, ${R400})`,\n borderColorFocus: componentTokens.defaultBorderColorFocus.dark\n }\n};\nconst backgroundColor = {\n standard: componentTokens.defaultBackgroundColor,\n subtle: componentTokens.transparent,\n none: componentTokens.transparent\n};\nconst backgroundColorFocus = {\n standard: componentTokens.defaultBackgroundColorFocus,\n subtle: componentTokens.defaultBackgroundColorFocus,\n none: componentTokens.transparent\n};\nconst backgroundColorHover = {\n standard: componentTokens.defaultBackgroundColorHover,\n subtle: componentTokens.defaultBackgroundColorHover,\n none: componentTokens.transparent\n};\nconst borderColor = {\n standard: componentTokens.defaultBorderColor,\n subtle: componentTokens.transparent,\n none: componentTokens.transparent\n};\nconst borderColorFocus = {\n standard: componentTokens.defaultBorderColorFocus,\n subtle: componentTokens.defaultBorderColorFocus,\n none: componentTokens.transparent\n};\nconst borderColorHover = {\n standard: componentTokens.defaultBorderColor,\n subtle: componentTokens.subtleBorderColorHover,\n none: componentTokens.transparent\n};\nconst getContainerTextBgAndBorderColor = (appearance, mode) => ({\n backgroundColor: backgroundColor[appearance][mode],\n borderColor: borderColor[appearance][mode],\n color: componentTokens.textColor[mode],\n cursor: 'text',\n '&:hover:not([data-disabled])': {\n backgroundColor: backgroundColorHover[appearance][mode],\n borderColor: borderColorHover[appearance][mode]\n },\n '&:focus-within:not([data-disabled])': {\n backgroundColor: backgroundColorFocus[appearance][mode],\n borderColor: borderColorFocus[appearance][mode],\n boxShadow: getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? `inset 0 0 0 1px ${borderColorFocus[appearance][mode]}` : undefined\n },\n '&[data-disabled]': {\n color: disabledRules[mode].textColor,\n cursor: 'not-allowed',\n // Disabled background and border styles should not be applied to components that\n // have either no background or transparent background to begin with\n ...(appearance === 'standard' && {\n backgroundColor: disabledRules[mode].backgroundColor,\n borderColor: disabledRules[mode].borderColor\n })\n },\n '&[data-invalid], &[data-invalid]:hover': {\n borderColor: invalidRules[mode].borderColor,\n boxShadow: getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? `inset 0 0 0 1px ${invalidRules[mode].borderColor}` : undefined\n },\n '&[data-invalid]:focus-within': {\n backgroundColor: invalidRules[mode].backgroundColorFocus,\n borderColor: invalidRules[mode].borderColorFocus,\n boxShadow: getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? `inset 0 0 0 1px ${invalidRules[mode].borderColorFocus}` : undefined\n },\n '@media screen and (-ms-high-contrast: active)': {\n '&[data-invalid]:focus-within': {\n borderColor: 'Highlight'\n },\n '&:focus-within': {\n borderColor: 'Highlight'\n },\n '&[data-disabled]': {\n borderColor: 'GrayText'\n }\n }\n});\nconst widthMap = {\n xsmall: 80,\n small: 160,\n medium: 240,\n large: 320,\n xlarge: 480\n};\nconst getMaxWidth = width => !width ? `100%` : width in widthMap ? widthMap[width] : +width;\nexport const containerStyles = (appearance, mode, width) => ({\n alignItems: 'center',\n ...getContainerTextBgAndBorderColor(appearance, mode),\n borderRadius: 3,\n borderWidth: getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? 1 : 2,\n // add 1px padding on both top and bottom to keep the same overall height after border reduced from 2px to 1px under feature flag\n ...(getBooleanFF('platform.design-system-team.update-border-input_ff9l1') && appearance !== 'none' ? {\n padding: '1px 0'\n } : {}),\n borderStyle: appearance === 'none' ? 'none' : 'solid',\n boxSizing: 'border-box',\n display: 'flex',\n flex: '1 1 100%',\n fontSize,\n justifyContent: 'space-between',\n maxWidth: getMaxWidth(width),\n overflow: 'hidden',\n transition: `background-color 0.2s ease-in-out, border-color 0.2s ease-in-out`,\n wordWrap: 'break-word',\n verticalAlign: 'top',\n pointerEvents: 'auto'\n});\nexport const inputStyles = mode => ({\n backgroundColor: 'transparent',\n border: 0,\n boxSizing: 'border-box',\n color: 'inherit',\n cursor: 'inherit',\n fontSize,\n minWidth: '0',\n outline: 'none',\n width: '100%',\n lineHeight: gridSize * 2.5 / fontSize,\n fontFamily: fontFamily(),\n '&[data-monospaced]': {\n fontFamily: codeFontFamily()\n },\n '&[data-compact]': {\n padding: `${gridSize / 2}px ${gridSize - 2}px`,\n height: `${(gridSize * 3.5 / fontSize).toFixed(2)}em`\n },\n '&:not([data-compact])': {\n padding: `${gridSize}px ${gridSize - 2}px`,\n height: `${(gridSize * 4.5 / fontSize).toFixed(2)}em`\n },\n '&[disabled]': {\n // Safari (WebKit) adds a -webkit-text-fill-color style to disabled inputs\n // which takes priority over color and makes the text unreadable. Need to\n // override it with the color we want.\n WebkitTextFillColor: disabledRules[mode].textColor\n },\n // Hide the clear indicator on Edge (Windows only)\n '&::-ms-clear': {\n display: 'none'\n },\n '&:invalid': {\n boxShadow: 'none'\n },\n '&::placeholder': {\n color: componentTokens.placeholderTextColor[mode],\n '&:disabled': {\n color: disabledRules[mode].textColor\n }\n },\n '@media screen and (-ms-high-contrast: active)': {\n '&[disabled]': {\n color: 'GrayText'\n }\n }\n});\n\n// TODO: Remove when removing legacy theming.\nexport const textFieldColors = {\n backgroundColor,\n backgroundColorFocus,\n backgroundColorHover,\n borderColor,\n borderColorFocus,\n borderColorHover,\n placeholderTextColor: componentTokens.placeholderTextColor,\n textColor: componentTokens.textColor,\n invalidRules,\n disabledRules\n};","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\nimport React, { forwardRef, memo, useCallback, useMemo, useRef } from 'react';\nimport { jsx } from '@emotion/react';\nimport { usePlatformLeafEventHandler } from '@atlaskit/analytics-next';\nimport { useGlobalTheme } from '@atlaskit/theme/components';\nimport { containerStyles as getContainerStyles, inputStyles as getInputStyles } from './styles';\nconst analyticsParams = {\n componentName: 'textField',\n packageName: \"@atlaskit/textfield\",\n packageVersion: \"5.5.0\"\n};\nconst Textfield = /*#__PURE__*/forwardRef((props, ref) => {\n const {\n appearance = 'standard',\n isCompact = false,\n isDisabled = false,\n isInvalid = false,\n isRequired = false,\n isReadOnly = false,\n isMonospaced = false,\n width,\n elemAfterInput,\n elemBeforeInput,\n testId,\n onFocus,\n onBlur,\n onMouseDown,\n className,\n ...spreadProps\n } = props;\n const inputRef = useRef(null);\n const {\n mode\n } = useGlobalTheme();\n const handleOnFocus = usePlatformLeafEventHandler({\n fn: event => {\n onFocus && onFocus(event);\n },\n action: 'focused',\n ...analyticsParams\n });\n const handleOnBlur = usePlatformLeafEventHandler({\n fn: event => {\n onBlur && onBlur(event);\n },\n action: 'blurred',\n ...analyticsParams\n });\n const handleOnMouseDown = useCallback(event => {\n // Running e.preventDefault() on the INPUT prevents double click behaviour\n // Sadly we needed this cast as the target type is being correctly set\n const target = event.target;\n if (target.tagName !== 'INPUT') {\n event.preventDefault();\n }\n if (inputRef && inputRef.current && !isDisabled && document.activeElement !== inputRef.current) {\n inputRef.current.focus();\n }\n onMouseDown && onMouseDown(event);\n }, [onMouseDown, isDisabled]);\n const setInputRef = useCallback(inputElement => {\n inputRef.current = inputElement;\n if (!ref) {\n return;\n }\n if (typeof ref === 'object') {\n // This is a blunder on the part of @types/react\n // https://github.com/DefinitelyTyped/DefinitelyTyped/issues/31065\n // .current should be assignable\n // @ts-expect-error\n ref.current = inputElement;\n }\n if (typeof ref === 'function') {\n ref(inputElement);\n }\n }, [ref]);\n const containerStyles = useMemo(() => getContainerStyles(appearance, mode, width), [appearance, mode, width]);\n const inputStyle = useMemo(() => getInputStyles(mode), [mode]);\n return (\n // We use event bubbling here to listen to any child element mouse down event.\n // eslint-disable-next-line jsx-a11y/no-static-element-interactions\n jsx(\"div\", {\n \"data-disabled\": isDisabled ? isDisabled : undefined,\n \"data-invalid\": isInvalid ? isInvalid : undefined,\n \"data-ds--text-field--container\": true,\n \"data-testid\": testId && `${testId}-container`,\n onMouseDown: handleOnMouseDown\n // TODO: When removing legacy theming fix this.\n // eslint-disable-next-line @repo/internal/react/consistent-css-prop-usage\n ,\n css: containerStyles,\n className: className\n }, elemBeforeInput, jsx(\"input\", _extends({}, spreadProps, {\n \"data-compact\": isCompact ? isCompact : undefined,\n \"data-monospaced\": isMonospaced ? isMonospaced : undefined,\n \"data-ds--text-field--input\": true,\n \"data-testid\": testId,\n \"aria-invalid\": isInvalid ? isInvalid : undefined,\n disabled: isDisabled,\n readOnly: isReadOnly,\n required: isRequired,\n onBlur: handleOnBlur,\n onFocus: handleOnFocus,\n ref: setInputRef\n // TODO: When removing legacy theming fix this.\n // eslint-disable-next-line @repo/internal/react/consistent-css-prop-usage\n ,\n css: inputStyle\n })), elemAfterInput)\n );\n});\nTextfield.displayName = 'Textfield';\n\n/**\n * __Textfield__\n *\n * A text field is an input that allows a user to write or edit text.\n *\n * - [Examples](https://atlassian.design/components/textfield/examples)\n * - [Code](https://atlassian.design/components/textfield/code)\n * - [Usage](https://atlassian.design/components/textfield/usage)\n */\nexport default /*#__PURE__*/memo(Textfield);\n// The above generic is used to let ERTC know what props to extract.\n// See: https://github.com/atlassian/extract-react-types/issues/201","import { useEffect, useState } from 'react';\n\nexport function useDebounce(value: T, delay: number): T {\n const [debouncedValue, setDebouncedValue] = useState(value);\n\n useEffect(() => {\n const handler = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n return () => {\n clearTimeout(handler);\n };\n }, [value]);\n\n return debouncedValue;\n}\n","import { IStargateClient } from '@atlassiansox/asc-stargate';\nimport { useStargateClient } from '@atlassiansox/bxpkit-core';\nimport debounce from 'lodash.debounce';\nimport { Dispatch, SetStateAction, useEffect, useState } from 'react';\nimport { AnalyticsTrackType } from '../model';\n\nexport type SiteNameValidation = {\n readonly isValidating: boolean;\n readonly isValid: boolean;\n readonly message?: string;\n};\n\nexport function useSiteNameValidation(\n siteName: string,\n analyticsTrack: AnalyticsTrackType,\n isDeferredSiteNameEnabled?: boolean,\n activateProductError?: boolean\n): SiteNameValidation {\n const [{ isValidating, isValid, message }, setValidation] =\n useState({\n isValidating: false,\n isValid: false\n });\n const stargateClient = useStargateClient();\n const re = /^[a-z0-9]+[a-z0-9-]+[a-z0-9]+$/;\n\n useEffect(() => {\n validateSiteNameDebounced.cancel();\n if (siteName.length === 0) {\n if (isDeferredSiteNameEnabled) {\n return setValidation({\n isValidating: false,\n isValid: true\n });\n } else if (isValid !== false) {\n return setValidation({\n isValidating: false,\n isValid: false,\n message: 'Site name is required'\n });\n } else {\n return;\n }\n } else if (siteName.length < 3) {\n return setValidation({\n isValidating: false,\n isValid: false,\n message:\n 'Your site name must be at least 3 characters long. Use only lowercase letters and numbers.'\n });\n } else if (siteName.length > 50) {\n return setValidation({\n isValidating: false,\n isValid: false,\n message: \"That's a bit too long — try something 50 characters or less.\"\n });\n } else if (!siteName.match(re)) {\n return setValidation({\n isValidating: false,\n isValid: false,\n message:\n 'Your site name must be at least 3 characters long. Use only lowercase letters and numbers.'\n });\n } else if (activateProductError) {\n return setValidation({\n isValidating: false,\n isValid: false,\n message: 'This site name is already taken. Please try another name.'\n });\n } else {\n setValidation({ isValidating: true, isValid: false });\n void validateSiteNameDebounced(\n siteName,\n setValidation,\n analyticsTrack,\n stargateClient\n );\n }\n }, [siteName, activateProductError]);\n\n return { isValidating, isValid, message };\n}\n\nconst validateSiteNameDebounced = debounce(validateSiteName, 1000, {\n trailing: true\n});\n\nasync function validateSiteName(\n siteName: string,\n setValidation: Dispatch>,\n analyticsTrack: AnalyticsTrackType,\n stargateClient: IStargateClient\n) {\n const { newRelic } = analyticsTrack;\n try {\n const { availability } = await stargateClient.checkCloudNameAvailability({\n cloudName: siteName,\n webPlatform: 'magnolia'\n });\n newRelic.trackAjax(\n 'react-signup-site-validation',\n { status: '200', apiUrl: 'site-availability-url' },\n true\n );\n switch (availability) {\n case 'AVAILABLE':\n return setValidation({ isValidating: false, isValid: true });\n default:\n return setValidation({\n isValidating: false,\n isValid: false,\n message: 'Site name is unavailable'\n });\n }\n } catch (error) {\n newRelic.trackAjax('react-signup-site-validation', error, false);\n return setValidation({\n isValidating: false,\n isValid: false,\n message: 'Network error'\n });\n }\n}\n","export var NetworkStatus;\n(function (NetworkStatus) {\n NetworkStatus[NetworkStatus[\"OFFLINE\"] = 0] = \"OFFLINE\";\n NetworkStatus[NetworkStatus[\"ONLINE\"] = 1] = \"ONLINE\";\n})(NetworkStatus || (NetworkStatus = {}));\n","import _mapValues from 'lodash/mapValues';\n// look at these beautiful beasts\nexport var objectKeys = function (object) { return Object.keys(object); };\nexport var objectValues = function (object) { return objectKeys(object).map(function (key) { return object[key]; }); };\nexport var objectValuesToString = function (object) {\n return _mapValues(object, function (value) { return String(value); });\n};\nexport var isType = function (type, value) { return objectValues(type).indexOf(value) > -1; };\nexport var hasKey = function (type, value) { return objectKeys(type).indexOf(value) > -1; };\n","import { NetworkStatus } from './types';\nvar Network = /** @class */ (function () {\n function Network(_a) {\n var _this = this;\n var onOnlineCallback = _a.onOnlineCallback;\n this.networkStatus = NetworkStatus.ONLINE;\n window.addEventListener('offline', function () {\n _this.networkStatus = NetworkStatus.OFFLINE;\n });\n window.addEventListener('online', function () {\n _this.networkStatus = NetworkStatus.ONLINE;\n onOnlineCallback();\n });\n }\n Object.defineProperty(Network.prototype, \"status\", {\n get: function () {\n // if ('onLine' in navigator) {\n // return navigator.onLine ? NetworkStatus.ONLINE : NetworkStatus.OFFLINE;\n // }\n return this.networkStatus;\n },\n enumerable: false,\n configurable: true\n });\n return Network;\n}());\nexport default Network;\n","import { __assign } from \"tslib\";\nimport { objectValuesToString } from '../../../common/utils/object-utils';\nimport { NetworkStatus } from './types';\nimport Network from './network';\nvar promisifiedBeacon = function (url, blob) {\n return new Promise(function (resolve, reject) {\n try {\n var status_1 = navigator.sendBeacon(url, blob);\n if (status_1) {\n resolve(status_1);\n }\n else {\n reject(status_1);\n }\n }\n catch (e) {\n console.warn('MetalSender: sendBeacon failure');\n }\n });\n};\nvar promisifiedXHR = function (url, body) {\n return new Promise(function (resolve, reject) {\n var xhr = new XMLHttpRequest();\n xhr.open('POST', url);\n xhr.setRequestHeader('Content-Type', 'text/plain');\n xhr.send(body);\n xhr.onerror = reject;\n xhr.onload = resolve;\n xhr.ontimeout = resolve;\n });\n};\n/**\n * Responsible for sending metric, log.. etc payloads\n * Configured by MetalClient directly\n */\nvar Sender = /** @class */ (function () {\n function Sender(_a) {\n var url = _a.url, meta = _a.meta, metalId = _a.metalId, synthetic = _a.synthetic, _b = _a.forceXHR, forceXHR = _b === void 0 ? false : _b;\n /**\n * Time between network retries\n */\n this.retryInterval = 30000;\n /**\n * buffer to hold things that fail due to network connectivity\n */\n this.buffer = [];\n /**\n * Favor using XHR over Beacon API\n */\n this.forceXHR = false;\n this.url = url;\n this.meta = meta;\n this.metalId = metalId;\n this.forceXHR = forceXHR;\n this.network = new Network({ onOnlineCallback: this.restartSending.bind(this) });\n this.sendData = this.sendData.bind(this);\n this.synthetic = synthetic;\n }\n Sender.prototype.updateMeta = function (meta) {\n this.meta = __assign(__assign({}, this.meta), meta);\n };\n Sender.prototype.restartSending = function () {\n var _this = this;\n this.buffer.forEach(function (payload) { return _this.sendData(payload); });\n this.buffer = [];\n };\n Sender.prototype.sendBeacon = function (blob) {\n return promisifiedBeacon(this.url, blob);\n };\n Sender.prototype.sendXHR = function (type, data, retries) {\n var _this = this;\n if (retries === void 0) { retries = 1; }\n return promisifiedXHR(this.url, data).catch(function () {\n if (retries < 3) {\n var retryIn = retries * _this.retryInterval;\n console.warn(\"MetalSender: Receiver not responding, will retry in \" + Math.floor(retryIn / 1000) + \"s\");\n setTimeout(function () { return _this.sendXHR(type, data, retries + 1); }, retryIn);\n }\n else {\n console.warn(\"MetalSender: Max retries reached, payload (\" + type + \") failed to send\");\n }\n });\n };\n Sender.prototype.sendData = function (_a) {\n var type = _a.type, data = _a.data;\n if (this.network.status === NetworkStatus.OFFLINE) {\n this.buffer.push({ type: type, data: data });\n return Promise.resolve(null);\n }\n var metalId = this.metalId;\n var meta = objectValuesToString(this.meta);\n var body = __assign({ type: type,\n meta: meta,\n metalId: metalId,\n data: data }, (this.synthetic !== undefined ? { synthetic: String(this.synthetic) } : {}));\n if (!navigator.sendBeacon || this.forceXHR) {\n return this.sendXHR(type, JSON.stringify(body));\n }\n var headers = {\n type: 'application/json',\n };\n var blob = new Blob([JSON.stringify(body)], headers);\n return this.sendBeacon(blob);\n };\n /**\n * This is the public facing API for the sender; although this function\n * is intended for internal consumption by the MetalCore Classes.\n *\n * @param buffer {T[]} An array of payload body type\n * @param type {T} A type of MetalCore eg, 'log', 'metric', etc...\n * @param meta {object} Any additional meta info for this payload (global meta info)\n */\n Sender.prototype.send = function (buffer, type) {\n if (buffer === void 0) { buffer = []; }\n if (buffer.length < 1)\n return;\n this.sendData({\n type: type,\n data: buffer,\n }).catch(function (e) {\n // Catch rejection or any potential exceptions surfaced from promise.\n // e.g. Safari AdBlock is blocking access to metal and incurs a\n // promise rejection in promisifiedBeacon\n console.warn('MetalSender: sendData failure:', e);\n });\n };\n return Sender;\n}());\nexport default Sender;\n","var Hookable = /** @class */ (function () {\n function Hookable(_a) {\n var hook = _a.hook;\n this.hook = hook;\n }\n return Hookable;\n}());\nexport default Hookable;\nexport * from './types';\n","import { __assign } from \"tslib\";\nvar Queue = /** @class */ (function () {\n function Queue(settings, callback) {\n var _this = this;\n this.buffer = [];\n this.settings = settings;\n this.callback = callback;\n this.intervalHandle = setInterval(this.flush.bind(this), this.settings.flushInterval);\n window.addEventListener('beforeunload', function () {\n if (_this.intervalHandle) {\n clearInterval(_this.intervalHandle);\n }\n });\n }\n Queue.prototype.flush = function () {\n this.callback(this.buffer, this.settings.bufferType);\n // TODO: there is potential data loss here if the send call fails\n // FIX ME Probably handle in sender tho.\n this.buffer = [];\n };\n Queue.prototype.enqueue = function (payload) {\n this.buffer.push(payload);\n var maxBufferSize = this.settings.maxBufferSize;\n if (maxBufferSize > 0 && this.buffer.length >= maxBufferSize) {\n this.flush();\n }\n };\n Queue.prototype.updateSettings = function (newSettings) {\n this.settings = __assign(__assign({}, this.settings), newSettings);\n if (newSettings.flushInterval) {\n clearInterval(this.intervalHandle);\n this.intervalHandle = setInterval(this.flush.bind(this), newSettings.flushInterval);\n }\n };\n return Queue;\n}());\nexport default Queue;\n","import { __extends } from \"tslib\";\nimport Hookable from '../../common/hookable';\nimport { CoreType } from '..';\n/**\n * Used from instances of MetalClient to submit errors.\n * - Sends a metric based on the scope of error\n * - Can/Will also be responsible for RavenJS in future.\n *\n * @method submit\n *\n */\nvar ErrorModel = /** @class */ (function (_super) {\n __extends(ErrorModel, _super);\n function ErrorModel(_a) {\n var hook = _a.hook;\n return _super.call(this, { hook: hook }) || this;\n }\n ErrorModel.prototype.submit = function (error) {\n this.hook({\n type: CoreType.ERROR,\n data: error,\n });\n };\n return ErrorModel;\n}(Hookable));\nexport default ErrorModel;\nexport * from './types';\n","/**\n * Parts of the MetalCore\n */\nexport var CoreType;\n(function (CoreType) {\n CoreType[\"METRIC\"] = \"metric\";\n CoreType[\"ERROR\"] = \"error\";\n})(CoreType || (CoreType = {}));\nexport * from './error';\nexport * from './metric';\n","var ErrorMetricName;\n(function (ErrorMetricName) {\n /** Page level */\n ErrorMetricName[\"UNCAUGHT\"] = \"fe.error.uncaught\";\n ErrorMetricName[\"REQUEST\"] = \"fe.error.request\";\n ErrorMetricName[\"API\"] = \"fe.error.api\";\n ErrorMetricName[\"GRAPHQL\"] = \"fe.error.graphql\";\n ErrorMetricName[\"VALIDATION\"] = \"fe.error.validation\";\n ErrorMetricName[\"INPUT\"] = \"fe.error.input\";\n ErrorMetricName[\"UNHANDLED_PROMISE_REJECTION\"] = \"fe.error.unhandledrejection\";\n /** Component level */\n ErrorMetricName[\"COMPONENT\"] = \"fe.error.component\";\n ErrorMetricName[\"COMPONENT_BOUNDARY\"] = \"fe.error.component.boundary\";\n ErrorMetricName[\"COMPONENT_GRAPHQL\"] = \"fe.error.component.graphql\";\n ErrorMetricName[\"COMPONENT_API\"] = \"fe.error.component.api\";\n})(ErrorMetricName || (ErrorMetricName = {}));\nvar PerformanceMetricName;\n(function (PerformanceMetricName) {\n /** Page level */\n PerformanceMetricName[\"APDEX\"] = \"fe.perf.apdex\";\n PerformanceMetricName[\"SPEED_INDEX\"] = \"fe.perf.speedindex\";\n PerformanceMetricName[\"TIME_TO_INTERACTIVE\"] = \"fe.perf.time_to_interactive\";\n PerformanceMetricName[\"TIME_TO_INTERACTIVE_SLO\"] = \"fe.perf.time_to_interactive.slo\";\n PerformanceMetricName[\"TIME_TO_FIRST_BYTE\"] = \"fe.perf.time_to_first_byte\";\n PerformanceMetricName[\"FIRST_PAINT\"] = \"fe.perf.first_paint\";\n PerformanceMetricName[\"FIRST_CONTENTFUL_PAINT\"] = \"fe.perf.first_contentful_paint\";\n PerformanceMetricName[\"FIRST_MEANINGFUL_PAINT\"] = \"fe.perf.first_meaningful_paint\";\n PerformanceMetricName[\"FIRST_MEANINGFUL_PAINT_SLO\"] = \"fe.perf.first_meaningful_paint.slo\";\n PerformanceMetricName[\"FIRST_INPUT_DELAY\"] = \"fe.perf.first_input_delay\";\n PerformanceMetricName[\"REQUEST_TIMING\"] = \"fe.perf.request_timing\";\n PerformanceMetricName[\"REQUEST_TIMING_SLO\"] = \"fe.perf.request_timing.slo\";\n PerformanceMetricName[\"RESOURCE_TIMING\"] = \"fe.perf.resource_timing\";\n PerformanceMetricName[\"CACHE_HITS\"] = \"fe.perf.cache_hits\";\n /** Component level */\n PerformanceMetricName[\"COMPONENT_PREVIEW\"] = \"fe.perf.component.time_to_preview\";\n PerformanceMetricName[\"COMPONENT_INTERACTIVE\"] = \"fe.perf.component.time_to_interactive\";\n PerformanceMetricName[\"COMPONENT_READY\"] = \"fe.perf.component.time_to_ready\";\n PerformanceMetricName[\"COMPONENT_READY_SLO\"] = \"fe.perf.component.time_to_ready.slo\";\n PerformanceMetricName[\"COMPONENT_REQUEST_TIMING\"] = \"fe.perf.component.request_timing\";\n})(PerformanceMetricName || (PerformanceMetricName = {}));\nvar UserInteractionMetricName;\n(function (UserInteractionMetricName) {\n UserInteractionMetricName[\"TASK_SUCCESS\"] = \"fe.user.task.success\";\n UserInteractionMetricName[\"TASK_FAILURE\"] = \"fe.user.task.failure\";\n UserInteractionMetricName[\"TASK_DURATION\"] = \"fe.user.task.duration\";\n UserInteractionMetricName[\"TASK_TIME_TO_FEEDBACK\"] = \"fe.user.task.time_to_feedback\";\n UserInteractionMetricName[\"TASK_TIME_TO_FEEDBACK_SLO\"] = \"fe.user.task.time_to_feedback.slo\";\n UserInteractionMetricName[\"TASK_TIME_TO_COMPLETE\"] = \"fe.user.task.time_to_complete\";\n UserInteractionMetricName[\"TASK_TIME_TO_COMPLETE_SLO\"] = \"fe.user.task.time_to_complete.slo\";\n})(UserInteractionMetricName || (UserInteractionMetricName = {}));\nexport { ErrorMetricName, PerformanceMetricName, UserInteractionMetricName };\n","export var PayloadType;\n(function (PayloadType) {\n PayloadType[\"TIMING\"] = \"timing\";\n PayloadType[\"GAUGE\"] = \"gauge\";\n PayloadType[\"INCREMENT\"] = \"increment\";\n PayloadType[\"DECREMENT\"] = \"decrement\";\n})(PayloadType || (PayloadType = {}));\n","var _a, _b;\nimport { __assign, __read, __spread } from \"tslib\";\nimport { ErrorMetricName, PerformanceMetricName, UserInteractionMetricName } from '../../catalog';\nimport { PayloadType, } from './types';\nexport var allowedMetricTypeMap = (_a = {},\n _a[ErrorMetricName.UNCAUGHT] = PayloadType.INCREMENT,\n _a[ErrorMetricName.REQUEST] = PayloadType.INCREMENT,\n _a[ErrorMetricName.API] = PayloadType.INCREMENT,\n _a[ErrorMetricName.GRAPHQL] = PayloadType.INCREMENT,\n _a[ErrorMetricName.VALIDATION] = PayloadType.INCREMENT,\n _a[ErrorMetricName.INPUT] = PayloadType.INCREMENT,\n _a[ErrorMetricName.UNHANDLED_PROMISE_REJECTION] = PayloadType.INCREMENT,\n _a[ErrorMetricName.COMPONENT] = PayloadType.INCREMENT,\n _a[ErrorMetricName.COMPONENT_BOUNDARY] = PayloadType.INCREMENT,\n _a[ErrorMetricName.COMPONENT_GRAPHQL] = PayloadType.INCREMENT,\n _a[ErrorMetricName.COMPONENT_API] = PayloadType.INCREMENT,\n _a[PerformanceMetricName.APDEX] = PayloadType.TIMING,\n _a[PerformanceMetricName.SPEED_INDEX] = PayloadType.TIMING,\n _a[PerformanceMetricName.TIME_TO_INTERACTIVE] = PayloadType.TIMING,\n _a[PerformanceMetricName.TIME_TO_INTERACTIVE_SLO] = PayloadType.INCREMENT,\n _a[PerformanceMetricName.TIME_TO_FIRST_BYTE] = PayloadType.TIMING,\n _a[PerformanceMetricName.FIRST_PAINT] = PayloadType.TIMING,\n _a[PerformanceMetricName.FIRST_CONTENTFUL_PAINT] = PayloadType.TIMING,\n _a[PerformanceMetricName.FIRST_MEANINGFUL_PAINT] = PayloadType.TIMING,\n _a[PerformanceMetricName.FIRST_MEANINGFUL_PAINT_SLO] = PayloadType.INCREMENT,\n _a[PerformanceMetricName.FIRST_INPUT_DELAY] = PayloadType.TIMING,\n _a[PerformanceMetricName.REQUEST_TIMING] = PayloadType.TIMING,\n _a[PerformanceMetricName.REQUEST_TIMING_SLO] = PayloadType.INCREMENT,\n _a[PerformanceMetricName.RESOURCE_TIMING] = PayloadType.TIMING,\n _a[PerformanceMetricName.CACHE_HITS] = PayloadType.INCREMENT,\n _a[PerformanceMetricName.COMPONENT_PREVIEW] = PayloadType.TIMING,\n _a[PerformanceMetricName.COMPONENT_INTERACTIVE] = PayloadType.TIMING,\n _a[PerformanceMetricName.COMPONENT_READY] = PayloadType.TIMING,\n _a[PerformanceMetricName.COMPONENT_READY_SLO] = PayloadType.INCREMENT,\n _a[PerformanceMetricName.COMPONENT_REQUEST_TIMING] = PayloadType.TIMING,\n _a[UserInteractionMetricName.TASK_SUCCESS] = PayloadType.INCREMENT,\n _a[UserInteractionMetricName.TASK_FAILURE] = PayloadType.INCREMENT,\n _a[UserInteractionMetricName.TASK_DURATION] = PayloadType.TIMING,\n _a[UserInteractionMetricName.TASK_TIME_TO_FEEDBACK] = PayloadType.TIMING,\n _a[UserInteractionMetricName.TASK_TIME_TO_FEEDBACK_SLO] = PayloadType.INCREMENT,\n _a[UserInteractionMetricName.TASK_TIME_TO_COMPLETE] = PayloadType.TIMING,\n _a[UserInteractionMetricName.TASK_TIME_TO_COMPLETE_SLO] = PayloadType.INCREMENT,\n _a);\nexport var allowedTagsMap = {\n component: 'component',\n isActiveTab: 'active_tab',\n isInitial: 'initial_load',\n isSSR: 'ssr',\n page: 'page',\n success: 'success',\n task: 'task',\n taskId: 'task_id',\n type: 'type',\n histogramBuckets: 'gsd_histogram',\n};\nvar alwaysRequired = ['page'];\nvar alwaysOptional = ['isSSR', 'isActiveTab'];\nvar timersAlwaysOptional = ['histogramBuckets'];\nvar defaultRequirements = {\n required: __spread(alwaysRequired),\n optional: __spread(alwaysOptional),\n};\nvar defaultPerfRequirements = {\n required: __spread(alwaysRequired),\n optional: __spread(alwaysOptional, timersAlwaysOptional),\n};\nvar defaultSLORequirements = {\n required: __spread(alwaysRequired, ['success']),\n optional: __spread(alwaysOptional),\n};\nvar defaultComponentRequirements = {\n required: __spread(alwaysRequired, ['component']),\n optional: __spread(alwaysOptional),\n};\nvar defaultComponentPerfRequirements = {\n required: __spread(alwaysRequired, ['component']),\n optional: __spread(alwaysOptional, timersAlwaysOptional),\n};\nvar defaultTaskRequirements = {\n required: __spread(alwaysRequired, ['task']),\n optional: __spread(alwaysOptional, ['taskId']),\n};\nvar defaultTaskPerfRequirements = {\n required: __spread(alwaysRequired, ['task']),\n optional: __spread(alwaysOptional, timersAlwaysOptional, ['taskId']),\n};\nexport var metricAttributeRequirementsMap = (_b = {},\n // Errors\n _b[ErrorMetricName.UNCAUGHT] = defaultRequirements,\n _b[ErrorMetricName.REQUEST] = defaultRequirements,\n _b[ErrorMetricName.API] = defaultRequirements,\n _b[ErrorMetricName.GRAPHQL] = defaultRequirements,\n _b[ErrorMetricName.VALIDATION] = defaultRequirements,\n _b[ErrorMetricName.INPUT] = defaultRequirements,\n _b[ErrorMetricName.UNHANDLED_PROMISE_REJECTION] = defaultRequirements,\n _b[ErrorMetricName.COMPONENT] = defaultComponentRequirements,\n _b[ErrorMetricName.COMPONENT_BOUNDARY] = defaultComponentRequirements,\n _b[ErrorMetricName.COMPONENT_GRAPHQL] = defaultComponentRequirements,\n _b[ErrorMetricName.COMPONENT_API] = defaultComponentRequirements,\n // Page Performance\n _b[PerformanceMetricName.APDEX] = __assign(__assign({}, defaultRequirements), { optional: __spread(alwaysOptional, timersAlwaysOptional, ['isInitial']) }),\n _b[PerformanceMetricName.SPEED_INDEX] = defaultPerfRequirements,\n _b[PerformanceMetricName.TIME_TO_INTERACTIVE] = defaultPerfRequirements,\n _b[PerformanceMetricName.TIME_TO_INTERACTIVE_SLO] = defaultSLORequirements,\n _b[PerformanceMetricName.TIME_TO_FIRST_BYTE] = defaultPerfRequirements,\n _b[PerformanceMetricName.FIRST_PAINT] = defaultPerfRequirements,\n _b[PerformanceMetricName.FIRST_CONTENTFUL_PAINT] = defaultPerfRequirements,\n _b[PerformanceMetricName.FIRST_MEANINGFUL_PAINT] = defaultPerfRequirements,\n _b[PerformanceMetricName.FIRST_MEANINGFUL_PAINT_SLO] = defaultSLORequirements,\n _b[PerformanceMetricName.FIRST_INPUT_DELAY] = defaultPerfRequirements,\n _b[PerformanceMetricName.REQUEST_TIMING] = __assign(__assign({}, defaultPerfRequirements), { optional: __spread(alwaysOptional, timersAlwaysOptional, ['type']) }),\n _b[PerformanceMetricName.REQUEST_TIMING_SLO] = {\n required: __spread(alwaysRequired, ['success']),\n optional: __spread(alwaysOptional, ['type']),\n },\n _b[PerformanceMetricName.RESOURCE_TIMING] = __assign(__assign({}, defaultPerfRequirements), { optional: __spread(alwaysOptional, timersAlwaysOptional, ['type']) }),\n _b[PerformanceMetricName.CACHE_HITS] = defaultRequirements,\n // Component Performance\n _b[PerformanceMetricName.COMPONENT_PREVIEW] = defaultComponentPerfRequirements,\n _b[PerformanceMetricName.COMPONENT_INTERACTIVE] = defaultComponentPerfRequirements,\n _b[PerformanceMetricName.COMPONENT_REQUEST_TIMING] = defaultComponentPerfRequirements,\n _b[PerformanceMetricName.COMPONENT_READY] = defaultComponentPerfRequirements,\n _b[PerformanceMetricName.COMPONENT_READY_SLO] = __assign(__assign({}, defaultRequirements), { required: __spread(alwaysRequired, ['component', 'success']) }),\n // User Interaction (Tasks)\n _b[UserInteractionMetricName.TASK_SUCCESS] = defaultTaskRequirements,\n _b[UserInteractionMetricName.TASK_FAILURE] = defaultTaskRequirements,\n _b[UserInteractionMetricName.TASK_DURATION] = defaultTaskPerfRequirements,\n _b[UserInteractionMetricName.TASK_TIME_TO_FEEDBACK] = defaultTaskPerfRequirements,\n _b[UserInteractionMetricName.TASK_TIME_TO_FEEDBACK_SLO] = __assign(__assign({}, defaultTaskRequirements), { required: __spread(alwaysRequired, ['task', 'success']) }),\n _b[UserInteractionMetricName.TASK_TIME_TO_COMPLETE] = defaultTaskPerfRequirements,\n _b[UserInteractionMetricName.TASK_TIME_TO_COMPLETE_SLO] = __assign(__assign({}, defaultTaskRequirements), { required: __spread(alwaysRequired, ['task', 'success']) }),\n _b);\n","import { __extends } from \"tslib\";\nimport Hookable from '../../common/hookable';\nimport Queue from '../transport/queue';\nimport { CoreType } from '..';\nimport { hasKey, objectKeys } from '../../common/utils/object-utils';\nimport { allowedTagsMap, allowedMetricTypeMap, metricAttributeRequirementsMap } from './constants';\nimport { PayloadType } from './types';\nvar defaultSettings = {\n sampleRate: 1,\n maxBufferSize: 10,\n flushInterval: 1000,\n};\n/**\n * Used by MetalClient to send Metrics\n *\n * Can be instantiated seperatedly if you also provide an instance of MetalSender.\n * Includes the following public methods.\n *\n * @method increment\n * @method decrement\n * @method timing\n * @method gauge\n *\n * @see Sender\n * @see MetalClient\n */\nvar assertHasValue = function (metric) {\n if (metric.value === undefined) {\n throw new Error(\"Missing value for metric \" + metric.name);\n }\n if (typeof metric.value !== 'number') {\n throw new Error(\"Value for metric \" + metric.name + \" is of type \" + typeof metric.value + \" and not a number\");\n }\n};\n// Note: we are allowing values of 0 to be submitted\n// Reference: https://github.com/brightcove/hot-shots/blob/master/lib/statsFunctions.js#L110\nvar valueOrDefault = function (metric, defaultValue) {\n return metric.value === undefined || typeof metric.value !== 'number' ? defaultValue : metric.value;\n};\nvar MetricModel = /** @class */ (function (_super) {\n __extends(MetricModel, _super);\n function MetricModel(_a) {\n var sender = _a.sender, _b = _a.settings, settings = _b === void 0 ? defaultSettings : _b, hook = _a.hook, pageVisibility = _a.pageVisibility;\n var _this = _super.call(this, { hook: hook }) || this;\n _this.sampleRate = settings.sampleRate;\n _this.queue = new Queue(settings, sender.send.bind(sender));\n _this.pageVisibility = pageVisibility;\n return _this;\n }\n MetricModel.prototype.updateSettings = function (newSettings) {\n this.queue.updateSettings(newSettings);\n };\n MetricModel.prototype.increment = function (metric) {\n metric.value = valueOrDefault(metric, 1);\n this.queue.enqueue(this.constructMetric(metric, PayloadType.INCREMENT));\n };\n MetricModel.prototype.decrement = function (metric) {\n metric.value = valueOrDefault(metric, -1);\n this.queue.enqueue(this.constructMetric(metric, PayloadType.DECREMENT));\n };\n MetricModel.prototype.timing = function (metric) {\n assertHasValue(metric);\n this.queue.enqueue(this.constructMetric(metric, PayloadType.TIMING));\n };\n MetricModel.prototype.gauge = function (metric) {\n assertHasValue(metric);\n this.queue.enqueue(this.constructMetric(metric, PayloadType.GAUGE));\n };\n /**\n * Called by user directly as a manual entrypoint\n *\n * @param {UserMetric} metric The metadata required to send a configured metric\n */\n MetricModel.prototype.submit = function (metric) {\n if (!hasKey(allowedMetricTypeMap, metric.name)) {\n throw new Error('Invalid Metric provided to Metal');\n }\n var tags = [];\n objectKeys(allowedTagsMap).forEach(function (key) {\n if (hasKey(metric, key)) {\n var metricObj = metric;\n if (key === 'histogramBuckets') {\n var isBucketFormatRegex = /^([\\d+]_?)*\\d+$/;\n if ((metric.histogramBuckets && !isBucketFormatRegex.test(metric.histogramBuckets)) ||\n !metric.histogramBuckets) {\n throw new Error('Invalid Metric value: histogramBuckets');\n }\n }\n tags.push(allowedTagsMap[key] + \":\" + metricObj[key]);\n }\n });\n var required = metricAttributeRequirementsMap[metric.name].required;\n required.forEach(function (key) {\n if (!hasKey(metric, key)) {\n throw new Error(\"Required metric attribute \" + key + \" is missing\");\n }\n });\n var name = metric.name, value = metric.value;\n var method = allowedMetricTypeMap[name];\n this[method]({\n name: name,\n value: value,\n tags: tags,\n });\n };\n MetricModel.prototype.constructMetric = function (_a, type) {\n var name = _a.name, value = _a.value, _b = _a.tags, tags = _b === void 0 ? [] : _b;\n var data = {\n type: type,\n name: name,\n tags: tags,\n value: value,\n sampleRate: this.sampleRate,\n };\n // hook call to MetalClient callbacks\n this.hook({\n type: CoreType.METRIC,\n data: data,\n });\n return data;\n };\n return MetricModel;\n}(Hookable));\nexport default MetricModel;\nexport * from './types';\n","var errors = {\n metalhead: {\n notfound: \"Metal: For TTI & FID metrics,\\n you should include metal-head.min.js within \\n to setup observers and timings as early as possible.\",\n },\n metrics: {\n browser: {\n rootId: \"Metal: Browser Metrics:\\n rootId must be supplied to instantiate this plugin\",\n },\n },\n metalClient: {\n metalId: \"Metal: Deprecation warning:\\n Metal will require a metalId to determine config in future versions.\\n Please update your client's config.\",\n },\n plugins: {\n paint: {\n unsupported: 'Metal: Performance Painting Timings: not supported by this browser',\n },\n interactive: {\n longtask: 'Metal: Long task not supported',\n },\n },\n};\nexport { errors };\n","import { __read, __spread } from \"tslib\";\nvar CallbackProvider = /** @class */ (function () {\n function CallbackProvider(_a) {\n var _b = _a.callbacks, callbacks = _b === void 0 ? [] : _b;\n this.callbacks = [];\n // ensure we create a new array\n this.callbacks = callbacks.map(function (callback) { return callback; });\n }\n CallbackProvider.prototype.doCallbacks = function () {\n var data = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n data[_i] = arguments[_i];\n }\n this.callbacks.forEach(function (cb) { return cb.apply(void 0, __spread(data)); });\n };\n return CallbackProvider;\n}());\nexport default CallbackProvider;\nexport { CallbackProvider };\n","var _a;\nimport { PerformanceMetricName } from '../../catalog';\n// remove observer after 5 seconds\nvar TIMEOUT_THRESHOLD = 5000;\nvar BrowserMetricName;\n(function (BrowserMetricName) {\n BrowserMetricName[\"FIRST_INPUT_DELAY\"] = \"first-input-delay\";\n BrowserMetricName[\"TIME_TO_INTERACTIVE\"] = \"time-to-interactive\";\n BrowserMetricName[\"FIRST_CONTENTFUL_PAINT\"] = \"first-contentful-paint\";\n BrowserMetricName[\"FIRST_MEANINGFUL_PAINT\"] = \"first-meaningful-paint\";\n BrowserMetricName[\"FIRST_PAINT\"] = \"first-paint\";\n BrowserMetricName[\"RESOURCE_TIMING\"] = \"resource-timing\";\n BrowserMetricName[\"REQUEST_TIMING\"] = \"request-timing\";\n})(BrowserMetricName || (BrowserMetricName = {}));\n/**\n * Maps User metric namespaces to StatsD Metric namespace\n */\nvar BROWSER_METRICS_MAP = (_a = {},\n _a[BrowserMetricName.FIRST_INPUT_DELAY] = PerformanceMetricName.FIRST_INPUT_DELAY,\n _a[BrowserMetricName.TIME_TO_INTERACTIVE] = PerformanceMetricName.TIME_TO_INTERACTIVE,\n _a[BrowserMetricName.FIRST_CONTENTFUL_PAINT] = PerformanceMetricName.FIRST_CONTENTFUL_PAINT,\n _a[BrowserMetricName.FIRST_PAINT] = PerformanceMetricName.FIRST_PAINT,\n _a[BrowserMetricName.FIRST_MEANINGFUL_PAINT] = PerformanceMetricName.FIRST_MEANINGFUL_PAINT,\n _a[BrowserMetricName.REQUEST_TIMING] = PerformanceMetricName.REQUEST_TIMING,\n _a[BrowserMetricName.RESOURCE_TIMING] = PerformanceMetricName.RESOURCE_TIMING,\n _a);\nexport { BrowserMetricName, BROWSER_METRICS_MAP, TIMEOUT_THRESHOLD };\n","import { __read, __spread } from \"tslib\";\nimport { TIMEOUT_THRESHOLD, BROWSER_METRICS_MAP } from '../constants';\nimport i18n from '../../../i18n';\n/**\n * PerformanceEntry => Metric\n * @param entry {PerformanceEntry}\n */\nvar normaliseData = function (_a) {\n var name = _a.name, startTime = _a.startTime;\n return ({\n name: BROWSER_METRICS_MAP[name],\n value: startTime,\n });\n};\nvar normalisePaintPerformanceEntries = function (list) { return __spread(list).map(normaliseData); };\n// hang on to this guy;\nvar paintPerformanceObserverPromise;\n/**\n * TODO REWORK to deal with non compatible browsers\n *\n * This function needs to be super safe to work properly.\n *\n * 1. There's a chance the paint entries already exist by the time the script runs;\n * in this case -- just use the entries.\n * 2. If not, use the performance observer.\n * 3. To ensure multiple calls don't confuse things we only ever return the same\n * Promise instance.\n */\nvar getPaintTimingsWithPerformanceObserverAsync = function () {\n if (!paintPerformanceObserverPromise) {\n var performanceEntries = void 0;\n try {\n performanceEntries = performance.getEntriesByType('paint');\n }\n catch (e) {\n performanceEntries = [];\n }\n if (performanceEntries.length) {\n paintPerformanceObserverPromise = Promise.resolve(normalisePaintPerformanceEntries(performanceEntries));\n }\n else {\n paintPerformanceObserverPromise = new Promise(function (resolve, reject) {\n var observer = new PerformanceObserver(function (list) {\n var entries = list.getEntries();\n var normalisedData = normalisePaintPerformanceEntries(entries);\n // clean up observer\n observer.disconnect();\n // pass back data\n resolve(normalisedData);\n });\n try {\n observer.observe({ entryTypes: ['paint'] });\n }\n catch (e) {\n reject(e);\n }\n });\n }\n }\n return paintPerformanceObserverPromise;\n};\nvar getPaintTimingsAsync = function () {\n // this is best\n if ('PerformanceObserver' in window) {\n return getPaintTimingsWithPerformanceObserverAsync();\n }\n // else\n if ('performance' in window) {\n return new Promise(function (resolve) {\n setTimeout(function () {\n var performanceEntries = performance.getEntriesByType('paint');\n resolve(__spread(performanceEntries).map(normaliseData));\n // this ensures we never wait more than TIMEOUT_THRESHOLD\n }, TIMEOUT_THRESHOLD - performance.now());\n });\n }\n return Promise.reject(new Error(i18n.errors.plugins.paint.unsupported));\n};\nvar getFirstNavTiming = function () {\n var _a = __read(performance.getEntriesByName('first-navigation'), 1), firstNavigationMark = _a[0];\n var firstNavTiming = firstNavigationMark && firstNavigationMark.startTime;\n // if no timing exists just use TIMEOUT_THRESHOLD\n return firstNavTiming || TIMEOUT_THRESHOLD;\n};\nexport { getPaintTimingsAsync, getPaintTimingsWithPerformanceObserverAsync, getFirstNavTiming };\n","var _a;\nimport { __assign, __extends } from \"tslib\";\nimport noop from 'lodash/noop';\nimport { PerformanceMetricName } from '../../../catalog';\nimport { CallbackProvider } from '../../../common';\nimport { sendMetricTimingCallback, getPage } from '../utils';\nimport { getFIDAsync, getTTIAsync, getTTFBAsync } from './helpers';\nvar defaultCollectors = (_a = {},\n _a[PerformanceMetricName.FIRST_INPUT_DELAY] = getFIDAsync,\n _a[PerformanceMetricName.TIME_TO_INTERACTIVE] = getTTIAsync,\n _a[PerformanceMetricName.TIME_TO_FIRST_BYTE] = getTTFBAsync,\n _a);\nvar InteractiveMetricsPlugin = /** @class */ (function (_super) {\n __extends(InteractiveMetricsPlugin, _super);\n function InteractiveMetricsPlugin(_a) {\n var _b = _a.callbacks, callbacks = _b === void 0 ? [] : _b, _c = _a.collectors, collectors = _c === void 0 ? {} : _c, _d = _a.histograms, histograms = _d === void 0 ? {} : _d;\n var _this = _super.call(this, { callbacks: callbacks }) || this;\n _this.histograms = {};\n _this.page = '';\n _this.supportedMetrics = [\n PerformanceMetricName.FIRST_INPUT_DELAY,\n PerformanceMetricName.TIME_TO_INTERACTIVE,\n PerformanceMetricName.TIME_TO_FIRST_BYTE,\n ];\n _this.collectors = __assign(__assign({}, defaultCollectors), collectors);\n _this.histograms = histograms;\n return _this;\n }\n InteractiveMetricsPlugin.prototype.getTimings = function () {\n var _this = this;\n this.supportedMetrics.forEach(function (name) {\n _this.collectors[name]()\n .then(function (value) {\n return _this.doCallbacks({\n metric: {\n name: name,\n value: value,\n page: _this.page,\n },\n histograms: _this.histograms,\n shouldCheckActiveTab: name !== PerformanceMetricName.FIRST_INPUT_DELAY,\n });\n })\n .catch(noop);\n });\n };\n InteractiveMetricsPlugin.prototype.install = function (client) {\n this.page = getPage(client.pageTracker, true);\n this.callbacks.push(sendMetricTimingCallback(client));\n this.getTimings();\n };\n return InteractiveMetricsPlugin;\n}(CallbackProvider));\nexport { InteractiveMetricsPlugin as default };\n","import { __assign } from \"tslib\";\n// expects a kebab case formatted name\n// eg. first-meaningful-paint => fcp\nexport var nameToFirstLetters = function (name) {\n return name\n .split('-')\n .map(function (word) { return word.slice(0, 1); })\n .map(function (char) { return char.toLowerCase(); })\n .join('');\n};\nexport var sendMetricTimingCallback = function (client) { return function (_a) {\n var metric = _a.metric, _b = _a.histograms, histograms = _b === void 0 ? {} : _b, _c = _a.shouldCheckActiveTab, shouldCheckActiveTab = _c === void 0 ? false : _c;\n if (shouldCheckActiveTab) {\n var wasPreviouslyHidden = client.pageVisibility.wasPreviouslyHidden;\n if (wasPreviouslyHidden) {\n return;\n }\n }\n client.metric.submit(metric);\n if (histograms[metric.name]) {\n client.metric.submit(__assign(__assign({}, metric), { histogramBuckets: histograms[metric.name] }));\n }\n}; };\nexport var getPage = function (pageTracker, isInitial) {\n if (pageTracker) {\n if (isInitial) {\n return pageTracker.initialPage;\n }\n return pageTracker.page;\n }\n return '';\n};\n","import { __assign, __awaiter, __extends, __generator, __read } from \"tslib\";\nimport noop from 'lodash/noop';\nimport { CallbackProvider } from '../../../common';\nimport { PerformanceMetricName } from '../../../catalog';\nimport { TIMEOUT_THRESHOLD } from '../constants';\nimport { sendMetricTimingCallback, getPage } from '../utils';\nimport { getPaintTimingsWithPerformanceObserverAsync, getPaintTimingsAsync, getFirstNavTiming, } from './helpers';\nvar config = { childList: true, subtree: true };\n/**\n * High level class instance used to get a best estimate for\n * First Meaningful Paint. By watching the root of the react tree for mutations\n * we can get a fairly good estimate as to when this occurs based on the delta of new nodes.\n */\nvar PaintMetricsPlugin = /** @class */ (function (_super) {\n __extends(PaintMetricsPlugin, _super);\n /* TODO\n if rootId is not specified, PaintMetrics will still attempt to observe,\n and do nothing presumably - handle this better.\n */\n function PaintMetricsPlugin(_a) {\n var _b;\n var _c = _a.rootId, rootId = _c === void 0 ? 'root' : _c, _d = _a.callbacks, callbacks = _d === void 0 ? [] : _d, _e = _a.collectors, collectors = _e === void 0 ? {} : _e, _f = _a.histograms, histograms = _f === void 0 ? {} : _f;\n var _this = _super.call(this, { callbacks: callbacks }) || this;\n _this.paintTimings = [];\n _this.lastPaintCount = 0;\n _this.histograms = {};\n _this.page = '';\n _this.observer = new MutationObserver(_this.getNewNodes.bind(_this));\n _this.observer.observe(document.getElementById(rootId), config);\n if ('PerformanceObserver' in window) {\n getPaintTimingsWithPerformanceObserverAsync().catch(noop);\n }\n _this.collectors = __assign((_b = {}, _b[PerformanceMetricName.FIRST_MEANINGFUL_PAINT] = _this.getFirstMeaningfulPaintAsync.bind(_this), _b), collectors);\n _this.histograms = histograms;\n // remove observer after TIMEOUT_THRESHOLD\n setTimeout(function () { return _this.observer.disconnect(); }, TIMEOUT_THRESHOLD);\n return _this;\n }\n /**\n * private function for\n * new node callback\n *\n * @returns {PaintTiming}\n */\n PaintMetricsPlugin.prototype.createPaintTimingObject = function () {\n var domSize = document.body.getElementsByTagName('*').length;\n var domCountDelta = domSize - this.lastPaintCount;\n this.lastPaintCount = domSize;\n return { time: performance.now(), domSize: domSize, domCountDelta: domCountDelta };\n };\n /**\n * private function for\n * new node callback\n *\n * @returns {void}\n */\n PaintMetricsPlugin.prototype.getNewNodes = function () {\n this.paintTimings.push(this.createPaintTimingObject());\n };\n /**\n * Used internall to derive the class's FMP output.\n *\n * @param FCPtiming First Contentful Paint timing\n * @returns {number} The FMP\n */\n PaintMetricsPlugin.prototype.getFirstMeaningfulPaint = function (FCPtiming) {\n var firstNavTiming = getFirstNavTiming();\n // omit any timing pre FCP and post first nav\n var usefulTimings = this.paintTimings.filter(function (_a) {\n var time = _a.time;\n return time > FCPtiming && time < firstNavTiming;\n });\n // if there are no timings; FCP === FMP so just return FCP\n if (!usefulTimings.length) {\n return FCPtiming;\n }\n // else we want the _biggest_ layout change that has occurred since FCP\n var _a = __read(usefulTimings.sort(function (_a, _b) {\n var b = _a.domCountDelta;\n var a = _b.domCountDelta;\n return a - b;\n }), 1), time = _a[0].time;\n return time;\n };\n PaintMetricsPlugin.prototype.getFirstMeaningfulPaintAsync = function (FCPtiming) {\n var _this = this;\n var DEFER_CALLBACK = TIMEOUT_THRESHOLD - performance.now();\n return new Promise(function (resolve) {\n setTimeout(function () { return resolve(_this.getFirstMeaningfulPaint(FCPtiming)); }, DEFER_CALLBACK);\n });\n };\n /**\n * Runs the Paint Metrics plugin.\n *\n * @param client An instance of MetalClient\n */\n PaintMetricsPlugin.prototype.install = function (client) {\n this.page = getPage(client.pageTracker, true);\n this.callbacks.push(sendMetricTimingCallback(client));\n this.getTimings();\n };\n /**\n * Destroys the Paint Metrics plugin and its references\n */\n PaintMetricsPlugin.prototype.destroy = function () {\n this.observer.disconnect();\n };\n PaintMetricsPlugin.prototype.handleCallbacks = function (_a) {\n var name = _a.name, value = _a.value;\n this.doCallbacks({\n metric: { name: name, value: value, page: this.page },\n histograms: this.histograms,\n shouldCheckActiveTab: true,\n });\n };\n /**\n * Get the paint timings, and runs the internal callbacks to expose the results to its subscribers.\n */\n PaintMetricsPlugin.prototype.getTimings = function () {\n return __awaiter(this, void 0, void 0, function () {\n var paints, fcp, name_1, value, e_1;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n _a.trys.push([0, 3, , 4]);\n return [4 /*yield*/, getPaintTimingsAsync()];\n case 1:\n paints = _a.sent();\n paints.forEach(this.handleCallbacks.bind(this));\n fcp = paints.find(function (_a) {\n var name = _a.name;\n return name === PerformanceMetricName.FIRST_CONTENTFUL_PAINT;\n }).value;\n name_1 = PerformanceMetricName.FIRST_MEANINGFUL_PAINT;\n return [4 /*yield*/, this.collectors[name_1](fcp)];\n case 2:\n value = _a.sent();\n this.handleCallbacks({ name: name_1, value: value });\n return [3 /*break*/, 4];\n case 3:\n e_1 = _a.sent();\n // TODO: probably give a better annotated error.\n console.warn('PaintMetricsPlugin: Unable to get Paint Timings');\n return [3 /*break*/, 4];\n case 4: return [2 /*return*/];\n }\n });\n });\n };\n return PaintMetricsPlugin;\n}(CallbackProvider));\nexport { PaintMetricsPlugin as default };\n","import { __read } from \"tslib\";\nimport * as ttiPolyfill from 'tti-polyfill';\nimport i18n from '../../../i18n';\n// TODO: consider re-naming these from 'helpers' to 'collectors / gatherers' something more semantic.\nvar getTTIAsync = function () {\n return new Promise(function (resolve, reject) {\n if (!window.perfMetrics) {\n reject(new Error(i18n.errors.metalhead.notfound));\n }\n if (!Object.prototype.hasOwnProperty.call(window, 'PerformanceLongTaskTiming')) {\n reject(new Error(i18n.errors.plugins.interactive.longtask));\n }\n ttiPolyfill.getFirstConsistentlyInteractive({}).then(resolve);\n });\n};\nvar getFIDAsync = function () {\n return new Promise(function (resolve, reject) {\n if (!window.perfMetrics) {\n reject(new Error(i18n.errors.metalhead.notfound));\n }\n // onFirstInputDelay's callback also passes delay in ms, and the evt.\n window.perfMetrics.onFirstInputDelay(resolve);\n });\n};\nvar getTTFBAsync = function () {\n return new Promise(function (resolve, reject) {\n try {\n var _a = __read(window.performance.getEntriesByType('navigation'), 1), navigationTiming = _a[0];\n if (navigationTiming) {\n /**\n * Navigation Timing Level 2\n * https://www.w3.org/TR/navigation-timing-2/\n * Not supported: IE, Safari\n */\n resolve(navigationTiming.responseStart);\n }\n else {\n /**\n * Navigation Timing\n * https://www.w3.org/TR/navigation-timing/\n */\n var _b = window.performance.timing, responseStart = _b.responseStart, navigationStart = _b.navigationStart;\n resolve(responseStart - navigationStart);\n }\n }\n catch (e) {\n // in rare case that navigation timing is not supported\n reject(e);\n }\n });\n};\nexport { getTTIAsync, getFIDAsync, getTTFBAsync };\n","var performanceUtils = {\n timeOrigin: performance.timeOrigin || Date.now() - performance.now(),\n};\nexport var isPerformanceObserverSupported = function () {\n return 'PerformanceObserver' in window && typeof PerformanceObserver === 'function';\n};\nexport default performanceUtils;\n","// https://w3c.github.io/resource-timing/#sec-performanceresourcetiming\nvar AJAX_INITIATOR_TYPES = ['fetch', 'xmlhttprequest', 'beacon', 'other'];\nvar DEFAULT_REQUEST_BLACKLIST = [\n // development purposes\n 'localhost',\n // anvil (stargate)\n 'atlassian.com/metal/ingest',\n // new relic\n 'bam.nr',\n // webstatsd ingest\n 'webstatsd',\n // GASv3 (stargate)\n 'gateway/api/gasv3',\n];\nexport { AJAX_INITIATOR_TYPES, DEFAULT_REQUEST_BLACKLIST };\n","import { BrowserMetricName, BROWSER_METRICS_MAP } from '../constants';\nimport { AJAX_INITIATOR_TYPES } from './constants';\n/**\n * Converts a Performance Resource Timing to our own Metric Type\n */\nvar normalisePerformanceResourceTiming = function (_a) {\n var initiatorType = _a.initiatorType, duration = _a.duration;\n var name = AJAX_INITIATOR_TYPES.indexOf(initiatorType) !== -1\n ? BrowserMetricName.REQUEST_TIMING\n : BrowserMetricName.RESOURCE_TIMING;\n return {\n name: BROWSER_METRICS_MAP[name],\n value: duration,\n type: initiatorType,\n };\n};\nexport { normalisePerformanceResourceTiming as default };\n","import { __extends, __read, __spread } from \"tslib\";\nimport { CallbackProvider } from '../../../common';\nimport { isPerformanceObserverSupported } from '../../../common/utils/performance-utils';\nimport { sendMetricTimingCallback, getPage } from '../utils';\nimport getBlackListFilter from './blacklist';\nimport normalisePerformanceResourceTiming from './normalise';\n/**\n * Manages sending timings under the broad banner of 'resources'\n *\n * This applies to anything that is accesible in performance.getEntriesByType('resource')\n * and includes.\n *\n * 1. AJAX (Fetch, XHR etc)\n * 2. Assets\n * 3. Other network requests instigated from the DOM.\n */\nvar ResourceMetricsPlugin = /** @class */ (function (_super) {\n __extends(ResourceMetricsPlugin, _super);\n function ResourceMetricsPlugin(_a) {\n var _b = _a.callbacks, callbacks = _b === void 0 ? [] : _b, _c = _a.blacklist, blacklist = _c === void 0 ? [] : _c;\n var _this = _super.call(this, { callbacks: callbacks }) || this;\n _this.pageTracker = null;\n _this.performance = window.performance;\n _this.timings = [];\n _this.filterEntryList = function (entryList, blacklist) {\n var blackListFilter = getBlackListFilter({ blacklist: blacklist });\n return Array.prototype.filter.call(entryList, blackListFilter);\n };\n if (!isPerformanceObserverSupported()) {\n console.warn('Metal: Performance Observer not supported, ResourceMetricsPlugin will not work');\n return _this;\n }\n var initialEntryList = _this.performance.getEntriesByType('resource');\n var allowedInitialEntryList = _this.filterEntryList(initialEntryList, blacklist);\n _this.timings = allowedInitialEntryList.map(normalisePerformanceResourceTiming);\n // capture future timings\n _this.observer = new PerformanceObserver(function (entries) {\n var _a;\n var entryList = entries.getEntries();\n // important to not get into a recursive loop of sending\n // metrics on network requests stemming from Metal\n var allowedEntryList = _this.filterEntryList(entryList, blacklist);\n var newEntries = allowedEntryList.map(normalisePerformanceResourceTiming);\n // capture locally\n _this.timings = (_a = _this.timings).concat.apply(_a, __spread(newEntries));\n // send to Metal\n if (newEntries.length) {\n _this.send.apply(_this, __spread(newEntries));\n }\n });\n return _this;\n }\n // TODO: this function can probably be removed // call Metal directly\n ResourceMetricsPlugin.prototype.send = function () {\n var _this = this;\n var ajaxResults = [];\n for (var _i = 0; _i < arguments.length; _i++) {\n ajaxResults[_i] = arguments[_i];\n }\n ajaxResults.forEach(function (_a) {\n var name = _a.name, value = _a.value, type = _a.type;\n var page = getPage(_this.pageTracker, false);\n _this.doCallbacks({\n metric: {\n name: name,\n value: value,\n type: type,\n page: page,\n },\n });\n });\n };\n /**\n * Runs the Resource Timings plugin.\n *\n * @param client An instance of MetalClient\n */\n ResourceMetricsPlugin.prototype.install = function (client) {\n this.pageTracker = client.pageTracker;\n this.callbacks.push(sendMetricTimingCallback(client));\n this.send.apply(this, __spread(this.timings));\n if (this.observer) {\n this.observer.observe({ entryTypes: ['resource'] });\n }\n };\n /**\n * Destroys the Paint Metrics plugin and its references\n */\n ResourceMetricsPlugin.prototype.destroy = function () {\n if (this.observer) {\n this.observer.disconnect();\n }\n };\n return ResourceMetricsPlugin;\n}(CallbackProvider));\nexport { ResourceMetricsPlugin as default };\n","import { __read, __spread } from \"tslib\";\nimport { DEFAULT_REQUEST_BLACKLIST } from './constants';\n/**\n * Used to filter origins that should not be recorded by metal\n */\nvar getBlackListFilter = function (_a) {\n var _b = _a.blacklist, blacklist = _b === void 0 ? [] : _b;\n return function (_a) {\n var resourceName = _a.name;\n return !__spread(DEFAULT_REQUEST_BLACKLIST, blacklist).find(function (origin) { return resourceName.includes(origin); });\n };\n};\nexport { getBlackListFilter as default };\n","import { __assign } from \"tslib\";\nimport { CoreType } from '../../core';\n/**\n * ErrorsPlugin automatically hooks into\n * a call to MetalClient.error.submit() and counts it as metric error count\n */\nvar ErrorsPlugin = /** @class */ (function () {\n function ErrorsPlugin() {\n }\n ErrorsPlugin.prototype.install = function (client) {\n // Listen to error events from MetalClient\n client.addEventHook(CoreType.ERROR, function (_a) {\n var page = _a.page, component = _a.component, name = _a.name;\n client.metric.submit(__assign({ name: name, value: 1, page: page }, (component ? { component: component } : {})));\n });\n };\n return ErrorsPlugin;\n}());\nexport default ErrorsPlugin;\n","import { PerformanceMetricName } from '../../catalog';\nimport i18n from '../../i18n';\nimport PaintMetricsPlugin from './paint-timings';\nimport InteractiveMetricsPlugin from './interactive-timings';\nimport ResourceMetricsPlugin from './resource-timings';\n/**\n * Wrapper class to simplify api.\n */\nvar BrowserMetricsPlugin = /** @class */ (function () {\n function BrowserMetricsPlugin(_a) {\n var rootId = _a.rootId, _b = _a.callbacks, callbacks = _b === void 0 ? [] : _b, _c = _a.collectors, collectors = _c === void 0 ? {} : _c, _d = _a.histograms, histograms = _d === void 0 ? {} : _d, _e = _a.blacklist, blacklist = _e === void 0 ? [] : _e;\n if (!rootId) {\n throw new Error(i18n.errors.metrics.browser.rootId);\n }\n this.interactiveMetrics = new InteractiveMetricsPlugin({ callbacks: callbacks, collectors: collectors, histograms: histograms });\n this.paintMetrics = new PaintMetricsPlugin({ rootId: rootId, callbacks: callbacks, collectors: collectors, histograms: histograms });\n this.resourceMetrics = new ResourceMetricsPlugin({ callbacks: callbacks, blacklist: blacklist });\n this.plugins = [this.interactiveMetrics, this.paintMetrics, this.resourceMetrics];\n }\n BrowserMetricsPlugin.prototype.install = function (client) {\n this.plugins.forEach(function (plugin) { return plugin.install(client); });\n };\n BrowserMetricsPlugin.prototype.destroy = function () {\n this.plugins.forEach(function (plugin) { return plugin.destroy && plugin.destroy(); });\n };\n return BrowserMetricsPlugin;\n}());\n/** Everything here is a plugin and can be used as such */\nexport { BrowserMetricsPlugin as default, PaintMetricsPlugin, InteractiveMetricsPlugin, ResourceMetricsPlugin, };\n","import { __assign } from \"tslib\";\nimport { isPerformanceObserverSupported } from '../../common/utils/performance-utils';\n/**\n * Will pull any performance marks or measures that the user specifies\n * and send them to SFX based on a user defined mapping\n */\nvar PerformanceMarkPlugin = /** @class */ (function () {\n function PerformanceMarkPlugin(userDefinedAllowlist) {\n var _this = this;\n this.allowlist = {};\n if (!isPerformanceObserverSupported()) {\n console.warn('Metal: Performance Observer not supported, PerformanceMarkPlugin will not work');\n return;\n }\n Object.keys(userDefinedAllowlist).forEach(function (metricName) {\n var markItem = userDefinedAllowlist[metricName];\n if (!metricName) {\n throw new Error('Metal: Unsupported metric type supplied to PerformanceMarkPlugin');\n }\n _this.allowlist[markItem.name] = __assign(__assign({}, markItem), { name: metricName });\n });\n this.observer = new PerformanceObserver(this.getMarksCallback.bind(this));\n this.observer.observe({ entryTypes: ['mark', 'measure'] });\n }\n PerformanceMarkPlugin.prototype.getMarksCallback = function (list) {\n var _this = this;\n list.getEntries().forEach(function (entry) {\n if (entry.name in _this.allowlist) {\n var markPayload = _this.allowlist[entry.name];\n var value = entry.duration ? entry.duration : entry.startTime;\n _this.client.metric.submit(__assign(__assign({}, markPayload), { value: value }));\n }\n });\n };\n PerformanceMarkPlugin.prototype.install = function (client) {\n this.client = client;\n };\n PerformanceMarkPlugin.prototype.destroy = function () {\n if (this.observer) {\n this.observer.disconnect();\n }\n };\n return PerformanceMarkPlugin;\n}());\nexport default PerformanceMarkPlugin;\n","var _a, _b, _c;\nimport Bowser from 'bowser';\nvar BROWSER_MAP = Bowser.BROWSER_MAP, OS_MAP = Bowser.OS_MAP, PLATFORMS_MAP = Bowser.PLATFORMS_MAP;\n// Whitelists loosely against constant values from 'bowser' ~ 2.5.2\n// https://github.com/lancedikson/bowser/blob/master/src/constants.js\nvar browser = (_a = {},\n _a[BROWSER_MAP.chrome] = 'chrome',\n _a[BROWSER_MAP.chromium] = 'chromium',\n _a[BROWSER_MAP.safari] = 'safari',\n _a[BROWSER_MAP.firefox] = 'firefox',\n _a[BROWSER_MAP.edge] = 'edge',\n _a[BROWSER_MAP.ie] = 'ie',\n _a);\nvar platform = (_b = {},\n _b[PLATFORMS_MAP.desktop] = 'desktop',\n _b[PLATFORMS_MAP.mobile] = 'mobile',\n _b);\nvar os = (_c = {},\n _c[OS_MAP.MacOS] = 'macos',\n _c[OS_MAP.Linux] = 'linux',\n _c[OS_MAP.Windows] = 'windows',\n _c[OS_MAP.iOS] = 'ios',\n _c[OS_MAP.Android] = 'android',\n _c);\nvar whitelists = {\n browser: browser,\n os: os,\n platform: platform,\n};\nexport default whitelists;\n","import { getDocumentHiddenValues } from './helpers';\nvar PageVisibility = /** @class */ (function () {\n function PageVisibility() {\n var _this = this;\n this.callbacks = new Map();\n this.lastHiddenAt = 0;\n this.bindEventListeners = function () {\n document.addEventListener(_this.visibilityChange, _this.handleVisibilityChange, false);\n };\n this.handleVisibilityChange = function () {\n var isHidden = document[_this.hidden];\n _this.documentHiddenInfo.isHidden = isHidden;\n if (isHidden) {\n _this.lastHiddenAt = performance.now();\n }\n if (!_this.wasPreviouslyHidden) {\n _this.wasPreviouslyHidden = isHidden;\n }\n _this.callbacks.forEach(function (callbackFn) { return callbackFn(isHidden); });\n };\n this.documentHiddenInfo = getDocumentHiddenValues();\n this.wasPreviouslyHidden = this.documentHiddenInfo.isHidden;\n if (typeof document.addEventListener !== 'undefined' && this.hidden !== undefined) {\n this.bindEventListeners();\n }\n }\n PageVisibility.prototype.addCallback = function (name, fn) {\n if (typeof name !== 'string') {\n throw new Error('Invalid name, must be string');\n }\n if (typeof fn !== 'function') {\n throw new Error('Invalid callback, must be function');\n }\n this.callbacks.set(name, fn);\n };\n PageVisibility.prototype.removeCallback = function (name) {\n if (this.callbacks.has(name)) {\n this.callbacks.delete(name);\n }\n };\n Object.defineProperty(PageVisibility.prototype, \"isHidden\", {\n get: function () {\n return this.documentHiddenInfo.isHidden;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(PageVisibility.prototype, \"hidden\", {\n get: function () {\n return this.documentHiddenInfo.hidden;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(PageVisibility.prototype, \"visibilityChange\", {\n get: function () {\n return this.documentHiddenInfo.visibilityChange;\n },\n enumerable: false,\n configurable: true\n });\n return PageVisibility;\n}());\nexport default PageVisibility;\n","export var getDocumentHiddenValues = function () {\n var doc = document;\n var hiddenInfo = {\n isHidden: false,\n hidden: 'undefined',\n visibilityChange: 'undefined',\n };\n if (typeof doc.hidden !== 'undefined') {\n // Opera 12.10 and Firefox 18 and later support\n hiddenInfo.isHidden = doc.hidden;\n hiddenInfo.hidden = 'hidden';\n hiddenInfo.visibilityChange = 'visibilitychange';\n }\n else if (typeof doc.msHidden !== 'undefined') {\n hiddenInfo.isHidden = doc.msHidden;\n hiddenInfo.hidden = 'msHidden';\n hiddenInfo.visibilityChange = 'msvisibilitychange';\n }\n else if (typeof doc.webkitHidden !== 'undefined') {\n hiddenInfo.isHidden = doc.webkitHidden;\n hiddenInfo.hidden = 'webkitHidden';\n hiddenInfo.visibilityChange = 'webkitvisibilitychange';\n }\n return hiddenInfo;\n};\n","var defaultGetPageFn = function () { return ''; };\nvar PageTracker = /** @class */ (function () {\n function PageTracker(getPage) {\n if (getPage === void 0) { getPage = defaultGetPageFn; }\n this.initialPage = '';\n this.initialPage = getPage();\n this.getPage = getPage;\n }\n Object.defineProperty(PageTracker.prototype, \"page\", {\n get: function () {\n if (this.getPage) {\n var page = this.getPage();\n if (!this.initialPage) {\n this.initialPage = page;\n }\n return page;\n }\n return '';\n },\n enumerable: false,\n configurable: true\n });\n return PageTracker;\n}());\nexport default PageTracker;\n","var config = {\n api: {\n local: 'https://api.stg.atlassian.com/metal/ingest',\n dev: 'https://api.stg.atlassian.com/metal/ingest',\n staging: 'https://api.stg.atlassian.com/metal/ingest',\n prod: 'https://api.atlassian.com/metal/ingest',\n },\n};\nexport default config;\n","export var envTypes = {\n LOCAL: 'local',\n DEV: 'dev',\n STAGING: 'staging',\n PROD: 'prod',\n};\n","import { __assign, __read, __spread } from \"tslib\";\nimport merge from 'lodash/merge';\nimport Sender from '../core/transport/sender';\nimport MetricModel from '../core/metric';\nimport ErrorModel from '../core/error';\nimport { ErrorsPlugin } from '../plugins';\nimport getUserAgentInfo from '../common/user-agent-info';\nimport PageVisibility from '../common/page-visibility';\nimport PageTracker from '../common/page-tracker';\nimport { CoreType } from '../core';\nimport { isType, objectValues } from '../common/utils/object-utils';\nimport config from './config';\nimport { validateProductInfo, getDefaultHooks } from './helpers';\nvar defaultSettings = {\n getPage: function () { return ''; },\n metrics: {\n flushInterval: 1000,\n maxBufferSize: 10,\n sampleRate: 1,\n bufferType: CoreType.METRIC,\n },\n};\nvar MetalClient = /** @class */ (function () {\n function MetalClient(_a) {\n var _this = this;\n var productInfo = _a.productInfo, _b = _a.settings, settings = _b === void 0 ? defaultSettings : _b, _c = _a.plugins, plugins = _c === void 0 ? [] : _c, _d = _a.forceXHR, forceXHR = _d === void 0 ? false : _d;\n /**\n * Internal hooks being used by Metal and responding to certain MetalEvents\n */\n this.hooks = getDefaultHooks();\n validateProductInfo(productInfo);\n var mergedSettings = merge(defaultSettings, settings, {\n metrics: {\n meta: settings.meta,\n },\n });\n this.productInfo = productInfo;\n var version = productInfo.version, metalId = productInfo.metalId, env = productInfo.env;\n this.meta = __assign(__assign(__assign({}, settings.meta), { version: version,\n env: env }), getUserAgentInfo());\n this.sender = new Sender({\n url: config.api[env],\n metalId: metalId,\n meta: this.meta,\n synthetic: settings.synthetic,\n forceXHR: forceXHR,\n });\n this.pageVisibility = new PageVisibility();\n this.pageTracker = new PageTracker(mergedSettings.getPage);\n // create the unified hook\n var hook = this.onSend.bind(this);\n this.metric = new MetricModel({\n sender: this.sender,\n settings: mergedSettings.metrics,\n hook: hook,\n pageVisibility: this.pageVisibility,\n });\n this.error = new ErrorModel({ hook: hook });\n this.updateSettings = this.updateSettings.bind(this);\n /**\n * Plugins are installed if an array is passed to Metal,\n * else by default we instantiate the default set of plugins.\n */\n var defaultPlugins = [new ErrorsPlugin()];\n this.plugins = __spread(defaultPlugins, plugins);\n this.plugins.forEach(function (plugin) { return plugin.install(_this); });\n }\n /**\n * Merges an object of new settings with the current settings.\n * @param newSettings The new settings object\n */\n MetalClient.prototype.updateSettings = function (newSettings) {\n if (newSettings.meta) {\n this.meta = __assign(__assign({}, this.meta), newSettings.meta);\n this.sender.updateMeta(this.meta);\n }\n if (newSettings.metrics) {\n this.metric.updateSettings(newSettings.metrics);\n }\n };\n Object.defineProperty(MetalClient.prototype, \"initialPage\", {\n get: function () {\n return this.pageTracker.initialPage;\n },\n enumerable: false,\n configurable: true\n });\n Object.defineProperty(MetalClient.prototype, \"currentPage\", {\n get: function () {\n return this.pageTracker.page;\n },\n enumerable: false,\n configurable: true\n });\n // public interface to add a hook\n MetalClient.prototype.addEventHook = function (type, callback) {\n if (!isType(CoreType, type)) {\n throw new Error(\"Invalid hook, must be a CoreType [\" + objectValues(CoreType) + \"]\");\n }\n this.hooks[type].push(callback);\n };\n MetalClient.prototype.destroy = function () {\n // Destroy plugins\n this.plugins.forEach(function (plugin) { return plugin.destroy && plugin.destroy(); });\n };\n // internal hook\n MetalClient.prototype.onSend = function (_a) {\n var _this = this;\n var type = _a.type, data = _a.data;\n this.hooks[type].forEach(function (callback) { return callback(data, _this.meta); });\n };\n return MetalClient;\n}());\nexport default MetalClient;\nexport * from './types';\nexport { envTypes } from './constants';\n","import { CoreType } from '../core';\nimport { isType, objectValues } from '../common/utils/object-utils';\nimport { envTypes } from './constants';\nexport var validateProductInfo = function (productInfo) {\n if (!productInfo.metalId) {\n throw new Error('Missing metalId');\n }\n if (!productInfo) {\n throw new Error('Missing productInfo');\n }\n if (!productInfo.env) {\n throw new Error('Missing productInfo.env');\n }\n if (!productInfo.version) {\n throw new Error('Missing productInfo.version');\n }\n if (!isType(envTypes, productInfo.env)) {\n throw new Error(\"Invalid productInfo.env '\" + productInfo.env + \"', must be an envType: [\" + objectValues(envTypes) + \"]\");\n }\n};\nexport var getDefaultHooks = function () {\n var _a;\n return (_a = {},\n _a[CoreType.METRIC] = [],\n _a[CoreType.ERROR] = [],\n _a);\n};\n","import Bowser from 'bowser';\nimport whitelists from './constants';\nfunction getUserAgentInfo(_a) {\n var _b = (_a === void 0 ? {} : _a).userAgentString, userAgentString = _b === void 0 ? window.navigator.userAgent : _b;\n var rawBrowserInfo = Bowser.getParser(userAgentString);\n var os = whitelists.os[rawBrowserInfo.getOSName()] || 'other';\n var platform = whitelists.platform[rawBrowserInfo.getPlatformType()] || 'other';\n var browser = whitelists.browser[rawBrowserInfo.getBrowserName()] || 'other';\n return {\n os: os,\n platform: platform,\n browser: browser,\n };\n}\nexport { getUserAgentInfo as default };\n","import { ErrorMetricName as error, PerformanceMetricName as performance, UserInteractionMetricName as userInteraction, } from './catalog';\nvar catalog = {\n error: error,\n performance: performance,\n userInteraction: userInteraction,\n};\nexport { catalog };\n","export const SIGN_UP_LOADING_START_MARK = 'SIGN_UP_LOADING_START_MARK';\nexport const DEVOPS_LOADING_START_MARK = 'DEVOPS_LOADING_START_MARK';\n\nexport function markSignUpLoadingStart() {\n performance.mark(SIGN_UP_LOADING_START_MARK);\n}\n\nexport function markDevopsLoadingStart() {\n performance.mark(DEVOPS_LOADING_START_MARK);\n}\n\nexport function getDevopsTimeToInteractive() {\n performance.measure(\n 'devopsTimeToInteractivePerformance',\n SIGN_UP_LOADING_START_MARK,\n DEVOPS_LOADING_START_MARK\n );\n\n return performance\n .getEntriesByType('measure')\n .find(\n (measureEntry) =>\n measureEntry.name === 'devopsTimeToInteractivePerformance'\n )?.duration;\n}\n","// Basic\nimport MetalClient, { envTypes, catalog } from '@atlassiansox/metal-client';\nimport { Environment, ENV_DEV, ENV_STAGING } from '@atlassiansox/bxpkit-core';\nimport { getDevopsTimeToInteractive } from './performance';\n\nimport packageJson from '../../package.json';\n\nconst productInfo = {\n metalId: '04e59420-3f82-40ee-acd2-44ceb2faeb68', // include your Metal ID\n version: packageJson.version, // The version of your application\n env: envTypes.PROD // env should be the env of your application else use Prod\n};\n\nif (Environment.getEnvironment() === ENV_DEV) {\n productInfo.env = envTypes.DEV;\n} else if (Environment.getEnvironment() === ENV_STAGING) {\n productInfo.env = envTypes.STAGING;\n}\n\nexport const metalClient = new MetalClient({ productInfo });\n\nexport function submitDevopsTimeToInteractive() {\n const devopsTTI = getDevopsTimeToInteractive();\n console.log(`devopsTTI ${devopsTTI}`);\n\n metalClient.metric.submit({\n name: catalog.performance.COMPONENT_INTERACTIVE,\n value: getDevopsTimeToInteractive(),\n page: 'signUp',\n component: 'signUp'\n });\n}\n","import { useEffect, useState } from 'react';\nimport { useStargateClient } from '@atlassiansox/bxpkit-core';\nimport { metalClient } from '../metrics';\nimport { catalog } from '@atlassiansox/metal-client';\n\nexport type SSOCheck = {\n readonly isCheckingSSO: boolean;\n readonly ssoRedirectUrl: string;\n readonly isUserExists?: boolean;\n};\n\nenum AuthenticationMethodsType {\n PASSWORD = 'password',\n GOOGLE = 'google',\n SAML = 'saml',\n MICROSOFT = 'microsoft',\n APPLE = 'apple',\n SLACK = 'slack'\n}\n\ntype SSOCheckResponse = {\n readonly methods: AuthenticationMethod[];\n readonly passwordEnabled: boolean;\n readonly samlRequired: boolean;\n readonly userExists?: boolean;\n};\n\ntype AuthenticationMethod = {\n readonly type: AuthenticationMethodsType;\n readonly redirect_to: string;\n};\n\nexport type AuthenticationMethodsCheckOptions = {\n readonly email: string;\n readonly allowAuthenticationsMethodCheck?: boolean;\n};\n\nconst getAuthenticationMethod = (\n authenticationMethods: SSOCheckResponse\n): AuthenticationMethod | undefined => {\n if (authenticationMethods?.userExists !== undefined) {\n // TODO: delete this block when we are happy with changes from backend\n if (\n !authenticationMethods?.methods ||\n authenticationMethods?.methods?.length === 0\n ) {\n return undefined;\n }\n const samlMethod = authenticationMethods.methods.find(\n (method: AuthenticationMethod) => {\n return (\n method.type === AuthenticationMethodsType.SAML ||\n method.type === AuthenticationMethodsType.GOOGLE\n );\n }\n );\n const passwordMethod = authenticationMethods.methods.find(\n (method: AuthenticationMethod) => {\n return method.type === AuthenticationMethodsType.PASSWORD;\n }\n );\n const userExists = authenticationMethods.userExists;\n\n if (userExists && passwordMethod) {\n return passwordMethod;\n }\n if (!passwordMethod && samlMethod) {\n return samlMethod;\n } else {\n return undefined;\n }\n } else {\n if (!authenticationMethods?.methods) {\n return undefined;\n } else {\n const { passwordEnabled, samlRequired } = authenticationMethods;\n\n if (authenticationMethods?.methods?.length === 0) {\n return undefined;\n }\n if (passwordEnabled && samlRequired) {\n const password = authenticationMethods.methods.find(\n (method: AuthenticationMethod) => {\n return method.type === AuthenticationMethodsType.PASSWORD;\n }\n );\n return password;\n }\n if (passwordEnabled && !samlRequired) {\n const password = authenticationMethods.methods.find(\n (method: AuthenticationMethod) => {\n return method.type === AuthenticationMethodsType.PASSWORD;\n }\n );\n return password;\n }\n\n if (!passwordEnabled && samlRequired) {\n const saml = authenticationMethods.methods.find(\n (method: AuthenticationMethod) => {\n return method.type === AuthenticationMethodsType.SAML;\n }\n );\n return saml;\n } else {\n return undefined;\n }\n }\n }\n};\n\nexport function useAuthenticationMethodsCheck({\n email,\n allowAuthenticationsMethodCheck\n}: AuthenticationMethodsCheckOptions): SSOCheck {\n const [{ isCheckingSSO, ssoRedirectUrl, isUserExists }, setSSOValidation] =\n useState({\n isCheckingSSO: false,\n ssoRedirectUrl: '',\n isUserExists: false\n });\n\n const stargateClient = useStargateClient();\n\n const getSSORedirectUrl = async (email: string) => {\n setSSOValidation({ isCheckingSSO: true, ssoRedirectUrl: '' });\n try {\n const response: any =\n await stargateClient.checkAuthenticationMethodsAvailable({\n email,\n successRedirect: window.location.href,\n webPlatform: 'magnolia'\n });\n const authenticationMethod = getAuthenticationMethod(response);\n //TODO: remove use of userExists when we are happy with the backend changes\n const userExists = response?.userExists;\n if (authenticationMethod?.type === AuthenticationMethodsType.PASSWORD) {\n if (!!userExists) {\n setSSOValidation({\n isCheckingSSO: false,\n ssoRedirectUrl: 'exists',\n isUserExists: userExists // need to remove in the future\n });\n } else {\n // temporary fix till identity gets us the right url, then just pass the redirect_to\n const url = authenticationMethod.redirect_to.replace(\n '/initiate/password',\n ''\n );\n setSSOValidation({\n isCheckingSSO: false,\n ssoRedirectUrl: url,\n isUserExists: false // need to remove in the future\n });\n }\n } else if (\n authenticationMethod?.type === AuthenticationMethodsType.SAML\n ) {\n if (!!userExists) {\n setSSOValidation({\n isCheckingSSO: false,\n ssoRedirectUrl: authenticationMethod.redirect_to,\n isUserExists: userExists // need to remove in the future\n });\n } else {\n setSSOValidation({\n isCheckingSSO: false,\n ssoRedirectUrl: authenticationMethod.redirect_to,\n isUserExists: false // need to remove in the future\n });\n }\n } else {\n setSSOValidation({\n isCheckingSSO: false,\n ssoRedirectUrl: '',\n isUserExists: false // need to remove in the future\n });\n }\n } catch (error: any) {\n metalClient.error.submit({\n name: catalog.error.INPUT,\n page: 'sign-up',\n component: 'bxpkit-wac-sign-up-input-email',\n error: { ...error }\n });\n setSSOValidation({\n isCheckingSSO: false,\n ssoRedirectUrl: 'error',\n isUserExists: true\n });\n }\n };\n\n useEffect(() => {\n if (allowAuthenticationsMethodCheck) {\n void getSSORedirectUrl(email);\n }\n }, [email, allowAuthenticationsMethodCheck]);\n\n return {\n isCheckingSSO,\n ssoRedirectUrl,\n isUserExists\n };\n}\n","import { SitesType } from '@atlassiansox/asc-stargate';\nimport {\n AsyncResult,\n Environment,\n getFirstName,\n getLastName,\n ProductKey,\n Url,\n useAISAvailableProducts,\n useMe,\n useStargateClient\n} from '@atlassiansox/bxpkit-core';\nimport { useEffect, useState } from 'react';\nimport { UserDataType } from '../model';\nimport { isResponseError } from '../utility';\n\n/**\n * Hook that provides user info relevant to signup\n */\n\nexport const useUserInfo = () => {\n const [userInfo, setUserInfo] = useState();\n\n const meDataAsync = useMe();\n const aisAvailableProducts = useAISAvailableProducts({\n includeInvalidBitbucketSite: true\n });\n\n const stargateClient = useStargateClient();\n\n useEffect(() => {\n if (\n AsyncResult.isPending(meDataAsync) ||\n AsyncResult.isPending(aisAvailableProducts)\n ) {\n return;\n }\n\n const meData = meDataAsync.catch(() => null).value;\n\n // check XSRF for logged out user, redirect to identity if 401 - in response to HOT-102965\n if (!meData) {\n stargateClient.getSignupServerXsrfToken().catch((e) => {\n if (isResponseError(e) && e.response.status === 401) {\n const identityQueryParams = new URLSearchParams({\n continue: Url.getUrl()\n });\n const redirectUrl = `${Environment.getIdentityBaseUrl()}/login?${identityQueryParams}`;\n window.location.assign(redirectUrl);\n }\n });\n }\n\n const aisAvailableProductsResult = aisAvailableProducts.catch(\n () => null\n ).value;\n let sitesData = aisAvailableProductsResult?.sites;\n const isNewUser = aisAvailableProductsResult?.isNewUser;\n let name = meData?.name;\n if (name !== undefined && name.includes('@')) {\n name = name.split('@')[0];\n }\n // Customer has BB if they have adminAccess to a site with BB\n const hasBitbucket = (sitesData || [])\n .filter((site: SitesType) => site?.adminAccess)\n .some((site) => {\n return site.products.some((product) => {\n return product === ProductKey.BITBUCKET;\n });\n });\n\n sitesData =\n sitesData &&\n sitesData.filter((site) => {\n return !['bitbucket', 'Bitbucket'].includes(site.displayName);\n });\n\n setUserInfo({\n isLoggedIn: !!meData,\n email: meData?.email || null,\n fullName: meData?.name || null,\n firstName: getFirstName(name) || undefined,\n lastName: getLastName(name) || null,\n sites: sitesData || null,\n extendedTrialOverridableSites: null,\n picture: meData?.picture || null,\n accountId: meData?.accountId || null,\n hasBitbucket,\n isNewUser: !!isNewUser\n });\n }, [meDataAsync, aisAvailableProducts]);\n\n return userInfo;\n};\n","import {\n HamletClientConstructorType,\n HamletClientInterface,\n HamletClientOptionsType,\n HamletPricingRequestType,\n HamletPricingResponseType,\n ResendVerificationEmailRequestType,\n ResendVerificationEmailResponseType\n} from '../../model/check-email-page';\n\nconst DEFAULT_BASE_URL =\n 'https://wac.stg.internal.atlassian.com//apis/stg/hamlet';\n\n/**\n * This class is extremely similar to the Hamlet client within the asc-cofs package. This class was created here,\n * rather than adding the appropriate functionality to the asc-cofs package itself, just because this was the path of\n * least resistance when creating this bxpkit package.\n */\nexport const HamletClient: HamletClientConstructorType = class HamletClientClass\n implements HamletClientInterface\n{\n private readonly baseUrl: string;\n\n constructor({ baseUrl = DEFAULT_BASE_URL }: HamletClientOptionsType = {}) {\n this.baseUrl = baseUrl;\n }\n\n async hamletPricing({\n productKeys,\n licenseType = 'evaluation',\n requestingApplication = 'WAC',\n monthsValid = '1'\n }: HamletPricingRequestType): Promise {\n const productKeysParam =\n productKeys.length > 0\n ? `&${productKeys.map((p) => `productKey=${p}`).join('&')}`\n : '';\n\n const url =\n `${this.baseUrl}/1.0/public/pricing/query?licenseType=${licenseType}` +\n `${productKeysParam}&requestingApplication=${requestingApplication}` +\n `&monthsValid=${monthsValid}` +\n `&cacheBuster=${new Date().getTime()}`;\n\n return await fetch(url, {\n method: 'GET',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n }\n })\n .then((response) => response.json())\n .catch(() => {\n return { products: [] };\n });\n }\n\n /**\n * If pagePath exists, use /sendVerify, else use /verify\n * @param resendData - R.E.D Object\n */\n\n sendEmail(\n resendData: ResendVerificationEmailRequestType\n ): Promise {\n if (resendData?.pagePath) {\n return this.resendVerificationEmail(resendData);\n } else {\n return this.sendVerificationEmail(resendData);\n }\n }\n\n /**\n * Typical resend endpoint, used in most cases\n */\n\n async sendVerificationEmail({\n cloudName,\n email,\n primaryProduct\n }: ResendVerificationEmailRequestType): Promise {\n const url =\n `${this.baseUrl}/1.0/public/aid/verify?` +\n `email=${encodeURIComponent(email || '')}&` +\n `accountName=${encodeURIComponent(cloudName || '')}&` +\n `primaryProduct=${encodeURIComponent(primaryProduct || '')}`;\n\n return await fetch(url, { method: 'POST' })\n .then((response) => {\n return {\n success: response.ok,\n status: response.status\n };\n })\n .catch(() => {\n return {\n success: false,\n status: 400\n };\n });\n }\n\n /**\n * Resend endpoint used if pagePath exists, used for:\n * - when sitename is auto-generated (except for social login case) (pagePath = 'rename/site')\n * - Confluence account set up flow (pagePath = 'account/setup')\n */\n\n async resendVerificationEmail({\n cloudId,\n cloudName,\n email,\n pagePath,\n requestId\n }: ResendVerificationEmailRequestType): Promise {\n return await fetch(`${this.baseUrl}/1.0/public/aid/sendVerify`, {\n method: 'POST',\n headers: {\n 'Accept': 'application/json',\n 'Content-Type': 'application/json'\n },\n body: JSON.stringify({\n accountName: cloudName,\n cloudId,\n cloudName: cloudName ? encodeURIComponent(cloudName) : undefined,\n email,\n pagePath: pagePath ? encodeURIComponent(pagePath) : undefined,\n requestId\n })\n })\n .then((response) => {\n return {\n success: response.ok,\n status: response.status\n };\n })\n .catch(() => {\n return {\n success: false,\n status: 400\n };\n });\n }\n};\n","import { useReducer } from 'react';\nimport { HamletClient } from '../service/check-email-page/mini-hamlet-client';\n\nimport {\n CheckEmailAnalyticsInterface,\n ResendVerificationEmailRequestType\n} from '../model/check-email-page';\n\nexport enum ResendEmailStatuses {\n 'NO_STATUS',\n 'REQUESTING',\n 'SUCCESS',\n 'FAILURE'\n}\n\nenum ResendEmailActions {\n 'SEND_REQUEST',\n 'SUCCESS',\n 'FAILURE'\n}\n\nexport type ResendEmailState = {\n status: ResendEmailStatuses;\n error?: string;\n};\n\ntype ResendEmailAction = {\n type: ResendEmailActions;\n error?: string;\n};\n\nconst initialState: ResendEmailState = {\n status: ResendEmailStatuses.NO_STATUS,\n error: undefined\n};\n\n/**\n * useReducer requires these parameters, but TS won't allow us to have 'state' here unused.\n * Instead, we can use _state to indicate to TS that we're alright with not using this variable, but then\n * TSLint complains about our variable name not matching the required format, so we're disabling that rule here.\n */\n/* tslint:disable-next-line:variable-name */\nconst reducer = (_state: ResendEmailState, action: ResendEmailAction) => {\n switch (action.type) {\n case ResendEmailActions.SEND_REQUEST:\n return {\n ...initialState,\n status: ResendEmailStatuses.REQUESTING\n };\n case ResendEmailActions.SUCCESS:\n return {\n ...initialState,\n status: ResendEmailStatuses.SUCCESS\n };\n case ResendEmailActions.FAILURE:\n return {\n ...initialState,\n status: ResendEmailStatuses.FAILURE,\n error: action.error\n };\n }\n};\n\ninterface UseResendEmailAPIProps {\n baseUrl?: string;\n checkEmailAnalyticsService: CheckEmailAnalyticsInterface;\n}\n\nconst useResendEmailAPI = ({\n baseUrl,\n checkEmailAnalyticsService\n}: UseResendEmailAPIProps) => {\n const client = new HamletClient({ baseUrl });\n const [state, dispatch] = useReducer(reducer, initialState);\n\n const triggerResendEmail = (\n resendEmailData: ResendVerificationEmailRequestType\n ) => {\n dispatch({ type: ResendEmailActions.SEND_REQUEST });\n\n return client.sendEmail(resendEmailData).then((data) => {\n if (data?.status === 200) {\n checkEmailAnalyticsService.resendApiSuccess();\n }\n if (data?.status === 204) {\n checkEmailAnalyticsService.resendApiNoContent();\n }\n if (data?.status === 304) {\n checkEmailAnalyticsService.resendApiAlreadyVerified();\n }\n\n if (data.success) {\n dispatch({ type: ResendEmailActions.SUCCESS });\n return true;\n }\n\n checkEmailAnalyticsService.resendApiFailure();\n dispatch({ type: ResendEmailActions.FAILURE });\n return false;\n });\n };\n\n return { state, triggerResendEmail };\n};\n\nexport default useResendEmailAPI;\n","import { useEffect, useState } from 'react';\n\nexport type ResendEmailData = {\n cloudId?: string;\n cloudName?: string;\n email?: string;\n pagePath?: string;\n requestId?: string;\n resendCount: number;\n shouldEnable: boolean;\n primaryProduct?: string;\n};\n\nconst useResendEmailData = (): [ResendEmailData, () => void] => {\n const [cloudId, setCloudId] = useState();\n const [cloudName, setCloudName] = useState();\n const [email, setEmail] = useState();\n const [primaryProduct, setPrimaryProduct] = useState();\n const [pagePath, setPagePath] = useState();\n const [requestId, setRequestId] = useState();\n const [resendCount, setResendCount] = useState(0);\n const [shouldEnable, setShouldEnable] = useState(false);\n\n const setResendEmailData = (rawData: string | null) => {\n try {\n const parsedData = JSON.parse(rawData || '{}');\n setCloudId(parsedData.cloudId);\n setCloudName(decodeURIComponent(parsedData.cloudName || ''));\n setEmail(decodeURIComponent(parsedData.email || ''));\n setPrimaryProduct(decodeURIComponent(parsedData.primaryProduct || ''));\n setPagePath(parsedData.pagePath);\n setRequestId(parsedData.requestId);\n setResendCount(parsedData.resendCount || 0);\n setShouldEnable(isValidData(parsedData));\n } catch (e) {\n setCloudId(undefined);\n setCloudName(undefined);\n setEmail(undefined);\n setPrimaryProduct(undefined);\n setPagePath(undefined);\n setRequestId(undefined);\n setResendCount(0);\n setShouldEnable(false);\n }\n };\n\n const isValidData = (data: ResendEmailData): boolean => {\n return Boolean(\n data.cloudId &&\n data.cloudName &&\n data.email &&\n data.pagePath &&\n data.requestId &&\n data.primaryProduct\n );\n };\n\n const incrementCount = () => {\n setResendCount(resendCount + 1);\n };\n\n useEffect(() => {\n const rawData = sessionStorage.getItem('r.e.d');\n\n if (rawData) {\n try {\n setResendEmailData(atob(rawData));\n } catch {\n setResendEmailData(null);\n }\n }\n }, []);\n\n // update all data in sessionStorage whenever it changes.\n useEffect(() => {\n const data: ResendEmailData = {\n cloudId,\n cloudName: encodeURIComponent(cloudName || ''),\n email: encodeURIComponent(email || ''),\n pagePath,\n requestId,\n resendCount,\n shouldEnable,\n primaryProduct\n };\n if (isValidData(data)) {\n sessionStorage.setItem('r.e.d', btoa(JSON.stringify(data)));\n }\n }, [\n cloudId,\n cloudName,\n email,\n pagePath,\n requestId,\n resendCount,\n primaryProduct\n ]);\n\n return [\n {\n cloudId,\n cloudName,\n email,\n pagePath,\n requestId,\n resendCount,\n shouldEnable,\n primaryProduct\n },\n incrementCount\n ];\n};\n\nexport default useResendEmailData;\n","export const sanitizeLastName = (lastName: string | null): string => {\n return lastName || '.';\n};\n","import { ProductKey } from '@atlassiansox/bxpkit-core';\nimport _ from 'lodash';\nimport {\n GetProductKeysOptionsType,\n IncludesProductOptionsType,\n ProductKeysType\n} from '../../../../../model';\nimport {\n BITBUCKET,\n EDITION_LABEL_ARRAY,\n FREE_EDITION_LABEL_KEY,\n OPSGENIE,\n PREMIUM_EDITION_LABEL_KEY,\n PRODUCT_NAMES,\n STANDARD_EDITION_LABEL_KEY\n} from './constants';\n\n/**\n * Transform productData into to Product-typed shape\n */\n\nexport const getProductKeys = ({\n productData,\n queryParameters,\n productOverride,\n bundleOverride,\n editionOverride\n}: GetProductKeysOptionsType): ProductKeysType[] => {\n // Check for JSM, overwrite to JSD productKey\n if (queryParameters?.product?.includes('jira-service-management.ondemand')) {\n queryParameters.product = queryParameters.product\n .split(',')\n .map((product: string) => {\n return product === 'jira-service-management.ondemand'\n ? ProductKey.JIRA_SERVICE_DESK\n : product;\n })\n .join();\n }\n\n let productOrBundleData = queryParameters.hasOwnProperty('product')\n ? _.find(productData, { bundleProductKeys: `${queryParameters.product}` })\n : _.get(\n productData,\n `${queryParameters.bundle}`.split('.')[0],\n _.get(productData, 'default')\n );\n\n if (productOrBundleData === undefined) {\n productOrBundleData = productData.default;\n }\n if (productOverride && productOverride.length > 0) {\n productOrBundleData = _.find(productData, {\n bundleProductKeys: productOverride\n });\n }\n if (bundleOverride && bundleOverride.length > 0) {\n productOrBundleData = _.get(\n productData,\n `${bundleOverride}`.split('.')[0],\n _.get(productData, 'default')\n );\n }\n\n const editionQueryParmSupplied = queryParameters.hasOwnProperty('edition');\n const migrationSourceUuidParmSupplied = queryParameters.hasOwnProperty(\n 'migrationSourceUuid'\n );\n\n let edition: string;\n if (queryParameters.hasOwnProperty('edition')) {\n edition = EDITION_LABEL_ARRAY.some(\n (label) => label.toLowerCase() === queryParameters.edition\n )\n ? queryParameters.edition\n : FREE_EDITION_LABEL_KEY.toLowerCase();\n } else {\n edition = FREE_EDITION_LABEL_KEY.toLowerCase();\n }\n\n if (editionOverride && editionOverride.length > 0) {\n edition = editionOverride.toLowerCase();\n }\n\n /* Extended Cloud Trial License (ECTL) instances should be Standard Edition\n if no edition query parm supplied*/\n if (migrationSourceUuidParmSupplied && !editionQueryParmSupplied) {\n edition = STANDARD_EDITION_LABEL_KEY.toLowerCase();\n } else if (\n migrationSourceUuidParmSupplied &&\n editionQueryParmSupplied &&\n edition === FREE_EDITION_LABEL_KEY.toLowerCase()\n ) {\n // force standard edition if query parm supplied was set to free.\n edition = edition = STANDARD_EDITION_LABEL_KEY.toLowerCase();\n }\n\n // Developer Instances should always be Standard Edition\n if (queryParameters.hasOwnProperty('developer')) {\n edition = STANDARD_EDITION_LABEL_KEY.toLowerCase();\n }\n\n // SPICE-448: Prototype products Point A - alpha or beta editions\n if (productOrBundleData?.bundleProductKeys === ProductKey.COMPASS) {\n // BXPSU-1499 Compass GA Launch - Add support for Free and Standard\n // No Compass Premium edition so instead gets set to Standard edition\n if (edition === PREMIUM_EDITION_LABEL_KEY.toLowerCase()) {\n edition = STANDARD_EDITION_LABEL_KEY.toLowerCase();\n }\n }\n\n const imgSource = _.get(productOrBundleData, 'iconSrc');\n const serverDownloadContent = _.get(productOrBundleData, 'calloutRichText');\n const productContent = _.get(productOrBundleData, 'products');\n\n return _.map(\n (_.get(productOrBundleData, 'bundleProductKeys') || '').split(','),\n (keys) => {\n return {\n product: keys,\n edition,\n imgSource,\n serverDownloadContent,\n productContent\n };\n }\n );\n};\n\n/**\n * Given Product Key, return Product name\n */\n\nexport const getProductNameFromKey = (productKey: string): string => {\n const nameIdx = PRODUCT_NAMES.map((name: string) =>\n name.toLowerCase()\n ).findIndex((productName) => productKey.includes(productName));\n return nameIdx === -1 ? '' : PRODUCT_NAMES[nameIdx];\n};\n\n/**\n * Check for a matching productName within products\n */\n\nexport const includesProduct = ({\n products,\n productName\n}: IncludesProductOptionsType): boolean => {\n return products.some(({ product: productKey }) => {\n if (typeof productKey !== 'string') {\n return false;\n }\n return getProductNameFromKey(productKey) === productName;\n });\n};\n\nexport const onProductsRequireSitename = (productKeys: ProductKeysType[]) => {\n return productKeys\n .map(({ product: productKey }) => productKey)\n .map(getProductNameFromKey)\n .some((productName: string) => [BITBUCKET, OPSGENIE].includes(productName));\n};\n","import {\n getIsBundleBbJsw,\n getIsBundleDevops,\n ProductKey\n} from '@atlassiansox/bxpkit-core';\nimport _ from 'lodash';\nimport {\n GetEditionLabelsOptionsType,\n GetEditionLabelsReturnType,\n GetFeaturesListOptionsType,\n GetSideInfoHeaderOptionsType,\n GetTrialDurationSiteLabelOptionsType\n} from '../../../../../model';\nimport {\n BITBUCKET,\n BUNDLE_LABEL_KEY,\n DEVELOPER_MODE,\n DEVOPS,\n FIRST_IMPRESSION_JIRA_SOFTWARE_FEATURE_LIST,\n FREE_EDITION_LABEL_KEY,\n JIRA_CORE,\n JIRA_PRODUCT_DISCOVERY,\n JSD,\n JSW,\n OPSGENIE,\n FABRIC,\n BEACON,\n SIGNUP_OFFERING_LABEL_KEY_PREFIX,\n SIGNUP_SIDE_INFO_HEADER_PREFIX,\n STATUSPAGE,\n TRIAL_DURATION_LABEL_KEY_EXISTING_SITE,\n TRIAL_DURATION_LABEL_KEY_NEW_SITE,\n WAC_SIGNUP_FORM_KEY_BASE,\n JIRA_FAMILY\n} from './constants';\nimport { getProductNameFromKey } from './data-product';\nimport { useSignUpFormConfig } from '../../../../../hook';\n\n/**\n * Label for side-info header (if applicable)\n */\n\nexport const getSideInfoHeader = ({\n labels,\n productKeys,\n developerMode\n}: GetSideInfoHeaderOptionsType): string => {\n let contentKey = SIGNUP_SIDE_INFO_HEADER_PREFIX;\n\n if (getIsBundleBbJsw(productKeys)) {\n contentKey += BUNDLE_LABEL_KEY + JSW + BITBUCKET;\n }\n\n if (getIsBundleDevops(productKeys)) {\n contentKey += BUNDLE_LABEL_KEY + DEVOPS;\n }\n\n if (developerMode) {\n contentKey += BUNDLE_LABEL_KEY + DEVELOPER_MODE;\n }\n\n return labels[contentKey];\n};\n\n/**\n * Edition Labels, eg. 'Cloud Free', 'Cloud Premium'\n */\n\nexport const getEditionLabels = ({\n productKey,\n edition: originalEdition\n}: GetEditionLabelsOptionsType): GetEditionLabelsReturnType => {\n let editionLabel = `Cloud ${_.capitalize(\n originalEdition || FREE_EDITION_LABEL_KEY\n )}`;\n let featuresListEditionLabelKey = originalEdition || FREE_EDITION_LABEL_KEY;\n\n if (getProductNameFromKey(productKey) === STATUSPAGE) {\n editionLabel = '';\n }\n\n return { editionLabel, featuresListEditionLabelKey };\n};\n\n/**\n * Trial duration text, eg. '1-month free cloud trial',\n * for existing sites\n *\n * Returns empty string for BB & Statuspage\n */\n\nexport const getTrialDurationExistingSiteLabel = ({\n productKey,\n labels\n}: GetTrialDurationSiteLabelOptionsType): string => {\n const productName = getProductNameFromKey(productKey);\n return productName === BITBUCKET || productName === STATUSPAGE\n ? ''\n : labels[TRIAL_DURATION_LABEL_KEY_EXISTING_SITE];\n};\n\n/**\n * Trial duration text, eg. '7-day free cloud trial',\n * for new sites\n *\n * Returns empty string for BB & Statuspage\n */\n\nexport const getTrialDurationNewSiteLabel = ({\n productKey,\n labels\n}: GetTrialDurationSiteLabelOptionsType): string => {\n const productName = getProductNameFromKey(productKey);\n return productName === BITBUCKET || productName === STATUSPAGE\n ? ''\n : labels[\n TRIAL_DURATION_LABEL_KEY_NEW_SITE +\n (productName === OPSGENIE ? OPSGENIE : '')\n ];\n};\n\n/**\n * Get list of features, eg. side-info
  • 's\n */\n\nexport const getFeaturesList = ({\n labels,\n products,\n productKey,\n featuresListEditionLabelKey,\n migrationData,\n developerMode\n}: GetFeaturesListOptionsType): string => {\n const { bundle } = useSignUpFormConfig();\n const isBundle = products.length > 1;\n const edition = _.capitalize(featuresListEditionLabelKey);\n const includesJiraServiceManagement = _.includes(\n _.map(products, (val) => val.product === ProductKey.JIRA_SERVICE_DESK),\n true\n );\n if (migrationData && migrationData.migrationSourceUuid) {\n // bitbucket\n if (bundle === 'bitbucket' || productKey.includes(ProductKey.BITBUCKET)) {\n // Forcing premium edition for Bitbucket CMTs.\n // The Edition is overriden to free when calling this function from the SideInfo component\n return labels[SIGNUP_OFFERING_LABEL_KEY_PREFIX + 'Premium' + BITBUCKET];\n }\n\n const migrationFeatureList =\n labels[`${WAC_SIGNUP_FORM_KEY_BASE}migrationFeatureList`] || '';\n if (\n migrationData.migrationUserLimit &&\n migrationData.migrationUserType &&\n migrationData.migrationProductName\n ) {\n return migrationFeatureList\n .replace('{productName}', migrationData.migrationProductName)\n .replace('{usageLimit}', migrationData.migrationUserLimit.toString())\n .replace('{userType}', migrationData.migrationUserType);\n }\n return migrationFeatureList;\n }\n\n let productNameFromKey = getProductNameFromKey(productKey);\n\n // JSD Standalone\n if (productKey.includes(ProductKey.JIRA_SERVICE_DESK)) {\n productNameFromKey = JSD;\n }\n\n if (\n productKey.includes(ProductKey.JIRA_CORE) &&\n products[0].edition === 'premium'\n ) {\n return labels[SIGNUP_OFFERING_LABEL_KEY_PREFIX + 'Premium' + JIRA_CORE];\n }\n\n // Jira Core Standalone\n if (productKey.includes(ProductKey.JIRA_CORE)) {\n productNameFromKey = JIRA_CORE;\n }\n\n // Jira Software Standalone\n if (productKey.includes(ProductKey.JIRA_SOFTWARE)) {\n productNameFromKey = FIRST_IMPRESSION_JIRA_SOFTWARE_FEATURE_LIST;\n }\n\n // Free bundles that include JSD\n if (\n isBundle &&\n includesJiraServiceManagement &&\n edition === FREE_EDITION_LABEL_KEY\n ) {\n productNameFromKey = BUNDLE_LABEL_KEY + JSD;\n }\n\n // jira-software-bitbucket\n if (getIsBundleBbJsw(products)) {\n productNameFromKey = BUNDLE_LABEL_KEY + JSW + BITBUCKET;\n }\n\n // devops\n if (getIsBundleDevops(products)) {\n productNameFromKey = BUNDLE_LABEL_KEY + DEVOPS;\n }\n\n if (developerMode) {\n productNameFromKey = BUNDLE_LABEL_KEY + DEVELOPER_MODE;\n }\n\n // team central\n if (productKey.includes(ProductKey.TEAM_CENTRAL)) {\n productNameFromKey = 'TeamCentral';\n }\n\n if (productKey.includes(ProductKey.JIRA_PRODUCT_DISCOVERY)) {\n productNameFromKey = JIRA_PRODUCT_DISCOVERY;\n }\n\n if (productNameFromKey.endsWith('DeveloperMode')) {\n return labels[\n SIGNUP_OFFERING_LABEL_KEY_PREFIX + 'Standard' + productNameFromKey\n ];\n }\n\n // canvas\n if (productKey.includes(ProductKey.FABRIC)) {\n productNameFromKey = FABRIC;\n }\n\n // beacon\n if (productKey.includes(ProductKey.BEACON)) {\n productNameFromKey = BEACON;\n }\n // jira family\n if (isBundle && bundle === 'jira') {\n productNameFromKey = JIRA_FAMILY;\n }\n\n return labels[\n SIGNUP_OFFERING_LABEL_KEY_PREFIX + edition + productNameFromKey\n ];\n};\n","import { FirstImpressionsImageUrlsType } from '../../../../../model';\nimport {\n COMPASS,\n CONFLUENCE,\n FABRIC,\n JIRA_CORE,\n JIRA_PRODUCT_DISCOVERY,\n JSD,\n TEAM_CENTRAL,\n BEACON,\n JIRA_FAMILY,\n BITBUCKET\n} from './constants';\n\nexport const getSocialProofProductLabel = (productKey: string) => {\n switch (productKey) {\n case 'jira-servicedesk.ondemand':\n return JSD;\n case 'confluence.ondemand':\n return CONFLUENCE;\n case 'jira-core.ondemand':\n return JIRA_CORE;\n case 'townsquare':\n return TEAM_CENTRAL;\n case 'jira-product-discovery':\n return JIRA_PRODUCT_DISCOVERY;\n case 'compass':\n return COMPASS;\n case 'atlassian-whiteboard':\n return FABRIC;\n case 'beacon':\n return BEACON;\n case 'jira':\n return JIRA_FAMILY;\n case 'com.atlassian.bitbucket':\n return BITBUCKET;\n default:\n return '';\n }\n};\n\nexport const getSocialProofImageURLs = (\n productKey: string,\n firstImpressionsImageUrls: FirstImpressionsImageUrlsType\n) => {\n switch (productKey) {\n case 'jira-servicedesk.ondemand':\n return {\n heroImage: firstImpressionsImageUrls.jiraServiceDesk.heroImage,\n logoImage: firstImpressionsImageUrls.jiraServiceDesk.socialProofImage\n };\n case 'confluence.ondemand':\n return {\n heroImage: firstImpressionsImageUrls.confluence.heroImage,\n logoImage: firstImpressionsImageUrls.confluence.socialProofImage\n };\n case 'jira-core.ondemand':\n return {\n heroImage: firstImpressionsImageUrls.jiraCore.heroImage,\n logoImage: firstImpressionsImageUrls.jiraCore.socialProofImage\n };\n case 'townsquare':\n return {\n heroImage: firstImpressionsImageUrls.teamCentral.heroImage,\n logoImage: firstImpressionsImageUrls.teamCentral.socialProofImage\n };\n case 'jira-product-discovery':\n return {\n heroImage: firstImpressionsImageUrls.jiraProductDiscovery.heroImage,\n logoImage:\n firstImpressionsImageUrls.jiraProductDiscovery.socialProofImage\n };\n case 'compass':\n return {\n heroImage: firstImpressionsImageUrls.compass.heroImage,\n logoImage: firstImpressionsImageUrls.compass.socialProofImage\n };\n case 'atlassian-whiteboard':\n return {\n heroImage: firstImpressionsImageUrls.fabric.heroImage,\n logoImage: firstImpressionsImageUrls.fabric.socialProofImage\n };\n case 'beacon':\n return {\n heroImage: firstImpressionsImageUrls.beacon.heroImage,\n logoImage: firstImpressionsImageUrls.beacon.socialProofImage\n };\n case 'jira':\n return {\n heroImage: firstImpressionsImageUrls.jira.heroImage,\n logoImage: firstImpressionsImageUrls.jira.socialProofImage\n };\n case 'com.atlassian.bitbucket':\n return {\n heroImage: firstImpressionsImageUrls.bitbucket.heroImage,\n logoImage: firstImpressionsImageUrls.bitbucket.socialProofImage\n };\n default:\n return {\n heroImage: firstImpressionsImageUrls.jiraSoftware.heroImage,\n logoImage: firstImpressionsImageUrls.jiraSoftware.socialProofImage\n };\n }\n};\n","import { GetAccountOrgsResponse } from '@atlassiansox/asc-stargate';\n\nexport type AccountOrg = GetAccountOrgsResponse[0];\n\nexport enum VortexStatus {\n ENABLED = 'ENABLED',\n DISABLED = 'DISABLED'\n}\n\n/**\n *\n * @param orgList List of account org information\n * @returns Record that maps Vortex Status to the respective number of orgs\n */\nexport function getOrgAdminVortexStatusCounts(\n orgList: GetAccountOrgsResponse\n): Record {\n const orgCount = {\n [VortexStatus.ENABLED]: 0,\n [VortexStatus.DISABLED]: 0\n };\n\n orgList.forEach(({ isAdmin, vortexMode }) => {\n if (isAdmin && !!vortexMode) orgCount[vortexMode as VortexStatus]++;\n });\n\n return orgCount;\n}\n","import { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';\n\ntype LogBitbucketAnalyticsOptions = {\n readonly createAnalyticsEvent: CreateUIAnalyticsEvent;\n readonly analytics: BitbucketAnalyticsArgs;\n readonly eventType?: string;\n};\n\ntype BitbucketAnalyticsArgs = {\n readonly event: string;\n readonly attributes?: { [key: string]: any };\n readonly eventType: string;\n readonly action: string;\n};\n\nexport const BITBUCKET_ANALYTICS_EVENTS = {\n ORG_CREATE: 'orgCreate',\n ORG_CREATE_STATUS: 'orgCreateStatus',\n ORG_FETCH: 'getAccountOrgs',\n WORKSPACE_PROVISION: 'activateProductBitbucket'\n};\n\nexport const BITBUCKET_EVENT_NAMES = {\n VIEWED: 'viewed',\n CLICKED: 'clicked',\n ERROR: 'errored',\n SUCCESS: 'succeeded'\n};\n\nexport function logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics,\n eventType = 'operational'\n}: LogBitbucketAnalyticsOptions): void {\n const analyticsEvent = createAnalyticsEvent({\n eventComponent: 'signUpBitbucketCMT',\n actionSubject: 'signupForm',\n source: 'bitbucketWacSignupPage',\n ...analytics\n });\n\n // manually adjust the analytics context to use operational event type if it exists\n if (analyticsEvent.context && analyticsEvent.context.length > 0) {\n analyticsEvent.context[0].eventType = eventType;\n }\n\n analyticsEvent.fire();\n}\n\ntype BitbucketProvFailAnalytics = {\n readonly createAnalyticsEvent: CreateUIAnalyticsEvent;\n readonly metadata?: { [key: string]: any };\n};\n\nexport async function trackBitbucketWorkspaceProvFailure({\n createAnalyticsEvent,\n metadata\n}: BitbucketProvFailAnalytics): Promise {\n logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics: {\n event: `${BITBUCKET_ANALYTICS_EVENTS.WORKSPACE_PROVISION} provisioned`,\n eventType: 'operational',\n action: 'errored',\n attributes: metadata\n }\n });\n}\n","import {\n CreateUIAnalyticsEvent,\n useAnalyticsEvents\n} from '@atlaskit/analytics-next';\nimport {\n GetAccountOrgsResponse,\n IStargateClient\n} from '@atlassiansox/asc-stargate';\nimport { useStargateClient } from '@atlassiansox/bxpkit-core';\nimport { useEffect, useState } from 'react';\nimport {\n BITBUCKET_ANALYTICS_EVENTS,\n logBitbucketAnalytics\n} from '../service/sign-up-form/bitbucket-analytics';\n\nexport type UseOrgInfoOptions = {\n readonly stargateClient: IStargateClient;\n readonly createAnalyticsEvent: CreateUIAnalyticsEvent;\n} & OrgInfoRequest;\n\nexport type OrgInfoRequest = {\n readonly includeOrgResponse: boolean;\n readonly includeVortexMode: boolean;\n};\n\nexport type OrgInfoResponse = {\n readonly orgList: GetAccountOrgsResponse | null;\n readonly hasError: boolean;\n readonly completed: boolean;\n};\n\nexport const DEFAULT_ORG_RESPONSE = {\n orgList: [],\n hasError: false,\n completed: true\n};\n\n/**\n * Hook that provides org info relevant to signup\n */\n\nexport function useOrgInfo(request: OrgInfoRequest) {\n const stargateClient = useStargateClient();\n const { createAnalyticsEvent } = useAnalyticsEvents();\n\n return fetchOrgInfo({\n stargateClient,\n createAnalyticsEvent,\n ...request\n });\n}\n\n/**\n * Helper that invokes the org info API call\n */\n\nexport function fetchOrgInfo({\n includeOrgResponse,\n includeVortexMode,\n stargateClient,\n createAnalyticsEvent\n}: UseOrgInfoOptions): OrgInfoResponse {\n if (!includeOrgResponse) {\n return { orgList: null, hasError: false, completed: true };\n }\n\n const [orgInfo, setOrgInfo] = useState(null);\n const [hasError, setHasError] = useState(false);\n const [completed, setCompleted] = useState(false);\n\n const fetchOrgInfo = async () => {\n await stargateClient\n .getAccountOrgs({ includeVortexMode: includeVortexMode })\n .then((orgs: GetAccountOrgsResponse) => {\n setOrgInfo(orgs);\n })\n .catch((error) => {\n setHasError(true);\n logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics: {\n event: `${BITBUCKET_ANALYTICS_EVENTS.ORG_FETCH} fetched`,\n eventType: 'operational',\n action: 'errored',\n attributes: {\n errorCode: error?.response?.status,\n errorMessage: error?.message\n }\n }\n });\n });\n };\n\n useEffect(() => {\n fetchOrgInfo().then((_) => setCompleted(true));\n }, []);\n\n return { orgList: orgInfo, hasError, completed };\n}\n","import _ from 'lodash';\nimport React, {\n createContext,\n PropsWithChildren,\n useContext,\n useEffect,\n useMemo,\n useState\n} from 'react';\n\nimport {\n BitbucketWorkspace,\n BitbucketWorkspaces,\n Product,\n ProductKeys,\n Sites,\n SubmitErrorType,\n WacSignupFormProps,\n WacSignupFormState\n} from '../model';\n\nimport {\n getIsBitbucket,\n getIsBundleBbJsw,\n getIsBundleDevops\n} from '@atlassiansox/bxpkit-core';\nimport OriginTracing from '@atlassiansox/origin-tracing';\nimport { messages } from '../messages/sign-up-form';\n\nimport {\n getOrgAdminVortexStatusCounts,\n sanitizeLastName\n} from '../layouts/legacy/view/utility';\nimport { useAppSelector } from '../redux';\nimport { DEFAULT_ORG_RESPONSE } from './use-org-info';\nimport { AccountOrg } from '../layouts/legacy/view/utility';\n\nfunction isSitesDefined(sites?: Sites[] | null): sites is Sites[] {\n return !!sites;\n}\n\nfunction isOpsgenieIncluded(productKeys: Product[]) {\n return _.includes(\n _.map(\n productKeys,\n (productKey: Product) => productKey.product === ProductKeys.OPSGENIE\n ),\n true\n );\n}\n\nexport function isProductIncluded(productKeys: Product[], product: string) {\n return _.includes(\n _.map(productKeys, (productKey: Product) => productKey.product),\n product\n );\n}\n\nexport function cleanseNonAdminWorkspaces(\n bitbucketWorkspaces: BitbucketWorkspaces\n) {\n const purifiedData: BitbucketWorkspace[] = _.filter(\n bitbucketWorkspaces.values,\n (workspace: BitbucketWorkspace) => workspace.permission === 'owner'\n );\n return purifiedData;\n}\n\nexport const SignUpFormUIStateContext = createContext({\n productKeys: [] as Product[],\n bitbucketWorkspaces: {\n size: 0,\n values: [] as BitbucketWorkspace[]\n },\n hideFullName: false,\n showEmail: false,\n userInfo: {\n firstName: '',\n fullName: '',\n lastName: '',\n email: '',\n sites: [] as Sites[],\n isLoggedIn: false,\n extendedTrialOverridableSites: [] as string[],\n accountId: '',\n isNewUser: false\n },\n marketingConsentRequired: false,\n signInAccountUrl: '',\n switchAccountUrl: '',\n originAnalyticsAttributes: {\n signInUser: null,\n switchUser: null\n },\n reCaptchaKey: '',\n devMode: false,\n migrationData: {\n migrationSourceUuid: '',\n migrationUserLimit: 0,\n migrationUserType: '',\n migrationProductName: '',\n migrationSites: [],\n invalidMigration: false,\n claimedMigration: false\n },\n isStaging: false,\n wacEnvUrl: '',\n locale: '',\n templateId: { templateId: '' },\n analyticsTrack: {\n newRelic: {\n action: () => undefined,\n attribute: () => undefined,\n trackAjax: () => undefined\n },\n segment: () => undefined\n },\n formExistingSiteShown: () => undefined,\n deferSiteNameCreation: false,\n defaultErrorType: SubmitErrorType.NO_ERROR,\n enableFreeBreachTest: false,\n simulateFreeBreachState: false,\n spProduct: '',\n hideGreeting: false,\n outlineOnFocus: false,\n fadeOnDisable: false,\n popOverError: false,\n enableFieldProgression: false,\n showWarningIcon: false,\n selectedSiteId: '',\n hideCaptchaEula: false,\n enableResendEmail: false,\n enableCarouselEndCard: false,\n firstImpressionsImageUrls: {\n backgroundImage: '',\n jiraSoftware: {\n heroImage: '',\n socialProofImage: ''\n },\n jiraServiceDesk: {\n heroImage: '',\n socialProofImage: ''\n },\n confluence: {\n heroImage: '',\n socialProofImage: ''\n },\n jiraCore: {\n heroImage: '',\n socialProofImage: ''\n },\n teamCentral: {\n heroImage: '',\n socialProofImage: ''\n },\n jiraProductDiscovery: {\n heroImage: '',\n socialProofImage: ''\n },\n compass: {\n heroImage: '',\n socialProofImage: ''\n },\n fabric: {\n heroImage: '',\n socialProofImage: ''\n },\n beacon: {\n heroImage: '',\n socialProofImage: ''\n },\n jira: {\n heroImage: '',\n socialProofImage: ''\n },\n bitbucket: {\n heroImage: '',\n socialProofImage: ''\n }\n },\n siteRenamePageUrl: '',\n enableSkipRecaptcha: false,\n userOrgInfo: DEFAULT_ORG_RESPONSE\n});\n\nexport type SignUpFormUIStateProviderProps = PropsWithChildren<{\n readonly signUpFormProps: WacSignupFormProps;\n}>;\n\nexport function SignUpFormUIStateProvider({\n signUpFormProps,\n children\n}: SignUpFormUIStateProviderProps) {\n return (\n \n {children}\n \n );\n}\n\nexport type PickableExistingSitesOptions = {\n productKeys: Product[];\n isBundleBBJSW: boolean;\n isBundleDevops: boolean;\n isTeamCentral: boolean;\n isJpd: boolean;\n isCompass: boolean;\n isOpsgenie: boolean;\n isJswJsmBundle: boolean;\n isJswJwmBundle: boolean;\n sitesToFilter: Sites[];\n extendedTrialOverridableSites: string[] | null;\n};\n\nexport function getPickableExistingSites({\n productKeys,\n isBundleBBJSW = false,\n isBundleDevops = false,\n isTeamCentral = false,\n isJpd = false,\n isCompass = false,\n isOpsgenie = false,\n isJswJsmBundle = false,\n isJswJwmBundle = false,\n sitesToFilter,\n extendedTrialOverridableSites = []\n}: PickableExistingSitesOptions): Sites[] {\n // filter user's sites excluding sites with target products being signed up for\n const defaultProductKeys = productKeys.map((product) => product.product);\n\n // filter user's sites excluding sites with target products being signed up for,\n const targetProductKeys = productKeys.map((product) => product.product);\n\n const hasExtendedTrialOverride = (cloudId: string): boolean => {\n return (\n (extendedTrialOverridableSites &&\n extendedTrialOverridableSites.includes(cloudId)) ||\n false\n );\n };\n\n let pickableSites: Sites[] = [];\n\n if (isBundleBBJSW) {\n // BB/JSW: only filter out SP/OG, not JSW: user must\n // be able to add BB workspace to JSW site)\n const bbJswFilteredProductKeys: string[] = [\n ProductKeys.STATUSPAGE,\n ProductKeys.OPSGENIE\n ];\n\n // filter out non admin sites for bbjsw\n const adminSites = sitesToFilter.filter((site) => site.adminAccess);\n\n pickableSites = adminSites.filter((site) => {\n const sitesMatch = site.products.map((product) => {\n return !bbJswFilteredProductKeys.includes(product);\n });\n return !sitesMatch.includes(false);\n });\n } else if (isOpsgenie) {\n // OG: also filter out JSM\n targetProductKeys.push(ProductKeys.JIRA_SERVICE_DESK);\n targetProductKeys.push(ProductKeys.STATUSPAGE);\n pickableSites = sitesToFilter.filter((site) => {\n const sitesMatch = site.products.map((product) => {\n return !targetProductKeys.includes(product);\n });\n return !sitesMatch.includes(false);\n });\n } else if (isBundleDevops) {\n // filter out non admin sites for devops\n const adminSites = sitesToFilter.filter((site) => site.adminAccess);\n targetProductKeys.push(ProductKeys.STATUSPAGE);\n targetProductKeys.push(ProductKeys.OPSGENIE);\n pickableSites = adminSites.filter((site) => {\n return (\n !_.some(site.products, (product: string) =>\n targetProductKeys.includes(product)\n ) || hasExtendedTrialOverride(site.cloudId)\n );\n });\n } else if (isTeamCentral || isJpd || isCompass) {\n // do not filter out sites containing OG or SP\n pickableSites = sitesToFilter.filter((site) => {\n return (\n !_.some(site.products, (product: string) =>\n defaultProductKeys.includes(product)\n ) || hasExtendedTrialOverride(site.cloudId)\n );\n });\n } else if (isJswJsmBundle || isJswJwmBundle) {\n // Setting pickableSites to empty array to disable site picker\n // https://hello.jira.atlassian.cloud/browse/BXPSU-2449\n // https://hello.jira.atlassian.cloud/browse/BXPSU-2533\n pickableSites = [];\n } else {\n // default filtering\n pickableSites = sitesToFilter.filter((site) => {\n return (\n !_.some(site.products, (product: string) =>\n targetProductKeys.includes(product)\n ) || hasExtendedTrialOverride(site.cloudId)\n );\n });\n }\n\n // remove all sandbox sites\n pickableSites = pickableSites.filter((site) => {\n return !/sandbox-\\d{3}/.test(site.displayName);\n });\n\n return pickableSites;\n}\n\nexport function removeExistingPremiumJSMSites({\n isJsm,\n isFree,\n pickableSites\n}: {\n isJsm: boolean;\n isFree: boolean;\n pickableSites: Sites[];\n}) {\n const JSMProductKeys = [\n `${ProductKeys.JIRA_SERVICE_DESK}`,\n `${ProductKeys.JIRA_SERVICE_MANAGEMENT}`\n ];\n if (isJsm && !isFree) {\n pickableSites = pickableSites.filter((site) => {\n const toFilter = site?.productsAndEditions?.filter(\n ({ productKey, productEdition }) => {\n const existingPremiumJSMSite =\n JSMProductKeys.includes(productKey) &&\n productEdition.toLowerCase() === 'premium';\n return existingPremiumJSMSite;\n }\n );\n\n return !toFilter?.length;\n });\n }\n\n return pickableSites;\n}\n\nexport function useSignUpFormUIState() {\n const signUpFormProps = useContext(SignUpFormUIStateContext);\n\n const { deferredSiteName } = useAppSelector((store) => store);\n\n const {\n devMode,\n migrationData,\n userInfo,\n bitbucketWorkspaces,\n marketingConsentRequired,\n productKeys,\n isStaging,\n locale,\n deferSiteNameCreation,\n templateId,\n enableResendEmail = false,\n enableCarouselEndCard = false,\n defaultErrorType = SubmitErrorType.NO_ERROR,\n userOrgInfo\n } = signUpFormProps;\n\n const welcomeMessage =\n userInfo && userInfo.firstName\n ? messages.personalizedWelcomeMessage\n : messages.defaultWelcomeMessage;\n\n const signupSource = new URLSearchParams(window.location.search).get(\n 'signupSource'\n );\n const bitbucketPreferred = signupSource === 'bbbundle' ? true : false;\n\n const initialState: WacSignupFormState = {\n hasCCPEntitlements: false,\n email: null,\n firstName: null,\n lastName: null,\n displayName: null,\n password: null,\n cloudName: null,\n bbName: null,\n dataRegion: 'US',\n products: [],\n consent: {\n site: null,\n locale: null,\n formUrl: null,\n consents: [\n {\n key: 'termsOfService',\n displayedText: messages.eula.defaultMessage,\n granted: true\n },\n {\n key: 'privacyPolicy',\n displayedText: messages.eula.defaultMessage,\n granted: true\n },\n {\n key: 'generalMarketingOptIn',\n displayedText: messages.marketingConsent.defaultMessage,\n granted: false\n }\n ]\n },\n isExistingSitePickerN2E: false,\n isLoggedIn: false,\n selectedSite: null,\n migrationId: null,\n isSubmitting: false,\n isSSOValid: false,\n cloudNameLength: 0,\n isNewUser: false\n };\n const signupOrigin = new OriginTracing({ product: 'wac-sign-up' });\n const [showResendEmail, setShowResendEmail] = useState(false);\n const [showDevopsCarouselEnd, setShowDevopsCarouselEnd] = useState(false);\n const [goToURL, setGoToURL] = useState('');\n const resendEmail = {\n setShowResendEmail,\n enableResendEmail,\n enableCarouselEndCard,\n setShowDevopsCarouselEnd,\n setGoToURL\n };\n\n const [isBbCopyEnabled, setIsBbCopyEnabled] = useState(false);\n const bbWorkspaces = bitbucketWorkspaces?.values\n ? cleanseNonAdminWorkspaces(bitbucketWorkspaces)\n : [];\n const bbWorkspacesTotal = bbWorkspaces.length || 0;\n let buttonText = messages.buttonText;\n let startButtonText = messages.startButtonText;\n\n // @todo: refactor to a function\n const isOpsgenie = isOpsgenieIncluded(productKeys);\n const isStatuspage = isProductIncluded(productKeys, ProductKeys.STATUSPAGE);\n const isTeamCentral = isProductIncluded(\n productKeys,\n ProductKeys.TEAM_CENTRAL\n );\n const isJsw = isProductIncluded(productKeys, ProductKeys.JIRA_SOFTWARE);\n const isConfluence = isProductIncluded(productKeys, ProductKeys.CONFLUENCE);\n const isJsm = isProductIncluded(productKeys, ProductKeys.JIRA_SERVICE_DESK);\n const isJwm = isProductIncluded(productKeys, ProductKeys.JIRA_CORE);\n const isJpd = isProductIncluded(\n productKeys,\n ProductKeys.JIRA_PRODUCT_DISCOVERY\n );\n const isCompass = isProductIncluded(productKeys, ProductKeys.COMPASS);\n const isBeacon = isProductIncluded(productKeys, ProductKeys.BEACON);\n const isBundleBBJSW = getIsBundleBbJsw(productKeys);\n const isBitbucket = getIsBitbucket(productKeys);\n const isBundleDevops = getIsBundleDevops(productKeys);\n const isJswJsmBundle = isJsw && isJsm;\n const isJswJwmBundle = isJsw && isJwm;\n const isFree = productKeys.length > 0 && productKeys[0].edition === 'free';\n // suppress User Segmentation Screen for Jira Template Signups\n const hideUserSegmentation = !!(templateId && (isJsw || isJsm || isJwm));\n\n // BXPSU-1842 logged out email redirect URL\n const [n2nSignInRedirect, setN2NSignInRedirect] = useState('');\n let isSitePickerDisabled = false;\n if (isBundleDevops) {\n // use Devops submit button text\n buttonText = messages.devopsButtonText;\n startButtonText = messages.devopsStartButtonText;\n\n // Devops EAP only allows creating new sites. Remove this for Devops GA:\n isSitePickerDisabled = true;\n }\n\n const orgFetchResponse = userOrgInfo ?? DEFAULT_ORG_RESPONSE;\n\n const orgAdminVortexStatusCounts = useMemo(() => {\n return getOrgAdminVortexStatusCounts(orgFetchResponse.orgList || []);\n }, [orgFetchResponse.orgList]);\n\n if (isBitbucket) {\n startButtonText = messages.bitbucketSubmitButtonTextMessage;\n }\n\n let productsExisting: string[] = [];\n if (isBundleBBJSW && bbWorkspacesTotal > 0) {\n productsExisting = [ProductKeys.BITBUCKET];\n }\n if (isBundleBBJSW && userInfo && userInfo.sites) {\n userInfo.sites.map((site: Sites) => {\n productsExisting = [...productsExisting, ...site.products];\n });\n }\n\n const hideAsterisks = true;\n let pickableSites: Sites[] = [];\n let intialEmail = '';\n\n if (!marketingConsentRequired) {\n initialState.consent.consents[2].granted = true;\n initialState.consent.consents[2].displayedText = 'general consent implied';\n }\n\n if (userInfo && userInfo.firstName && userInfo.email) {\n // N2E\n const { firstName, email, lastName } = userInfo;\n initialState.firstName = firstName;\n initialState.lastName = sanitizeLastName(lastName);\n initialState.displayName = `${firstName} ${initialState.lastName}`.trim();\n intialEmail = email;\n initialState.email = email;\n initialState.isLoggedIn = true;\n initialState.migrationId = migrationData\n ? migrationData.migrationSourceUuid\n : null;\n\n delete initialState.password;\n\n !isOpsgenie\n ? delete initialState.dataRegion\n : (initialState.dataRegion = 'US');\n\n if (isSitesDefined(userInfo?.sites) && userInfo.sites.length > 0) {\n if (userInfo.sites.length === 1 && !isBitbucket) {\n initialState.cloudName = userInfo.sites[0].displayName;\n initialState.selectedSite = userInfo.sites[0];\n }\n\n if (bbWorkspaces.length > 0) {\n initialState.bbName = bbWorkspaces[0].workspace.name;\n }\n\n pickableSites = getPickableExistingSites({\n productKeys,\n isBundleBBJSW,\n isBundleDevops,\n isTeamCentral,\n isJpd,\n isCompass,\n isOpsgenie,\n isJswJsmBundle,\n isJswJwmBundle,\n sitesToFilter: userInfo.sites,\n extendedTrialOverridableSites: userInfo.extendedTrialOverridableSites\n });\n\n pickableSites = removeExistingPremiumJSMSites({\n isJsm,\n isFree,\n pickableSites\n });\n } else if (userInfo.isNewUser) {\n initialState.isNewUser = true;\n }\n }\n\n initialState.consent.locale = locale;\n initialState.consent.site = 'atlassian';\n initialState.consent.formUrl = window.location.href;\n initialState.products = productKeys;\n\n // if BB preferred then ensure BB is the primary product\n if (bitbucketPreferred && isBundleBBJSW) {\n initialState.products = [...initialState.products].sort((a, b) =>\n (a.product || '').localeCompare(b.product || '')\n );\n }\n\n initialState.isExistingSitePickerN2E =\n !devMode && (pickableSites.length > 0 || isBitbucket);\n\n const [signupState, setSignupState] = useState(initialState);\n const [pollingLoaderShown, setPollingLoaderShown] = useState(false);\n const [shouldShowUseExisting, setShouldShowUseExisting] = useState(\n !devMode && !_.isEmpty(pickableSites)\n );\n const [isValidSiteName, setIsValidSiteName] = useState(false);\n const [isValidWorkspaceID, setIsValidWorkspaceID] = useState(false);\n const [selectedOrg, setSelectedOrg] = useState(null);\n const [workspaceIDTakenError, setWorkspaceIDTakenError] = useState(false);\n const [orgProvisioningProgressMessage, setOrgProvisioningProgressMessage] =\n useState(false);\n const [submitError, setSubmitError] = useState(defaultErrorType);\n const [activateProductError, setActivateProductError] = useState(false);\n const [selectedSiteIsInBreachOfFree, setSelectedSiteIsInBreachOfFree] =\n useState(false);\n const [\n disableSignInWhileTestingFreeBreach,\n setDisableSignInWhileTestingFreeBreach\n ] = useState(false);\n\n useEffect(() => {\n const isNewCCPSite =\n initialState.migrationId && !signupState.isExistingSitePickerN2E;\n\n const hasCCPEntitlement =\n initialState.migrationId &&\n !isBitbucket &&\n signupState.selectedSite &&\n signupState.selectedSite.entitlements &&\n signupState.selectedSite.entitlements.find(\n (entilement: { billingSourceSystem: string }) =>\n entilement.billingSourceSystem === 'CCP'\n );\n\n setSignupState({\n ...signupState,\n hasCCPEntitlements: !!hasCCPEntitlement || !!isNewCCPSite\n });\n }, [signupState.selectedSite, isBitbucket, initialState.migrationId]);\n\n useEffect(() => {\n if (\n isBbCopyEnabled &&\n !signupState.isExistingSitePickerN2E &&\n signupState.cloudName &&\n signupState.bbName !== signupState.cloudName\n ) {\n setSignupState({\n ...signupState,\n bbName: signupState.cloudName || ''\n });\n }\n if (\n isBbCopyEnabled &&\n signupState.isExistingSitePickerN2E &&\n signupState.selectedSite &&\n signupState.bbName !== signupState.selectedSite?.displayName\n ) {\n setSignupState({\n ...signupState,\n bbName: signupState.selectedSite?.displayName || ''\n });\n }\n }, [\n isBbCopyEnabled,\n signupState.cloudName,\n signupState.selectedSite,\n signupState.isExistingSitePickerN2E\n ]);\n\n useEffect(() => {\n const n2eAvailable = !!(\n !devMode &&\n pickableSites.length > 0 &&\n userInfo &&\n isSitesDefined(userInfo?.sites) &&\n userInfo.sites.length > 0\n );\n setSignupState({\n ...signupState,\n products: productKeys,\n isExistingSitePickerN2E: n2eAvailable,\n // @ts-ignore\n selectedSite: n2eAvailable ? userInfo.sites[0] : null,\n cloudName: n2eAvailable\n ? // @ts-ignore\n userInfo.sites[0].displayName\n : signupState.isExistingSitePickerN2E\n ? ''\n : signupState.cloudName\n });\n setShouldShowUseExisting(!devMode && !_.isEmpty(pickableSites));\n }, [productKeys]);\n\n const siteNameAfter = useMemo(() => {\n if (isOpsgenie && !isBundleDevops) {\n return '.app.opsgenie.com';\n }\n if (isStaging) {\n return '.jira-dev.com';\n } else {\n return '.atlassian.net';\n }\n }, [signupState.dataRegion]);\n\n const isValid = useMemo(() => {\n return (\n signupState.email !== null &&\n signupState.email !== '' &&\n ((signupState.cloudName !== null && signupState.cloudName !== '') ||\n deferSiteNameCreation ||\n (deferredSiteName.isEnabled && signupState.cloudNameLength === 0)) &&\n !signupState.isSSOValid\n );\n }, [signupState]);\n\n const isValidChooseSignup = useMemo(() => {\n return (\n signupState.email !== null &&\n signupState.email !== '' &&\n !signupState.isSSOValid\n );\n }, [signupState]);\n\n const isValidN2E = useMemo(() => {\n const isUserInfoValid =\n signupState.email !== null &&\n signupState.email !== '' &&\n signupState.firstName !== null &&\n signupState.firstName !== '' &&\n signupState.lastName !== null &&\n signupState.lastName !== '' &&\n ((userInfo && userInfo.email !== '' && userInfo.email !== null) ||\n (signupState.password !== null && signupState.password !== ''));\n const isValidName = isBitbucket\n ? isValidWorkspaceID\n : isValidSiteName &&\n signupState.cloudName !== null &&\n signupState.cloudName !== '';\n const isAccountOrgSelected = isBitbucket\n ? selectedOrg !== null || orgAdminVortexStatusCounts.ENABLED === 0\n : true;\n return (\n isUserInfoValid &&\n !signupState.isSSOValid &&\n isValidName &&\n isAccountOrgSelected\n );\n }, [signupState, isValidSiteName, isValidWorkspaceID, selectedOrg]);\n\n useEffect(() => {\n if (\n orgAdminVortexStatusCounts.ENABLED === 1 &&\n orgAdminVortexStatusCounts.DISABLED === 0 &&\n orgFetchResponse.orgList\n ) {\n setSelectedOrg(orgFetchResponse.orgList[0]);\n }\n }, [orgAdminVortexStatusCounts]);\n\n return {\n signupState,\n setSignupState,\n pollingLoaderShown,\n setPollingLoaderShown,\n showResendEmail,\n setShowResendEmail,\n intialEmail,\n showDevopsCarouselEnd,\n setShowDevopsCarouselEnd,\n goToURL,\n setGoToURL,\n resendEmail,\n isBbCopyEnabled,\n setIsBbCopyEnabled,\n bbWorkspaces,\n bbWorkspacesTotal,\n isOpsgenie,\n isStatuspage,\n isTeamCentral,\n isBundleBBJSW,\n isBundleDevops,\n isCompass,\n isBeacon,\n isBitbucket,\n isJpd,\n isFree,\n buttonText,\n startButtonText,\n isSitePickerDisabled,\n productsExisting,\n hideAsterisks,\n pickableSites,\n shouldShowUseExisting,\n isValidSiteName,\n setIsValidSiteName,\n submitError,\n setSubmitError,\n activateProductError,\n setActivateProductError,\n selectedSiteIsInBreachOfFree,\n setSelectedSiteIsInBreachOfFree,\n disableSignInWhileTestingFreeBreach,\n setDisableSignInWhileTestingFreeBreach,\n siteNameAfter,\n isValid,\n isValidChooseSignup,\n isValidN2E,\n initialState,\n welcomeMessage,\n signUpFormProps,\n hideUserSegmentation,\n signupOrigin,\n n2nSignInRedirect,\n setN2NSignInRedirect,\n isJsw,\n isConfluence,\n isValidWorkspaceID,\n setIsValidWorkspaceID,\n orgFetchResponse,\n selectedOrg,\n setSelectedOrg,\n workspaceIDTakenError,\n setWorkspaceIDTakenError,\n orgAdminVortexStatusCounts,\n orgProvisioningProgressMessage,\n setOrgProvisioningProgressMessage\n };\n}\n","import React, {\n createContext,\n useContext,\n useMemo,\n PropsWithChildren\n} from 'react';\nimport { Url } from '@atlassiansox/bxpkit-core';\nimport { ProductKey } from '@atlassiansox/bxpkit-core';\nimport {\n EDITION_LABEL_ARRAY,\n FREE_EDITION_LABEL_KEY,\n STANDARD_EDITION_LABEL_KEY,\n PREMIUM_EDITION_LABEL_KEY\n} from '../utility';\nimport { ExperimentScreensFlags } from '../sign-up-layout-container';\n\nexport type Platform = 'ccp' | 'hams' | 'routing';\nconst PLATFORM_OPTIONS = ['ccp', 'hams', 'routing'] as Platform[];\n\nexport type SignUpFormConfig = {\n readonly bundle?: string;\n readonly product?: string;\n readonly edition?: string;\n readonly templateId?: string;\n readonly migrationSourceUuid?: string;\n readonly developer?: string;\n readonly src?: string;\n readonly useCcpPlatform: boolean;\n readonly platform: Platform;\n readonly experimentScreensFlags?: ExperimentScreensFlags;\n readonly customSignupContext?: string;\n};\n\nexport type SignUpFormConfigContextProps = {\n readonly bundleOverride?: string;\n readonly productOverride?: string;\n readonly editionOverride?: string;\n readonly experimentScreensFlags?: ExperimentScreensFlags;\n readonly customSignupContext?: string;\n};\n\nexport const SignUpConfigContext = createContext(\n {}\n);\n\nexport function SignUpConfigContextProvider({\n children,\n ...props\n}: PropsWithChildren) {\n return (\n \n {children}\n \n );\n}\n\nfunction buildSignUpFormConfig(\n bundleOverride?: string,\n productOverride?: string,\n editionOverride?: string,\n productParam?: string,\n bundleParam?: string,\n editionParam?: string,\n templateIdParam?: string,\n developerParam?: string,\n migrationSourceUuidParam?: string,\n srcParam?: string,\n platformParam?: string,\n experimentScreensFlags?: ExperimentScreensFlags,\n customSignupContext?: string\n) {\n // figure out what the product key is\n let product;\n if (productOverride && productOverride.length > 0) {\n product = productOverride.replace(\n ProductKey.JIRA_SERVICE_MANAGEMENT,\n ProductKey.JIRA_SERVICE_DESK\n );\n } else if (productParam && productParam.length > 0) {\n product = productParam.replace(\n ProductKey.JIRA_SERVICE_MANAGEMENT,\n ProductKey.JIRA_SERVICE_DESK\n );\n }\n\n // figure out what the bundle name is\n let bundle;\n if (bundleOverride && bundleOverride.length > 0) {\n bundle = bundleOverride;\n } else if (bundleParam && bundleParam.length > 0) {\n bundle = bundleParam.split('.')[0];\n }\n\n // either product (product key), or bundle (bundle name), should exist, not both\n if (bundle && bundle.length) {\n product = undefined;\n } else if (product && product.length) {\n bundle = undefined;\n }\n // if nothing is provided, set bundle to 'default', which is Jira Software\n else {\n bundle = 'default';\n }\n\n // add edition data\n let edition;\n if (editionOverride && editionOverride.length > 0) {\n edition = EDITION_LABEL_ARRAY.some(\n (label) => label.toLowerCase() === editionOverride\n )\n ? editionOverride\n : FREE_EDITION_LABEL_KEY.toLowerCase();\n } else if (editionParam && editionParam.length > 0) {\n edition = EDITION_LABEL_ARRAY.some(\n (label) => label.toLowerCase() === editionParam\n )\n ? editionParam\n : FREE_EDITION_LABEL_KEY.toLowerCase();\n } else {\n edition = FREE_EDITION_LABEL_KEY.toLowerCase();\n }\n\n // adjust edition based on migrationSourceUuid query parameter\n // should either be standard or premium; always correct free to standard\n if (\n migrationSourceUuidParam &&\n migrationSourceUuidParam.length > 0 &&\n edition !== STANDARD_EDITION_LABEL_KEY.toLowerCase() &&\n edition !== PREMIUM_EDITION_LABEL_KEY.toLowerCase()\n ) {\n edition = STANDARD_EDITION_LABEL_KEY.toLowerCase();\n }\n\n // Developer Instances should always be Standard Edition\n if (developerParam) {\n edition = STANDARD_EDITION_LABEL_KEY.toLowerCase();\n }\n // SPICE-448: Prototype products - Point A alpha or beta products\n if (bundle === ProductKey.COMPASS || product === ProductKey.COMPASS) {\n // BXPSU-1499 Compass GA Launch - Add support for Free and Standard\n // No Compass Premium edition so instead gets set to Standard edition\n if (edition === PREMIUM_EDITION_LABEL_KEY.toLowerCase()) {\n edition = STANDARD_EDITION_LABEL_KEY.toLowerCase();\n }\n }\n\n // Bitbucket CMTs should always be Premium Edition\n if (\n !editionParam &&\n migrationSourceUuidParam &&\n migrationSourceUuidParam.length > 0 &&\n bundle === 'bitbucket'\n ) {\n edition = PREMIUM_EDITION_LABEL_KEY.toLowerCase();\n }\n\n let platform = 'routing' as Platform;\n let useCcpPlatform = false;\n if (platformParam) {\n const platformParamLowerCase = platformParam.toLowerCase() as Platform;\n if (platformParamLowerCase === 'ccp') {\n useCcpPlatform = true;\n }\n\n if (PLATFORM_OPTIONS.includes(platformParamLowerCase)) {\n platform = platformParamLowerCase;\n }\n }\n\n return {\n bundle,\n edition,\n product,\n migrationSourceUuid: migrationSourceUuidParam,\n templateId: templateIdParam,\n developer: developerParam,\n src: srcParam,\n useCcpPlatform,\n platform,\n experimentScreensFlags,\n customSignupContext\n };\n}\n\nexport function useSignUpFormConfig(): SignUpFormConfig {\n const {\n bundleOverride,\n productOverride,\n editionOverride,\n experimentScreensFlags,\n customSignupContext\n } = useContext(SignUpConfigContext);\n\n const {\n product: productParam,\n bundle: bundleParam,\n edition: editionParam,\n templateId: templateIdParam,\n developer: developerParam,\n migrationSourceUuid: migrationSourceUuidParam,\n src: srcParam,\n platform: platformParam\n } = Url.getUrlParams() || {};\n\n return useMemo(\n () =>\n buildSignUpFormConfig(\n bundleOverride,\n productOverride,\n editionOverride,\n productParam,\n bundleParam,\n editionParam,\n templateIdParam,\n developerParam,\n migrationSourceUuidParam,\n srcParam,\n platformParam,\n experimentScreensFlags,\n customSignupContext\n ),\n [\n bundleOverride,\n productOverride,\n editionOverride,\n productParam,\n bundleParam,\n editionParam,\n templateIdParam,\n developerParam,\n migrationSourceUuidParam,\n srcParam,\n platformParam,\n experimentScreensFlags,\n customSignupContext\n ]\n );\n}\n","import { useAnalyticsEvents } from '@atlaskit/analytics-next';\nimport CheckCircleOutlineIcon from '@atlaskit/icon/glyph/check-circle-outline';\nimport WarningIcon from '@atlaskit/icon/glyph/warning';\nimport Spinner from '@atlaskit/spinner';\nimport Textfield from '@atlaskit/textfield';\nimport {\n MarieSchemaAnalytics,\n SanitizedFormattedHtmlMessage\n} from '@atlassiansox/bxpkit-core';\nimport React, { useContext, useEffect, useState } from 'react';\nimport { FormattedMessage, injectIntl } from 'react-intl';\nimport {\n useAuthenticationMethodsCheck,\n useDebounce,\n useEmailValidation\n} from '../../../../../hook';\nimport {\n getTranslatableError,\n messages\n} from '../../../../../messages/sign-up-form';\nimport { EmailFieldPropsType } from '../../../../../model/email-field';\nimport { useAppSelector } from '../../../../../redux';\nimport {\n ChooseSignupLabel,\n ChooseSignupSuccessTextfieldWrapper,\n EmailAfter,\n ErrorMessageWithDefaultClassName,\n FieldContainer,\n Label,\n LabelDefaultExpandedEmail,\n SigninWithDiffAccount,\n SuccessTextfieldWrapper\n} from './styled';\n\nexport function EmailField({\n onEmailChange,\n initialEmail,\n signInAccountUrl,\n switchAccountUrl,\n originAnalyticsAttributes,\n analyticsTrack,\n wacEnvUrl,\n isStaging,\n isDisabled,\n outlineOnFocus,\n fadeOnDisable,\n popOverError,\n showWarningIcon,\n onSSOCheckValid,\n isDeferredSiteNameEnabled,\n isFocusedChooseSignup,\n setIsFocusedChooseSignup,\n showError,\n setShowError,\n setN2NSignInRedirect,\n isConfluence\n}: EmailFieldPropsType) {\n const { enableDefaultExpandedEmail } = useAppSelector(\n (state) => state.featureFlags\n );\n\n const { segment } = analyticsTrack;\n const baseUrl = `${wacEnvUrl}${isStaging ? '/apis/stg' : ''}/hamlet`;\n const hasInitialEmail = (initialEmail && initialEmail !== '') || false;\n const [alreadySentValid, setAlreadySentValid] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n const [email, setEmail] = useState(initialEmail ? initialEmail : '');\n\n const { setUserEmail } = useContext(MarieSchemaAnalytics);\n const { isValid, message, isValidating } = useEmailValidation({\n email: useDebounce(email, 125),\n baseUrl,\n hasInitialEmail,\n isConfluence\n });\n\n const { createAnalyticsEvent } = useAnalyticsEvents();\n\n const emailExistsOrSSOAnalytics = () => {\n createAnalyticsEvent({\n eventName: 'wac-signup-existing-user-signin',\n eventComponent: 'button',\n event: 'clicked'\n }).fire();\n };\n\n const { ssoRedirectUrl, isCheckingSSO, isUserExists } =\n useAuthenticationMethodsCheck({\n email: useDebounce(email, 125),\n allowAuthenticationsMethodCheck: isValid && !hasInitialEmail\n });\n useEffect(() => {\n setN2NSignInRedirect(ssoRedirectUrl);\n }, [ssoRedirectUrl]);\n const removeSpaces = (str: string) => {\n return str.replace(/\\s/g, '');\n };\n\n const buildErrorMessage = (ssoRedirectUrl: string) => {\n if (ssoRedirectUrl === 'error') {\n return (\n \n );\n } else if (ssoRedirectUrl === 'exists') {\n return (\n \n );\n } else if (isUserExists && ssoRedirectUrl.includes('/saml?')) {\n return (\n \n );\n }\n return undefined;\n };\n\n if (!isValid && message) {\n // TODO: tracking and analytics, bxp.formCloudSignup.emailValidationFailure\n }\n const handleSignInUserAccount = (event: any) => {\n if (!event.target || !event.target.href) {\n return;\n }\n\n event.preventDefault();\n if (signInAccountUrl) {\n const signInOriginAttributes = originAnalyticsAttributes.signInUser || {};\n segment('wac-signup-existing-user-signin', signInOriginAttributes);\n\n window.location.assign(signInAccountUrl);\n } else {\n segment('wac-signup-existing-user-signin-error', {});\n }\n };\n\n const handleSwitchUserAccount = (event: any) => {\n if (!event.target || !event.target.href) {\n return;\n }\n\n event.preventDefault();\n if (switchAccountUrl) {\n const switchUserOriginAttributes =\n originAnalyticsAttributes.switchUser || {};\n segment('wac-signup-existing-user-switch', switchUserOriginAttributes);\n\n window.location.assign(switchAccountUrl);\n } else {\n segment('wac-signup-existing-user-switch-error', {});\n }\n };\n\n useEffect(() => {\n if (isUserExists || isCheckingSSO) {\n onSSOCheckValid(true);\n } else {\n onSSOCheckValid(false);\n }\n }, [isCheckingSSO]);\n\n useEffect(() => {\n !isValidating && !!isValid ? onEmailChange(email) : onEmailChange('');\n\n if (!isValidating && !!isValid && !alreadySentValid) {\n // marie schema hash email for context\n setUserEmail(email);\n setShowError(true);\n //\n setAlreadySentValid(true);\n }\n }, [email, isValid]);\n\n return (\n \n \n \n \n {isConfluence ? (\n \n {\n setIsFocusedChooseSignup(true);\n setShowError(false);\n }}\n onBlur={() => {\n setIsFocusedChooseSignup(false);\n setShowError(true);\n }}\n onChange={(event: any) => {\n setEmail(removeSpaces(event.currentTarget.value));\n }}\n elemAfterInput={\n \n {!isCheckingSSO && initialEmail === '' && isValid ? (\n \n ) : (isValid === false &&\n showError &&\n !isFocusedChooseSignup) ||\n isUserExists ? (\n showWarningIcon && (\n \n )\n ) : isValidating || isCheckingSSO ? (\n \n ) : null}\n \n }\n />\n {message && showError && !isFocusedChooseSignup && (\n \n \n \n )}\n\n {isValid && !isCheckingSSO && ssoRedirectUrl && (\n
    \n \n {buildErrorMessage(ssoRedirectUrl)}\n \n
    \n )}\n \n ) : (\n \n setIsFocused(true)}\n onBlur={() => setIsFocused(false)}\n onChange={(event: any) => {\n setEmail(removeSpaces(event.currentTarget.value));\n }}\n elemAfterInput={\n \n {!isCheckingSSO &&\n !isUserExists &&\n initialEmail === '' &&\n isValid ? (\n \n ) : (isValid === false && email !== '') || isUserExists ? (\n showWarningIcon && (\n \n )\n ) : isValidating || isCheckingSSO ? (\n \n ) : null}\n \n }\n />\n {message && (\n \n \n \n )}\n\n {isValid && !isCheckingSSO && ssoRedirectUrl && (\n
    \n \n {buildErrorMessage(ssoRedirectUrl)}\n \n
    \n )}\n \n )}\n {!!switchAccountUrl && hasInitialEmail && (\n \n {isDeferredSiteNameEnabled ? (\n \n ) : (\n \n )}\n \n )}\n
    \n );\n}\n\nexport default injectIntl(EmailField);\n","import { useEffect, useState } from 'react';\n\nexport type EmailValidation = {\n readonly isValidating: boolean;\n readonly isValid?: boolean;\n readonly message?: string;\n};\n\nexport type EmailValidationOptions = {\n readonly email: string;\n readonly baseUrl: string;\n readonly hasInitialEmail: boolean;\n readonly isConfluence?: boolean;\n};\n\nexport function useEmailValidation({\n email,\n hasInitialEmail,\n isConfluence\n}: EmailValidationOptions): EmailValidation {\n const [{ isValidating, isValid, message }, setValidation] =\n useState({\n isValidating: false\n });\n\n useEffect(() => {\n if (hasInitialEmail) {\n return setValidation({\n isValidating: false,\n isValid: true,\n message: undefined\n });\n }\n const emailPart = (email || '').split('@');\n\n const re =\n /^(([^<>()\\[\\]\\\\.,;:\\s@\"]+(\\.[^<>()\\[\\]\\\\.,;:\\s@\"]+)*)|(\".+\"))@((\\[[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}\\.[0-9]{1,3}])|(([a-zA-Z\\-0-9]+\\.)+[a-zA-Z]{2,}))$/;\n if (email.length === 0) {\n return setValidation({\n isValidating: false,\n isValid: false,\n message: isConfluence ? 'Please enter a valid email address' : undefined\n });\n } else if (\n !re.test(email) ||\n emailPart[0].length > 64 ||\n emailPart[1].split('.').some((domainPart) => domainPart.length > 63)\n ) {\n return setValidation({\n isValidating: false,\n isValid: false,\n message: 'Please enter a valid email address'\n });\n } else {\n setValidation({\n isValidating: false,\n isValid: true,\n message: undefined\n });\n }\n }, [email]);\n\n return {\n isValidating,\n isValid,\n message\n };\n}\n","import React from 'react';\nimport { SvgContainer } from '../components/styled';\n\nexport type TooltipIconProps = {\n readonly fillColor?: string;\n};\n\nexport function TooltipIcon({ fillColor }: TooltipIconProps) {\n return (\n \n \n \n \n \n );\n}\n","import CheckCircleOutlineIcon from '@atlaskit/icon/glyph/check-circle-outline';\nimport EditorPanelIcon from '@atlaskit/icon/glyph/editor/panel';\nimport WarningIcon from '@atlaskit/icon/glyph/warning';\nimport Spinner from '@atlaskit/spinner';\nimport Textfield from '@atlaskit/textfield';\nimport { B400, N0, N50, N800 } from '@atlaskit/theme/colors';\nimport { MarieSchemaAnalytics } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport { debounce } from 'lodash';\nimport React, { useContext, useEffect, useMemo, useState } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { useSiteNameValidation } from '../../../../../hook';\nimport {\n getTranslatableError,\n messages\n} from '../../../../../messages/sign-up-form';\nimport {\n AnalyticsTrackType,\n Sites\n} from '../../../../../model/wac-signup-form';\nimport { TooltipIcon } from '../Icons/tooltip-icon';\nimport {\n CompoundField,\n ErrorMessageWithDefaultClassName,\n FieldContainer,\n InfoIcon,\n InputDescription,\n Label,\n SiteNameAfter,\n SiteNameAfterLabel,\n SitePickerToggle,\n SuccessTextfieldWrapper,\n UnderLabelMessage,\n InputSiteNameInstructions\n} from './styled';\n\nexport type SiteNameProps = {\n readonly onSiteNameChange: (siteName: string, siteNameLength: number) => void;\n readonly onSiteNameUseExisting: () => void;\n readonly sites: Sites[] | null;\n readonly siteNameAfter: string;\n readonly wacEnvUrl: string;\n readonly analyticsTrack: AnalyticsTrackType;\n readonly shouldShowUseExisting: boolean;\n readonly setIsValidSiteName: (val: boolean) => void;\n readonly isDisabled: boolean;\n readonly fadeOnDisable?: boolean;\n readonly outlineOnFocus?: boolean;\n readonly popOverError?: boolean;\n readonly showWarningIcon?: boolean;\n readonly isSuiteSignup?: boolean;\n readonly showInfoIcon?: boolean;\n readonly isDeferredSiteNameEnabled?: boolean;\n setExposedToDeferSitename: (exposed: boolean) => void;\n readonly activateProductError?: boolean;\n readonly setActivateProductError?: React.Dispatch<\n React.SetStateAction\n >;\n readonly recommendedSiteName?: string;\n readonly siteNameGenerationExperiment?: boolean;\n readonly siteNameAddtionalCopyExperiment?: boolean;\n};\n\nexport function useDocumentClick(\n value: boolean,\n callback: React.Dispatch>,\n ignoreClass: string\n) {\n useEffect(() => {\n const handleClick = (event: any) => {\n let isIgnored = false;\n if (event && event.target && event.target.classList) {\n isIgnored = event.target.classList.contains(ignoreClass);\n }\n\n if (value && !isIgnored) {\n callback(!value);\n }\n };\n document.addEventListener('click', handleClick);\n return () => {\n document.removeEventListener('click', handleClick);\n };\n }, [value, callback, ignoreClass]);\n}\n\ninterface ToolTipProps {\n readonly isDisabled?: boolean;\n readonly fadeOnDisable?: boolean;\n}\n\nexport const DomainToolTip = styled.div`\n cursor: ${(props) =>\n props.isDisabled && props.fadeOnDisable ? 'not-allowed' : 'pointer'};\n margin: 0 3px;\n border-radius: 3px;\n svg {\n height: 14px;\n width: 14px;\n }\n`;\nexport const ToolTipText = styled.div`\n display: ${(props) =>\n props.isDisabled && props.fadeOnDisable ? 'none' : 'block'};\n background: ${N0};\n border: 1px solid ${B400};\n border-radius: 2px;\n box-shadow: 0 2px 2px rgba(0, 0, 0, 0.25);\n color: ${N800};\n font-family: inherit;\n font-size: 0.875rem;\n font-weight: 400;\n line-height: 1.42857143;\n padding: 12px;\n z-index: 1;\n position: absolute;\n left: 6px;\n top: 25px;\n max-width: 298px;\n`;\n\nexport const ToolTipContainer = styled.div`\n position: relative;\n z-index: 11;\n display: none;\n @supports (display: grid) {\n display: flex;\n align-items: center;\n }\n`;\n\nconst sendErrorEvent = debounce((segment, message, isValidating) => {\n if (isValidating && message) {\n sendErrorEvent(segment, message, isValidating);\n } else if (message) {\n segment('bxp.formCloudSignup.siteValidationError', { message });\n }\n}, 3000);\n\nexport function SiteNameField({\n onSiteNameChange,\n onSiteNameUseExisting,\n sites,\n siteNameAfter,\n shouldShowUseExisting,\n setIsValidSiteName,\n analyticsTrack,\n isDisabled,\n fadeOnDisable,\n outlineOnFocus,\n popOverError,\n showWarningIcon,\n isSuiteSignup,\n isDeferredSiteNameEnabled,\n setExposedToDeferSitename,\n activateProductError,\n setActivateProductError,\n recommendedSiteName,\n siteNameGenerationExperiment,\n siteNameAddtionalCopyExperiment\n}: SiteNameProps) {\n useEffect(() => {\n setExposedToDeferSitename(true);\n }, []);\n\n const checkIsDisabled = () => {\n // ensure isDisabled can be set when form is submitting,\n // otherwise check the field progress state\n return isDisabled;\n };\n const { segment } = analyticsTrack;\n\n const labelMessage = useMemo(() => {\n if (isSuiteSignup) {\n return messages.siteNameSuite;\n } else if (isDeferredSiteNameEnabled) {\n return messages.siteNameOptional;\n } else {\n return messages.yourSite;\n }\n }, [isSuiteSignup, isDeferredSiteNameEnabled]);\n\n const [siteName, setSiteName] = useState(\n sites !== null && sites[0] ? sites[0].displayName : ''\n );\n const [toolTipOpen, setToolTipOpen] = useState(false);\n const [isFocused, setIsFocused] = useState(false);\n const [fieldDisabled, setFieldDisabled] = useState(checkIsDisabled());\n const { isValid, message, isValidating } = useSiteNameValidation(\n siteName,\n analyticsTrack,\n isDeferredSiteNameEnabled,\n activateProductError\n );\n const toolTipTrigger = 'domain-name-tooltip-trigger';\n const inputFieldId = 'site-name-field-input';\n const siteNameExperiment =\n siteNameGenerationExperiment && siteNameAddtionalCopyExperiment;\n const siteNameInstructions = siteNameGenerationExperiment\n ? messages.siteNameInstructionsExperimentB\n : messages.siteNameInstructions;\n\n const hideErrorMessageSiteNameExperiment =\n message ===\n 'Your site name must be at least 3 characters long. Use only lowercase letters and numbers.' &&\n siteNameAddtionalCopyExperiment;\n\n useDocumentClick(toolTipOpen, setToolTipOpen, toolTipTrigger);\n const { setSuiteName } = useContext(MarieSchemaAnalytics);\n\n useEffect(() => {\n if (recommendedSiteName) {\n setSiteName(recommendedSiteName);\n }\n }, [recommendedSiteName]);\n\n useEffect(() => {\n isValid\n ? onSiteNameChange(siteName, siteName.length)\n : onSiteNameChange('', siteName.length);\n setIsValidSiteName(isValid);\n\n if (!isValid) {\n sendErrorEvent(segment, message, isValidating);\n } else {\n setSuiteName(siteName);\n sendErrorEvent.cancel();\n }\n\n setFieldDisabled(checkIsDisabled());\n }, [siteName, isValid, message, isDisabled]);\n\n return (\n \n \n \n {!siteNameExperiment && (\n \n {\n if (fieldDisabled) {\n return;\n }\n if (!toolTipOpen) {\n segment('bxp.formCloudSignup.toolTipDisplayed', {});\n }\n setToolTipOpen(!toolTipOpen);\n }}\n >\n {!isSuiteSignup && (\n \n )}\n \n {toolTipOpen ? (\n \n {isDeferredSiteNameEnabled ? (\n \n ) : (\n \n )}\n \n ) : null}\n \n )}\n \n {isDeferredSiteNameEnabled && (\n \n \n \n )}\n \n setIsFocused(true)}\n onBlur={() => setIsFocused(false)}\n style={{ height: 'inherit', width: '100%' }}\n onChange={(event: any) => {\n setSiteName(event.currentTarget.value);\n if (setActivateProductError) setActivateProductError(false);\n }}\n elemAfterInput={\n \n {siteNameAfter}\n {isValid && siteName !== '' && !isValidating ? (\n \n ) : isValid === false && siteName !== '' && !isValidating ? (\n showWarningIcon && (\n \n )\n ) : isValidating ? (\n \n ) : null}\n \n }\n />\n {message && !hideErrorMessageSiteNameExperiment && (\n \n \n \n )}\n \n\n {isSuiteSignup && (\n \n \n \n )}\n\n {shouldShowUseExisting && (\n {\n if (!fieldDisabled) {\n onSiteNameUseExisting();\n }\n }}\n >\n \n \n )}\n {siteNameExperiment && (\n \n \n \n )}\n \n );\n}\n","// from https://facebook.github.io/react/docs/higher-order-components.html\nvar getDisplayName = function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n};\n\nexport default getDisplayName;","// There are cases where the context is not available, such as when a dropdown item is used\n// inside @atlaskit/navigation. For this reason we have this helper function which safely calls\n// the context functions if they are available.\nexport default (function (instance, contextKey) {\n return function (fnToCall) {\n var _instance$context$con;\n\n if (!instance.context[contextKey]) {\n return null;\n }\n\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n return (_instance$context$con = instance.context[contextKey])[fnToCall].apply(_instance$context$con, args);\n };\n});","var prefix = function prefix(key) {\n return \"@atlaskit-private-do-not-use/dropdown-menu:\".concat(key);\n};\n\nexport var focusManagerContext = prefix('focus-manager');\nexport var selectionCacheContext = prefix('selection-cache');\nexport var selectionManagerContext = prefix('selection-manager');\nexport var clickManagerContext = prefix('click-manager');","import styled, { css } from 'styled-components';\nimport { N60A } from '@atlaskit/theme/colors';\nimport { getThemeStyle, themeNamespace } from '../util/theme';\n\nvar getItemState = function getItemState(stateName) {\n return function (_ref) {\n var theme = _ref.theme;\n var stateStyles = getThemeStyle(theme[themeNamespace], stateName);\n return css([\"\\n background-color: \", \";\\n color: \", \";\\n fill: \", \";\\n text-decoration: none;\\n\\n &:focus {\\n color: \", \";\\n }\\n \"], stateStyles.background, stateStyles.text, stateStyles.background, stateStyles.text);\n };\n};\n\nvar getPadding = function getPadding(_ref2) {\n var isCompact = _ref2.isCompact,\n theme = _ref2.theme,\n description = _ref2.description;\n var paddingKey = isCompact ? 'compact' : 'default';\n\n var _getThemeStyle = getThemeStyle(theme[themeNamespace], paddingKey, 'padding'),\n _getThemeStyle$bottom = _getThemeStyle.bottom,\n bottom = _getThemeStyle$bottom === void 0 ? 0 : _getThemeStyle$bottom,\n _getThemeStyle$left = _getThemeStyle.left,\n left = _getThemeStyle$left === void 0 ? 0 : _getThemeStyle$left,\n _getThemeStyle$right = _getThemeStyle.right,\n right = _getThemeStyle$right === void 0 ? 0 : _getThemeStyle$right,\n _getThemeStyle$top = _getThemeStyle.top,\n top = _getThemeStyle$top === void 0 ? 0 : _getThemeStyle$top;\n\n var adjustedTop = typeof top === 'function' ? top() : top;\n var adjustedBottom = typeof bottom === 'function' ? bottom() : bottom; // Subtract the 1px padding-bottom added to the content and description elements\n // to maintain original height\n\n adjustedTop = Math.max(description ? adjustedTop - 1 : adjustedTop, 0);\n adjustedBottom = Math.max(adjustedBottom - 1, 0);\n return css([\"\\n padding: \", \"px \", \"px \", \"px \", \"px;\\n \"], adjustedTop, right, adjustedBottom, left);\n};\n\nvar getHeightStyles = function getHeightStyles(_ref3) {\n var isCompact = _ref3.isCompact,\n theme = _ref3.theme;\n var heightKey = isCompact ? 'compact' : 'default';\n var height = getThemeStyle(theme[themeNamespace], heightKey, 'height');\n return height ? css([\"\\n height: \", \"px;\\n \"], height) : '';\n};\n\nvar getWidthStyles = function getWidthStyles(_ref4) {\n var isCompact = _ref4.isCompact,\n theme = _ref4.theme;\n var widthKey = isCompact ? 'compact' : 'default';\n var width = getThemeStyle(theme[themeNamespace], widthKey, 'width');\n\n if (!width) {\n return '';\n }\n\n return typeof width === 'number' ? css([\"\\n width: \", \"px;\\n \"], width) : css([\"\\n width: \", \";\\n \"], width);\n}; // This function is responsible for drawing any focus styles for the element\n\n\nvar getInteractiveStyles = function getInteractiveStyles(_ref5) {\n var theme = _ref5.theme,\n isDisabled = _ref5.isDisabled,\n isDragging = _ref5.isDragging,\n isSelected = _ref5.isSelected;\n\n if (isDragging) {\n return css([\"\\n \", \" box-shadow: 0 4px 8px -2px \", \",\\n 0 0 1px \", \";\\n \"], getItemState('dragging'), N60A, N60A);\n }\n\n var standardFocus = css([\"\\n &:focus {\\n box-shadow: 0 0 0 2px\\n \", \" inset;\\n text-decoration: none;\\n }\\n \"], getThemeStyle(theme[themeNamespace], 'outline', 'focus'));\n\n if (isDisabled) {\n return css([\"\\n cursor: not-allowed;\\n \", \" \", \";\\n \"], getItemState('disabled'), standardFocus);\n }\n\n if (isSelected) {\n return css([\"\\n \", \" &:hover {\\n \", \";\\n }\\n\\n &:active {\\n \", \";\\n }\\n\\n \", \";\\n \"], getItemState('selected'), getItemState('hover'), getItemState('active'), standardFocus);\n }\n\n return css([\"\\n &:hover {\\n \", \";\\n }\\n\\n &:active {\\n \", \";\\n }\\n\\n \", \";\\n \"], getItemState('hover'), getItemState('active'), standardFocus);\n}; // This is the main item style. It is defined as a basic style variable so it can\n// later be applied to different component types (span / a / custom link component)\n\n\nexport var ItemBase = function ItemBase(_ref6) {\n var theme = _ref6.theme;\n return css([\"\\n && {\\n align-items: center;\\n border-radius: \", \"px;\\n box-sizing: border-box;\\n cursor: pointer;\\n display: \", \";\\n flex: none;\\n \", \" \", \" \", \" \", \" \", \" &:focus {\\n /* focus shadow drawn by getInteractiveStyles */\\n\\n outline: none;\\n /* relative position prevents bgcolor of a hovered element from\\n obfuscating focus ring of a focused sibling element */\\n position: relative;\\n }\\n }\\n\"], getThemeStyle(theme[themeNamespace], 'borderRadius'), function (_ref7) {\n var isHidden = _ref7.isHidden;\n return isHidden ? 'none' : 'flex';\n }, getItemState('default'), getPadding, getInteractiveStyles, getHeightStyles, getWidthStyles);\n}; // Given some optional link-related props, returns the relevant styled\n// component. For links, it styles the linkComponent if provided, otherwise\n// falling back to a styled tag. If no href is present, a styled \n// is returned. When we upgrade to styled-components@2.x we will be able to\n// simplify this by taking advantage of the withComponent() functionality.\n\nvar styledRootElement = function styledRootElement(_ref8) {\n var href = _ref8.href,\n linkComponent = _ref8.linkComponent;\n\n if (linkComponent) {\n return styled(linkComponent).withConfig({\n displayName: \"Item\",\n componentId: \"z6qfkt-0\"\n })([\"\\n \", \";\\n \"], ItemBase);\n }\n\n if (href) {\n return styled.a.withConfig({\n displayName: \"Item\",\n componentId: \"z6qfkt-1\"\n })([\"\\n \", \";\\n \"], ItemBase);\n }\n\n return styled.span.withConfig({\n displayName: \"Item\",\n componentId: \"z6qfkt-2\"\n })([\"\\n \", \";\\n \"], ItemBase);\n};\n\nexport default styledRootElement;","import styled, { css } from 'styled-components';\nimport { fontSize, fontSizeSmall } from '@atlaskit/theme/constants';\nimport { getThemeStyle, themeNamespace, compactSmallFontSize, compactLineHeight } from '../util/theme'; // Checkbox/Radio wrapper -- sits left of the children\n\nexport var InputWrapper = styled.span.withConfig({\n displayName: \"ItemParts__InputWrapper\",\n componentId: \"sc-14xek3m-0\"\n})([\"\\n display: flex;\\n margin: 0 2px;\\n\"]); // Elements injected before/after the children\n\nvar BeforeAfterBase = styled.span.withConfig({\n displayName: \"ItemParts__BeforeAfterBase\",\n componentId: \"sc-14xek3m-1\"\n})([\"\\n align-items: center;\\n display: flex;\\n flex-shrink: 0;\\n /* Fix windows line-height issue */\\n padding-bottom: 1px;\\n\"]);\n\nvar getBeforeSpacing = function getBeforeSpacing(_ref) {\n var isCompact = _ref.isCompact,\n theme = _ref.theme;\n var spaceKey = isCompact ? 'compact' : 'default';\n var space = getThemeStyle(theme[themeNamespace], spaceKey, 'beforeItemSpacing');\n return css([\"\\n margin-right: \", \"px;\\n \"], space);\n};\n\nexport var Before = styled(BeforeAfterBase).withConfig({\n displayName: \"ItemParts__Before\",\n componentId: \"sc-14xek3m-2\"\n})([\"\\n \", \";\\n\"], getBeforeSpacing);\n\nvar getAfterSpacing = function getAfterSpacing(_ref2) {\n var isCompact = _ref2.isCompact,\n theme = _ref2.theme;\n var spaceKey = isCompact ? 'compact' : 'default';\n var space = getThemeStyle(theme[themeNamespace], spaceKey, 'afterItemSpacing');\n return css([\"\\n margin-left: \", \"px;\\n \"], space);\n};\n\nexport var After = styled(BeforeAfterBase).withConfig({\n displayName: \"ItemParts__After\",\n componentId: \"sc-14xek3m-3\"\n})([\"\\n \", \";\\n\"], getAfterSpacing); // Alignment and layout for the children\n\nexport var ContentWrapper = styled.span.withConfig({\n displayName: \"ItemParts__ContentWrapper\",\n componentId: \"sc-14xek3m-4\"\n})([\"\\n display: flex;\\n flex-direction: column;\\n flex-grow: 1;\\n margin: 0;\\n overflow: hidden;\\n\\n &:first-child {\\n margin: 0;\\n }\\n\"]);\nexport var Content = styled.span.withConfig({\n displayName: \"ItemParts__Content\",\n componentId: \"sc-14xek3m-5\"\n})([\"\\n display: block;\\n flex: 1 1 auto;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: \", \";\\n line-height: \", \";\\n /* Fix windows line-height issue */\\n padding-bottom: 1px;\\n\"], function (_ref3) {\n var allowMultiline = _ref3.allowMultiline;\n return allowMultiline ? 'normal' : 'nowrap';\n}, 16 / fontSize());\n\nvar getColorStyle = function getColorStyle(_ref4) {\n var isDisabled = _ref4.isDisabled,\n theme = _ref4.theme;\n\n if (isDisabled) {\n return css([\"\\n color: \", \";\\n \"], getThemeStyle(theme[themeNamespace], 'secondaryText', 'disabled'));\n }\n\n return css([\"\\n color: \", \";\\n\\n /* This detects hover on the grandparent. Saves us having to maintain isHovered\\n state in the grandparent. */\\n *:hover > * > & {\\n color: \", \";\\n }\\n\\n *:active > * > & {\\n color: \", \";\\n }\\n \"], getThemeStyle(theme[themeNamespace], 'secondaryText', 'default'), function () {\n return getThemeStyle(theme[themeNamespace], 'secondaryText', 'hover');\n }, function () {\n return getThemeStyle(theme[themeNamespace], 'secondaryText', 'active');\n });\n};\n\nvar getDescriptionFontStyles = function getDescriptionFontStyles(_ref5) {\n var isCompact = _ref5.isCompact;\n var descriptionFontSize = isCompact ? compactSmallFontSize : fontSizeSmall();\n var lineHeight = isCompact ? compactLineHeight : 14 / descriptionFontSize;\n return css([\"\\n font-size: \", \"px;\\n line-height: \", \";\\n /* Fix windows line-height issue */\\n padding-bottom: 1px;\\n \"], descriptionFontSize, lineHeight);\n}; // Description is a block element below the children, like a subtitle\n\n\nexport var Description = styled.span.withConfig({\n displayName: \"ItemParts__Description\",\n componentId: \"sc-14xek3m-6\"\n})([\"\\n flex: 1 1 auto;\\n overflow: hidden;\\n text-overflow: ellipsis;\\n white-space: nowrap;\\n \", \" \", \";\\n\"], getColorStyle, getDescriptionFontStyles);","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { Component } from 'react';\nimport styledRootElement from '../styled/Item';\nimport { Before, After, Content, ContentWrapper, Description } from '../styled/ItemParts';\n\nvar Item =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(Item, _Component);\n\n function Item(props) {\n var _this;\n\n _classCallCheck(this, Item);\n\n _this = _possibleConstructorReturn(this, _getPrototypeOf(Item).call(this, props)); // The type of element rendered at the root of render() can vary based on the `href`\n // and `linkComponent` props provided. We generate this component here to avoid re-\n // generating the component inside render(). This is for performance reasons, and also\n // allows us to avoid generating a new `ref` for the root element each render().\n\n _defineProperty(_assertThisInitialized(_this), \"setRef\", function (ref) {\n _this.ref = ref;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"href\", function () {\n return _this.props.isDisabled ? null : _this.props.href;\n });\n\n _this.rootComponent = styledRootElement({\n href: _this.href(),\n linkComponent: props.linkComponent\n });\n return _this;\n }\n\n _createClass(Item, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (this.ref && this.props.autoFocus) {\n this.ref.focus();\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this2 = this;\n\n var _this$props = this.props,\n _onClick = _this$props.onClick,\n _onKeyDown = _this$props.onKeyDown,\n isCompact = _this$props.isCompact,\n isDisabled = _this$props.isDisabled,\n isDragging = _this$props.isDragging,\n isHidden = _this$props.isHidden,\n isSelected = _this$props.isSelected,\n onMouseEnter = _this$props.onMouseEnter,\n onMouseLeave = _this$props.onMouseLeave,\n role = _this$props.role,\n dnd = _this$props.dnd,\n otherProps = _objectWithoutProperties(_this$props, [\"onClick\", \"onKeyDown\", \"isCompact\", \"isDisabled\", \"isDragging\", \"isHidden\", \"isSelected\", \"onMouseEnter\", \"onMouseLeave\", \"role\", \"dnd\"]);\n\n var Root = this.rootComponent;\n var dragHandleProps = dnd && dnd.dragHandleProps || null;\n var patchedEventHandlers = {\n onClick: function onClick(event) {\n // rbd will use event.preventDefault() to block clicks that are used\n // as a part of the drag and drop lifecycle.\n if (event.defaultPrevented) {\n return;\n }\n\n if (!isDisabled && _onClick) {\n _onClick(event);\n }\n },\n onMouseDown: function onMouseDown(event) {\n // rbd 11.x support\n if (dragHandleProps && dragHandleProps.onMouseDown) {\n dragHandleProps.onMouseDown(event);\n } // We want to prevent the item from getting focus when clicked\n\n\n event.preventDefault();\n },\n onKeyDown: function onKeyDown(event) {\n // swallowing keyboard events on the element while dragging\n // rbd should already be doing this - but we are being really clear here\n if (isDragging) {\n return;\n } // rbd 11.x support\n\n\n if (dragHandleProps && dragHandleProps.onKeyDown) {\n dragHandleProps.onKeyDown(event);\n } // if default is prevented - do not fire other handlers\n // this can happen if the event is used for drag and drop by rbd\n\n\n if (event.defaultPrevented) {\n return;\n } // swallowing event if disabled\n\n\n if (isDisabled) {\n return;\n }\n\n if (!_onKeyDown) {\n return;\n }\n\n _onKeyDown(event);\n }\n };\n\n var patchedInnerRef = function patchedInnerRef(ref) {\n _this2.setRef(ref); // give rbd the inner ref too\n\n\n if (dnd && dnd.innerRef) {\n dnd.innerRef(ref);\n }\n };\n\n return React.createElement(Root, _extends({\n \"aria-disabled\": isDisabled,\n href: this.href(),\n isCompact: isCompact,\n isDisabled: isDisabled,\n isDragging: isDragging,\n isHidden: isHidden,\n isSelected: isSelected,\n onMouseEnter: onMouseEnter,\n onMouseLeave: onMouseLeave,\n role: role,\n tabIndex: isDisabled || isHidden || this.props.href ? null : 0,\n target: this.props.target,\n title: this.props.title,\n innerRef: patchedInnerRef\n }, dnd && dnd.draggableProps, dragHandleProps, patchedEventHandlers, otherProps), !!this.props.elemBefore && React.createElement(Before, {\n isCompact: isCompact\n }, this.props.elemBefore), React.createElement(ContentWrapper, null, React.createElement(Content, {\n allowMultiline: this.props.shouldAllowMultiline\n }, this.props.children), !!this.props.description && React.createElement(Description, {\n isCompact: this.props.isCompact,\n isDisabled: this.props.isDisabled\n }, this.props.description)), !!this.props.elemAfter && React.createElement(After, {\n isCompact: isCompact\n }, this.props.elemAfter));\n }\n }]);\n\n return Item;\n}(Component);\n\n_defineProperty(Item, \"defaultProps\", {\n autoFocus: false,\n description: '',\n isCompact: false,\n isDisabled: false,\n isHidden: false,\n role: 'button',\n shouldAllowMultiline: false\n});\n\nexport { Item as default };","import Item, { withItemFocus, withItemClick } from '@atlaskit/item';\nexport default withItemClick(withItemFocus(Item));","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\n// We currently need to keep the dropdown open if an item with `href` is clicked, to avoid the\n// analytics package to track the href value without the event target disappearing. Without this\n// requirement, we could just use a native click event all the way up to DropdownMenuStateless,\n// and could get rid of this HOC and DropdownItemClickManager.\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport getDisplayName from '../../util/getDisplayName';\nimport safeContextCall from '../../util/safeContextCall';\nimport { clickManagerContext } from '../../util/contextNamespace'; // HOC that typically wraps @atlaskit/item\n\nvar withItemClick = function withItemClick(WrappedItem) {\n var _class, _temp;\n\n return _temp = _class =\n /*#__PURE__*/\n function (_Component) {\n _inherits(WithItemClick, _Component);\n\n function WithItemClick() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, WithItemClick);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(WithItemClick)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"callContextFn\", safeContextCall(_assertThisInitialized(_this), clickManagerContext));\n\n _defineProperty(_assertThisInitialized(_this), \"shouldCloseAfterClick\", function () {\n return !_this.props.isDisabled && !_this.props.href;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleClick\", function (event) {\n _this.props.onClick(event);\n\n if (_this.shouldCloseAfterClick()) {\n _this.callContextFn('itemClicked');\n }\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleKeyDown\", function (event) {\n if (_this.props.onKeyDown) {\n _this.props.onKeyDown(event);\n } else if (event.key === 'Space' || event.key === 'Enter') {\n _this.handleClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(WithItemClick, [{\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n children = _this$props.children,\n otherProps = _objectWithoutProperties(_this$props, [\"children\"]);\n\n return React.createElement(WrappedItem, _extends({}, otherProps, {\n onClick: this.handleClick,\n onKeyDown: this.handleKeyDown\n }), children);\n }\n }]);\n\n return WithItemClick;\n }(Component), _defineProperty(_class, \"displayName\", \"WithItemClick(\".concat(getDisplayName(WrappedItem), \")\")), _defineProperty(_class, \"defaultProps\", {\n onClick: function onClick() {}\n }), _defineProperty(_class, \"contextTypes\", _defineProperty({}, clickManagerContext, PropTypes.object)), _temp;\n};\n\nexport default withItemClick;","import _extends from \"@babel/runtime/helpers/extends\";\nimport _objectWithoutProperties from \"@babel/runtime/helpers/objectWithoutProperties\";\nimport _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _assertThisInitialized from \"@babel/runtime/helpers/assertThisInitialized\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport ReactDOM from 'react-dom';\nimport uuid from 'uuid';\nimport getDisplayName from '../../util/getDisplayName';\nimport safeContextCall from '../../util/safeContextCall';\nimport { focusManagerContext } from '../../util/contextNamespace'; // HOC that typically wraps @atlaskit/item\n\nvar withItemFocus = function withItemFocus(WrappedComponent) {\n var _class, _temp;\n\n return _temp = _class =\n /*#__PURE__*/\n function (_Component) {\n _inherits(WithItemFocus, _Component);\n\n function WithItemFocus() {\n var _getPrototypeOf2;\n\n var _this;\n\n _classCallCheck(this, WithItemFocus);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _possibleConstructorReturn(this, (_getPrototypeOf2 = _getPrototypeOf(WithItemFocus)).call.apply(_getPrototypeOf2, [this].concat(args)));\n\n _defineProperty(_assertThisInitialized(_this), \"contextId\", void 0);\n\n _defineProperty(_assertThisInitialized(_this), \"callContextFn\", safeContextCall(_assertThisInitialized(_this), focusManagerContext));\n\n _defineProperty(_assertThisInitialized(_this), \"isFocusable\", function () {\n return !_this.props.isDisabled && !_this.props.isHidden;\n });\n\n _defineProperty(_assertThisInitialized(_this), \"handleFocus\", function () {\n if (_this.isFocusable()) {\n _this.callContextFn('itemFocused', _this.contextId);\n }\n });\n\n return _this;\n }\n\n _createClass(WithItemFocus, [{\n key: \"componentDidMount\",\n value: function componentDidMount() {\n if (!this.isFocusable()) {\n return;\n }\n\n this.contextId = uuid();\n this.callContextFn('registerItem', this.contextId, ReactDOM.findDOMNode(this) // eslint-disable-line react/no-find-dom-node\n );\n }\n }, {\n key: \"componentDidUpdate\",\n value: function componentDidUpdate() {\n if (!this.isFocusable()) {\n return;\n }\n\n this.callContextFn('updateItem', this.contextId, ReactDOM.findDOMNode(this) // eslint-disable-line react/no-find-dom-node\n );\n }\n }, {\n key: \"componentWillUnmount\",\n value: function componentWillUnmount() {\n if (this.isFocusable()) {\n this.callContextFn('deregisterItem', this.contextId);\n }\n }\n }, {\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n children = _this$props.children,\n otherProps = _objectWithoutProperties(_this$props, [\"children\"]);\n\n return React.createElement(WrappedComponent, _extends({\n onFocus: this.handleFocus,\n role: \"menuitem\"\n }, otherProps), children);\n }\n }]);\n\n return WithItemFocus;\n }(Component), _defineProperty(_class, \"displayName\", \"WithItemFocus(\".concat(getDisplayName(WrappedComponent), \")\")), _defineProperty(_class, \"contextTypes\", _defineProperty({}, focusManagerContext, PropTypes.object)), _temp;\n};\n\nexport default withItemFocus;","import styled, { css } from 'styled-components';\nimport { fontSizeSmall } from '@atlaskit/theme/constants';\nimport { getThemeStyle, gridSize, themeNamespace } from '../util/theme';\n\nvar getPadding = function getPadding(_ref) {\n var isCompact = _ref.isCompact,\n theme = _ref.theme;\n var paddingType = isCompact ? 'compact' : 'default';\n\n var _getThemeStyle = getThemeStyle(theme[themeNamespace], paddingType, 'padding'),\n _getThemeStyle$bottom = _getThemeStyle.bottom,\n bottom = _getThemeStyle$bottom === void 0 ? 0 : _getThemeStyle$bottom,\n _getThemeStyle$left = _getThemeStyle.left,\n left = _getThemeStyle$left === void 0 ? 0 : _getThemeStyle$left,\n _getThemeStyle$right = _getThemeStyle.right,\n right = _getThemeStyle$right === void 0 ? 0 : _getThemeStyle$right,\n _getThemeStyle$top = _getThemeStyle.top,\n top = _getThemeStyle$top === void 0 ? 0 : _getThemeStyle$top;\n\n return css([\"\\n padding: \", \"px \", \"px \", \"px \", \"px;\\n \"], top, right, bottom, left);\n}; // eslint-disable-next-line import/prefer-default-export\n\n\nvar GroupTitle = styled.div.withConfig({\n displayName: \"ItemGroup__GroupTitle\",\n componentId: \"ofbfv9-0\"\n})([\"\\n align-items: center;\\n color: \", \";\\n display: flex;\\n flex: 1 1 auto;\\n \", \";\\n\"], function (_ref2) {\n var theme = _ref2.theme;\n return getThemeStyle(theme[themeNamespace], 'secondaryText', 'default');\n}, getPadding);\nGroupTitle.displayName = 'ItemGroupTitle';\nvar GroupTitleAfter = styled.div.withConfig({\n displayName: \"ItemGroup__GroupTitleAfter\",\n componentId: \"ofbfv9-1\"\n})([\"\\n flex: 0 0 auto;\\n margin-right: -\", \"px;\\n\"], gridSize / 2);\nGroupTitleAfter.displayName = 'ItemGroupTitleAfter';\nvar GroupTitleText = styled.div.withConfig({\n displayName: \"ItemGroup__GroupTitleText\",\n componentId: \"ofbfv9-2\"\n})([\"\\n flex: 1 1 auto;\\n font-size: \", \"px;\\n line-height: 1;\\n text-transform: uppercase;\\n /* Required for children to truncate */\\n min-width: 0;\\n\"], fontSizeSmall);\nGroupTitleText.displayName = 'ItemGroupTitleText';\nexport { GroupTitle, GroupTitleAfter, GroupTitleText };","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport _defineProperty from \"@babel/runtime/helpers/defineProperty\";\n\n/* eslint-disable react/prop-types */\nimport React, { Component } from 'react';\nimport textContent from 'react-addons-text-content';\nimport { GroupTitle, GroupTitleText, GroupTitleAfter } from '../styled/ItemGroup';\n\nvar ItemGroup =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(ItemGroup, _Component);\n\n function ItemGroup() {\n _classCallCheck(this, ItemGroup);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(ItemGroup).apply(this, arguments));\n }\n\n _createClass(ItemGroup, [{\n key: \"render\",\n value: function render() {\n var _this = this;\n\n var _this$props = this.props,\n children = _this$props.children,\n elemAfter = _this$props.elemAfter,\n isCompact = _this$props.isCompact,\n title = _this$props.title,\n label = _this$props.label,\n innerRef = _this$props.innerRef,\n role = _this$props.role;\n\n var ariaLabel = function () {\n if (label) {\n return textContent(label);\n }\n\n if (title) {\n return textContent(title);\n }\n\n return '';\n }();\n\n return React.createElement(\"div\", {\n \"aria-label\": ariaLabel,\n role: role,\n ref: innerRef\n }, title ? React.createElement(GroupTitle, {\n \"aria-hidden\": \"true\",\n isCompact: isCompact\n }, React.createElement(GroupTitleText, null, title), elemAfter ? React.createElement(GroupTitleAfter, {\n innerRef: function innerRef(r) {\n _this.headingAfterElement = r;\n }\n }, elemAfter) : null) : null, children);\n }\n }]);\n\n return ItemGroup;\n}(Component);\n\n_defineProperty(ItemGroup, \"defaultProps\", {\n role: 'group'\n});\n\nexport { ItemGroup as default };","import _classCallCheck from \"@babel/runtime/helpers/classCallCheck\";\nimport _createClass from \"@babel/runtime/helpers/createClass\";\nimport _possibleConstructorReturn from \"@babel/runtime/helpers/possibleConstructorReturn\";\nimport _getPrototypeOf from \"@babel/runtime/helpers/getPrototypeOf\";\nimport _inherits from \"@babel/runtime/helpers/inherits\";\nimport React, { Component } from 'react';\nimport { ItemGroup } from '@atlaskit/item';\n\nvar DropdownItemGroup =\n/*#__PURE__*/\nfunction (_Component) {\n _inherits(DropdownItemGroup, _Component);\n\n function DropdownItemGroup() {\n _classCallCheck(this, DropdownItemGroup);\n\n return _possibleConstructorReturn(this, _getPrototypeOf(DropdownItemGroup).apply(this, arguments));\n }\n\n _createClass(DropdownItemGroup, [{\n key: \"render\",\n value: function render() {\n var _this$props = this.props,\n children = _this$props.children,\n elemAfter = _this$props.elemAfter,\n title = _this$props.title;\n return React.createElement(ItemGroup, {\n elemAfter: elemAfter,\n title: title,\n role: \"menu\"\n }, children);\n }\n }]);\n\n return DropdownItemGroup;\n}(Component);\n\nexport { DropdownItemGroup as default };","import DropdownMenu, {\n DropdownItem,\n DropdownItemGroup\n} from '@atlaskit/dropdown-menu';\nimport CheckCircleIcon from '@atlaskit/icon/glyph/check-circle';\nimport Textfield from '@atlaskit/textfield';\nimport { G300 } from '@atlaskit/theme/colors';\nimport _ from 'lodash';\nimport React, { useEffect, useMemo, useState } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport {\n AnalyticsTrackType,\n Product,\n ProductKeys,\n Sites\n} from '../../../../../model/wac-signup-form';\nimport { InfoBox } from './';\n\nimport {\n isProductIncluded,\n useSignUpFormUIState,\n useSitePermission\n} from '../../../../../hook';\nimport {\n DomainToolTip,\n ToolTipText,\n ToolTipContainer,\n useDocumentClick\n} from './site-name-field';\nimport { B400, N50 } from '@atlaskit/theme/colors';\nimport { TooltipIcon } from '../Icons/tooltip-icon';\n\nimport {\n CompoundField,\n DropdownButtonStyle,\n DropdownButtonStyleOpen,\n DropdownTrigger,\n ErrorMessageWithDefaultClassName,\n FieldContainer,\n FieldErrorState,\n JswTrialNotice,\n Label,\n SiteNameAfter,\n SiteNameAfterLabel,\n SitePickerTextfieldWrapper,\n SitePickerToggle,\n StyledInfoBoxWrapper,\n UnderLabelMessage\n} from './styled';\n\nexport type SitePickerProps = {\n onSiteNameChange: (selectedSite: Sites, cloudName: string) => void;\n onSiteNameStartNew: () => void;\n sites: Sites[];\n isBundleActive: boolean;\n siteNameAfter: string;\n analyticsTrack: AnalyticsTrackType;\n isFree: boolean;\n setIsValidSiteName: (val: boolean) => void;\n isDisabled: boolean;\n showFreeLimitExceededError: boolean;\n selectedSiteId: string;\n productKeys: Product[];\n isDeferredSiteNameEnabled?: boolean;\n fadeOnDisable?: boolean;\n};\n\nexport type FormattedSite = {\n readonly name: string;\n readonly value: string;\n readonly products?: string[];\n};\n\nexport type FormattedProduct = {\n readonly title: FormattedMessage.MessageDescriptor;\n readonly sites: FormattedSite[];\n};\n\ntype OnOpenChangeProps = {\n readonly isOpen: boolean;\n readonly event?: { [key: string]: any };\n};\n\nconst getSiteById = (cloudId: string, sites: Sites[]) => {\n const matchedSites = sites.filter((site) => site.cloudId === cloudId);\n return matchedSites.length > 0 ? matchedSites[0] : sites[0];\n};\n\nexport const isSelectedSiteValid = (\n sitesByCategory: {\n [key: string]: FormattedProduct;\n },\n siteId: string\n) => {\n return (\n sitesByCategory?.withJiraSoftware?.sites?.find(\n (site) => site.value === siteId\n ) ||\n sitesByCategory?.withoutJiraSoftware?.sites?.find(\n (site) => site.value === siteId\n )\n );\n};\n\nfunction productKeyToSplitSitesBy(productKeys: Product[]) {\n if (\n isProductIncluded(productKeys, ProductKeys.JIRA_SERVICE_DESK) ||\n isProductIncluded(productKeys, ProductKeys.JIRA_SERVICE_MANAGEMENT)\n ) {\n return {\n siteKey: ProductKeys.CONFLUENCE,\n recommendedSitesTitle: messages.dropdownWithRecommended,\n otherSitesTitle: messages.dropdownWithoutRecommended\n };\n } else {\n return {\n siteKey: ProductKeys.JIRA_SOFTWARE,\n recommendedSitesTitle: messages.dropdownWithJiraSoftware,\n otherSitesTitle: messages.dropdownWithoutJiraSoftware\n };\n }\n}\nexport function orderSpecificProductFirstSort(\n a: FormattedSite,\n b: FormattedSite\n) {\n if (\n a?.products?.includes(ProductKeys.CONFLUENCE) &&\n !b?.products?.includes(ProductKeys.CONFLUENCE)\n ) {\n return -1;\n }\n if (\n !a?.products?.includes(ProductKeys.CONFLUENCE) &&\n b?.products?.includes(ProductKeys.CONFLUENCE)\n ) {\n return 1;\n }\n if (\n a?.products?.includes(ProductKeys.CONFLUENCE) &&\n b?.products?.includes(ProductKeys.CONFLUENCE)\n ) {\n return 0;\n }\n return 0;\n}\n\nexport function SitePickerField({\n isBundleActive,\n sites,\n siteNameAfter,\n onSiteNameStartNew,\n onSiteNameChange,\n setIsValidSiteName,\n isFree,\n isDisabled,\n showFreeLimitExceededError = false,\n selectedSiteId,\n productKeys,\n isDeferredSiteNameEnabled,\n fadeOnDisable,\n analyticsTrack\n}: SitePickerProps) {\n // const isSiteAdmin = false; // TODO change to use hook\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [activeSite, setActiveSite] = useState(sites[0]);\n const [triggerText, setTriggerText] = useState({ ...messages.selectSite });\n const [hideJswTrialNotice, setHideJswTrialNotice] = useState(true);\n const [showConfluenceNotice, setShowConfluenceNotice] = useState(false);\n const [isLoaded, setIsLoaded] = useState(false);\n const [toolTipOpen, setToolTipOpen] = useState(false);\n const { isBeacon } = useSignUpFormUIState();\n const { isPermitted, isValidating } = useSitePermission(\n activeSite.cloudId,\n isBundleActive\n );\n\n const showSiteSwitcher = sites.length > 1;\n const isJsm =\n isProductIncluded(productKeys, ProductKeys.JIRA_SERVICE_DESK) ||\n isProductIncluded(productKeys, ProductKeys.JIRA_SERVICE_MANAGEMENT);\n const hasSitesWithConfluence = sites.some((site) => {\n return site?.products.some((p) => p === ProductKeys.CONFLUENCE);\n });\n\n const toolTipTrigger = 'domain-name-tooltip-trigger';\n useDocumentClick(toolTipOpen, setToolTipOpen, toolTipTrigger);\n\n const { segment } = analyticsTrack;\n\n const useRecomendedSitesInDropdown = isBundleActive || isJsm;\n\n const categorizedSitesData = useMemo(() => {\n const siteKeyDataToSplitBy = productKeyToSplitSitesBy(productKeys);\n const sitesByCategory: { [key: string]: FormattedProduct } = {\n withRecommendedSite: {\n title: siteKeyDataToSplitBy.recommendedSitesTitle,\n sites: []\n },\n withoutRecommendedSite: {\n title: siteKeyDataToSplitBy.otherSitesTitle,\n sites: []\n }\n };\n\n sites = _.sortBy(sites, ['displayName']);\n\n const addSiteToResult = (hasJsw: boolean, site: FormattedSite) => {\n if (hasJsw) {\n sitesByCategory.withRecommendedSite.sites.push(site);\n } else {\n sitesByCategory.withoutRecommendedSite.sites.push(site);\n }\n };\n\n sites.map((site) => {\n addSiteToResult(site.products.includes(siteKeyDataToSplitBy.siteKey), {\n value: site.cloudId,\n name: site.displayName,\n products: site.products\n });\n });\n\n const displaySitesFromAllCategories =\n sitesByCategory.withRecommendedSite.sites.length > 0 &&\n sitesByCategory.withoutRecommendedSite.sites.length > 0;\n\n const displayOnlySitesContainingJiraSoftware =\n sitesByCategory.withRecommendedSite.sites.length > 0 &&\n sitesByCategory.withoutRecommendedSite.sites.length === 0;\n\n const displayOnlySitesMissingJiraSoftware =\n sitesByCategory.withRecommendedSite.sites.length === 0 &&\n sitesByCategory.withoutRecommendedSite.sites.length > 0;\n\n return {\n sitesByCategory,\n displaySitesFromAllCategories,\n displayOnlySitesContainingJiraSoftware,\n displayOnlySitesMissingJiraSoftware\n };\n }, [sites]);\n\n useEffect(() => {\n if (isLoaded) {\n if (selectedSiteId) {\n const found = isSelectedSiteValid(\n categorizedSitesData.sitesByCategory,\n selectedSiteId\n );\n if (found) {\n handleDropdownItemClick(found);\n return;\n }\n }\n if (categorizedSitesData.sitesByCategory?.withRecommendedSite?.sites[0]) {\n handleDropdownItemClick(\n categorizedSitesData.sitesByCategory.withRecommendedSite.sites[0]\n );\n } else if (\n categorizedSitesData.sitesByCategory?.withoutRecommendedSite?.sites[0]\n ) {\n handleDropdownItemClick(\n categorizedSitesData.sitesByCategory.withoutRecommendedSite.sites[0]\n );\n }\n if (isJsm) {\n const confluenceOrderedFirst = [\n ...categorizedSitesData.sitesByCategory.withRecommendedSite.sites,\n ...categorizedSitesData.sitesByCategory.withoutRecommendedSite.sites\n ].sort(orderSpecificProductFirstSort);\n handleDropdownItemClick(confluenceOrderedFirst[0]);\n }\n } else {\n setIsLoaded(true);\n }\n }, [isLoaded]);\n\n useEffect(() => {\n if (isJsm) {\n const siteHasConf = activeSite?.products.some(\n (p) => p === ProductKeys.CONFLUENCE\n );\n setShowConfluenceNotice(\n !siteHasConf && hasSitesWithConfluence && !showFreeLimitExceededError\n );\n }\n }, [activeSite]);\n\n useEffect(() => {\n setIsValidSiteName(isPermitted);\n }, [isPermitted]);\n\n const trigger = (\n \n \n \n );\n\n const handleDropdownItemClick = ({ name, value }: FormattedSite) => {\n const selectedSite = getSiteById(value, sites);\n onSiteNameChange(selectedSite, selectedSite.displayName);\n setActiveSite(selectedSite);\n setTriggerText(\n Object.assign({}, messages.selectSite, {\n defaultMessage: name + siteNameAfter\n })\n );\n setHideJswTrialNotice(\n isFree || selectedSite.products.includes(ProductKeys.JIRA_SOFTWARE)\n );\n };\n\n const triggerButtonTheme = () => {\n const buttonStyles = !isDropdownOpen\n ? DropdownButtonStyle\n : Object.assign({}, DropdownButtonStyle, DropdownButtonStyleOpen);\n return {\n buttonStyles,\n spinnerStyles: {}\n };\n };\n\n const dropDownItems = (sitesData: FormattedSite[]) => {\n return sitesData.map((site: FormattedSite) => {\n return (\n handleDropdownItemClick(site)}\n >\n {site.name + siteNameAfter}\n \n );\n });\n };\n\n return (\n \n \n \n {isDeferredSiteNameEnabled && (\n \n {\n if (isDisabled) {\n return;\n }\n if (!toolTipOpen) {\n segment('bxp.formCloudSignup.toolTipDisplayed', {});\n }\n setToolTipOpen(!toolTipOpen);\n }}\n >\n \n \n {toolTipOpen && (\n \n \n \n )}\n \n )}\n \n {isDeferredSiteNameEnabled && (\n \n \n \n )}\n \n {showSiteSwitcher && (\n \n setIsDropdownOpen(isOpen)\n }\n >\n {useRecomendedSitesInDropdown && (\n <>\n {categorizedSitesData.displaySitesFromAllCategories && (\n <>\n \n }\n >\n {dropDownItems(\n categorizedSitesData.sitesByCategory.withRecommendedSite\n .sites\n )}\n \n \n }\n >\n {dropDownItems(\n categorizedSitesData.sitesByCategory\n .withoutRecommendedSite.sites\n )}\n \n \n )}\n {categorizedSitesData.displayOnlySitesContainingJiraSoftware &&\n dropDownItems(\n categorizedSitesData.sitesByCategory.withRecommendedSite\n .sites\n )}\n {categorizedSitesData.displayOnlySitesMissingJiraSoftware &&\n dropDownItems(\n categorizedSitesData.sitesByCategory.withoutRecommendedSite\n .sites\n )}\n \n )}\n {!useRecomendedSitesInDropdown && [\n ...dropDownItems(\n categorizedSitesData.sitesByCategory.withRecommendedSite.sites\n ),\n ...dropDownItems(\n categorizedSitesData.sitesByCategory.withoutRecommendedSite\n .sites\n )\n ]}\n \n )}\n\n {!showSiteSwitcher && (\n \n \n {siteNameAfter}\n \n }\n />\n \n )}\n \n\n {isPermitted && !hideJswTrialNotice && isBundleActive && (\n \n \n \n \n )}\n\n {!isPermitted && (\n \n \n \n )}\n\n {showFreeLimitExceededError && (\n \n \n \n )}\n\n {!isBeacon && ( // Beacon cannot be used to create new site, so disable the toggle\n {\n if (!isDisabled) {\n onSiteNameStartNew();\n }\n }}\n >\n {isDeferredSiteNameEnabled ? (\n \n ) : (\n \n )}\n \n )}\n\n {showConfluenceNotice && (\n \n \n

    \n \n

    \n
    \n
    \n )}\n
    \n );\n}\n","import { useEffect, useState } from 'react';\nimport { useStargateClient } from '@atlassiansox/bxpkit-core';\nimport { GetUserPermissionsIsPermittedRequestPermissionId } from '@atlassiansox/asc-stargate';\n\nexport type SitePermission = {\n readonly isValidating: boolean;\n readonly isPermitted: boolean;\n};\n\nexport function useSitePermission(\n siteId: string,\n isBBJSW: boolean\n): SitePermission {\n const stargateClient = useStargateClient();\n if (!isBBJSW) {\n return { isValidating: false, isPermitted: true };\n }\n const [{ isValidating, isPermitted }, setValidation] =\n useState({\n isValidating: false,\n isPermitted: true\n });\n\n const checkPermissions = async () => {\n await stargateClient\n .getUserPermissionsIsPermitted({\n permissionId: GetUserPermissionsIsPermittedRequestPermissionId.MANAGE,\n resourceId: `ari:cloud:platform::site/${siteId}`,\n dontRequirePrincipalInSite: true\n })\n .then((response) => {\n if (response.permitted) {\n return setValidation({\n isValidating: false,\n isPermitted: true\n });\n } else {\n return setValidation({\n isValidating: false,\n isPermitted: false\n });\n }\n })\n .catch(() => {\n return setValidation({\n isValidating: false,\n isPermitted: false\n });\n });\n };\n\n useEffect(() => {\n setValidation({ isValidating: true, isPermitted: true });\n checkPermissions().catch(console.error);\n }, [siteId]);\n\n return { isValidating, isPermitted };\n}\n","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","export const presetSizes = {\n xsmall: 8,\n small: 16,\n medium: 24,\n large: 48,\n xlarge: 96\n};","/** @jsx jsx */\nimport React, { useContext, useEffect, useLayoutEffect as useRealLayoutEffect } from 'react';\nimport { css, jsx, keyframes } from '@emotion/react';\nimport InteractionContext from '@atlaskit/interaction-context';\nimport { DN500, DN900, N0, N500 } from '@atlaskit/theme/colors';\nimport { useGlobalTheme } from '@atlaskit/theme/components';\nimport { presetSizes } from './constants';\n/**\n * Returns the appropriate circle stroke color.\n */\nfunction getStrokeColor({\n mode,\n appearance\n}) {\n if (mode === 'light') {\n return appearance === 'inherit' ? `var(--ds-icon-subtle, ${N500})` : `var(--ds-icon-inverse, ${N0})`;\n }\n return appearance === 'inherit' ? `var(--ds-icon-subtle, ${DN900})` : `var(--ds-icon-inverse, ${DN500})`;\n}\nconst rotate = keyframes({\n to: {\n transform: 'rotate(360deg)'\n }\n});\nconst rotateStyles = css({\n animation: `${rotate} 0.86s infinite`,\n animationTimingFunction: 'cubic-bezier(0.4, 0.15, 0.6, 0.85)',\n transformOrigin: 'center'\n});\n\n/**\n * There are three parts to the load in animation:\n * 1. Fade in\n * 2. Accelerated spin\n * 3. Stretch the spinner line\n */\nconst loadIn = keyframes({\n from: {\n transform: 'rotate(50deg)',\n opacity: 0,\n strokeDashoffset: 60\n },\n to: {\n transform: 'rotate(230deg)',\n opacity: 1,\n strokeDashoffset: 50\n }\n});\nconst loadInStyles = css({\n animation: `${loadIn} 1s ease-in-out`,\n /**\n * When the animation completes, stay at the last frame of the animation.\n */\n animationFillMode: 'forwards',\n /**\n * We are going to animate this in.\n */\n opacity: 0\n});\nconst wrapperStyles = css({\n display: 'inline-flex',\n /**\n * Align better inline with text.\n */\n verticalAlign: 'middle'\n});\nconst circleStyles = css({\n fill: 'none',\n strokeDasharray: 60,\n strokeDashoffset: 'inherit',\n strokeLinecap: 'round',\n strokeWidth: 1.5,\n '@media screen and (forced-colors: active)': {\n filter: 'grayscale(100%)',\n stroke: 'CanvasText'\n }\n});\n\n/**\n * `useLayoutEffect` is being used in SSR safe form. On the server, this work doesn’t need to run.\n * `useEffect` is used in-place, because `useEffect` is not run on the server and it matches types\n * which makes things simpler than doing an `isServer` check or a `null` check.\n *\n * @see https://hello.atlassian.net/wiki/spaces/DST/pages/2081696628/DSTDACI-010+-+Interaction+Tracing+hooks+in+DS+components\n */\nconst useLayoutEffect = typeof window === 'undefined' ? useEffect : useRealLayoutEffect;\nexport default /*#__PURE__*/React.memo( /*#__PURE__*/React.forwardRef(function Spinner({\n testId,\n appearance = 'inherit',\n delay = 0,\n size: providedSize = 'medium',\n interactionName\n}, ref) {\n const size = typeof providedSize === 'number' ? providedSize : presetSizes[providedSize];\n const animationDelay = `${delay}ms`;\n const {\n mode\n } = useGlobalTheme();\n const stroke = getStrokeColor({\n mode,\n appearance\n });\n const context = useContext(InteractionContext);\n useLayoutEffect(() => {\n if (context != null) {\n return context.hold(interactionName);\n }\n }, [context, interactionName]);\n\n /**\n * The Spinner animation uses a combination of two\n * css animations on two separate elements.\n */\n return jsx(\"span\", {\n /**\n * This span exists to off-load animations from the circle element,\n * which were causing performance issues (style recalculations)\n * on Safari and older versions of Chrome.\n *\n * This can be removed and styles placed back on the circle element once\n * Safari fixes this bug and off-loads rendering to the GPU from the CPU.\n */\n css: [wrapperStyles, rotateStyles],\n \"data-testid\": testId && `${testId}-wrapper`,\n style: {\n animationDelay,\n width: size,\n height: size\n }\n }, jsx(\"svg\", {\n height: size,\n width: size,\n viewBox: \"0 0 16 16\",\n xmlns: \"http://www.w3.org/2000/svg\",\n \"data-testid\": testId,\n ref: ref,\n css: loadInStyles,\n style: {\n animationDelay\n }\n }, jsx(\"circle\", {\n cx: \"8\",\n cy: \"8\",\n r: \"7\",\n css: circleStyles,\n style: {\n stroke\n }\n })));\n}));","import React from 'react';\nimport Spinner from '@atlaskit/spinner';\nfunction getSpinnerAppearance({\n appearance,\n isDisabled,\n isSelected\n}) {\n if (isDisabled) {\n return 'inherit';\n }\n if (isSelected) {\n return 'invert';\n }\n if (appearance === 'primary' || appearance === 'danger') {\n return 'invert';\n }\n return 'inherit';\n}\nexport default function LoadingSpinner({\n spacing = 'default',\n ...rest\n}) {\n const size = spacing === 'default' ? 'medium' : 'small';\n return /*#__PURE__*/React.createElement(Spinner, {\n size: size,\n appearance: getSpinnerAppearance(rest)\n });\n}","import _extends from \"@babel/runtime/helpers/extends\";\nimport React from 'react';\nimport Button from './button';\nimport LoadingSpinner from './shared/loading-spinner';\n/**\n * __Loading button__\n *\n * A small wrapper around Button that allows you to show an @atlaskit/spinner as an overlay on the button when you set an isLoading prop to true.\n *\n * - [Examples](https://atlassian.design/components/button/examples#loading-button)\n */\nconst LoadingButton = /*#__PURE__*/React.forwardRef(function LoadingButton({\n isLoading = false,\n ...rest\n}, ref) {\n // Button already has React.memo, so just leaning on that\n return /*#__PURE__*/React.createElement(Button, _extends({}, rest, {\n ref: ref,\n overlay: isLoading ? /*#__PURE__*/React.createElement(LoadingSpinner, rest) : null\n }));\n});\n\n// Tools including enzyme rely on components having a display name\nLoadingButton.displayName = 'LoadingButton';\nexport default LoadingButton;","import { useCallbackWithAnalytics } from '@atlaskit/analytics-next';\nimport { LoadingButton } from '@atlaskit/button';\nimport { N30, N80 } from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { text } from './styled';\n\nexport const StyledSubmitButton = styled(LoadingButton)`\n font-family: ${text};\n font-weight: 500;\n svg {\n margin: 0;\n }\n\n :hover {\n background-color: #0049b0;\n }\n\n :disabled,\n :disabled:hover {\n color: ${N80} !important;\n background-color: ${N30};\n opacity: 0.6;\n }\n &.devops {\n margin-top: 30px;\n }\n`;\n\nexport const SubmitButton = ({ label = '', ...props }) => {\n const handler = useCallbackWithAnalytics(() => undefined, {\n eventName: 'reactSignUpFormSubmitButtonClicked',\n data: {\n event: 'clicked', // event verb, in past tense (eg, \"clicked\")\n eventComponent: 'submitButton', // name of component being interacted with, in camelCase\n label,\n uuid: 'reactSignUpFormSubmitButton' // required for Magnolia events, unique id for a given component if available\n }\n });\n\n return (\n \n {props.children}\n \n );\n};\n","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\nexport const useCallbackWithAnalytics = (method, payload, channel) => {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n const methodRef = useTrackedRef(method);\n const payloadRef = useTrackedRef(payload);\n return useCallback((...args) => {\n const pload = typeof payloadRef.current === 'function' ? payloadRef.current(...args) : payloadRef.current;\n createAnalyticsEvent(pload).fire(channel);\n methodRef.current(...args);\n }, [createAnalyticsEvent, methodRef, payloadRef, channel]);\n};","import Textfield from '@atlaskit/textfield';\nimport React, { useEffect, useState } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport {\n ErrorMessageWithDefaultClassName,\n FullNameFieldWrapper,\n Label,\n NameFieldGroup\n} from './styled';\n\nexport type DisplayNameProps = {\n readonly onNameChange: (displayName: string | null) => void;\n readonly displayname: string | null | undefined;\n readonly isDisabled: boolean;\n readonly fadeOnDisable?: boolean;\n readonly outlineOnFocus?: boolean;\n readonly popOverError?: boolean;\n};\n\nconst nonValidNamePattern =\n /((http(s)?|ftp|callto|mailto|skype|magnet):)|www\\.|:\\/\\/|@|\\$|^\\s+$/i;\n\nexport function DisplayNameField({\n onNameChange,\n displayname,\n isDisabled,\n fadeOnDisable,\n popOverError,\n outlineOnFocus\n}: DisplayNameProps) {\n const checkIsDisabled = () => {\n // ensure isDisabled can be set when form is submitting,\n return isDisabled;\n };\n const [alreadySentValid, setAlreadySentValid] = useState(false);\n const [displayName, setDisplayName] = useState(\n displayname ? displayname : ''\n );\n const [isValidDisplayName, setIsValidDisplayName] = useState(true);\n const [isWithinMaxLength, setIsWithinMaxLength] = useState(true);\n const [isDisplayNameFocused, setIsDisplayNameFocused] = useState(false);\n const [fieldDisabled, setFieldDisabled] = useState(checkIsDisabled());\n\n useEffect(() => {\n isValidDisplayName && isWithinMaxLength\n ? onNameChange(displayName)\n : onNameChange('');\n\n if (\n isValidDisplayName &&\n isWithinMaxLength &&\n displayName.length > 0 &&\n !alreadySentValid\n ) {\n setAlreadySentValid(true);\n }\n }, [displayName]);\n\n useEffect(() => {\n setFieldDisabled(checkIsDisabled());\n }, [isDisabled]);\n\n const updateDisplayName = (event: React.FormEvent) => {\n const value: string = event.currentTarget.value;\n setDisplayName(event.currentTarget.value);\n setIsValidDisplayName(true);\n setIsWithinMaxLength(true);\n\n if (value.match(nonValidNamePattern)) {\n setIsValidDisplayName(false);\n } else if (value.length > 255) {\n setIsWithinMaxLength(false);\n }\n };\n\n return (\n \n \n \n setIsDisplayNameFocused(true)}\n onBlur={() => setIsDisplayNameFocused(false)}\n />\n \n {!isValidDisplayName && (\n \n \n \n )}\n {!isWithinMaxLength && (\n \n \n \n )}\n \n );\n}\n","import InfoIcon from '@atlaskit/icon/glyph/info';\nimport { B400 } from '@atlaskit/theme/colors';\nimport React from 'react';\nimport { InfoBoxContainer, InfoBoxContent } from './styled';\n\nexport type InfoBoxProps = {\n readonly children: React.ReactNode;\n readonly fontSize?: string;\n};\n\nexport function InfoBox({ children, fontSize }: InfoBoxProps) {\n return (\n \n \n {children}\n \n );\n}\n","import CrossIcon from '@atlaskit/icon/glyph/cross';\nimport ModalDialog, { ModalTransition } from '@atlaskit/modal-dialog';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport React, { useEffect, useState } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport {\n AnalyticsTrackType,\n BitbucketWorkspaces,\n ProductKeys\n} from '../../../../../model/wac-signup-form';\nimport { InfoBox } from './info-box';\nimport { ModalContents } from './styled';\n\nexport type BitbucketJiraInfoBoxProps = {\n readonly productsExisting: string[];\n analyticsTrack: AnalyticsTrackType;\n bitbucketWorkspaces?: BitbucketWorkspaces;\n};\n\nexport function BitbucketJiraInfoBox({\n productsExisting,\n analyticsTrack,\n bitbucketWorkspaces\n}: BitbucketJiraInfoBoxProps) {\n const { segment } = analyticsTrack;\n\n let hasOtherProducts = false;\n let hasBitBucket = false;\n let hasJiraSoftware = false;\n let infoText: FormattedMessage.MessageDescriptor = messages.infoBoxDefault;\n\n const [isModalOpen, setModalBoxOpen] = useState(false);\n\n productsExisting.map((productKey) => {\n switch (productKey) {\n case ProductKeys.BITBUCKET:\n hasBitBucket = true;\n break;\n case ProductKeys.JIRA_SOFTWARE:\n hasJiraSoftware = true;\n break;\n default:\n hasOtherProducts = true;\n }\n });\n\n useEffect(() => {\n if (!!bitbucketWorkspaces) {\n let userstate = '';\n if (hasOtherProducts && !hasBitBucket && !hasJiraSoftware) {\n userstate = 'noBB_noJSW_yesOtherSite';\n segment('bxp.try.signup.initialversionshown', { userstate });\n } else if (hasJiraSoftware && !hasBitBucket) {\n userstate = 'noBB_yesJSW';\n segment('bxp.try.signup.initialversionshown', { userstate });\n } else if (!hasOtherProducts && hasBitBucket && hasJiraSoftware) {\n userstate = 'yesBB_yesJSW_noOtherSite';\n segment('bxp.try.signup.initialversionshown', { userstate });\n } else if (hasBitBucket && !hasJiraSoftware && !hasOtherProducts) {\n userstate = 'yesBB_noJSW_noOtherSite';\n segment('bxp.try.signup.initialversionshown', { userstate });\n } else if (hasOtherProducts && hasBitBucket && !hasJiraSoftware) {\n userstate = 'yesBB_noJSW_yesOtherSite';\n segment('bxp.try.signup.initialversionshown', { userstate });\n } else if (hasOtherProducts && hasBitBucket && hasJiraSoftware) {\n userstate = 'yesBB_yesJSW_yesOtherSite';\n segment('bxp.try.signup.initialversionshown', { userstate });\n }\n }\n }, [bitbucketWorkspaces]);\n\n if (hasOtherProducts && !hasBitBucket && !hasJiraSoftware) {\n infoText = messages.infoBoxSite;\n } else if (hasJiraSoftware && !hasBitBucket) {\n infoText = messages.infoBoxSiteJsw;\n } else if (!hasOtherProducts && hasBitBucket && hasJiraSoftware) {\n infoText = messages.infoBoxBb;\n } else if (hasBitBucket && !hasJiraSoftware && !hasOtherProducts) {\n infoText = messages.infoBoxBb;\n } else if (hasOtherProducts && hasBitBucket && !hasJiraSoftware) {\n infoText = messages.infoBoxSiteBb;\n } else if (hasOtherProducts && hasBitBucket && hasJiraSoftware) {\n infoText = messages.infoBoxSiteBb;\n }\n\n if (!(infoText.defaultMessage && infoText.defaultMessage.length > 1)) {\n return null;\n } else {\n return (\n \n

    \n \n

    \n

    setModalBoxOpen(true)}>\n \n

    \n \n {isModalOpen && (\n setModalBoxOpen(false)} width=\"370px\">\n \n
    \n \n
    \n setModalBoxOpen(false)}>\n \n \n
    \n
    \n )}\n
    \n
    \n );\n }\n}\n","import 'isomorphic-fetch';\nimport { Product, ProductKeys } from '../../model/wac-signup-form';\nimport { IStargateClient } from '@atlassiansox/asc-stargate';\n\nexport type FreeBreachTestPayloadType = {\n readonly cloudId: string;\n readonly productKeys: string[];\n readonly stargateClient: IStargateClient;\n};\n\nexport type BreachStatusType = {\n readonly isInBreachOfFree: boolean;\n};\n\nconst FREE_BREACH_PRODUCTS = [\n ProductKeys.JIRA_SOFTWARE,\n ProductKeys.JIRA_SERVICE_DESK,\n ProductKeys.JIRA_CORE,\n ProductKeys.CONFLUENCE\n];\n\nexport function computeFreeTrialRedirectURL(selectedSiteId: string) {\n const { origin, pathname, search } = window.location;\n const searchParams = new URLSearchParams(search);\n searchParams.set('edition', 'standard');\n searchParams.set('selectedSiteId', selectedSiteId);\n return `${origin}${pathname}?${searchParams.toString()}`;\n}\n\nexport function productsCanBeInBreachOfFree(products: Product[]) {\n const productsCanBeInBreach = products.reduce(\n (allProductsAreEligible: boolean, product: Product) => {\n return (\n allProductsAreEligible &&\n FREE_BREACH_PRODUCTS.includes(product.product as ProductKeys) &&\n product.edition === 'free'\n );\n },\n true\n );\n\n return productsCanBeInBreach;\n}\n\nexport async function checkBreachStatus({\n cloudId,\n productKeys,\n stargateClient\n}: FreeBreachTestPayloadType) {\n const { isInBreachOfFree } = await stargateClient.postExpandFreeValidation({\n cloudId,\n productKeys\n });\n\n return isInBreachOfFree;\n}\n","import { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport type { AnalyticsTrackType } from '../../../../../model/wac-signup-form';\nimport { computeFreeTrialRedirectURL } from '../../../../../service/sign-up-form/free-breach';\nimport { InfoBox } from './info-box';\n\nexport type BreachInfoBoxProps = {\n analyticsTrack: AnalyticsTrackType;\n selectedSiteId: string;\n};\n\nexport function BreachInfoBox({\n analyticsTrack,\n selectedSiteId\n}: BreachInfoBoxProps) {\n const freeTrialRedirectURL = computeFreeTrialRedirectURL(selectedSiteId);\n return (\n \n

    \n \n

    \n \n {\n analyticsTrack.segment('bxpSignupFreeUserBreachStart30DayTrial', {\n selectedSiteId\n });\n window.location.href = freeTrialRedirectURL;\n }}\n >\n \n

    \n
    \n );\n}\n","import { Checkbox } from '@atlaskit/checkbox';\nimport DropdownMenu, { DropdownItem } from '@atlaskit/dropdown-menu';\nimport Textfield from '@atlaskit/textfield';\nimport React, { useEffect, useMemo, useState } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport type {\n AnalyticsTrackType,\n BitbucketWorkspace,\n WorkspaceType\n} from '../../../../../model/wac-signup-form';\nimport {\n BitbucketAccountCheckbox,\n CompoundField,\n DropdownButtonStyle,\n DropdownButtonStyleOpen,\n DropdownTrigger,\n FieldContainer,\n Label,\n SitePickerTextfieldWrapper\n} from './styled';\n\nexport type BitbucketAccountPickerProps = {\n bbWorkspaces: BitbucketWorkspace[];\n bbWorkspacesTotal: number;\n bbNameOverride: string;\n selectedSite: string | null;\n sitesCount: number;\n onAccountChange: (accountName: string) => void;\n bbAccountCopy: (isEnabled: boolean) => void;\n analyticsTrack: AnalyticsTrackType;\n isValidSiteName: boolean;\n isDisabled: boolean;\n};\n\ntype OnOpenChangeProps = {\n readonly isOpen: boolean;\n readonly isDisabled: boolean;\n readonly event?: { [key: string]: any };\n};\n\nexport function BitbucketAccountPicker({\n bbWorkspaces,\n bbAccountCopy,\n bbNameOverride,\n onAccountChange,\n selectedSite,\n sitesCount,\n isValidSiteName,\n isDisabled\n}: BitbucketAccountPickerProps) {\n const [isCopyChecked, setIsCopyChecked] = useState(false);\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n const [triggerText, setTriggerText] = useState({ ...messages.selectAccount });\n const [isCheckboxDisabled, setIsCheckboxDisabled] = useState(sitesCount > 1);\n const [bbAccountName, setBbAccountName] = useState('');\n\n useMemo(() => {\n if (selectedSite && selectedSite.length > 0) {\n setIsCheckboxDisabled(false);\n }\n if (!isValidSiteName) {\n setIsCheckboxDisabled(true);\n }\n }, [selectedSite, isValidSiteName]);\n\n useEffect(() => {\n if (!isValidSiteName) {\n setIsCopyChecked(false);\n bbAccountCopy(false);\n }\n }, [isValidSiteName]);\n\n useEffect(() => {\n if (bbWorkspaces?.[0]?.workspace?.name) {\n handleDropdownItemClick(bbWorkspaces[0].workspace);\n }\n }, []);\n\n const triggerButtonTheme = () => {\n const buttonStyles = !isDropdownOpen\n ? DropdownButtonStyle\n : Object.assign({}, DropdownButtonStyle, DropdownButtonStyleOpen);\n return {\n buttonStyles,\n spinnerStyles: {}\n };\n };\n\n const handleCopyAccount = () => {\n setIsCopyChecked(!isCopyChecked);\n\n bbAccountCopy(!isCopyChecked);\n if (isCopyChecked) {\n onAccountChange(bbAccountName);\n }\n };\n\n const handleDropdownItemClick = ({ name }: WorkspaceType) => {\n setTriggerText(\n Object.assign({}, messages.selectAccount, { defaultMessage: name })\n );\n onAccountChange(name);\n setBbAccountName(name);\n };\n\n const trigger = (\n \n \n \n );\n\n return (\n \n \n \n \n\n {isCopyChecked && (\n \n \n \n )}\n\n {!isCopyChecked && bbWorkspaces.length === 1 && (\n \n \n \n )}\n {!isCopyChecked && bbWorkspaces.length > 1 && (\n \n setIsDropdownOpen(isOpen)\n }\n >\n {bbWorkspaces.map((workspace) => {\n return (\n handleDropdownItemClick(workspace.workspace)}\n >\n {workspace.workspace.name}\n \n );\n })}\n \n )}\n {\n \n }\n isChecked={isCopyChecked}\n onChange={() => handleCopyAccount()}\n name=\"checkbox-basic\"\n isDisabled={isCheckboxDisabled || isDisabled}\n />\n \n }\n \n );\n}\n","/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = {\n ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n this.payload = props.payload;\n }\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = {\n ...this.payload,\n ...updater\n };\n }\n return this;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n return null;\n }\n const context = [...this.context];\n const handlers = [...this.handlers];\n\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n return;\n }\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n return this;\n }\n return super.update(updater);\n }\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafEventHandler({\n fn,\n action,\n componentName,\n actionSubject,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n\n // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(value => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: actionSubject || componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n });\n\n // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context);\n\n // fire an event on the atlaskit channel\n const clone = analyticsEvent.clone();\n if (clone) {\n clone.fire('atlaskit');\n }\n fnRef.current(value, analyticsEvent);\n }, [\n // These are strings and won't change\n action, componentName, actionSubject, packageName, packageVersion,\n // This function is memoized in the context\n createAnalyticsEvent,\n // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","import { createTheme } from '../utils/create-theme';\n\n// Create default global light theme\nconst {\n Provider,\n Consumer,\n useTheme\n} = createTheme(() => ({\n mode: 'light'\n}));\nexport { useTheme as useGlobalTheme };\nexport default {\n Provider,\n Consumer\n};","import React, { createContext, useCallback, useContext } from 'react';\n/**\n * createTheme is used to create a set of Providers and Consumers for theming components.\n * - Takes a default theme function; this theme function gets a set of props, and returns tokens\n * based on those props. An example of this default theme function is one that produces the standard\n * appearance of the component\n * - Returns three things - a Provider that allow for additional themes to be applied, a Consumer\n * that can get the current theme and fetch it, and a custom hook - useTheme which provides an alternate (although functionally the same) API\n * to the Consumer.\n */\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n\n /**\n * Internally, Theme uses React Context, with internal providers and consumers.\n * The React Context passes only a function that gets props, and turns them into tokens. This\n * function gets mixed as more Providers with their own themes are added. This mixed function\n * is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n * the theme.\n */\n const ThemeContext = /*#__PURE__*/createContext(defaultGetTokens);\n function useTheme(themeProps) {\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n const tokens = themeFn(themeProps);\n return tokens;\n }\n\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const {\n children,\n ...themeProps\n } = props;\n\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = useTheme(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return /*#__PURE__*/React.createElement(React.Fragment, null, children(tokens));\n }\n\n /**\n * The Theme Provider takes regular nodes as its children, but also takes a *theme function*\n * - The theme function takes a set of props, as well as a function (getTokens) that can turn props into tokens.\n * - The getTokens function isn't called immediately - instead the props are passed\n * through a mix of parent theming functions\n * Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback(themeProps => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: mixedFn\n }, props.children);\n }\n return {\n Consumer,\n Provider,\n useTheme\n };\n}","import { getBooleanFF } from '@atlaskit/platform-feature-flags';\nimport { B100, B200, B300, B400, B50, B75, DN10, DN200, DN30, DN80, DN90, N10, N100, N20, N30, N40, N70, R300 } from '@atlaskit/theme/colors';\nconst radioThemeColors = {\n light: {\n background: `var(--ds-background-input, ${N10})`,\n backgroundHover: `var(--ds-background-input-hovered, ${N30})`,\n backgroundActive: `var(--ds-background-input-pressed, ${N30})`,\n backgroundChecked: `var(--ds-background-brand-bold, ${B400})`,\n backgroundCheckedHover: `var(--ds-background-brand-bold-hovered, ${B300})`,\n backgroundCheckedActive: `var(--ds-background-brand-bold-pressed, ${B50})`,\n backgroundDisabled: `var(--ds-background-disabled, ${N20})`,\n dotChecked: `var(--ds-icon-inverse, ${N10})`,\n dotDisabled: `var(--ds-icon-disabled, ${N70})`,\n dotActive: `var(--ds-icon-inverse, ${B400})`,\n border: `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? N100 : N40})`,\n borderHover: `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? N100 : N40})`,\n borderDisabled: `var(--ds-border-disabled, ${N20})`,\n borderFocus: `var(--ds-border-focused, ${B100})`\n },\n dark: {\n background: `var(--ds-background-input, ${DN10})`,\n backgroundHover: `var(--ds-background-input-hovered, ${DN30})`,\n backgroundActive: `var(--ds-background-input-pressed, ${B200})`,\n backgroundChecked: `var(--ds-background-brand-bold, ${B400})`,\n backgroundCheckedHover: `var(--ds-background-brand-bold-hovered, ${B75})`,\n backgroundCheckedActive: `var(--ds-background-brand-bold-pressed, ${B200})`,\n backgroundDisabled: `var(--ds-background-disabled, ${DN10})`,\n dotChecked: `var(--ds-icon-inverse, ${DN10})`,\n dotDisabled: `var(--ds-icon-disabled, ${DN90})`,\n dotActive: `var(--ds-icon-inverse, ${DN10})`,\n border: `var(--ds-border-input, ${getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? DN200 : DN80})`,\n borderHover: `var(--ds-border-input, ${DN200})`,\n borderDisabled: `var(--ds-border-disabled, ${DN10})`,\n borderFocus: `var(--ds-border-focused, ${B75})`\n }\n};\nexport default function getRadioCustomProperties(mode) {\n const radioColors = radioThemeColors[mode];\n return {\n '--local-background': radioColors.background,\n '--local-background-active': radioColors.backgroundActive,\n '--local-background-checked': radioColors.backgroundChecked,\n '--local-background-checked-active': radioColors.backgroundCheckedActive,\n '--local-background-checked-hover': radioColors.backgroundCheckedHover,\n '--local-background-disabled': radioColors.backgroundDisabled,\n '--local-background-hover': radioColors.backgroundHover,\n '--local-border': radioColors.border,\n '--local-border-disabled': radioColors.borderDisabled,\n '--local-border-hover': radioColors.borderHover,\n '--local-border-focus': radioColors.borderFocus,\n '--local-dot-active': radioColors.dotActive,\n '--local-dot-checked': radioColors.dotChecked,\n '--local-dot-disabled': radioColors.dotDisabled,\n '--local-invalid': `var(--ds-icon-danger, ${R300})`\n };\n}","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\nimport { forwardRef, memo, useMemo } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { usePlatformLeafEventHandler } from '@atlaskit/analytics-next/usePlatformLeafEventHandler';\nimport __noop from '@atlaskit/ds-lib/noop';\nimport { getBooleanFF } from '@atlaskit/platform-feature-flags';\nimport { DN600, N80, N900 } from '@atlaskit/theme/colors';\nimport GlobalTheme from '@atlaskit/theme/components';\nimport { fontFamily as getFontFamily } from '@atlaskit/theme/constants';\nimport getRadioCustomProperties from './styles';\nconst packageName = \"@atlaskit/radio\";\nconst packageVersion = \"5.6.1\";\nconst fontFamily = getFontFamily();\nconst noop = __noop;\nconst labelPaddingStyles = css({\n padding: `${\"var(--ds-space-025, 2px)\"} ${\"var(--ds-space-050, 4px)\"}`\n});\nconst labelStyles = css({\n display: 'flex',\n boxSizing: 'border-box',\n position: 'relative',\n alignItems: 'flex-start',\n fontFamily: fontFamily,\n // eslint-disable-next-line @repo/internal/styles/no-nested-styles\n '&[data-disabled]': {\n color: `var(--ds-text-disabled, ${N80})`,\n cursor: 'not-allowed'\n }\n});\nconst lightLabelStyles = css({\n color: `var(--ds-text, ${N900})`\n});\nconst darkLabelStyles = css({\n color: `var(--ds-text, ${DN600})`\n});\nconst radioStyles = css({\n display: 'flex',\n // TODO https://product-fabric.atlassian.net/browse/DSP-10507 revisit and remove the scale of 14/24\n /*\n The circle should be 14px * 14px centred in a 24px * 24px box.\n This is inclusive of a 2px border and inner circle with 2px radius.\n There is a Chrome bug that makes the circle become an oval and the\n inner circle not be centred at various zoom levels. This bug is fixed\n in all browsers if a scale of 14/24 is applied.\n */\n width: '24px',\n height: '24px',\n margin: \"var(--ds-space-0, 0px)\",\n position: 'relative',\n alignItems: 'center',\n justifyContent: 'center',\n flexShrink: 0,\n backgroundColor: 'var(--radio-background-color)',\n /* Border should multiply by 24/14 to offset scale, a scale of 12 / 7 is to fix a Chrome bug that makes the circle become an oval and the\n inner circle not be centred at various zoom levels */\n border: `${getBooleanFF('platform.design-system-team.update-border-input_ff9l1') ? '1px' : 'calc(2px * 12 / 7)'} solid var(--radio-border-color)`,\n borderRadius: '50%',\n MozAppearance: 'none',\n outline: 'none',\n /*\n Change the variables --radio-background-color, --radio-border-color,\n -radio-dot-color and -radio-dot-opacity according to user interactions.\n All other variables are constant\n */\n '--radio-background-color': 'var(--local-background)',\n '--radio-border-color': 'var(--local-border)',\n '--radio-dot-color': 'var(--local-dot-checked)',\n '--radio-dot-opacity': 0,\n /* 24px * 7 / 12 === 14px height and width */\n transform: 'scale(calc(7 / 12))',\n transition: 'border-color 0.2s ease-in-out, background-color 0.2s ease-in-out',\n verticalAlign: 'top',\n WebkitAppearance: 'none',\n '&::after': {\n /* Height and width should by 4px, multiply by 24/14 to offset scale */\n width: 'calc(4px * 12 / 7)',\n height: 'calc(4px * 12 / 7)',\n position: 'absolute',\n background: 'var(--radio-dot-color)',\n borderRadius: '50%',\n content: \"''\",\n opacity: 'var(--radio-dot-opacity)',\n transition: 'background-color 0.2s ease-in-out, opacity 0.2s ease-in-out'\n },\n '&:hover': {\n '--radio-background-color': 'var(--local-background-hover)',\n '--radio-border-color': 'var(local-border-hover)'\n },\n '&:active': {\n '--radio-background-color': 'var(--local-background-active)'\n },\n '&:focus': {\n '--radio-border-color': 'var(--local-border-focus)'\n },\n '&:checked': {\n '--radio-background-color': 'var(--local-background-checked)',\n '--radio-border-color': 'var(--local-background-checked)',\n '--radio-dot-opacity': 1\n },\n '&:checked:hover': {\n '--radio-background-color': 'var(--local-background-checked-hover)',\n '--radio-border-color': 'var(--local-background-checked-hover)'\n },\n '&:checked:active': {\n '--radio-background-color': 'var(--local-background-checked-active)',\n '--radio-border-color': 'var(--local-border-hover)',\n '--radio-dot-color': 'var(--local-dot-active)'\n },\n '&:checked:focus': {\n '--radio-border-color': 'var(--local-border-focus)'\n },\n // eslint-disable-next-line @repo/internal/styles/no-nested-styles\n '&[data-invalid], &:checked[data-invalid]': {\n '--radio-border-color': 'var(--local-invalid)'\n },\n '&:disabled, &:disabled:hover, &:disabled:focus, &:disabled:active, &:disabled[data-invalid]': {\n cursor: 'not-allowed',\n '--radio-background-color': 'var(--local-background-disabled)',\n '--radio-border-color': 'var(--local-border-disabled)',\n '--radio-dot-color': 'var(--local-dot-disabled)'\n }\n});\nconst RadioWithMode = /*#__PURE__*/forwardRef(function Radio(props, ref) {\n const {\n ariaLabel,\n isDisabled = false,\n isRequired,\n isInvalid = false,\n isChecked = false,\n label,\n mode,\n name,\n onChange = noop,\n value,\n testId,\n analyticsContext,\n // events and all other input props\n ...rest\n } = props;\n const onChangeAnalytics = usePlatformLeafEventHandler({\n fn: onChange,\n action: 'changed',\n analyticsData: analyticsContext,\n componentName: 'radio',\n packageName,\n packageVersion\n });\n const radioCustomProperties = useMemo(() => css(getRadioCustomProperties(mode)), [mode]);\n return (\n // https://product-fabric.atlassian.net/browse/DST-1971\n // eslint-disable-next-line jsx-a11y/label-has-associated-control,jsx-a11y/label-has-for\n jsx(\"label\", {\n \"data-testid\": testId && `${testId}--radio-label`,\n \"data-disabled\": isDisabled ? 'true' : undefined\n // TODO these will no longer be dynamic styles when legacy theming removed\n // eslint-disable-next-line @repo/internal/react/consistent-css-prop-usage\n ,\n css: [labelStyles, mode === 'light' ? lightLabelStyles : darkLabelStyles]\n }, jsx(\"input\", _extends({}, rest, {\n \"aria-label\": ariaLabel,\n checked: isChecked,\n disabled: isDisabled,\n name: name,\n onChange: onChangeAnalytics,\n required: isRequired,\n type: \"radio\",\n value: value,\n \"data-testid\": testId && `${testId}--radio-input`\n // isInvalid is used in a nonstandard way so cannot\n // use :invalid selector\n ,\n \"data-invalid\": isInvalid ? 'true' : undefined\n // TODO radioCustomProperties can be defined at top of file when legacy theming removed\n // eslint-disable-next-line @repo/internal/react/consistent-css-prop-usage\n ,\n css: [radioStyles, radioCustomProperties],\n ref: ref\n })), label ? jsx(\"span\", {\n css: labelPaddingStyles\n }, label) : null)\n );\n});\n\n/**\n * __Radio__\n *\n * A radio input allows users to select only one option from a number of choices. Radio is generally displayed in a radio group.\n *\n * - [Examples](https://atlassian.design/components/radio/examples)\n * - [Code](https://atlassian.design/components/radio/code)\n * - [Usage](https://atlassian.design/components/radio/usage)\n */\nconst Radio = /*#__PURE__*/memo( /*#__PURE__*/forwardRef(function Radio(props, ref) {\n return jsx(GlobalTheme.Consumer, null, ({\n mode\n }) => jsx(RadioWithMode, _extends({}, props, {\n ref: ref,\n mode: mode\n })));\n}));\nexport default Radio;","import _extends from \"@babel/runtime/helpers/extends\";\nimport React, { useCallback, useState } from 'react';\nimport noop from '@atlaskit/ds-lib/noop';\nimport Radio from './radio';\nconst noOptions = [];\nexport default function RadioGroup(props) {\n const {\n onChange,\n options = noOptions,\n value: propValue,\n defaultValue,\n isDisabled,\n isRequired,\n isInvalid,\n onInvalid = noop,\n name,\n analyticsContext,\n ['aria-labelledby']: ariaLabelledBy\n } = props;\n const [selectedValue, setSelectedValue] = useState(propValue !== undefined ? propValue : defaultValue);\n const onRadioChange = useCallback((e, analyticsEvent) => {\n setSelectedValue(e.currentTarget.value);\n if (onChange) {\n onChange(e, analyticsEvent);\n }\n }, [onChange]);\n\n // If propValue is provided than act as a controlled component\n // If not then act as an uncontrolled component using the value from state\n const value = typeof propValue !== 'undefined' ? propValue : selectedValue;\n return /*#__PURE__*/React.createElement(\"div\", {\n role: \"radiogroup\",\n \"aria-labelledby\": ariaLabelledBy\n }, options.map(({\n ...optionProps\n }, index) => {\n if (typeof isDisabled !== 'undefined') {\n optionProps.isDisabled = isDisabled;\n }\n const isChecked = value != null && optionProps.value === value;\n return /*#__PURE__*/React.createElement(Radio, _extends({}, optionProps, {\n name: name || optionProps.name,\n key: index,\n onChange: onRadioChange,\n onInvalid: onInvalid,\n isInvalid: isChecked && isInvalid,\n isChecked: isChecked,\n isRequired: isRequired,\n analyticsContext: analyticsContext\n }));\n }));\n}","import { RadioGroup } from '@atlaskit/radio';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport type { AnalyticsTrackType } from '../../../../../model/wac-signup-form';\nimport { InfoBox } from './info-box';\n\nimport { Label, RadioGroupWrapper } from './styled';\n\nexport type GdprLocationProps = {\n onLocationChange: (gdprLocation: string | null) => void;\n analyticsTrack: AnalyticsTrackType;\n};\nconst gdprData = [\n { name: 'gdprDataUS', value: 'US', label: 'US' },\n { name: 'gdprDataEU', value: 'EU', label: 'EU' }\n];\n\nexport function GdprLocation({\n onLocationChange,\n analyticsTrack\n}: GdprLocationProps) {\n const { segment } = analyticsTrack;\n\n return (\n <>\n \n \n {\n segment('wac-signup-gdpr-selected', { value: event.target.value });\n onLocationChange(event.target.value);\n }}\n />\n \n \n \n \n \n );\n}\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nconst ContextTypes = {\n getAtlaskitAnalyticsContext: PropTypes.func,\n getAtlaskitAnalyticsEventHandlers: PropTypes.func\n};\n\nconst noop = () => []; // eslint-disable-next-line @repo/internal/react/no-class-components\n\n\nclass AnalyticsContext extends Component {\n constructor(props) {\n super(props);\n\n _defineProperty(this, \"getChildContext\", () => ({\n getAtlaskitAnalyticsContext: this.getAnalyticsContext\n }));\n\n _defineProperty(this, \"getAnalyticsContext\", () => {\n const {\n data\n } = this.props;\n const {\n getAtlaskitAnalyticsContext = noop\n } = this.context;\n return [...getAtlaskitAnalyticsContext(), data];\n });\n\n _defineProperty(this, \"getAnalyticsEventHandlers\", () => {\n const {\n getAtlaskitAnalyticsEventHandlers = noop\n } = this.context;\n return getAtlaskitAnalyticsEventHandlers();\n });\n\n this.contextValue = {\n getAtlaskitAnalyticsContext: this.getAnalyticsContext,\n getAtlaskitAnalyticsEventHandlers: this.getAnalyticsEventHandlers\n };\n }\n\n render() {\n const {\n children\n } = this.props;\n return /*#__PURE__*/React.createElement(AnalyticsReactContext.Provider, {\n value: this.contextValue\n }, children);\n }\n\n}\n\n_defineProperty(AnalyticsContext, \"contextTypes\", ContextTypes);\n\n_defineProperty(AnalyticsContext, \"childContextTypes\", ContextTypes);\n\nexport default AnalyticsContext;","var _process$env;\n\nimport LegacyAnalyticsContext from './LegacyAnalyticsContext';\nimport ModernAnalyticsContext from './ModernAnalyticsContext';\nlet ExportedAnalyticsContext;\n\nif (typeof process !== 'undefined' && process !== null && (_process$env = process.env) !== null && _process$env !== void 0 && _process$env['ANALYTICS_NEXT_MODERN_CONTEXT']) {\n ExportedAnalyticsContext = ModernAnalyticsContext;\n} else {\n ExportedAnalyticsContext = LegacyAnalyticsContext;\n}\n\nexport default ExportedAnalyticsContext;","import React, { useCallback, useMemo } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nimport { useAnalyticsContext } from '../../hooks/useAnalyticsContext';\nimport { useTrackedRef } from '../../hooks/useTrackedRef';\n\nconst AnalyticsContext = ({\n data,\n children\n}) => {\n const dataRef = useTrackedRef(data);\n const analyticsContext = useAnalyticsContext();\n const getAtlaskitAnalyticsContext = useCallback(() => {\n return [...analyticsContext.getAtlaskitAnalyticsContext(), dataRef.current];\n }, [analyticsContext, dataRef]);\n const value = useMemo(() => ({\n getAtlaskitAnalyticsContext,\n getAtlaskitAnalyticsEventHandlers: analyticsContext.getAtlaskitAnalyticsEventHandlers\n }), [analyticsContext, getAtlaskitAnalyticsContext]);\n return /*#__PURE__*/React.createElement(AnalyticsReactContext.Provider, {\n value: value\n }, children);\n};\n\nexport default AnalyticsContext;","import { AnalyticsContext } from '@atlaskit/analytics-next';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport React from 'react';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport { MigrationSourceDiv, WacSignupFormContainer } from './styled';\n\nexport type MigrationSourceProps = {\n readonly isClaimedMigration: boolean;\n};\n\nexport function MigrationSource({ isClaimedMigration }: MigrationSourceProps) {\n return (\n \n \n \n {isClaimedMigration && (\n \n )}\n\n {!isClaimedMigration && (\n \n )}\n \n \n \n );\n}\n","import {\n CreateUIAnalyticsEvent,\n UIAnalyticsEvent\n} from '@atlaskit/analytics-next';\nimport {\n ProductKeys,\n BitbucketWorkspace,\n Sites,\n ProductPayloadObject\n} from '../../model/wac-signup-form';\nimport { NewRelicTracking, SegmentType } from '@atlassiansox/bxpkit-core';\nimport { uniq } from 'lodash';\nimport { DeferSitenameCohort } from '../../layouts/legacy/view/utility/get-defer-sitename-experiment-cohort';\nimport { Environment } from '@atlassiansox/bxpkit-core';\nimport {\n MarieSchemaAnalyticsType,\n Product\n} from '@atlassiansox/bxpkit-core/src';\n\ntype CreateSolutionStatsEventType = {\n readonly workspaceUuid?: string;\n readonly signUpFormUIState: { [key: string]: any };\n readonly createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\n\n/**\n * This function returns an analytics-next event for\n * tracking which products were provisioned vs existing,\n * as well as the primary cloudId & any existing instance IDs\n * in the cloud provisioning (or activateProducts) request.\n *\n * @param signUpFormUIState - complete signup form UIState object\n * @param createAnalyticsEvent - analytics-next function, to be passed in from UI\n */\n\nexport function createSolutionStatsEvent({\n signUpFormUIState,\n createAnalyticsEvent\n}: CreateSolutionStatsEventType): UIAnalyticsEvent | undefined {\n const {\n signupState,\n isBbCopyEnabled,\n bbWorkspaces,\n productsExisting,\n pickableSites,\n isBundleBBJSW,\n isBundleDevops\n } = signUpFormUIState;\n\n if (!isBundleDevops && !isBundleBBJSW) {\n return;\n }\n\n let isNewSiteProvisioned = false;\n const isN2NAtlassian = productsExisting.length === 0;\n const isNewBitbucketWorkspace = isBbCopyEnabled || bbWorkspaces.length === 0;\n const signupUrl = window?.location?.href || '';\n const targetCloudId = signupState?.selectedSite?.cloudId || null;\n\n const existingProducts = uniq(productsExisting);\n let existingInstanceIds: string[] = [];\n let provisionedProducts: string[] = [];\n\n // gather all existing instance IDs\n if (bbWorkspaces && bbWorkspaces.length > 0) {\n existingInstanceIds = existingInstanceIds.concat(\n bbWorkspaces.map(\n (workspace: BitbucketWorkspace) => workspace?.workspace?.uuid\n )\n );\n }\n if (pickableSites && pickableSites.length > 0) {\n existingInstanceIds = existingInstanceIds.concat(\n pickableSites.map((site: Sites) => site?.cloudId)\n );\n }\n\n if (isBundleBBJSW) {\n // either existing sitepicker is not rendered, or a site\n // was selected without JSW included\n isNewSiteProvisioned =\n !signupState.isExistingSitePickerN2E ||\n (signupState?.selectedSite?.products &&\n !signupState?.selectedSite?.products.includes(\n ProductKeys.JIRA_SOFTWARE\n ));\n\n // potentially provisioned products for BB/JSW\n provisionedProducts = [\n ProductKeys.JIRA_SOFTWARE,\n ProductKeys.BITBUCKET\n ].map((key) => key.toString());\n\n // filter out provisioned products if existing products were used\n if (!isNewSiteProvisioned) {\n provisionedProducts = provisionedProducts.filter(\n (key) => key != ProductKeys.JIRA_SOFTWARE\n );\n }\n\n if (!isNewBitbucketWorkspace) {\n provisionedProducts = provisionedProducts.filter(\n (key) => key != ProductKeys.BITBUCKET\n );\n }\n }\n\n existingInstanceIds = uniq(existingInstanceIds);\n\n return createAnalyticsEvent({\n eventName: 'bxp.formCloudSignup.solutionStats',\n event: 'clicked',\n eventComponent: 'button',\n data: {\n isN2NAtlassian,\n signupUrl,\n existingProducts,\n provisionedProducts,\n existingInstanceIds,\n isNewSiteProvisioned,\n targetCloudId,\n provisionedCloudId: null\n }\n });\n}\n\nexport type TrackSignupButtonClickedOptions = {\n context: MarieSchemaAnalyticsType;\n buttonLabel: string | undefined;\n createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\nexport const trackSignupButtonClicked = ({\n context,\n buttonLabel,\n createAnalyticsEvent\n}: TrackSignupButtonClickedOptions) => {\n const eventName = 'bxp.formCloudSignup.signup-button-clicked';\n const data = {\n eventType: 'track',\n eventContainer: 'signUpForm',\n event: 'clicked',\n eventComponent: 'button',\n uuid: '6707236536632157',\n label: buttonLabel,\n productKey: context.productKey,\n productsOffered: context.productsOffered,\n loginUserDetected: context.loginUserDetected,\n userEmail: context.userEmail,\n suiteName: context.suiteName,\n productEdition: context.productEdition,\n productPlatform: context.productPlatform,\n schemaVersion: context.schemaVersion\n };\n\n context?.analyticsTrack?.segment(eventName, data);\n createAnalyticsEvent({ eventName, data }).fire();\n};\n\nexport type TrackN2ESubmitOptions = {\n cloudId: string | undefined;\n products: Product[] | null;\n segment: SegmentType;\n};\nexport const trackN2ESubmit = ({\n cloudId,\n products,\n segment\n}: TrackN2ESubmitOptions) => {\n segment('bxp.formCloudSignup.N2ESubmit', {\n cloudId,\n products,\n signupUrl: window.location.href\n });\n};\n\nexport type TrackN2ESubmitOptions2 = {\n cloudId: string;\n products: Product[];\n signupUrl: string;\n accountId: string;\n createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\nexport const trackN2ESubmit2 = ({\n cloudId,\n products,\n signupUrl,\n accountId,\n createAnalyticsEvent\n}: TrackN2ESubmitOptions2) => {\n createAnalyticsEvent({\n eventName: 'bxp.formCloudSignup.N2ESubmit',\n event: 'clicked',\n eventComponent: 'button',\n targetCloudId: cloudId,\n provisionedProducts: products,\n signupUrl,\n aaid: accountId\n }).fire();\n};\n\nexport type TrackRecaptchaErrorOptions = {\n segment: SegmentType;\n};\nexport const trackRecaptchaError = ({\n segment\n}: TrackRecaptchaErrorOptions) => {\n segment('bxp.formCloudSignup.reCaptchaError', {});\n};\n\nexport type TrackSubmitWithCaptchaOptions = {\n newRelic: NewRelicTracking;\n};\nexport const trackSubmitWithCaptcha = ({\n newRelic\n}: TrackSubmitWithCaptchaOptions) => {\n newRelic.action('bxp.formCloudSignup.submitWithCaptcha', '');\n};\n\nexport type TrackSignUpFormSubmitSucceededOptions = {\n createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\nexport const trackSignUpFormSubmitSucceeded = ({\n createAnalyticsEvent\n}: TrackSignUpFormSubmitSucceededOptions) => {\n createAnalyticsEvent({\n eventName: 'reactSignUpFormSubmitSucceeded',\n data: {\n event: 'submitSucceeded', // event verb, in past tense (eg, \"clicked\")\n uuid: 'reactSignUpForm' // required for Magnolia events, unique id for a given component if available\n }\n }).fire();\n};\n\nexport type TrackSignUpFormSubmitFailedOptions = {\n createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\nexport const trackSignUpFormSubmitFailed = ({\n createAnalyticsEvent\n}: TrackSignUpFormSubmitFailedOptions) => {\n createAnalyticsEvent({\n eventName: 'reactSignUpFormSubmitFailed',\n data: {\n event: 'submitFailed', // event verb, in past tense (eg, \"clicked\")\n uuid: 'reactSignUpForm' // required for Magnolia events, unique id for a given component if available\n }\n }).fire();\n};\n\nexport type TrackSignupContextTooLargeOptions = {\n contextLength: number;\n newRelic: NewRelicTracking;\n};\nexport const trackSignupContextTooLarge = ({\n contextLength,\n newRelic\n}: TrackSignupContextTooLargeOptions) => {\n newRelic.action(\n 'bxp.formCloudSignup.signupContextTooLarge',\n contextLength.toString()\n );\n};\n\nexport type TrackActivateProductsSubmitOptions = {\n activateProducts: boolean;\n segment: SegmentType;\n};\nexport const trackActivateProductsSubmit = ({\n activateProducts,\n segment\n}: TrackActivateProductsSubmitOptions) => {\n segment('bxp.formCloudSignup.activateProductsSubmit', {\n activateProducts\n });\n};\n\nexport type TrackFormSubmitOptions = {\n isLoggedIn: boolean | undefined;\n segment: SegmentType;\n newRelic: NewRelicTracking;\n};\nexport const trackFormSubmit = ({\n isLoggedIn,\n segment,\n newRelic\n}: TrackFormSubmitOptions) => {\n segment('bxp.formCloudSignup.formSubmit', {\n type: isLoggedIn ? 'N2E' : 'N2N'\n });\n newRelic.action('bxp.formCloudSignup.formSubmit', isLoggedIn ? 'N2E' : 'N2N');\n};\n\nexport type TrackProgressPollInvalidOptions = {\n segment: SegmentType;\n};\nexport const trackProgressPollInvalid = ({\n segment\n}: TrackProgressPollInvalidOptions) => {\n segment('bxp.formCloudSignup.progressPollInvalid', { label: 'cloudName' });\n};\n\nexport type TrackWaitedSignupPageSubmitMoreThan15S = {\n newRelic: NewRelicTracking;\n segment: SegmentType;\n};\nexport const trackWaitedSignupPageSubmitMoreThan15SOptions = ({\n newRelic,\n segment\n}: TrackWaitedSignupPageSubmitMoreThan15S) => {\n const eventName = 'bxp.formCloudSignup.waitedSignupPageSubmit>15s';\n newRelic.action(eventName, '');\n segment(eventName, {});\n};\n\nexport type TrackWaitedSignupPageSubmitMoreThan60SOptions = {\n newRelic: NewRelicTracking;\n segment: SegmentType;\n};\nexport const trackWaitedSignupPageSubmitMoreThan60S = ({\n newRelic,\n segment\n}: TrackWaitedSignupPageSubmitMoreThan60SOptions) => {\n const eventName = 'bxp.formCloudSignup.waitedSignupPageSubmit>60s';\n newRelic.action(eventName, '');\n segment(eventName, {});\n};\n\nexport type TrackProgressUriErrOptions = {\n err: any;\n newRelic: NewRelicTracking;\n segment: SegmentType;\n};\nexport const trackProgressUriErr = ({\n err,\n newRelic,\n segment\n}: TrackProgressUriErrOptions) => {\n const eventName = 'bxp.formCloudSignup.progressUri';\n segment(eventName, { err });\n newRelic.trackAjax(eventName, err, false);\n};\n\nexport type TrackProgressUriOptions = {\n response: any;\n newRelic: NewRelicTracking;\n};\nexport const trackProgressUri = ({\n response,\n newRelic\n}: TrackProgressUriOptions) => {\n newRelic.trackAjax('bxp.formCloudSignup.progressUri', response, true);\n};\n\nexport type TrackProgressPollMissingOptions = {\n segment: SegmentType;\n};\nexport const trackProgressPollMissing = ({\n segment\n}: TrackProgressPollMissingOptions) => {\n segment('bxp.formCloudSignup.progressPollMissing', { label: 'body' });\n};\n\nexport type TrackSubmitSuccessOptions = {\n isLoggedIn: boolean;\n segment: SegmentType;\n};\nexport const trackSubmitSuccess = ({\n isLoggedIn,\n segment\n}: TrackSubmitSuccessOptions) => {\n segment('bxp.formCloudSignup.submitSuccess', {\n type: isLoggedIn ? 'N2E' : 'N2N'\n });\n segment('bxp.formCloudSignup.confirmedEvaluation', {});\n};\n\nexport type TrackGoToBitbucketOptions = {\n newRelic: NewRelicTracking;\n};\nexport const trackGoToBitbucket = ({ newRelic }: TrackGoToBitbucketOptions) => {\n newRelic.action('bxp.formCloudSignup.goToBitbucket', '');\n};\n\nexport type TrackGoToJSWOptions = {\n newRelic: NewRelicTracking;\n};\nexport const trackGoToJSW = ({ newRelic }: TrackGoToJSWOptions) => {\n newRelic.action('bxp.formCloudSignup.goToJSW', '');\n};\n\nexport type TrackProgressPollErrorOptions = {\n label: string;\n segment: SegmentType;\n};\nexport const trackProgressPollError = ({\n label,\n segment\n}: TrackProgressPollErrorOptions) => {\n segment('bxp.formCloudSignup.progressPollError', { label });\n};\n\nexport type TrackProgressPollOptions = {\n label: string;\n segment: SegmentType;\n};\n\nexport type TrackSubmitSuccessProductsOptions = {\n products: ProductPayloadObject[];\n isLoggedIn: boolean;\n segment: SegmentType;\n};\nexport const trackSubmitSuccessProducts = ({\n isLoggedIn,\n segment\n}: TrackSubmitSuccessProductsOptions) => {\n segment('bxp.formCloudSignup.submitSuccess', {\n type: isLoggedIn ? 'N2E' : 'N2N'\n });\n};\n\ninterface TrackDeferSitenameSignups {\n isSitenameSpecified: boolean;\n isSiteNew: boolean;\n numberOfExistingUserSites: number;\n optionalSitenameFeatureCohort: DeferSitenameCohort;\n sitename: string | null;\n userId: string;\n}\n\n// add to atlassian-service-clients if this gets productionized\nexport const trackDeferSitenameSignups = ({\n isSitenameSpecified,\n isSiteNew,\n optionalSitenameFeatureCohort,\n numberOfExistingUserSites,\n sitename,\n userId\n}: TrackDeferSitenameSignups) => {\n fetch(\n `${Environment.getApiPrivateUrl()}/bxp/signup/analytics/deferred-sitename-signup`,\n {\n method: 'POST',\n headers: [['Content-Type', 'application/json']],\n body: JSON.stringify({\n action: 'provisioningInitiated',\n actionSubject: 'product',\n product: 'marketing',\n attributes: {\n isSiteNew,\n isSitenameSpecified,\n numberOfExistingUserSites,\n optionalSitenameFeatureCohort,\n sitename\n },\n userId,\n tenantId: 'tenantId',\n tenantIdType: 'tenantIdType'\n })\n }\n ).catch((err) => console.log(err));\n};\n\nexport interface TrackExposedToDeferSitename {\n createAnalyticsEvent: CreateUIAnalyticsEvent;\n value: DeferSitenameCohort;\n products: string[];\n}\n\nexport const trackExposedToDeferSitename = ({\n createAnalyticsEvent,\n value,\n products\n}: TrackExposedToDeferSitename) =>\n createAnalyticsEvent({\n action: 'exposed',\n actionSubject: 'feature',\n product: 'marketing',\n attributes: {\n flagKey: 'economy.growth.defer-site-name.experiment',\n value,\n growthInitiative: 'signup',\n products\n }\n }).fire();\n\nexport interface TrackErrorParsingAnchorJourneyCookieOptions {\n createAnalyticsEvent: CreateUIAnalyticsEvent;\n}\n\nexport const trackErrorParsingAnchorJourneyCookie = ({\n createAnalyticsEvent\n}: TrackErrorParsingAnchorJourneyCookieOptions) => {\n createAnalyticsEvent({\n eventName: 'bxp.anchorJourney.parseCookieError'\n }).fire();\n};\n","import { UIAnalyticsEvent } from '@atlaskit/analytics-next';\nimport { AppKey, Url } from '@atlassiansox/bxpkit-core';\nimport 'isomorphic-fetch';\nimport Cookies from 'js-cookie';\nimport type {\n AnalyticsTrackType,\n ConsentsObject,\n ProductPayloadObject\n} from '../../model';\nimport { ProductKeys } from '../../model';\n\nimport { ResendEmailType, SubmitErrorType } from '../../model';\nimport {\n trackGoToBitbucket,\n trackGoToJSW,\n trackProgressPollError,\n trackProgressPollInvalid,\n trackProgressPollMissing,\n trackProgressUri,\n trackProgressUriErr,\n trackSubmitSuccess,\n trackSubmitSuccessProducts,\n trackWaitedSignupPageSubmitMoreThan15SOptions,\n trackWaitedSignupPageSubmitMoreThan60S\n} from './analytics';\n\nconst URL_JSW_STAGE = 'jira-dev.com';\nconst URL_JSW_PROD = 'atlassian.net';\n\nconst URL_BB_STAGE = 'https://integration.bb-inf.net';\nconst URL_BB_PROD = 'https://bitbucket.org';\n\nexport const URL_BITBUCKET_BUNDLE_PAGE = 'software/bitbucket/bundle';\n\nexport type FormSubmitN2NType = {\n readonly payload: FormPayloadType | FormPayloadActivateProducts;\n readonly wacEnvUrl: string;\n readonly confirmationPageUrl: string;\n readonly checkEmailPageUrl: string;\n readonly isStaging: boolean;\n readonly isLoggedIn?: boolean;\n readonly isJswIncluded?: boolean | null;\n readonly isOpsgenieIncluded?: boolean | null;\n readonly dataRegion?: string | null;\n readonly setPollingLoaderShown: (val: boolean) => void;\n readonly analyticsTrack: AnalyticsTrackType;\n readonly setSubmitError: (val: SubmitErrorType) => void;\n readonly resendEmail?: ResendEmailScreenType;\n readonly solutionStatsEvent?: UIAnalyticsEvent;\n readonly hideUserSegmentation?: boolean;\n readonly isAppProvisioningEligible?: boolean;\n};\n\nexport type FormSubmitDeferredPasswordType = {\n readonly email: string | null;\n readonly displayName: string | null | undefined;\n readonly continueUrl: string | null;\n readonly isStaging: boolean | null;\n readonly setPollingLoaderShown: (val: boolean) => void;\n readonly analyticsTrack: AnalyticsTrackType;\n readonly setSubmitError: (val: SubmitErrorType) => void;\n};\n\nexport type ResendEmailScreenType = {\n readonly enableResendEmail: boolean;\n readonly setShowResendEmail: (val: boolean) => void;\n readonly setShowDevopsCarouselEnd: (val: boolean) => void;\n readonly setGoToURL: (val: string) => void;\n readonly enableCarouselEndCard: boolean;\n};\n\nexport type GoToJSWType = {\n readonly isStaging: boolean;\n readonly jswName: string;\n readonly resendEmail?: ResendEmailScreenType;\n};\n\nexport type GoToBitbucketType = {\n readonly isStaging: boolean;\n readonly resendEmail?: ResendEmailScreenType;\n};\n\ntype PollForSuccessType = {\n readonly analyticsTrack: AnalyticsTrackType;\n readonly confirmationPageUrl: string;\n readonly checkEmailPageUrl: string;\n readonly isStaging: boolean;\n readonly wacEnvUrl: string;\n readonly isLoggedIn: boolean;\n readonly isNewUser?: boolean;\n readonly progressUri: string;\n readonly cloudName: string | null;\n readonly products: ProductPayloadObject[];\n readonly setSubmitError: (val: SubmitErrorType) => void;\n readonly setPollingLoaderShown: (val: boolean) => void;\n readonly handlePollProgressStatusFailure?: () => void;\n readonly isJswIncluded?: boolean | null;\n readonly isOpsgenieIncluded?: boolean | null;\n readonly dataRegion?: string | null;\n readonly resendEmail?: ResendEmailScreenType;\n readonly solutionStatsEvent?: UIAnalyticsEvent;\n readonly hideUserSegmentation?: boolean;\n readonly isAppProvisioningEligible?: boolean;\n readonly isBitbucketWorkspace?: boolean;\n readonly bitbucketWorkspaceUuid?: string;\n};\n\nexport type FormPayloadActivateProducts = {\n activateProducts?: boolean;\n products: ProductPayloadObject[];\n cloudId?: string;\n cloudName: string | null;\n advancedSettings?: {\n [key: string]: number | boolean | string | Record;\n };\n signupContext?: string;\n};\n\nexport type FormPayloadType = {\n adminUsername: string;\n gRecaptchaResponse?: string;\n cloudName: string | null;\n email: string | null;\n timezone: string | null;\n firstName: string | null;\n lastName: string | null;\n adminPassword?: string | null;\n signupContext?: string;\n dataRegion?: string;\n consent: {\n site: string | null;\n locale: string | null;\n formUrl: string | null;\n consents: ConsentsObject[];\n };\n} & FormPayloadActivateProducts;\n\nconst localStorageGet = (key: string): string => {\n try {\n return localStorage.getItem(key) || '';\n } catch (e) {\n return '';\n }\n};\n\n// N2N anon user\nfunction goToCheckEmail(\n wacEnvUrl: string,\n checkEmailPageUrl: string,\n cloudName: string,\n products: string,\n analyticsTrack: AnalyticsTrackType,\n resendEmail?: ResendEmailScreenType\n) {\n const splitPath = checkEmailPageUrl?.split('/');\n\n if (splitPath && splitPath.length >= 2 && splitPath[1].includes('wac')) {\n // remove contextual path if applicable\n splitPath.splice(0, 2);\n checkEmailPageUrl = `/${splitPath.join('/')}`;\n }\n\n const { newRelic, segment } = analyticsTrack;\n\n newRelic.action('apollo.signup.redirect-to-check-email', '');\n segment('bxp.formCloudSignup.navigatedToCheckEmail', {});\n\n const queryParams = {\n accountName: cloudName,\n products\n };\n\n // if (features.enableAutogenSiteName) {\n // delete queryParams.accountName;\n // }\n // setResendEmailParams(cloudId, requestId);\n\n if (resendEmail?.enableResendEmail) {\n resendEmail.setShowResendEmail(true);\n return;\n }\n const urlParams = csvParams(queryParams);\n const nextUrl = `${wacEnvUrl}${checkEmailPageUrl}/?${urlParams}`;\n window.location.assign(nextUrl);\n return;\n}\n\nfunction goToBitbucket({ isStaging, resendEmail }: GoToBitbucketType) {\n const nextUrl = `${\n isStaging ? URL_BB_STAGE : URL_BB_PROD\n }/dashboard/overview`;\n if (resendEmail?.enableCarouselEndCard) {\n resendEmail.setGoToURL(nextUrl);\n return resendEmail.setShowDevopsCarouselEnd(true);\n }\n window.location.assign(nextUrl);\n}\n\nfunction goToJSW({ isStaging, jswName, resendEmail }: GoToJSWType) {\n const nextUrl = `https://${jswName}.${\n isStaging ? URL_JSW_STAGE : URL_JSW_PROD\n }`;\n if (resendEmail?.enableCarouselEndCard) {\n resendEmail.setGoToURL(nextUrl);\n return resendEmail.setShowDevopsCarouselEnd(true);\n }\n window.location.assign(nextUrl);\n}\n\nexport function generateRenameUrl(\n wacEnvUrl: string,\n cloudId: string,\n progressUri: string,\n redirectUrl: string,\n siteRenamePageUrl: string,\n isPermitted?: boolean\n) {\n const queryParams: any = {\n cloudId,\n requestId: getRequestId(progressUri),\n redirecturl: encodeURIComponent(redirectUrl),\n isPermitted\n };\n return `${wacEnvUrl}${siteRenamePageUrl}?${csvParams(queryParams)}`;\n}\n\n// Allow for product developers to connect to staging instance\nexport const isTestTenantByName = (\n isStaging: boolean,\n cloudName: string | null\n) => {\n // testing tenant pattern: atl-vertigo--jira-jira-branch-foo--bar\n // short tenant pattern: atl-vertigo--jira-(jes/jed)-foo--bar\n const TEST_TENANT_PATTERN =\n /^atl-vertigo--(((?:jira|j|rolex|stg)+-jira-branch-[^-]+--)|(conf-(conf|stg)-proxy-\\w+--[\\w-]+)).*$/;\n const SHORT_TEST_TENANT_PATTERN = /^atl-vertigo--jira-(jes|jed)-[^-]+--.*$/;\n return (\n isStaging &&\n cloudName &&\n (TEST_TENANT_PATTERN.test(cloudName) ||\n SHORT_TEST_TENANT_PATTERN.test(cloudName))\n );\n};\n\ntype GenerateConfirmationUrlOptions = {\n readonly wacEnvUrl: string;\n readonly confirmationPageUrl: string;\n readonly cloudId: string;\n readonly progressUri: string;\n readonly cloudName: string;\n readonly products: string;\n readonly isOpsgenieIncluded?: boolean | null;\n readonly dataRegion?: string | null;\n readonly analyticsTrack?: AnalyticsTrackType;\n readonly bbBundlePreferred?: boolean;\n readonly isDevops?: boolean;\n readonly isSimpleSignup?: boolean;\n readonly hideUserSegmentation?: boolean;\n readonly isAppProvisioningEligible?: boolean;\n readonly isNewUser?: boolean;\n readonly bitbucketWorkspaceUuid?: string;\n};\n\n// Generates the post-email confirmation url for verfied users\nexport function generateConfirmationUrl({\n wacEnvUrl,\n confirmationPageUrl,\n cloudId,\n progressUri,\n cloudName,\n products,\n isOpsgenieIncluded,\n dataRegion,\n analyticsTrack,\n bbBundlePreferred,\n isDevops,\n isSimpleSignup,\n hideUserSegmentation,\n isAppProvisioningEligible,\n isNewUser,\n bitbucketWorkspaceUuid\n}: GenerateConfirmationUrlOptions) {\n // code for removing the /wac/ part of url if applicable\n const splitPath = confirmationPageUrl?.split('/');\n\n if (splitPath && splitPath.length >= 2 && splitPath[1].includes('wac')) {\n // remove contextual path if applicable\n splitPath.splice(0, 2);\n confirmationPageUrl = `/${splitPath.join('/')}`;\n }\n\n if (analyticsTrack) {\n const { newRelic, segment } = analyticsTrack;\n\n newRelic.action('apollo.signup.redirect-to-confirmation', '');\n segment('bxp.formCloudSignup.navigatedToConfirmation', {});\n }\n\n const constructedQueryParameters: { [key: string]: any } = {\n ondemandurl: cloudName,\n cloudId,\n requestId: getRequestId(progressUri)\n };\n\n if (bitbucketWorkspaceUuid !== undefined) {\n constructedQueryParameters.bitbucketWorkspaceUuid = bitbucketWorkspaceUuid;\n }\n\n constructedQueryParameters.products =\n products.length > 1 ? products : undefined;\n\n if (isOpsgenieIncluded) {\n constructedQueryParameters.dataRegion =\n dataRegion === 'EU' ? 'europe' : 'main';\n }\n\n const parametersFromUrl = Url.getUrlParams() || {};\n if (isDevops) {\n if (parametersFromUrl.hasOwnProperty('signupSource')) {\n constructedQueryParameters.signupSource = parametersFromUrl.signupSource;\n }\n constructedQueryParameters.isFoundingAdmin = true;\n }\n\n if (isSimpleSignup) {\n if (parametersFromUrl.hasOwnProperty('signupSource')) {\n constructedQueryParameters.signupSource = parametersFromUrl.signupSource;\n }\n constructedQueryParameters.isFoundingAdmin = true;\n }\n\n if (\n parametersFromUrl.hasOwnProperty('signupSource') &&\n parametersFromUrl.signupSource === 'confluenceBundle'\n ) {\n constructedQueryParameters.signupSource = parametersFromUrl.signupSource;\n }\n\n // Add `n2n` param for EXPCEN-3749\n if (parametersFromUrl.hasOwnProperty('n2n')) {\n constructedQueryParameters.n2n = parametersFromUrl.n2n;\n } else if (products.includes(ProductKeys.JIRA_SOFTWARE) && isNewUser) {\n constructedQueryParameters.n2n = true;\n }\n\n // Add `templateId` param to EXPCEN-3749\n if (parametersFromUrl.hasOwnProperty('templateId')) {\n constructedQueryParameters.templateId = parametersFromUrl.templateId;\n }\n\n // Add `team_type` param to SPICE-931\n if (parametersFromUrl.hasOwnProperty('team_type')) {\n constructedQueryParameters.team_type = parametersFromUrl.team_type;\n }\n\n // If BB is the preferred signup, it should be ordered first in the product param\n if (bbBundlePreferred) {\n constructedQueryParameters.products = constructedQueryParameters.products\n .split(',')\n .sort()\n .join();\n }\n\n // If this is a Jira Template signup, User Segmentation Screen should be hidden\n if (hideUserSegmentation) {\n constructedQueryParameters.hideUserSegmentation = true;\n }\n\n if (isAppProvisioningEligible === true) {\n constructedQueryParameters.provisionApp = true;\n const appKeyIncluded = constructedQueryParameters.products\n .split(',')\n .map((key: string) => {\n return Object.values(AppKey).includes(key as AppKey);\n });\n if (appKeyIncluded.includes(true)) {\n const indx = appKeyIncluded.indexOf(true);\n constructedQueryParameters.appKey =\n constructedQueryParameters.products.split(',')[indx];\n }\n }\n\n const nextUrl = `${wacEnvUrl}${confirmationPageUrl}/?${csvParams(\n constructedQueryParameters\n )}`;\n return nextUrl;\n}\n\nexport function pollForSuccess({\n analyticsTrack,\n confirmationPageUrl,\n checkEmailPageUrl,\n isStaging,\n wacEnvUrl,\n isLoggedIn,\n isNewUser,\n progressUri,\n cloudName,\n products,\n setSubmitError,\n setPollingLoaderShown,\n isJswIncluded,\n solutionStatsEvent,\n isOpsgenieIncluded,\n dataRegion,\n resendEmail,\n hideUserSegmentation,\n isAppProvisioningEligible,\n isBitbucketWorkspace,\n bitbucketWorkspaceUuid,\n handlePollProgressStatusFailure = () => {}\n}: PollForSuccessType) {\n const { segment, newRelic } = analyticsTrack;\n\n const signupSource = new URLSearchParams(window.location.search).get(\n 'signupSource'\n );\n const bitbucketBundlePreferred = signupSource === 'bbbundle' ? true : false;\n\n let secondsPassed = 0;\n if (!cloudName) {\n trackProgressPollInvalid({ segment });\n return;\n }\n const poll = setInterval(async () => {\n secondsPassed++;\n if (secondsPassed === 15) {\n trackWaitedSignupPageSubmitMoreThan15SOptions({\n newRelic,\n segment\n });\n setSubmitError(SubmitErrorType.WARNING_TIMEOUT_PENDING);\n }\n if (secondsPassed === 60) {\n trackWaitedSignupPageSubmitMoreThan60S({\n newRelic,\n segment\n });\n setSubmitError(SubmitErrorType.ERROR_TIMEOUT);\n clearInterval(poll);\n setPollingLoaderShown(false);\n }\n const response = await fetch(`${progressUri}`, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json'\n },\n credentials: 'include'\n }).catch((err) => {\n clearInterval(poll);\n trackProgressUriErr({ err, newRelic, segment });\n return err;\n });\n\n trackProgressUri({ newRelic, response });\n const body = response.status === 200 ? await response.json() : null;\n if (!body) {\n clearInterval(poll);\n trackProgressPollMissing({ segment });\n }\n\n if (body) {\n const statusActivate = body.bestStatuses.ACTIVATE_PRODUCT;\n\n let statusSignup;\n if (isBitbucketWorkspace) {\n // move the user to the confirmation page if HAMS_CREATE_CLOUD status is SKIPPED\n if (body.bestStatuses.HAMS_CREATE_CLOUD) {\n statusSignup =\n body.bestStatuses.HAMS_CREATE_CLOUD === 'SKIPPED'\n ? 'COMPLETE_SUCCESS'\n : 'COMPLETE_ERROR';\n }\n } else {\n statusSignup =\n body.bestStatuses.HAMS_CREATE_CLOUD !== 'SKIPPED'\n ? body.bestStatuses.HAMS_CREATE_CLOUD\n : body.bestStatuses.BAG_CREATE_CLOUD;\n }\n\n if (body.cloudId && solutionStatsEvent) {\n if (solutionStatsEvent?.payload?.data?.isNewSiteProvisioned) {\n solutionStatsEvent.update({\n data: Object.assign({}, solutionStatsEvent?.payload?.data, {\n provisionedCloudId: body?.cloudId,\n targetCloudId: body?.cloudId\n })\n });\n }\n solutionStatsEvent.fire();\n }\n\n if (statusActivate && body.completed) {\n clearInterval(poll);\n\n if (body.successful) {\n trackSubmitSuccess({ isLoggedIn, segment });\n\n if (isJswIncluded || bitbucketBundlePreferred) {\n trackGoToBitbucket({ newRelic });\n return goToBitbucket({ isStaging, resendEmail });\n } else {\n trackGoToJSW({ newRelic });\n // Give JSW an extra second before redirect\n return setTimeout(\n () => goToJSW({ isStaging, jswName: cloudName, resendEmail }),\n 1000\n );\n }\n } else {\n trackProgressPollError({\n label: 'body',\n segment\n });\n }\n // TODO: else if successful === false, throw error/show in UI\n }\n\n switch (statusSignup) {\n case 'COMPLETE_SUCCESS':\n case 'COMPLETE_MANUAL_SUCCESS':\n clearInterval(poll);\n\n const cloudId = isBitbucketWorkspace ? body.orgId : body.cloudId;\n const productParam = products.map((p) => p.product).join(',');\n\n // TODO if (!cloudId) throw Error;\n if (!cloudId) {\n trackProgressPollMissing({ segment });\n } else {\n trackSubmitSuccessProducts({\n products,\n isLoggedIn,\n segment\n });\n }\n\n if (isLoggedIn) {\n const confirmURL = generateConfirmationUrl({\n wacEnvUrl,\n confirmationPageUrl,\n cloudId,\n progressUri,\n cloudName,\n products: productParam,\n isOpsgenieIncluded,\n dataRegion,\n analyticsTrack,\n bbBundlePreferred: bitbucketBundlePreferred,\n hideUserSegmentation,\n isAppProvisioningEligible,\n isNewUser,\n bitbucketWorkspaceUuid\n });\n // devops carousel\n if (resendEmail?.enableCarouselEndCard) {\n resendEmail.setShowDevopsCarouselEnd(true);\n return resendEmail.setGoToURL(confirmURL);\n }\n return window.location.assign(confirmURL);\n } else {\n return goToCheckEmail(\n wacEnvUrl,\n checkEmailPageUrl,\n cloudName,\n productParam,\n analyticsTrack,\n resendEmail\n );\n }\n\n case 'COMPLETE_ERROR':\n clearInterval(poll);\n trackProgressPollError({\n label: statusSignup,\n segment\n });\n // TODO: show error on frontend\n\n if (isBitbucketWorkspace) {\n setSubmitError(SubmitErrorType.ERROR_PRODUCT_ACTIVATE);\n setPollingLoaderShown(false);\n handlePollProgressStatusFailure();\n }\n return;\n }\n }\n }, 1000);\n}\n\nexport async function formSubmitN2N({\n payload,\n wacEnvUrl,\n confirmationPageUrl,\n checkEmailPageUrl,\n isStaging,\n isLoggedIn,\n isJswIncluded,\n solutionStatsEvent,\n isOpsgenieIncluded,\n dataRegion,\n setPollingLoaderShown,\n analyticsTrack,\n setSubmitError,\n resendEmail,\n hideUserSegmentation,\n isAppProvisioningEligible\n}: FormSubmitN2NType) {\n const { segment, newRelic } = analyticsTrack;\n setPollingLoaderShown(true);\n\n const submitUrl = isLoggedIn\n ? `https://${\n isStaging ? 'wac.stg.internal.' : 'www.'\n }atlassian.com/gateway/api/cloud/signup`\n : `${wacEnvUrl}/endpoint/cloud/signupAnon`;\n try {\n const response = await fetch(submitUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'atl-cookies': JSON.stringify({\n _ga: Cookies.get('_ga') || '',\n seg_xid: localStorageGet('seg_xid'),\n __atl_path: Cookies.get('__atl_path') || '',\n ajs_anonymous_id: Cookies.get('ajs_anonymous_id') || ''\n })\n },\n body: JSON.stringify(payload),\n credentials: 'include'\n });\n\n if (response.ok && response.status === 200) {\n newRelic.trackAjax('cofs_create_cloud_bxp_react', response, true);\n const body = await response.json();\n\n // when site name creation is differed the payload wont have a cloudName to pass to the poll function\n // the response from the fetch will include the auto gen site name to be used as the cloudName\n // without a cloudName it wont redirect to the email confirmation or the rename page\n let cloudName = null;\n if (payload?.signupContext?.match('autogenSiteName')) {\n cloudName = body.cloudName;\n } else {\n cloudName = payload.cloudName;\n }\n\n // set r.e.d session key for reading by email verification component\n if ('email' in payload) {\n // ensure payload is type FormPayloadType\n const resendData = Object.assign(\n {},\n {\n cloudName: encodeURIComponent(cloudName || ''),\n cloudId: body.cloudId || '',\n requestId: body.progressUri ? getRequestId(body.progressUri) : '',\n email: encodeURIComponent(payload.email || ''),\n primaryProduct: encodeURIComponent(\n payload?.products[0]?.product || ''\n )\n }\n );\n sessionStorage.setItem(\n ResendEmailType.RESEND_DATA,\n window.btoa(JSON.stringify(resendData))\n );\n }\n\n pollForSuccess({\n isLoggedIn: isLoggedIn || false,\n confirmationPageUrl,\n checkEmailPageUrl,\n progressUri: body.progressUri,\n products: payload.products,\n analyticsTrack,\n isStaging,\n wacEnvUrl,\n cloudName,\n setSubmitError,\n setPollingLoaderShown,\n isJswIncluded,\n isOpsgenieIncluded,\n dataRegion,\n resendEmail,\n solutionStatsEvent,\n hideUserSegmentation,\n isAppProvisioningEligible\n });\n\n return response;\n }\n if (!response.ok || response.status !== 200) {\n let body = '';\n try {\n body = await response.json();\n } catch (e) {\n body = 'Unable to parse response as JSON';\n sessionStorage.removeItem(ResendEmailType.RESEND_DATA);\n }\n newRelic.trackAjax('cofs_create_cloud_bxp_react', response, false);\n segment('bxp.formCloudSignup.submitError', {\n type: isLoggedIn ? 'N2E' : 'N2N',\n body\n });\n setPollingLoaderShown(false);\n setSubmitError(SubmitErrorType.ERROR_TIMEOUT);\n return Promise.reject(response);\n }\n return Promise.reject();\n } catch (error) {\n setPollingLoaderShown(false);\n setSubmitError(SubmitErrorType.ERROR_TIMEOUT);\n newRelic.trackAjax('cofs_create_cloud_bxp_react', error, false);\n segment('bxp.formCloudSignup.submitError', {\n type: isLoggedIn ? 'N2E' : 'N2N',\n error: JSON.stringify(error)\n });\n sessionStorage.removeItem(ResendEmailType.RESEND_DATA);\n return Promise.reject(error);\n }\n}\n\nfunction csvParams(queryParams: any) {\n return Object.keys(queryParams)\n .map((key) => `${key}=${queryParams[key]}`)\n .join('&');\n}\n\nfunction getRequestId(progressUri: string) {\n const pattern = new RegExp(/(cloud|organization)\\/[\\w-]+\\/status\\/([\\w-]+)$/);\n const matches = pattern.exec(progressUri);\n return matches ? matches[2] : '';\n}\n","export default function warn(s) {\n console.warn('[react-ga]', s);\n}","function _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _defineProperties(target, props) { for (var i = 0; i < props.length; i++) { var descriptor = props[i]; descriptor.enumerable = descriptor.enumerable || false; descriptor.configurable = true; if (\"value\" in descriptor) descriptor.writable = true; Object.defineProperty(target, descriptor.key, descriptor); } }\n\nfunction _createClass(Constructor, protoProps, staticProps) { if (protoProps) _defineProperties(Constructor.prototype, protoProps); if (staticProps) _defineProperties(Constructor, staticProps); return Constructor; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function\"); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, writable: true, configurable: true } }); if (superClass) _setPrototypeOf(subClass, superClass); }\n\nfunction _setPrototypeOf(o, p) { _setPrototypeOf = Object.setPrototypeOf || function _setPrototypeOf(o, p) { o.__proto__ = p; return o; }; return _setPrototypeOf(o, p); }\n\nfunction _createSuper(Derived) { var hasNativeReflectConstruct = _isNativeReflectConstruct(); return function _createSuperInternal() { var Super = _getPrototypeOf(Derived), result; if (hasNativeReflectConstruct) { var NewTarget = _getPrototypeOf(this).constructor; result = Reflect.construct(Super, arguments, NewTarget); } else { result = Super.apply(this, arguments); } return _possibleConstructorReturn(this, result); }; }\n\nfunction _possibleConstructorReturn(self, call) { if (call && (_typeof(call) === \"object\" || typeof call === \"function\")) { return call; } return _assertThisInitialized(self); }\n\nfunction _assertThisInitialized(self) { if (self === void 0) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return self; }\n\nfunction _isNativeReflectConstruct() { if (typeof Reflect === \"undefined\" || !Reflect.construct) return false; if (Reflect.construct.sham) return false; if (typeof Proxy === \"function\") return true; try { Date.prototype.toString.call(Reflect.construct(Date, [], function () {})); return true; } catch (e) { return false; } }\n\nfunction _getPrototypeOf(o) { _getPrototypeOf = Object.setPrototypeOf ? Object.getPrototypeOf : function _getPrototypeOf(o) { return o.__proto__ || Object.getPrototypeOf(o); }; return _getPrototypeOf(o); }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport React, { Component } from 'react';\nimport PropTypes from 'prop-types';\nimport warn from '../utils/console/warn';\nvar NEWTAB = '_blank';\nvar MIDDLECLICK = 1;\n\nvar OutboundLink = /*#__PURE__*/function (_Component) {\n _inherits(OutboundLink, _Component);\n\n var _super = _createSuper(OutboundLink);\n\n function OutboundLink() {\n var _this;\n\n _classCallCheck(this, OutboundLink);\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _super.call.apply(_super, [this].concat(args));\n\n _defineProperty(_assertThisInitialized(_this), \"handleClick\", function (event) {\n var _this$props = _this.props,\n target = _this$props.target,\n eventLabel = _this$props.eventLabel,\n to = _this$props.to,\n onClick = _this$props.onClick,\n trackerNames = _this$props.trackerNames;\n var eventMeta = {\n label: eventLabel\n };\n var sameTarget = target !== NEWTAB;\n var normalClick = !(event.ctrlKey || event.shiftKey || event.metaKey || event.button === MIDDLECLICK);\n\n if (sameTarget && normalClick) {\n event.preventDefault();\n OutboundLink.trackLink(eventMeta, function () {\n window.location.href = to;\n }, trackerNames);\n } else {\n OutboundLink.trackLink(eventMeta, function () {}, trackerNames);\n }\n\n if (onClick) {\n onClick(event);\n }\n });\n\n return _this;\n }\n\n _createClass(OutboundLink, [{\n key: \"render\",\n value: function render() {\n var _this$props2 = this.props,\n href = _this$props2.to,\n target = _this$props2.target,\n oldProps = _objectWithoutProperties(_this$props2, [\"to\", \"target\"]);\n\n var props = _objectSpread(_objectSpread({}, oldProps), {}, {\n target: target,\n href: href,\n onClick: this.handleClick\n });\n\n if (target === NEWTAB) {\n props.rel = \"\".concat(props.rel ? props.rel : '', \" noopener noreferrer\").trim();\n }\n\n delete props.eventLabel;\n delete props.trackerNames;\n return /*#__PURE__*/React.createElement('a', props);\n }\n }]);\n\n return OutboundLink;\n}(Component);\n\n_defineProperty(OutboundLink, \"trackLink\", function () {\n warn('ga tracking not enabled');\n});\n\nexport { OutboundLink as default };\nOutboundLink.propTypes = {\n eventLabel: PropTypes.string.isRequired,\n target: PropTypes.string,\n to: PropTypes.string,\n onClick: PropTypes.func,\n trackerNames: PropTypes.arrayOf(PropTypes.string)\n};\nOutboundLink.defaultProps = {\n target: null,\n to: null,\n onClick: null,\n trackerNames: null\n};","import warn from './console/warn';\nimport mightBeEmail from './mightBeEmail';\nvar redacted = 'REDACTED (Potential Email Address)';\nexport default function redactEmail(string) {\n if (mightBeEmail(string)) {\n warn('This arg looks like an email address, redacting.');\n return redacted;\n }\n\n return string;\n}","// GA strings need to have leading/trailing whitespace trimmed, and not all\n// browsers have String.prototoype.trim().\nexport default function trim(s) {\n return s && s.toString().replace(/^\\s+|\\s+$/g, '');\n}","/**\n * To Title Case 2.1 - http://individed.com/code/to-title-case/\n * Copyright 2008-2013 David Gouch. Licensed under the MIT License.\n * https://github.com/gouch/to-title-case\n */\nimport trim from './trim';\nvar smallWords = /^(a|an|and|as|at|but|by|en|for|if|in|nor|of|on|or|per|the|to|vs?\\.?|via)$/i; // test\n\nexport default function toTitleCase(string) {\n return trim(string).replace(/[A-Za-z0-9\\u00C0-\\u00FF]+[^\\s-]*/g, function (match, index, title) {\n if (index > 0 && index + match.length !== title.length && match.search(smallWords) > -1 && title.charAt(index - 2) !== ':' && (title.charAt(index + match.length) !== '-' || title.charAt(index - 1) === '-') && title.charAt(index - 1).search(/[^\\s-]/) < 0) {\n return match.toLowerCase();\n }\n\n if (match.substr(1).search(/[A-Z]|\\../) > -1) {\n return match;\n }\n\n return match.charAt(0).toUpperCase() + match.substr(1);\n });\n}","var isLoaded = false;\nexport default function (options) {\n if (isLoaded) return;\n isLoaded = true;\n var gaAddress = 'https://www.google-analytics.com/analytics.js';\n\n if (options && options.gaAddress) {\n gaAddress = options.gaAddress;\n } else if (options && options.debug) {\n gaAddress = 'https://www.google-analytics.com/analytics_debug.js';\n }\n\n var onerror = options && options.onerror; // https://developers.google.com/analytics/devguides/collection/analyticsjs/\n\n /* eslint-disable */\n\n (function (i, s, o, g, r, a, m) {\n i['GoogleAnalyticsObject'] = r;\n i[r] = i[r] || function () {\n (i[r].q = i[r].q || []).push(arguments);\n }, i[r].l = 1 * new Date();\n a = s.createElement(o), m = s.getElementsByTagName(o)[0];\n a.async = 1;\n a.src = g;\n a.onerror = onerror;\n m.parentNode.insertBefore(a, m);\n })(window, document, 'script', gaAddress, 'ga');\n /* eslint-enable */\n\n}","export default function log(s) {\n console.info('[react-ga]', s);\n}","export var gaCalls = [];\nexport default {\n calls: gaCalls,\n ga: function ga() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n gaCalls.push([].concat(args));\n },\n resetCalls: function resetCalls() {\n gaCalls.length = 0;\n }\n};","function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _typeof(obj) { \"@babel/helpers - typeof\"; if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") { _typeof = function _typeof(obj) { return typeof obj; }; } else { _typeof = function _typeof(obj) { return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj; }; } return _typeof(obj); }\n\nfunction _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }\n\nfunction _nonIterableSpread() { throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _iterableToArray(iter) { if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter); }\n\nfunction _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\n/**\n * React Google Analytics Module\n *\n * @package react-ga\n * @author Adam Lofting \n * Atul Varma \n */\n\n/**\n * Utilities\n */\nimport format from './utils/format';\nimport removeLeadingSlash from './utils/removeLeadingSlash';\nimport trim from './utils/trim';\nimport loadGA from './utils/loadGA';\nimport warn from './utils/console/warn';\nimport log from './utils/console/log';\nimport TestModeAPI from './utils/testModeAPI';\n\nvar _isNotBrowser = typeof window === 'undefined' || typeof document === 'undefined';\n\nvar _debug = false;\nvar _titleCase = true;\nvar _testMode = false;\nvar _alwaysSendToDefaultTracker = true;\nvar _redactEmail = true;\n\nvar internalGa = function internalGa() {\n var _window;\n\n if (_testMode) return TestModeAPI.ga.apply(TestModeAPI, arguments);\n if (_isNotBrowser) return false;\n if (!window.ga) return warn('ReactGA.initialize must be called first or GoogleAnalytics should be loaded manually');\n return (_window = window).ga.apply(_window, arguments);\n};\n\nfunction _format(s) {\n return format(s, _titleCase, _redactEmail);\n}\n\nfunction _gaCommand(trackerNames) {\n for (var _len = arguments.length, args = new Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n args[_key - 1] = arguments[_key];\n }\n\n var command = args[0];\n\n if (typeof internalGa === 'function') {\n if (typeof command !== 'string') {\n warn('ga command must be a string');\n return;\n }\n\n if (_alwaysSendToDefaultTracker || !Array.isArray(trackerNames)) internalGa.apply(void 0, args);\n\n if (Array.isArray(trackerNames)) {\n trackerNames.forEach(function (name) {\n internalGa.apply(void 0, _toConsumableArray([\"\".concat(name, \".\").concat(command)].concat(args.slice(1))));\n });\n }\n }\n}\n\nfunction _initialize(gaTrackingID, options) {\n if (!gaTrackingID) {\n warn('gaTrackingID is required in initialize()');\n return;\n }\n\n if (options) {\n if (options.debug && options.debug === true) {\n _debug = true;\n }\n\n if (options.titleCase === false) {\n _titleCase = false;\n }\n\n if (options.redactEmail === false) {\n _redactEmail = false;\n }\n\n if (options.useExistingGa) {\n return;\n }\n }\n\n if (options && options.gaOptions) {\n internalGa('create', gaTrackingID, options.gaOptions);\n } else {\n internalGa('create', gaTrackingID, 'auto');\n }\n}\n\nexport function addTrackers(configsOrTrackingId, options) {\n if (Array.isArray(configsOrTrackingId)) {\n configsOrTrackingId.forEach(function (config) {\n if (_typeof(config) !== 'object') {\n warn('All configs must be an object');\n return;\n }\n\n _initialize(config.trackingId, config);\n });\n } else {\n _initialize(configsOrTrackingId, options);\n }\n\n return true;\n}\nexport function initialize(configsOrTrackingId, options) {\n if (options && options.testMode === true) {\n _testMode = true;\n } else {\n if (_isNotBrowser) {\n return;\n }\n\n if (!options || options.standardImplementation !== true) loadGA(options);\n }\n\n _alwaysSendToDefaultTracker = options && typeof options.alwaysSendToDefaultTracker === 'boolean' ? options.alwaysSendToDefaultTracker : true;\n addTrackers(configsOrTrackingId, options);\n}\n/**\n * ga:\n * Returns the original GA object.\n */\n\nexport function ga() {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n if (args.length > 0) {\n internalGa.apply(void 0, args);\n\n if (_debug) {\n log(\"called ga('arguments');\");\n log(\"with arguments: \".concat(JSON.stringify(args)));\n }\n }\n\n return window.ga;\n}\n/**\n * set:\n * GA tracker set method\n * @param {Object} fieldsObject - a field/value pair or a group of field/value pairs on the tracker\n * @param {Array} trackerNames - (optional) a list of extra trackers to run the command on\n */\n\nexport function set(fieldsObject, trackerNames) {\n if (!fieldsObject) {\n warn('`fieldsObject` is required in .set()');\n return;\n }\n\n if (_typeof(fieldsObject) !== 'object') {\n warn('Expected `fieldsObject` arg to be an Object');\n return;\n }\n\n if (Object.keys(fieldsObject).length === 0) {\n warn('empty `fieldsObject` given to .set()');\n }\n\n _gaCommand(trackerNames, 'set', fieldsObject);\n\n if (_debug) {\n log(\"called ga('set', fieldsObject);\");\n log(\"with fieldsObject: \".concat(JSON.stringify(fieldsObject)));\n }\n}\n/**\n * send:\n * Clone of the low level `ga.send` method\n * WARNING: No validations will be applied to this\n * @param {Object} fieldObject - field object for tracking different analytics\n * @param {Array} trackerNames - trackers to send the command to\n * @param {Array} trackerNames - (optional) a list of extra trackers to run the command on\n */\n\nexport function send(fieldObject, trackerNames) {\n _gaCommand(trackerNames, 'send', fieldObject);\n\n if (_debug) {\n log(\"called ga('send', fieldObject);\");\n log(\"with fieldObject: \".concat(JSON.stringify(fieldObject)));\n log(\"with trackers: \".concat(JSON.stringify(trackerNames)));\n }\n}\n/**\n * pageview:\n * Basic GA pageview tracking\n * @param {String} path - the current page page e.g. '/about'\n * @param {Array} trackerNames - (optional) a list of extra trackers to run the command on\n * @param {String} title - (optional) the page title e. g. 'My Website'\n */\n\nexport function pageview(rawPath, trackerNames, title) {\n if (!rawPath) {\n warn('path is required in .pageview()');\n return;\n }\n\n var path = trim(rawPath);\n\n if (path === '') {\n warn('path cannot be an empty string in .pageview()');\n return;\n }\n\n var extraFields = {};\n\n if (title) {\n extraFields.title = title;\n }\n\n if (typeof ga === 'function') {\n _gaCommand(trackerNames, 'send', _objectSpread({\n hitType: 'pageview',\n page: path\n }, extraFields));\n\n if (_debug) {\n log(\"called ga('send', 'pageview', path);\");\n var extraLog = '';\n\n if (title) {\n extraLog = \" and title: \".concat(title);\n }\n\n log(\"with path: \".concat(path).concat(extraLog));\n }\n }\n}\n/**\n * modalview:\n * a proxy to basic GA pageview tracking to consistently track\n * modal views that are an equivalent UX to a traditional pageview\n * @param {String} modalName e.g. 'add-or-edit-club'\n * @param {Array} trackerNames - (optional) a list of extra trackers to run the command on\n */\n\nexport function modalview(rawModalName, trackerNames) {\n if (!rawModalName) {\n warn('modalName is required in .modalview(modalName)');\n return;\n }\n\n var modalName = removeLeadingSlash(trim(rawModalName));\n\n if (modalName === '') {\n warn('modalName cannot be an empty string or a single / in .modalview()');\n return;\n }\n\n if (typeof ga === 'function') {\n var path = \"/modal/\".concat(modalName);\n\n _gaCommand(trackerNames, 'send', 'pageview', path);\n\n if (_debug) {\n log(\"called ga('send', 'pageview', path);\");\n log(\"with path: \".concat(path));\n }\n }\n}\n/**\n * timing:\n * GA timing\n * @param args.category {String} required\n * @param args.variable {String} required\n * @param args.value {Int} required\n * @param args.label {String} required\n * @param {Array} trackerNames - (optional) a list of extra trackers to run the command on\n */\n\nexport function timing() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n category = _ref.category,\n variable = _ref.variable,\n value = _ref.value,\n label = _ref.label;\n\n var trackerNames = arguments.length > 1 ? arguments[1] : undefined;\n\n if (typeof ga === 'function') {\n if (!category || !variable || typeof value !== 'number') {\n warn('args.category, args.variable ' + 'AND args.value are required in timing() ' + 'AND args.value has to be a number');\n return;\n } // Required Fields\n\n\n var fieldObject = {\n hitType: 'timing',\n timingCategory: _format(category),\n timingVar: _format(variable),\n timingValue: value\n };\n\n if (label) {\n fieldObject.timingLabel = _format(label);\n }\n\n send(fieldObject, trackerNames);\n }\n}\n/**\n * event:\n * GA event tracking\n * @param args.category {String} required\n * @param args.action {String} required\n * @param args.label {String} optional\n * @param args.value {Int} optional\n * @param args.nonInteraction {boolean} optional\n * @param args.transport {string} optional\n * @param {{action: string, category: string}} trackerNames - (optional) a list of extra trackers to run the command on\n */\n\nexport function event() {\n var _ref2 = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n category = _ref2.category,\n action = _ref2.action,\n label = _ref2.label,\n value = _ref2.value,\n nonInteraction = _ref2.nonInteraction,\n transport = _ref2.transport,\n args = _objectWithoutProperties(_ref2, [\"category\", \"action\", \"label\", \"value\", \"nonInteraction\", \"transport\"]);\n\n var trackerNames = arguments.length > 1 ? arguments[1] : undefined;\n\n if (typeof ga === 'function') {\n // Simple Validation\n if (!category || !action) {\n warn('args.category AND args.action are required in event()');\n return;\n } // Required Fields\n\n\n var fieldObject = {\n hitType: 'event',\n eventCategory: _format(category),\n eventAction: _format(action)\n }; // Optional Fields\n\n if (label) {\n fieldObject.eventLabel = _format(label);\n }\n\n if (typeof value !== 'undefined') {\n if (typeof value !== 'number') {\n warn('Expected `args.value` arg to be a Number.');\n } else {\n fieldObject.eventValue = value;\n }\n }\n\n if (typeof nonInteraction !== 'undefined') {\n if (typeof nonInteraction !== 'boolean') {\n warn('`args.nonInteraction` must be a boolean.');\n } else {\n fieldObject.nonInteraction = nonInteraction;\n }\n }\n\n if (typeof transport !== 'undefined') {\n if (typeof transport !== 'string') {\n warn('`args.transport` must be a string.');\n } else {\n if (['beacon', 'xhr', 'image'].indexOf(transport) === -1) {\n warn('`args.transport` must be either one of these values: `beacon`, `xhr` or `image`');\n }\n\n fieldObject.transport = transport;\n }\n }\n\n Object.keys(args).filter(function (key) {\n return key.substr(0, 'dimension'.length) === 'dimension';\n }).forEach(function (key) {\n fieldObject[key] = args[key];\n });\n Object.keys(args).filter(function (key) {\n return key.substr(0, 'metric'.length) === 'metric';\n }).forEach(function (key) {\n fieldObject[key] = args[key];\n }); // Send to GA\n\n send(fieldObject, trackerNames);\n }\n}\n/**\n * exception:\n * GA exception tracking\n * @param args.description {String} optional\n * @param args.fatal {boolean} optional\n * @param {Array} trackerNames - (optional) a list of extra trackers to run the command on\n */\n\nexport function exception(_ref3, trackerNames) {\n var description = _ref3.description,\n fatal = _ref3.fatal;\n\n if (typeof ga === 'function') {\n // Required Fields\n var fieldObject = {\n hitType: 'exception'\n }; // Optional Fields\n\n if (description) {\n fieldObject.exDescription = _format(description);\n }\n\n if (typeof fatal !== 'undefined') {\n if (typeof fatal !== 'boolean') {\n warn('`args.fatal` must be a boolean.');\n } else {\n fieldObject.exFatal = fatal;\n }\n } // Send to GA\n\n\n send(fieldObject, trackerNames);\n }\n}\nexport var plugin = {\n /**\n * require:\n * GA requires a plugin\n * @param name {String} e.g. 'ecommerce' or 'myplugin'\n * @param options {Object} optional e.g {path: '/log', debug: true}\n * @param trackerName {String} optional e.g 'trackerName'\n */\n require: function require(rawName, options, trackerName) {\n if (typeof ga === 'function') {\n // Required Fields\n if (!rawName) {\n warn('`name` is required in .require()');\n return;\n }\n\n var name = trim(rawName);\n\n if (name === '') {\n warn('`name` cannot be an empty string in .require()');\n return;\n }\n\n var requireString = trackerName ? \"\".concat(trackerName, \".require\") : 'require'; // Optional Fields\n\n if (options) {\n if (_typeof(options) !== 'object') {\n warn('Expected `options` arg to be an Object');\n return;\n }\n\n if (Object.keys(options).length === 0) {\n warn('Empty `options` given to .require()');\n }\n\n ga(requireString, name, options);\n\n if (_debug) {\n log(\"called ga('require', '\".concat(name, \"', \").concat(JSON.stringify(options)));\n }\n } else {\n ga(requireString, name);\n\n if (_debug) {\n log(\"called ga('require', '\".concat(name, \"');\"));\n }\n }\n }\n },\n\n /**\n * execute:\n * GA execute action for plugin\n * Takes variable number of arguments\n * @param pluginName {String} e.g. 'ecommerce' or 'myplugin'\n * @param action {String} e.g. 'addItem' or 'myCustomAction'\n * @param actionType {String} optional e.g. 'detail'\n * @param payload {Object} optional e.g { id: '1x5e', name : 'My product to track' }\n */\n execute: function execute(pluginName, action) {\n var payload;\n var actionType;\n\n for (var _len3 = arguments.length, args = new Array(_len3 > 2 ? _len3 - 2 : 0), _key3 = 2; _key3 < _len3; _key3++) {\n args[_key3 - 2] = arguments[_key3];\n }\n\n if (args.length === 1) {\n payload = args[0];\n } else {\n actionType = args[0];\n payload = args[1];\n }\n\n if (typeof ga === 'function') {\n if (typeof pluginName !== 'string') {\n warn('Expected `pluginName` arg to be a String.');\n } else if (typeof action !== 'string') {\n warn('Expected `action` arg to be a String.');\n } else {\n var command = \"\".concat(pluginName, \":\").concat(action);\n payload = payload || null;\n\n if (actionType && payload) {\n ga(command, actionType, payload);\n\n if (_debug) {\n log(\"called ga('\".concat(command, \"');\"));\n log(\"actionType: \\\"\".concat(actionType, \"\\\" with payload: \").concat(JSON.stringify(payload)));\n }\n } else if (payload) {\n ga(command, payload);\n\n if (_debug) {\n log(\"called ga('\".concat(command, \"');\"));\n log(\"with payload: \".concat(JSON.stringify(payload)));\n }\n } else {\n ga(command);\n\n if (_debug) {\n log(\"called ga('\".concat(command, \"');\"));\n }\n }\n }\n }\n }\n};\n/**\n * outboundLink:\n * GA outboundLink tracking\n * @param args.label {String} e.g. url, or 'Create an Account'\n * @param {function} hitCallback - Called after processing a hit.\n */\n\nexport function outboundLink(args, hitCallback, trackerNames) {\n if (typeof hitCallback !== 'function') {\n warn('hitCallback function is required');\n return;\n }\n\n if (typeof ga === 'function') {\n // Simple Validation\n if (!args || !args.label) {\n warn('args.label is required in outboundLink()');\n return;\n } // Required Fields\n\n\n var fieldObject = {\n hitType: 'event',\n eventCategory: 'Outbound',\n eventAction: 'Click',\n eventLabel: _format(args.label)\n };\n var safetyCallbackCalled = false;\n\n var safetyCallback = function safetyCallback() {\n // This prevents a delayed response from GA\n // causing hitCallback from being fired twice\n safetyCallbackCalled = true;\n hitCallback();\n }; // Using a timeout to ensure the execution of critical application code\n // in the case when the GA server might be down\n // or an ad blocker prevents sending the data\n // register safety net timeout:\n\n\n var t = setTimeout(safetyCallback, 250);\n\n var clearableCallbackForGA = function clearableCallbackForGA() {\n clearTimeout(t);\n\n if (!safetyCallbackCalled) {\n hitCallback();\n }\n };\n\n fieldObject.hitCallback = clearableCallbackForGA; // Send to GA\n\n send(fieldObject, trackerNames);\n } else {\n // if ga is not defined, return the callback so the application\n // continues to work as expected\n setTimeout(hitCallback, 0);\n }\n}\nexport var testModeAPI = TestModeAPI;\nexport default {\n initialize: initialize,\n ga: ga,\n set: set,\n send: send,\n pageview: pageview,\n modalview: modalview,\n timing: timing,\n event: event,\n exception: exception,\n plugin: plugin,\n outboundLink: outboundLink,\n testModeAPI: TestModeAPI\n};","import redactEmail from './redactEmail';\nimport toTitleCase from './toTitleCase';\nexport default function format() {\n var s = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n var titleCase = arguments.length > 1 ? arguments[1] : undefined;\n var redactingEmail = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : true;\n\n var _str = s || '';\n\n if (titleCase) {\n _str = toTitleCase(s);\n }\n\n if (redactingEmail) {\n _str = redactEmail(_str);\n }\n\n return _str;\n}","// See if s could be an email address. We don't want to send personal data like email.\n// https://support.google.com/analytics/answer/2795983?hl=en\nexport default function mightBeEmail(s) {\n // There's no point trying to validate rfc822 fully, just look for ...@...\n return typeof s === 'string' && s.indexOf('@') !== -1;\n}","export default function removeLeadingSlash(string) {\n if (string.substring(0, 1) === '/') {\n return string.substring(1);\n }\n\n return string;\n}","function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); keys.push.apply(keys, symbols); } return keys; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport UnboundOutboundLink from './components/OutboundLink';\nimport * as Defaults from './core';\nvar initialize = Defaults.initialize;\nexport { initialize };\nvar addTrackers = Defaults.addTrackers;\nexport { addTrackers };\nvar ga = Defaults.ga;\nexport { ga };\nvar set = Defaults.set;\nexport { set };\nvar send = Defaults.send;\nexport { send };\nvar pageview = Defaults.pageview;\nexport { pageview };\nvar modalview = Defaults.modalview;\nexport { modalview };\nvar timing = Defaults.timing;\nexport { timing };\nvar event = Defaults.event;\nexport { event };\nvar exception = Defaults.exception;\nexport { exception };\nvar plugin = Defaults.plugin;\nexport { plugin };\nvar outboundLink = Defaults.outboundLink;\nexport { outboundLink };\nvar testModeAPI = Defaults.testModeAPI;\nexport { testModeAPI };\nUnboundOutboundLink.origTrackLink = UnboundOutboundLink.trackLink;\nUnboundOutboundLink.trackLink = Defaults.outboundLink;\nexport var OutboundLink = UnboundOutboundLink;\nexport default _objectSpread(_objectSpread({}, Defaults), {}, {\n OutboundLink: OutboundLink\n});","import {\n CartServiceInterface,\n CheckEmailAnalyticsInterface,\n GetCheckEmailAnalyticsServiceOptions,\n HamletClientInterface\n} from '../../model/check-email-page';\nimport { CheckEmailAnalytics } from './analytics';\nimport { CartService } from './cart-service';\nimport { HamletClient } from './mini-hamlet-client';\n\nexport * from './analytics';\nexport * from './cart-service';\nexport * from './mini-hamlet-client';\n\nlet hamletClient: HamletClientInterface;\nlet cartService: CartServiceInterface;\nlet checkEmailAnalytics: CheckEmailAnalyticsInterface;\n\nexport function getCheckEmailAnalyticsService({\n baseUrl,\n analyticsTrack,\n productKeys,\n googleAnalyticsId\n}: GetCheckEmailAnalyticsServiceOptions) {\n if (!checkEmailAnalytics) {\n hamletClient = new HamletClient({ baseUrl });\n cartService = new CartService({ productKeys, hamletClient });\n checkEmailAnalytics = new CheckEmailAnalytics({\n analyticsTrack,\n googleAnalyticsId,\n cartService\n });\n }\n return checkEmailAnalytics;\n}\n","import { ProductKey, Url } from '@atlassiansox/bxpkit-core';\nimport { extend } from 'lodash';\nimport {\n CartServiceContructorType,\n CartServiceInterface,\n HamletClientInterface,\n HamletPricingResponseType,\n HamletProductType\n} from '../../model/check-email-page';\n\nexport const CartService: CartServiceContructorType = class CartServiceClass\n implements CartServiceInterface\n{\n private readonly client: HamletClientInterface;\n private readonly productKeysProp?: string[];\n private products: HamletProductType[];\n\n constructor({\n productKeys,\n hamletClient\n }: {\n productKeys?: string[];\n hamletClient: HamletClientInterface;\n }) {\n this.client = hamletClient;\n this.productKeysProp = productKeys;\n this.products = [];\n }\n\n /**\n * Return cart products\n */\n\n getProducts(): Promise {\n return new Promise(async (resolve) => {\n if (this.products.length > 0) {\n return resolve(this.products);\n } else {\n this.products = await this._load();\n resolve(this.products);\n }\n });\n }\n\n /**\n * Loads cart data from Hamlet Pricing\n */\n\n async _load(): Promise {\n const queryProducts = [\n ProductKey.JIRA_SOFTWARE,\n ProductKey.JIRA_SERVICE_DESK,\n ProductKey.JIRA_CORE,\n ProductKey.JIRA_ROADMAPS,\n ProductKey.JIRA_BONFIRE,\n ProductKey.JIRA_REFAPP,\n ProductKey.CONFLUENCE,\n ProductKey.CONFLUENCE_PLUGIN_QUESTIONS,\n ProductKey.CONFLUENCE_TEAM_CALENDARS\n ];\n\n const pricingData = await this.client.hamletPricing({\n productKeys: queryProducts,\n licenseType: 'evaluation',\n requestingApplication: 'WAC',\n monthsValid: '1'\n });\n\n // parse\n const products = this._parseProducts(pricingData);\n return Promise.resolve(products);\n }\n\n /**\n * Parse products into cart\n */\n\n _parseProducts(pricingData: HamletPricingResponseType): HamletProductType[] {\n const result: any[] = [];\n if (pricingData?.products?.length === 0) {\n return result;\n }\n const productCatalog = pricingData.products;\n const urlProducts: { [key: string]: number } = {};\n\n // read unitCount and products query string parameters\n const queryParams = Url.getUrlParams();\n const unitCounts = queryParams?.unitCount\n ? queryParams.unitCount.split(',')\n : [10];\n let queryParamProducts = [];\n // check query string params for products\n if (queryParams?.products) {\n queryParamProducts = queryParams?.products.split(',');\n }\n // if props exist for productKeys, those have priority\n if (this.productKeysProp && this.productKeysProp.length > 0) {\n queryParamProducts = this.productKeysProp;\n }\n\n // create a map of products/unit counts for each item in querystring\n for (let i = 0, iLen = queryParamProducts.length; i < iLen; i++) {\n const product = queryParamProducts[i];\n let count = 0;\n\n if (unitCounts.length === 1) {\n if (\n product === ProductKey.JIRA_SOFTWARE ||\n product === ProductKey.CONFLUENCE\n ) {\n count = parseInt(unitCounts[0], 10);\n }\n } else if (unitCounts.length === queryParamProducts.length) {\n count = parseInt(unitCounts[i], 10);\n }\n\n urlProducts[product] = count;\n }\n\n // check if product is orderable, if so then add it to the cart\n Object.keys(urlProducts).map((key) => {\n let orderable = null;\n const productUnitCount = urlProducts[key];\n const productHamlet = productCatalog.filter((p) => {\n return p.productKey === key;\n })[0];\n\n if (productHamlet) {\n if (\n productHamlet.parentKey === 'atlassian.ondemand' ||\n productHamlet.productType === 'HOSTED_ADDON' ||\n productUnitCount !== 0\n ) {\n orderable = productHamlet.orderableItems.filter((item) => {\n return item.unitCount === productUnitCount;\n })[0];\n }\n if (!orderable) {\n orderable =\n productHamlet.monthly.length > 0\n ? productHamlet.monthly[0]\n : productHamlet.orderableItems[0];\n }\n }\n\n if (productHamlet && orderable) {\n result.push(\n extend({}, orderable, {\n amount: orderable?.renewalAmount,\n mpac: productHamlet.marketplaceAddon === true,\n productKey: productHamlet.productKey,\n name: productHamlet.productDescription,\n saleType: 'EVALUATION'\n })\n );\n }\n });\n\n return result;\n }\n};\n","import { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';\nimport { Storage, Url } from '@atlassiansox/bxpkit-core';\nimport type { AnalyticsTrackType } from '@atlassiansox/bxpkit-core';\nimport ReactGA from 'react-ga';\nimport { CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES } from '../../model/check-email-page';\nimport {\n CartServiceInterface,\n CheckEmailAnalyticsContructorType,\n CheckEmailAnalyticsInterface,\n CheckEmailAnalyticsOptionsType\n} from '../../model/check-email-page';\n\n/**\n * Analytics service for Check Email Component\n */\n\nexport const CheckEmailAnalytics: CheckEmailAnalyticsContructorType = class CheckEmailAnalyticsClass\n implements CheckEmailAnalyticsInterface\n{\n public baseUrl?: string;\n public analyticsTrack?: AnalyticsTrackType;\n public cartService: CartServiceInterface;\n\n public constructor({\n analyticsTrack,\n cartService,\n googleAnalyticsId = ''\n }: CheckEmailAnalyticsOptionsType) {\n this.analyticsTrack = analyticsTrack;\n this.cartService = cartService;\n\n ReactGA.initialize(googleAnalyticsId, {\n testMode: process?.env?.NODE_ENV === 'test'\n });\n void this._onloadEvents();\n if (!this.analyticsTrack) {\n // tslint:disable-next-line: no-console\n console.warn('Check Email Component: analytics disabled');\n }\n }\n\n /**\n * All events that should fire on load\n */\n\n public async _onloadEvents() {\n const googleApps =\n Url.getParameterByName('googleappsintegration') === 'true';\n\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n const products = await this.cartService.getProducts();\n\n const completedOrderDetails: any = [];\n\n products.map((product) => {\n // add to cart events\n const detailsAddToCart = {\n id: product.productKey,\n label: `${product.productKey}.cloud`,\n name: product.name,\n description: product.description,\n sku: product.orderableItemId,\n category: 'cart-cloud',\n saleType: product.saleType,\n core_funnel: true\n };\n segment('Added Product', detailsAddToCart);\n\n // confirmed eval event(s)\n const detailsConfirmedEval = {\n id: product.productKey,\n sku: product.orderableItemId,\n name: product.name,\n description: product.description,\n saleType: 'EVALUATION',\n category: 'cart-cloud',\n core_funnel: false,\n label: `${product.productKey}.cloud`,\n lead_score: '',\n licenses: '',\n platform: 'cloud',\n product: product.name,\n start_date: new Date(),\n _atl_path: Storage.getCookie('__atl_path'),\n _sio: Storage.getCookie('_sio')\n };\n segment('Confirmed Evaluation', detailsConfirmedEval);\n\n // save for completed order event\n completedOrderDetails.push({\n id: product.productKey,\n sku: product.orderableItemId,\n name: product.name,\n description: product.description,\n saleType: 'EVALUATION'\n });\n });\n\n // order event with everything in-cart\n if (completedOrderDetails.length > 0) {\n segment('Completed Order', {\n type: 'ONDEMAND_TRIAL',\n googleApps: googleApps.toString(),\n products: completedOrderDetails\n });\n }\n\n if (googleApps) {\n segment('Confirm Google Apps', {\n category: 'cart-cloud',\n label: 'google-apps',\n core_funnel: false\n });\n }\n }\n\n ReactGA.event({\n category: 'cart-cloud',\n action: 'Viewed Checkout Step',\n label: 'view-confirmation-page',\n nonInteraction: true\n });\n\n return Promise.resolve();\n }\n\n /**\n * User selects resend email button\n */\n\n public clickResendButton(createAnalyticsEvent: CreateUIAnalyticsEvent) {\n createAnalyticsEvent({\n action: 'clicked',\n name: CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES.RESEND_EMAIL_CLICKED\n }).fire();\n\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n segment('Click resend email', {});\n }\n\n ReactGA.event({\n category: 'Signup',\n action: 'Clicked',\n label: 'resend-verification-email'\n });\n }\n\n /**\n * track no-content/204 status\n */\n\n public resendApiNoContent() {\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n segment('Resend api returned no content', {});\n }\n }\n\n /**\n * track already verified/304 status\n */\n\n public resendApiAlreadyVerified() {\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n segment('Resend api account already verified', {});\n }\n }\n\n /**\n * track resend API failures\n */\n\n public resendApiFailure() {\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n segment('Resend api fail', {});\n }\n }\n\n /**\n * track success/200 status\n */\n\n public resendApiSuccess() {\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n segment('Resend api success', {});\n }\n }\n\n /**\n * User selects contact link\n */\n\n public contactLinkAnalytics(createAnalyticsEvent: CreateUIAnalyticsEvent) {\n createAnalyticsEvent({\n action: 'clicked',\n name: CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES.CONTACT_LINK_CLICKED\n }).fire();\n\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n segment('Click contact us', {});\n }\n }\n\n /**\n * User selects create a new account link\n */\n\n public navigateBack(\n event: React.MouseEvent,\n createAnalyticsEvent: CreateUIAnalyticsEvent\n ) {\n event.preventDefault();\n\n createAnalyticsEvent({\n action: 'clicked',\n name: CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES.CREATE_NEW_ACCOUNT_CLICKED\n }).fire();\n\n if (this.analyticsTrack) {\n const { segment } = this.analyticsTrack;\n segment('Click change email', {});\n }\n\n window.history.back();\n }\n};\n\ndeclare global {\n interface Window {\n ga: any;\n }\n}\n","import { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';\nimport type { AnalyticsTrackType } from '@atlassiansox/bxpkit-core';\n\nexport const CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES = {\n CREATE_NEW_ACCOUNT_CLICKED: 'check_email_page_create_new_account_clicked',\n CONTACT_LINK_CLICKED: 'check_email_page_contact_link_clicked',\n RESEND_EMAIL_CLICKED: 'check_email_page_resend_email_clicked',\n RESEND_EMAIL_API_SUCCESS: 'check_email_page_resend_email_api_success',\n RESEND_EMAIL_API_FAILURE: 'check_email_page_resend_email_api_failure'\n};\n\nexport type GetCheckEmailAnalyticsServiceOptions = {\n readonly baseUrl?: string;\n readonly productKeys?: string[];\n readonly analyticsTrack?: AnalyticsTrackType;\n readonly googleAnalyticsId?: string;\n};\n\nexport interface CheckEmailPagePropsType {\n readonly layout?: 'default' | 'devops';\n readonly baseUrl?: string;\n readonly productKeys?: string[];\n readonly analyticsTrack?: AnalyticsTrackType;\n readonly hideHeader?: boolean;\n}\n\nexport type CheckEmailPageLayoutPropsType = {\n readonly email: string;\n readonly shouldEnable: boolean;\n readonly baseUrl?: string;\n readonly hideHeader?: boolean;\n readonly checkEmailAnalyticsService: CheckEmailAnalyticsInterface;\n};\n\nexport type CheckEmailAnalyticsOptionsType = {\n readonly productKeys?: string[];\n readonly analyticsTrack?: AnalyticsTrackType;\n readonly cartService: CartServiceInterface;\n readonly googleAnalyticsId?: string;\n};\n\nexport type ResendVerificationEmailRequestType = {\n readonly cloudId?: string;\n readonly cloudName?: string;\n readonly email?: string;\n readonly pagePath?: string;\n readonly requestId?: string;\n readonly primaryProduct?: string;\n};\n\nexport type HamletClientOptionsType = {\n readonly baseUrl?: string;\n};\n\nexport type ResendVerificationEmailResponseType = {\n readonly success: boolean;\n readonly status: number;\n};\n\nexport type HamletPricingRequestType = {\n readonly productKeys: string[];\n readonly licenseType?: string;\n readonly monthsValid?: string | number;\n readonly requestingApplication?: string;\n};\n\nexport type HamletOrderableItemsType = {\n readonly amount: number;\n readonly description: string;\n readonly edition: unknown;\n readonly editionDescription: string;\n readonly editionId: string;\n readonly editionType: string;\n readonly editionTypeIsDeprecated: boolean;\n readonly enterprise: boolean;\n readonly licenseType: string;\n readonly monthsValid: number;\n readonly orderableItemId: string;\n readonly publiclyAvailable: boolean;\n readonly renewalAmount: number;\n readonly renewalFrequency: string;\n readonly saleType: string;\n readonly sku: unknown;\n readonly starter: boolean;\n readonly unitCount: number;\n readonly unitLabel: string;\n};\n\nexport type HamletMonthlyType = {\n readonly editionType: string;\n readonly editionTypeIsDeprecated: boolean;\n readonly price: number;\n readonly unitBlockSize: number;\n readonly unitLabel: string;\n readonly unitLimit: number;\n readonly unitStart: number;\n readonly renewalAmount: number;\n};\n\nexport type HamletProductsType = {\n readonly annual: unknown[];\n readonly billingType: string;\n readonly contactSalesForAdditionalPricing: boolean;\n readonly dataCenter: boolean;\n readonly discountOptOut: boolean;\n readonly lastModified: string;\n readonly marketplaceAddon: boolean;\n readonly parentDescription: string;\n readonly parentKey: string;\n readonly productDescription: string;\n readonly productKey: string;\n readonly productType: string;\n readonly userCountEnforced: boolean;\n readonly monthly: HamletMonthlyType[];\n readonly orderableItems: HamletOrderableItemsType[];\n};\n\nexport type HamletPricingResponseType = {\n readonly currency: string;\n readonly products: HamletProductsType[];\n};\n\nexport type HamletProductType = {\n readonly name: string;\n} & (HamletOrderableItemsType & HamletMonthlyType & HamletProductsType);\n\nexport type HamletClientConstructorType = new ({\n baseUrl\n}: HamletClientOptionsType) => HamletClientInterface;\n\nexport interface HamletClientInterface {\n hamletPricing({\n productKeys,\n licenseType,\n requestingApplication,\n monthsValid\n }: HamletPricingRequestType): Promise;\n\n sendEmail(\n resendData: ResendVerificationEmailRequestType\n ): Promise;\n\n sendVerificationEmail({\n cloudName,\n email\n }: ResendVerificationEmailRequestType): Promise;\n\n resendVerificationEmail({\n cloudId,\n cloudName,\n email,\n pagePath,\n requestId\n }: ResendVerificationEmailRequestType): Promise;\n}\n\nexport type CartServiceOptionstype = {\n productKeys?: string[];\n hamletClient: HamletClientInterface;\n};\n\nexport type CartServiceContructorType = new ({\n productKeys,\n hamletClient\n}: CartServiceOptionstype) => CartServiceInterface;\n\nexport interface CartServiceInterface {\n getProducts(): Promise;\n _load(): Promise;\n _parseProducts(pricingData: HamletPricingResponseType): HamletProductType[];\n}\n\nexport type CheckEmailAnalyticsContructorType = new ({\n cartService,\n analyticsTrack\n}: CheckEmailAnalyticsOptionsType) => CheckEmailAnalyticsInterface;\n\nexport interface CheckEmailAnalyticsInterface {\n gaId?: string;\n baseUrl?: string;\n analyticsTrack?: AnalyticsTrackType;\n cartService: CartServiceInterface;\n _onloadEvents(): Promise;\n clickResendButton(createAnalyticsEvent: CreateUIAnalyticsEvent): void;\n resendApiNoContent(): void;\n resendApiAlreadyVerified(): void;\n resendApiFailure(): void;\n resendApiSuccess(): void;\n contactLinkAnalytics(createAnalyticsEvent: CreateUIAnalyticsEvent): void;\n navigateBack(\n event: React.MouseEvent,\n createAnalyticsEvent: CreateUIAnalyticsEvent\n ): void;\n}\n","/**\n * These are the default parameters for LogoProps if the user does not specify values.\n */\nexport const defaultLogoParams = {\n iconColor: 'inherit',\n iconGradientStart: 'inherit',\n iconGradientStop: 'inherit',\n label: '',\n size: 'medium',\n textColor: 'currentColor'\n};\n\n/**\n * The props for the that takes the svg and turns it into a component.\n */\n\nexport const sizes = {\n xsmall: 16,\n small: 24,\n medium: 32,\n large: 40,\n xlarge: 48\n};\n\n/**\n * In order to pass linting rules, these props were renamed to be more descriptive i.e. props renamed to LogoProps and\n * defaultParams to defaultLogoParams. However, this is a breaking change as it is a file with public entry points. The code\n * below is here to keep Logo backwards compatible.\n * See the ticket here: https://product-fabric.atlassian.net/browse/DSP-4086.\n *\n * Note that some consumers are accessing this using like so: import { Props } from '@atlaskit/logo/constants', this should\n * still work despite `LogoProps` being in a different types.tsx file.\n *\n */\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-175 Internal documentation for deprecation (no external access)} This has been renamed, please import `LogoProps` instead.\n */\n// eslint-disable-next-line @repo/internal/react/consistent-types-definitions\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-176 Internal documentation for deprecation (no external access)} This has been renamed, please import `defaultLogoParams` instead.\n */\nexport const DefaultProps = defaultLogoParams;","import deprecationWarning from '@atlaskit/ds-lib/deprecation-warning';\nimport { B200, N30A, skeleton as skeletonColor } from './colors';\nexport const CHANNEL = '__ATLASKIT_THEME__';\nexport const DEFAULT_THEME_MODE = 'light';\nexport const THEME_MODES = ['light', 'dark'];\n\n/*\n These theme values are expressed as functions so that if we decide to make\n them dependent on props in the future, it wouldn't require a significant\n refactor everywhere they are being used.\n*/\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('border.radius', '3px')` instead.\n */\nexport const borderRadius = () => 3;\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated Use `token('space.100', '8px')` instead with any of the space tokens.\n * Available space tokens can be found on {@link https://atlassian.design/foundations/spacing/#scale}\n */\nexport const gridSize = () => 8;\nexport const fontSize = () => 14;\nexport const fontSizeSmall = () => 11;\nexport const fontFamily = () => `-apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Oxygen', 'Ubuntu', 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif`;\nexport const codeFontFamily = () => `'SFMono-Medium', 'SF Mono', 'Segoe UI Mono', 'Roboto Mono', 'Ubuntu Mono', Menlo, Consolas, Courier, monospace`;\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const focusRing = (color = `var(--ds-border-focused, ${B200})`, outlineWidth = gridSize() / 4) => {\n deprecationWarning('@atlaskit/theme', 'focus ring mixin', 'Please use `@atlaskit/focus-ring` instead.');\n return `\n &:focus {\n outline: none;\n box-shadow: 0px 0px 0px ${outlineWidth}px ${color};\n }\n`;\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/focus-ring` instead.\n */\nexport const noFocusRing = () => `\n box-shadow: none;\n`;\nexport const layers = {\n card: () => 100,\n navigation: () => 200,\n dialog: () => 300,\n layer: () => 400,\n blanket: () => 500,\n modal: () => 510,\n flag: () => 600,\n spotlight: () => 700,\n tooltip: () => 9999\n};\n\n// eslint-disable-next-line @atlaskit/design-system/use-visually-hidden\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const visuallyHidden = () => {\n deprecationWarning('@atlaskit/theme', 'visually hidden mixin', 'Please use `@atlaskit/visually-hidden` instead.');\n return {\n border: '0 !important',\n clip: 'rect(1px, 1px, 1px, 1px) !important',\n height: '1px !important',\n overflow: 'hidden !important',\n padding: '0 !important',\n position: 'absolute !important',\n width: '1px !important',\n whiteSpace: 'nowrap !important'\n };\n};\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * Please use `@atlaskit/visually-hidden`\n */\nexport const assistive = visuallyHidden;\n\n/**\n * These styles are mirrored in:\n * packages/design-system/menu/src/internal/components/skeleton-shimmer.tsx\n *\n * Please update both.\n */\nexport const skeletonShimmer = () => ({\n css: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`,\n animationDuration: '1.5s',\n animationIterationCount: 'infinite',\n animationTimingFunction: 'linear',\n animationDirection: 'alternate'\n },\n keyframes: {\n from: {\n backgroundColor: `var(--ds-skeleton, ${skeletonColor()})`\n },\n to: {\n backgroundColor: `var(--ds-skeleton-subtle, ${N30A})`\n }\n }\n});","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\nimport { B200, B400, N0, N100, N400, N50, N600, N800 } from '@atlaskit/theme/colors';\n// TODO: This is where we need to add tokens for all appearance color values\nexport const getColorsFromAppearance = appearance => {\n let iconGradientStart, iconGradientStop, iconColor, textColor, atlassianLogoTextColor;\n switch (appearance) {\n case 'brand':\n iconGradientStart = B400;\n iconGradientStop = B200;\n iconColor = B200;\n textColor = `var(--ds-text, ${N800})`;\n // This is only used for the top level Atlassian wordmark (see AtlassianLogo\n // or AtlassianStartLogo for example), and is only different for the Brand\n // appearance - a bold brand color. For other appearances,\n // atlassianLogoTextColor is the same as textColor.\n atlassianLogoTextColor = B400;\n break;\n case 'neutral':\n iconGradientStart = N600;\n iconGradientStop = N100;\n iconColor = N100;\n textColor = N400;\n atlassianLogoTextColor = N400;\n break;\n case 'inverse':\n iconGradientStart = N50;\n iconGradientStop = N0;\n iconColor = N0;\n textColor = `var(--ds-text-inverse, ${N0})`;\n atlassianLogoTextColor = `var(--ds-text-inverse, ${N0})`;\n break;\n }\n return {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor,\n atlassianLogoTextColor\n };\n};","/*\n\nBased off glamor's StyleSheet, thanks Sunil ❤️\n\nhigh performance StyleSheet for css-in-js systems\n\n- uses multiple style tags behind the scenes for millions of rules\n- uses `insertRule` for appending in production for *much* faster performance\n\n// usage\n\nimport { StyleSheet } from '@emotion/sheet'\n\nlet styleSheet = new StyleSheet({ key: '', container: document.head })\n\nstyleSheet.insert('#box { border: 1px solid red; }')\n- appends a css rule into the stylesheet\n\nstyleSheet.flush()\n- empties the stylesheet of all its contents\n\n*/\n// $FlowFixMe\nfunction sheetForTag(tag) {\n if (tag.sheet) {\n // $FlowFixMe\n return tag.sheet;\n } // this weirdness brought to you by firefox\n\n /* istanbul ignore next */\n\n\n for (var i = 0; i < document.styleSheets.length; i++) {\n if (document.styleSheets[i].ownerNode === tag) {\n // $FlowFixMe\n return document.styleSheets[i];\n }\n }\n}\n\nfunction createStyleElement(options) {\n var tag = document.createElement('style');\n tag.setAttribute('data-emotion', options.key);\n\n if (options.nonce !== undefined) {\n tag.setAttribute('nonce', options.nonce);\n }\n\n tag.appendChild(document.createTextNode(''));\n tag.setAttribute('data-s', '');\n return tag;\n}\n\nvar StyleSheet = /*#__PURE__*/function () {\n // Using Node instead of HTMLElement since container may be a ShadowRoot\n function StyleSheet(options) {\n var _this = this;\n\n this._insertTag = function (tag) {\n var before;\n\n if (_this.tags.length === 0) {\n if (_this.insertionPoint) {\n before = _this.insertionPoint.nextSibling;\n } else if (_this.prepend) {\n before = _this.container.firstChild;\n } else {\n before = _this.before;\n }\n } else {\n before = _this.tags[_this.tags.length - 1].nextSibling;\n }\n\n _this.container.insertBefore(tag, before);\n\n _this.tags.push(tag);\n };\n\n this.isSpeedy = options.speedy === undefined ? process.env.NODE_ENV === 'production' : options.speedy;\n this.tags = [];\n this.ctr = 0;\n this.nonce = options.nonce; // key is the value of the data-emotion attribute, it's used to identify different sheets\n\n this.key = options.key;\n this.container = options.container;\n this.prepend = options.prepend;\n this.insertionPoint = options.insertionPoint;\n this.before = null;\n }\n\n var _proto = StyleSheet.prototype;\n\n _proto.hydrate = function hydrate(nodes) {\n nodes.forEach(this._insertTag);\n };\n\n _proto.insert = function insert(rule) {\n // the max length is how many rules we have per style tag, it's 65000 in speedy mode\n // it's 1 in dev because we insert source maps that map a single rule to a location\n // and you can only have one source map per style tag\n if (this.ctr % (this.isSpeedy ? 65000 : 1) === 0) {\n this._insertTag(createStyleElement(this));\n }\n\n var tag = this.tags[this.tags.length - 1];\n\n if (process.env.NODE_ENV !== 'production') {\n var isImportRule = rule.charCodeAt(0) === 64 && rule.charCodeAt(1) === 105;\n\n if (isImportRule && this._alreadyInsertedOrderInsensitiveRule) {\n // this would only cause problem in speedy mode\n // but we don't want enabling speedy to affect the observable behavior\n // so we report this error at all times\n console.error(\"You're attempting to insert the following rule:\\n\" + rule + '\\n\\n`@import` rules must be before all other types of rules in a stylesheet but other rules have already been inserted. Please ensure that `@import` rules are before all other rules.');\n }\n this._alreadyInsertedOrderInsensitiveRule = this._alreadyInsertedOrderInsensitiveRule || !isImportRule;\n }\n\n if (this.isSpeedy) {\n var sheet = sheetForTag(tag);\n\n try {\n // this is the ultrafast version, works across browsers\n // the big drawback is that the css won't be editable in devtools\n sheet.insertRule(rule, sheet.cssRules.length);\n } catch (e) {\n if (process.env.NODE_ENV !== 'production' && !/:(-moz-placeholder|-moz-focus-inner|-moz-focusring|-ms-input-placeholder|-moz-read-write|-moz-read-only|-ms-clear|-ms-expand|-ms-reveal){/.test(rule)) {\n console.error(\"There was a problem inserting the following rule: \\\"\" + rule + \"\\\"\", e);\n }\n }\n } else {\n tag.appendChild(document.createTextNode(rule));\n }\n\n this.ctr++;\n };\n\n _proto.flush = function flush() {\n // $FlowFixMe\n this.tags.forEach(function (tag) {\n return tag.parentNode && tag.parentNode.removeChild(tag);\n });\n this.tags = [];\n this.ctr = 0;\n\n if (process.env.NODE_ENV !== 'production') {\n this._alreadyInsertedOrderInsensitiveRule = false;\n }\n };\n\n return StyleSheet;\n}();\n\nexport { StyleSheet };\n","import { StyleSheet } from '@emotion/sheet';\nimport { dealloc, alloc, next, token, from, peek, delimit, slice, position, RULESET, combine, match, serialize, copy, replace, WEBKIT, MOZ, MS, KEYFRAMES, DECLARATION, hash, charat, strlen, indexof, stringify, COMMENT, rulesheet, middleware, compile } from 'stylis';\nimport '@emotion/weak-memoize';\nimport '@emotion/memoize';\n\nvar identifierWithPointTracking = function identifierWithPointTracking(begin, points, index) {\n var previous = 0;\n var character = 0;\n\n while (true) {\n previous = character;\n character = peek(); // &\\f\n\n if (previous === 38 && character === 12) {\n points[index] = 1;\n }\n\n if (token(character)) {\n break;\n }\n\n next();\n }\n\n return slice(begin, position);\n};\n\nvar toRules = function toRules(parsed, points) {\n // pretend we've started with a comma\n var index = -1;\n var character = 44;\n\n do {\n switch (token(character)) {\n case 0:\n // &\\f\n if (character === 38 && peek() === 12) {\n // this is not 100% correct, we don't account for literal sequences here - like for example quoted strings\n // stylis inserts \\f after & to know when & where it should replace this sequence with the context selector\n // and when it should just concatenate the outer and inner selectors\n // it's very unlikely for this sequence to actually appear in a different context, so we just leverage this fact here\n points[index] = 1;\n }\n\n parsed[index] += identifierWithPointTracking(position - 1, points, index);\n break;\n\n case 2:\n parsed[index] += delimit(character);\n break;\n\n case 4:\n // comma\n if (character === 44) {\n // colon\n parsed[++index] = peek() === 58 ? '&\\f' : '';\n points[index] = parsed[index].length;\n break;\n }\n\n // fallthrough\n\n default:\n parsed[index] += from(character);\n }\n } while (character = next());\n\n return parsed;\n};\n\nvar getRules = function getRules(value, points) {\n return dealloc(toRules(alloc(value), points));\n}; // WeakSet would be more appropriate, but only WeakMap is supported in IE11\n\n\nvar fixedElements = /* #__PURE__ */new WeakMap();\nvar compat = function compat(element) {\n if (element.type !== 'rule' || !element.parent || // positive .length indicates that this rule contains pseudo\n // negative .length indicates that this rule has been already prefixed\n element.length < 1) {\n return;\n }\n\n var value = element.value,\n parent = element.parent;\n var isImplicitRule = element.column === parent.column && element.line === parent.line;\n\n while (parent.type !== 'rule') {\n parent = parent.parent;\n if (!parent) return;\n } // short-circuit for the simplest case\n\n\n if (element.props.length === 1 && value.charCodeAt(0) !== 58\n /* colon */\n && !fixedElements.get(parent)) {\n return;\n } // if this is an implicitly inserted rule (the one eagerly inserted at the each new nested level)\n // then the props has already been manipulated beforehand as they that array is shared between it and its \"rule parent\"\n\n\n if (isImplicitRule) {\n return;\n }\n\n fixedElements.set(element, true);\n var points = [];\n var rules = getRules(value, points);\n var parentRules = parent.props;\n\n for (var i = 0, k = 0; i < rules.length; i++) {\n for (var j = 0; j < parentRules.length; j++, k++) {\n element.props[k] = points[i] ? rules[i].replace(/&\\f/g, parentRules[j]) : parentRules[j] + \" \" + rules[i];\n }\n }\n};\nvar removeLabel = function removeLabel(element) {\n if (element.type === 'decl') {\n var value = element.value;\n\n if ( // charcode for l\n value.charCodeAt(0) === 108 && // charcode for b\n value.charCodeAt(2) === 98) {\n // this ignores label\n element[\"return\"] = '';\n element.value = '';\n }\n }\n};\nvar ignoreFlag = 'emotion-disable-server-rendering-unsafe-selector-warning-please-do-not-use-this-the-warning-exists-for-a-reason';\n\nvar isIgnoringComment = function isIgnoringComment(element) {\n return element.type === 'comm' && element.children.indexOf(ignoreFlag) > -1;\n};\n\nvar createUnsafeSelectorsAlarm = function createUnsafeSelectorsAlarm(cache) {\n return function (element, index, children) {\n if (element.type !== 'rule' || cache.compat) return;\n var unsafePseudoClasses = element.value.match(/(:first|:nth|:nth-last)-child/g);\n\n if (unsafePseudoClasses) {\n var isNested = !!element.parent; // in nested rules comments become children of the \"auto-inserted\" rule and that's always the `element.parent`\n //\n // considering this input:\n // .a {\n // .b /* comm */ {}\n // color: hotpink;\n // }\n // we get output corresponding to this:\n // .a {\n // & {\n // /* comm */\n // color: hotpink;\n // }\n // .b {}\n // }\n\n var commentContainer = isNested ? element.parent.children : // global rule at the root level\n children;\n\n for (var i = commentContainer.length - 1; i >= 0; i--) {\n var node = commentContainer[i];\n\n if (node.line < element.line) {\n break;\n } // it is quite weird but comments are *usually* put at `column: element.column - 1`\n // so we seek *from the end* for the node that is earlier than the rule's `element` and check that\n // this will also match inputs like this:\n // .a {\n // /* comm */\n // .b {}\n // }\n //\n // but that is fine\n //\n // it would be the easiest to change the placement of the comment to be the first child of the rule:\n // .a {\n // .b { /* comm */ }\n // }\n // with such inputs we wouldn't have to search for the comment at all\n // TODO: consider changing this comment placement in the next major version\n\n\n if (node.column < element.column) {\n if (isIgnoringComment(node)) {\n return;\n }\n\n break;\n }\n }\n\n unsafePseudoClasses.forEach(function (unsafePseudoClass) {\n console.error(\"The pseudo class \\\"\" + unsafePseudoClass + \"\\\" is potentially unsafe when doing server-side rendering. Try changing it to \\\"\" + unsafePseudoClass.split('-child')[0] + \"-of-type\\\".\");\n });\n }\n };\n};\n\nvar isImportRule = function isImportRule(element) {\n return element.type.charCodeAt(1) === 105 && element.type.charCodeAt(0) === 64;\n};\n\nvar isPrependedWithRegularRules = function isPrependedWithRegularRules(index, children) {\n for (var i = index - 1; i >= 0; i--) {\n if (!isImportRule(children[i])) {\n return true;\n }\n }\n\n return false;\n}; // use this to remove incorrect elements from further processing\n// so they don't get handed to the `sheet` (or anything else)\n// as that could potentially lead to additional logs which in turn could be overhelming to the user\n\n\nvar nullifyElement = function nullifyElement(element) {\n element.type = '';\n element.value = '';\n element[\"return\"] = '';\n element.children = '';\n element.props = '';\n};\n\nvar incorrectImportAlarm = function incorrectImportAlarm(element, index, children) {\n if (!isImportRule(element)) {\n return;\n }\n\n if (element.parent) {\n console.error(\"`@import` rules can't be nested inside other rules. Please move it to the top level and put it before regular rules. Keep in mind that they can only be used within global styles.\");\n nullifyElement(element);\n } else if (isPrependedWithRegularRules(index, children)) {\n console.error(\"`@import` rules can't be after other rules. Please put your `@import` rules before your other rules.\");\n nullifyElement(element);\n }\n};\n\n/* eslint-disable no-fallthrough */\n\nfunction prefix(value, length) {\n switch (hash(value, length)) {\n // color-adjust\n case 5103:\n return WEBKIT + 'print-' + value + value;\n // animation, animation-(delay|direction|duration|fill-mode|iteration-count|name|play-state|timing-function)\n\n case 5737:\n case 4201:\n case 3177:\n case 3433:\n case 1641:\n case 4457:\n case 2921: // text-decoration, filter, clip-path, backface-visibility, column, box-decoration-break\n\n case 5572:\n case 6356:\n case 5844:\n case 3191:\n case 6645:\n case 3005: // mask, mask-image, mask-(mode|clip|size), mask-(repeat|origin), mask-position, mask-composite,\n\n case 6391:\n case 5879:\n case 5623:\n case 6135:\n case 4599:\n case 4855: // background-clip, columns, column-(count|fill|gap|rule|rule-color|rule-style|rule-width|span|width)\n\n case 4215:\n case 6389:\n case 5109:\n case 5365:\n case 5621:\n case 3829:\n return WEBKIT + value + value;\n // appearance, user-select, transform, hyphens, text-size-adjust\n\n case 5349:\n case 4246:\n case 4810:\n case 6968:\n case 2756:\n return WEBKIT + value + MOZ + value + MS + value + value;\n // flex, flex-direction\n\n case 6828:\n case 4268:\n return WEBKIT + value + MS + value + value;\n // order\n\n case 6165:\n return WEBKIT + value + MS + 'flex-' + value + value;\n // align-items\n\n case 5187:\n return WEBKIT + value + replace(value, /(\\w+).+(:[^]+)/, WEBKIT + 'box-$1$2' + MS + 'flex-$1$2') + value;\n // align-self\n\n case 5443:\n return WEBKIT + value + MS + 'flex-item-' + replace(value, /flex-|-self/, '') + value;\n // align-content\n\n case 4675:\n return WEBKIT + value + MS + 'flex-line-pack' + replace(value, /align-content|flex-|-self/, '') + value;\n // flex-shrink\n\n case 5548:\n return WEBKIT + value + MS + replace(value, 'shrink', 'negative') + value;\n // flex-basis\n\n case 5292:\n return WEBKIT + value + MS + replace(value, 'basis', 'preferred-size') + value;\n // flex-grow\n\n case 6060:\n return WEBKIT + 'box-' + replace(value, '-grow', '') + WEBKIT + value + MS + replace(value, 'grow', 'positive') + value;\n // transition\n\n case 4554:\n return WEBKIT + replace(value, /([^-])(transform)/g, '$1' + WEBKIT + '$2') + value;\n // cursor\n\n case 6187:\n return replace(replace(replace(value, /(zoom-|grab)/, WEBKIT + '$1'), /(image-set)/, WEBKIT + '$1'), value, '') + value;\n // background, background-image\n\n case 5495:\n case 3959:\n return replace(value, /(image-set\\([^]*)/, WEBKIT + '$1' + '$`$1');\n // justify-content\n\n case 4968:\n return replace(replace(value, /(.+:)(flex-)?(.*)/, WEBKIT + 'box-pack:$3' + MS + 'flex-pack:$3'), /s.+-b[^;]+/, 'justify') + WEBKIT + value + value;\n // (margin|padding)-inline-(start|end)\n\n case 4095:\n case 3583:\n case 4068:\n case 2532:\n return replace(value, /(.+)-inline(.+)/, WEBKIT + '$1$2') + value;\n // (min|max)?(width|height|inline-size|block-size)\n\n case 8116:\n case 7059:\n case 5753:\n case 5535:\n case 5445:\n case 5701:\n case 4933:\n case 4677:\n case 5533:\n case 5789:\n case 5021:\n case 4765:\n // stretch, max-content, min-content, fill-available\n if (strlen(value) - 1 - length > 6) switch (charat(value, length + 1)) {\n // (m)ax-content, (m)in-content\n case 109:\n // -\n if (charat(value, length + 4) !== 45) break;\n // (f)ill-available, (f)it-content\n\n case 102:\n return replace(value, /(.+:)(.+)-([^]+)/, '$1' + WEBKIT + '$2-$3' + '$1' + MOZ + (charat(value, length + 3) == 108 ? '$3' : '$2-$3')) + value;\n // (s)tretch\n\n case 115:\n return ~indexof(value, 'stretch') ? prefix(replace(value, 'stretch', 'fill-available'), length) + value : value;\n }\n break;\n // position: sticky\n\n case 4949:\n // (s)ticky?\n if (charat(value, length + 1) !== 115) break;\n // display: (flex|inline-flex)\n\n case 6444:\n switch (charat(value, strlen(value) - 3 - (~indexof(value, '!important') && 10))) {\n // stic(k)y\n case 107:\n return replace(value, ':', ':' + WEBKIT) + value;\n // (inline-)?fl(e)x\n\n case 101:\n return replace(value, /(.+:)([^;!]+)(;|!.+)?/, '$1' + WEBKIT + (charat(value, 14) === 45 ? 'inline-' : '') + 'box$3' + '$1' + WEBKIT + '$2$3' + '$1' + MS + '$2box$3') + value;\n }\n\n break;\n // writing-mode\n\n case 5936:\n switch (charat(value, length + 11)) {\n // vertical-l(r)\n case 114:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb') + value;\n // vertical-r(l)\n\n case 108:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'tb-rl') + value;\n // horizontal(-)tb\n\n case 45:\n return WEBKIT + value + MS + replace(value, /[svh]\\w+-[tblr]{2}/, 'lr') + value;\n }\n\n return WEBKIT + value + MS + value + value;\n }\n\n return value;\n}\n\nvar prefixer = function prefixer(element, index, children, callback) {\n if (element.length > -1) if (!element[\"return\"]) switch (element.type) {\n case DECLARATION:\n element[\"return\"] = prefix(element.value, element.length);\n break;\n\n case KEYFRAMES:\n return serialize([copy(element, {\n value: replace(element.value, '@', '@' + WEBKIT)\n })], callback);\n\n case RULESET:\n if (element.length) return combine(element.props, function (value) {\n switch (match(value, /(::plac\\w+|:read-\\w+)/)) {\n // :read-(only|write)\n case ':read-only':\n case ':read-write':\n return serialize([copy(element, {\n props: [replace(value, /:(read-\\w+)/, ':' + MOZ + '$1')]\n })], callback);\n // :placeholder\n\n case '::placeholder':\n return serialize([copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + WEBKIT + 'input-$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, ':' + MOZ + '$1')]\n }), copy(element, {\n props: [replace(value, /:(plac\\w+)/, MS + 'input-$1')]\n })], callback);\n }\n\n return '';\n });\n }\n};\n\nvar defaultStylisPlugins = [prefixer];\n\nvar createCache = function createCache(options) {\n var key = options.key;\n\n if (process.env.NODE_ENV !== 'production' && !key) {\n throw new Error(\"You have to configure `key` for your cache. Please make sure it's unique (and not equal to 'css') as it's used for linking styles to your cache.\\n\" + \"If multiple caches share the same key they might \\\"fight\\\" for each other's style elements.\");\n }\n\n if (key === 'css') {\n var ssrStyles = document.querySelectorAll(\"style[data-emotion]:not([data-s])\"); // get SSRed styles out of the way of React's hydration\n // document.head is a safe place to move them to(though note document.head is not necessarily the last place they will be)\n // note this very very intentionally targets all style elements regardless of the key to ensure\n // that creating a cache works inside of render of a React component\n\n Array.prototype.forEach.call(ssrStyles, function (node) {\n // we want to only move elements which have a space in the data-emotion attribute value\n // because that indicates that it is an Emotion 11 server-side rendered style elements\n // while we will already ignore Emotion 11 client-side inserted styles because of the :not([data-s]) part in the selector\n // Emotion 10 client-side inserted styles did not have data-s (but importantly did not have a space in their data-emotion attributes)\n // so checking for the space ensures that loading Emotion 11 after Emotion 10 has inserted some styles\n // will not result in the Emotion 10 styles being destroyed\n var dataEmotionAttribute = node.getAttribute('data-emotion');\n\n if (dataEmotionAttribute.indexOf(' ') === -1) {\n return;\n }\n document.head.appendChild(node);\n node.setAttribute('data-s', '');\n });\n }\n\n var stylisPlugins = options.stylisPlugins || defaultStylisPlugins;\n\n if (process.env.NODE_ENV !== 'production') {\n // $FlowFixMe\n if (/[^a-z-]/.test(key)) {\n throw new Error(\"Emotion key must only contain lower case alphabetical characters and - but \\\"\" + key + \"\\\" was passed\");\n }\n }\n\n var inserted = {};\n var container;\n var nodesToHydrate = [];\n\n {\n container = options.container || document.head;\n Array.prototype.forEach.call( // this means we will ignore elements which don't have a space in them which\n // means that the style elements we're looking at are only Emotion 11 server-rendered style elements\n document.querySelectorAll(\"style[data-emotion^=\\\"\" + key + \" \\\"]\"), function (node) {\n var attrib = node.getAttribute(\"data-emotion\").split(' '); // $FlowFixMe\n\n for (var i = 1; i < attrib.length; i++) {\n inserted[attrib[i]] = true;\n }\n\n nodesToHydrate.push(node);\n });\n }\n\n var _insert;\n\n var omnipresentPlugins = [compat, removeLabel];\n\n if (process.env.NODE_ENV !== 'production') {\n omnipresentPlugins.push(createUnsafeSelectorsAlarm({\n get compat() {\n return cache.compat;\n }\n\n }), incorrectImportAlarm);\n }\n\n {\n var currentSheet;\n var finalizingPlugins = [stringify, process.env.NODE_ENV !== 'production' ? function (element) {\n if (!element.root) {\n if (element[\"return\"]) {\n currentSheet.insert(element[\"return\"]);\n } else if (element.value && element.type !== COMMENT) {\n // insert empty rule in non-production environments\n // so @emotion/jest can grab `key` from the (JS)DOM for caches without any rules inserted yet\n currentSheet.insert(element.value + \"{}\");\n }\n }\n } : rulesheet(function (rule) {\n currentSheet.insert(rule);\n })];\n var serializer = middleware(omnipresentPlugins.concat(stylisPlugins, finalizingPlugins));\n\n var stylis = function stylis(styles) {\n return serialize(compile(styles), serializer);\n };\n\n _insert = function insert(selector, serialized, sheet, shouldCache) {\n currentSheet = sheet;\n\n if (process.env.NODE_ENV !== 'production' && serialized.map !== undefined) {\n currentSheet = {\n insert: function insert(rule) {\n sheet.insert(rule + serialized.map);\n }\n };\n }\n\n stylis(selector ? selector + \"{\" + serialized.styles + \"}\" : serialized.styles);\n\n if (shouldCache) {\n cache.inserted[serialized.name] = true;\n }\n };\n }\n\n var cache = {\n key: key,\n sheet: new StyleSheet({\n key: key,\n container: container,\n nonce: options.nonce,\n speedy: options.speedy,\n prepend: options.prepend,\n insertionPoint: options.insertionPoint\n }),\n nonce: options.nonce,\n inserted: inserted,\n registered: {},\n insert: _insert\n };\n cache.sheet.hydrate(nodesToHydrate);\n return cache;\n};\n\nexport { createCache as default };\n","import * as React from 'react';\nimport { useContext, forwardRef } from 'react';\nimport createCache from '@emotion/cache';\nimport _extends from '@babel/runtime/helpers/esm/extends';\nimport weakMemoize from '@emotion/weak-memoize';\nimport hoistNonReactStatics from '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport { getRegisteredStyles, registerStyles, insertStyles } from '@emotion/utils';\nimport { serializeStyles } from '@emotion/serialize';\nimport { useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\n\nvar isBrowser = \"object\" !== 'undefined';\nvar hasOwnProperty = {}.hasOwnProperty;\n\nvar EmotionCacheContext = /* #__PURE__ */React.createContext( // we're doing this to avoid preconstruct's dead code elimination in this one case\n// because this module is primarily intended for the browser and node\n// but it's also required in react native and similar environments sometimes\n// and we could have a special build just for that\n// but this is much easier and the native packages\n// might use a different theme context in the future anyway\ntypeof HTMLElement !== 'undefined' ? /* #__PURE__ */createCache({\n key: 'css'\n}) : null);\n\nif (process.env.NODE_ENV !== 'production') {\n EmotionCacheContext.displayName = 'EmotionCacheContext';\n}\n\nvar CacheProvider = EmotionCacheContext.Provider;\nvar __unsafe_useEmotionCache = function useEmotionCache() {\n return useContext(EmotionCacheContext);\n};\n\nvar withEmotionCache = function withEmotionCache(func) {\n // $FlowFixMe\n return /*#__PURE__*/forwardRef(function (props, ref) {\n // the cache will never be null in the browser\n var cache = useContext(EmotionCacheContext);\n return func(props, cache, ref);\n });\n};\n\nif (!isBrowser) {\n withEmotionCache = function withEmotionCache(func) {\n return function (props) {\n var cache = useContext(EmotionCacheContext);\n\n if (cache === null) {\n // yes, we're potentially creating this on every render\n // it doesn't actually matter though since it's only on the server\n // so there will only every be a single render\n // that could change in the future because of suspense and etc. but for now,\n // this works and i don't want to optimise for a future thing that we aren't sure about\n cache = createCache({\n key: 'css'\n });\n return /*#__PURE__*/React.createElement(EmotionCacheContext.Provider, {\n value: cache\n }, func(props, cache));\n } else {\n return func(props, cache);\n }\n };\n };\n}\n\nvar ThemeContext = /* #__PURE__ */React.createContext({});\n\nif (process.env.NODE_ENV !== 'production') {\n ThemeContext.displayName = 'EmotionThemeContext';\n}\n\nvar useTheme = function useTheme() {\n return React.useContext(ThemeContext);\n};\n\nvar getTheme = function getTheme(outerTheme, theme) {\n if (typeof theme === 'function') {\n var mergedTheme = theme(outerTheme);\n\n if (process.env.NODE_ENV !== 'production' && (mergedTheme == null || typeof mergedTheme !== 'object' || Array.isArray(mergedTheme))) {\n throw new Error('[ThemeProvider] Please return an object from your theme function, i.e. theme={() => ({})}!');\n }\n\n return mergedTheme;\n }\n\n if (process.env.NODE_ENV !== 'production' && (theme == null || typeof theme !== 'object' || Array.isArray(theme))) {\n throw new Error('[ThemeProvider] Please make your theme prop a plain object');\n }\n\n return _extends({}, outerTheme, theme);\n};\n\nvar createCacheWithTheme = /* #__PURE__ */weakMemoize(function (outerTheme) {\n return weakMemoize(function (theme) {\n return getTheme(outerTheme, theme);\n });\n});\nvar ThemeProvider = function ThemeProvider(props) {\n var theme = React.useContext(ThemeContext);\n\n if (props.theme !== theme) {\n theme = createCacheWithTheme(theme)(props.theme);\n }\n\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: theme\n }, props.children);\n};\nfunction withTheme(Component) {\n var componentName = Component.displayName || Component.name || 'Component';\n\n var render = function render(props, ref) {\n var theme = React.useContext(ThemeContext);\n return /*#__PURE__*/React.createElement(Component, _extends({\n theme: theme,\n ref: ref\n }, props));\n }; // $FlowFixMe\n\n\n var WithTheme = /*#__PURE__*/React.forwardRef(render);\n WithTheme.displayName = \"WithTheme(\" + componentName + \")\";\n return hoistNonReactStatics(WithTheme, Component);\n}\n\nvar getLastPart = function getLastPart(functionName) {\n // The match may be something like 'Object.createEmotionProps' or\n // 'Loader.prototype.render'\n var parts = functionName.split('.');\n return parts[parts.length - 1];\n};\n\nvar getFunctionNameFromStackTraceLine = function getFunctionNameFromStackTraceLine(line) {\n // V8\n var match = /^\\s+at\\s+([A-Za-z0-9$.]+)\\s/.exec(line);\n if (match) return getLastPart(match[1]); // Safari / Firefox\n\n match = /^([A-Za-z0-9$.]+)@/.exec(line);\n if (match) return getLastPart(match[1]);\n return undefined;\n};\n\nvar internalReactFunctionNames = /* #__PURE__ */new Set(['renderWithHooks', 'processChild', 'finishClassComponent', 'renderToString']); // These identifiers come from error stacks, so they have to be valid JS\n// identifiers, thus we only need to replace what is a valid character for JS,\n// but not for CSS.\n\nvar sanitizeIdentifier = function sanitizeIdentifier(identifier) {\n return identifier.replace(/\\$/g, '-');\n};\n\nvar getLabelFromStackTrace = function getLabelFromStackTrace(stackTrace) {\n if (!stackTrace) return undefined;\n var lines = stackTrace.split('\\n');\n\n for (var i = 0; i < lines.length; i++) {\n var functionName = getFunctionNameFromStackTraceLine(lines[i]); // The first line of V8 stack traces is just \"Error\"\n\n if (!functionName) continue; // If we reach one of these, we have gone too far and should quit\n\n if (internalReactFunctionNames.has(functionName)) break; // The component name is the first function in the stack that starts with an\n // uppercase letter\n\n if (/^[A-Z]/.test(functionName)) return sanitizeIdentifier(functionName);\n }\n\n return undefined;\n};\n\nvar typePropName = '__EMOTION_TYPE_PLEASE_DO_NOT_USE__';\nvar labelPropName = '__EMOTION_LABEL_PLEASE_DO_NOT_USE__';\nvar createEmotionProps = function createEmotionProps(type, props) {\n if (process.env.NODE_ENV !== 'production' && typeof props.css === 'string' && // check if there is a css declaration\n props.css.indexOf(':') !== -1) {\n throw new Error(\"Strings are not allowed as css prop values, please wrap it in a css template literal from '@emotion/react' like this: css`\" + props.css + \"`\");\n }\n\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key)) {\n newProps[key] = props[key];\n }\n }\n\n newProps[typePropName] = type; // For performance, only call getLabelFromStackTrace in development and when\n // the label hasn't already been computed\n\n if (process.env.NODE_ENV !== 'production' && !!props.css && (typeof props.css !== 'object' || typeof props.css.name !== 'string' || props.css.name.indexOf('-') === -1)) {\n var label = getLabelFromStackTrace(new Error().stack);\n if (label) newProps[labelPropName] = label;\n }\n\n return newProps;\n};\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serialized = _ref.serialized,\n isStringTag = _ref.isStringTag;\n registerStyles(cache, serialized, isStringTag);\n useInsertionEffectAlwaysWithSyncFallback(function () {\n return insertStyles(cache, serialized, isStringTag);\n });\n\n return null;\n};\n\nvar Emotion = /* #__PURE__ */withEmotionCache(function (props, cache, ref) {\n var cssProp = props.css; // so that using `css` from `emotion` and passing the result to the css prop works\n // not passing the registered cache to serializeStyles because it would\n // make certain babel optimisations not possible\n\n if (typeof cssProp === 'string' && cache.registered[cssProp] !== undefined) {\n cssProp = cache.registered[cssProp];\n }\n\n var WrappedComponent = props[typePropName];\n var registeredStyles = [cssProp];\n var className = '';\n\n if (typeof props.className === 'string') {\n className = getRegisteredStyles(cache.registered, registeredStyles, props.className);\n } else if (props.className != null) {\n className = props.className + \" \";\n }\n\n var serialized = serializeStyles(registeredStyles, undefined, React.useContext(ThemeContext));\n\n if (process.env.NODE_ENV !== 'production' && serialized.name.indexOf('-') === -1) {\n var labelFromStack = props[labelPropName];\n\n if (labelFromStack) {\n serialized = serializeStyles([serialized, 'label:' + labelFromStack + ';']);\n }\n }\n\n className += cache.key + \"-\" + serialized.name;\n var newProps = {};\n\n for (var key in props) {\n if (hasOwnProperty.call(props, key) && key !== 'css' && key !== typePropName && (process.env.NODE_ENV === 'production' || key !== labelPropName)) {\n newProps[key] = props[key];\n }\n }\n\n newProps.ref = ref;\n newProps.className = className;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serialized: serialized,\n isStringTag: typeof WrappedComponent === 'string'\n }), /*#__PURE__*/React.createElement(WrappedComponent, newProps));\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Emotion.displayName = 'EmotionCssPropInternal';\n}\n\nvar Emotion$1 = Emotion;\n\nexport { CacheProvider as C, Emotion$1 as E, ThemeContext as T, __unsafe_useEmotionCache as _, ThemeProvider as a, withTheme as b, createEmotionProps as c, hasOwnProperty as h, isBrowser as i, useTheme as u, withEmotionCache as w };\n","import { h as hasOwnProperty, E as Emotion, c as createEmotionProps, w as withEmotionCache, T as ThemeContext, i as isBrowser$1 } from './emotion-element-c39617d8.browser.esm.js';\nexport { C as CacheProvider, T as ThemeContext, a as ThemeProvider, _ as __unsafe_useEmotionCache, u as useTheme, w as withEmotionCache, b as withTheme } from './emotion-element-c39617d8.browser.esm.js';\nimport * as React from 'react';\nimport { insertStyles, registerStyles, getRegisteredStyles } from '@emotion/utils';\nimport { useInsertionEffectWithLayoutFallback, useInsertionEffectAlwaysWithSyncFallback } from '@emotion/use-insertion-effect-with-fallbacks';\nimport { serializeStyles } from '@emotion/serialize';\nimport '@emotion/cache';\nimport '@babel/runtime/helpers/extends';\nimport '@emotion/weak-memoize';\nimport '../_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js';\nimport 'hoist-non-react-statics';\n\nvar pkg = {\n\tname: \"@emotion/react\",\n\tversion: \"11.11.1\",\n\tmain: \"dist/emotion-react.cjs.js\",\n\tmodule: \"dist/emotion-react.esm.js\",\n\tbrowser: {\n\t\t\"./dist/emotion-react.esm.js\": \"./dist/emotion-react.browser.esm.js\"\n\t},\n\texports: {\n\t\t\".\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./dist/emotion-react.worker.esm.js\",\n\t\t\t\tbrowser: \"./dist/emotion-react.browser.esm.js\",\n\t\t\t\t\"default\": \"./dist/emotion-react.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./dist/emotion-react.cjs.mjs\",\n\t\t\t\"default\": \"./dist/emotion-react.cjs.js\"\n\t\t},\n\t\t\"./jsx-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-runtime/dist/emotion-react-jsx-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-runtime/dist/emotion-react-jsx-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-runtime/dist/emotion-react-jsx-runtime.cjs.js\"\n\t\t},\n\t\t\"./_isolated-hnrs\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.worker.esm.js\",\n\t\t\t\tbrowser: \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.browser.esm.js\",\n\t\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.mjs\",\n\t\t\t\"default\": \"./_isolated-hnrs/dist/emotion-react-_isolated-hnrs.cjs.js\"\n\t\t},\n\t\t\"./jsx-dev-runtime\": {\n\t\t\tmodule: {\n\t\t\t\tworker: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.worker.esm.js\",\n\t\t\t\tbrowser: \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.browser.esm.js\",\n\t\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.esm.js\"\n\t\t\t},\n\t\t\t\"import\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.mjs\",\n\t\t\t\"default\": \"./jsx-dev-runtime/dist/emotion-react-jsx-dev-runtime.cjs.js\"\n\t\t},\n\t\t\"./package.json\": \"./package.json\",\n\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\"./macro\": {\n\t\t\ttypes: {\n\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t},\n\t\t\t\"default\": \"./macro.js\"\n\t\t}\n\t},\n\ttypes: \"types/index.d.ts\",\n\tfiles: [\n\t\t\"src\",\n\t\t\"dist\",\n\t\t\"jsx-runtime\",\n\t\t\"jsx-dev-runtime\",\n\t\t\"_isolated-hnrs\",\n\t\t\"types/*.d.ts\",\n\t\t\"macro.*\"\n\t],\n\tsideEffects: false,\n\tauthor: \"Emotion Contributors\",\n\tlicense: \"MIT\",\n\tscripts: {\n\t\t\"test:typescript\": \"dtslint types\"\n\t},\n\tdependencies: {\n\t\t\"@babel/runtime\": \"^7.18.3\",\n\t\t\"@emotion/babel-plugin\": \"^11.11.0\",\n\t\t\"@emotion/cache\": \"^11.11.0\",\n\t\t\"@emotion/serialize\": \"^1.1.2\",\n\t\t\"@emotion/use-insertion-effect-with-fallbacks\": \"^1.0.1\",\n\t\t\"@emotion/utils\": \"^1.2.1\",\n\t\t\"@emotion/weak-memoize\": \"^0.3.1\",\n\t\t\"hoist-non-react-statics\": \"^3.3.1\"\n\t},\n\tpeerDependencies: {\n\t\treact: \">=16.8.0\"\n\t},\n\tpeerDependenciesMeta: {\n\t\t\"@types/react\": {\n\t\t\toptional: true\n\t\t}\n\t},\n\tdevDependencies: {\n\t\t\"@definitelytyped/dtslint\": \"0.0.112\",\n\t\t\"@emotion/css\": \"11.11.0\",\n\t\t\"@emotion/css-prettifier\": \"1.1.3\",\n\t\t\"@emotion/server\": \"11.11.0\",\n\t\t\"@emotion/styled\": \"11.11.0\",\n\t\t\"html-tag-names\": \"^1.1.2\",\n\t\treact: \"16.14.0\",\n\t\t\"svg-tag-names\": \"^1.1.1\",\n\t\ttypescript: \"^4.5.5\"\n\t},\n\trepository: \"https://github.com/emotion-js/emotion/tree/main/packages/react\",\n\tpublishConfig: {\n\t\taccess: \"public\"\n\t},\n\t\"umd:main\": \"dist/emotion-react.umd.min.js\",\n\tpreconstruct: {\n\t\tentrypoints: [\n\t\t\t\"./index.js\",\n\t\t\t\"./jsx-runtime.js\",\n\t\t\t\"./jsx-dev-runtime.js\",\n\t\t\t\"./_isolated-hnrs.js\"\n\t\t],\n\t\tumdName: \"emotionReact\",\n\t\texports: {\n\t\t\tenvConditions: [\n\t\t\t\t\"browser\",\n\t\t\t\t\"worker\"\n\t\t\t],\n\t\t\textra: {\n\t\t\t\t\"./types/css-prop\": \"./types/css-prop.d.ts\",\n\t\t\t\t\"./macro\": {\n\t\t\t\t\ttypes: {\n\t\t\t\t\t\t\"import\": \"./macro.d.mts\",\n\t\t\t\t\t\t\"default\": \"./macro.d.ts\"\n\t\t\t\t\t},\n\t\t\t\t\t\"default\": \"./macro.js\"\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\t}\n};\n\nvar jsx = function jsx(type, props) {\n var args = arguments;\n\n if (props == null || !hasOwnProperty.call(props, 'css')) {\n // $FlowFixMe\n return React.createElement.apply(undefined, args);\n }\n\n var argsLength = args.length;\n var createElementArgArray = new Array(argsLength);\n createElementArgArray[0] = Emotion;\n createElementArgArray[1] = createEmotionProps(type, props);\n\n for (var i = 2; i < argsLength; i++) {\n createElementArgArray[i] = args[i];\n } // $FlowFixMe\n\n\n return React.createElement.apply(null, createElementArgArray);\n};\n\nvar warnedAboutCssPropForGlobal = false; // maintain place over rerenders.\n// initial render from browser, insertBefore context.sheet.tags[0] or if a style hasn't been inserted there yet, appendChild\n// initial client-side render from SSR, use place of hydrating tag\n\nvar Global = /* #__PURE__ */withEmotionCache(function (props, cache) {\n if (process.env.NODE_ENV !== 'production' && !warnedAboutCssPropForGlobal && ( // check for className as well since the user is\n // probably using the custom createElement which\n // means it will be turned into a className prop\n // $FlowFixMe I don't really want to add it to the type since it shouldn't be used\n props.className || props.css)) {\n console.error(\"It looks like you're using the css prop on Global, did you mean to use the styles prop instead?\");\n warnedAboutCssPropForGlobal = true;\n }\n\n var styles = props.styles;\n var serialized = serializeStyles([styles], undefined, React.useContext(ThemeContext));\n\n if (!isBrowser$1) {\n var _ref;\n\n var serializedNames = serialized.name;\n var serializedStyles = serialized.styles;\n var next = serialized.next;\n\n while (next !== undefined) {\n serializedNames += ' ' + next.name;\n serializedStyles += next.styles;\n next = next.next;\n }\n\n var shouldCache = cache.compat === true;\n var rules = cache.insert(\"\", {\n name: serializedNames,\n styles: serializedStyles\n }, cache.sheet, shouldCache);\n\n if (shouldCache) {\n return null;\n }\n\n return /*#__PURE__*/React.createElement(\"style\", (_ref = {}, _ref[\"data-emotion\"] = cache.key + \"-global \" + serializedNames, _ref.dangerouslySetInnerHTML = {\n __html: rules\n }, _ref.nonce = cache.sheet.nonce, _ref));\n } // yes, i know these hooks are used conditionally\n // but it is based on a constant that will never change at runtime\n // it's effectively like having two implementations and switching them out\n // so it's not actually breaking anything\n\n\n var sheetRef = React.useRef();\n useInsertionEffectWithLayoutFallback(function () {\n var key = cache.key + \"-global\"; // use case of https://github.com/emotion-js/emotion/issues/2675\n\n var sheet = new cache.sheet.constructor({\n key: key,\n nonce: cache.sheet.nonce,\n container: cache.sheet.container,\n speedy: cache.sheet.isSpeedy\n });\n var rehydrating = false; // $FlowFixMe\n\n var node = document.querySelector(\"style[data-emotion=\\\"\" + key + \" \" + serialized.name + \"\\\"]\");\n\n if (cache.sheet.tags.length) {\n sheet.before = cache.sheet.tags[0];\n }\n\n if (node !== null) {\n rehydrating = true; // clear the hash so this node won't be recognizable as rehydratable by other s\n\n node.setAttribute('data-emotion', key);\n sheet.hydrate([node]);\n }\n\n sheetRef.current = [sheet, rehydrating];\n return function () {\n sheet.flush();\n };\n }, [cache]);\n useInsertionEffectWithLayoutFallback(function () {\n var sheetRefCurrent = sheetRef.current;\n var sheet = sheetRefCurrent[0],\n rehydrating = sheetRefCurrent[1];\n\n if (rehydrating) {\n sheetRefCurrent[1] = false;\n return;\n }\n\n if (serialized.next !== undefined) {\n // insert keyframes\n insertStyles(cache, serialized.next, true);\n }\n\n if (sheet.tags.length) {\n // if this doesn't exist then it will be null so the style element will be appended\n var element = sheet.tags[sheet.tags.length - 1].nextElementSibling;\n sheet.before = element;\n sheet.flush();\n }\n\n cache.insert(\"\", serialized, sheet, false);\n }, [cache, serialized.name]);\n return null;\n});\n\nif (process.env.NODE_ENV !== 'production') {\n Global.displayName = 'EmotionGlobal';\n}\n\nfunction css() {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return serializeStyles(args);\n}\n\nvar keyframes = function keyframes() {\n var insertable = css.apply(void 0, arguments);\n var name = \"animation-\" + insertable.name; // $FlowFixMe\n\n return {\n name: name,\n styles: \"@keyframes \" + name + \"{\" + insertable.styles + \"}\",\n anim: 1,\n toString: function toString() {\n return \"_EMO_\" + this.name + \"_\" + this.styles + \"_EMO_\";\n }\n };\n};\n\nvar classnames = function classnames(args) {\n var len = args.length;\n var i = 0;\n var cls = '';\n\n for (; i < len; i++) {\n var arg = args[i];\n if (arg == null) continue;\n var toAdd = void 0;\n\n switch (typeof arg) {\n case 'boolean':\n break;\n\n case 'object':\n {\n if (Array.isArray(arg)) {\n toAdd = classnames(arg);\n } else {\n if (process.env.NODE_ENV !== 'production' && arg.styles !== undefined && arg.name !== undefined) {\n console.error('You have passed styles created with `css` from `@emotion/react` package to the `cx`.\\n' + '`cx` is meant to compose class names (strings) so you should convert those styles to a class name by passing them to the `css` received from component.');\n }\n\n toAdd = '';\n\n for (var k in arg) {\n if (arg[k] && k) {\n toAdd && (toAdd += ' ');\n toAdd += k;\n }\n }\n }\n\n break;\n }\n\n default:\n {\n toAdd = arg;\n }\n }\n\n if (toAdd) {\n cls && (cls += ' ');\n cls += toAdd;\n }\n }\n\n return cls;\n};\n\nfunction merge(registered, css, className) {\n var registeredStyles = [];\n var rawClassName = getRegisteredStyles(registered, registeredStyles, className);\n\n if (registeredStyles.length < 2) {\n return className;\n }\n\n return rawClassName + css(registeredStyles);\n}\n\nvar Insertion = function Insertion(_ref) {\n var cache = _ref.cache,\n serializedArr = _ref.serializedArr;\n useInsertionEffectAlwaysWithSyncFallback(function () {\n\n for (var i = 0; i < serializedArr.length; i++) {\n insertStyles(cache, serializedArr[i], false);\n }\n });\n\n return null;\n};\n\nvar ClassNames = /* #__PURE__ */withEmotionCache(function (props, cache) {\n var hasRendered = false;\n var serializedArr = [];\n\n var css = function css() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('css can only be used during render');\n }\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n var serialized = serializeStyles(args, cache.registered);\n serializedArr.push(serialized); // registration has to happen here as the result of this might get consumed by `cx`\n\n registerStyles(cache, serialized, false);\n return cache.key + \"-\" + serialized.name;\n };\n\n var cx = function cx() {\n if (hasRendered && process.env.NODE_ENV !== 'production') {\n throw new Error('cx can only be used during render');\n }\n\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return merge(cache.registered, css, classnames(args));\n };\n\n var content = {\n css: css,\n cx: cx,\n theme: React.useContext(ThemeContext)\n };\n var ele = props.children(content);\n hasRendered = true;\n return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(Insertion, {\n cache: cache,\n serializedArr: serializedArr\n }), ele);\n});\n\nif (process.env.NODE_ENV !== 'production') {\n ClassNames.displayName = 'EmotionClassNames';\n}\n\nif (process.env.NODE_ENV !== 'production') {\n var isBrowser = \"object\" !== 'undefined'; // #1727, #2905 for some reason Jest and Vitest evaluate modules twice if some consuming module gets mocked\n\n var isTestEnv = typeof jest !== 'undefined' || typeof vi !== 'undefined';\n\n if (isBrowser && !isTestEnv) {\n // globalThis has wide browser support - https://caniuse.com/?search=globalThis, Node.js 12 and later\n var globalContext = // $FlowIgnore\n typeof globalThis !== 'undefined' ? globalThis // eslint-disable-line no-undef\n : isBrowser ? window : global;\n var globalKey = \"__EMOTION_REACT_\" + pkg.version.split('.')[0] + \"__\";\n\n if (globalContext[globalKey]) {\n console.warn('You are loading @emotion/react when it is already loaded. Running ' + 'multiple instances may cause problems. This can happen if multiple ' + 'versions are used, or if multiple builds of the same version are ' + 'used.');\n }\n\n globalContext[globalKey] = true;\n }\n}\n\nexport { ClassNames, Global, jsx as createElement, css, jsx, keyframes };\n","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\n\nimport { css, jsx } from '@emotion/react';\nimport { sizes } from './constants';\nconst CSS_VAR_COLOR = '--logo-color';\nconst CSS_VAR_FILL = '--logo-fill';\nconst baseWrapperStyles = css({\n display: 'inline-block',\n position: 'relative',\n color: `var(${CSS_VAR_COLOR})`,\n fill: `var(${CSS_VAR_FILL})`,\n lineHeight: 1,\n userSelect: 'none',\n whiteSpace: 'normal',\n // eslint-disable-next-line @repo/internal/styles/no-nested-styles\n '> svg': {\n height: '100%',\n fill: 'inherit'\n }\n});\nconst stopColorStyles = css({\n // eslint-disable-next-line @repo/internal/styles/no-nested-styles\n stop: {\n stopColor: 'currentColor'\n }\n});\nconst sizeStyles = Object.entries(sizes).reduce((acc, [key, val]) => {\n acc[key] = css({\n height: `${val}px`\n });\n return acc;\n}, {});\n\n/**\n * __Wrapper__\n *\n * An internal component used by `@atlaskit/logo` to render logo SVGs with correct styles.\n */\nconst Wrapper = ({\n label,\n svg,\n size,\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor,\n testId: userDefinedTestId,\n ...rest\n}) => {\n const shouldApplyStopColor = iconGradientStart === 'inherit' && iconGradientStop === 'inherit' && appearance === undefined;\n const testId = userDefinedTestId && `${userDefinedTestId}--wrapper`;\n return jsx(\"span\", _extends({\n css: [baseWrapperStyles, shouldApplyStopColor && stopColorStyles, size && sizeStyles[size]],\n \"data-testid\": testId,\n style: {\n [CSS_VAR_COLOR]: iconColor,\n [CSS_VAR_FILL]: textColor\n },\n \"aria-label\": label ? label : undefined,\n role: label ? 'img' : undefined,\n dangerouslySetInnerHTML: {\n __html: svg\n }\n // eslint-disable-next-line @repo/internal/react/no-unsafe-spread-props\n }, rest));\n};\nexport default Wrapper;","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor,\n // We treat the word \"Atlassian\" differently to normal product logos, it has a bold brand look\n atlassianLogoTextColor: textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Atlassian logo__\n *\n * The Atlassian logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlassianLogo = ({\n appearance,\n label = 'Atlassian',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","import React from 'react';\n\nconst InboxImg: React.FC = (props) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n {'Incoming'}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\n\nexport default InboxImg;\n","import { defineMessages } from 'react-intl';\n\nconst ID_PREFIX = 'WacSignupForm.';\nexport const messages = defineMessages({\n header: {\n id: `${ID_PREFIX}header`,\n defaultMessage: 'Great, check your inbox'\n },\n devopsHeader: {\n id: `${ID_PREFIX}devopsHeader`,\n defaultMessage: 'Your suite is ready!'\n },\n devopsSubHeader: {\n id: `${ID_PREFIX}devopsSubHeader`,\n defaultMessage: 'Activate your account to log in'\n },\n devopsNoResendNoEmail: {\n id: `${ID_PREFIX}devopsNoResendNoEmail`,\n defaultMessage:\n \"
    Didn't receive an email from us?
    Check your spam folder or try resending the email below.\"\n },\n devopsEmailSent: {\n id: `${ID_PREFIX}devopsEmailSent`,\n defaultMessage:\n \"We've sent an email to
    {email}
    with a link to activate your account.\"\n },\n resendEmailLineOne: {\n id: `${ID_PREFIX}resendEmailLineOne`,\n defaultMessage: \"We've emailed a verification link to:\"\n },\n resendEmailLineTwo: {\n id: `${ID_PREFIX}resendEmailLineTwo`,\n defaultMessage: 'It will expire shortly, so verify soon.'\n },\n resendEmailCheckSpam: {\n id: `${ID_PREFIX}resendEmailCheckSpam`,\n defaultMessage: 'Remember to check your spam folder.'\n },\n resendEmailAction: {\n id: `${ID_PREFIX}resendEmailAction`,\n defaultMessage: 'Resend Email'\n },\n resendEmailChangeEmail: {\n id: `${ID_PREFIX}resendEmailChangeEmail`,\n defaultMessage: 'Need to change your email address?'\n },\n resendEmailChangeEmailAction: {\n id: `${ID_PREFIX}resendEmailChangeEmailAction`,\n defaultMessage: \"You'll need to create a new account.\"\n },\n resendEmailStillNoEmail: {\n id: `${ID_PREFIX}resendEmailStillNoEmail`,\n defaultMessage: 'Still not getting the email? We can help.'\n },\n resendEmailCreateAHelpTicket: {\n id: `${ID_PREFIX}resendEmailCreateAHelpTicket`,\n defaultMessage: 'Create a help ticket.'\n },\n noResendNoEmail: {\n id: `${ID_PREFIX}noResendNoEmail`,\n defaultMessage: \"Didn't receive an email from us?\"\n },\n noResendEmailConfirmation: {\n id: `${ID_PREFIX}noResendEmailConfirmation`,\n defaultMessage:\n 'Email confirmation helps us to ensure your data will always be safe.'\n },\n noResendContactUsHtml: {\n id: `${ID_PREFIX}noResendContactUsHtml`,\n defaultMessage: '
    Contact us.'\n }\n});\n","import { N20A, N500, N600, N800 } from '@atlaskit/theme/colors';\nimport { keyframes } from '@emotion/react';\nimport styled from '@emotion/styled';\n\nexport const CharlieDisplayFontStack =\n \"'Charlie Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Noto Sans', 'Ubuntu', 'Droid Sans', 'Helvetica Neue', sans-serif;\";\n\nexport const CharlieTextFontStack =\n \"'Charlie Display', -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Noto Sans', 'Ubuntu', 'Droid Sans', 'Helvetica Neue', sans-serif;\";\n\nexport const Wrapper = styled.div`\n display: flex;\n flex-direction: column;\n padding-top: 0px;\n align-items: center;\n font-family: ${CharlieTextFontStack};\n font-weight: 400;\n font-size: 16px;\n line-height: 24px;\n color: #091e42;\n letter-spacing: 0.05em;\n\n a {\n text-decoration: none !important;\n }\n\n a:hover {\n text-decoration: underline !important;\n }\n\n svg {\n margin-bottom: 0 !important;\n }\n`;\n\nexport const Header = styled.span`\n padding: 25px 0;\n font-weight: 600;\n font-family: ${CharlieDisplayFontStack};\n font-size: 1.25em;\n line-height: 1.2;\n letter-spacing: unset;\n color: #172b4d;\n`;\nexport const DevopsHeader = styled.span`\n font-size: 32px;\n line-height: 40px;\n font-family: ${CharlieDisplayFontStack};\n color: ${N600};\n font-weight: 400;\n text-align: center;\n display: flex;\n flex-direction: column;\n padding-bottom: 20px;\n\n @media only screen and (max-width: 769px) {\n font-size: 24px;\n line-height: 28px;\n padding-bottom: 16px;\n }\n\n span:first-child {\n padding-bottom: 14px;\n }\n\n @media only screen and (max-width: 424px) {\n max-width: 266px;\n }\n`;\nexport const DevopsImageWrapper = styled.div`\n width: 225px;\n padding-bottom: 25px;\n display: flex;\n justify-content: center;\n margin-top: 35px;\n\n @media only screen and (max-width: 769px) {\n margin-top: 16px;\n padding-bottom: 20px;\n }\n`;\nexport const ImageWrapper = styled.div`\n width: 225px;\n padding-bottom: 25px;\n`;\n\nexport const Group = styled.div`\n display: flex;\n flex-direction: column;\n padding-bottom: 25px;\n align-items: center;\n`;\n\nexport const Bold = styled.span`\n font-weight: 900;\n`;\n\nexport const RotationKeyframes = keyframes`\n 0% {\n transform: rotate(0deg);\n }\n 100% {\n transform: rotate(360deg);\n }\n`;\n\nexport const Devopsgroup = styled.div`\n display: flex;\n flex-direction: column;\n padding-bottom: 0px;\n align-items: center;\n text-align: center;\n max-width: 422px;\n\n @media only screen and (max-width: 769px) {\n max-width: 300px;\n }\n`;\nexport const DevopsText = styled.p`\n font-family: ${CharlieTextFontStack};\n color: ${N800};\n div {\n font-weight: 600;\n display: contents;\n\n @media only screen and (max-width: 769px) {\n display: block;\n }\n }\n\n &.break div {\n @media only screen and (max-width: 769px) {\n padding-bottom: 10px;\n }\n }\n`;\nexport const DevopsButtonGroup = styled.div`\n margin-top: 20px;\n margin-bottom: 20px;\n button {\n background: ${N20A};\n border-radius: 3px;\n padding: 6px 12px;\n }\n span {\n color: ${N500};\n font-size: 14px;\n line-height: 20px;\n font-family: ${CharlieTextFontStack};\n }\n`;\n","import { useAnalyticsEvents } from '@atlaskit/analytics-next';\nimport Button from '@atlaskit/button';\nimport CheckCircleIcon from '@atlaskit/icon/glyph/check-circle';\nimport CrossCircleIcon from '@atlaskit/icon/glyph/cross-circle';\nimport RefreshIcon from '@atlaskit/icon/glyph/refresh';\nimport { G300, R300 } from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { FormattedMessage, injectIntl } from 'react-intl';\n\nimport useResendEmailAPI, {\n ResendEmailStatuses\n} from '../../../../../../hook/useResendEmailAPI';\nimport useResendEmailData from '../../../../../../hook/useResendEmailData';\nimport { CheckEmailAnalyticsInterface } from '../../../../../../model/check-email-page';\nimport { CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES } from '../../../../../../model/check-email-page';\nimport { messages } from '../../messages';\nimport { CharlieDisplayFontStack, RotationKeyframes } from '../../styled';\n\nconst RESEND_ATTEMPT_LIMIT = 3;\n\nconst StyledButton = styled(Button)`\n font-family: ${CharlieDisplayFontStack} !important;\n line-height: 15px !important;\n`;\n\nconst Container = styled.div`\n position: relative;\n`;\n\nconst IconContainer = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n position: absolute;\n right: -36px;\n top: 50%;\n transform: translateY(-50%);\n height: 32px;\n width: 32px;\n`;\n\nconst Rotation = styled.div`\n animation: ${RotationKeyframes} 1.25s linear 0s infinite;\n`;\n\ninterface ResendEmailButtonProps {\n baseUrl?: string;\n checkEmailAnalyticsService: CheckEmailAnalyticsInterface;\n}\n\nconst ResendEmailButton: React.FC = ({\n baseUrl,\n checkEmailAnalyticsService\n}) => {\n const { createAnalyticsEvent } = useAnalyticsEvents();\n const [resendEmailData, incrementResendCount] = useResendEmailData();\n const { state: resendEmailState, triggerResendEmail } = useResendEmailAPI({\n baseUrl,\n checkEmailAnalyticsService\n });\n\n if (\n resendEmailData.resendCount > RESEND_ATTEMPT_LIMIT ||\n resendEmailData.resendCount < 0\n ) {\n return (\n <>\n \n \n \n \n \n );\n }\n\n const onClick = () => {\n const newCount = resendEmailData.resendCount + 1;\n if (newCount > RESEND_ATTEMPT_LIMIT) {\n return incrementResendCount();\n }\n\n checkEmailAnalyticsService.clickResendButton(createAnalyticsEvent);\n\n triggerResendEmail(resendEmailData).then((success) => {\n if (success) {\n incrementResendCount();\n createAnalyticsEvent({\n action: 'resendEmail',\n name: CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES.RESEND_EMAIL_API_SUCCESS\n }).fire();\n } else {\n createAnalyticsEvent({\n action: 'resendEmail',\n name: CHECK_EMAIL_PAGE_TRACKING_EVENT_NAMES.RESEND_EMAIL_API_FAILURE\n }).fire();\n }\n });\n };\n\n const Icon = () => {\n switch (resendEmailState.status) {\n case ResendEmailStatuses.SUCCESS:\n return (\n \n );\n case ResendEmailStatuses.FAILURE:\n return (\n \n );\n default:\n return null;\n }\n };\n\n return (\n \n \n \n \n ) : undefined\n }\n >\n \n \n \n \n \n \n );\n};\n\nexport default injectIntl(ResendEmailButton);\n","import { useAnalyticsEvents } from '@atlaskit/analytics-next';\nimport { AtlassianLogo } from '@atlaskit/logo';\nimport { B400, B200 } from '@atlaskit/theme/colors';\nimport React from 'react';\nimport { FormattedHTMLMessage, FormattedMessage } from 'react-intl';\nimport { CheckEmailPageLayoutPropsType } from '../../../../../model/check-email-page';\nimport { InboxImage, ResendEmailButton } from '../components';\nimport { messages } from '../messages';\nimport { Bold, Group, Header, ImageWrapper, Wrapper } from '../styled';\n\nexport function LayoutDefault({\n email,\n shouldEnable,\n baseUrl,\n checkEmailAnalyticsService\n}: CheckEmailPageLayoutPropsType) {\n const { createAnalyticsEvent } = useAnalyticsEvents();\n\n let pageContent = (\n <>\n
    \n \n {\n ' ' /* without this single space, these two strings sit too close together. */\n }\n \n checkEmailAnalyticsService.contactLinkAnalytics(\n createAnalyticsEvent\n )\n }\n >\n \n \n
    \n \n \n );\n\n if (shouldEnable) {\n pageContent = (\n <>\n \n \n {email}\n \n \n \n \n \n \n \n \n \n \n \n \n \n checkEmailAnalyticsService.navigateBack(e, createAnalyticsEvent)\n }\n >\n \n \n \n \n );\n }\n\n return (\n \n \n
    \n \n
    \n \n \n \n {pageContent}\n
    \n );\n}\n","import React from 'react';\n\nconst EnvelopeImg: React.FC = (props) => (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n);\nexport default EnvelopeImg;\n","import React from 'react';\nimport { FormattedHTMLMessage, FormattedMessage } from 'react-intl';\nimport { CheckEmailPageLayoutPropsType } from '../../../../../model/check-email-page';\nimport { ResendEmailButton } from '../components';\nimport EnvelopeImg from '../components/EnvelopeImage';\nimport { messages } from '../messages';\nimport {\n DevopsButtonGroup,\n Devopsgroup,\n DevopsHeader,\n DevopsImageWrapper,\n DevopsText,\n Wrapper\n} from '../styled';\n\nexport function LayoutDevops({\n email,\n baseUrl,\n hideHeader,\n checkEmailAnalyticsService\n}: CheckEmailPageLayoutPropsType) {\n const DevopsResendPage = (\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n\n return (\n \n \n {!hideHeader && }\n \n \n\n {DevopsResendPage}\n \n );\n}\n","import React from 'react';\nimport { injectIntl } from 'react-intl';\nimport { useResendEmailData } from '../../../../hook';\nimport { CheckEmailPagePropsType } from '../../../../model/check-email-page';\nimport { getCheckEmailAnalyticsService } from '../../../../service/check-email-page';\nimport { LayoutDefault, LayoutDevops } from './container';\n\n// UA ID detected on current checkemail page\nconst googleAnalyticsId = 'UA-6032469-23';\n\nexport const CheckEmailPage: React.FC = ({\n layout,\n baseUrl,\n analyticsTrack,\n productKeys,\n hideHeader\n}) => {\n const [{ email = '', shouldEnable }, {}] = useResendEmailData();\n const props = Object.assign(\n {},\n {\n baseUrl,\n email,\n shouldEnable,\n hideHeader\n }\n );\n\n const checkEmailAnalyticsService = getCheckEmailAnalyticsService({\n analyticsTrack,\n baseUrl,\n productKeys,\n googleAnalyticsId\n });\n\n return (() => {\n switch (layout) {\n case 'devops':\n return (\n \n );\n case 'default':\n default:\n return (\n \n );\n }\n })();\n};\n\nexport default injectIntl(CheckEmailPage);\n","import DropdownMenu, { DropdownItem } from '@atlaskit/dropdown-menu';\nimport React, { useState } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport { GetAccountOrgsResponse } from '@atlassiansox/asc-stargate';\nimport {\n DropdownTrigger,\n OrganizationDropdownContainer,\n OrganizationDropdownButtonStyle,\n OrganizationDropdownButtonStyleOpen,\n OrganizationDropdownTextContainer,\n OrganizationDropdownItemContainer,\n OrgPickerElementMargin,\n FieldLabel\n} from './styled';\nimport { AccountOrg, VortexStatus } from '../../utility';\n\ntype OnOpenChangeProps = {\n readonly isOpen: boolean;\n readonly isDisabled: boolean;\n readonly event?: { [key: string]: any };\n};\n\ntype BitbucketOrganizationPickerProps = {\n orgList: GetAccountOrgsResponse;\n selectedOrg: AccountOrg | null;\n setSelectedOrg: (org: AccountOrg) => void;\n};\n\nexport function shouldRenderBitbucketOrgPicker(\n orgAdminVortexStatusCounts: Record\n) {\n if (\n orgAdminVortexStatusCounts.ENABLED === 1 &&\n orgAdminVortexStatusCounts.DISABLED === 0\n ) {\n return false;\n }\n return orgAdminVortexStatusCounts.ENABLED > 0;\n}\n\nexport function BitbucketOrganizationPicker({\n orgList,\n selectedOrg,\n setSelectedOrg\n}: BitbucketOrganizationPickerProps) {\n const [isDropdownOpen, setIsDropdownOpen] = useState(false);\n\n const trigger = (\n \n \n {selectedOrg ? (\n selectedOrg.name\n ) : (\n \n )}\n \n \n );\n\n const triggerButtonTheme = () => {\n const buttonStyles = !isDropdownOpen\n ? OrganizationDropdownButtonStyle\n : Object.assign(\n {},\n OrganizationDropdownButtonStyle,\n OrganizationDropdownButtonStyleOpen\n );\n return {\n buttonStyles,\n spinnerStyles: {}\n };\n };\n\n return (\n \n \n \n \n \n \n setIsDropdownOpen(isOpen)\n }\n >\n {orgList\n .filter((item) => item.vortexMode === VortexStatus.ENABLED)\n .map((item) => (\n setSelectedOrg(item)}>\n \n {item.name}\n \n \n ))}\n \n \n \n );\n}\n","import React from 'react';\nimport { SvgContainer } from '../components/styled';\n\nexport type UnionIcon = {};\n\nexport function UnionIcon({}: UnionIcon) {\n return (\n \n \n \n \n \n \n );\n}\n","import { useAnalyticsEvents } from '@atlaskit/analytics-next';\nimport Button from '@atlaskit/button';\nimport AppSwitcherIcon from '@atlaskit/icon/glyph/app-switcher';\nimport EmailIcon from '@atlaskit/icon/glyph/email';\nimport { MarieSchemaAnalytics } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React, { useContext } from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport { UnionIcon } from '../Icons/UnionIcon';\n\nexport type CarouselEndProps = {\n readonly isBundleDevops: boolean;\n readonly goToProduct: string;\n};\n\nexport function CarouselEnd({ isBundleDevops, goToProduct }: CarouselEndProps) {\n const { createAnalyticsEvent } = useAnalyticsEvents();\n const product = isBundleDevops ? 'Jira' : 'Devops';\n const context = useContext(MarieSchemaAnalytics);\n const buttonId = 'go-to-jira-42074419682455333';\n const buttonClick = () => {\n context?.analyticsTrack?.segment(`bxp.formCloudSignup.go-to-jira-button`, {\n eventType: 'track',\n eventContainer: 'carouselEnd',\n event: 'clicked',\n eventComponent: 'button',\n label: `Go to ${product}`,\n uuid: '42074419682455333',\n productKey: context.productKey,\n productsOffered: context.productsOffered,\n loginUserDetected: context.loginUserDetected,\n userEmail: context.userEmail,\n suiteName: context.suiteName,\n productEdition: context.productEdition,\n productPlatform: context.productPlatform,\n schemaVersion: context.schemaVersion\n });\n createAnalyticsEvent({\n eventName: 'bxp.formCloudSignup.go-to-jira-button',\n data: {\n event: 'clicked',\n uuid: '42074419682455333',\n eventType: 'track',\n eventContainer: 'carouselEnd',\n eventComponent: 'button',\n label: `Go to ${product}`,\n productKey: context.productKey,\n productsOffered: context.productsOffered,\n loginUserDetected: context.loginUserDetected,\n userEmail: context.userEmail,\n suiteName: context.suiteName,\n productEdition: context.productEdition,\n productPlatform: context.productPlatform,\n schemaVersion: context.schemaVersion\n }\n }).fire();\n\n window.location.assign(goToProduct);\n };\n return (\n
    \n \n {' '}\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n
    \n );\n}\nconst DevopsCarouselEndGroup = styled.div`\n display: flex;\n margin: 0 auto 20px auto;\n max-width: 280px;\n`;\nconst DevopsCarouselEndText = styled.div`\n font-size: 14px;\n line-height: 20px;\n margin-left: 15px;\n font-family: Charlie Display, -apple-system, BlinkMacSystemFont, Segoe UI,\n Roboto, Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n font-style: normal;\n`;\nconst DevOpsCarouselEndHeading = styled.div`\n font-family: Charlie Display;\n font-size: 32px;\n line-height: 30px;\n text-align: center;\n margin-bottom: 60px;\n`;\nconst DevOpsCarouselEndButton = styled.div`\n text-align: center;\n margin-top: 70px;\n`;\n","import React from 'react';\nimport { FormattedMessage } from 'react-intl';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport { WelcomeDivDevops } from './styled';\n\nexport type FormWelcomeMessageProps = {\n readonly isBundleDevops: boolean;\n readonly isLoggedIn: boolean | undefined;\n readonly welcomeMessage: any;\n readonly username: string | null;\n};\n\nexport function FormWelcomeMessage({\n isBundleDevops,\n isLoggedIn,\n welcomeMessage,\n username\n}: FormWelcomeMessageProps) {\n if (isBundleDevops && isLoggedIn) {\n return (\n \n \n \n );\n }\n return ;\n}\n","declare global {\n interface Window {\n cmsPageVariant?: string;\n }\n}\n\nexport type DeferSitenameCohort = 'variant-1' | 'control' | 'non-enrolled';\n\nconst cmsPageVariants = new Map([\n ['defer_sitename_confluence_treatment', 'variant-1'],\n ['defer_sitename_jsw_treatment', 'variant-1'],\n ['defer_sitename_confluence_control', 'control'],\n ['defer_sitename_jsw_control', 'control'],\n ['defer_sitename_confluence_non-enrolled', 'non-enrolled'],\n ['defer_sitename_jsw_non-enrolled', 'non-enrolled']\n]);\n\nexport function getDeferSitenameExperimentCohort(): DeferSitenameCohort {\n if (window?.cmsPageVariant && cmsPageVariants.has(window.cmsPageVariant)) {\n return cmsPageVariants.get(window.cmsPageVariant) as DeferSitenameCohort;\n }\n\n return 'non-enrolled';\n}\n","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nexport const isAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof AnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'AnalyticsEvent';\n};\nexport default class AnalyticsEvent {\n constructor(props) {\n _defineProperty(this, \"_isAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n // just a shallow clone, don't change sub refs unless you want to\n // affect the original's too\n const payload = {\n ...this.payload\n };\n return new AnalyticsEvent({\n payload\n });\n });\n this.payload = props.payload;\n }\n update(updater) {\n if (typeof updater === 'function') {\n this.payload = updater(this.payload);\n }\n if (typeof updater === 'object') {\n this.payload = {\n ...this.payload,\n ...updater\n };\n }\n return this;\n }\n}","import _defineProperty from \"@babel/runtime/helpers/defineProperty\";\nimport AnalyticsEvent from './AnalyticsEvent';\nexport const isUIAnalyticsEvent = obj => {\n var _obj$constructor;\n return obj instanceof UIAnalyticsEvent || !!(obj !== null && obj !== void 0 && obj._isUIAnalyticsEvent) ||\n // Backwards compatibility with older analytics-next packages\n (obj === null || obj === void 0 ? void 0 : (_obj$constructor = obj.constructor) === null || _obj$constructor === void 0 ? void 0 : _obj$constructor.name) === 'UIAnalyticsEvent';\n};\nexport default class UIAnalyticsEvent extends AnalyticsEvent {\n constructor(props) {\n super(props);\n _defineProperty(this, \"_isUIAnalyticsEvent\", true);\n _defineProperty(this, \"clone\", () => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot clone an event after it's been fired.\");\n }\n return null;\n }\n const context = [...this.context];\n const handlers = [...this.handlers];\n\n /**\n * A hacky \"deep clone\" of the object. This is limited in that it wont\n * support functions, regexs, Maps, Sets, etc, but none of those need to\n * be represented in our payload.\n */\n const payload = JSON.parse(JSON.stringify(this.payload));\n return new UIAnalyticsEvent({\n context,\n handlers,\n payload\n });\n });\n _defineProperty(this, \"fire\", channel => {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn('Cannot fire an event twice.');\n }\n return;\n }\n this.handlers.forEach(handler => handler(this, channel));\n this.hasFired = true;\n });\n this.context = props.context || [];\n this.handlers = props.handlers || [];\n this.hasFired = false;\n }\n update(updater) {\n if (this.hasFired) {\n if (process.env.NODE_ENV !== 'production' && !process.env.CI) {\n // eslint-disable-next-line no-console\n console.warn(\"Cannot update an event after it's been fired.\");\n }\n return this;\n }\n return super.update(updater);\n }\n}","import { useContext } from 'react';\nimport { default as AnalyticsReactContext } from '@atlaskit/analytics-next-stable-react-context';\nexport const useAnalyticsContext = () => {\n return useContext(AnalyticsReactContext);\n};","import { useEffect, useRef } from 'react';\nexport const useTrackedRef = value => {\n const ref = useRef(value);\n useEffect(() => {\n ref.current = value;\n }, [value]);\n return ref;\n};","import { useCallback } from 'react';\nimport { useAnalyticsEvents } from './useAnalyticsEvents';\nimport { useTrackedRef } from './useTrackedRef';\n// WARNING: This hook will only function correctly for leaf node components - as in\n// no children inside the component will require analytics themselves.\n// Ignoring this warning will mean the analytics context of child components will not\n// include the context of this component, .e.g, lost data.\n// If you are going to have child components that require analytics use withAnalytics\n// or AnalyticsContext component instead.\nexport function usePlatformLeafSyntheticEventHandler({\n fn,\n action,\n componentName,\n packageName,\n packageVersion,\n analyticsData\n}) {\n const {\n createAnalyticsEvent\n } = useAnalyticsEvents();\n\n // We put analyticsData and fn in a ref so that we don't need to break\n // memoization.\n // Generally these could be defined by consumers inline\n // and so we do this to avoid breaking memoization of useCallback\n const dataRef = useTrackedRef(analyticsData);\n const fnRef = useTrackedRef(fn);\n const handler = useCallback(() => {\n const analyticsEvent = createAnalyticsEvent({\n action,\n actionSubject: componentName,\n attributes: {\n componentName,\n packageName,\n packageVersion\n }\n });\n\n // To avoid wrapping this component in AnalyticsContext we manually\n // push the parent context's meta data into the context.\n // Note: this new 'context'\n const context = {\n componentName,\n packageName,\n packageVersion,\n ...dataRef.current\n };\n analyticsEvent.context.push(context);\n\n // fire an event on the atlaskit channel\n const clone = analyticsEvent.clone();\n if (clone) {\n clone.fire('atlaskit');\n }\n fnRef.current(analyticsEvent);\n }, [\n // These are strings and won't change\n action, componentName, packageName, packageVersion,\n // This function is memoized in the context\n createAnalyticsEvent,\n // these are a stable ref because of the useTrackedRef hook\n dataRef, fnRef]);\n return handler;\n}","import { useCallbackOne } from 'use-memo-one';\nimport UIAnalyticsEvent from '../events/UIAnalyticsEvent';\nimport { useAnalyticsContext } from './useAnalyticsContext';\nexport function useAnalyticsEvents() {\n const analyticsContext = useAnalyticsContext();\n const createAnalyticsEvent = useCallbackOne(payload => {\n return new UIAnalyticsEvent({\n context: analyticsContext.getAtlaskitAnalyticsContext(),\n handlers: analyticsContext.getAtlaskitAnalyticsEventHandlers(),\n payload\n });\n }, [analyticsContext]);\n return {\n createAnalyticsEvent\n };\n}","let delayId = null;\nexport function clearScheduled() {\n if (delayId != null) {\n window.clearTimeout(delayId);\n delayId = null;\n }\n}\nexport function scheduleTimeout(fn, delay) {\n clearScheduled();\n delayId = window.setTimeout(() => {\n delayId = null;\n fn();\n }, delay);\n}","import { clearScheduled, scheduleTimeout } from './shared-schedule';\n\n// This file is a singleton for managing tooltips\n\nlet active = null;\nexport function show(entry) {\n let phase = 'waiting-to-show';\n function isActive() {\n return Boolean(active && active.entry === entry);\n }\n function cleanup() {\n if (isActive()) {\n clearScheduled();\n active = null;\n }\n }\n function done() {\n if (isActive()) {\n entry.done();\n }\n phase = 'done';\n cleanup();\n }\n function immediatelyHideAndDone() {\n if (isActive()) {\n entry.hide({\n isImmediate: true\n });\n }\n done();\n }\n function keep() {\n if (!isActive()) {\n return;\n }\n\n // aborting a wait to hide\n if (phase === 'waiting-to-hide') {\n phase = 'shown';\n clearScheduled();\n return;\n }\n\n // aborting hide animation\n if (phase === 'hide-animating') {\n phase = 'shown';\n clearScheduled();\n entry.show({\n isImmediate: false\n });\n return;\n }\n }\n function requestHide({\n isImmediate\n }) {\n if (!isActive()) {\n return;\n }\n\n // If we were not showing yet anyway; finish straight away\n if (phase === 'waiting-to-show') {\n immediatelyHideAndDone();\n return;\n }\n\n // already waiting to hide\n if (phase === 'waiting-to-hide') {\n return;\n }\n if (isImmediate) {\n immediatelyHideAndDone();\n return;\n }\n phase = 'waiting-to-hide';\n scheduleTimeout(() => {\n phase = 'hide-animating';\n entry.hide({\n isImmediate: false\n });\n }, entry.delay);\n }\n function finishHideAnimation() {\n if (isActive() && phase === 'hide-animating') {\n done();\n }\n }\n function isVisible() {\n return phase === 'shown' || phase === 'waiting-to-hide' || phase === 'hide-animating';\n }\n function getInitialMouse() {\n if (entry.source.type === 'mouse') {\n return entry.source.mouse;\n }\n return null;\n }\n function start() {\n const showImmediately = Boolean(active && active.isVisible());\n\n // If there was an active tooltip; we tell it to remove itself at once!\n if (active) {\n clearScheduled();\n active.entry.hide({\n isImmediate: true\n });\n active.entry.done();\n active = null;\n }\n\n // this tooltip is now the active tooltip\n active = {\n entry,\n isVisible\n };\n function show() {\n phase = 'shown';\n entry.show({\n isImmediate: showImmediately\n });\n }\n if (showImmediately) {\n show();\n return;\n }\n phase = 'waiting-to-show';\n scheduleTimeout(show, entry.delay);\n }\n // let's get started!\n start();\n const result = {\n keep,\n abort: cleanup,\n isActive,\n requestHide,\n finishHideAnimation,\n mousePosition: getInitialMouse()\n };\n return result;\n}","import { CHANNEL, DEFAULT_THEME_MODE, THEME_MODES } from '../constants';\n// Resolves the different types of theme objects in the current API\nexport default function getTheme(props) {\n if (props && props.theme) {\n // Theme is the global Atlaskit theme\n if (CHANNEL in props.theme) {\n return props.theme[CHANNEL];\n }\n // User has provided alternative modes\n else if ('mode' in props.theme && THEME_MODES.includes(props.theme.mode)) {\n return props.theme;\n }\n }\n // If format not supported (or no theme provided), return standard theme\n return {\n mode: DEFAULT_THEME_MODE\n };\n}","/* eslint-disable prefer-rest-params */\n\nimport getTheme from './get-theme';\n// Unpack custom variants, and get correct value for the current theme\nfunction themedVariants(variantProp, variants) {\n return props => {\n const theme = getTheme(props);\n if (props && props[variantProp] && variants) {\n const modes = variants[props[variantProp]];\n if (modes && modes[theme.mode]) {\n const value = modes[theme.mode];\n if (value) {\n return value;\n } // TS believes value can be undefined\n }\n }\n\n return '';\n };\n}\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-4693 Internal documentation for deprecation (no external access)}\n */\nexport default function themed(modesOrVariant, variantModes) {\n if (typeof modesOrVariant === 'string') {\n return themedVariants(modesOrVariant, variantModes);\n }\n const modes = modesOrVariant;\n return props => {\n // Get theme from the user's props\n const theme = getTheme(props);\n // User isn't required to provide both light and dark values\n if (theme.mode in modes) {\n const value = modes[theme.mode]; // TS believes value can be undefined\n if (value) {\n return value;\n }\n }\n return '';\n };\n}","/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n\nimport themed from './utils/themed';\n\n// Reds\nexport const R50 = '#FFEBE6';\nexport const R75 = '#FFBDAD';\nexport const R100 = '#FF8F73';\nexport const R200 = '#FF7452';\nexport const R300 = '#FF5630';\nexport const R400 = '#DE350B';\nexport const R500 = '#BF2600';\n\n// Yellows\nexport const Y50 = '#FFFAE6';\nexport const Y75 = '#FFF0B3';\nexport const Y100 = '#FFE380';\nexport const Y200 = '#FFC400';\nexport const Y300 = '#FFAB00';\nexport const Y400 = '#FF991F';\nexport const Y500 = '#FF8B00';\n\n// Greens\nexport const G50 = '#E3FCEF';\nexport const G75 = '#ABF5D1';\nexport const G100 = '#79F2C0';\nexport const G200 = '#57D9A3';\nexport const G300 = '#36B37E';\nexport const G400 = '#00875A';\nexport const G500 = '#006644';\n\n// Blues\nexport const B50 = '#DEEBFF';\nexport const B75 = '#B3D4FF';\nexport const B100 = '#4C9AFF';\nexport const B200 = '#2684FF';\nexport const B300 = '#0065FF';\nexport const B400 = '#0052CC';\nexport const B500 = '#0747A6';\n\n// Purples\nexport const P50 = '#EAE6FF';\nexport const P75 = '#C0B6F2';\nexport const P100 = '#998DD9';\nexport const P200 = '#8777D9';\nexport const P300 = '#6554C0';\nexport const P400 = '#5243AA';\nexport const P500 = '#403294';\n\n// Teals\nexport const T50 = '#E6FCFF';\nexport const T75 = '#B3F5FF';\nexport const T100 = '#79E2F2';\nexport const T200 = '#00C7E6';\nexport const T300 = '#00B8D9';\nexport const T400 = '#00A3BF';\nexport const T500 = '#008DA6';\n\n// Neutrals\nexport const N0 = '#FFFFFF';\nexport const N10 = '#FAFBFC';\nexport const N20 = '#F4F5F7';\nexport const N30 = '#EBECF0';\nexport const N40 = '#DFE1E6';\nexport const N50 = '#C1C7D0';\nexport const N60 = '#B3BAC5';\nexport const N70 = '#A5ADBA';\nexport const N80 = '#97A0AF';\nexport const N90 = '#8993A4';\nexport const N100 = '#7A869A';\nexport const N200 = '#6B778C';\nexport const N300 = '#5E6C84';\nexport const N400 = '#505F79';\nexport const N500 = '#42526E';\nexport const N600 = '#344563';\nexport const N700 = '#253858';\nexport const N800 = '#172B4D';\n\n// ATTENTION: update the tints if you update this\nexport const N900 = '#091E42';\n\n// Each tint is made of N900 and an alpha channel\nexport const N10A = 'rgba(9, 30, 66, 0.02)';\nexport const N20A = 'rgba(9, 30, 66, 0.04)';\nexport const N30A = 'rgba(9, 30, 66, 0.08)';\nexport const N40A = 'rgba(9, 30, 66, 0.13)';\nexport const N50A = 'rgba(9, 30, 66, 0.25)';\nexport const N60A = 'rgba(9, 30, 66, 0.31)';\nexport const N70A = 'rgba(9, 30, 66, 0.36)';\nexport const N80A = 'rgba(9, 30, 66, 0.42)';\nexport const N90A = 'rgba(9, 30, 66, 0.48)';\nexport const N100A = 'rgba(9, 30, 66, 0.54)';\nexport const N200A = 'rgba(9, 30, 66, 0.60)';\nexport const N300A = 'rgba(9, 30, 66, 0.66)';\nexport const N400A = 'rgba(9, 30, 66, 0.71)';\nexport const N500A = 'rgba(9, 30, 66, 0.77)';\nexport const N600A = 'rgba(9, 30, 66, 0.82)';\nexport const N700A = 'rgba(9, 30, 66, 0.89)';\nexport const N800A = 'rgba(9, 30, 66, 0.95)';\n\n// Dark Mode Neutrals\nexport const DN900 = '#E6EDFA';\nexport const DN800 = '#DCE5F5';\nexport const DN700 = '#CED9EB';\nexport const DN600 = '#B8C7E0';\nexport const DN500 = '#ABBBD6';\nexport const DN400 = '#9FB0CC';\nexport const DN300 = '#8C9CB8';\nexport const DN200 = '#7988A3';\nexport const DN100 = '#67758F';\nexport const DN90 = '#56637A';\nexport const DN80 = '#455166';\nexport const DN70 = '#3B475C';\nexport const DN60 = '#313D52';\nexport const DN50 = '#283447';\nexport const DN40 = '#202B3D';\nexport const DN30 = '#1B2638';\nexport const DN20 = '#121A29';\nexport const DN10 = '#0E1624';\n\n// ATTENTION: update the tints if you update this\nexport const DN0 = '#0D1424';\n\n// Each dark tint is made of DN0 and an alpha channel\nexport const DN800A = 'rgba(13, 20, 36, 0.06)';\nexport const DN700A = 'rgba(13, 20, 36, 0.14)';\nexport const DN600A = 'rgba(13, 20, 36, 0.18)';\nexport const DN500A = 'rgba(13, 20, 36, 0.29)';\nexport const DN400A = 'rgba(13, 20, 36, 0.36)';\nexport const DN300A = 'rgba(13, 20, 36, 0.40)';\nexport const DN200A = 'rgba(13, 20, 36, 0.47)';\nexport const DN100A = 'rgba(13, 20, 36, 0.53)';\nexport const DN90A = 'rgba(13, 20, 36, 0.63)';\nexport const DN80A = 'rgba(13, 20, 36, 0.73)';\nexport const DN70A = 'rgba(13, 20, 36, 0.78)';\nexport const DN60A = 'rgba(13, 20, 36, 0.81)';\nexport const DN50A = 'rgba(13, 20, 36, 0.85)';\nexport const DN40A = 'rgba(13, 20, 36, 0.89)';\nexport const DN30A = 'rgba(13, 20, 36, 0.92)';\nexport const DN20A = 'rgba(13, 20, 36, 0.95)';\nexport const DN10A = 'rgba(13, 20, 36, 0.97)';\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface')` instead.\n */\nexport const background = themed({\n light: `var(--ds-surface, ${N0})`,\n dark: `var(--ds-surface, ${DN30})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.selected')` instead.\n */\nexport const backgroundActive = themed({\n light: `var(--ds-background-selected, ${B50})`,\n dark: `var(--ds-background-selected, ${B75})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.neutral.hovered')` instead.\n */\nexport const backgroundHover = themed({\n light: `var(--ds-background-neutral-hovered, ${N30})`,\n dark: `var(--ds-background-neutral-hovered, ${DN70})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('elevation.surface.overlay')` instead.\n */\nexport const backgroundOnLayer = themed({\n light: `var(--ds-surface-overlay, ${N0})`,\n dark: `var(--ds-surface-overlay, ${DN50})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const text = themed({\n light: `var(--ds-text, ${N900})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const textHover = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.selected')` instead.\n */\nexport const textActive = themed({\n light: `var(--ds-text-selected, ${B400})`,\n dark: `var(--ds-text-selected, ${B400})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use token('color.text.subtlest', N200) instead. Use DN200 as the fallback color for dark mode.\n */\nexport const placeholderText = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text')` instead.\n */\nexport const heading = themed({\n light: `var(--ds-text, ${N800})`,\n dark: `var(--ds-text, ${DN600})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.text.subtlest')` instead.\n */\nexport const subtleHeading = themed({\n light: `var(--ds-text-subtlest, ${N200})`,\n dark: `var(--ds-text-subtlest, ${DN300})`\n});\nexport const codeBlock = themed({\n light: N20,\n dark: DN50\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link')` instead.\n */\nexport const link = themed({\n light: `var(--ds-link, ${B400})`,\n dark: `var(--ds-link, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkHover = themed({\n light: `var(--ds-link-pressed, ${B300})`,\n dark: `var(--ds-link-pressed, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.link.pressed')` instead.\n */\nexport const linkActive = themed({\n light: `var(--ds-link-pressed, ${B500})`,\n dark: `var(--ds-link-pressed, ${B100})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.border.focused', B200)` instead.\n */\nexport const linkOutline = themed({\n light: `var(--ds-border-focused, ${B200})`,\n dark: `var(--ds-border-focused, ${B200})`\n});\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.background.brand.bold')` instead.\n */\nexport const primary = themed({\n light: `var(--ds-background-brand-bold, ${B400})`,\n dark: `var(--ds-background-brand-bold, ${B100})`\n});\nexport const blue = themed({\n light: B400,\n dark: B100\n});\nexport const teal = themed({\n light: T300,\n dark: T200\n});\nexport const purple = themed({\n light: P300,\n dark: P100\n});\nexport const red = themed({\n light: R300,\n dark: R300\n});\nexport const yellow = themed({\n light: Y300,\n dark: Y300\n});\nexport const green = themed({\n light: G300,\n dark: G300\n});\n\n/**\n * @deprecated {@link https://hello.atlassian.net/browse/ENGHEALTH-386 Internal documentation for deprecation (no external access)}\n * @deprecated use `token('color.skeleton')` instead.\n */\nexport const skeleton = () => `var(--ds-skeleton, ${N20A})`;","import { createTheme } from '../utils/create-theme';\n\n// Create default global light theme\nconst {\n Provider,\n Consumer,\n useTheme\n} = createTheme(() => ({\n mode: 'light'\n}));\nexport { useTheme as useGlobalTheme };\nexport default {\n Provider,\n Consumer\n};","import React, { createContext, useCallback, useContext } from 'react';\n/**\n * createTheme is used to create a set of Providers and Consumers for theming components.\n * - Takes a default theme function; this theme function gets a set of props, and returns tokens\n * based on those props. An example of this default theme function is one that produces the standard\n * appearance of the component\n * - Returns three things - a Provider that allow for additional themes to be applied, a Consumer\n * that can get the current theme and fetch it, and a custom hook - useTheme which provides an alternate (although functionally the same) API\n * to the Consumer.\n */\nexport function createTheme(defaultGetTokens) {\n const emptyThemeFn = (getTokens, props) => getTokens(props);\n\n /**\n * Internally, Theme uses React Context, with internal providers and consumers.\n * The React Context passes only a function that gets props, and turns them into tokens. This\n * function gets mixed as more Providers with their own themes are added. This mixed function\n * is ultimately picked up by Consumers, which implement a context consumer internally to fetch\n * the theme.\n */\n const ThemeContext = /*#__PURE__*/createContext(defaultGetTokens);\n function useTheme(themeProps) {\n const theme = useContext(ThemeContext);\n const themeFn = theme || emptyThemeFn;\n const tokens = themeFn(themeProps);\n return tokens;\n }\n\n // The Theme Consumer takes a function as its child - this function takes tokens, and the\n // return value is generally a set of nodes with the tokens applied appropriately.\n function Consumer(props) {\n const {\n children,\n ...themeProps\n } = props;\n\n // @ts-ignore See issue for more info: https://github.com/Microsoft/TypeScript/issues/10727\n // Argument of type 'Pick ReactNode; }, Exclude>' is not assignable to parameter of type 'ThemeProps'.ts(2345)\n const tokens = useTheme(themeProps);\n // We add a fragment to ensure we don't break people upgrading.\n // Previously they may have been able to pass in undefined without things blowing up.\n return /*#__PURE__*/React.createElement(React.Fragment, null, children(tokens));\n }\n\n /**\n * The Theme Provider takes regular nodes as its children, but also takes a *theme function*\n * - The theme function takes a set of props, as well as a function (getTokens) that can turn props into tokens.\n * - The getTokens function isn't called immediately - instead the props are passed\n * through a mix of parent theming functions\n * Children of this provider will receive this mixed theme\n */\n function Provider(props) {\n const themeFn = useContext(ThemeContext);\n const valueFn = props.value || emptyThemeFn;\n const mixedFn = useCallback(themeProps => valueFn(themeFn, themeProps), [themeFn, valueFn]);\n return /*#__PURE__*/React.createElement(ThemeContext.Provider, {\n value: mixedFn\n }, props.children);\n }\n return {\n Consumer,\n Provider,\n useTheme\n };\n}","/** @jsx jsx */\nimport { forwardRef } from 'react';\nimport { css, jsx } from '@emotion/react';\nimport { DN0, DN600, N0, N800 } from '@atlaskit/theme/colors';\nimport GlobalTheme from '@atlaskit/theme/components';\nimport TooltipPrimitive from './TooltipPrimitive';\nconst baseStyles = css({\n boxSizing: 'border-box',\n maxWidth: '240px',\n padding: `${\"var(--ds-space-025, 2px)\"} ${\"var(--ds-space-075, 6px)\"}`,\n top: \"var(--ds-space-0, 0px)\",\n left: \"var(--ds-space-0, 0px)\",\n borderRadius: \"var(--ds-radius-100, 3px)\",\n fontSize: \"var(--ds-font-size-075, 12px)\",\n lineHeight: 1.3,\n overflowWrap: 'break-word',\n wordWrap: 'break-word'\n});\nconst truncateStyles = css({\n maxWidth: '420px',\n overflow: 'hidden',\n textOverflow: 'ellipsis',\n whiteSpace: 'nowrap'\n});\nconst lightStyles = css({\n backgroundColor: `var(--ds-background-neutral-bold, ${N800})`,\n color: `var(--ds-text-inverse, ${N0})`\n});\nconst darkStyles = css({\n backgroundColor: `var(--ds-background-neutral-bold, ${DN0})`,\n color: `var(--ds-text-inverse, ${DN600})`\n});\nconst TooltipContainer = /*#__PURE__*/forwardRef(function TooltipContainer({\n style,\n className,\n children,\n truncate,\n placement,\n testId,\n onMouseOut,\n onMouseOver,\n id\n}, ref) {\n return jsx(GlobalTheme.Consumer, null, ({\n mode\n }) =>\n // eslint-disable-next-line jsx-a11y/mouse-events-have-key-events\n jsx(TooltipPrimitive, {\n ref: ref,\n style: style,\n className: className,\n placement: placement,\n testId: testId,\n id: id,\n onMouseOut: onMouseOut,\n onMouseOver: onMouseOver,\n css: [baseStyles, truncate ? truncateStyles : null, mode === 'light' ? lightStyles : darkStyles]\n }, children));\n});\nTooltipContainer.displayName = 'TooltipContainer';\nexport default TooltipContainer;","export function getMousePosition(mouseCoordinates) {\n const safeMouse = mouseCoordinates || {\n top: 0,\n left: 0\n };\n const getBoundingClientRect = () => ({\n top: safeMouse.top,\n left: safeMouse.left,\n bottom: safeMouse.top,\n right: safeMouse.left,\n width: 0,\n height: 0\n });\n return {\n getBoundingClientRect,\n clientWidth: 0,\n clientHeight: 0\n };\n}","import _extends from \"@babel/runtime/helpers/extends\";\n/** @jsx jsx */\n\nimport React, { useCallback, useEffect, useRef, useState } from 'react';\nimport { jsx } from '@emotion/react';\nimport { bind } from 'bind-event-listener';\nimport { usePlatformLeafSyntheticEventHandler } from '@atlaskit/analytics-next';\nimport noop from '@atlaskit/ds-lib/noop';\nimport useCloseOnEscapePress from '@atlaskit/ds-lib/use-close-on-escape-press';\nimport { ExitingPersistence, FadeIn } from '@atlaskit/motion';\nimport { mediumDurationMs } from '@atlaskit/motion/durations';\nimport { Popper } from '@atlaskit/popper';\nimport Portal from '@atlaskit/portal';\nimport { layers } from '@atlaskit/theme/constants';\nimport { show } from './internal/tooltip-manager';\nimport useUniqueId from './internal/use-unique-id';\nimport TooltipContainer from './TooltipContainer';\nimport { getMousePosition } from './utilities';\nconst tooltipZIndex = layers.tooltip();\nconst analyticsAttributes = {\n componentName: 'tooltip',\n packageName: \"@atlaskit/tooltip\",\n packageVersion: \"17.8.2\"\n};\n\n// Inverts motion direction\nconst invertedDirection = {\n top: 'bottom',\n bottom: 'top',\n left: 'right',\n right: 'left'\n};\n\n/**\n * Converts a Popper placement to it's general direction.\n *\n * @param position - Popper Placement value, e.g. 'top-start'\n * @returns Popper Direction, e.g. 'top'\n */\nconst getDirectionFromPlacement = placement => placement.split('-')[0];\nfunction Tooltip({\n children,\n position = 'bottom',\n mousePosition = 'bottom',\n content,\n truncate = false,\n component: Container = TooltipContainer,\n tag: TargetContainer = 'div',\n testId,\n delay = 300,\n onShow = noop,\n onHide = noop,\n hideTooltipOnClick = false,\n hideTooltipOnMouseDown = false,\n analyticsContext,\n strategy = 'fixed'\n}) {\n const tooltipPosition = position === 'mouse' ? mousePosition : position;\n const onShowHandler = usePlatformLeafSyntheticEventHandler({\n fn: onShow,\n action: 'displayed',\n analyticsData: analyticsContext,\n ...analyticsAttributes\n });\n const onHideHandler = usePlatformLeafSyntheticEventHandler({\n fn: onHide,\n action: 'hidden',\n analyticsData: analyticsContext,\n ...analyticsAttributes\n });\n const apiRef = useRef(null);\n const [state, setState] = useState('hide');\n const targetRef = useRef(null);\n const containerRef = useRef(null);\n const setRef = useCallback(node => {\n if (!node) {\n return;\n }\n if (typeof children === 'function') {\n // @ts-ignore - React Ref typing is too strict for this use case\n targetRef.current = node;\n } else {\n // @ts-ignore - React Ref typing is too strict for this use case\n containerRef.current = node;\n // @ts-ignore - React Ref typing is too strict for this use case\n targetRef.current = node.firstChild;\n }\n }, [children]);\n\n // Putting a few things into refs so that we don't have to break memoization\n const lastState = useRef(state);\n const lastDelay = useRef(delay);\n const lastHandlers = useRef({\n onShowHandler,\n onHideHandler\n });\n const hasCalledShowHandler = useRef(false);\n useEffect(() => {\n lastState.current = state;\n lastDelay.current = delay;\n lastHandlers.current = {\n onShowHandler,\n onHideHandler\n };\n }, [delay, onHideHandler, onShowHandler, state]);\n const start = useCallback(api => {\n // @ts-ignore\n apiRef.current = api;\n hasCalledShowHandler.current = false;\n }, []);\n const done = useCallback(() => {\n if (!apiRef.current) {\n return;\n }\n // Only call onHideHandler if we have called onShowHandler\n if (hasCalledShowHandler.current) {\n lastHandlers.current.onHideHandler();\n }\n // @ts-ignore\n apiRef.current = null;\n // @ts-ignore\n hasCalledShowHandler.current = false;\n // just in case\n setState('hide');\n }, []);\n const abort = useCallback(() => {\n if (!apiRef.current) {\n return;\n }\n apiRef.current.abort();\n // Only call onHideHandler if we have called onShowHandler\n if (hasCalledShowHandler.current) {\n lastHandlers.current.onHideHandler();\n }\n // @ts-ignore\n apiRef.current = null;\n }, []);\n useEffect(function mount() {\n return function unmount() {\n if (apiRef.current) {\n abort();\n }\n };\n }, [abort]);\n const showTooltip = useCallback(source => {\n if (apiRef.current && !apiRef.current.isActive()) {\n abort();\n }\n\n // Tell the tooltip to keep showing\n if (apiRef.current && apiRef.current.isActive()) {\n apiRef.current.keep();\n return;\n }\n const entry = {\n source,\n delay: lastDelay.current,\n show: ({\n isImmediate\n }) => {\n // Call the onShow handler if it hasn't been called yet\n if (!hasCalledShowHandler.current) {\n hasCalledShowHandler.current = true;\n lastHandlers.current.onShowHandler();\n }\n setState(isImmediate ? 'show-immediate' : 'fade-in');\n },\n hide: ({\n isImmediate\n }) => {\n if (isImmediate) {\n setState('hide');\n } else {\n setState('before-fade-out');\n }\n },\n done: done\n };\n const api = show(entry);\n start(api);\n }, [abort, done, start]);\n const hideTooltipOnEsc = useCallback(() => {\n var _apiRef$current;\n (_apiRef$current = apiRef.current) === null || _apiRef$current === void 0 ? void 0 : _apiRef$current.requestHide({\n isImmediate: true\n });\n }, [apiRef]);\n useCloseOnEscapePress({\n onClose: hideTooltipOnEsc,\n isDisabled: state === 'hide' || state === 'fade-out'\n });\n useEffect(() => {\n if (state === 'hide') {\n return noop;\n }\n if (state === 'before-fade-out') {\n setState('fade-out');\n }\n const unbind = bind(window, {\n type: 'scroll',\n listener: () => {\n if (apiRef.current) {\n apiRef.current.requestHide({\n isImmediate: true\n });\n }\n },\n options: {\n capture: true,\n passive: true,\n once: true\n }\n });\n return unbind;\n }, [state]);\n const onMouseDown = useCallback(() => {\n if (hideTooltipOnMouseDown && apiRef.current) {\n apiRef.current.requestHide({\n isImmediate: true\n });\n }\n }, [hideTooltipOnMouseDown]);\n const onClick = useCallback(() => {\n if (hideTooltipOnClick && apiRef.current) {\n apiRef.current.requestHide({\n isImmediate: true\n });\n }\n }, [hideTooltipOnClick]);\n\n // Ideally we would be using onMouseEnter here, but\n // because we are binding the event to the target parent\n // we need to listen for the mouseover of all sub elements\n // This means when moving along a tooltip we are quickly toggling\n // between api.requestHide and api.keep. This it not ideal\n const onMouseOver = useCallback(event => {\n // Ignoring events from the container ref\n if (containerRef.current && event.target === containerRef.current) {\n return;\n }\n\n // Using prevent default as a signal that parent tooltips\n if (event.defaultPrevented) {\n return;\n }\n event.preventDefault();\n const source = position === 'mouse' ? {\n type: 'mouse',\n // TODO: ideally not recalculating this object each time\n mouse: getMousePosition({\n left: event.clientX,\n top: event.clientY\n })\n } : {\n type: 'keyboard'\n };\n showTooltip(source);\n }, [position, showTooltip]);\n\n // Ideally we would be using onMouseEnter here, but\n // because we are binding the event to the target parent\n // we need to listen for the mouseout of all sub elements\n // This means when moving along a tooltip we are quickly toggling\n // between api.requestHide and api.keep. This it not ideal\n const onMouseOut = useCallback(event => {\n // Ignoring events from the container ref\n if (containerRef.current && event.target === containerRef.current) {\n return;\n }\n\n // Using prevent default as a signal that parent tooltips\n if (event.defaultPrevented) {\n return;\n }\n event.preventDefault();\n if (apiRef.current) {\n apiRef.current.requestHide({\n isImmediate: false\n });\n }\n }, []);\n const onMouseMove = position === 'mouse' ? event => {\n var _apiRef$current2;\n if ((_apiRef$current2 = apiRef.current) !== null && _apiRef$current2 !== void 0 && _apiRef$current2.isActive()) {\n apiRef.current.mousePosition = getMousePosition({\n left: event.clientX,\n top: event.clientY\n });\n }\n } : undefined;\n const onMouseOverTooltip = useCallback(() => {\n if (apiRef.current && apiRef.current.isActive()) {\n apiRef.current.keep();\n return;\n }\n }, []);\n const onFocus = useCallback(() => {\n showTooltip({\n type: 'keyboard'\n });\n }, [showTooltip]);\n const onBlur = useCallback(() => {\n if (apiRef.current) {\n apiRef.current.requestHide({\n isImmediate: false\n });\n }\n }, []);\n const onAnimationFinished = useCallback(transition => {\n // Using lastState here because motion is not picking up the latest value\n if (transition === 'exiting' && lastState.current === 'fade-out' && apiRef.current) {\n // @ts-ignore: refs are writeable\n apiRef.current.finishHideAnimation();\n }\n }, []);\n\n // Doing a cast because typescript is struggling to narrow the type\n const CastTargetContainer = TargetContainer;\n const shouldRenderTooltipContainer = state !== 'hide' && Boolean(content);\n const shouldRenderTooltipChildren = state !== 'hide' && state !== 'fade-out';\n const getReferenceElement = () => {\n var _apiRef$current3;\n if (position === 'mouse' && (_apiRef$current3 = apiRef.current) !== null && _apiRef$current3 !== void 0 && _apiRef$current3.mousePosition) {\n var _apiRef$current4;\n return (_apiRef$current4 = apiRef.current) === null || _apiRef$current4 === void 0 ? void 0 : _apiRef$current4.mousePosition;\n }\n return targetRef.current || undefined;\n };\n const tooltipId = useUniqueId('tooltip', shouldRenderTooltipContainer);\n const tooltipTriggerProps = {\n onMouseOver,\n onMouseOut,\n onMouseMove,\n onMouseDown,\n onClick,\n onFocus,\n onBlur,\n ref: setRef\n };\n\n // Don't set `data-testid` unless it's defined, as it's not in the interface.\n if (testId) {\n // @ts-expect-error - Adding `data-testid` to the TriggerProps interface breaks Buttons.\n tooltipTriggerProps['data-testid'] = `${testId}--container`;\n }\n\n // This useEffect is purely for managing the aria attribute when using the\n // wrapped children approach.\n useEffect(() => {\n // If there is no container element, we should exit early, because that\n // means they are using the render prop API, and that is implemented in a\n // different way. If there is no target element yet or tooltipId, we also\n // shouldn't do anything because there is nothing to operate on or with.\n if (!containerRef.current || !targetRef.current || !tooltipId) {\n return;\n }\n\n // Necessary for TS to know that it has the attribute methods\n const target = targetRef.current;\n if (shouldRenderTooltipContainer) {\n target.setAttribute('aria-describedby', tooltipId);\n } else {\n target.removeAttribute('aria-describedby');\n }\n }, [shouldRenderTooltipContainer, tooltipId]);\n return jsx(React.Fragment, null, typeof children === 'function' ?\n // once we deprecate the wrapped approach, we can put the aria\n // attribute back into the tooltipTriggerProps and make it required\n // instead of optional in `types`\n children({\n ...tooltipTriggerProps,\n 'aria-describedby': tooltipId\n }) : jsx(CastTargetContainer, _extends({}, tooltipTriggerProps, {\n role: \"presentation\"\n }), children), shouldRenderTooltipContainer ? jsx(Portal, {\n zIndex: tooltipZIndex\n }, jsx(Popper, {\n placement: tooltipPosition,\n referenceElement: getReferenceElement(),\n strategy: strategy\n }, ({\n ref,\n style,\n update,\n placement\n }) => {\n // Invert the entrance and exit directions.\n // E.g. a tooltip's position is on the 'right', it should enter from and exit to the 'left'\n // This gives the effect the tooltip is appearing from the target\n const direction = position === 'mouse' ? undefined : invertedDirection[getDirectionFromPlacement(placement)];\n return jsx(ExitingPersistence, {\n appear: true\n }, shouldRenderTooltipChildren && jsx(FadeIn, {\n distance: \"constant\",\n entranceDirection: direction,\n exitDirection: direction,\n onFinish: onAnimationFinished,\n duration: state === 'show-immediate' ? 0 : mediumDurationMs\n }, ({\n className\n }) =>\n // eslint-disable-next-line jsx-a11y/mouse-events-have-key-events\n jsx(Container, {\n ref: ref\n /**\n * \"Tooltip\" classname is a hook used by tests to manipulate\n * and hide tooltips, including in VR snapshots\n **/,\n className: `Tooltip ${className}`,\n style: style,\n truncate: truncate,\n placement: tooltipPosition,\n testId: testId,\n onMouseOut: onMouseOut,\n onMouseOver: onMouseOverTooltip,\n id: tooltipId\n }, typeof content === 'function' ? content({\n update\n }) : content)));\n })) : null);\n}\nTooltip.displayName = 'Tooltip';\nexport default Tooltip;","import { useUIDSeed } from 'react-uid';\nexport default function useUniqueId(prefix, shouldRenderId) {\n const seed = useUIDSeed();\n return shouldRenderId ? `${seed(prefix)}` : undefined;\n}","import Tooltip from '@atlaskit/tooltip';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport React from 'react';\nimport { useSignUpFormUIState } from '../../../../../hook';\nimport { messages } from '../../../../../messages';\nimport { TooltipDialog } from './styled';\n\nexport function EulaComponent() {\n const { isBeacon } = useSignUpFormUIState();\n if (isBeacon) {\n return (\n

    \n \n \n }\n >\n  ⓘ\n \n

    \n );\n }\n\n return ;\n}\n","/**\n *\n * @param contextString input\n * @returns string with only alphanumeric, dashes or underscores chars\n */\nexport const sanitizeCustomSignupContext = (contextString: string): string => {\n return contextString.toLowerCase().replace(/[^a-z0-9-_]/g, '');\n};\n","import { IStargateClient } from '@atlassiansox/asc-stargate';\nimport { Environment, useStargateClient } from '@atlassiansox/bxpkit-core';\nimport { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next';\nimport { v4 as generateUuid } from 'uuid';\nimport {\n BITBUCKET_ANALYTICS_EVENTS,\n logBitbucketAnalytics\n} from './bitbucket-analytics';\n\nexport type PollForOrgCreationSuccessArgs = {\n readonly progressUri: string;\n readonly createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\n\nexport type CreateAccountOrgArgs = {\n orgDisplayName: string;\n stargateClient: IStargateClient;\n createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\n\nexport type CheckBitbucketWorkspaceSlugAvailabilityArgs = {\n readonly workspaceSlug: string;\n readonly stargateClient: IStargateClient;\n};\n\nexport const handleOrgCreate = async ({\n orgDisplayName,\n createAnalyticsEvent,\n stargateClient = useStargateClient()\n}: CreateAccountOrgArgs): Promise => {\n const orgCreateResponse = await stargateClient\n .cofsCreateOrg({ orgDisplayName })\n .then(({ orgId, progressUri }) => {\n const orgStatusUri = progressUri.split('/organization/')[1];\n // convert the polling call to originate from wac\n const pollUrl = `${Environment.getWacIntegrationUrl()}/gateway/api/cofs/${orgStatusUri}`;\n return { orgId, progressUri: pollUrl };\n })\n .catch((error) => {\n logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics: {\n event: `${BITBUCKET_ANALYTICS_EVENTS.ORG_CREATE} provisioned`,\n eventType: 'operational',\n action: 'errored',\n attributes: {\n errorCode: error?.response?.status,\n errorMessage: error?.message\n }\n }\n });\n return null;\n });\n\n if (!orgCreateResponse) {\n return null;\n }\n\n const { orgId, progressUri } = orgCreateResponse;\n\n const provisioningSuccess = await handlePollOrgCreation({\n progressUri,\n createAnalyticsEvent\n }).catch((error) => {\n logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics: {\n event: `${BITBUCKET_ANALYTICS_EVENTS.ORG_CREATE_STATUS} polled`,\n eventType: 'operational',\n action: 'errored',\n attributes: {\n errorCode: error?.response?.status,\n errorMessage: error?.message\n }\n }\n });\n return false;\n });\n\n logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics: {\n event: `${BITBUCKET_ANALYTICS_EVENTS.ORG_CREATE} provisioned`,\n eventType: 'operational',\n action: 'succeeded'\n }\n });\n\n return provisioningSuccess ? orgId : null;\n};\n\nexport async function handlePollOrgCreation({\n progressUri,\n createAnalyticsEvent\n}: PollForOrgCreationSuccessArgs) {\n let secondsPassed = 0;\n\n return new Promise((resolve, reject) => {\n const poll = setInterval(async () => {\n secondsPassed++;\n\n if (secondsPassed === 120) {\n logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics: {\n event: `${BITBUCKET_ANALYTICS_EVENTS.ORG_CREATE_STATUS} polled`,\n eventType: 'operational',\n action: 'errored',\n attributes: {\n errorMessage: 'Error timeout exceeded'\n }\n }\n });\n clearInterval(poll);\n reject('Error timeout exceeded');\n }\n\n const resp = await fetch(`${progressUri}`, {\n method: 'GET',\n headers: {\n 'Content-Type': 'application/json'\n },\n credentials: 'include'\n })\n .then((res) => res.json())\n .catch((error) => {\n logBitbucketAnalytics({\n createAnalyticsEvent,\n analytics: {\n event: `${BITBUCKET_ANALYTICS_EVENTS.ORG_CREATE_STATUS} polled`,\n eventType: 'operational',\n action: 'errored',\n attributes: {\n errorCode: error?.response?.status,\n errorMessage: error?.message\n }\n }\n });\n return { completed: false };\n });\n\n if (resp.completed) {\n clearInterval(poll);\n\n if (resp.successful) {\n resolve(true);\n } else {\n resolve(false);\n }\n }\n }, 1000);\n });\n}\n\nexport async function checkBitbucketWorkspaceSlugAvailability({\n workspaceSlug,\n stargateClient = useStargateClient()\n}: CheckBitbucketWorkspaceSlugAvailabilityArgs): Promise {\n return await stargateClient\n .bitbucketValidateWorkspaceSlug({\n workspaceSlug\n })\n .then(({ new_ari }) => new_ari);\n}\n\nexport function generateBitbucketWorkspaceId(): string {\n return `ari:cloud:bitbucket::workspace/${generateUuid()}`;\n}\n","import { useAnalyticsEvents } from '@atlaskit/analytics-next';\nimport Button from '@atlaskit/button';\nimport { Checkbox } from '@atlaskit/checkbox';\nimport TextField from '@atlaskit/textfield';\nimport {\n AppKey,\n Environment,\n MarieSchemaAnalytics,\n OfferingCatalog,\n SanitizedFormattedHtmlMessage,\n Url,\n useBXPExpressClient,\n useStargateClient,\n Storage\n} from '@atlassiansox/bxpkit-core';\nimport { Base64 } from 'js-base64';\nimport { useAppSelector } from '../../../../redux';\nimport {\n trackActivateProductsSubmit,\n trackDeferSitenameSignups,\n trackFormSubmit,\n trackN2ESubmit,\n trackN2ESubmit2,\n trackRecaptchaError,\n trackSignupButtonClicked,\n trackSignupContextTooLarge,\n trackSignUpFormSubmitFailed,\n trackSignUpFormSubmitSucceeded,\n trackSubmitWithCaptcha,\n trackErrorParsingAnchorJourneyCookie\n} from '../../../../service/sign-up-form/analytics';\nimport { checkProductEdition } from '../../../../service/sign-up-form/product-edition';\nimport _ from 'lodash';\nimport React, { useContext, useEffect, useState } from 'react';\nimport { useGoogleReCaptcha } from 'react-google-recaptcha-v3';\nimport { FormattedMessage, injectIntl } from 'react-intl';\nimport {\n getTranslatableError,\n messages\n} from '../../../../messages/sign-up-form';\nimport {\n HandleSubmitType,\n Product,\n ProductKeys,\n ProductPayloadObject,\n Sites,\n SubmitErrorIDType,\n SubmitErrorType,\n WacSignupFormWithIntlProps\n} from '../../../../model/wac-signup-form';\nimport { createSolutionStatsEvent } from '../../../../service/sign-up-form/analytics';\nimport {\n FormPayloadActivateProducts,\n formSubmitN2N,\n isTestTenantByName,\n pollForSuccess\n} from '../../../../service/sign-up-form/form-submit';\nimport {\n checkBreachStatus,\n productsCanBeInBreachOfFree\n} from '../../../../service/sign-up-form/free-breach';\nimport { CheckEmailPage } from '../check-email-page';\nimport {\n BitbucketOrganizationPicker,\n shouldRenderBitbucketOrgPicker\n} from './components/bitbucket-organization-picker';\nimport {\n BitbucketAccountPicker,\n BitbucketJiraInfoBox,\n BreachInfoBox,\n DisplayNameField,\n EmailField,\n GdprLocation,\n InfoBox,\n MigrationSource,\n SiteNameField,\n SitePickerField,\n SubmitButton\n} from './components';\nimport { CarouselEnd } from './components/carousel-end';\nimport { FormWelcomeMessage } from './components/form-welcome-message';\nimport {\n ErrorMessageWithDefaultClassName,\n Eula,\n EulaChooseSignup,\n EulaDefaultExpandedEmail,\n MarketingConsent,\n NoCard,\n NoCardDefaultExpandedEmail,\n ReCaptchaEula,\n ReCaptchaEulaDefaultExpandedEmail,\n ResendEmailContainer,\n WacSignupFormContainer,\n WelcomeDiv,\n InputSiteNameMessage,\n BitbucketFieldsContainer,\n FieldLabel,\n WorkspaceIdPrefix,\n TextFieldWrapper,\n HelperMessageContainer,\n OrgPickerElementMargin,\n OrgProvisioningProgressContainer,\n CCPSiteMigrationContainer\n} from './components/styled';\n\nimport {\n useSignUpFormConfig,\n useSignUpFormGlobalConfiguration,\n useSignUpFormUIState,\n useSiteNameGeneration\n} from '../../../../hook';\n\nimport { isNotUndefined } from '@atlassiansox/bxp-shared-utils';\nimport { useDeferSitenameExposed } from '../../../../hook/use-defer-sitename-exposed';\nimport { getDeferSitenameExperimentCohort } from '../utility/get-defer-sitename-experiment-cohort';\nimport { nextUrl } from '../utility/new-url';\nimport { EulaComponent } from './components/eula-component';\nimport {\n getRedirectUrlFromShadowItError,\n isResponseError\n} from '../../../../utility';\nimport Cookies from 'js-cookie';\nimport { useExperiment } from '@atlassiansox/bxp-web-statsig-client';\nimport { sanitizeCustomSignupContext } from '../../../../utility/sanitize-custom-signup-context';\nimport {\n checkBitbucketWorkspaceSlugAvailability,\n generateBitbucketWorkspaceId,\n handleOrgCreate\n} from '../../../../service/sign-up-form/bitbucket-form-submit';\nimport { trackBitbucketWorkspaceProvFailure } from '../../../../service/sign-up-form/bitbucket-analytics';\nimport { default as AKButton } from '@atlaskit/button';\n\nconst offeringCatalog = new OfferingCatalog(Environment.getEnvironment());\n\nfunction getOpsgenieAdvancedSettings(dataRegion?: string | null) {\n return {\n advancedSettings: {\n additionalProvisioningData: {\n dataRegion: dataRegion === 'EU' ? 'europe' : 'main'\n },\n initialProductURL:\n dataRegion === 'EU'\n ? 'atlassian-app.eu.opsgenie.com'\n : 'atlassian-app.opsgenie.com'\n }\n };\n}\n// shipit-55 SHPLV-364\ntype MakeAppInstallTypes = {\n readonly siteName: string;\n readonly appKey: string;\n readonly xsrfToken: string;\n};\ntype UserSignupResponse = {\n id: string;\n otpRedirect?: string;\n};\n\nfunction getBillingAdvancedSettings() {\n const queryParameters = Url.getUrlParams() || {};\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const additionalProvisioningData: { [key: string]: any } = {};\n\n if (queryParameters.hasOwnProperty('billingMode')) {\n additionalProvisioningData.billingMode = queryParameters.billingMode;\n }\n if (queryParameters.hasOwnProperty('billingCode')) {\n additionalProvisioningData.billingCode = queryParameters.billingCode;\n }\n\n return {\n advancedSettings: {\n additionalProvisioningData\n }\n };\n}\n\nexport function getBitbucketAdvancedSettings(\n isStaging: boolean,\n existingUser?: boolean | null\n) {\n const suppressEmail = existingUser ? undefined : true;\n const advancedSettingsObject = {\n advancedSettings: {\n initialProductURL: isStaging ? 'integration.bb-inf.net' : 'bitbucket.org',\n additionalProvisioningData: {\n signupLocation: 'WAC'\n }\n }\n };\n if (suppressEmail !== undefined) {\n Object.assign(advancedSettingsObject.advancedSettings, { suppressEmail });\n }\n return advancedSettingsObject;\n}\n\nexport function getBitbucketSignupAction(\n createBB: boolean,\n createJSW: boolean\n) {\n const createdJSW = createJSW ? 'created-jira-software.ondemand' : '';\n const createdBB = createBB ? 'created-bitbucket.ondemand' : '';\n const signupUrl = window?.location?.href || '';\n\n return {\n advancedSettings: {\n additionalProvisioningData: {\n signupUrl,\n signupAction: `${createdBB}${\n createBB && createJSW ? '-' : ''\n }${createdJSW}`\n }\n }\n };\n}\n\nexport function getStatuspageAdvancedSettings(\n isStaging: boolean,\n spProduct?: string\n) {\n return {\n advancedSettings: {\n initialProductURL: isStaging\n ? 'manage.statuspagestaging.com'\n : 'manage.statuspage.io',\n additionalProvisioningData: {\n signupLocation: 'WAC',\n spProduct: spProduct || 'public'\n }\n }\n };\n}\n\nexport function getDevopsAdvancedSettings() {\n return {\n advancedSettings: {\n additionalProvisioningData: {\n dataRegion: 'main',\n signupDevops: true\n }\n }\n };\n}\n\nexport function getRequestId(progressUri: string) {\n const pattern = new RegExp(/cloud\\/[\\w-]+\\/status\\/([\\w-]+)$/);\n const matches = pattern.exec(progressUri);\n return matches ? matches[1] : '';\n}\n\nexport function shouldSkipRecaptcha(email: string) {\n const botTestPattern =\n /(bottest@usersinbuckets.com|bottest@atl-paid-dev.com|bottest@bxpwpi.com)$/;\n return botTestPattern.test(email);\n}\n\nconst DEVELOPER_EXPERIMENT_KEY = 'PUR-7747';\n\nconst WORKSPACE_VALIDATION_PATTERN: RegExp = /^[a-z0-9_-]+$/;\n\nexport function WacSignupForm(formProps: WacSignupFormWithIntlProps) {\n const {\n devMode,\n migrationData,\n showEmail,\n hideFullName,\n userInfo,\n bitbucketWorkspaces,\n marketingConsentRequired,\n signInAccountUrl,\n switchAccountUrl,\n originAnalyticsAttributes,\n productKeys,\n isStaging,\n wacEnvUrl,\n analyticsTrack,\n formExistingSiteShown = () => undefined,\n deferSiteNameCreation,\n templateId,\n enableFreeBreachTest = false,\n simulateFreeBreachState = false,\n spProduct,\n hideGreeting = false,\n outlineOnFocus = false,\n popOverError = false,\n fadeOnDisable = false,\n showWarningIcon = false,\n hideCaptchaEula = false,\n selectedSiteId = '',\n siteRenamePageUrl,\n enableSkipRecaptcha = true,\n intl,\n allowSignupWithAllSocialOptions,\n teamType\n } = formProps;\n\n const {\n edition: editionOverride,\n useCcpPlatform,\n platform,\n experimentScreensFlags,\n customSignupContext\n } = useSignUpFormConfig();\n const { featureFlags, deferredSiteName } = useAppSelector((store) => store);\n const {\n enableTintinMvp,\n provisionSecondPartyApps,\n enableDeferredFullName,\n enableDefaultExpandedEmail\n } = featureFlags;\n\n const { createAnalyticsEvent } = useAnalyticsEvents();\n const stargateClient = useStargateClient();\n const signUpFormUIState = useSignUpFormUIState();\n const signupSource = new URLSearchParams(window.location.search).get(\n 'signupSource'\n );\n const bitbucketPreferred = signupSource === 'bbbundle' ? true : false;\n const isPaid = !Url.getUrl()?.includes('/try/cloud/signup');\n const isNewUser = !!signUpFormUIState.signupState.isNewUser;\n const experiment = useExperiment('frontend_site_name_additional_copy');\n const { site_name_additional_copy, site_name_generation } = experiment.value;\n const isFreeJiraOrConfluence =\n (signUpFormUIState.isJsw || signUpFormUIState.isConfluence) &&\n signUpFormUIState.isFree &&\n productKeys.length === 1;\n const isNewUserInJiraOrConfluenceNotPaid =\n isNewUser && isFreeJiraOrConfluence && !isPaid;\n const isNewUserInSiteNameExperiment =\n (site_name_additional_copy || site_name_generation) &&\n isNewUserInJiraOrConfluenceNotPaid;\n\n const { newRelic, segment } = analyticsTrack;\n const context = useContext(MarieSchemaAnalytics);\n\n const { confirmationPageUrl, checkEmailPageUrl, newUserSignupRedirectUrl } =\n useSignUpFormGlobalConfiguration();\n\n const generatedCloudName = useSiteNameGeneration();\n\n const [exposedToDeferSitename, setExposedToDeferSitename] =\n useState(false);\n\n const [isFocusedChooseSignup, setIsFocusedChooseSignup] = useState(true);\n const [showError, setShowError] = useState(!!signUpFormUIState.isConfluence);\n const [formReset, setFormReset] = useState(false);\n const [recommendedSiteName, setRecommendedSiteName] = useState<\n string | undefined\n >(undefined);\n\n const signupButtonText = isNewUserInSiteNameExperiment\n ? messages.devopsCarouselButton\n : signUpFormUIState.isConfluence\n ? messages.startButtonTextChooseSignup\n : allowSignupWithAllSocialOptions\n ? messages.devopsButtonText\n : signUpFormUIState.buttonText;\n\n const productName = signUpFormUIState.isJsw ? 'Jira' : 'Confluence';\n\n useEffect(() => {\n const cartedProducts = productKeys.map((k) => k.product);\n\n segment('bxp.formCloudSignup.viewedCheckoutStep', {\n productAttributes: {\n cartedProducts,\n intendedProduct: cartedProducts[0]\n }\n });\n segment('bxp.formCloudSignup.addedProduct', {\n cartedProducts\n });\n }, []);\n\n useEffect(() => {\n async function getRecommendedSiteName() {\n if (\n userInfo?.email &&\n site_name_generation &&\n isNewUserInSiteNameExperiment\n ) {\n const { recommendedName } = await stargateClient.getRecommendedSiteName(\n { email: userInfo.email, webPlatform: 'magnolia' }\n );\n setRecommendedSiteName(recommendedName);\n }\n }\n getRecommendedSiteName().catch((err) => err);\n }, [recommendedSiteName]);\n\n useEffect(() => {\n // Trigger isSubmitting state change to avoid race condition on form submit\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n isSubmitting: false\n });\n }, [formReset]);\n\n useDeferSitenameExposed({\n createAnalyticsEvent,\n products: signUpFormUIState.signupState.products.map(\n (product) => product?.product as string\n ),\n exposedToDeferSitename\n });\n\n if (migrationData && migrationData.invalidMigration) {\n return (\n \n );\n }\n\n // SHIPIT55\n const bxpExpressClient = useBXPExpressClient();\n\n function wrappedClientReq({\n siteName,\n appKey,\n xsrfToken\n }: MakeAppInstallTypes) {\n return new Promise(async (resolve) => {\n const response = await bxpExpressClient\n .marketplaceAppInstall({\n siteName,\n appKey,\n xsrfToken\n })\n .catch((err) => err);\n resolve(response);\n });\n }\n\n useEffect(() => {\n // free-breach-test\n if (\n enableFreeBreachTest &&\n signUpFormUIState.signupState.selectedSite &&\n signUpFormUIState.signupState.products &&\n productsCanBeInBreachOfFree(signUpFormUIState.signupState.products)\n ) {\n signUpFormUIState.setDisableSignInWhileTestingFreeBreach(true);\n checkBreachStatus({\n stargateClient,\n cloudId: signUpFormUIState.signupState.selectedSite.cloudId,\n productKeys: signUpFormUIState.signupState.products.map(\n (productKey) => productKey.product\n ) as string[]\n })\n .then((siteInBreach: boolean) => {\n segment('bxpSignupFreeUserBreachSitePickerInBreach', {\n selectedSiteId: signUpFormUIState.signupState.selectedSite?.cloudId\n });\n signUpFormUIState.setSelectedSiteIsInBreachOfFree(siteInBreach);\n signUpFormUIState.setDisableSignInWhileTestingFreeBreach(false);\n })\n .catch((exception) => {\n segment('bxpSignupFreeUserBreachSitePickerError', {\n exception: JSON.stringify(exception)\n });\n });\n\n if (simulateFreeBreachState) {\n segment('bxpSignupFreeUserBreachSitePickerInBreach', {\n selectedSiteId: signUpFormUIState.signupState.selectedSite?.cloudId\n });\n signUpFormUIState.setSelectedSiteIsInBreachOfFree(true);\n }\n }\n }, [\n signUpFormUIState.isBbCopyEnabled,\n signUpFormUIState.signupState.cloudName,\n signUpFormUIState.signupState.selectedSite,\n signUpFormUIState.signupState.isExistingSitePickerN2E,\n enableFreeBreachTest\n ]);\n\n const findIfJswIncluded = (cloudId: string | undefined): boolean => {\n const siteProducts = userInfo?.sites?.filter(\n (site) => site.cloudId === cloudId\n )[0].products;\n\n if (!siteProducts || !cloudId) {\n return false;\n }\n\n return siteProducts.includes(ProductKeys.JIRA_SOFTWARE);\n };\n\n const handleSubmit = async ({\n payload,\n activateProducts = false,\n cloudId = '',\n isJswIncluded,\n gRecaptchaResponse,\n productEdition\n }: HandleSubmitType) => {\n if (!payload || !payload.products || payload.products.length < 1) {\n return false;\n }\n\n Storage.setLocalStorage('consentConfig', JSON.stringify(payload.consent));\n\n let referrerHash;\n if (sessionStorage) {\n referrerHash = sessionStorage.getItem('sContext');\n }\n\n const rHashDecoded = decodeURIComponent(\n escape(window.atob(referrerHash || ''))\n );\n const combinedHash = window.btoa(\n unescape(\n encodeURIComponent(\n [\n rHashDecoded,\n document.referrer.replace('|', ''),\n gRecaptchaResponse\n ].join('|')\n )\n )\n );\n\n let payloadProducts = payload.products.map(\n (p: Product): ProductPayloadObject => {\n const returnObj = {\n accountName: payload.cloudName || undefined\n };\n\n // We do not set edition for Opsgenie\n if (p.product !== 'opsgenie') {\n Object.assign(returnObj, { edition: editionOverride || p.edition });\n }\n if (\n p.product === ProductKeys.JIRA_SOFTWARE &&\n signUpFormUIState.isBundleBBJSW\n ) {\n Object.assign(returnObj, {\n edition: productEdition || 'free'\n });\n }\n\n if (signUpFormUIState.signupState.migrationId) {\n Object.assign(returnObj, {\n migrationSourceUuid: signUpFormUIState.signupState.migrationId,\n edition:\n p.edition !== 'standard' && p.edition !== 'premium'\n ? 'standard'\n : p.edition\n });\n }\n\n return {\n ...returnObj,\n [`product${activateProducts ? 'Key' : ''}`]: p.product\n };\n }\n );\n\n // shipit55 apps bundle SHPLV-364\n const productsIncludesApps = payloadProducts\n .map(({ product }) => {\n return Object.values(AppKey).includes(product as AppKey);\n })\n .includes(true);\n\n if (productsIncludesApps) {\n payloadProducts = _.remove(payloadProducts, ({ product }) => {\n return !Object.values(AppKey).includes(product as AppKey);\n });\n }\n\n // Check if 2nd Party App Provisioning Eligibility applies:\n // Redirect if conditions are met (single-product JSW Free Edition\n // New Site signups, no template/dev/migration signups).\n const isAppProvisioningEligible =\n provisionSecondPartyApps &&\n !devMode &&\n !templateId &&\n !migrationData &&\n payloadProducts.length === 1 &&\n payloadProducts.map(({ edition }) => edition).includes('free') &&\n payloadProducts\n .map(({ product }) => product)\n .includes(ProductKeys.JIRA_SOFTWARE);\n\n const isTestTenant = isTestTenantByName(isStaging, payload.cloudName);\n\n const cofsPayload = {\n adminUsername: 'admin',\n cloudName:\n payload.cloudName ||\n (deferredSiteName.isEnabled ? generatedCloudName : null),\n adminPassword: payload.password,\n email: payload.email,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n firstName: payload.firstName,\n lastName: payload.lastName,\n products: payloadProducts,\n consent: payload.consent,\n gRecaptchaResponse: combinedHash,\n advancedSettings: {}\n };\n\n const signupContext = {};\n if (templateId) {\n Object.assign(signupContext, { templateId });\n }\n // expcen-2603 cut 50 remove after experiment -> experiment has been removed but still needed for another teams experiment\n if (\n payload.products.length === 1 &&\n payload.products[0].product === ProductKeys.JIRA_SOFTWARE &&\n payload.products[0].edition === 'free'\n ) {\n Object.assign(signupContext, {\n isCutOnboardingStepsInHalfEnabled: true\n });\n }\n if (deferSiteNameCreation && !signUpFormUIState.signupState.isLoggedIn) {\n if (signUpFormUIState.isStatuspage) {\n // For statuspage, do not include the page path so the user\n // will be directed straight to Statuspage\n Object.assign(signupContext, {\n autogenSiteName: 1\n });\n } else {\n Object.assign(signupContext, {\n pagePath: siteRenamePageUrl,\n autogenSiteName: 1\n });\n }\n cofsPayload.cloudName = null;\n }\n\n const bxpGatewayAnchorCookie = Cookies.get('bxp_gateway_anchor') || '';\n if (bxpGatewayAnchorCookie) {\n try {\n const bxpGatewayAnchor = JSON.parse(bxpGatewayAnchorCookie);\n if (bxpGatewayAnchor) {\n bxpGatewayAnchor.timestamp = new Date();\n Object.assign(signupContext, { bxpGatewayAnchor });\n }\n } catch (error) {\n trackErrorParsingAnchorJourneyCookie({ createAnalyticsEvent });\n }\n }\n\n if (isTestTenant) {\n Object.assign(cofsPayload, { testingPurposes: true });\n }\n // 2nd party app provision skip integration screen in product\n if (isAppProvisioningEligible) {\n Object.assign(signupContext, { skipIntegrationsSurvey: true });\n }\n\n // slack promo confluence hack yay!!!!\n if (experimentScreensFlags?.enableSlackPromoConfluence) {\n Object.assign(signupContext, { slackPromoConfluence: true });\n }\n\n // custom signup context passed in from CMS configured Signup Form\n if (customSignupContext) {\n const sanitizedCustomSignupContext =\n sanitizeCustomSignupContext(customSignupContext);\n Object.assign(signupContext, {\n customizedContextData: sanitizedCustomSignupContext\n });\n }\n\n const MAX_SIGNUP_CONTEXT_LENGTH = 8192;\n const signupContextString: string = JSON.stringify(signupContext);\n if (signupContextString.length <= MAX_SIGNUP_CONTEXT_LENGTH) {\n Object.assign(cofsPayload, {\n signupContext: signupContextString\n });\n } else {\n trackSignupContextTooLarge({\n contextLength: signupContextString.length,\n newRelic\n });\n }\n\n const activateProductsPayload = {\n products: payloadProducts,\n cloudName: payload.cloudName\n };\n // suppress emails if you are not a confluence only sign up\n if (\n !(\n payload.products.length === 1 &&\n payload.products[0].product === ProductKeys.CONFLUENCE\n )\n ) {\n Object.assign(cofsPayload, { advancedSettings: { suppressEmail: true } });\n Object.assign(activateProductsPayload, {\n advancedSettings: { suppressEmail: true }\n });\n }\n const bbWorkSpace = signUpFormUIState.bbWorkspaces.filter(\n (obj) => obj.workspace.name === payload.bbName\n )[0];\n const workspaceUuid = bbWorkSpace?.workspace?.uuid;\n\n trackActivateProductsSubmit({\n activateProducts,\n segment\n });\n\n if (activateProducts) {\n Object.assign(activateProductsPayload, { activateProducts }, { cloudId });\n if (!signUpFormUIState.isBbCopyEnabled && bbWorkSpace !== undefined) {\n Object.assign(activateProductsPayload, {\n advancedSettings: {\n additionalProvisioningData: {\n workspaceUuid\n }\n }\n });\n }\n if (signUpFormUIState.isBundleBBJSW) {\n _.merge(\n activateProductsPayload,\n getBitbucketSignupAction(\n bbWorkSpace === undefined,\n !payload?.isExistingSitePickerN2E ||\n (payload?.selectedSite?.products &&\n !payload?.selectedSite?.products.includes(\n ProductKeys.JIRA_SOFTWARE\n )) ||\n false\n )\n );\n }\n if (signUpFormUIState.isOpsgenie) {\n _.merge(\n activateProductsPayload,\n getOpsgenieAdvancedSettings(signUpFormUIState.signupState.dataRegion)\n );\n }\n if (bitbucketPreferred) {\n _.merge(\n activateProductsPayload,\n getBitbucketAdvancedSettings(isStaging, payload?.isLoggedIn)\n );\n }\n\n if (signUpFormUIState.isStatuspage) {\n _.merge(\n activateProductsPayload,\n getStatuspageAdvancedSettings(isStaging, spProduct)\n );\n }\n\n _.merge(activateProductsPayload, getBillingAdvancedSettings());\n\n const solutionStatsEvent = signUpFormUIState.isBundleBBJSW\n ? createSolutionStatsEvent({\n createAnalyticsEvent,\n signUpFormUIState\n })\n : undefined;\n\n return formSubmitN2N({\n payload: activateProductsPayload,\n wacEnvUrl,\n confirmationPageUrl,\n checkEmailPageUrl,\n isStaging,\n isLoggedIn: userInfo?.isLoggedIn,\n isJswIncluded,\n solutionStatsEvent,\n isOpsgenieIncluded: signUpFormUIState.isOpsgenie,\n dataRegion: payload.dataRegion,\n setPollingLoaderShown: signUpFormUIState.setPollingLoaderShown,\n analyticsTrack,\n setSubmitError: signUpFormUIState.setSubmitError,\n resendEmail: signUpFormUIState.resendEmail,\n hideUserSegmentation: signUpFormUIState.hideUserSegmentation\n });\n }\n\n if (!signUpFormUIState.isBbCopyEnabled && bbWorkSpace !== undefined) {\n Object.assign(cofsPayload, {\n advancedSettings: {\n additionalProvisioningData: {\n workspaceUuid\n }\n }\n });\n _.merge(\n cofsPayload,\n getBitbucketSignupAction(\n bbWorkSpace === undefined,\n !payload?.isExistingSitePickerN2E ||\n (payload?.selectedSite?.products &&\n !payload?.selectedSite?.products.includes(\n ProductKeys.JIRA_SOFTWARE\n )) ||\n false\n )\n );\n }\n\n // for Devops payloads, avoid setting initialProductURL\n // (gets set otherwise if a payload includes OG)\n if (signUpFormUIState.isBundleDevops) {\n _.merge(cofsPayload, getDevopsAdvancedSettings());\n } else if (signUpFormUIState.isOpsgenie) {\n _.merge(\n cofsPayload,\n getOpsgenieAdvancedSettings(signUpFormUIState.signupState.dataRegion)\n );\n }\n if (signUpFormUIState.isBundleBBJSW && bbWorkSpace === undefined) {\n _.merge(\n cofsPayload,\n getBitbucketSignupAction(\n bbWorkSpace === undefined,\n !payload?.isExistingSitePickerN2E ||\n (payload?.selectedSite?.products &&\n !payload?.selectedSite?.products.includes(\n ProductKeys.JIRA_SOFTWARE\n )) ||\n false\n )\n );\n }\n if (bitbucketPreferred) {\n _.merge(\n cofsPayload,\n getBitbucketAdvancedSettings(isStaging, payload?.isLoggedIn)\n );\n }\n if (signUpFormUIState.isStatuspage) {\n _.merge(cofsPayload, getStatuspageAdvancedSettings(isStaging, spProduct));\n }\n\n _.merge(cofsPayload, getBillingAdvancedSettings());\n\n // Pass in known Experiment Key to COFS to activate Standard Developer license\n if (devMode) {\n Object.assign(cofsPayload, {\n experiment: {\n experimentKey: DEVELOPER_EXPERIMENT_KEY\n }\n });\n }\n\n if (signUpFormUIState.hideUserSegmentation) {\n _.merge(cofsPayload, {\n advancedSettings: {\n additionalProvisioningData: {\n hideUserSegmentation: true\n }\n }\n });\n }\n\n trackFormSubmit({\n isLoggedIn: userInfo?.isLoggedIn,\n segment,\n newRelic\n });\n\n const solutionStatsEvent = signUpFormUIState.isBundleBBJSW\n ? createSolutionStatsEvent({\n createAnalyticsEvent,\n signUpFormUIState\n })\n : undefined;\n\n if (!userInfo?.isLoggedIn) {\n if (signUpFormUIState.n2nSignInRedirect !== '') {\n return window.location.assign(signUpFormUIState.n2nSignInRedirect);\n }\n const displayName = signUpFormUIState.signupState.displayName || '';\n const product = productKeys.map((p) => p.product).join(',');\n const userSignupProducts = productKeys.map(({ product, edition }) => ({\n productKey: product || '',\n edition: edition || ''\n }));\n const nextUrlParams = {\n accountName: payload.cloudName,\n product\n };\n if (teamType) {\n Object.assign(nextUrlParams, { team_type: teamType });\n }\n\n const url = nextUrl(nextUrlParams);\n const { email } = signUpFormUIState.signupState;\n const redirectTo = url(newUserSignupRedirectUrl || window.location.href);\n signUpFormUIState.setPollingLoaderShown(true);\n\n return stargateClient\n .userSignup({\n displayName,\n email: email as string,\n redirectTo,\n locale: intl?.locale || 'en',\n gRecaptchaResponse: gRecaptchaResponse || '',\n products: userSignupProducts\n })\n .then((userSignupResponse: UserSignupResponse) => {\n const { otpRedirect } = userSignupResponse;\n sessionStorage.setItem(\n 'r.e.d',\n Base64.encode(JSON.stringify({ email, displayName, redirectTo }))\n );\n if (otpRedirect) {\n window.location.assign(url(otpRedirect));\n return;\n }\n window.location.assign(url(checkEmailPageUrl));\n })\n .catch((err) => {\n console.log(err);\n signUpFormUIState.setSubmitError(SubmitErrorType.ERROR_TIMEOUT);\n });\n } else if (enableTintinMvp) {\n if (payload.products.length) {\n const ccpProducts = payload.products\n .map(({ product, edition }) => {\n // apps and product bundles SHIPit-55 SHPLV-364, we dont want it to try to look up app keys\n if (Object.values(AppKey).includes(product as AppKey)) {\n return;\n }\n\n return offeringCatalog.mapProductKeyAndEditionToCcpProduct({\n productKey: product as ProductKeys,\n edition: edition as string\n });\n })\n .filter((p) => p !== undefined);\n\n const siteName =\n (signUpFormUIState.signupState.cloudName as string) ||\n (deferredSiteName.isEnabled ? generatedCloudName : '') ||\n (signUpFormUIState.isBitbucket && workspaceID ? workspaceID : '');\n\n // stop if sitename is invalid • BXPSU-2541\n if (\n !deferredSiteName.isEnabled &&\n !signUpFormUIState.isValidSiteName &&\n !signUpFormUIState.isBitbucket\n ) {\n setFormReset((formReset) => !formReset);\n return;\n }\n\n signUpFormUIState.setPollingLoaderShown(true);\n\n // create the org if the user does not have a selected org\n let provisioningOrgId;\n let bitbucketWorkspaceMetadata = {};\n let bitbucketWorkspaceUuid = '';\n if (signUpFormUIState.isBitbucket) {\n // check if the workspaceSlug is available before provisioning\n let workspaceAri = generateBitbucketWorkspaceId();\n try {\n workspaceAri = await checkBitbucketWorkspaceSlugAvailability({\n workspaceSlug: workspaceID as string,\n stargateClient\n });\n } catch (error) {\n const errorCode = error?.response?.status;\n\n // We will only handle 409 and 400 codes.\n // Continue provisioning if we get an unexpected error response\n if (errorCode === 409 || errorCode === 400) {\n if (errorCode === 409) {\n signUpFormUIState.setWorkspaceIDTakenError(true);\n } else {\n signUpFormUIState.setIsValidWorkspaceID(false);\n }\n\n signUpFormUIState.setPollingLoaderShown(false);\n signUpFormUIState.setOrgProvisioningProgressMessage(false);\n setFormReset((formReset) => !formReset);\n return;\n }\n }\n\n provisioningOrgId =\n signUpFormUIState.selectedOrg?.id ??\n (await handleOrgCreate({\n orgDisplayName: workspaceID as string,\n stargateClient,\n createAnalyticsEvent\n }));\n\n if (!provisioningOrgId) {\n // handle org create failure\n signUpFormUIState.setSubmitError(SubmitErrorType.ERROR_ORG_CREATE);\n signUpFormUIState.setPollingLoaderShown(false);\n signUpFormUIState.setOrgProvisioningProgressMessage(false);\n setFormReset((formReset) => !formReset);\n return;\n }\n\n bitbucketWorkspaceUuid = workspaceAri.slice(\n workspaceAri.lastIndexOf('/') + 1\n );\n\n bitbucketWorkspaceMetadata = {\n orgId: provisioningOrgId,\n workspaceId: workspaceAri\n };\n }\n\n trackDeferSitenameSignups({\n isSiteNew: !signUpFormUIState.signupState.isExistingSitePickerN2E,\n isSitenameSpecified: !!signUpFormUIState.signupState?.cloudName,\n numberOfExistingUserSites: signUpFormUIState.pickableSites.length,\n optionalSitenameFeatureCohort: getDeferSitenameExperimentCohort(),\n sitename: siteName,\n userId: signUpFormUIState?.signUpFormProps?.userInfo?.accountId || ''\n });\n\n const MAX_RETRIES = 1;\n const RETRY_INTERVAL_SECONDS = 10;\n let activateProductRetries = 0;\n const callActivateProduct: () => Promise = () =>\n stargateClient\n .activateProduct({\n email: signUpFormUIState.signupState.email as string,\n displayName: signUpFormUIState.signupState.displayName as string,\n // @ts-ignore\n ccpProducts,\n siteName,\n timezone: Intl.DateTimeFormat().resolvedOptions().timeZone,\n useCcpPlatform,\n consent: payload.consent,\n platform,\n signupContext: signupContextString,\n advancedSettings: cofsPayload.advancedSettings,\n isNewUser,\n gRecaptchaResponse: gRecaptchaResponse || '',\n ...(isTestTenant && { testingPurposes: true }),\n experiment: devMode\n ? { experimentKey: DEVELOPER_EXPERIMENT_KEY }\n : undefined,\n migrationId: signUpFormUIState.signupState.migrationId as string,\n ...bitbucketWorkspaceMetadata\n })\n .then((res) => {\n // **NOTE** With rollout integration, the response may be a COFS response, provisionRequestId may not exist, see below\n const requestId = res.metadata?.provisionRequestId;\n const products = payload.products\n ?.map(({ product }) => product)\n .join(',');\n\n if (res.service === 'ccp') {\n // Route user to CCP Confirmation page\n let redirectUrl = `${confirmationPageUrl}?platform=ccp&provisioningRequestId=${requestId}&ondemandurl=${siteName}&products=${products}`;\n\n if (res.cloudId) {\n redirectUrl += `&cloudId=${res.cloudId}`;\n }\n\n if (signupSource === 'confluenceBundle') {\n redirectUrl += `&signupSource=${signupSource}`;\n }\n\n // Add `n2n` param for EXPCEN-3749\n if (\n products.includes(ProductKeys.JIRA_SOFTWARE) &&\n !!signUpFormUIState.signupState.isNewUser\n ) {\n redirectUrl += `&n2n=true`;\n }\n\n // Add `templateId` param for EXPCEN-3749\n if (templateId) {\n redirectUrl += `&templateId=${templateId}`;\n }\n\n //Add teamType for SPICE-931\n if (teamType) {\n redirectUrl += `&team_type=${teamType}`;\n }\n\n window.location.assign(redirectUrl);\n } else {\n // Use older COFS logic to poll for successful status,\n // which then routes to confirmation page\n\n const progressUri = res.progressUri as string;\n\n // **NOTE*** maybe want a track event here if progressUri doesn't exist?\n\n pollForSuccess({\n isLoggedIn: true,\n confirmationPageUrl,\n checkEmailPageUrl,\n progressUri,\n products: payload.products as ProductPayloadObject[],\n analyticsTrack,\n isStaging,\n wacEnvUrl,\n cloudName: siteName,\n setSubmitError: signUpFormUIState.setSubmitError,\n setPollingLoaderShown:\n signUpFormUIState.setPollingLoaderShown,\n isJswIncluded,\n isNewUser,\n isOpsgenieIncluded: signUpFormUIState.isOpsgenie,\n dataRegion: signUpFormUIState.signupState.dataRegion,\n resendEmail: undefined, // **NOTE** used for Devops signups that won't work in CCP yet\n solutionStatsEvent,\n hideUserSegmentation: false, // **NOTE** used for Jira Templates which I dont think will work in CCP yet\n isAppProvisioningEligible, // **NOTE** won't work in CCP yet\n isBitbucketWorkspace: signUpFormUIState.isBitbucket,\n handlePollProgressStatusFailure: () =>\n setFormReset((formReset) => !formReset),\n ...(bitbucketWorkspaceUuid\n ? { bitbucketWorkspaceUuid }\n : undefined)\n });\n }\n })\n .catch(async (error) => {\n // **NOTE** We probably want a gas event so we can track these?\n console.log(error);\n\n const errorCode = error?.response?.status;\n const error_id = error?.response?.headers?.get('atl-traceid');\n\n if (errorCode === 403 && signUpFormUIState.isBitbucket) {\n if (activateProductRetries < MAX_RETRIES) {\n await new Promise((res) =>\n setTimeout(res, RETRY_INTERVAL_SECONDS * 1000)\n );\n activateProductRetries++;\n return callActivateProduct();\n }\n }\n\n const redirectUrlShadowIt =\n errorCode === 403 && getRedirectUrlFromShadowItError(error);\n\n if (signUpFormUIState.isBitbucket) {\n trackBitbucketWorkspaceProvFailure({\n createAnalyticsEvent,\n metadata: {\n errorCode: errorCode,\n workspaceUuid: workspaceUuid\n }\n });\n }\n\n if (errorCode === 409) {\n if (signUpFormUIState.isBitbucket) {\n signUpFormUIState.setWorkspaceIDTakenError(true);\n }\n signUpFormUIState.setActivateProductError(true);\n signUpFormUIState.setPollingLoaderShown(false);\n signUpFormUIState.setOrgProvisioningProgressMessage(false);\n\n setFormReset((formReset) => !formReset);\n } else if (errorCode === 403 && !!redirectUrlShadowIt) {\n // Shadow IT unauthorized user redirects to adminhub's Shadow IT request flow.\n window.location.assign(redirectUrlShadowIt);\n } else {\n if (signUpFormUIState.isBitbucket) {\n signUpFormUIState.setPollingLoaderShown(false);\n setFormReset((formReset) => !formReset);\n }\n signUpFormUIState.setSubmitError(\n SubmitErrorIDType.ERROR_TIMEOUT(error_id)\n );\n }\n });\n\n return callActivateProduct();\n }\n }\n\n return formSubmitN2N({\n payload: cofsPayload,\n wacEnvUrl,\n confirmationPageUrl,\n checkEmailPageUrl,\n isStaging,\n solutionStatsEvent,\n isLoggedIn: userInfo?.isLoggedIn,\n isOpsgenieIncluded: signUpFormUIState.isOpsgenie,\n dataRegion: payload.dataRegion,\n setPollingLoaderShown: signUpFormUIState.setPollingLoaderShown,\n analyticsTrack,\n setSubmitError: signUpFormUIState.setSubmitError,\n resendEmail: signUpFormUIState.resendEmail,\n hideUserSegmentation: signUpFormUIState.hideUserSegmentation,\n isAppProvisioningEligible\n });\n };\n\n const { executeRecaptcha } = useGoogleReCaptcha();\n\n const handleSubmitWithRecaptcha = async (\n handleSubmitProps: HandleSubmitType\n ) => {\n if (!executeRecaptcha) {\n return;\n }\n\n let token: string;\n\n try {\n token = await executeRecaptcha('userSignup');\n } catch (error) {\n trackRecaptchaError({ segment });\n throw error;\n }\n\n if (token) {\n trackSubmitWithCaptcha({ newRelic });\n\n try {\n await handleSubmit({\n ...handleSubmitProps,\n gRecaptchaResponse: token\n });\n\n trackSignUpFormSubmitSucceeded({\n createAnalyticsEvent\n });\n } catch (error) {\n trackSignUpFormSubmitFailed({\n createAnalyticsEvent\n });\n }\n }\n };\n\n const handleStartN2E = async (\n products: Product[],\n site: Sites,\n migrationId: string | null\n ) => {\n if (products.length && site.cloudId && site.url) {\n const siteDomain = site.url.replace('https://', '');\n\n // SHIPIt-55 SHPLV-364\n const productsIncludesApps = products\n .map(({ product }) => {\n return Object.values(AppKey).includes(product as AppKey);\n })\n .includes(true);\n\n if (provisionSecondPartyApps && productsIncludesApps) {\n // @ts-ignore\n const appKey = products.find(({ product }) => {\n return Object.values(AppKey).includes(product as AppKey);\n }).product;\n const xsrfToken = await bxpExpressClient.getXsrfToken();\n const siteName = site.url.replace('https://', '').split('.')[0];\n await wrappedClientReq({\n siteName,\n // @ts-ignore\n appKey,\n xsrfToken\n });\n }\n\n if (products.length > 1) {\n const { cloudId } = site;\n const siteName = siteDomain.split('.')[0];\n const productString = context.productsOffered.join(',');\n\n const signupContext = {};\n const bxpGatewayAnchorCookie = Cookies.get('bxp_gateway_anchor') || '';\n if (bxpGatewayAnchorCookie) {\n try {\n const bxpGatewayAnchor = JSON.parse(bxpGatewayAnchorCookie);\n if (bxpGatewayAnchor) {\n bxpGatewayAnchor.timestamp = new Date();\n Object.assign(signupContext, { bxpGatewayAnchor });\n }\n } catch (error) {\n createAnalyticsEvent({\n eventName: 'bxp.anchorJourney.parseCookieError'\n }).fire();\n }\n }\n\n const productsEditions =\n products.map(({ product, edition }) => {\n return offeringCatalog.mapProductKeyAndEditionToCcpProduct({\n productKey: product as ProductKeys,\n edition: edition as string\n });\n }) ?? [];\n\n const offeringKeys = productsEditions\n .map((item) => item.offeringId)\n .join(',');\n\n const ccpHamsStatus = await stargateClient.getCcpHamsStatus({\n offeringKeys,\n cloudId\n });\n\n if (ccpHamsStatus.service === 'CCP') {\n const ccp = await stargateClient.getLicenceInformationStatus({\n cloudId\n });\n const primaryProductCCP = Object.values(ccp.products ?? {}).find(\n (prod) => !!prod.ccpTransactionAccountId && !!prod.ccpEntitlementId\n );\n\n if (primaryProductCCP) {\n const res = await Promise.all(\n productsEditions.map(async (product) => {\n return await stargateClient.postProductActivate({\n offerings: [product],\n transactionAccountId:\n primaryProductCCP.ccpTransactionAccountId,\n entitlementId: primaryProductCCP.ccpEntitlementId || '',\n cloudId,\n siteName,\n advancedSettings: {\n signupContext: JSON.stringify(signupContext)\n },\n webPlatform: 'magnolia'\n });\n })\n );\n\n if (res[0].progressUri) {\n const provisioningRequestIds = res\n .map((product) => product.progressUri.split('/').pop())\n .join(',');\n\n let redirectUrl = `${confirmationPageUrl}?platform=ccp&provisioningRequestId=${provisioningRequestIds}&ondemandurl=${siteName}&products=${productString}`;\n\n if (signupSource === 'confluenceBundle') {\n redirectUrl += `&signupSource=${signupSource}`;\n }\n\n window.location.assign(redirectUrl);\n }\n } else {\n const discoverProductsUrl = `${site.url}/admin/billing/applications`;\n window.location.href = discoverProductsUrl;\n }\n } else {\n const newProducts: ProductPayloadObject[] = products.map((item) => ({\n accountName: siteName,\n edition: item.edition,\n productKey: item.product\n }));\n const payload: FormPayloadActivateProducts = {\n cloudName: siteName,\n cloudId,\n activateProducts: true,\n products: newProducts,\n signupContext: JSON.stringify(signupContext)\n };\n\n // eslint-disable-next-line @typescript-eslint/no-explicit-any\n const res: any = await stargateClient.postCloudSignUp({\n payload,\n webPlatform: 'magnolia'\n });\n\n if (res.progressUri) {\n const requestId = getRequestId(res?.progressUri);\n\n let redirectUrl = `${confirmationPageUrl}?ondemandurl=${siteName}&cloudId=${cloudId}&requestId=${requestId}&products=${productString}`;\n\n if (signupSource === 'confluenceBundle') {\n redirectUrl += `&signupSource=${signupSource}`;\n }\n\n window.location.assign(redirectUrl);\n } else {\n const discoverProductsUrl = `${site.url}/admin/billing/applications`;\n window.location.href = discoverProductsUrl;\n }\n }\n\n return;\n } else {\n const baseStartUrl = isStaging\n ? 'https://start.stg.atlassian.com'\n : 'https://start.atlassian.com';\n const productKey = products[0].product;\n\n let startUrl = `${baseStartUrl}?startTrialProduct=${productKey}&startTrialCloudId=${site.cloudId}&startTrialInstance=${siteDomain}`;\n if (editionOverride) {\n startUrl += `&edition=${editionOverride}`;\n } else if (products[0].edition) {\n startUrl += `&edition=${products[0].edition}`;\n }\n if (migrationId) {\n startUrl += `&migrationSourceUuid=${migrationId}`;\n }\n\n // custom signup context passed in from CMS configured Signup Form\n if (customSignupContext) {\n const sanitizedCustomSignupContext =\n sanitizeCustomSignupContext(customSignupContext);\n startUrl += `&customizedContextData=${sanitizedCustomSignupContext}`;\n }\n\n const queryParameters = Url.getUrlParams() || {};\n if (queryParameters.hasOwnProperty('billingMode')) {\n startUrl += `&billingMode=${queryParameters.billingMode}`;\n }\n if (queryParameters.hasOwnProperty('billingCode')) {\n startUrl += `&billingCode=${queryParameters.billingCode}`;\n }\n startUrl = signUpFormUIState?.signupOrigin?.addToUrl(startUrl);\n\n const idLoginStartUrl = new URL(\n Environment.getIdSigninUrl(undefined, false, startUrl)\n );\n idLoginStartUrl.searchParams.set('application', 'wac');\n idLoginStartUrl.searchParams.set(\n 'login_hint',\n signUpFormUIState.signupState.email as string\n );\n const idLoginStartUrlString = idLoginStartUrl.toString();\n\n trackN2ESubmit2({\n cloudId: site.cloudId,\n products,\n signupUrl: idLoginStartUrlString,\n accountId:\n signUpFormUIState?.signUpFormProps?.userInfo?.accountId || '',\n createAnalyticsEvent\n });\n\n window.location.href = idLoginStartUrlString;\n }\n } else {\n // console.error('Missing site or product data');\n }\n };\n\n const submitHandler = async (event: React.FormEvent) => {\n event.preventDefault();\n\n // Verify user is logged into correct account\n if (userInfo?.isLoggedIn) {\n const userInfoCheck = await stargateClient.me({});\n if (userInfoCheck && userInfo?.accountId !== userInfoCheck.accountId) {\n signUpFormUIState.setSubmitError(SubmitErrorType.AAID_MISMATCH);\n return;\n }\n }\n\n const buttonLabel = !signUpFormUIState.signupState.isExistingSitePickerN2E\n ? signUpFormUIState.buttonText.defaultMessage\n : signUpFormUIState.signupState.isSubmitting\n ? messages.submitProcessingLabel.defaultMessage\n : signUpFormUIState.startButtonText.defaultMessage;\n\n trackSignupButtonClicked({ context, buttonLabel, createAnalyticsEvent });\n\n const cloudId = signUpFormUIState.signupState?.selectedSite?.cloudId;\n const siteName = signUpFormUIState.signupState?.cloudName;\n\n // Check shadow IT to redirect user or not, for both N2N or N2E\n if (userInfo?.isLoggedIn) {\n try {\n if (siteName) {\n // Check for Shadow IT authorization.\n await stargateClient.getActivationAuthorization({\n productKeys: signUpFormUIState.signupState.products\n .filter(isNotUndefined)\n .map(({ product }) => product as ProductKeys),\n productEdition: signUpFormUIState.signupState.products.filter(\n (product) => !!product && !!product.edition\n )[0].edition as string,\n cloudId,\n siteName,\n webPlatform: 'magnolia'\n });\n\n createAnalyticsEvent({\n event: 'authorized',\n eventName: 'cloudSignupShadowItAuthorized',\n eventType: 'track',\n eventComponent: 'cloudSignupShadowIt',\n eventColumn: 'cloudSignupShadowIt'\n }).fire();\n }\n } catch (error) {\n console.log('Error during shadow IT', error);\n\n // Unauthorized due to Shadow IT.\n if (isResponseError(error) && error.response.status === 403) {\n createAnalyticsEvent({\n event: 'unauthorized',\n eventName: 'cloudSignupShadowItUnauthorized',\n eventType: 'track',\n eventComponent: 'cloudSignupShadowIt',\n eventColumn: 'cloudSignupShadowIt'\n }).fire();\n\n const redirectUrl = getRedirectUrlFromShadowItError(error);\n\n // Silently fail errors, unless explicitly unauthorized w/ redirectUrl.\n if (!!redirectUrl) {\n createAnalyticsEvent({\n event: 'redirect',\n eventName: 'cloudSignupShadowItRedirect',\n eventType: 'track',\n eventComponent: 'cloudSignupShadowIt',\n eventColumn: 'cloudSignupShadowIt'\n }).fire();\n // Unauthorized redirect to adminhub's Shadow IT request flow.\n window.location.assign(redirectUrl);\n return;\n }\n }\n // Silently fail unexpected errors for Shadow IT.\n createAnalyticsEvent({\n event: 'unexpected error',\n eventName: 'cloudSignupShadowItError',\n eventType: 'track',\n eventComponent: 'cloudSignupShadowIt',\n eventColumn: 'cloudSignupShadowIt'\n }).fire();\n console.warn('Unexpected error during Shadow IT', error);\n }\n }\n\n if (\n signUpFormUIState.signupState.isExistingSitePickerN2E &&\n signUpFormUIState.isBundleBBJSW\n ) {\n // check to get edition type so existing site doesnt downgrade\n const productEdition = await checkProductEdition({\n cloudId,\n productKey: ProductKeys.JIRA_SOFTWARE,\n wacEnvUrl,\n createAnalyticsEvent\n });\n\n return handleSubmitWithRecaptcha({\n payload: signUpFormUIState.signupState,\n activateProducts: true,\n cloudId,\n isJswIncluded: findIfJswIncluded(cloudId),\n productEdition\n });\n } else if (\n signUpFormUIState.signupState.isExistingSitePickerN2E &&\n signUpFormUIState.signupState.selectedSite\n ) {\n trackN2ESubmit({\n cloudId,\n products: signUpFormUIState.signupState.products,\n segment\n });\n\n return handleStartN2E(\n signUpFormUIState.signupState.products,\n signUpFormUIState.signupState.selectedSite,\n signUpFormUIState.signupState.migrationId\n );\n } else {\n if (!userInfo?.isLoggedIn) {\n // For e2e testing, allow bypassing captcha on known pattern\n // Must be handled in the backend as well\n if (\n signUpFormUIState.signupState.email &&\n enableSkipRecaptcha &&\n shouldSkipRecaptcha(signUpFormUIState.signupState.email)\n ) {\n return handleSubmitWithRecaptcha({\n payload: signUpFormUIState.signupState\n });\n }\n return handleSubmitWithRecaptcha({\n payload: signUpFormUIState.signupState\n });\n } else {\n return handleSubmitWithRecaptcha({\n payload: signUpFormUIState.signupState\n });\n }\n }\n };\n\n const handleDeferSite = () => {\n if (signUpFormUIState.isBitbucket) return null;\n\n const siteNameField = (!signUpFormUIState.signupState\n .isExistingSitePickerN2E ||\n signUpFormUIState.isSitePickerDisabled) && (\n {\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n cloudName,\n cloudNameLength\n });\n }}\n onSiteNameUseExisting={() => {\n formExistingSiteShown(true);\n segment('bxp.formCloudSignup.useExistingSiteClicked', {});\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n isExistingSitePickerN2E: true,\n selectedSite: null,\n cloudName: ''\n });\n signUpFormUIState.setIsValidSiteName(false);\n }}\n key={wacEnvUrl}\n sites={null}\n shouldShowUseExisting={\n signUpFormUIState.shouldShowUseExisting &&\n !signUpFormUIState.isSitePickerDisabled\n }\n siteNameAfter={signUpFormUIState.siteNameAfter}\n wacEnvUrl={wacEnvUrl}\n analyticsTrack={analyticsTrack}\n setIsValidSiteName={(val) => signUpFormUIState.setIsValidSiteName(val)}\n outlineOnFocus={outlineOnFocus}\n popOverError={popOverError}\n isDisabled={signUpFormUIState.signupState.isSubmitting}\n fadeOnDisable={fadeOnDisable}\n showWarningIcon={showWarningIcon}\n isSuiteSignup={signUpFormUIState.isBundleDevops}\n isDeferredSiteNameEnabled={deferredSiteName.isEnabled}\n activateProductError={signUpFormUIState.activateProductError}\n setActivateProductError={signUpFormUIState.setActivateProductError}\n siteNameGenerationExperiment={\n site_name_generation && isNewUserInJiraOrConfluenceNotPaid\n }\n siteNameAddtionalCopyExperiment={\n site_name_additional_copy && isNewUserInJiraOrConfluenceNotPaid\n }\n recommendedSiteName={recommendedSiteName}\n />\n );\n\n const sitePickerField = !signUpFormUIState.isSitePickerDisabled &&\n signUpFormUIState.signupState.isExistingSitePickerN2E &&\n userInfo &&\n signUpFormUIState.pickableSites.length > 0 && (\n {\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n selectedSite,\n cloudName\n });\n }}\n onSiteNameStartNew={() => {\n formExistingSiteShown(false);\n segment('bxp.formCloudSignup.startANewSite', {});\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n isExistingSitePickerN2E: false,\n selectedSite: null,\n cloudName: ''\n });\n }}\n isBundleActive={signUpFormUIState.isBundleBBJSW}\n sites={signUpFormUIState.pickableSites}\n siteNameAfter={signUpFormUIState.siteNameAfter}\n analyticsTrack={analyticsTrack}\n isFree={signUpFormUIState.isFree}\n setIsValidSiteName={(val: boolean) =>\n signUpFormUIState.setIsValidSiteName(val)\n }\n isDisabled={signUpFormUIState.signupState.isSubmitting}\n showFreeLimitExceededError={\n signUpFormUIState.selectedSiteIsInBreachOfFree\n }\n selectedSiteId={selectedSiteId}\n productKeys={signUpFormUIState.signUpFormProps.productKeys}\n isDeferredSiteNameEnabled={deferredSiteName.isEnabled}\n fadeOnDisable={fadeOnDisable}\n />\n );\n\n const isBeaconLimited =\n signUpFormUIState.isBeacon && signUpFormUIState.pickableSites.length <= 0;\n\n const beaconInfoBox = (\n \n

    \n \n

    \n \n \n \n
    \n );\n\n if (deferSiteNameCreation) {\n if (signUpFormUIState.signupState.isLoggedIn) {\n return [siteNameField, sitePickerField];\n } else {\n return null;\n }\n } else {\n if (isBeaconLimited) {\n return [beaconInfoBox];\n } else {\n return [siteNameField, sitePickerField];\n }\n }\n };\n\n if (signUpFormUIState.showResendEmail) {\n const baseUrl = isStaging\n ? `${wacEnvUrl}/apis/stg/hamlet`\n : `${wacEnvUrl}/hamlet`;\n const resendEmailScreen = (\n (p.product ? p.product : ''))}\n />\n );\n return {resendEmailScreen};\n }\n if (signUpFormUIState.showDevopsCarouselEnd) {\n return (\n \n );\n }\n\n const [workspaceID, setWorkspaceID] = useState(undefined);\n\n const { orgList } = signUpFormUIState.orgFetchResponse;\n\n const showWorkspaceIDErrorMessage =\n workspaceID && !signUpFormUIState.isValidWorkspaceID;\n\n const workspaceIdIsValid = (id: string | undefined): boolean => {\n return !!id && WORKSPACE_VALIDATION_PATTERN.test(id);\n };\n\n return (\n ) => {\n if (\n (signUpFormUIState.orgAdminVortexStatusCounts.ENABLED === 0 &&\n signUpFormUIState.orgAdminVortexStatusCounts.DISABLED > 0) ||\n (orgList && orgList.length === 0)\n ) {\n signUpFormUIState.setOrgProvisioningProgressMessage(true);\n }\n if (\n signUpFormUIState.isConfluence &&\n !signUpFormUIState.isValidChooseSignup\n ) {\n setShowError(true);\n setIsFocusedChooseSignup(false);\n event.preventDefault();\n } else {\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n isSubmitting: true\n });\n submitHandler(event)\n .then(() => {\n trackSignUpFormSubmitSucceeded({\n createAnalyticsEvent\n });\n })\n .catch(() => {\n trackSignUpFormSubmitFailed({\n createAnalyticsEvent\n });\n });\n }\n }}\n method=\"POST\"\n className={signUpFormUIState.hideAsterisks ? 'no-asterisks' : ''}\n >\n {isNewUserInSiteNameExperiment && (\n \n \n \n )}\n {!hideGreeting && (\n \n \n \n )}\n {\n // show email for all non-Devops forms, or Devops N2N\n ((showEmail && !signUpFormUIState.isBundleDevops) ||\n (showEmail &&\n signUpFormUIState.isBundleDevops &&\n !userInfo?.isLoggedIn)) &&\n !isNewUserInSiteNameExperiment && (\n {\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n email\n });\n }}\n initialEmail={signUpFormUIState.intialEmail}\n signInAccountUrl={signInAccountUrl}\n switchAccountUrl={switchAccountUrl}\n originAnalyticsAttributes={originAnalyticsAttributes}\n analyticsTrack={analyticsTrack}\n wacEnvUrl={wacEnvUrl}\n isStaging={isStaging}\n isDisabled={signUpFormUIState.signupState.isSubmitting}\n outlineOnFocus={outlineOnFocus}\n popOverError={popOverError}\n fadeOnDisable={fadeOnDisable}\n showWarningIcon={showWarningIcon}\n onSSOCheckValid={(isValid: boolean) => {\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n isSSOValid: isValid\n });\n }}\n isDeferredSiteNameEnabled={deferredSiteName.isEnabled}\n isFocusedChooseSignup={isFocusedChooseSignup}\n setIsFocusedChooseSignup={setIsFocusedChooseSignup}\n showError={showError}\n setShowError={setShowError}\n setN2NSignInRedirect={signUpFormUIState.setN2NSignInRedirect}\n isConfluence={signUpFormUIState.isConfluence}\n />\n )\n }\n {(!signUpFormUIState.isBundleBBJSW || !userInfo?.isLoggedIn) &&\n !signUpFormUIState.signupState.isExistingSitePickerN2E &&\n !hideFullName &&\n !enableDeferredFullName &&\n !enableDefaultExpandedEmail &&\n !signUpFormUIState.isConfluence && (\n \n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n displayName\n })\n }\n outlineOnFocus={outlineOnFocus}\n popOverError={popOverError}\n isDisabled={signUpFormUIState.signupState.isSubmitting}\n fadeOnDisable={fadeOnDisable}\n />\n )}\n {signUpFormUIState.isOpsgenie &&\n !signUpFormUIState.isBundleDevops &&\n !signUpFormUIState.signupState.isExistingSitePickerN2E &&\n !!userInfo?.isLoggedIn && (\n \n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n dataRegion\n })\n }\n analyticsTrack={analyticsTrack}\n />\n )}\n {signUpFormUIState.isBundleBBJSW && (\n \n )}\n {signUpFormUIState.isBitbucket && (\n \n \n \n \n \n }\n value={workspaceID}\n onChange={({\n target: { value: workspaceId }\n }: React.ChangeEvent) => {\n setWorkspaceID(workspaceId);\n if (\n !signUpFormUIState.isValidWorkspaceID &&\n workspaceIdIsValid(workspaceId)\n ) {\n signUpFormUIState.setIsValidWorkspaceID(true);\n } else if (!workspaceIdIsValid(workspaceId)) {\n signUpFormUIState.setIsValidWorkspaceID(false);\n }\n\n if (signUpFormUIState.workspaceIDTakenError)\n signUpFormUIState.setWorkspaceIDTakenError(false);\n }}\n isRequired={true}\n isInvalid={workspaceID && !signUpFormUIState.isValidWorkspaceID}\n />\n {showWorkspaceIDErrorMessage && (\n \n \n \n )}\n \n {signUpFormUIState.workspaceIDTakenError && (\n \n \n \n )}\n {!showWorkspaceIDErrorMessage &&\n !signUpFormUIState.workspaceIDTakenError && (\n \n \n \n )}\n {orgList &&\n shouldRenderBitbucketOrgPicker(\n signUpFormUIState.orgAdminVortexStatusCounts\n ) && (\n \n )}\n {orgList &&\n signUpFormUIState.orgAdminVortexStatusCounts.ENABLED > 0 &&\n signUpFormUIState.orgAdminVortexStatusCounts.DISABLED > 0 && (\n \n \n

    \n \n

    \n
    \n
    \n )}\n {orgList &&\n signUpFormUIState.orgAdminVortexStatusCounts.ENABLED === 0 &&\n signUpFormUIState.orgAdminVortexStatusCounts.DISABLED > 0 && (\n \n \n

    \n \n

    \n
    \n
    \n )}\n
    \n )}\n <>{handleDeferSite()}\n {signUpFormUIState.selectedSiteIsInBreachOfFree &&\n signUpFormUIState.signupState.isExistingSitePickerN2E && (\n \n )}\n {signUpFormUIState.isBundleBBJSW &&\n signUpFormUIState.bbWorkspaces.length > 0 && (\n \n signUpFormUIState.setIsBbCopyEnabled(isEnabled)\n }\n onAccountChange={(bbName) =>\n signUpFormUIState.setSignupState({\n ...signUpFormUIState.signupState,\n bbName\n })\n }\n bbNameOverride={signUpFormUIState.signupState.bbName || ''}\n analyticsTrack={analyticsTrack}\n isValidSiteName={signUpFormUIState.isValidSiteName}\n isDisabled={signUpFormUIState.signupState.isSubmitting}\n />\n )}\n {!signUpFormUIState.signupState.hasCCPEntitlements &&\n marketingConsentRequired && (\n \n }\n isDisabled={signUpFormUIState.signupState.isSubmitting}\n onChange={(event: React.ChangeEvent) => {\n const consentsState = signUpFormUIState.signupState;\n consentsState.consent.consents[2].granted =\n event.target.checked;\n signUpFormUIState.setSignupState({ ...consentsState });\n }}\n />\n \n )}\n {signUpFormUIState.submitError !== SubmitErrorType.NO_ERROR && (\n \n \n \n )}\n {!signUpFormUIState.signupState.hasCCPEntitlements &&\n !signUpFormUIState.isBundleDevops &&\n !isNewUserInSiteNameExperiment && (\n <>\n {enableDefaultExpandedEmail ? (\n {\n segment('bxp.formCloudSignup.eulaClicked', {});\n }}\n >\n \n \n ) : signUpFormUIState.isConfluence ? (\n {\n segment('bxp.formCloudSignup.eulaClicked', {});\n }}\n >\n \n \n ) : (\n {\n segment('bxp.formCloudSignup.eulaClicked', {});\n }}\n >\n \n \n )}\n \n )}\n {signUpFormUIState.signupState.hasCCPEntitlements && (\n \n

    \n {!signUpFormUIState.signupState.isExistingSitePickerN2E ? (\n \n ) : (\n \n )}\n
    \n \n \n \n \n \n

    \n
      \n
    • \n \n \n \n \n \n \n \n \n
    • \n
    • \n \n \n \n \n \n \n \n \n
    • \n
    • \n \n \n \n )\n }}\n />\n
    • \n
    \n
    \n \n \n \n
    \n )}\n {!signUpFormUIState.signupState.hasCCPEntitlements &&\n !signUpFormUIState.signupState.isExistingSitePickerN2E && (\n \n \n \n )}\n {!signUpFormUIState.signupState.hasCCPEntitlements &&\n signUpFormUIState.signupState.isExistingSitePickerN2E && (\n \n \n \n )}\n {signUpFormUIState.isBundleDevops && (\n {\n segment('bxp.formCloudSignup.eulaClicked', {});\n }}\n >\n \n \n )}\n {signUpFormUIState.orgProvisioningProgressMessage && (\n \n \n
    \n \n
    \n )}\n {!signUpFormUIState.signupState.hasCCPEntitlements &&\n !allowSignupWithAllSocialOptions &&\n !signUpFormUIState.isConfluence && (\n \n {!isNewUserInSiteNameExperiment && (\n \n )}\n \n )}\n {!signUpFormUIState.signupState.hasCCPEntitlements &&\n !signUpFormUIState.signupState.isLoggedIn && (\n
    \n {!hideCaptchaEula && !signUpFormUIState.isConfluence && (\n <>\n {enableDefaultExpandedEmail ? (\n {\n segment(\n 'bxp.formCloudSignup.reCaptchaPrivacyPolicyClicked',\n {}\n );\n }}\n >\n \n \n ) : (\n {\n segment(\n 'bxp.formCloudSignup.reCaptchaPrivacyPolicyClicked',\n {}\n );\n }}\n >\n \n \n )}\n \n )}\n
    \n )}\n \n );\n}\n\nWacSignupForm.messages = messages;\n\nexport default injectIntl(WacSignupForm);\n","import { generateRandomDigit } from '../utility';\n\nconst RANDOM_DIGIT_MIN = 0;\nconst RANDOM_DIGIT_MAX = 10;\n\nexport const SITE_NAME_PREFIX = 'team-';\n\nexport function useSiteNameGeneration(): string {\n return `${SITE_NAME_PREFIX}${Date.now()}${generateRandomDigit(\n RANDOM_DIGIT_MIN,\n RANDOM_DIGIT_MAX\n )}`;\n}\n","/**\n *\n * @param min included\n * @param max excluded\n * @returns random digit between two numbers\n */\nexport const generateRandomDigit = (min: number, max: number): number => {\n return Math.floor(Math.random() * (max - min)) + min;\n};\n","import {\n trackExposedToDeferSitename,\n TrackExposedToDeferSitename\n} from '../service/sign-up-form/analytics';\nimport { useEffect } from 'react';\nimport { getDeferSitenameExperimentCohort } from '../layouts/legacy/view/utility/get-defer-sitename-experiment-cohort';\n\ntype Params = Omit & {\n exposedToDeferSitename: boolean;\n};\n\nexport function useDeferSitenameExposed({\n createAnalyticsEvent,\n products,\n exposedToDeferSitename\n}: Params) {\n useEffect(() => {\n if (exposedToDeferSitename) {\n trackExposedToDeferSitename({\n createAnalyticsEvent,\n value: getDeferSitenameExperimentCohort(),\n products\n });\n }\n }, [createAnalyticsEvent, exposedToDeferSitename]);\n}\n","import { Environment } from '@atlassiansox/bxpkit-core';\n\ntype nextUrlOptions = {\n accountName: string | null;\n product?: string;\n bundle?: string;\n edition?: string;\n signupSource?: string;\n hideUserSegmentation?: string;\n templateId?: string;\n platform?: string;\n team_type?: string;\n};\n\n// Returns a url to redirect the user to after submitting the form\nexport const nextUrl = (options: nextUrlOptions) => (url: string) => {\n let href;\n\n const splitPath = url.split('/');\n\n if (url.startsWith('http')) {\n href = new URL(url);\n } else if (url[1]?.includes('wac')) {\n splitPath.splice(0, 2);\n href = new URL(\n `${Environment.getWacIntegrationUrl()}/${splitPath.join('/')}`\n );\n } else {\n href = new URL(window.location.href);\n href.pathname = url;\n }\n const params = href.searchParams;\n\n Object.entries(options)\n .filter(([_key, value]) => value)\n // eslint-disable-next-line @typescript-eslint/no-non-null-assertion\n .forEach(([key, value]) => params.set(key, value!));\n\n href.search = params.toString();\n\n return href.toString();\n};\n","import 'isomorphic-fetch';\nimport { CreateUIAnalyticsEvent } from '@atlaskit/analytics-next/types';\n\nexport type productEditionType = {\n readonly cloudId: string | undefined;\n readonly productKey: string;\n readonly wacEnvUrl: string;\n readonly createAnalyticsEvent: CreateUIAnalyticsEvent;\n};\n\nexport type EditionStatusType = {\n readonly edition?: string;\n readonly error?: string;\n};\n\nexport async function checkProductEdition({\n cloudId,\n productKey,\n wacEnvUrl,\n createAnalyticsEvent\n}: productEditionType) {\n const productEditionStatusResponse = await fetch(\n `${wacEnvUrl}/gateway/api/cloud/edition/${cloudId}/${productKey}`,\n {\n headers: {\n 'content-type': 'application/json'\n },\n method: 'GET',\n credentials: 'include'\n }\n );\n\n const productEditionStatus =\n (await productEditionStatusResponse.json()) as EditionStatusType;\n\n if (productEditionStatus.error) {\n // If edition is free the response comes back as { \"error\": \"Product Edition Not Found\" }\n const isFreeEdition =\n productEditionStatus.error === 'Product Edition Not Found';\n if (isFreeEdition) {\n return 'free';\n }\n\n if (!isFreeEdition) {\n createAnalyticsEvent({\n eventName: 'bxp.cloud.edition.failed',\n errorMessage: productEditionStatus.error\n }).fire();\n }\n\n return null;\n }\n\n return productEditionStatus.edition;\n}\n","import retry from 'async-retry';\nimport _ from 'lodash';\nimport type {\n AnalyticsTrackType,\n Product,\n UserInfo\n} from '../model/wac-signup-form';\nimport { ProductKeys } from '../model/wac-signup-form';\nimport { SignUpFormAPI } from '../layouts/legacy/view/sign-up-form';\nimport { sanitizeLastName } from '../layouts/legacy/view/utility';\n\nconst BXP_CLOUD_PERMS_CHECK = 'bxp.cloud-signup.rename.site.permissions.check';\nconst BXP_CLOUD_PERMS_CHECK_FALSE =\n 'bxp.cloud-signup.rename.site.permissions.check.failed';\n\nconst getDecodedSocialSignupInfo = (\n encodedSocialSignupInfo: any | null | undefined\n) => {\n if (encodedSocialSignupInfo) {\n return {\n ...encodedSocialSignupInfo,\n email: decodeURIComponent(encodedSocialSignupInfo.email),\n firstName: decodeURIComponent(encodedSocialSignupInfo.firstName),\n fullName: decodeURIComponent(encodedSocialSignupInfo.fullName),\n lastName: decodeURIComponent(encodedSocialSignupInfo.lastName)\n };\n } else {\n return null;\n }\n};\n\ntype GetRenameSiteUrlType = {\n wacEnvUrl: string;\n confirmationPageUrl: string;\n cloudId: string;\n cloudName: string;\n productKeys: string[];\n progressUri: string;\n isPermitted: boolean;\n siteRenamePageUrl: string;\n hideUserSegmentation?: boolean;\n};\n\nexport function getRenameSiteUrl({\n wacEnvUrl,\n confirmationPageUrl,\n cloudId,\n cloudName,\n productKeys,\n progressUri,\n isPermitted,\n siteRenamePageUrl,\n hideUserSegmentation\n}: GetRenameSiteUrlType) {\n const confirmationUrl = SignUpFormAPI.generateConfirmationUrl({\n wacEnvUrl,\n confirmationPageUrl,\n cloudId,\n progressUri,\n cloudName,\n products: productKeys.join(','),\n hideUserSegmentation\n });\n\n // Build rename site url\n return SignUpFormAPI.generateRenameUrl(\n wacEnvUrl,\n cloudId,\n progressUri,\n confirmationUrl,\n siteRenamePageUrl,\n isPermitted\n );\n}\n\nexport const localStorageGet = (key: string): string => {\n try {\n return localStorage.getItem(key) || '';\n } catch (e) {\n return '';\n }\n};\n\nexport function checkIfVisited(\n userInfo: UserInfo,\n setShowSignupForm: (val: boolean) => void\n) {\n if (sessionStorage) {\n const storage =\n window.atob(sessionStorage.getItem('social-signup') || '') || null;\n let socialSignupInfo = null;\n if (storage !== null) {\n socialSignupInfo = JSON.parse(storage);\n\n const decodedSocialSignupInfo =\n getDecodedSocialSignupInfo(socialSignupInfo);\n if (decodedSocialSignupInfo !== null) {\n if (_.isEqual(userInfo, decodedSocialSignupInfo.userInfo)) {\n // user is the same, redirect to stored rename url\n window.location.replace(decodedSocialSignupInfo.redirectUrl);\n } else {\n // user is not the same, remove session storage and show signup form\n sessionStorage.removeItem('social-signup');\n setShowSignupForm(true);\n }\n return true;\n }\n }\n }\n return false;\n}\n\nexport function getStatuspageAdvancedSettings(isStaging: boolean) {\n return {\n advancedSettings: {\n initialProductURL: isStaging\n ? 'manage.statuspagestaging.com'\n : 'manage.statuspage.io',\n additionalProvisioningData: {\n signupLocation: 'WAC',\n spProduct: 'public'\n }\n }\n };\n}\n\nexport const getEncodedUserInfo = (unencodedUserInfo: UserInfo) => ({\n ...unencodedUserInfo,\n email: encodeURIComponent(unencodedUserInfo.email || ''),\n firstName: encodeURIComponent(unencodedUserInfo.firstName || ''),\n fullName: encodeURIComponent(unencodedUserInfo.fullName || ''),\n lastName: encodeURIComponent(unencodedUserInfo.lastName || '')\n});\n\nconst trackPermsNR = (\n analyticsTrack: AnalyticsTrackType,\n cloudId: string,\n status: any,\n retryCount: number,\n permitted?: any\n) => {\n analyticsTrack.newRelic.action(\n BXP_CLOUD_PERMS_CHECK,\n JSON.stringify({\n cloudId,\n status,\n retryCount,\n permitted\n })\n );\n};\n\nexport function checkPerms(\n cloudId: string,\n wacEnvUrl: string,\n analyticsTrack: AnalyticsTrackType\n) {\n let retryCount = 1;\n return retry(\n async (bail) => {\n // if anything throws, we retry\n const postBody = {\n dontRequirePrincipalInSite: 'true',\n permissionId: 'manage',\n resourceId: `ari:cloud:platform::site/${cloudId}`\n };\n\n const options = {\n headers: {\n 'content-type': 'application/json'\n },\n method: 'POST',\n body: JSON.stringify(postBody)\n };\n const perms = await fetch(\n `${wacEnvUrl}/gateway/api/permissions/permitted`,\n options\n );\n\n if (\n 403 === perms.status ||\n 401 === perms.status ||\n 500 === perms.status\n ) {\n trackPermsNR(analyticsTrack, cloudId, perms.status, retryCount);\n bail(new Error('Unauthorized or Server error'));\n return;\n }\n // retry if Perms returned http != 200\n if (200 !== perms.status) {\n trackPermsNR(analyticsTrack, cloudId, perms.status, retryCount);\n\n retryCount++;\n throw new Error(BXP_CLOUD_PERMS_CHECK_FALSE);\n }\n\n const data = await perms.json();\n trackPermsNR(\n analyticsTrack,\n cloudId,\n perms.status,\n retryCount,\n data.permitted\n );\n\n // retry if Perms returned http 200 with permitted=false\n if (!(data.permitted === true)) {\n retryCount++;\n throw new Error(BXP_CLOUD_PERMS_CHECK_FALSE);\n }\n return data;\n },\n {\n retries: 4,\n minTimeout: 1000,\n maxTimeout: 1000\n }\n );\n}\n\nexport function getProductKeys(products: Product[]) {\n return products.map(({ product }) => product as string);\n}\n\nexport function filterEligibleSites(\n userInfo: UserInfo,\n productKeysSelectedForProvisioning: string[]\n) {\n const { sites: userSites, extendedTrialOverridableSites } = userInfo;\n return !!userSites\n ? userSites?.filter((existingUserSite: { products: any; cloudId: any }) => {\n const { products: existingProductKeysOnSite, cloudId } =\n existingUserSite;\n\n return (\n !productKeysSelectedForProvisioning.some((productKey) =>\n existingProductKeysOnSite.includes(productKey)\n ) || extendedTrialOverridableSites?.includes(cloudId)\n );\n })\n : [];\n}\n\nexport function buildSocialSignUpPayload(\n userInfo: UserInfo,\n productsSelectedForProvisioning: Product[],\n templateId: string | undefined,\n devMode: boolean,\n isStaging: boolean,\n hideUserSegmentation: boolean\n) {\n const { email, firstName, lastName } = userInfo;\n\n // Some users may not have a last name due to registration by Full Name in some flows\n // COFS requires a last name currently, so we set lastname '.' in this case\n const sanitizedLastName = sanitizeLastName(lastName);\n\n const signupContext = {};\n Object.assign(signupContext, {\n pagePath: 'rename/site',\n autogenSiteName: 1\n });\n\n // Pass in template id for on-boarding in app (Confluence only currently)\n if (templateId) {\n Object.assign(signupContext, { templateId });\n }\n\n const payload = {\n products: productsSelectedForProvisioning.map(\n ({ product: productKey, edition }) => ({\n product: productKey,\n edition\n })\n ),\n adminUsername: 'admin',\n cloudName: null,\n email,\n firstName,\n lastName: sanitizedLastName\n };\n Object.assign(payload, {\n signupContext: JSON.stringify(signupContext)\n });\n\n const isStatuspage = productsSelectedForProvisioning.some(\n ({ product }) => product === ProductKeys.STATUSPAGE\n );\n if (isStatuspage) {\n _.merge(payload, getStatuspageAdvancedSettings(isStaging));\n }\n if (hideUserSegmentation) {\n _.merge(payload, {\n advancedSettings: {\n additionalProvisioningData: {\n hideUserSegmentation: true\n }\n }\n });\n }\n\n // Pass in known Experiment Key to COFS to activate Standard Developer license\n if (devMode) {\n const DEVELOPER_EXPERIMENT_KEY = 'PUR-7747';\n Object.assign(payload, {\n experiment: {\n experimentKey: DEVELOPER_EXPERIMENT_KEY\n }\n });\n }\n\n return payload;\n}\n","import styled from '@emotion/styled';\nimport Cookies from 'js-cookie';\nimport _ from 'lodash';\nimport React, { useEffect, useState } from 'react';\nimport { FormattedMessage, injectIntl } from 'react-intl';\nimport { useSignUpFormGlobalConfiguration } from '../../../../hook/use-sign-up-form-global-configuration';\n\nimport { ProductKeys } from '../../../../model';\nimport type { AnalyticsTrackType, Product, UserInfo } from '../../../../model';\nimport {\n buildSocialSignUpPayload,\n checkIfVisited,\n checkPerms,\n filterEligibleSites,\n getEncodedUserInfo,\n getProductKeys,\n getRenameSiteUrl,\n localStorageGet\n} from '../../../../service';\nimport { SocialSignupErrorView } from './error';\nimport { messages } from './messages';\n\nexport type SocialSignUpViewProps = {\n readonly loadingImageUrl: string;\n readonly productKeys: Product[];\n readonly userInfo?: UserInfo;\n readonly isStaging: boolean;\n readonly wacEnvUrl: string;\n readonly devMode: boolean;\n readonly templateId?: string;\n readonly analyticsTrack: AnalyticsTrackType;\n readonly setShowSignupForm: (val: boolean) => void;\n readonly tryAgainErrorUrl: string;\n readonly errorImageSrc: string;\n readonly testing?: boolean;\n readonly setShowSocialSignupForm?: (val: boolean) => void;\n readonly siteRenamePageUrl: string;\n readonly locale: string;\n};\n\nexport const isProductIncluded = (productKeys: Product[], product: string) => {\n return _.includes(\n _.map(productKeys, (productKey: Product) => productKey.product),\n product\n );\n};\n\nexport function SocialSignUpView(props: SocialSignUpViewProps) {\n const {\n userInfo,\n productKeys: productsSelectedForProvisioning,\n setShowSignupForm,\n loadingImageUrl,\n errorImageSrc,\n isStaging,\n wacEnvUrl,\n devMode,\n templateId,\n analyticsTrack,\n tryAgainErrorUrl,\n testing,\n setShowSocialSignupForm,\n siteRenamePageUrl\n } = props;\n const [showErrorPage, setShowErrorPage] = useState(false);\n const tryAgainUrl = `${tryAgainErrorUrl}/logout?continue=${window.location.href}`;\n\n const { confirmationPageUrl } = useSignUpFormGlobalConfiguration();\n\n useEffect(() => {\n // return if userInfo is not ready or the user is not logged in\n if (!userInfo || !userInfo.isLoggedIn) {\n analyticsTrack.segment('bxp.reactSocialSignup.notLoggedIn', {});\n return;\n }\n\n // check session storage if this user been on social signup before\n // redirect to stored rename url if they did\n if (checkIfVisited(userInfo, setShowSignupForm)) {\n analyticsTrack.segment('bxp.reactSocialSignup.alreadyVisited', {});\n return;\n }\n\n const productKeysSelectedForProvisioning = getProductKeys(\n productsSelectedForProvisioning\n );\n\n const isJsw = isProductIncluded(\n productsSelectedForProvisioning,\n ProductKeys.JIRA_SOFTWARE\n );\n const isJsm = isProductIncluded(\n productsSelectedForProvisioning,\n ProductKeys.JIRA_SERVICE_DESK\n );\n const isJwm = isProductIncluded(\n productsSelectedForProvisioning,\n ProductKeys.JIRA_CORE\n );\n // suppress User Segmentation Screen for Jira Template Signups\n const hideUserSegmentation = !!(templateId && (isJsw || isJsm || isJwm));\n\n // show the N2E signup form if the user has existing sites that do not\n // already have the selected products or do but they are extended trials\n const eligibleSites = filterEligibleSites(\n userInfo,\n productKeysSelectedForProvisioning\n );\n\n const hasEligibleSites = eligibleSites.length > 0;\n // has eligible sites so show N2E form for user to select existing site\n // to add these new products to\n setShowSignupForm(hasEligibleSites);\n analyticsTrack.segment('bxp.reactSocialSignup.hasEligibleSites', {\n hasEligibleSites\n });\n\n if (hasEligibleSites) {\n // setShowSignupForm equaling false will make the signupform render,\n // if its true the loading gif will always show\n if (setShowSocialSignupForm !== undefined) {\n setShowSocialSignupForm(false);\n }\n analyticsTrack.segment('bxp.reactSocialSignup.foundEligibleSites', {\n numEligibleSites: eligibleSites.length,\n productKeysSelectedForProvisioning\n });\n analyticsTrack.newRelic.action(\n 'Found Eligible Sites',\n JSON.stringify({\n numEligibleSites: eligibleSites.length,\n productKeysSelectedForProvisioning\n })\n );\n } else {\n if (!!userInfo.sites && userInfo.sites?.length > 1) {\n analyticsTrack.segment('bxp.reactSocialSignup.foundExistingSites', {\n numExistingSites: userInfo.sites.length,\n productKeysSelectedForProvisioning\n });\n analyticsTrack.newRelic.action(\n 'Found Existing Sites',\n JSON.stringify({\n numExistingSites: userInfo.sites.length,\n productKeysSelectedForProvisioning\n })\n );\n } else {\n analyticsTrack.segment('bxp.reactSocialSignup.foundNoSites', {});\n analyticsTrack.newRelic.action('Found No Sites', '');\n }\n\n // if no eligible sites, create new site and redirect to confirmation page\n const payload = buildSocialSignUpPayload(\n userInfo,\n productsSelectedForProvisioning,\n templateId,\n devMode,\n isStaging,\n hideUserSegmentation\n );\n\n const submitUrl = userInfo.isLoggedIn\n ? `https://${\n isStaging ? 'wac.stg.internal.' : 'www.'\n }atlassian.com/gateway/api/cloud/signup`\n : `${wacEnvUrl}/endpoint/cloud/signupAnon`;\n fetch(submitUrl, {\n method: 'POST',\n headers: {\n 'Content-Type': 'application/json',\n 'atl-cookies': JSON.stringify({\n _ga: Cookies.get('_ga') || '',\n seg_xid: localStorageGet('seg_xid'),\n __atl_path: Cookies.get('__atl_path') || '',\n ajs_anonymous_id: Cookies.get('ajs_anonymous_id') || ''\n })\n },\n body: JSON.stringify(payload),\n credentials: 'include'\n })\n .then((response: Response) => {\n if (response.ok && response.status === 200) {\n response\n .json()\n .then((body) => {\n analyticsTrack.segment(\n 'bxp.cloud-signup.social-signup-page.site-created',\n {\n cloudId: body.cloudId,\n status: 200\n }\n );\n const productKeysToAdd = productsSelectedForProvisioning.map(\n ({ product: newProductKeyToAdd }) =>\n newProductKeyToAdd as string\n );\n let isPermitted = false;\n checkPerms(body.cloudId, wacEnvUrl, analyticsTrack)\n .then((res) => {\n isPermitted = res.permitted;\n analyticsTrack.segment(\n 'bxp.cloud-signup.rename.site.completed.permissions.check',\n {\n cloudId: body.cloudId,\n status: 200,\n permitted: res.permitted\n }\n );\n analyticsTrack.newRelic.action(\n 'bxp.cloud-signup.rename.site.completed.permissions.check',\n JSON.stringify({\n cloudId: body.cloudId,\n status: 200,\n permitted: res.permitted\n })\n );\n const data = {\n category: 'cart-cloud',\n action: 'Completed permissions check',\n label: 'complete-social-signup-page',\n attributes: {\n cloudId: body.cloudId,\n status: 200,\n permitted: res.permitted\n },\n isNonInteraction: true\n };\n analyticsTrack.segment(data.label, data);\n const renameUrl = getRenameSiteUrl({\n wacEnvUrl,\n confirmationPageUrl,\n cloudId: body.cloudId,\n cloudName: body.cloudName,\n productKeys: productKeysToAdd,\n progressUri: body.progressUri,\n isPermitted,\n siteRenamePageUrl,\n hideUserSegmentation\n });\n\n sessionStorage.setItem(\n 'social-signup',\n window.btoa(\n JSON.stringify({\n userInfo: getEncodedUserInfo(userInfo),\n redirectUrl: renameUrl\n })\n )\n );\n window.location.replace(renameUrl);\n })\n .catch((e) => {\n isPermitted = false;\n analyticsTrack.segment(\n 'bxp.cloud-signup.rename.site.failed.permissions.check',\n {\n cloudId: body.cloudId,\n message: e.message\n }\n );\n analyticsTrack.newRelic.action(\n 'bxp.cloud-signup.rename.site.failed.permissions.check',\n JSON.stringify({\n cloudId: body.cloudId,\n message: e.message\n })\n );\n const data = {\n category: 'cart-cloud',\n action: 'Failed permissions check',\n label: 'complete-social-signup-page',\n attributes: {\n cloudId: body.cloudId,\n message: e.message\n },\n isNonInteraction: true\n };\n analyticsTrack.segment(data.label, data);\n const renameUrl = getRenameSiteUrl({\n wacEnvUrl,\n confirmationPageUrl,\n cloudId: body.cloudId,\n cloudName: body.cloudName,\n productKeys: productKeysToAdd,\n progressUri: body.progressUri,\n isPermitted,\n siteRenamePageUrl,\n hideUserSegmentation\n });\n sessionStorage.setItem(\n 'social-signup',\n window.btoa(\n JSON.stringify({\n userInfo: getEncodedUserInfo(userInfo),\n redirectUrl: renameUrl\n })\n )\n );\n window.location.replace(renameUrl);\n });\n })\n .catch(() => {\n // To-Do show error screen\n setShowErrorPage(true);\n });\n } else {\n // To-Do show error screen\n setShowErrorPage(true);\n }\n })\n .catch(() => {\n // To-Do show error screen\n setShowErrorPage(true);\n });\n }\n }, [userInfo]);\n\n return (\n \n {!(showErrorPage || testing) && (\n <>\n {'loading...'}\n \n \n )}\n {(showErrorPage || testing) && (\n \n )}\n \n );\n}\n\nSocialSignUpView.messages = messages;\n\nexport default injectIntl(SocialSignUpView);\n\nconst Root = styled.div`\n margin: 10px 10px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n position: relative;\n font-family: Charlie Text, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,\n Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n`;\n","import { defineMessages } from 'react-intl';\n\nexport const messages = defineMessages({\n cloudStandard: {\n id: 'WacSignupHeader.cloudStandard',\n defaultMessage: 'Cloud Standard'\n },\n cloudPremium: {\n id: 'WacSignupHeader.cloudPremium',\n defaultMessage: 'Cloud Premium'\n },\n cloudFree: {\n id: 'WacSignupHeader.cloudFree',\n defaultMessage: 'Cloud Free'\n }\n});\n","import styled from '@emotion/styled';\nimport React from 'react';\nimport { messages } from '../messages';\n\nexport function Subtitle(\n edition: string | null | undefined,\n isWhiteBackground: boolean\n) {\n switch (edition) {\n case 'standard':\n return (\n \n {messages.cloudStandard.defaultMessage}\n \n );\n case 'premium':\n return (\n \n {messages.cloudPremium.defaultMessage}\n \n );\n default:\n return (\n \n {messages.cloudFree.defaultMessage}\n \n );\n }\n}\n\nconst SubtitleText = styled.h4<{ primary: boolean }>`\n margin: 0px;\n font-size: 20px;\n font-weight: 400;\n color: ${(props) => (props.primary ? 'rgba(13, 20, 36, 0.97)' : 'white')};\n`;\n","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Atlassian icon__\n *\n * The Atlassian icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlassianIcon = ({\n appearance,\n label = 'Atlassian',\n size = defaultLogoParams.size,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor,\n testId\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n textColor: textColor,\n size: size,\n testId: testId\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor,\n // We treat the word \"Atlassian\" differently to normal product logos\n atlassianLogoTextColor: textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n >\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Atlassian wordmark__\n *\n * The Atlassian brand name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlassianWordmark = ({\n appearance,\n label = 'Atlassian',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor,\n // We treat the word \"Atlassian\" differently to normal product logos, it has a bold brand look\n atlassianLogoTextColor: textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Atlassian start logo__\n *\n * The Atlassian Start logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlassianStartLogo = ({\n appearance,\n label = 'Atlassian Start',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n label,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance\n}) => {\n // Replace with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n appearance\n });\n const colors = getColorsFromAppearance(appearance);\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Atlassian Analytics icon__\n *\n * The Atlassian Analytics icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlassianAnalyticsIcon = ({\n appearance,\n label = 'Atlassian Analytics',\n size = defaultLogoParams.size,\n testId\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance\n }),\n size: size,\n testId: testId\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n appearance\n });\n const colors = getColorsFromAppearance(appearance);\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Atlassian Analytics logo__\n *\n * The Atlassian Analytics logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlassianAnalyticsLogo = ({\n appearance,\n label = 'Atlassian Analytics',\n size = defaultLogoParams.size,\n testId\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance\n }),\n testId: testId\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Bitbucket icon__\n *\n * The Bitbucket icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const BitbucketIcon = ({\n appearance,\n label = 'Bitbucket',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n id = `bitbucketLogo-${appearance}`;\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Bitbucket logo__\n *\n * The Bitbucket logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const BitbucketLogo = ({\n appearance,\n label = 'Bitbucket',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n`;\n};\n\n/**\n * __Bitbucket wordmark__\n *\n * The Bitbucket brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const BitbucketWordmark = ({\n appearance,\n label = 'Bitbucket',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Compass icon__\n *\n * The Compass icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const CompassIcon = ({\n appearance,\n label = 'Compass',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Compass logo__\n *\n * The Compass logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const CompassLogo = ({\n appearance,\n label = 'Compass',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n `;\n};\n\n/**\n * __Compass wordmark__\n *\n * The Compass brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const CompassWordmark = ({\n appearance,\n label = 'Compass',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Confluence icon__\n *\n * The Confluence icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const ConfluenceIcon = ({\n appearance,\n label = 'Confluence',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Confluence logo__\n *\n * The Confluence logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const ConfluenceLogo = ({\n appearance,\n label = 'Confluence',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n`;\n};\n\n/**\n * __Confluence wordmark__\n *\n * The Confluence brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const ConfluenceWordmark = ({\n appearance,\n label = 'Confluence',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Halp icon__\n *\n * The Halp icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const HalpIcon = ({\n appearance,\n label = 'Halp',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Halp logo__\n *\n * The Halp logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const HalpLogo = ({\n appearance,\n label = 'Halp',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n `;\n};\n\n/**\n * __Halp wordmark__\n *\n * The Halp brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const HalpWordmark = ({\n appearance,\n label = 'Halp',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated HipchatIcon will be removed from @atlaskit/logo in the next major release.\n */\nexport const HipchatIcon = ({\n label = 'Hipchat',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('HipchatIcon has been deprecated and will be removed from @atlaskit/logo after June 30 2021.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n svg: svg({\n iconGradientStart,\n iconGradientStop\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated HipchatLogo will be removed from @atlaskit/logo in the next major release.\n */\nexport const HipchatLogo = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Hipchat',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('HipchatLogo has been deprecated and will be removed from @atlaskit/logo after June 30 2021.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n iconGradientStart,\n iconGradientStop\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = () => `\n\n \n \n \n`;\n\n/**\n * @deprecated HipchatWordmark will be removed from @atlaskit/logo in the next major release.\n */\nexport const HipchatWordmark = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Hipchat',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('HipchatWordmark has been deprecated and will be removed from @atlaskit/logo after June 30 2021.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg(),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Align icon__\n *\n * The Jira Align icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraAlignIcon = ({\n appearance,\n label = 'Jira Align',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n size\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Align logo__\n *\n * The Jira Align logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraAlignLogo = ({\n appearance,\n label = 'Jira Align',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor,\n size,\n label\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Align wordmark__\n *\n * The Jira Align brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraAlignWordmark = ({\n appearance,\n label = 'Jira Align',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop,\n size\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated JiraCoreIcon will be removed from @atlaskit/logo in the next major release. Please use JiraWorkManagementIcon instead.\n */\nexport const JiraCoreIcon = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Jira Core',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('JiraCoreIcon has been deprecated and will be removed from @atlaskit/logo in the next major release. Please use JiraWorkManagementIcon instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n svg: svg({\n iconGradientStart,\n iconGradientStop\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated JiraCoreLogo will be removed from @atlaskit/logo in the next major release. Please use JiraWorkManagementLogo instead.\n */\nexport const JiraCoreLogo = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Jira Core',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('JiraCoreLogo has been deprecated and will be removed from @atlaskit/logo in the next major release. Please use JiraWorkManagementLogo instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n iconGradientStart,\n iconGradientStop\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = () => `\n \n \n \n`;\n\n/**\n * @deprecated JiraCoreWordmark will be removed from @atlaskit/logo in the next major release. Please use JiraWorkManagementWordmark instead.\n */\nexport const JiraCoreWordmark = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Jira Core',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('JiraCoreWordmark has been deprecated and will be removed from @atlaskit/logo in the next major release. Please use JiraWorkManagementWordmark instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg(),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira icon__\n *\n * The Jira icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraIcon = ({\n appearance,\n label = 'Jira',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n size\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n size,\n label,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira logo__\n *\n * The Jira logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraLogo = ({\n appearance,\n label = 'Jira',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor,\n size,\n label\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n`;\n};\n\n/**\n * __Jira wordmark__\n *\n * The Jira brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraWordmark = ({\n appearance,\n label = 'Jira',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Jira Product Discovery icon__\n *\n * The Jira Product Discovery icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraProductDiscoveryIcon = ({\n appearance,\n label = 'Jira Product Discovery',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n label,\n size\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Product Discovery logo__\n *\n * The Jira Product Discovery logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraProductDiscoveryLogo = ({\n appearance,\n label = 'Jira Product Discovery',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop,\n size\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated JiraServiceDeskIcon will be removed from atlaskit/logo in the next major release. Please use JiraServiceManagementIcon instead.\n */\nexport const JiraServiceDeskIcon = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Jira Service Desk',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('JiraServiceDeskIcon has been deprecated and will be removed from @atlaskit/logo in the next major release. Please use JiraServiceManagementIcon instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n svg: svg({\n iconGradientStart,\n iconGradientStop,\n size\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop,\n size\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated JiraServiceDeskLogo will be removed from atlaskit/logo in the next major release. Please use JiraServiceManagementLogo instead.\n */\nexport const JiraServiceDeskLogo = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Jira Service Desk',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('JiraServiceDeskLogo has been deprecated and will be removed from @atlaskit/logo in the next major release. Please use JiraServiceManagementLogo instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n iconGradientStart,\n iconGradientStop\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = `\n \n \n \n`;\n\n/**\n * @deprecated JiraServiceDeskWordmark will be removed from atlaskit/logo in the next major release. Please use JiraServiceManagementWordmark instead.\n */\nexport const JiraServiceDeskWordmark = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n label = 'Jira Service Desk',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('JiraServiceDeskWordmark has been deprecated and will be removed from @atlaskit/logo in the next major release. Please use JiraServiceManagementWordmark instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Service Management icon__\n *\n * The Jira Service Management icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraServiceManagementIcon = ({\n appearance,\n label = 'Jira Service Management',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n label,\n size\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Service Management logo__\n *\n * The Jira Service Management logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraServiceManagementLogo = ({\n appearance,\n label = 'Jira Service Management',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n\n`;\n};\n\n/**\n * __Jira Service Management wordmark__\n *\n * The Jira Service Management brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraServiceManagementWordmark = ({\n appearance,\n label = 'Jira Service Management',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira software icon__\n *\n * The Jira Software icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraSoftwareIcon = ({\n appearance,\n label = 'Jira Software',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Software logo__\n *\n * The Jira Software logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraSoftwareLogo = ({\n appearance,\n label = 'Jira Software',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n`;\n};\n\n/**\n * __Jira Software wordmark__\n *\n * The Jira Software brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraSoftwareWordmark = ({\n appearance,\n label = 'Jira Software',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Jira Work Management logo__\n *\n * The Jira Work Management logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraWorkManagementLogo = ({\n appearance,\n label = 'Jira Work Management',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n `;\n};\n\n/**\n * __Jira Work Management wordmark__\n *\n * The Jira Work Management brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraWorkManagementWordmark = ({\n appearance,\n label = 'Jira Work Management',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n textColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Jira Work Management icon__\n *\n * The Jira Work Management icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const JiraWorkManagementIcon = ({\n appearance,\n label = 'Jira Work Management',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop,\n size\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * This is the old OpsGenieIcon that was meant to be deprecated but was never removed.\n * This is because it casing it incorrect, it should be Opsgenie, not OpsGenie.\n */\n/**\n * @deprecated OpsGenieIcon is incorrectly cased and will be removed from atlaskit/logo in the next major release. Please use OpsgenieIcon (no capital 'g') instead.\n */\nexport const OpsGenieIcon = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('OpsGenieIcon will be renamed to OpsgenieIcon in the next major release. Please use OpsgenieIcon instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n svg: svg({\n iconGradientStart,\n iconGradientStop,\n size\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop,\n size\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated OpsGenieLogo is incorrectly cased and will be removed from atlaskit/logo in the next major release. Please use OpsgenieLogo (no capital 'g') instead.\n */\nexport const OpsGenieLogo = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('OpsGenieLogo will be renamed to OpsgenieLogo in the next major release. Please use OpsgenieLogo instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n iconGradientStart,\n iconGradientStop,\n size\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = () => `\n\n \n \n \n`;\n\n/**\n * @deprecated OpsGenieWordmark is incorrectly cased and will be removed from atlaskit/logo in the next major release. Please use OpsgenieLogo (no capital 'g') instead.\n */\nexport const OpsGenieWordmark = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('OpsGenieWordmark will be renamed to OpsgenieWordmark in the next major release. Please use OpsgenieWordmark instead.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n svg: svg(),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Opsgenie icon__\n *\n * The Opsgenie icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const OpsgenieIcon = ({\n appearance,\n label = 'Opsgenie',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n svg: svg({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n label: label,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Opsgenie logo__\n *\n * The Opsgenie logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const OpsgenieLogo = ({\n appearance,\n label = 'Opsgenie',\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n label: label,\n size: size,\n svg: svg({\n appearance,\n size,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n`;\n};\n\n/**\n * __Opsgenie wordmark__\n *\n * The Opsgenie brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const OpsgenieWordmark = ({\n appearance,\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n svg: svg({\n appearance,\n textColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * __Statuspage icon__\n *\n * The Statuspage icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const StatuspageIcon = ({\n appearance,\n label = 'Statuspage',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Statuspage logo__\n *\n * The Statuspage logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const StatuspageLogo = ({\n appearance,\n label = 'Statuspage',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n iconColor,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n`;\n};\n\n/**\n * __Statuspage wordmark__\n *\n * The Statuspage brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const StatuspageWordmark = ({\n appearance,\n label = 'Statuspage',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n textColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated StrideIcon will be removed from atlaskit/logo in the next major release.\n */\nexport const StrideIcon = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('StrideIcon has been deprecated and will be removed from @atlaskit/logo in the next major release.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n svg: svg({\n iconGradientStart,\n iconGradientStop\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n iconGradientStart,\n iconGradientStop\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n return `\n \n \n \n \n \n \n \n \n \n \n \n \n `;\n};\n\n/**\n * @deprecated StrideLogo will be removed from atlaskit/logo in the next major release.\n */\nexport const StrideLogo = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('StrideLogo has been deprecated and will be removed from @atlaskit/logo in the next major release.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n iconGradientStart,\n iconGradientStop\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport warnOnce from '@atlaskit/ds-lib/warn-once';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = () => `\n\n \n \n \n`;\n\n/**\n * @deprecated StrideWordmark will be removed from atlaskit/logo in the next major release.\n */\nexport const StrideWordmark = ({\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n size = defaultLogoParams.size,\n testId,\n textColor = defaultLogoParams.textColor\n}) => {\n if (typeof process !== 'undefined' && process.env.NODE_ENV !== 'production') {\n warnOnce('StrideWordmark has been deprecated and will be removed from @atlaskit/logo in the next major release.');\n }\n return /*#__PURE__*/React.createElement(Wrapper, {\n svg: svg(),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n\n \n \n \n \n \n \n \n\n`;\n};\n\n/**\n * __Trello logo__\n *\n * The Trello icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const TrelloIcon = ({\n appearance,\n label = 'Trello',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n iconGradientStart,\n iconGradientStop,\n textColor\n}) => {\n let colors = {\n iconGradientStart,\n iconGradientStop,\n textColor\n };\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n iconGradientStart: iconGradientStop\n });\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n \n \n \n \n \n \n`;\n};\n\n/**\n * __Trello logo__\n *\n * The Trello logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlasLogo = ({\n appearance,\n label = 'Trello',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n svg: svg({\n appearance,\n iconGradientStart,\n iconGradientStop,\n textColor\n }),\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { defaultLogoParams } from '../constants';\nimport { getColorsFromAppearance } from '../utils';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance,\n textColor\n}) => {\n let colors = {\n textColor\n };\n if (appearance) {\n colors = getColorsFromAppearance(appearance);\n }\n return `\n \n \n \n `;\n};\n\n/**\n * __Trello wordmark__\n *\n * The Trello brand/product name styled as a logo, without an accompanying icon.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const TrelloWordmark = ({\n appearance,\n label = 'Trello',\n size = defaultLogoParams.size,\n testId,\n iconColor = defaultLogoParams.iconColor,\n iconGradientStart = defaultLogoParams.iconGradientStart,\n iconGradientStop = defaultLogoParams.iconGradientStop,\n textColor = defaultLogoParams.textColor\n}) => {\n return /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance,\n textColor\n }),\n iconColor: iconColor,\n iconGradientStart: iconGradientStart,\n iconGradientStop: iconGradientStop,\n size: size,\n testId: testId,\n textColor: textColor\n });\n};","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { B400 } from '@atlaskit/theme/colors';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n appearance\n });\n\n // Brand\n let colors = {\n iconGradientStart: '#1D7AFC',\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage\n iconGradientMid: B400,\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage\n iconGradientStop: B400\n };\n if (appearance === 'neutral') {\n colors = {\n iconGradientStart: '#758195',\n iconGradientMid: '#596A85',\n iconGradientStop: '#2C3E5D'\n };\n }\n const baseIconContents = `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n\n /**\n * inverse icons use transparency to achieve a certain gradient effect, requiring a different SVG structure\n */\n const inverseIconContents = `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n return `\n ${appearance === 'inverse' ? inverseIconContents : baseIconContents}\n`;\n};\n\n/**\n * __Atlas logo__\n *\n * The Atlas icon without an accompanying wordmark.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlasIcon = ({\n appearance,\n label = 'Atlas',\n size = defaultLogoParams.size,\n testId\n}) => /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n svg: svg({\n appearance\n }),\n size: size,\n testId: testId\n});","/* eslint-disable max-len */\nimport React from 'react';\nimport { uid } from 'react-uid';\nimport { B400 } from '@atlaskit/theme/colors';\nimport { defaultLogoParams } from '../constants';\nimport Wrapper from '../wrapper';\nconst svg = ({\n appearance\n}) => {\n // Will be fixed upon removal of deprecated iconGradientStart and\n // iconGradientStop props, or with React 18's useId() hook when we update.\n // eslint-disable-next-line @repo/internal/react/disallow-unstable-values\n let id = uid({\n appearance\n });\n\n // Brand\n let colors = {\n iconGradientStart: '#1d7afc',\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage\n iconGradientMid: B400,\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage\n iconGradientStop: B400,\n // eslint-disable-next-line @atlaskit/design-system/ensure-design-token-usage\n textStart: B400\n };\n if (appearance === 'neutral') {\n colors = {\n iconGradientStart: '#758195',\n iconGradientMid: '#596a85',\n iconGradientStop: '#2c3e5d',\n textStart: '#758195'\n };\n }\n const baseIconContents = `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n `;\n\n /**\n * inverse icons use transparency to achieve a certain gradient effect, requiring a different SVG structure\n */\n const inverseIconContents = `\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n`;\n return `\n ${appearance === 'inverse' ? inverseIconContents : baseIconContents}\n`;\n};\n\n/**\n * __Atlas logo__\n *\n * The Atlas logo with both the wordmark and the icon combined.\n *\n * - [Examples](https://atlassian.design/components/logo/examples)\n * - [Code](https://atlassian.design/components/logo/code)\n * - [Usage](https://atlassian.design/components/logo/usage)\n */\nexport const AtlasLogo = ({\n appearance,\n label = 'Atlas',\n size = defaultLogoParams.size,\n testId\n}) => /*#__PURE__*/React.createElement(Wrapper, {\n appearance: appearance,\n label: label,\n size: size,\n svg: svg({\n appearance\n }),\n testId: testId\n});","import * as Logos from '@atlaskit/logo';\nimport { DN10A, N0 } from '@atlaskit/theme/colors';\nimport { AppKey, ProductKey } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { Product } from '../model';\nimport { useSignUpFormConfig } from '../../../../../hook';\n\nexport function Logo(product: Product, isWhiteBackground: boolean) {\n const { bundle } = useSignUpFormConfig();\n const productkey = product.product;\n const productContent =\n product.productContent && product.productContent.length\n ? product.productContent.find(\n (content) => content.productKey === productkey\n )\n : null;\n const isJiraFamily =\n bundle === 'jira' && productkey === ProductKey.JIRA_SOFTWARE;\n const textColor = isWhiteBackground ? DN10A : N0;\n const appearance = isWhiteBackground ? 'brand' : 'inverse';\n const Logostyle = {\n size: 'xlarge',\n appearance\n };\n\n if (productContent && productContent.atlasKitLogoName) {\n // Try and get Atlaskit Logo from product data\n if (productContent.atlasKitLogoName) {\n const allLogos = { ...Logos };\n const ProductLogoClass = allLogos[productContent.atlasKitLogoName];\n if (!!ProductLogoClass) {\n return ;\n }\n }\n }\n // @ts-ignore\n\n if (Object.values(AppKey).includes(productkey)) {\n return (\n \n );\n }\n\n // for team central, get the logo from magnolia\n const useCMSLogo =\n productkey === ProductKey.TEAM_CENTRAL ||\n productkey === ProductKey.JIRA_PRODUCT_DISCOVERY ||\n productkey === ProductKey.FABRIC ||\n productkey === ProductKey.BEACON;\n\n if (useCMSLogo && !!productContent.productLogoWhiteUrl) {\n return (\n \n );\n }\n\n if (isJiraFamily) {\n return ;\n }\n\n switch (productkey) {\n case 'com.atlassian.bitbucket':\n return ;\n case 'confluence.ondemand':\n return ;\n case 'jira-core.ondemand':\n return ;\n case 'jira-servicedesk.ondemand':\n return (\n \n );\n case 'jira-software.ondemand':\n return ;\n case 'jira-workmanagement.ondemand':\n return ;\n case 'opsgenie':\n return ;\n case 'statuspage':\n return ;\n case 'trello':\n return ;\n case 'compass':\n return ;\n default:\n return productContent && productContent.productName ? (\n

    {productContent.productName}

    \n ) : (\n \n );\n }\n}\n\nconst CMSLogo = styled.img`\n height: 48px;\n`;\n","import React, { Fragment } from 'react';\nimport AddIcon from '@atlaskit/icon/glyph/add';\nimport styled from '@emotion/styled';\nimport { map } from 'lodash';\nimport { Logo, Subtitle } from './components';\nimport { WacSignupHeaderProps } from './model';\nimport { useSignUpFormConfig } from '../../../../hook';\n\nfunction WacSignupHeader({\n productKeys,\n isWhiteBackground = false\n}: WacSignupHeaderProps) {\n const { edition, bundle } = useSignUpFormConfig();\n const headerBuffer: JSX.Element[] = [];\n const isJiraFamily = bundle === 'jira';\n isJiraFamily\n ? headerBuffer.push(Logo(productKeys[0], isWhiteBackground))\n : map(productKeys, (productKey) =>\n headerBuffer.push(Logo(productKey, isWhiteBackground))\n );\n\n if (headerBuffer.length > 1 && !isJiraFamily) {\n return (\n \n \n {headerBuffer.map((item, index) =>\n index === 0 ? (\n {item}\n ) : (\n \n \n \n \n {item}\n \n )\n )}\n \n
    {Subtitle(edition, isWhiteBackground)}
    \n
    \n );\n }\n return (\n \n \n {headerBuffer.map((item, index) => (\n {item}\n ))}\n \n
    {Subtitle(edition, isWhiteBackground)}
    \n
    \n );\n}\n\nexport default WacSignupHeader;\n\nconst Container = styled.div`\n margin: 10px 10px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n position: relative;\n font-family: Charlie Text, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,\n Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n`;\n\nconst PlusIcon = styled.div`\n margin-left: 15px;\n margin-right: 15px;\n margin-top: 15px;\n display: inline-block;\n position: relative;\n bottom: 10px;\n`;\nconst HeaderContainer = styled.div`\n display: flex;\n align-items: center;\n svg,\n img {\n margin-bottom: 0px !important;\n }\n`;\nconst HeaderContainerWithPlus = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n svg {\n margin-bottom: 0px !important;\n }\n`;\n","/* eslint-disable @atlassian/tangerine/import/entry-points */\n/* eslint-disable @atlaskit/design-system/ensure-design-token-usage */\n/* eslint-disable @atlaskit/design-system/no-unsafe-design-token-usage */\n\nimport React, { memo } from 'react';\nimport Box from '@atlaskit/ds-explorations/box';\nimport Text from '@atlaskit/ds-explorations/text';\n/**\n * __Lozenge__\n *\n * A lozenge is a visual indicator used to highlight an item's status for quick recognition.\n *\n * - [Examples](https://atlassian.design/components/lozenge/examples)\n * - [Code](https://atlassian.design/components/lozenge/code)\n * - [Usage](https://atlassian.design/components/lozenge/usage)\n */\nconst Lozenge = /*#__PURE__*/memo(({\n children,\n testId,\n isBold = false,\n appearance = 'default',\n maxWidth = 200,\n style\n}) => {\n const appearanceStyle = isBold ? 'bold' : 'subtle';\n const appearanceType = appearance in backgroundColors[appearanceStyle] ? appearance : 'default';\n const maxWidthValue = typeof maxWidth === 'string' ? maxWidth : `${maxWidth}px`;\n const maxWidthIsPc = typeof maxWidth === 'string' && /%$/.test(maxWidth);\n return /*#__PURE__*/React.createElement(Box, {\n as: \"span\",\n display: \"inlineFlex\",\n backgroundColor: backgroundColors[appearanceStyle][appearanceType],\n borderRadius: \"normal\",\n paddingInline: \"space.050\",\n position: \"static\",\n testId: testId,\n overflow: \"hidden\",\n UNSAFE_style: {\n backgroundColor: style === null || style === void 0 ? void 0 : style.backgroundColor,\n maxWidth: maxWidthIsPc ? maxWidth : '100%'\n }\n }, /*#__PURE__*/React.createElement(Text, {\n fontSize: \"size.050\",\n fontWeight: \"bold\",\n lineHeight: \"lineHeight.100\",\n textTransform: \"uppercase\",\n color: textColors[appearanceStyle][appearanceType],\n shouldTruncate: true,\n UNSAFE_style: {\n color: style === null || style === void 0 ? void 0 : style.color,\n // to negate paddingInline specified on Box above\n maxWidth: maxWidthIsPc ? '100%' : `calc(${maxWidthValue} - ${\"var(--ds-space-100, 8px)\"})`\n },\n testId: testId && `${testId}--text`\n }, children));\n});\nLozenge.displayName = 'Lozenge';\nexport default Lozenge;\n\n// Lozenge colors\nconst backgroundColors = {\n bold: {\n default: 'neutral.bold',\n inprogress: 'information.bold',\n moved: 'warning.bold',\n new: 'discovery.bold',\n removed: 'danger.bold',\n success: 'success.bold'\n },\n subtle: {\n default: 'neutral',\n inprogress: 'information',\n moved: 'warning',\n new: 'discovery',\n removed: 'danger',\n success: 'success'\n }\n};\nconst textColors = {\n bold: {\n default: 'inverse',\n inprogress: 'inverse',\n moved: 'warning.inverse',\n new: 'inverse',\n removed: 'inverse',\n success: 'inverse'\n },\n subtle: {\n default: 'subtle',\n inprogress: 'information',\n moved: 'warning',\n new: 'discovery',\n removed: 'danger',\n success: 'success'\n }\n};","import { defineMessages } from 'react-intl';\nconst ID_PREFIX = 'WacSignupForm.';\nexport const messages = defineMessages({\n devopsSwitchAccounts: {\n id: `${ID_PREFIX}devopsSwitchAccounts`,\n defaultMessage: 'Log in to another account'\n },\n devopsEarlyAccess: {\n id: `${ID_PREFIX}devopsEarlyAccess`,\n defaultMessage: 'EARLY ACCESS PROGRAM'\n },\n devopsLogoSubHeader: {\n id: `${ID_PREFIX}devopsLogoSubHeader`,\n defaultMessage: \"DevOps isn't bought, it's built\"\n },\n devopsLogo: {\n id: `${ID_PREFIX}devopsLogo`,\n defaultMessage: 'solution'\n }\n});\n","import * as Logos from '@atlaskit/logo';\nimport Lozenge from '@atlaskit/lozenge';\nimport { B200, B400, DN10A, N700 } from '@atlaskit/theme/colors';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport { ProductKey } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { LogoOptionsType } from '../../../../../model/side-information-component';\nimport { messages } from '../messages';\n\nenum Product {\n DEVOPS = 'devops'\n}\n\nexport function Logo({ product, layout, logoColor }: LogoOptionsType) {\n const productkey = product.product;\n const textColor = layout === 'devops' ? N700 : DN10A;\n\n const productContent =\n product.productContent && product.productContent.length\n ? product.productContent[0]\n : null;\n\n const Logostyle = {\n iconColor: B200,\n iconGradientStart: B400,\n iconGradientStop: B200,\n size: 'xlarge',\n textColor\n };\n\n if (logoColor) {\n Logostyle.iconColor = logoColor;\n Logostyle.textColor = logoColor;\n }\n if (layout === Product.DEVOPS && product.product === Product.DEVOPS) {\n return (\n \n \n \n DevOps {messages.devopsLogo.defaultMessage}\n \n \n \n \n \n \n \n \n \n \n );\n }\n\n // for team central, get the logo from magnolia\n if (\n (productkey === ProductKey.TEAM_CENTRAL &&\n !!productContent.productLogoUrl) ||\n (productkey === ProductKey.JIRA_PRODUCT_DISCOVERY &&\n !!productContent.productLogoUrl)\n ) {\n return ;\n }\n\n if (productContent && productContent.atlasKitLogoName) {\n // Check for CMS driven product logo\n // Try and get Atlaskit Logo from product data\n if (productContent.atlasKitLogoName) {\n const allLogos = { ...Logos };\n const ProductLogoClass = allLogos[productContent.atlasKitLogoName];\n if (!!ProductLogoClass) {\n return ;\n }\n }\n }\n\n switch (productkey) {\n case 'com.atlassian.bitbucket':\n return ;\n case 'confluence.ondemand':\n return ;\n case 'jira-core.ondemand':\n return ;\n case 'jira-servicedesk.ondemand':\n return (\n \n );\n case 'jira-software.ondemand':\n return ;\n case 'jira-workmanagement.ondemand':\n return ;\n case 'opsgenie':\n return ;\n case 'statuspage':\n return ;\n case 'trello':\n return ;\n case 'compass':\n return ;\n default:\n return productContent && productContent.productName ? (\n

    ${productContent.productName}

    \n ) : (\n \n );\n }\n}\n\nconst DevopsLogoWrapper = styled.div`\n display: flex;\n line-height: 66px;\n`;\nconst DevopsLogoContainer = styled.div`\n .atl-logo {\n width: 58px;\n height: 55px;\n max-height: none;\n display: inline-block;\n margin: 8px 0;\n\n @media only screen and (max-width: 800px) {\n margin: 0px 0;\n }\n }\n`;\n\nconst LogoText = styled.div`\n @media only screen and (max-width: 800px) {\n display: none;\n }\n white-space: nowrap;\n font-size: 44px;\n font-weight: 600;\n margin-top: 2px;\n`;\nconst SubheadingText = styled.div`\n @media only screen and (max-width: 800px) {\n display: none;\n }\n font-family: Charlie Display;\n font-weight: 400;\n font-size: 34px;\n span {\n margin: 0 !important;\n line-height: 45px;\n }\n`;\nconst LozengeContainer = styled.div`\n @media only screen and (max-width: 800px) {\n display: none;\n }\n margin: 26px 12px 0px 12px;\n span {\n span {\n margin: 0px;\n }\n }\n`;\n\nconst CMSLogo = styled.img`\n height: 48px;\n`;\n","import Spinner from '@atlaskit/spinner';\nimport { N40, N700 } from '@atlaskit/theme/colors';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { LayoutDefaultType } from '../../../../../model/side-information-component';\n\nexport function LayoutDefault({\n isMobile,\n isLoading,\n logo,\n isEdition,\n edition,\n isTrialTime,\n trialTime,\n showListContent,\n productListMsg\n}: LayoutDefaultType) {\n return (\n <>\n {!isMobile && (\n \n {logo}\n {isEdition && {edition}}\n \n )}\n\n {showListContent && isLoading && (\n \n \n \n )}\n\n {isTrialTime && !isLoading && {trialTime}}\n\n {showListContent && !isLoading && (\n \n \n \n )}\n \n );\n}\n\nconst FeaturesDiv = styled.div`\n div {\n font-weight: 500;\n font-family: Charlie Display, -apple-system, BlinkMacSystemFont, Segoe UI,\n Roboto, Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n font-size: 1.25rem;\n line-height: 28px;\n margin-bottom: 22px;\n color: ${N700};\n }\n ul {\n padding-left: 20px;\n padding-bottom: 10px;\n list-style-type: none;\n\n li {\n margin-bottom: 16px;\n position: relative;\n\n &::before {\n background-image: url(\"data:image/svg+xml,%3Csvg width='13px' height='13px' viewBox='0 0 13 13' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round'%3E%3Cg transform='translate(0.000000, -51.000000)' stroke='%230049B0' stroke-width='1.6'%3E%3Cg transform='translate(1.000000, 45.000000)'%3E%3Cg transform='translate(0.000000, 0.416810)'%3E%3Cpolyline points='1.52655666e-16 11.9766645 3.98219585 17 11 7'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n content: '';\n display: inline-block;\n position: absolute;\n left: -20px;\n top: 5px;\n height: 13px;\n width: 13px;\n }\n }\n }\n`;\n\nconst TrialTime = styled.div`\n font-size: 1.25rem;\n line-height: 1.2;\n margin-bottom: 24px;\n color: ${N700};\n margin-top: 0;\n letter-spacing: 0.3px;\n font-weight: 500;\n`;\n\nconst LogoContainer = styled.div`\n display: block;\n width: 100%;\n max-width: 500px;\n margin-bottom: 10px;\n\n canvas,\n svg {\n max-width: 100%;\n }\n`;\n\nconst LogoAndEdition = styled.div`\n position: relative;\n margin-bottom: 24px;\n padding-bottom: 4px;\n border-bottom: 1px solid ${N40};\n`;\n\nconst Edition = styled.div`\n font-weight: 500;\n font-family: Charlie Display, -apple-system, BlinkMacSystemFont, Segoe UI,\n Roboto, Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n font-style: normal;\n letter-spacing: 0.3px;\n margin-top: 20px;\n color: ${N700};\n font-size: 1.5rem;\n line-height: 1.33333333;\n`;\n\nconst SpinnerWrapper = styled.div`\n width: 100%;\n height: 100%;\n min-height: 200px;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n","import { N40, N600 } from '@atlaskit/theme/colors';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport { MobileTrigger } from '@atlassiansox/bxpkit-user-profile-dropdown';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { LayoutDevopsType } from '../../../../../model/side-information-component';\nimport { messages } from '../messages';\n\nexport function LayoutDevops({\n logo,\n hideLogoContent,\n logoColor,\n showListContent,\n productListMsg,\n isSideInfoHeader,\n sideInfoHeaderMsg,\n analyticsTrack,\n userInfo,\n switchUserInfo,\n showMultiProduct\n}: LayoutDevopsType) {\n let picture;\n let email;\n let devOpsUserDisplay;\n const trackDevOpsChangeAccount = () => {\n if (switchUserInfo !== undefined) {\n analyticsTrack.segment(\n 'wac-signup-existing-user-switch',\n switchUserInfo.switchUserOrigin\n );\n }\n };\n const showDevOpsAccountInfo =\n userInfo !== undefined && userInfo.email !== null;\n if (userInfo !== undefined && userInfo.email !== null) {\n picture = `${userInfo.picture}`;\n email = `${userInfo.email}`;\n devOpsUserDisplay = (\n \n \n \n );\n }\n\n return (\n \n {isSideInfoHeader && (\n \n \n \n )}\n\n {!hideLogoContent && (\n \n \n {logo}\n \n {showDevOpsAccountInfo && devOpsUserDisplay}\n \n )}\n\n {showListContent && (\n \n \n \n )}\n \n );\n}\nconst LoggedInView = styled.div`\n position: relative;\n top: 50px;\n\n @media only screen and (max-width: 800px) {\n top: 32px;\n }\n`;\n\nconst DevopsLayout = styled.div<{ readonly logoColor?: string }>`\n font-family: Charlie Display, -apple-system, BlinkMacSystemFont, Segoe UI,\n Roboto, Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n -webkit-font-smoothing: antialiased;\n color: ${(props) => (props.logoColor ? props.logoColor : N600)};\n`;\n\nconst ProductHeading = styled.div`\n font-size: 40px;\n font-weight: 500;\n max-width: 360px;\n line-height: 42px;\n\n @media only screen and (max-width: 800px) {\n display: none;\n }\n`;\n\nconst LogoContainer = styled.div<{ readonly showListContent?: boolean }>`\n position: relative;\n margin-bottom: 24px;\n padding-bottom: 4px;\n border-bottom: ${(props) =>\n props.showListContent ? `1px solid ${N40}` : 'none'};\n display: flex;\n justify-content: space-between;\n`;\n\nconst LogosList = styled.div<{\n readonly logoColor?: string;\n readonly showMultiProduct?: boolean;\n}>`\n position: relative;\n display: block;\n width: auto;\n max-width: 500px;\n margin: ${(props) => (props.showMultiProduct ? '40px' : '32px')} 0 40px\n ${(props) => (props.showMultiProduct ? '34px' : '0')};\n padding-left: ${(props) => (props.showMultiProduct ? '15px' : '0')};\n ${(props) =>\n props.showMultiProduct\n ? `border-left: 1px solid ${props.logoColor ? props.logoColor : N40}`\n : null};\n\n @media only screen and (max-width: 800px) {\n margin: 25px 0px 25px ${(props) => (props.showMultiProduct ? '30px' : '0')};\n }\n ${(props) =>\n props.showMultiProduct\n ? `&:before {\n position: absolute;\n content: '+';\n font-size: 40px;\n left: -35px;\n top: 50%;\n transform: translateY(-50%);\n margin-top: -3px;\n }`\n : null}\n\n span {\n display: block;\n clear: both;\n max-height: 36px;\n margin: 9px 0;\n\n svg {\n width: auto;\n }\n }\n\n canvas,\n svg {\n max-width: 100%;\n }\n`;\n\nconst FeaturesDiv = styled.div`\n ul {\n list-style-type: none;\n padding: 6px 0 10px 20px;\n margin-top: -30px;\n\n li {\n position: relative;\n font-size: 22px;\n font-weight: 500;\n margin-bottom: 18px;\n\n &::before {\n background-image: url(\"data:image/svg+xml,%3Csvg width='13px' height='13px' viewBox='0 0 13 13' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round'%3E%3Cg transform='translate(0.000000, -51.000000)' stroke='%2336B37E' stroke-width='1.6'%3E%3Cg transform='translate(1.000000, 45.000000)'%3E%3Cg transform='translate(0.000000, 0.416810)'%3E%3Cpolyline points='1.52655666e-16 11.9766645 3.98219585 17 11 7'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n content: '';\n display: inline-block;\n position: absolute;\n left: -20px;\n top: 11px;\n height: 13px;\n width: 13px;\n }\n }\n }\n`;\n","import { N40, N600, N700 } from '@atlaskit/theme/colors';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { LayoutDeveloperModeType } from '../../../../../model/side-information-component';\n\nexport function LayoutDeveloperMode({\n showListContent,\n productListMsg,\n isSideInfoHeader,\n sideInfoHeaderMsg,\n isMobile,\n isEdition,\n edition\n}: LayoutDeveloperModeType) {\n return (\n \n {isSideInfoHeader && (\n \n \n \n )}\n\n {!isMobile && (\n \n {isEdition && {edition}}\n \n )}\n\n {showListContent && (\n \n \n \n )}\n \n );\n}\n\nconst DeveloperModeLayout = styled.div`\n font-family: Charlie Display, -apple-system, BlinkMacSystemFont, Segoe UI,\n Roboto, Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n -webkit-font-smoothing: antialiased;\n color: ${N600};\n`;\n\nconst ProductHeading = styled.div`\n font-size: 40px;\n font-weight: 500;\n max-width: 360px;\n line-height: 42px;\n`;\n\nconst LogoAndEdition = styled.div`\n position: relative;\n margin-bottom: 24px;\n padding-bottom: 4px;\n border-bottom: 1px solid ${N40};\n`;\n\nconst Edition = styled.div`\n font-weight: 500;\n font-family: Charlie Display, -apple-system, BlinkMacSystemFont, Segoe UI,\n Roboto, Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n font-style: normal;\n letter-spacing: 0.3px;\n margin-top: 20px;\n color: ${N700};\n font-size: 1.5rem;\n line-height: 1.33333333;\n`;\n\nconst FeaturesDiv = styled.div`\n ul {\n list-style-type: none;\n padding: 6px 0 10px 20px;\n\n li {\n position: relative;\n font-size: 22px;\n font-weight: 500;\n margin-bottom: 11px;\n\n &::before {\n background-image: url(\"data:image/svg+xml,%3Csvg width='13px' height='13px' viewBox='0 0 13 13' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round'%3E%3Cg transform='translate(0.000000, -51.000000)' stroke='%2336B37E' stroke-width='1.6'%3E%3Cg transform='translate(1.000000, 45.000000)'%3E%3Cg transform='translate(0.000000, 0.416810)'%3E%3Cpolyline points='1.52655666e-16 11.9766645 3.98219585 17 11 7'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n content: '';\n display: inline-block;\n position: absolute;\n left: -20px;\n top: 11px;\n height: 13px;\n width: 13px;\n }\n }\n }\n`;\n","import { N400 } from '@atlaskit/theme/colors';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { FirstImpressions } from '../../../../../model/side-information-component';\n\nexport const LayoutFirstImpressions = ({\n className,\n productListMsg,\n socialProof\n}: FirstImpressions) => {\n const showSocialProofImage = socialProof.imgUrl && socialProof.imgUrl.length;\n return (\n \n \n \n {socialProof.text}\n \n {showSocialProofImage && }\n \n \n \n \n );\n};\n\nconst Root = styled.div`\n display: flex;\n flex-direction: column;\n font-size: 16px;\n`;\nconst HeroImage = styled.img`\n object-fit: contain;\n width: 100%;\n height: 100%;\n`;\n\nconst FeatureList = styled.div`\n margin: 0 auto;\n\n & ul {\n color: ${N400};\n font-weight: 100;\n font-size: clamp(1em, 2.5vw, 1.5em);\n list-style-type: none;\n margin: 0;\n padding-inline-start: 20px;\n }\n\n & li {\n font-size: 16px;\n margin: 8px 0;\n line-height: 1.5;\n list-style-image: url(\"data:image/svg+xml,%3Csvg width='13px' height='13px' viewBox='0 0 13 13' version='1.1' xmlns='http://www.w3.org/2000/svg' xmlns:xlink='http://www.w3.org/1999/xlink'%3E%3Cg stroke='none' stroke-width='1' fill='none' fill-rule='evenodd' stroke-linecap='round'%3E%3Cg transform='translate(0.000000, -51.000000)' stroke='%230049B0' stroke-width='1.6'%3E%3Cg transform='translate(1.000000, 45.000000)'%3E%3Cg transform='translate(0.000000, 0.416810)'%3E%3Cpolyline points='1.52655666e-16 11.9766645 3.98219585 17 11 7'%3E%3C/polyline%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/g%3E%3C/svg%3E\");\n }\n\n & p {\n color: ${N400};\n font-weight: 100;\n font-size: 14px;\n }\n`;\n\nconst SocialProofImage = styled.img`\n width: 100%;\n`;\n\ntype SocialProofTextProps = {\n readonly addBottomMargin: boolean;\n};\nconst SocialProofText = styled.p`\n width: 100%;\n margin: ${(props) => (props.addBottomMargin ? '0 0 16px 0' : '0 0 0 0')};\n text-align: center;\n font-size: 1.25em;\n line-height: 1.1;\n`;\n","import { getIsBundleDevops } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport { isEmpty, map } from 'lodash';\nimport React from 'react';\nimport { SideInformationComponentProps } from '../../../../model/side-information-component';\nimport { Logo } from './component';\nimport {\n LayoutDefault,\n LayoutDeveloperMode,\n LayoutDevops,\n LayoutFirstImpressions\n} from './container';\n\nexport default function SideInformationComponent({\n layout = 'default',\n isLoading,\n productKeys,\n edition,\n isExistingSiteFormShown,\n trialDurationExistingSite,\n trialDurationNewSite,\n featuresList,\n imgSource,\n isMobile,\n sideInfoHeader,\n hideLogoContent,\n logoColor,\n socialProof,\n userInfo,\n analyticsTrack,\n switchUserInfo\n}: SideInformationComponentProps) {\n const isSideInfoHeader =\n !isEmpty(sideInfoHeader) && sideInfoHeader.length > 0;\n const showListContent = !isEmpty(featuresList);\n const isEdition = !isEmpty(edition);\n const trialTime = isExistingSiteFormShown\n ? trialDurationExistingSite\n : trialDurationNewSite;\n const isTrialTime = !isEmpty(trialTime);\n const devopsLogo = [\n Logo({\n layout,\n logoColor,\n product: {\n product: 'devops',\n imgSource: '',\n edition: '',\n serverDownloadContent: ''\n }\n })\n ];\n const logo = map(productKeys, (key) =>\n Logo({\n layout,\n logoColor,\n product: key\n })\n );\n const isDevopsBundle = getIsBundleDevops(productKeys);\n\n const productListMsg = {\n id: 'sideInfoComponent.productListMessage',\n defaultMessage: featuresList\n };\n const sideInfoHeaderMsg = {\n id: 'sideInfoComponent.productHeading',\n defaultMessage: sideInfoHeader\n };\n\n const layoutDefault = () => {\n return (\n \n );\n };\n\n const layoutDevops = () => {\n return (\n \n );\n };\n\n const layoutDeveloperMode = () => {\n return (\n \n );\n };\n\n const layoutFirstImpression = () => {\n if (!socialProof) {\n throw new Error('socialProof is null or undefined');\n }\n\n return (\n \n );\n };\n\n return (\n \n \n {(() => {\n switch (layout) {\n case 'none':\n return <>;\n case 'devops':\n return layoutDevops();\n case 'developer-mode':\n return layoutDeveloperMode();\n case 'first-impressions':\n return layoutFirstImpression();\n case 'default':\n default:\n return layoutDefault();\n }\n })()}\n \n \n );\n}\n\nconst Root = styled.div`\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n position: relative;\n max-width: 700px;\n font-family: Charlie Text, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,\n Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n`;\n\nconst InfoComponent = styled.div`\n width: 100%;\n`;\n","import React from 'react';\n\nexport const AppleLogo = () => (\n \n \n \n);\n\nexport const GoogleLogo = () => (\n \n \n \n \n \n \n);\n\nexport const MicrosoftLogo = () => (\n \n \n \n \n \n \n);\n\nexport const SlackLogo = () => (\n \n \n \n \n \n \n \n \n \n \n);\n","import {\n B300,\n B400,\n G300,\n N900,\n R400,\n R500,\n N800\n} from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\nimport { css } from '@emotion/react';\n\nexport const MOBILE_BREAKPOINT = '450px';\nexport const TABLET_BREAKPOINT = '768px';\n\nexport const SPACING_UNIT = 8;\n\nexport const fontCharlieText = `\"Charlie Text\", -apple-system, BlinkMacSystemFont, \"Segoe UI\", Roboto, \"Noto Sans\", Ubuntu, \"Droid Sans\", \"Helvetica Neue\", sans-serif`;\nexport const fontCharlieDisplay = `\"Charlie Display\", \"Charlie Text\", -apple-system, BlinkMacSystemFont,\"Segoe UI\", Roboto, \"Noto Sans\", Ubuntu, \"Droid Sans\", \"Helvetica Neue\", sans-serif`;\n\nexport const FormContainer = styled.div`\n width: 100%;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n\nexport const FieldWrapper = styled.div<{\n isDisabled?: boolean;\n validationState?: string;\n}>`\n position: relative; // needed?\n margin: 0;\n padding: 0;\n\n input {\n height: 20px;\n box-sizing: content-box;\n }\n\n > div {\n transition: all 0.1s linear 0s;\n opacity: ${({ isDisabled }) => (isDisabled ? 0.4 : 1)};\n ${({ validationState }) =>\n validationState === 'success' && ` border-color:${G300} !important`};\n ${({ validationState }) =>\n validationState === 'error' && ` border-color:${R400} !important`};\n }\n`;\n\nconst ErrorLinkStyles = css`\n text-decoration: none;\n color: ${B400};\n\n &:hover {\n text-decoration: underline;\n color: ${B300};\n }\n`;\n\nexport const ErrorMessage = styled.div`\n font-size: 0.875rem;\n font-weight: 400;\n margin: 16px 0;\n font-size: 12px;\n line-height: 12px;\n display: grid;\n justify-items: flex-start;\n align-items: start;\n width: 100%;\n margin: 0;\n z-index: 9; // ??\n color: ${N900};\n background: transparent !important;\n\n & > div {\n display: flex;\n }\n\n span {\n margin-top: 6px;\n color: ${R400};\n }\n\n a {\n ${ErrorLinkStyles}\n }\n`;\nexport const SubmitErrorMessage = styled.div`\n background: transparent !important;\n color: ${R500};\n font-family: ${fontCharlieText};\n font-size: 12px;\n font-weight: 400;\n line-height: 1.22222222;\n margin-top: 8px;\n\n a {\n ${ErrorLinkStyles}\n }\n`;\n\nexport const ParagraphOversized = styled.p`\n color: ${N800};\n font-family: ${fontCharlieText};\n font-size: 16px;\n font-weight: 400;\n letter-spacing: 0.3px;\n line-height: 1.5;\n margin: 0px;\n\n & + & {\n margin-top: 12px;\n }\n\n @media (min-width: ${TABLET_BREAKPOINT}) {\n font-family: ${fontCharlieDisplay};\n font-size: 20px;\n line-height: 1.4;\n }\n`;\n","import React from 'react';\nimport { useAnalyticsEvents } from '@atlaskit/analytics-next';\nimport { N500 } from '@atlaskit/theme/colors';\nimport {\n Environment,\n ENV_PRODUCTION,\n ENV_STAGING\n} from '@atlassiansox/bxpkit-core';\nimport OriginTracing from '@atlassiansox/origin-tracing';\nimport styled from '@emotion/styled';\n\nimport {\n AppleLogo,\n GoogleLogo,\n MicrosoftLogo,\n SlackLogo\n} from '../../utility/social-logos';\nimport { fontCharlieText } from '../styled';\n\ntype SocialSignUpButtonProps = {\n buttonId?: string;\n buttonText: string | JSX.Element;\n provider: 'google' | 'microsoft' | 'apple' | 'slack';\n redirectUrl?: string;\n};\n\nexport function SocialSignUpButton({\n buttonId,\n buttonText,\n provider,\n redirectUrl\n}: SocialSignUpButtonProps) {\n const { createAnalyticsEvent } = useAnalyticsEvents();\n const metadataId = `wac-signup-${provider}`;\n\n function getLoginOrigin(): string {\n const originTracingOptions: { product: string; id?: string } = {\n product: metadataId\n };\n const env = Environment.getEnvironment();\n if (env !== ENV_PRODUCTION && env !== ENV_STAGING) {\n originTracingOptions.id = 'static-uuid-for-testing';\n }\n const loginOrigin = new OriginTracing({ ...originTracingOptions });\n return loginOrigin.encode();\n }\n\n const continueUrl = redirectUrl\n ? new URL(redirectUrl)\n : new URL(window.location.href);\n\n continueUrl.searchParams.append('social-signup-login', 'true');\n continueUrl.searchParams.append('provider', provider);\n\n const params = new URLSearchParams({\n application: 'wac',\n continue: continueUrl.href,\n prompt: 'select_account',\n atlOrigin: encodeURIComponent(getLoginOrigin())\n });\n\n const urlSocialSignUpContinue = `${Environment.getIdentityBaseUrl()}/login/initiate/${provider}?${params}`;\n\n const analyticsCallback = () => {\n createAnalyticsEvent({\n eventName: metadataId,\n eventComponent: 'button',\n event: 'clicked'\n }).fire();\n };\n\n const renderProviderLogo = (\n provider: SocialSignUpButtonProps['provider']\n ) => {\n switch (provider) {\n case 'google':\n return ;\n case 'microsoft':\n return ;\n case 'apple':\n return ;\n case 'slack':\n return ;\n }\n };\n\n return (\n \n {renderProviderLogo(provider)}\n {buttonText}\n \n );\n}\n\nconst SocialButton = styled.a`\n text-decoration: none;\n height: 39px;\n width: 100%;\n border-radius: 3px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: ${N500};\n font-weight: 500;\n box-shadow: rgba(0, 0, 0, 0.2) 1px 1px 5px 0 !important;\n background-color: #fff;\n gap: 0.5rem;\n margin: 0px 0px 16px 0px;\n padding: 0;\n border: 0;\n font-size: 100%;\n vertical-align: baseline;\n font-family: ${fontCharlieText};\n font-style: normal;\n\n &:focus,\n &:hover {\n background-color: #f9fafc;\n color: ${N500};\n text-decoration: none;\n }\n\n &:focus-visible {\n outline-offset: 1px;\n }\n\n svg {\n display: block;\n width: 18px;\n height: 18px;\n margin-bottom: 0; // override Magnolia styles\n }\n`;\n","import { defineMessagesSimple } from '@atlassiansox/bxpkit-core';\n\nconst ID_PREFIX = 'WacSignupForm';\n\nexport const messages = defineMessagesSimple(ID_PREFIX, {\n socialSignUpOr: 'OR',\n socialSignUpOrSignUpWith: 'Or sign up with',\n loggedOutHeader: 'Get Started',\n loggedOutSubHeader: 'Free for up to 10 users'\n});\n","import { Environment, Url } from '@atlassiansox/bxpkit-core';\nimport OriginTracing from '@atlassiansox/origin-tracing';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { FormattedHTMLMessage, FormattedMessage } from 'react-intl';\nimport { SocialSignonButtonOptionsType } from '../../../../../model';\nimport { SocialSignUpButton as SocialSignUpButtonLegacy } from '../../social-sign-up-button';\nimport { SocialSignUpButton } from '../../../../../layouts/simple-signup-screen/simple-signup-form-view/component/social-sign-up-button';\nimport { messages } from '../messages';\nimport { useSignUpFormConfig } from '../../../../../hook';\nimport { useAppSelector } from '../../../../../redux';\nimport { N60, N500, N400, N90, B400 } from '@atlaskit/theme/colors';\nimport { useAnalyticsEvents } from '@atlaskit/analytics-next';\nimport { messages as signupMessages } from '../../../../../messages/sign-up-form';\n\n/**\n * Render social signup buttons\n */\n\nexport function SignupButtons({\n analyticsTrack,\n isEmailSignupSelected,\n setIsEmailSignupSelected,\n allowSignupWithAllSocialOptions\n}: SocialSignonButtonOptionsType) {\n const { segment } = analyticsTrack;\n const trySignupOrigin = new OriginTracing({ product: 'wac-try-signup' });\n const loginGoogleOrigin = new OriginTracing({ product: 'wac-signup-google' });\n\n const signUpFormConfig = useSignUpFormConfig();\n const queryParameters = Url.getUrlParams() || {};\n\n const continueUrl = new URL(window.location.href).pathname;\n\n const urlGoogleSignupContinue = Environment.getSocialSignUpUrl({\n loginGoogleOrigin: loginGoogleOrigin.encode(),\n socialContinueUrl: continueUrl || '',\n ...signUpFormConfig,\n continueUrlOverride: queryParameters['continue'] || undefined\n });\n\n const isConfluenceInBundle = signUpFormConfig?.bundle?.includes('confluence');\n const isConfluenceProduct =\n signUpFormConfig?.product === 'confluence.ondemand';\n const isConfluence = isConfluenceInBundle || isConfluenceProduct;\n\n const { enableDefaultExpandedEmail } = useAppSelector(\n (state) => state.featureFlags\n );\n\n const { createAnalyticsEvent } = useAnalyticsEvents();\n\n if (allowSignupWithAllSocialOptions && !isConfluence) {\n const redirectUrl = window.location.href;\n return (\n \n
    \n \n \n \n
    \n
    \n \n \n \n \n
    \n
    \n );\n }\n\n return (\n
    \n {isConfluence && (\n \n \n \n )}\n {\n segment(\n 'wac-signup-google',\n loginGoogleOrigin.toAnalyticsAttributes({ hasGeneratedId: true })\n );\n }}\n />\n\n {isConfluence &&\n !signUpFormConfig.experimentScreensFlags\n ?.enableSlackPromoConfluence && (\n {\n createAnalyticsEvent({\n event: 'buttonClicked',\n eventName: 'loginButtonClicked',\n eventType: 'UI',\n eventComponent: 'signup',\n eventColumn: 'signUp'\n }).fire();\n }}\n >\n \n \n )}\n {!isConfluence &&\n (enableDefaultExpandedEmail ? (\n \n \n \n \n \n ) : (\n \n \n \n \n \n ))}\n\n {!enableDefaultExpandedEmail && !isEmailSignupSelected && !isConfluence && (\n {\n if (setIsEmailSignupSelected) {\n setIsEmailSignupSelected(true);\n }\n segment(\n 'wac-try-signup',\n trySignupOrigin.toAnalyticsAttributes({ hasGeneratedId: true })\n );\n }}\n />\n )}\n
    \n );\n}\n\nconst text =\n \"Charlie Text, -apple-system, BlinkMacSystemFont, 'Segoe UI', 'Roboto', 'Noto Sans', 'Ubuntu', 'Droid Sans', 'Helvetica Neue', sans-serif\";\n\nconst Divider = styled.div`\n font-family: ${text};\n margin-bottom: 20px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: #42526e;\n font-size: 14px;\n font-weight: 500;\n text-transform: uppercase;\n`;\nconst DividerDefaultExpandedEmail = styled.div`\n font-family: ${text};\n margin-bottom: 8px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: #42526e;\n font-size: 14px;\n font-weight: 500;\n text-transform: uppercase;\n`;\n\nconst DividerChooseSignup = styled.div`\n font-family: ${text};\n margin-bottom: 40px;\n margin-top: 40px;\n display: flex;\n justify-content: center;\n align-items: center;\n color: ${N400};\n font-size: 14px;\n font-weight: 600;\n line-height: 18px;\n text-transform: uppercase;\n`;\n\nconst Leftline = styled.div`\n border-bottom: 1px solid #d8d8d8;\n width: 31px;\n margin-right: 8px;\n`;\nconst Rightline = styled.div`\n border-bottom: 1px solid #d8d8d8;\n width: 31px;\n margin-left: 8px;\n`;\n\nconst SocialButtonsGridWrapper = styled.div`\n padding-bottom: 68px;\n\n a {\n color: ${N500};\n font-weight: 400;\n margin-bottom: 0;\n\n + a {\n margin-top: 12px;\n }\n }\n\n .long-dash-wrapper {\n display: flex;\n align-items: center;\n justify-content: center;\n margin: 24px 0;\n\n p {\n font-family: ${text};\n font-size: 16px;\n line-height: 1.5;\n margin: 0;\n }\n\n span {\n border-bottom: 1px solid ${N60};\n margin: 4px 12px 0;\n width: 33px;\n }\n }\n`;\nconst LoginButton = styled.div`\n width: 100%;\n font-weight: 400;\n font-size: 14px;\n line-height: 18px;\n font-family: 'Charlie Text';\n text-align: center;\n margin-top: 60px;\n color: ${N90};\n a {\n color: ${B400};\n text-decoration: none;\n cursor: pointer;\n }\n`;\n","import Spinner from '@atlaskit/spinner';\nimport { Environment, Storage, Url } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport _ from 'lodash';\nimport React, { useEffect, useState } from 'react';\nimport { SocialSignupOptionsType } from '../../../../../model/wac-signup-layout';\nimport { SocialSignUpView } from '../../social-sign-up';\n\n/**\n * Social signin component that renders\n * when a user is returning from a social signup\n *\n * Will render social-signin if showSocialSignupForm is\n * enabled, and if the user is logged in. Otherwise, will render\n * children components\n */\n\nexport const SocialSignup: React.FC = ({\n locale,\n userInfo,\n productKeys,\n analyticsTrack,\n loadingImageSrc,\n errorImageSrc,\n showSocialSignupForm,\n children,\n siteRenamePageUrl,\n templateId\n}) => {\n const [renderSocialSignup, setRenderSocialSignup] = useState(\n !!(showSocialSignupForm && userInfo?.isLoggedIn)\n );\n\n useEffect(() => {\n setRenderSocialSignup(!!(showSocialSignupForm && userInfo?.isLoggedIn));\n }, [userInfo]);\n\n const queryParameters = Url.getUrlParams() || {};\n\n // If this is the signup form and there is session stored userInfo, we remove it\n const socialSignupInfo = JSON.parse(\n window.atob(Storage.getSessionStorage('social-signup') || '') || '{}'\n );\n if (\n socialSignupInfo &&\n !showSocialSignupForm &&\n !_.isEqual(userInfo, socialSignupInfo?.userInfo)\n ) {\n Storage.removeSessionStorage('social-signup');\n }\n\n if (!userInfo && showSocialSignupForm) {\n // knowing that showSocialSignupForm is enabled,\n // defer showing anything until logged in state is available\n return (\n \n \n \n );\n }\n\n return renderSocialSignup ? (\n {\n // tslint:disable-next-line:no-console\n console.log(val);\n }}\n setShowSocialSignupForm={setRenderSocialSignup}\n tryAgainErrorUrl={Environment.getIdentityBaseUrl()}\n errorImageSrc={errorImageSrc}\n siteRenamePageUrl={siteRenamePageUrl}\n templateId={templateId}\n />\n ) : (\n <>{children}\n );\n};\n\nconst SpinnerWrapper = styled.div`\n width: 100%;\n height: 100%;\n min-height: 500px;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n","import { getIsBundleBbJsw, Url } from '@atlassiansox/bxpkit-core';\nimport React from 'react';\nimport { SideInfoOptionsType } from '../../../../../model';\nimport { useSignUpFormConfig } from '../../../../../hook';\nimport {\n Layout,\n SideInformationComponent\n} from '../../side-information-component';\nimport {\n FREE_EDITION_LABEL_KEY,\n getEditionLabels,\n getFeaturesList,\n getSideInfoHeader,\n getTrialDurationExistingSiteLabel,\n getTrialDurationNewSiteLabel\n} from '../../utility/sign-up-layout-container';\n\n/**\n * Obtain required data (aside from what's provided\n * by props), & render side-information-component component\n */\n\nexport function SideInfo({\n labels,\n userInfo,\n productKeys,\n analyticsTrack,\n migrationData,\n isMigrationSignup,\n formExistingSiteShown\n}: SideInfoOptionsType) {\n let layout: Layout = 'default';\n\n const queryParameters = Url.getUrlParams() || {};\n const developerMode = queryParameters.hasOwnProperty('developer');\n const sideInfoHeaderLabel = getSideInfoHeader({\n labels,\n productKeys,\n developerMode\n });\n // currently, only BB/JSW bundle is a devops layout\n if (getIsBundleBbJsw(productKeys)) {\n layout = 'devops';\n }\n\n if (developerMode) {\n layout = 'developer-mode';\n }\n\n const { edition: editionOverride } = useSignUpFormConfig();\n\n const sanitizedProps = productKeys.map((product) => {\n const { product: productKey, imgSource = '', edition } = product;\n const { editionLabel } = getEditionLabels({\n productKey,\n edition: editionOverride ? editionOverride : edition\n });\n const isFree = product.edition === FREE_EDITION_LABEL_KEY.toLowerCase();\n const trialDurationExistingSiteLabel =\n isFree || migrationData\n ? ''\n : getTrialDurationExistingSiteLabel({ productKey, labels });\n const trialDurationNewSiteLabel =\n isFree || migrationData\n ? ''\n : getTrialDurationNewSiteLabel({ productKey, labels });\n const isExistingFormShown = formExistingSiteShown\n ? !!(userInfo && userInfo.email)\n : formExistingSiteShown;\n\n // setting featuresListEditionLabelKey to 'free' to fix BXPSU-348.\n // forcing the edition to 'free' at this getFeaturesList() call\n // makes feature list copy the same for all editions in the \"default\"\n // sign up layout.\n const featuresList = getFeaturesList({\n labels,\n productKey,\n products: productKeys,\n featuresListEditionLabelKey: 'free',\n migrationData,\n developerMode\n });\n\n return {\n layout,\n isLoading: isMigrationSignup && !migrationData,\n imgSource,\n edition: editionLabel,\n featuresList,\n sideInfoHeader: sideInfoHeaderLabel,\n trialDurationExistingSite: trialDurationExistingSiteLabel,\n trialDurationNewSite: trialDurationNewSiteLabel,\n isExistingSiteFormShown: isExistingFormShown,\n productKeys,\n key: productKey,\n analyticsTrack,\n isMobile: false\n };\n });\n\n return ;\n}\n","import Spinner from '@atlaskit/spinner';\nimport {\n AsyncResult,\n Environment,\n getIsBitbucket,\n RECAPTCHA_KEY,\n Url,\n useBitbucketWorkspaces\n} from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport _ from 'lodash';\nimport React, { useEffect, useState } from 'react';\nimport { SignupButtons } from '.';\nimport { SignupOptionsType } from '../../../../../model';\nimport { SignupLayoutAnalytics } from '../../../../../service';\nimport { SignUpFormView } from '../../sign-up-form';\nimport {\n BITBUCKET,\n onProductsRequireSitename\n} from '../../utility/sign-up-layout-container';\n\nimport { SignUpFormUIStateProvider } from '../../../../../hook';\nimport { useAppSelector } from '../../../../../redux';\nimport { useOrgInfo } from '../../../../../hook/use-org-info';\n\n/**\n * Obtains required data (aside from what's provided\n * by props), & render wac-signup-form component\n */\n\nexport function Signup({\n productKeys,\n userInfo,\n locale,\n migrationData,\n isMigrationSignup,\n analyticsTrack,\n setFormExistingSiteShown,\n allowEnableAutogenSiteName,\n allowSignupWithGoogle,\n allowSignupWithAllSocialOptions,\n enableFreeBreachTest,\n enableFieldProgression,\n fadeOnDisable,\n popOverError,\n outlineOnFocus,\n showWarningIcon,\n hideCaptchaEula,\n enableResendEmail,\n enableCarouselEndCard,\n firstImpressionsImageUrls,\n siteRenamePageUrl,\n enableSkipRecaptcha,\n hideGreeting = false\n}: SignupOptionsType) {\n if (!userInfo || (isMigrationSignup && !migrationData)) {\n return (\n \n \n \n );\n }\n\n const [bbWorkspaces, setBbWorkspaces] = useState();\n const isBitbucket = getIsBitbucket(productKeys);\n const makeRequest =\n !isBitbucket &&\n !!(\n !!userInfo.hasBitbucket &&\n userInfo?.email &&\n productKeys.some(({ product }) =>\n product.includes(BITBUCKET.toLowerCase())\n )\n );\n const bbWorkspacesAsync = useBitbucketWorkspaces({ makeRequest });\n const useSigninButtons =\n allowSignupWithGoogle && // prop\n !onProductsRequireSitename(productKeys) && // non-approved social signup bundle\n !_.get(userInfo, 'isLoggedIn'); // N2N only\n const { enableDefaultExpandedEmail } = useAppSelector(\n (state) => state.featureFlags\n );\n\n const [isEmailSignupSelected, setIsEmailSignupSelected] = useState(false);\n\n useEffect(() => {\n if (!bbWorkspacesAsync || AsyncResult.isPending(bbWorkspacesAsync)) {\n return;\n }\n const bbData = bbWorkspacesAsync.catch(() => null).value;\n if (bbData) {\n analytics.trackBbSignupPerf();\n const { values, size } = bbData;\n setBbWorkspaces({ size, values });\n }\n }, [bbWorkspacesAsync]);\n\n let userOrgInfo = null;\n if (isBitbucket) {\n userOrgInfo = useOrgInfo({\n includeOrgResponse: true,\n includeVortexMode: true\n });\n\n // continue rendering the spinner until the fetch completes\n if (!userOrgInfo.completed) {\n return (\n \n \n \n );\n }\n }\n\n const analytics = new SignupLayoutAnalytics({\n analyticsTrack,\n isLoggedIn: userInfo?.isLoggedIn || false\n });\n const { signInAccountUrl, switchAccountUrl, originAnalyticsAttributes } =\n analytics;\n\n const queryParameters = Url.getUrlParams() || {};\n const templateId = queryParameters.hasOwnProperty('templateId')\n ? queryParameters.templateId\n : null;\n const teamType = queryParameters.hasOwnProperty('team_type')\n ? queryParameters.team_type\n : null;\n const deferSiteNameCreation =\n !(userInfo && userInfo.isLoggedIn) ||\n (allowEnableAutogenSiteName &&\n !(userInfo && userInfo.isLoggedIn) &&\n !onProductsRequireSitename(productKeys));\n\n const hideCaptcha = allowSignupWithAllSocialOptions || !!hideCaptchaEula;\n\n const isConfluence =\n (productKeys ?? []).filter((item) => item.product.includes('confluence'))\n .length > 0;\n\n const signUpFormProps = {\n productKeys,\n templateId,\n showEmail: true,\n hideFullName: _.get(userInfo, 'isLoggedIn', false),\n userInfo,\n reCaptchaKey: RECAPTCHA_KEY,\n devMode: queryParameters.hasOwnProperty('developer'),\n marketingConsentRequired: _.get(\n locale,\n 'localeRequiresMarketingCommunicationOptIn'\n ),\n locale: _.get(locale, 'locale'),\n migrationData: migrationData || undefined,\n isStaging: Environment.isStaging(),\n signInAccountUrl,\n switchAccountUrl: switchAccountUrl,\n originAnalyticsAttributes,\n wacEnvUrl: Environment.getWacIntegrationUrl(),\n analyticsTrack,\n bitbucketWorkspaces: bbWorkspaces,\n formExistingSiteShown: (val: boolean) => setFormExistingSiteShown(val),\n deferSiteNameCreation,\n enableFreeBreachTest,\n enableFieldProgression,\n fadeOnDisable,\n popOverError,\n outlineOnFocus,\n showWarningIcon,\n hideCaptchaEula: hideCaptcha,\n enableResendEmail,\n enableCarouselEndCard,\n firstImpressionsImageUrls,\n siteRenamePageUrl,\n enableSkipRecaptcha,\n hideGreeting,\n allowSignupWithAllSocialOptions,\n teamType,\n userOrgInfo\n };\n\n if (useSigninButtons) {\n if (allowSignupWithAllSocialOptions || isConfluence) {\n return (\n <>\n \n \n \n \n \n );\n }\n\n return (\n <>\n \n\n {(isEmailSignupSelected || enableDefaultExpandedEmail) && (\n \n \n \n )}\n \n );\n }\n\n return (\n \n \n \n );\n}\n\nconst SpinnerWrapper = styled.div`\n width: 100%;\n height: 100%;\n min-height: 260px;\n max-width: 400px;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n","import React from 'react';\nimport { SideInfoDevopsOptionsType } from '../../../../../model';\nimport {\n Layout,\n SideInformationComponent\n} from '../../side-information-component';\nimport {\n FREE_EDITION_LABEL_KEY,\n getFeaturesList\n} from '../../utility/sign-up-layout-container';\n\nexport function SideInfoDevops({\n labels,\n productKeys,\n analyticsTrack,\n formExistingSiteShown\n}: SideInfoDevopsOptionsType) {\n const layout: Layout = 'devops';\n const edition = FREE_EDITION_LABEL_KEY.toLowerCase();\n\n const featuresList = getFeaturesList({\n labels,\n productKey: productKeys[0].product,\n products: productKeys,\n featuresListEditionLabelKey: edition,\n migrationData: undefined\n });\n\n return (\n \n );\n}\n","import React from 'react';\nimport { SideInfoDevopsOptionsType } from '../../../../../model';\nimport {\n Layout,\n SideInformationComponent\n} from '../../side-information-component';\nimport {\n getFeaturesList,\n getSocialProofImageURLs,\n getSocialProofProductLabel,\n SOCIAL_PROOF_TEXT_KEY_PREFIX\n} from '../../utility/sign-up-layout-container';\nimport { useSignUpFormConfig } from '../../../../../hook';\nimport { FREE_EDITION_LABEL_KEY } from '../../../../../utility';\nimport { ProductKey } from '@atlassiansox/bxpkit-core';\n\nexport function SideInfoFirstImpressions({\n labels,\n productKeys,\n analyticsTrack,\n firstImpressionsImageUrls\n}: SideInfoDevopsOptionsType) {\n const { bundle } = useSignUpFormConfig();\n const layout: Layout = 'first-impressions';\n\n const productKey = productKeys[0].product;\n\n const edition = productKey.includes(ProductKey.JIRA_CORE)\n ? productKeys[0].edition.toLowerCase()\n : FREE_EDITION_LABEL_KEY.toLowerCase();\n\n const productNameKey =\n bundle === 'jira'\n ? getSocialProofProductLabel(bundle)\n : getSocialProofProductLabel(productKey);\n\n const socialProofTextKey = SOCIAL_PROOF_TEXT_KEY_PREFIX + productNameKey;\n const socialProofText = labels[socialProofTextKey];\n\n const socialProofImageURLs =\n bundle === 'jira'\n ? getSocialProofImageURLs(bundle, firstImpressionsImageUrls)\n : getSocialProofImageURLs(productKey, firstImpressionsImageUrls);\n\n const featuresList = getFeaturesList({\n labels,\n productKey: productKeys[0].product,\n products: productKeys,\n featuresListEditionLabelKey: edition,\n migrationData: undefined,\n developerMode: undefined\n });\n\n return (\n \n );\n}\n","/**\n * SVG string, trimmed, base64'd, & exported\n */\n\nexport const HeaderBackgroundDevops = btoa(\n `\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n \n devops-no-products-02\n \n\n`.trim()\n);\n\nexport const HeaderBackgroundDevopsMobile = btoa(\n `\n\n \n \n \n \n \n \n \n \n \n \n \n \n \n\n`.trim()\n);\n","import styled from '@emotion/styled';\n\n/**\n * Shared styles\n */\n\nexport const FullWidth = styled.div`\n position: relative;\n width: 100%;\n margin: 0;\n padding: 0;\n`;\n\nexport const ReducedRow = styled.div`\n position: relative;\n max-width: 1200px;\n margin: auto;\n\n .logo-atl {\n display: block;\n margin: 26px auto 26px;\n }\n`;\n","import { N0 } from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { HeaderDevopsOptionsType } from '../../../../../model';\nimport { SignupLayoutAnalytics } from '../../../../../service';\nimport {\n Layout,\n SideInformationComponent\n} from '../../side-information-component';\nimport {\n FREE_EDITION_LABEL_KEY,\n getSideInfoHeader\n} from '../../utility/sign-up-layout-container';\nimport { HeaderBackgroundDevops, HeaderBackgroundDevopsMobile } from '../asset';\nimport { ReducedRow } from '../styled';\n\n/**\n * Devops Header containing background,\n * listed products & Devops Features list\n */\n\nexport function HeaderDevops({\n labels,\n productKeys,\n analyticsTrack,\n formExistingSiteShown,\n userInfo\n}: HeaderDevopsOptionsType) {\n const layout: Layout = 'devops';\n const edition = FREE_EDITION_LABEL_KEY.toLowerCase();\n const analytics = new SignupLayoutAnalytics({\n isLoggedIn: false,\n analyticsTrack\n });\n const switchUserInfo = ({\n switchAccountUrl: analytics.switchAccountUrl,\n switchUserOrigin: analytics.originAnalyticsAttributes.switchUser\n } = analytics);\n return (\n \n \n \n \n \n \n \n \n );\n}\n\nconst HeaderWrapper = styled.div`\n position: relative;\n width: 100%;\n height: 320px;\n\n @media only screen and (max-width: 800px) {\n height: 164px;\n }\n`;\n\nconst InfinityLogo = styled.div`\n position: absolute;\n height: 100%;\n width: 100%;\n top: 0;\n left: 0;\n\n background-repeat: no-repeat;\n background-size: 1920px 320px;\n background-position: center;\n background-image: url(data:image/svg+xml;base64,${HeaderBackgroundDevops});\n\n @media only screen and (max-width: 800px) {\n background-size: 4000px 700px;\n background-position: -810px -342px;\n background-image: url(data:image/svg+xml;base64,${HeaderBackgroundDevopsMobile});\n }\n`;\n\nconst RowPadding = styled.div`\n padding: 0px 48px;\n @media only screen and (max-width: 800px) {\n padding: 0px 22px;\n }\n div,\n span {\n max-width: none;\n }\n\n .product-heading {\n margin: 30px auto -20px auto;\n }\n`;\n","import { AtlassianLogo } from '@atlaskit/logo';\nimport { B400, B200, N40 } from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\n\nimport React from 'react';\nimport { ContainerLayoutType } from '../../../../../model';\nimport { SideInfo, Signup, SocialSignup } from '../component';\nimport { ReducedRow } from '../styled';\n\n/**\n * Default Layout\n * Includes basic header, side-information, and signup\n */\n\nexport function LayoutDefault(props: ContainerLayoutType) {\n return (\n \n \n \n \n \n \n \n \n \n \n \n \n \n );\n}\n\nconst FormAndInfoContainer = styled.div`\n width: 83%;\n margin: auto;\n display: flex;\n flex-direction: row;\n flex-flow: nowrap;\n box-shadow: 0 2px 3px rgba(130, 130, 130, 0.2);\n border: 1px solid rgba(130, 130, 130, 0.2);\n\n @media only screen and (max-width: 769px) {\n width: 100%;\n flex-flow: row wrap;\n }\n`;\n\nconst ComponentWrapper = styled.div`\n padding: 0 48px;\n margin: 48px 0;\n width: 50%;\n\n &:first-child {\n border-right: 1px solid ${N40};\n }\n\n &.side-info {\n @media only screen and (max-width: 769px) {\n order: 2;\n }\n }\n\n @media only screen and (max-width: 769px) {\n padding: 0 12px;\n margin: 16px 0;\n width: 100%;\n border-right: 0px solid transparent;\n\n form {\n max-width: initial;\n }\n }\n`;\n","import { AtlassianLogo } from '@atlaskit/logo';\nimport { B200, B400 } from '@atlaskit/theme/colors';\nimport styled from '@emotion/styled';\nimport _ from 'lodash';\nimport React from 'react';\nimport { useSignUpFormConfig } from '../../../../../hook';\nimport {\n ContainerLayoutType,\n Product,\n ProductKeys\n} from '../../../../../model';\nimport { Labels, View as SignUpFormHeader } from '../../sign-up-form-header';\nimport { Signup } from '../component';\n\nexport function isOpsgenieIncluded(productKeys: Product[]) {\n return _.includes(\n _.map(\n productKeys,\n (productKey: Product) => productKey.product === ProductKeys.OPSGENIE\n ),\n true\n );\n}\n\nexport function LayoutStandalone(props: ContainerLayoutType) {\n const { edition } = useSignUpFormConfig();\n const formHeaderLabels = Labels.useFormHeaderLabels({\n edition: edition || '',\n labels: props.labels,\n productKeys: props.productKeys\n });\n const { userInfo, productKeys } = props;\n const opsgenieIsIncludeInProducts = isOpsgenieIncluded(productKeys);\n const isConfluence =\n (props.productKeys ?? []).filter((item) =>\n item.product.includes('confluence')\n ).length > 0;\n\n return (\n \n \n {!!userInfo && !opsgenieIsIncludeInProducts && (\n \n )}\n \n \n \n {!!userInfo ||\n (!isConfluence && (\n \n \n \n ))}\n \n \n );\n}\n\nexport const StandAloneLayoutContainer = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: white;\n border-radius: 5px;\n box-shadow: 0px 4px 6px rgba(9, 30, 66, 0.15);\n min-height: 314px;\n padding: 0 24px;\n width: 350px;\n\n @media only screen and (max-width: 1023px) {\n width: 100%;\n }\n`;\n\nexport const StandAloneLayoutContainerChooseSignup = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n background-color: white;\n border-radius: 5px;\n box-shadow: 0px 4px 6px rgba(9, 30, 66, 0.15);\n width: 380px !important;\n max-width: 100%;\n min-height: 314px;\n padding: 0 30px !important;\n text-align: left !important;\n`;\nexport const StandAloneLayoutInnerContainer = styled.div`\n margin: 32px 0;\n width: 100%;\n`;\n\nexport const LogoWrapper = styled.div`\n width: min-content;\n margin: 0 auto;\n`;\n\nexport const RightContainerContent = styled.div`\n margin: 16px 0;\n width: 100%;\n`;\n","import { N0, N200 } from '@atlaskit/theme/colors';\nimport { getIsBundleBbJsw } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { ContainerLayoutType } from '../../../../../model';\nimport { HeaderDevops, SideInfoDevops, Signup } from '../component';\nimport { FullWidth, ReducedRow } from '../styled';\n\nexport function LayoutDevops(props: ContainerLayoutType) {\n // Disable field progression for BB/JSW\n const fieldProgression = getIsBundleBbJsw(props?.productKeys) ? false : true;\n\n return (\n \n \n \n \n \n \n \n \n
    \n \n
    \n
    \n This page is protected by reCAPTCHA and the Google Privacy Policy\n and Terms of Service apply.\n
    \n
    \n
    \n
    \n
    \n );\n}\n\nconst FormWrapper = styled.div`\n z-index: 9;\n width: 100%%;\n margin: auto;\n display: flex;\n flex-direction: row;\n flex-flow: nowrap;\n padding: 0px 48px 48px 48px;\n\n @media only screen and (max-width: 800px) {\n box-sizing: border-box;\n flex-flow: row wrap;\n padding: 24px;\n }\n`;\n\nconst ComponentWrapper = styled.div`\n width: 50%;\n\n @media only screen and (max-width: 800px) {\n width: 100%;\n }\n\n &.wrapper-side-info {\n padding: 0 48px 0 0;\n margin-top: -30px;\n\n @media only screen and (max-width: 800px) {\n display: none;\n }\n }\n\n .wrapper-signup {\n padding: 48px 96px;\n margin-top: -160px;\n background-color: ${N0};\n box-shadow: 0px 8px 16px rgba(9, 30, 66, 0.25),\n 0px 0px 1px rgba(9, 30, 66, 0.31);\n border-radius: 3px;\n\n form {\n max-width: none;\n }\n\n @media only screen and (max-width: 1200px) {\n padding: 48px;\n }\n\n @media only screen and (max-width: 800px) {\n padding: 0px;\n margin-top: 0px;\n box-shadow: none;\n }\n }\n\n .recaptcha-legal {\n display: block;\n max-width: 296px;\n padding: 25px 0;\n margin: auto;\n text-align: center;\n font-family: Charlie Text, -apple-system, BlinkMacSystemFont, Segoe UI,\n Roboto, Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n font-size: 12px;\n line-height: 18px;\n color: ${N200};\n\n @media only screen and (max-width: 800px) {\n padding: 50px 0 60px 0;\n }\n }\n`;\n","import * as colors from './colors';\nimport themed from './utils/themed';\n// Cards on a board\nexport const e100 = themed({\n light: `box-shadow: 0 1px 1px ${colors.N50A}, 0 0 1px 0 ${colors.N60A};`,\n dark: `box-shadow: 0 1px 1px ${colors.DN50A}, 0 0 1px ${colors.DN60A};`,\n});\n// Inline dialogs\nexport const e200 = themed({\n light: `box-shadow: 0 4px 8px -2px ${colors.N50A}, 0 0 1px ${colors.N60A};`,\n dark: `box-shadow: 0 4px 8px -2px ${colors.DN50A}, 0 0 1px ${colors.DN60A};`,\n});\n// Modals\nexport const e300 = themed({\n light: `box-shadow: 0 8px 16px -4px ${colors.N50A}, 0 0 1px ${colors.N60A};`,\n dark: `box-shadow: 0 8px 16px -4px ${colors.DN50A}, 0 0 1px ${colors.DN60A};`,\n});\n// Panels\nexport const e400 = themed({\n light: `box-shadow: 0 12px 24px -6px ${colors.N50A}, 0 0 1px ${colors.N60A};`,\n dark: `box-shadow: 0 12px 24px -6px ${colors.DN50A}, 0 0 1px ${colors.DN60A};`,\n});\n// Flag messages (notifications)\nexport const e500 = themed({\n light: `box-shadow: 0 20px 32px -8px ${colors.N50A}, 0 0 1px ${colors.N60A};`,\n dark: `box-shadow: 0 20px 32px -8px ${colors.DN50A}, 0 0 1px ${colors.DN60A};`,\n});\n//# sourceMappingURL=elevation.js.map","import { elevation } from '@atlaskit/theme';\nimport styled from '@emotion/styled';\nimport { FirstImpressionsImageUrlsType } from '../../../../../../model';\n\nexport const PageRoot = styled.div<{\n readonly firstImpressionsImageUrls: FirstImpressionsImageUrlsType;\n}>`\n background-image: url(${(props) =>\n props.firstImpressionsImageUrls.backgroundImage});\n background-repeat: no-repeat;\n background-size: contain;\n display: flex;\n flex-direction: column;\n align-items: center;\n padding-top: 10px;\n\n @media only screen and (max-width: 769px) {\n background-size: auto;\n }\n`;\n\nexport const PageBody = styled.div`\n flex: 1;\n max-width: 1440px;\n display: flex;\n align-items: flex-start;\n margin-top: 22px;\n margin-bottom: 60px;\n @media only screen and (max-width: 769px) {\n width: 100%;\n flex-flow: row wrap-reverse;\n justify-content: center;\n }\n`;\n\nexport const LeftContainer = styled.div`\n margin: 16px;\n width: 448px;\n img {\n margin-bottom: 10px !important;\n }\n`;\n\nexport const RightContainer = styled.div`\n ${elevation.e200}\n margin: 16px;\n padding: 32px;\n background-color: white;\n box-sizing: content-box;\n width: 350px;\n align-items: center;\n border-radius: 8px;\n position: relative;\n\n @media only screen and (max-width: 420px) {\n box-shadow: unset;\n margin: 0;\n border-radius: 0;\n }\n`;\n\nexport const ChooseSignupRightContainer = styled.div`\n ${elevation.e200}\n margin: 16px;\n padding: 30px;\n background-color: white;\n box-sizing: content-box;\n width: 320px;\n align-items: center;\n border-radius: 8px;\n position: relative;\n\n @media only screen and (max-width: 420px) {\n box-shadow: unset;\n margin: 0;\n border-radius: 0;\n }\n`;\n\nexport const RightContainerContent = styled.div`\n margin: 16px 0;\n width: 100%;\n`;\n\nexport const RightContainerContentDefaultExpandedEmail = styled.div`\n margin: 16px 0;\n width: 100%;\n`;\n\nexport const LogoWrapper = styled.div`\n width: min-content;\n margin: 0 auto;\n`;\n\nexport const Loading = styled.div`\n position: absolute;\n top: 0;\n right: 0;\n bottom: 0;\n left: 0;\n background: white;\n display: flex;\n align-items: center;\n justify-content: center;\n`;\n","import React from 'react';\nimport { AtlassianLogo } from '@atlaskit/logo';\nimport { ContainerLayoutType, UserDataType } from '../../../../../../model';\nimport { useSignUpFormConfig } from '../../../../../../hook';\nimport { Signup } from '../signup';\nimport {\n LogoWrapper,\n RightContainerContent,\n RightContainerContentDefaultExpandedEmail\n} from './styled';\nimport Spinner from '@atlaskit/spinner';\nimport styled from '@emotion/styled';\n\nimport { Labels, View as SignUpFormHeader } from '../../../sign-up-form-header';\nimport { useAppSelector } from '../../../../../../redux';\n\nexport function FirstImpressionsForm(props: ContainerLayoutType) {\n const { edition } = useSignUpFormConfig();\n const formHeaderLabels = Labels.useFormHeaderLabels({\n edition: edition || '',\n labels: props.labels,\n productKeys: props.productKeys\n });\n const {\n userInfo,\n isMigrationSignup,\n migrationData,\n allowSignupWithAllSocialOptions\n } = props;\n const { isLoggedIn = false } = userInfo || {};\n const { enableDefaultExpandedEmail } = useAppSelector(\n (state) => state.featureFlags\n );\n\n const isConfluence =\n (props.productKeys ?? []).filter((item) =>\n item.product.includes('confluence')\n ).length > 0;\n\n if (!userInfo || (isMigrationSignup && !migrationData)) {\n return (\n \n \n \n );\n }\n\n return (\n <>\n \n {enableDefaultExpandedEmail || isConfluence ? (\n \n \n \n ) : (\n \n \n \n )}\n {!isConfluence && (\n \n {allowSignupWithAllSocialOptions ? (\n \n \n \n ) : (\n \n )}\n \n )}\n \n );\n}\n\nconst SpinnerWrapper = styled.div`\n width: 100%;\n height: 100%;\n min-height: 400px;\n max-width: 400px;\n display: flex;\n justify-content: center;\n align-items: center;\n`;\n","import React, { useState, useEffect, Suspense } from 'react';\nimport { ContainerLayoutType } from '../../../../../model';\nimport { useAppSelector } from '../../../../../redux';\nimport { ReCaptchaEulaChooseSignup } from '../../sign-up-form/components/styled';\nimport { WacSignupHeader } from '../../signup-header';\nimport { SideInfoFirstImpressions } from '../component';\nimport {\n ChooseSignupRightContainer,\n FirstImpressionsForm,\n LeftContainer,\n PageBody,\n PageRoot,\n RightContainer\n} from '../component/first-impressions';\nimport { messages } from '../../../../../messages/sign-up-form';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\n//@ts-ignore\nconst EasterEgg = React.lazy(() => import('../component/easter-egg'));\n\nexport function LayoutFirstImpressions(props: ContainerLayoutType) {\n const { deferredSiteName } = useAppSelector((store) => store);\n\n const [hidden, setHidden] = useState(true);\n\n const isConfluence =\n (props.productKeys ?? []).filter((item) =>\n item.product.includes('confluence')\n ).length > 0;\n\n useEffect(() => {\n // @ts-ignore\n window.sugar = () => {\n setHidden(false);\n setTimeout(() => {\n setHidden(true);\n }, 5000);\n };\n }, []);\n\n return (\n \n \n \n {!hidden ? : null}\n \n \n \n {isConfluence ? (\n \n \n \n ) : (\n \n \n \n )}\n \n {isConfluence && (\n \n \n \n )}\n \n );\n}\n","import {\n hashEmail,\n MarieSchemaAnalytics,\n Environment\n} from '@atlassiansox/bxpkit-core';\nimport React, { useEffect, useState } from 'react';\nimport { isProductIncluded, useUserInfo } from '../../../../hook';\nimport {\n ContainerLayoutType,\n MigrationDataType,\n ProductKeys,\n WacSignupLayoutType\n} from '../../../../model';\nimport { getMigrationData, SignupLayoutAnalytics } from '../../../../service';\nimport {\n LayoutDefault,\n LayoutDevops,\n LayoutFirstImpressions,\n LayoutStandalone\n} from './container';\nimport {\n useAppDispatch,\n useAppSelector,\n updateDeferredSiteNameStatus\n} from '../../../../redux';\nimport { ProductKeysType } from '@atlassiansox/bxpkit-core';\n\nexport function SignUpLayoutContainer(props: WacSignupLayoutType) {\n const {\n layout,\n labels,\n analyticsTrack,\n productKeys,\n templateId,\n isMigrationSignup,\n queryParameters,\n productOverride,\n editionOverride,\n bundleOverride,\n locale,\n performanceStartTime,\n siteRenamePageUrl,\n firstImpressionsImageUrls\n } = props;\n\n const [combinedProps, setCombinedProps] = useState();\n const [migrationData, setMigrationData] = useState();\n const [formExistingSiteShown, setFormExistingSiteShown] = useState(true);\n\n const dispatch = useAppDispatch();\n\n const { enableDeferredSiteName } = useAppSelector(\n ({ featureFlags }) => featureFlags\n );\n\n // marie schema state values\n const [eventContainer, setEventContainer] = useState('wac-signup-form');\n const [suiteName, setSuiteName] = useState('');\n const [userEmail, setUserEmail] = useState('');\n const setEmailWithHash = async (email: string) => {\n const hash = await hashEmail(email);\n setUserEmail(hash);\n };\n\n let userInfo = useUserInfo();\n\n const combineProps = () => {\n setCombinedProps(\n Object.assign({}, props, {\n locale,\n userInfo,\n productKeys,\n migrationData,\n isMigrationSignup,\n formExistingSiteShown,\n setFormExistingSiteShown,\n siteRenamePageUrl: siteRenamePageUrl || '',\n firstImpressionsImageUrls: firstImpressionsImageUrls || {},\n templateId,\n edition: editionOverride\n })\n );\n };\n\n // migrationData update (if applicable)\n useEffect(() => {\n if (migrationData) {\n userInfo = Object.assign(userInfo, {\n extendedTrialOverridableSites: migrationData?.migrationSites\n });\n combineProps();\n }\n }, [migrationData]);\n\n // userInfo update\n useEffect(() => {\n combineProps();\n if (!userInfo) {\n return;\n }\n if (userInfo.email) {\n void setEmailWithHash(userInfo.email);\n }\n if (isMigrationSignup) {\n getMigrationData({\n queryParameters,\n labels,\n productKeys,\n userInfo,\n analyticsTrack\n })\n .then((data) => {\n if (data != null) {\n setMigrationData(data);\n }\n })\n .catch(() => setMigrationData({} as MigrationDataType));\n }\n\n // instantiate Analytics Singleton\n // tslint:disable-next-line: no-unused-expression\n new SignupLayoutAnalytics({\n analyticsTrack,\n performanceStartTime,\n isLoggedIn: userInfo.isLoggedIn\n });\n\n // Redirect if Beacon user is signed out\n const isBeacon = isProductIncluded(productKeys, ProductKeys.BEACON);\n const isBitbucket =\n productKeys.length === 1 &&\n isProductIncluded(productKeys, ProductKeys.BITBUCKET);\n\n if (\n !userInfo.isLoggedIn &&\n (isBeacon || isBitbucket || isMigrationSignup)\n ) {\n const redirectUrl = Environment.getIdSigninUrl();\n\n window.location.assign(redirectUrl);\n }\n }, [userInfo]);\n\n // productKeys update\n useEffect(() => {\n combineProps();\n }, [bundleOverride, productOverride]);\n\n let contextValues = {\n eventContainer,\n setEventContainer,\n suiteName,\n setSuiteName,\n userEmail,\n analyticsTrack,\n setUserEmail: setEmailWithHash,\n productKey: productKeys,\n productEdition: productKeys[0].edition,\n schemaVersion: 1,\n loginUserDetected: userInfo?.isLoggedIn ? 1 : 0,\n productsOffered: productKeys.map((prod: ProductKeysType) => prod.product),\n productPlatform: 'cloud'\n };\n\n // update contextValues when productKeys update\n useEffect(() => {\n contextValues = { ...contextValues, productKey: productKeys };\n }, [productKeys]);\n\n // update deferred site name status after productKeys set\n useEffect(() => {\n dispatch(updateDeferredSiteNameStatus());\n }, [enableDeferredSiteName]);\n useEffect(() => {\n const signupSource = new URLSearchParams(window.location.search).get(\n 'signupSource'\n );\n if (signupSource === 'bbbundle') {\n analyticsTrack.segment('wac-signup-transition-from-bitbucket-bundles', {\n eventType: 'track',\n eventContainer: 'wac-sign-up-form',\n productKey: productKeys,\n productsOffered: contextValues.productsOffered,\n loginUserDetected: contextValues.loginUserDetected,\n userEmail: contextValues.userEmail,\n suiteName: contextValues.suiteName,\n productEdition: contextValues.productEdition,\n productPlatform: contextValues.productPlatform,\n schemaVersion: contextValues.schemaVersion\n });\n }\n }, []);\n\n return (\n \n {(() => {\n if (!combinedProps) {\n return <>;\n }\n\n switch (layout) {\n case 'standalone':\n return ;\n case 'devops':\n return ;\n case 'first-impressions':\n return ;\n case 'default':\n default:\n return ;\n }\n })()}\n \n );\n}\n","function e(e){this.message=e}e.prototype=new Error,e.prototype.name=\"InvalidCharacterError\";var r=\"undefined\"!=typeof window&&window.atob&&window.atob.bind(window)||function(r){var t=String(r).replace(/=+$/,\"\");if(t.length%4==1)throw new e(\"'atob' failed: The string to be decoded is not correctly encoded.\");for(var n,o,a=0,i=0,c=\"\";o=t.charAt(i++);~o&&(n=a%4?64*n+o:o,a++%4)?c+=String.fromCharCode(255&n>>(-2*a&6)):0)o=\"ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=\".indexOf(o);return c};function t(e){var t=e.replace(/-/g,\"+\").replace(/_/g,\"/\");switch(t.length%4){case 0:break;case 2:t+=\"==\";break;case 3:t+=\"=\";break;default:throw\"Illegal base64url string!\"}try{return function(e){return decodeURIComponent(r(e).replace(/(.)/g,(function(e,r){var t=r.charCodeAt(0).toString(16).toUpperCase();return t.length<2&&(t=\"0\"+t),\"%\"+t})))}(t)}catch(e){return r(t)}}function n(e){this.message=e}function o(e,r){if(\"string\"!=typeof e)throw new n(\"Invalid token specified\");var o=!0===(r=r||{}).header?0:1;try{return JSON.parse(t(e.split(\".\")[o]))}catch(e){throw new n(\"Invalid token specified: \"+e.message)}}n.prototype=new Error,n.prototype.name=\"InvalidTokenError\";export default o;export{n as InvalidTokenError};\n//# sourceMappingURL=jwt-decode.esm.js.map\n","import styled from '@emotion/styled';\nimport { SanitizedFormattedHtmlMessage } from '@atlassiansox/bxpkit-core';\nimport React from 'react';\nimport { injectIntl } from 'react-intl';\nimport { messages } from '../../messages';\nimport { N800, N20, N0, B400, B200 } from '@atlaskit/theme/colors';\nimport { AtlassianLogo } from '@atlaskit/logo';\nimport Button from '@atlaskit/button';\nimport { useAnalyticsEvents } from '@atlaskit/analytics-next';\n\nexport type ErrorLocaleProps = {\n readonly locale?: string;\n};\n\nfunction ErrorLocale({ locale }: ErrorLocaleProps) {\n const { createAnalyticsEvent } = useAnalyticsEvents();\n\n React.useEffect(() => {\n createAnalyticsEvent({\n event: 'blocked',\n action: 'blocked',\n actionSubject: 'signUp',\n actionSubjectId: 'signUpForm',\n product: 'marketing',\n blockType: 'geoIP',\n blockValue: locale\n }).fire();\n }, []);\n\n return (\n \n \n \n \n

    \n \n

    \n

    \n \n

    \n\n \n \n \n
    \n );\n}\n\nErrorLocale.messages = messages;\nexport default injectIntl(ErrorLocale);\n\nconst Root = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n flex-direction: column;\n text-align: center;\n background-color: ${N0} !important;\n font-family: Charlie Text, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,\n Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n color: ${N800};\n\n h2 {\n padding-top: 22px !important;\n }\n\n p {\n width: 370px;\n }\n\n button {\n padding-top: 10px;\n }\n`;\nconst LogoContainer = styled.div`\n display: flex;\n justify-content: center;\n align-items: center;\n height: 200px;\n width: 300px;\n background-color: ${N20};\n`;\n","import {\n CONFLUENCE,\n JIRA_CORE,\n JSD,\n TEAM_CENTRAL,\n BEACON,\n BITBUCKET\n} from '../../../utility/constants';\n\nexport const getSocialProofProductLabel = (productKey: string) => {\n switch (productKey) {\n case 'jira-servicedesk.ondemand':\n return JSD;\n case 'confluence.ondemand':\n return CONFLUENCE;\n case 'jira-core.ondemand':\n return JIRA_CORE;\n case 'townsquare':\n return TEAM_CENTRAL;\n case 'beacon':\n return BEACON;\n case 'com.atlassian.bitbucket':\n return BITBUCKET;\n default:\n return '';\n }\n};\n\nexport type FirstImpressionsProductImageUrls = {\n readonly heroImage: string;\n readonly socialProofImage?: string;\n};\n\nexport type FirstImpressionsImageUrls = {\n readonly backgroundImage: string;\n readonly jiraSoftware: FirstImpressionsProductImageUrls;\n readonly jiraServiceDesk: FirstImpressionsProductImageUrls;\n readonly confluence: FirstImpressionsProductImageUrls;\n readonly jiraCore: FirstImpressionsProductImageUrls;\n readonly teamCentral: FirstImpressionsProductImageUrls;\n readonly beacon: FirstImpressionsProductImageUrls;\n readonly bitbucket: FirstImpressionsProductImageUrls;\n};\n\nexport type GetSocialProofImageURLsOptions = {\n readonly productKey: string;\n readonly firstImpressionsImageUrls: FirstImpressionsImageUrls;\n};\n\nexport const getSocialProofImageURLs = ({\n productKey,\n firstImpressionsImageUrls\n}: GetSocialProofImageURLsOptions) => {\n switch (productKey) {\n case 'jira-servicedesk.ondemand':\n return {\n heroImage: firstImpressionsImageUrls.jiraServiceDesk.heroImage,\n logoImage: firstImpressionsImageUrls.jiraServiceDesk.socialProofImage\n };\n case 'confluence.ondemand':\n return {\n heroImage: firstImpressionsImageUrls.confluence.heroImage,\n logoImage: firstImpressionsImageUrls.confluence.socialProofImage\n };\n case 'jira-core.ondemand':\n return {\n heroImage: firstImpressionsImageUrls.jiraCore.heroImage,\n logoImage: firstImpressionsImageUrls.jiraCore.socialProofImage\n };\n case 'townsquare':\n return {\n heroImage: firstImpressionsImageUrls.teamCentral.heroImage,\n logoImage: firstImpressionsImageUrls.teamCentral.socialProofImage\n };\n case 'beacon':\n return {\n heroImage: firstImpressionsImageUrls.beacon.heroImage,\n logoImage: firstImpressionsImageUrls.beacon.socialProofImage\n };\n case 'com.atlassian.bitbucket':\n return {\n heroImage: firstImpressionsImageUrls.bitbucket.heroImage,\n logoImage: firstImpressionsImageUrls.bitbucket.socialProofImage\n };\n default:\n return {\n heroImage: firstImpressionsImageUrls.jiraSoftware.heroImage,\n logoImage: firstImpressionsImageUrls.jiraSoftware.socialProofImage\n };\n }\n};\n","import _ from 'lodash';\nimport React, {\n createContext,\n useContext,\n useMemo,\n PropsWithChildren\n} from 'react';\nimport { useUserInfo, useSignUpFormConfig } from '../../hook';\nimport {\n getBundleData,\n FREE_EDITION_LABEL_KEY,\n getFeaturesList,\n SOCIAL_PROOF_TEXT_KEY_PREFIX,\n BundleData,\n getPageHeaderLabels,\n PageHeaderLabels\n} from '../../utility';\nimport { getSocialProofImageURLs, getSocialProofProductLabel } from './utility';\nimport {\n ProductDataType,\n UserDataType,\n FeatureFlags,\n BundleContent\n} from '../../model';\nimport { FirstImpressionsImageUrls } from './types';\n\nexport type FirstImpressionsContextProps = {\n readonly labels: {\n [key: string]: string;\n };\n readonly productData: { [key: string]: ProductDataType };\n readonly firstImpressionsImageUrls: FirstImpressionsImageUrls;\n readonly featureFlags: FeatureFlags;\n};\n\nexport const FirstImpressionsContext =\n createContext({\n labels: {},\n productData: {},\n firstImpressionsImageUrls: {\n backgroundImage: '',\n jiraSoftware: {\n heroImage: '',\n socialProofImage: ''\n },\n jiraServiceDesk: {\n heroImage: '',\n socialProofImage: ''\n },\n confluence: {\n heroImage: '',\n socialProofImage: ''\n },\n jiraCore: {\n heroImage: '',\n socialProofImage: ''\n },\n teamCentral: {\n heroImage: '',\n socialProofImage: ''\n },\n beacon: {\n heroImage: '',\n socialProofImage: ''\n },\n bitbucket: {\n heroImage: '',\n socialProofImage: ''\n }\n },\n featureFlags: {}\n });\n\nexport function FirstImpressionsProvider({\n children,\n ...props\n}: PropsWithChildren) {\n return (\n \n {children}\n \n );\n}\n\nexport type ActiveFormView =\n | null\n | 'team-central-logged-out'\n | 'team-central-ineligible'\n | 'first-impressions-loading'\n | 'first-impressions-logged-out'\n | 'first-impressions-logged-in';\n\nexport type FirstImpressionsState = {\n readonly pageHeaderLabels: PageHeaderLabels;\n readonly firstImpressionsImageUrls: FirstImpressionsImageUrls;\n readonly bundleData: BundleData;\n readonly activeFormView: ActiveFormView;\n readonly userInfo?: UserDataType;\n readonly bundleContent: BundleContent;\n};\n\nfunction buildFirstImpressionsState(\n activeBundlesMap: { [key: string]: ProductDataType },\n labels: { [key: string]: string },\n firstImpressionsImageUrls: FirstImpressionsImageUrls,\n userInfo?: UserDataType,\n bundleName?: string,\n productKeys?: string,\n edition?: string\n): FirstImpressionsState {\n const bundleData = getBundleData({\n activeBundlesMap,\n bundleName,\n productKeys,\n edition\n });\n\n const pageHeaderLabels = getPageHeaderLabels({\n labels,\n bundleData\n });\n\n const bundleContent = getBundleContent({\n labels,\n bundleData,\n firstImpressionsImageUrls\n });\n\n let activeFormView: ActiveFormView = null;\n\n if (!userInfo) {\n activeFormView = 'first-impressions-loading';\n } else if (!userInfo.isLoggedIn) {\n activeFormView = 'first-impressions-logged-out';\n } else {\n activeFormView = 'first-impressions-logged-in';\n }\n\n return {\n pageHeaderLabels,\n firstImpressionsImageUrls,\n bundleData,\n activeFormView,\n userInfo,\n bundleContent\n };\n}\n\ntype GetBundleContentOptions = {\n readonly bundleData: BundleData;\n readonly labels: { [key: string]: string };\n readonly firstImpressionsImageUrls: FirstImpressionsImageUrls;\n};\n\nfunction getBundleContent({\n bundleData,\n labels,\n firstImpressionsImageUrls\n}: GetBundleContentOptions): BundleContent {\n // if default bundleContent exists in bundleData, return that\n if (bundleData.bundleContent?.default) {\n return bundleData.bundleContent.default;\n }\n\n // otherwise compute bundleContent the old way\n const primaryProductKey = bundleData.products[0].productKey;\n\n const productNameKey = getSocialProofProductLabel(primaryProductKey);\n\n const socialProofTextKey = SOCIAL_PROOF_TEXT_KEY_PREFIX + productNameKey;\n const socialProofText = labels[socialProofTextKey];\n\n const socialProofImageURLs = getSocialProofImageURLs({\n productKey: primaryProductKey,\n firstImpressionsImageUrls\n });\n\n const featureList = getFeaturesList({\n labels,\n bundleData,\n featuresListEditionLabelKey: FREE_EDITION_LABEL_KEY.toLowerCase()\n });\n\n return {\n heroImage: socialProofImageURLs.heroImage,\n headline: socialProofText,\n socialProofImage: socialProofImageURLs.logoImage,\n featureList\n };\n}\n\nexport function useFirstImpressionsState(): FirstImpressionsState {\n const { labels, productData, firstImpressionsImageUrls } = useContext(\n FirstImpressionsContext\n );\n\n const {\n bundle: bundleName,\n product: productKeys,\n edition\n } = useSignUpFormConfig();\n\n const userInfo = useUserInfo();\n\n return useMemo(\n () =>\n buildFirstImpressionsState(\n productData,\n labels,\n firstImpressionsImageUrls,\n userInfo,\n bundleName,\n productKeys,\n edition\n ),\n [\n productData,\n labels,\n firstImpressionsImageUrls,\n userInfo,\n bundleName,\n productKeys,\n edition\n ]\n );\n}\n","import * as Logos from '@atlaskit/logo';\nimport { B300, DN10A, N0 } from '@atlaskit/theme/colors';\nimport { ProductKey } from '@atlassiansox/bxpkit-core';\nimport styled from '@emotion/styled';\nimport React from 'react';\nimport { ProductType } from '../../model';\n\nexport type PageHeaderLogoProps = {\n readonly productData: ProductType;\n readonly useDarkBackgroundMode: boolean;\n};\n\nexport function PageHeaderLogo({\n productData,\n useDarkBackgroundMode\n}: PageHeaderLogoProps) {\n const textColor = useDarkBackgroundMode ? DN10A : N0;\n const iconColor = useDarkBackgroundMode ? B300 : N0;\n const Logostyle = {\n iconColor,\n size: 'xlarge',\n textColor\n };\n\n // Try and get Atlaskit Logo from product data\n if (productData.atlasKitLogoName) {\n const allLogos = { ...Logos };\n const ProductLogoClass = allLogos[productData.atlasKitLogoName];\n if (!!ProductLogoClass) {\n return ;\n }\n }\n\n // for team central, get the logo from magnolia\n if (\n productData.productKey === ProductKey.TEAM_CENTRAL &&\n !!productData.productLogoWhiteUrl\n ) {\n return (\n \n );\n }\n\n switch (productData.productKey) {\n case 'com.atlassian.bitbucket':\n return (\n \n );\n case 'confluence.ondemand':\n return (\n \n );\n case 'jira-core.ondemand':\n return (\n \n );\n case 'jira-workmanagement.ondemand':\n return (\n \n );\n case 'jira-servicedesk.ondemand':\n return (\n \n );\n case 'jira-software.ondemand':\n return ;\n case 'opsgenie':\n return ;\n case 'statuspage':\n return (\n \n );\n case 'trello':\n return ;\n default:\n return productData && productData.productName ? (\n

    {productData.productName}

    \n ) : (\n \n );\n }\n}\n\nconst CMSLogo = styled.img`\n height: 48px;\n`;\n","import styled from '@emotion/styled';\nimport React from 'react';\nimport { messages } from '../../messages';\n\ntype PageHeaderSubtitle = {\n readonly edition: string;\n readonly useDarkBackgroundMode: boolean;\n};\n\nexport function PageHeaderSubtitle({\n edition,\n useDarkBackgroundMode\n}: PageHeaderSubtitle) {\n switch (edition) {\n case 'standard':\n return (\n \n {messages.cloudStandard.defaultMessage}\n \n );\n case 'premium':\n return (\n \n {messages.cloudPremium.defaultMessage}\n \n );\n default:\n return (\n \n {messages.cloudFree.defaultMessage}\n \n );\n }\n}\n\nconst PageHeaderSubtitleText = styled.h4<{ useDarkBackgroundMode: boolean }>`\n margin: 0px;\n font-size: 20px;\n font-weight: 400;\n color: ${(props) =>\n props.useDarkBackgroundMode ? 'rgba(13, 20, 36, 0.97)' : 'white'};\n`;\n","import AddIcon from '@atlaskit/icon/glyph/add';\nimport styled from '@emotion/styled';\nimport { map } from 'lodash';\nimport React from 'react';\nimport { BundleData } from '../../utility';\nimport { PageHeaderLogo } from './page-header-logo';\nimport { PageHeaderSubtitle } from './page-header-subtitle';\n\ntype PageHeaderProps = {\n readonly bundleData: BundleData;\n readonly useDarkBackgroundMode: boolean;\n};\n\nexport function PageHeader({\n bundleData,\n useDarkBackgroundMode\n}: PageHeaderProps) {\n const headerBuffer: JSX.Element[] = [];\n map(bundleData.products, (productData) =>\n headerBuffer.push(PageHeaderLogo({ productData, useDarkBackgroundMode }))\n );\n if (headerBuffer.length > 1) {\n headerBuffer.splice(\n 1,\n 0,\n \n \n \n );\n return (\n \n {headerBuffer}\n \n \n );\n }\n return (\n \n {headerBuffer}\n \n \n );\n}\n\nconst Container = styled.div`\n margin: 10px 10px;\n display: flex;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n position: relative;\n font-family: Charlie Text, -apple-system, BlinkMacSystemFont, Segoe UI, Roboto,\n Noto Sans, Ubuntu, Droid Sans, Helvetica Neue, sans-serif;\n`;\n\nconst PlusIcon = styled.div`\n margin-left: 15px;\n margin-right: 15px;\n margin-top: 15px;\n display: inline-block;\n position: relative;\n bottom: 10px;\n`;\nconst HeaderContainer = styled.div`\n display: flex;\n align-items: center;\n svg,\n img {\n margin-bottom: 0px !important;\n }\n`;\nconst HeaderContainerWithPlus = styled.div`\n display: flex;\n align-items: center;\n justify-content: center;\n svg {\n margin-bottom: 0px !important;\n }\n`;\n","var isMergeableObject = function isMergeableObject(value) {\n\treturn isNonNullObject(value)\n\t\t&& !isSpecial(value)\n};\n\nfunction isNonNullObject(value) {\n\treturn !!value && typeof value === 'object'\n}\n\nfunction isSpecial(value) {\n\tvar stringValue = Object.prototype.toString.call(value);\n\n\treturn stringValue === '[object RegExp]'\n\t\t|| stringValue === '[object Date]'\n\t\t|| isReactElement(value)\n}\n\n// see https://github.com/facebook/react/blob/b5ac963fb791d1298e7f396236383bc955f916c1/src/isomorphic/classic/element/ReactElement.js#L21-L25\nvar canUseSymbol = typeof Symbol === 'function' && Symbol.for;\nvar REACT_ELEMENT_TYPE = canUseSymbol ? Symbol.for('react.element') : 0xeac7;\n\nfunction isReactElement(value) {\n\treturn value.$$typeof === REACT_ELEMENT_TYPE\n}\n\nfunction emptyTarget(val) {\n\treturn Array.isArray(val) ? [] : {}\n}\n\nfunction cloneUnlessOtherwiseSpecified(value, options) {\n\treturn (options.clone !== false && options.isMergeableObject(value))\n\t\t? deepmerge(emptyTarget(value), value, options)\n\t\t: value\n}\n\nfunction defaultArrayMerge(target, source, options) {\n\treturn target.concat(source).map(function(element) {\n\t\treturn cloneUnlessOtherwiseSpecified(element, options)\n\t})\n}\n\nfunction mergeObject(target, source, options) {\n\tvar destination = {};\n\tif (options.isMergeableObject(target)) {\n\t\tObject.keys(target).forEach(function(key) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(target[key], options);\n\t\t});\n\t}\n\tObject.keys(source).forEach(function(key) {\n\t\tif (!options.isMergeableObject(source[key]) || !target[key]) {\n\t\t\tdestination[key] = cloneUnlessOtherwiseSpecified(source[key], options);\n\t\t} else {\n\t\t\tdestination[key] = deepmerge(target[key], source[key], options);\n\t\t}\n\t});\n\treturn destination\n}\n\nfunction deepmerge(target, source, options) {\n\toptions = options || {};\n\toptions.arrayMerge = options.arrayMerge || defaultArrayMerge;\n\toptions.isMergeableObject = options.isMergeableObject || isMergeableObject;\n\n\tvar sourceIsArray = Array.isArray(source);\n\tvar targetIsArray = Array.isArray(target);\n\tvar sourceAndTargetTypesMatch = sourceIsArray === targetIsArray;\n\n\tif (!sourceAndTargetTypesMatch) {\n\t\treturn cloneUnlessOtherwiseSpecified(source, options)\n\t} else if (sourceIsArray) {\n\t\treturn options.arrayMerge(target, source, options)\n\t} else {\n\t\treturn mergeObject(target, source, options)\n\t}\n}\n\ndeepmerge.all = function deepmergeAll(array, options) {\n\tif (!Array.isArray(array)) {\n\t\tthrow new Error('first argument should be an array')\n\t}\n\n\treturn array.reduce(function(prev, next) {\n\t\treturn deepmerge(prev, next, options)\n\t}, {})\n};\n\nvar deepmerge_1 = deepmerge;\n\nexport default deepmerge_1;\n","/**\n * Removes all key-value entries from the list cache.\n *\n * @private\n * @name clear\n * @memberOf ListCache\n */\nfunction listCacheClear() {\n this.__data__ = [];\n this.size = 0;\n}\n\nexport default listCacheClear;\n","/**\n * Performs a\n * [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * comparison between two values to determine if they are equivalent.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to compare.\n * @param {*} other The other value to compare.\n * @returns {boolean} Returns `true` if the values are equivalent, else `false`.\n * @example\n *\n * var object = { 'a': 1 };\n * var other = { 'a': 1 };\n *\n * _.eq(object, object);\n * // => true\n *\n * _.eq(object, other);\n * // => false\n *\n * _.eq('a', 'a');\n * // => true\n *\n * _.eq('a', Object('a'));\n * // => false\n *\n * _.eq(NaN, NaN);\n * // => true\n */\nfunction eq(value, other) {\n return value === other || (value !== value && other !== other);\n}\n\nexport default eq;\n","import eq from './eq.js';\n\n/**\n * Gets the index at which the `key` is found in `array` of key-value pairs.\n *\n * @private\n * @param {Array} array The array to inspect.\n * @param {*} key The key to search for.\n * @returns {number} Returns the index of the matched value, else `-1`.\n */\nfunction assocIndexOf(array, key) {\n var length = array.length;\n while (length--) {\n if (eq(array[length][0], key)) {\n return length;\n }\n }\n return -1;\n}\n\nexport default assocIndexOf;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/** Used for built-in method references. */\nvar arrayProto = Array.prototype;\n\n/** Built-in value references. */\nvar splice = arrayProto.splice;\n\n/**\n * Removes `key` and its value from the list cache.\n *\n * @private\n * @name delete\n * @memberOf ListCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction listCacheDelete(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n return false;\n }\n var lastIndex = data.length - 1;\n if (index == lastIndex) {\n data.pop();\n } else {\n splice.call(data, index, 1);\n }\n --this.size;\n return true;\n}\n\nexport default listCacheDelete;\n","import listCacheClear from './_listCacheClear.js';\nimport listCacheDelete from './_listCacheDelete.js';\nimport listCacheGet from './_listCacheGet.js';\nimport listCacheHas from './_listCacheHas.js';\nimport listCacheSet from './_listCacheSet.js';\n\n/**\n * Creates an list cache object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction ListCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `ListCache`.\nListCache.prototype.clear = listCacheClear;\nListCache.prototype['delete'] = listCacheDelete;\nListCache.prototype.get = listCacheGet;\nListCache.prototype.has = listCacheHas;\nListCache.prototype.set = listCacheSet;\n\nexport default ListCache;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Gets the list cache value for `key`.\n *\n * @private\n * @name get\n * @memberOf ListCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction listCacheGet(key) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n return index < 0 ? undefined : data[index][1];\n}\n\nexport default listCacheGet;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Checks if a list cache value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf ListCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction listCacheHas(key) {\n return assocIndexOf(this.__data__, key) > -1;\n}\n\nexport default listCacheHas;\n","import assocIndexOf from './_assocIndexOf.js';\n\n/**\n * Sets the list cache `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf ListCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the list cache instance.\n */\nfunction listCacheSet(key, value) {\n var data = this.__data__,\n index = assocIndexOf(data, key);\n\n if (index < 0) {\n ++this.size;\n data.push([key, value]);\n } else {\n data[index][1] = value;\n }\n return this;\n}\n\nexport default listCacheSet;\n","/**\n * Checks if `value` is the\n * [language type](http://www.ecma-international.org/ecma-262/7.0/#sec-ecmascript-language-types)\n * of `Object`. (e.g. arrays, functions, objects, regexes, `new Number(0)`, and `new String('')`)\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an object, else `false`.\n * @example\n *\n * _.isObject({});\n * // => true\n *\n * _.isObject([1, 2, 3]);\n * // => true\n *\n * _.isObject(_.noop);\n * // => true\n *\n * _.isObject(null);\n * // => false\n */\nfunction isObject(value) {\n var type = typeof value;\n return value != null && (type == 'object' || type == 'function');\n}\n\nexport default isObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isObject from './isObject.js';\n\n/** `Object#toString` result references. */\nvar asyncTag = '[object AsyncFunction]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n proxyTag = '[object Proxy]';\n\n/**\n * Checks if `value` is classified as a `Function` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a function, else `false`.\n * @example\n *\n * _.isFunction(_);\n * // => true\n *\n * _.isFunction(/abc/);\n * // => false\n */\nfunction isFunction(value) {\n if (!isObject(value)) {\n return false;\n }\n // The use of `Object#toString` avoids issues with the `typeof` operator\n // in Safari 9 which returns 'object' for typed arrays and other constructors.\n var tag = baseGetTag(value);\n return tag == funcTag || tag == genTag || tag == asyncTag || tag == proxyTag;\n}\n\nexport default isFunction;\n","import root from './_root.js';\n\n/** Used to detect overreaching core-js shims. */\nvar coreJsData = root['__core-js_shared__'];\n\nexport default coreJsData;\n","import coreJsData from './_coreJsData.js';\n\n/** Used to detect methods masquerading as native. */\nvar maskSrcKey = (function() {\n var uid = /[^.]+$/.exec(coreJsData && coreJsData.keys && coreJsData.keys.IE_PROTO || '');\n return uid ? ('Symbol(src)_1.' + uid) : '';\n}());\n\n/**\n * Checks if `func` has its source masked.\n *\n * @private\n * @param {Function} func The function to check.\n * @returns {boolean} Returns `true` if `func` is masked, else `false`.\n */\nfunction isMasked(func) {\n return !!maskSrcKey && (maskSrcKey in func);\n}\n\nexport default isMasked;\n","/** Used for built-in method references. */\nvar funcProto = Function.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/**\n * Converts `func` to its source code.\n *\n * @private\n * @param {Function} func The function to convert.\n * @returns {string} Returns the source code.\n */\nfunction toSource(func) {\n if (func != null) {\n try {\n return funcToString.call(func);\n } catch (e) {}\n try {\n return (func + '');\n } catch (e) {}\n }\n return '';\n}\n\nexport default toSource;\n","import isFunction from './isFunction.js';\nimport isMasked from './_isMasked.js';\nimport isObject from './isObject.js';\nimport toSource from './_toSource.js';\n\n/**\n * Used to match `RegExp`\n * [syntax characters](http://ecma-international.org/ecma-262/7.0/#sec-patterns).\n */\nvar reRegExpChar = /[\\\\^$.*+?()[\\]{}|]/g;\n\n/** Used to detect host constructors (Safari). */\nvar reIsHostCtor = /^\\[object .+?Constructor\\]$/;\n\n/** Used for built-in method references. */\nvar funcProto = Function.prototype,\n objectProto = Object.prototype;\n\n/** Used to resolve the decompiled source of functions. */\nvar funcToString = funcProto.toString;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Used to detect if a method is native. */\nvar reIsNative = RegExp('^' +\n funcToString.call(hasOwnProperty).replace(reRegExpChar, '\\\\$&')\n .replace(/hasOwnProperty|(function).*?(?=\\\\\\()| for .+?(?=\\\\\\])/g, '$1.*?') + '$'\n);\n\n/**\n * The base implementation of `_.isNative` without bad shim checks.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a native function,\n * else `false`.\n */\nfunction baseIsNative(value) {\n if (!isObject(value) || isMasked(value)) {\n return false;\n }\n var pattern = isFunction(value) ? reIsNative : reIsHostCtor;\n return pattern.test(toSource(value));\n}\n\nexport default baseIsNative;\n","import baseIsNative from './_baseIsNative.js';\nimport getValue from './_getValue.js';\n\n/**\n * Gets the native function at `key` of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {string} key The key of the method to get.\n * @returns {*} Returns the function if it's native, else `undefined`.\n */\nfunction getNative(object, key) {\n var value = getValue(object, key);\n return baseIsNative(value) ? value : undefined;\n}\n\nexport default getNative;\n","/**\n * Gets the value at `key` of `object`.\n *\n * @private\n * @param {Object} [object] The object to query.\n * @param {string} key The key of the property to get.\n * @returns {*} Returns the property value.\n */\nfunction getValue(object, key) {\n return object == null ? undefined : object[key];\n}\n\nexport default getValue;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Map = getNative(root, 'Map');\n\nexport default Map;\n","import getNative from './_getNative.js';\n\n/* Built-in method references that are verified to be native. */\nvar nativeCreate = getNative(Object, 'create');\n\nexport default nativeCreate;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Gets the hash value for `key`.\n *\n * @private\n * @name get\n * @memberOf Hash\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction hashGet(key) {\n var data = this.__data__;\n if (nativeCreate) {\n var result = data[key];\n return result === HASH_UNDEFINED ? undefined : result;\n }\n return hasOwnProperty.call(data, key) ? data[key] : undefined;\n}\n\nexport default hashGet;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Checks if a hash value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Hash\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction hashHas(key) {\n var data = this.__data__;\n return nativeCreate ? (data[key] !== undefined) : hasOwnProperty.call(data, key);\n}\n\nexport default hashHas;\n","import hashClear from './_hashClear.js';\nimport hashDelete from './_hashDelete.js';\nimport hashGet from './_hashGet.js';\nimport hashHas from './_hashHas.js';\nimport hashSet from './_hashSet.js';\n\n/**\n * Creates a hash object.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Hash(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `Hash`.\nHash.prototype.clear = hashClear;\nHash.prototype['delete'] = hashDelete;\nHash.prototype.get = hashGet;\nHash.prototype.has = hashHas;\nHash.prototype.set = hashSet;\n\nexport default Hash;\n","import nativeCreate from './_nativeCreate.js';\n\n/**\n * Removes all key-value entries from the hash.\n *\n * @private\n * @name clear\n * @memberOf Hash\n */\nfunction hashClear() {\n this.__data__ = nativeCreate ? nativeCreate(null) : {};\n this.size = 0;\n}\n\nexport default hashClear;\n","/**\n * Removes `key` and its value from the hash.\n *\n * @private\n * @name delete\n * @memberOf Hash\n * @param {Object} hash The hash to modify.\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction hashDelete(key) {\n var result = this.has(key) && delete this.__data__[key];\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default hashDelete;\n","import nativeCreate from './_nativeCreate.js';\n\n/** Used to stand-in for `undefined` hash values. */\nvar HASH_UNDEFINED = '__lodash_hash_undefined__';\n\n/**\n * Sets the hash `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Hash\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the hash instance.\n */\nfunction hashSet(key, value) {\n var data = this.__data__;\n this.size += this.has(key) ? 0 : 1;\n data[key] = (nativeCreate && value === undefined) ? HASH_UNDEFINED : value;\n return this;\n}\n\nexport default hashSet;\n","import isKeyable from './_isKeyable.js';\n\n/**\n * Gets the data for `map`.\n *\n * @private\n * @param {Object} map The map to query.\n * @param {string} key The reference key.\n * @returns {*} Returns the map data.\n */\nfunction getMapData(map, key) {\n var data = map.__data__;\n return isKeyable(key)\n ? data[typeof key == 'string' ? 'string' : 'hash']\n : data.map;\n}\n\nexport default getMapData;\n","/**\n * Checks if `value` is suitable for use as unique object key.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is suitable, else `false`.\n */\nfunction isKeyable(value) {\n var type = typeof value;\n return (type == 'string' || type == 'number' || type == 'symbol' || type == 'boolean')\n ? (value !== '__proto__')\n : (value === null);\n}\n\nexport default isKeyable;\n","import mapCacheClear from './_mapCacheClear.js';\nimport mapCacheDelete from './_mapCacheDelete.js';\nimport mapCacheGet from './_mapCacheGet.js';\nimport mapCacheHas from './_mapCacheHas.js';\nimport mapCacheSet from './_mapCacheSet.js';\n\n/**\n * Creates a map cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction MapCache(entries) {\n var index = -1,\n length = entries == null ? 0 : entries.length;\n\n this.clear();\n while (++index < length) {\n var entry = entries[index];\n this.set(entry[0], entry[1]);\n }\n}\n\n// Add methods to `MapCache`.\nMapCache.prototype.clear = mapCacheClear;\nMapCache.prototype['delete'] = mapCacheDelete;\nMapCache.prototype.get = mapCacheGet;\nMapCache.prototype.has = mapCacheHas;\nMapCache.prototype.set = mapCacheSet;\n\nexport default MapCache;\n","import Hash from './_Hash.js';\nimport ListCache from './_ListCache.js';\nimport Map from './_Map.js';\n\n/**\n * Removes all key-value entries from the map.\n *\n * @private\n * @name clear\n * @memberOf MapCache\n */\nfunction mapCacheClear() {\n this.size = 0;\n this.__data__ = {\n 'hash': new Hash,\n 'map': new (Map || ListCache),\n 'string': new Hash\n };\n}\n\nexport default mapCacheClear;\n","import getMapData from './_getMapData.js';\n\n/**\n * Removes `key` and its value from the map.\n *\n * @private\n * @name delete\n * @memberOf MapCache\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction mapCacheDelete(key) {\n var result = getMapData(this, key)['delete'](key);\n this.size -= result ? 1 : 0;\n return result;\n}\n\nexport default mapCacheDelete;\n","import getMapData from './_getMapData.js';\n\n/**\n * Gets the map value for `key`.\n *\n * @private\n * @name get\n * @memberOf MapCache\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction mapCacheGet(key) {\n return getMapData(this, key).get(key);\n}\n\nexport default mapCacheGet;\n","import getMapData from './_getMapData.js';\n\n/**\n * Checks if a map value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf MapCache\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction mapCacheHas(key) {\n return getMapData(this, key).has(key);\n}\n\nexport default mapCacheHas;\n","import getMapData from './_getMapData.js';\n\n/**\n * Sets the map `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf MapCache\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the map cache instance.\n */\nfunction mapCacheSet(key, value) {\n var data = getMapData(this, key),\n size = data.size;\n\n data.set(key, value);\n this.size += data.size == size ? 0 : 1;\n return this;\n}\n\nexport default mapCacheSet;\n","import ListCache from './_ListCache.js';\nimport stackClear from './_stackClear.js';\nimport stackDelete from './_stackDelete.js';\nimport stackGet from './_stackGet.js';\nimport stackHas from './_stackHas.js';\nimport stackSet from './_stackSet.js';\n\n/**\n * Creates a stack cache object to store key-value pairs.\n *\n * @private\n * @constructor\n * @param {Array} [entries] The key-value pairs to cache.\n */\nfunction Stack(entries) {\n var data = this.__data__ = new ListCache(entries);\n this.size = data.size;\n}\n\n// Add methods to `Stack`.\nStack.prototype.clear = stackClear;\nStack.prototype['delete'] = stackDelete;\nStack.prototype.get = stackGet;\nStack.prototype.has = stackHas;\nStack.prototype.set = stackSet;\n\nexport default Stack;\n","import ListCache from './_ListCache.js';\n\n/**\n * Removes all key-value entries from the stack.\n *\n * @private\n * @name clear\n * @memberOf Stack\n */\nfunction stackClear() {\n this.__data__ = new ListCache;\n this.size = 0;\n}\n\nexport default stackClear;\n","/**\n * Removes `key` and its value from the stack.\n *\n * @private\n * @name delete\n * @memberOf Stack\n * @param {string} key The key of the value to remove.\n * @returns {boolean} Returns `true` if the entry was removed, else `false`.\n */\nfunction stackDelete(key) {\n var data = this.__data__,\n result = data['delete'](key);\n\n this.size = data.size;\n return result;\n}\n\nexport default stackDelete;\n","/**\n * Gets the stack value for `key`.\n *\n * @private\n * @name get\n * @memberOf Stack\n * @param {string} key The key of the value to get.\n * @returns {*} Returns the entry value.\n */\nfunction stackGet(key) {\n return this.__data__.get(key);\n}\n\nexport default stackGet;\n","/**\n * Checks if a stack value for `key` exists.\n *\n * @private\n * @name has\n * @memberOf Stack\n * @param {string} key The key of the entry to check.\n * @returns {boolean} Returns `true` if an entry for `key` exists, else `false`.\n */\nfunction stackHas(key) {\n return this.__data__.has(key);\n}\n\nexport default stackHas;\n","import ListCache from './_ListCache.js';\nimport Map from './_Map.js';\nimport MapCache from './_MapCache.js';\n\n/** Used as the size to enable large array optimizations. */\nvar LARGE_ARRAY_SIZE = 200;\n\n/**\n * Sets the stack `key` to `value`.\n *\n * @private\n * @name set\n * @memberOf Stack\n * @param {string} key The key of the value to set.\n * @param {*} value The value to set.\n * @returns {Object} Returns the stack cache instance.\n */\nfunction stackSet(key, value) {\n var data = this.__data__;\n if (data instanceof ListCache) {\n var pairs = data.__data__;\n if (!Map || (pairs.length < LARGE_ARRAY_SIZE - 1)) {\n pairs.push([key, value]);\n this.size = ++data.size;\n return this;\n }\n data = this.__data__ = new MapCache(pairs);\n }\n data.set(key, value);\n this.size = data.size;\n return this;\n}\n\nexport default stackSet;\n","import getNative from './_getNative.js';\n\nvar defineProperty = (function() {\n try {\n var func = getNative(Object, 'defineProperty');\n func({}, '', {});\n return func;\n } catch (e) {}\n}());\n\nexport default defineProperty;\n","import defineProperty from './_defineProperty.js';\n\n/**\n * The base implementation of `assignValue` and `assignMergeValue` without\n * value checks.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction baseAssignValue(object, key, value) {\n if (key == '__proto__' && defineProperty) {\n defineProperty(object, key, {\n 'configurable': true,\n 'enumerable': true,\n 'value': value,\n 'writable': true\n });\n } else {\n object[key] = value;\n }\n}\n\nexport default baseAssignValue;\n","import baseAssignValue from './_baseAssignValue.js';\nimport eq from './eq.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Assigns `value` to `key` of `object` if the existing value is not equivalent\n * using [`SameValueZero`](http://ecma-international.org/ecma-262/7.0/#sec-samevaluezero)\n * for equality comparisons.\n *\n * @private\n * @param {Object} object The object to modify.\n * @param {string} key The key of the property to assign.\n * @param {*} value The value to assign.\n */\nfunction assignValue(object, key, value) {\n var objValue = object[key];\n if (!(hasOwnProperty.call(object, key) && eq(objValue, value)) ||\n (value === undefined && !(key in object))) {\n baseAssignValue(object, key, value);\n }\n}\n\nexport default assignValue;\n","import assignValue from './_assignValue.js';\nimport baseAssignValue from './_baseAssignValue.js';\n\n/**\n * Copies properties of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy properties from.\n * @param {Array} props The property identifiers to copy.\n * @param {Object} [object={}] The object to copy properties to.\n * @param {Function} [customizer] The function to customize copied values.\n * @returns {Object} Returns `object`.\n */\nfunction copyObject(source, props, object, customizer) {\n var isNew = !object;\n object || (object = {});\n\n var index = -1,\n length = props.length;\n\n while (++index < length) {\n var key = props[index];\n\n var newValue = customizer\n ? customizer(object[key], source[key], key, object, source)\n : undefined;\n\n if (newValue === undefined) {\n newValue = source[key];\n }\n if (isNew) {\n baseAssignValue(object, key, newValue);\n } else {\n assignValue(object, key, newValue);\n }\n }\n return object;\n}\n\nexport default copyObject;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]';\n\n/**\n * The base implementation of `_.isArguments`.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n */\nfunction baseIsArguments(value) {\n return isObjectLike(value) && baseGetTag(value) == argsTag;\n}\n\nexport default baseIsArguments;\n","import baseIsArguments from './_baseIsArguments.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/**\n * Checks if `value` is likely an `arguments` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an `arguments` object,\n * else `false`.\n * @example\n *\n * _.isArguments(function() { return arguments; }());\n * // => true\n *\n * _.isArguments([1, 2, 3]);\n * // => false\n */\nvar isArguments = baseIsArguments(function() { return arguments; }()) ? baseIsArguments : function(value) {\n return isObjectLike(value) && hasOwnProperty.call(value, 'callee') &&\n !propertyIsEnumerable.call(value, 'callee');\n};\n\nexport default isArguments;\n","/**\n * Checks if `value` is classified as an `Array` object.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is an array, else `false`.\n * @example\n *\n * _.isArray([1, 2, 3]);\n * // => true\n *\n * _.isArray(document.body.children);\n * // => false\n *\n * _.isArray('abc');\n * // => false\n *\n * _.isArray(_.noop);\n * // => false\n */\nvar isArray = Array.isArray;\n\nexport default isArray;\n","import root from './_root.js';\nimport stubFalse from './stubFalse.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeIsBuffer = Buffer ? Buffer.isBuffer : undefined;\n\n/**\n * Checks if `value` is a buffer.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a buffer, else `false`.\n * @example\n *\n * _.isBuffer(new Buffer(2));\n * // => true\n *\n * _.isBuffer(new Uint8Array(2));\n * // => false\n */\nvar isBuffer = nativeIsBuffer || stubFalse;\n\nexport default isBuffer;\n","/**\n * This method returns `false`.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {boolean} Returns `false`.\n * @example\n *\n * _.times(2, _.stubFalse);\n * // => [false, false]\n */\nfunction stubFalse() {\n return false;\n}\n\nexport default stubFalse;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/** Used to detect unsigned integer values. */\nvar reIsUint = /^(?:0|[1-9]\\d*)$/;\n\n/**\n * Checks if `value` is a valid array-like index.\n *\n * @private\n * @param {*} value The value to check.\n * @param {number} [length=MAX_SAFE_INTEGER] The upper bounds of a valid index.\n * @returns {boolean} Returns `true` if `value` is a valid index, else `false`.\n */\nfunction isIndex(value, length) {\n var type = typeof value;\n length = length == null ? MAX_SAFE_INTEGER : length;\n\n return !!length &&\n (type == 'number' ||\n (type != 'symbol' && reIsUint.test(value))) &&\n (value > -1 && value % 1 == 0 && value < length);\n}\n\nexport default isIndex;\n","/** Used as references for various `Number` constants. */\nvar MAX_SAFE_INTEGER = 9007199254740991;\n\n/**\n * Checks if `value` is a valid array-like length.\n *\n * **Note:** This method is loosely based on\n * [`ToLength`](http://ecma-international.org/ecma-262/7.0/#sec-tolength).\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a valid length, else `false`.\n * @example\n *\n * _.isLength(3);\n * // => true\n *\n * _.isLength(Number.MIN_VALUE);\n * // => false\n *\n * _.isLength(Infinity);\n * // => false\n *\n * _.isLength('3');\n * // => false\n */\nfunction isLength(value) {\n return typeof value == 'number' &&\n value > -1 && value % 1 == 0 && value <= MAX_SAFE_INTEGER;\n}\n\nexport default isLength;\n","import baseGetTag from './_baseGetTag.js';\nimport isLength from './isLength.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values of typed arrays. */\nvar typedArrayTags = {};\ntypedArrayTags[float32Tag] = typedArrayTags[float64Tag] =\ntypedArrayTags[int8Tag] = typedArrayTags[int16Tag] =\ntypedArrayTags[int32Tag] = typedArrayTags[uint8Tag] =\ntypedArrayTags[uint8ClampedTag] = typedArrayTags[uint16Tag] =\ntypedArrayTags[uint32Tag] = true;\ntypedArrayTags[argsTag] = typedArrayTags[arrayTag] =\ntypedArrayTags[arrayBufferTag] = typedArrayTags[boolTag] =\ntypedArrayTags[dataViewTag] = typedArrayTags[dateTag] =\ntypedArrayTags[errorTag] = typedArrayTags[funcTag] =\ntypedArrayTags[mapTag] = typedArrayTags[numberTag] =\ntypedArrayTags[objectTag] = typedArrayTags[regexpTag] =\ntypedArrayTags[setTag] = typedArrayTags[stringTag] =\ntypedArrayTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.isTypedArray` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n */\nfunction baseIsTypedArray(value) {\n return isObjectLike(value) &&\n isLength(value.length) && !!typedArrayTags[baseGetTag(value)];\n}\n\nexport default baseIsTypedArray;\n","/**\n * The base implementation of `_.unary` without support for storing metadata.\n *\n * @private\n * @param {Function} func The function to cap arguments for.\n * @returns {Function} Returns the new capped function.\n */\nfunction baseUnary(func) {\n return function(value) {\n return func(value);\n };\n}\n\nexport default baseUnary;\n","import freeGlobal from './_freeGlobal.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Detect free variable `process` from Node.js. */\nvar freeProcess = moduleExports && freeGlobal.process;\n\n/** Used to access faster Node.js helpers. */\nvar nodeUtil = (function() {\n try {\n // Use `util.types` for Node.js 10+.\n var types = freeModule && freeModule.require && freeModule.require('util').types;\n\n if (types) {\n return types;\n }\n\n // Legacy `process.binding('util')` for Node.js < 10.\n return freeProcess && freeProcess.binding && freeProcess.binding('util');\n } catch (e) {}\n}());\n\nexport default nodeUtil;\n","import baseIsTypedArray from './_baseIsTypedArray.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsTypedArray = nodeUtil && nodeUtil.isTypedArray;\n\n/**\n * Checks if `value` is classified as a typed array.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a typed array, else `false`.\n * @example\n *\n * _.isTypedArray(new Uint8Array);\n * // => true\n *\n * _.isTypedArray([]);\n * // => false\n */\nvar isTypedArray = nodeIsTypedArray ? baseUnary(nodeIsTypedArray) : baseIsTypedArray;\n\nexport default isTypedArray;\n","import baseTimes from './_baseTimes.js';\nimport isArguments from './isArguments.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isIndex from './_isIndex.js';\nimport isTypedArray from './isTypedArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Creates an array of the enumerable property names of the array-like `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @param {boolean} inherited Specify returning inherited property names.\n * @returns {Array} Returns the array of property names.\n */\nfunction arrayLikeKeys(value, inherited) {\n var isArr = isArray(value),\n isArg = !isArr && isArguments(value),\n isBuff = !isArr && !isArg && isBuffer(value),\n isType = !isArr && !isArg && !isBuff && isTypedArray(value),\n skipIndexes = isArr || isArg || isBuff || isType,\n result = skipIndexes ? baseTimes(value.length, String) : [],\n length = result.length;\n\n for (var key in value) {\n if ((inherited || hasOwnProperty.call(value, key)) &&\n !(skipIndexes && (\n // Safari 9 has enumerable `arguments.length` in strict mode.\n key == 'length' ||\n // Node.js 0.10 has enumerable non-index properties on buffers.\n (isBuff && (key == 'offset' || key == 'parent')) ||\n // PhantomJS 2 has enumerable non-index properties on typed arrays.\n (isType && (key == 'buffer' || key == 'byteLength' || key == 'byteOffset')) ||\n // Skip index properties.\n isIndex(key, length)\n ))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default arrayLikeKeys;\n","/**\n * The base implementation of `_.times` without support for iteratee shorthands\n * or max array length checks.\n *\n * @private\n * @param {number} n The number of times to invoke `iteratee`.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the array of results.\n */\nfunction baseTimes(n, iteratee) {\n var index = -1,\n result = Array(n);\n\n while (++index < n) {\n result[index] = iteratee(index);\n }\n return result;\n}\n\nexport default baseTimes;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/**\n * Checks if `value` is likely a prototype object.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a prototype, else `false`.\n */\nfunction isPrototype(value) {\n var Ctor = value && value.constructor,\n proto = (typeof Ctor == 'function' && Ctor.prototype) || objectProto;\n\n return value === proto;\n}\n\nexport default isPrototype;\n","import overArg from './_overArg.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeKeys = overArg(Object.keys, Object);\n\nexport default nativeKeys;\n","import isPrototype from './_isPrototype.js';\nimport nativeKeys from './_nativeKeys.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keys` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeys(object) {\n if (!isPrototype(object)) {\n return nativeKeys(object);\n }\n var result = [];\n for (var key in Object(object)) {\n if (hasOwnProperty.call(object, key) && key != 'constructor') {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeys;\n","import isFunction from './isFunction.js';\nimport isLength from './isLength.js';\n\n/**\n * Checks if `value` is array-like. A value is considered array-like if it's\n * not a function and has a `value.length` that's an integer greater than or\n * equal to `0` and less than or equal to `Number.MAX_SAFE_INTEGER`.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is array-like, else `false`.\n * @example\n *\n * _.isArrayLike([1, 2, 3]);\n * // => true\n *\n * _.isArrayLike(document.body.children);\n * // => true\n *\n * _.isArrayLike('abc');\n * // => true\n *\n * _.isArrayLike(_.noop);\n * // => false\n */\nfunction isArrayLike(value) {\n return value != null && isLength(value.length) && !isFunction(value);\n}\n\nexport default isArrayLike;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeys from './_baseKeys.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects. See the\n * [ES spec](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * for more details.\n *\n * @static\n * @since 0.1.0\n * @memberOf _\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keys(new Foo);\n * // => ['a', 'b'] (iteration order is not guaranteed)\n *\n * _.keys('hi');\n * // => ['0', '1']\n */\nfunction keys(object) {\n return isArrayLike(object) ? arrayLikeKeys(object) : baseKeys(object);\n}\n\nexport default keys;\n","import isObject from './isObject.js';\nimport isPrototype from './_isPrototype.js';\nimport nativeKeysIn from './_nativeKeysIn.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * The base implementation of `_.keysIn` which doesn't treat sparse arrays as dense.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction baseKeysIn(object) {\n if (!isObject(object)) {\n return nativeKeysIn(object);\n }\n var isProto = isPrototype(object),\n result = [];\n\n for (var key in object) {\n if (!(key == 'constructor' && (isProto || !hasOwnProperty.call(object, key)))) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default baseKeysIn;\n","/**\n * This function is like\n * [`Object.keys`](http://ecma-international.org/ecma-262/7.0/#sec-object.keys)\n * except that it includes inherited enumerable properties.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n */\nfunction nativeKeysIn(object) {\n var result = [];\n if (object != null) {\n for (var key in Object(object)) {\n result.push(key);\n }\n }\n return result;\n}\n\nexport default nativeKeysIn;\n","import arrayLikeKeys from './_arrayLikeKeys.js';\nimport baseKeysIn from './_baseKeysIn.js';\nimport isArrayLike from './isArrayLike.js';\n\n/**\n * Creates an array of the own and inherited enumerable property names of `object`.\n *\n * **Note:** Non-object values are coerced to objects.\n *\n * @static\n * @memberOf _\n * @since 3.0.0\n * @category Object\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names.\n * @example\n *\n * function Foo() {\n * this.a = 1;\n * this.b = 2;\n * }\n *\n * Foo.prototype.c = 3;\n *\n * _.keysIn(new Foo);\n * // => ['a', 'b', 'c'] (iteration order is not guaranteed)\n */\nfunction keysIn(object) {\n return isArrayLike(object) ? arrayLikeKeys(object, true) : baseKeysIn(object);\n}\n\nexport default keysIn;\n","import root from './_root.js';\n\n/** Detect free variable `exports`. */\nvar freeExports = typeof exports == 'object' && exports && !exports.nodeType && exports;\n\n/** Detect free variable `module`. */\nvar freeModule = freeExports && typeof module == 'object' && module && !module.nodeType && module;\n\n/** Detect the popular CommonJS extension `module.exports`. */\nvar moduleExports = freeModule && freeModule.exports === freeExports;\n\n/** Built-in value references. */\nvar Buffer = moduleExports ? root.Buffer : undefined,\n allocUnsafe = Buffer ? Buffer.allocUnsafe : undefined;\n\n/**\n * Creates a clone of `buffer`.\n *\n * @private\n * @param {Buffer} buffer The buffer to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Buffer} Returns the cloned buffer.\n */\nfunction cloneBuffer(buffer, isDeep) {\n if (isDeep) {\n return buffer.slice();\n }\n var length = buffer.length,\n result = allocUnsafe ? allocUnsafe(length) : new buffer.constructor(length);\n\n buffer.copy(result);\n return result;\n}\n\nexport default cloneBuffer;\n","/**\n * Copies the values of `source` to `array`.\n *\n * @private\n * @param {Array} source The array to copy values from.\n * @param {Array} [array=[]] The array to copy values to.\n * @returns {Array} Returns `array`.\n */\nfunction copyArray(source, array) {\n var index = -1,\n length = source.length;\n\n array || (array = Array(length));\n while (++index < length) {\n array[index] = source[index];\n }\n return array;\n}\n\nexport default copyArray;\n","/**\n * This method returns a new empty array.\n *\n * @static\n * @memberOf _\n * @since 4.13.0\n * @category Util\n * @returns {Array} Returns the new empty array.\n * @example\n *\n * var arrays = _.times(2, _.stubArray);\n *\n * console.log(arrays);\n * // => [[], []]\n *\n * console.log(arrays[0] === arrays[1]);\n * // => false\n */\nfunction stubArray() {\n return [];\n}\n\nexport default stubArray;\n","import arrayFilter from './_arrayFilter.js';\nimport stubArray from './stubArray.js';\n\n/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Built-in value references. */\nvar propertyIsEnumerable = objectProto.propertyIsEnumerable;\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbols = !nativeGetSymbols ? stubArray : function(object) {\n if (object == null) {\n return [];\n }\n object = Object(object);\n return arrayFilter(nativeGetSymbols(object), function(symbol) {\n return propertyIsEnumerable.call(object, symbol);\n });\n};\n\nexport default getSymbols;\n","/**\n * A specialized version of `_.filter` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} predicate The function invoked per iteration.\n * @returns {Array} Returns the new filtered array.\n */\nfunction arrayFilter(array, predicate) {\n var index = -1,\n length = array == null ? 0 : array.length,\n resIndex = 0,\n result = [];\n\n while (++index < length) {\n var value = array[index];\n if (predicate(value, index, array)) {\n result[resIndex++] = value;\n }\n }\n return result;\n}\n\nexport default arrayFilter;\n","/**\n * Appends the elements of `values` to `array`.\n *\n * @private\n * @param {Array} array The array to modify.\n * @param {Array} values The values to append.\n * @returns {Array} Returns `array`.\n */\nfunction arrayPush(array, values) {\n var index = -1,\n length = values.length,\n offset = array.length;\n\n while (++index < length) {\n array[offset + index] = values[index];\n }\n return array;\n}\n\nexport default arrayPush;\n","import arrayPush from './_arrayPush.js';\nimport getPrototype from './_getPrototype.js';\nimport getSymbols from './_getSymbols.js';\nimport stubArray from './stubArray.js';\n\n/* Built-in method references for those with the same name as other `lodash` methods. */\nvar nativeGetSymbols = Object.getOwnPropertySymbols;\n\n/**\n * Creates an array of the own and inherited enumerable symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of symbols.\n */\nvar getSymbolsIn = !nativeGetSymbols ? stubArray : function(object) {\n var result = [];\n while (object) {\n arrayPush(result, getSymbols(object));\n object = getPrototype(object);\n }\n return result;\n};\n\nexport default getSymbolsIn;\n","import arrayPush from './_arrayPush.js';\nimport isArray from './isArray.js';\n\n/**\n * The base implementation of `getAllKeys` and `getAllKeysIn` which uses\n * `keysFunc` and `symbolsFunc` to get the enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @param {Function} keysFunc The function to get the keys of `object`.\n * @param {Function} symbolsFunc The function to get the symbols of `object`.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction baseGetAllKeys(object, keysFunc, symbolsFunc) {\n var result = keysFunc(object);\n return isArray(object) ? result : arrayPush(result, symbolsFunc(object));\n}\n\nexport default baseGetAllKeys;\n","import baseGetAllKeys from './_baseGetAllKeys.js';\nimport getSymbols from './_getSymbols.js';\nimport keys from './keys.js';\n\n/**\n * Creates an array of own enumerable property names and symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeys(object) {\n return baseGetAllKeys(object, keys, getSymbols);\n}\n\nexport default getAllKeys;\n","import baseGetAllKeys from './_baseGetAllKeys.js';\nimport getSymbolsIn from './_getSymbolsIn.js';\nimport keysIn from './keysIn.js';\n\n/**\n * Creates an array of own and inherited enumerable property names and\n * symbols of `object`.\n *\n * @private\n * @param {Object} object The object to query.\n * @returns {Array} Returns the array of property names and symbols.\n */\nfunction getAllKeysIn(object) {\n return baseGetAllKeys(object, keysIn, getSymbolsIn);\n}\n\nexport default getAllKeysIn;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar DataView = getNative(root, 'DataView');\n\nexport default DataView;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Promise = getNative(root, 'Promise');\n\nexport default Promise;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar Set = getNative(root, 'Set');\n\nexport default Set;\n","import getNative from './_getNative.js';\nimport root from './_root.js';\n\n/* Built-in method references that are verified to be native. */\nvar WeakMap = getNative(root, 'WeakMap');\n\nexport default WeakMap;\n","import DataView from './_DataView.js';\nimport Map from './_Map.js';\nimport Promise from './_Promise.js';\nimport Set from './_Set.js';\nimport WeakMap from './_WeakMap.js';\nimport baseGetTag from './_baseGetTag.js';\nimport toSource from './_toSource.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]',\n objectTag = '[object Object]',\n promiseTag = '[object Promise]',\n setTag = '[object Set]',\n weakMapTag = '[object WeakMap]';\n\nvar dataViewTag = '[object DataView]';\n\n/** Used to detect maps, sets, and weakmaps. */\nvar dataViewCtorString = toSource(DataView),\n mapCtorString = toSource(Map),\n promiseCtorString = toSource(Promise),\n setCtorString = toSource(Set),\n weakMapCtorString = toSource(WeakMap);\n\n/**\n * Gets the `toStringTag` of `value`.\n *\n * @private\n * @param {*} value The value to query.\n * @returns {string} Returns the `toStringTag`.\n */\nvar getTag = baseGetTag;\n\n// Fallback for data views, maps, sets, and weak maps in IE 11 and promises in Node.js < 6.\nif ((DataView && getTag(new DataView(new ArrayBuffer(1))) != dataViewTag) ||\n (Map && getTag(new Map) != mapTag) ||\n (Promise && getTag(Promise.resolve()) != promiseTag) ||\n (Set && getTag(new Set) != setTag) ||\n (WeakMap && getTag(new WeakMap) != weakMapTag)) {\n getTag = function(value) {\n var result = baseGetTag(value),\n Ctor = result == objectTag ? value.constructor : undefined,\n ctorString = Ctor ? toSource(Ctor) : '';\n\n if (ctorString) {\n switch (ctorString) {\n case dataViewCtorString: return dataViewTag;\n case mapCtorString: return mapTag;\n case promiseCtorString: return promiseTag;\n case setCtorString: return setTag;\n case weakMapCtorString: return weakMapTag;\n }\n }\n return result;\n };\n}\n\nexport default getTag;\n","/** Used for built-in method references. */\nvar objectProto = Object.prototype;\n\n/** Used to check objects for own properties. */\nvar hasOwnProperty = objectProto.hasOwnProperty;\n\n/**\n * Initializes an array clone.\n *\n * @private\n * @param {Array} array The array to clone.\n * @returns {Array} Returns the initialized clone.\n */\nfunction initCloneArray(array) {\n var length = array.length,\n result = new array.constructor(length);\n\n // Add properties assigned by `RegExp#exec`.\n if (length && typeof array[0] == 'string' && hasOwnProperty.call(array, 'index')) {\n result.index = array.index;\n result.input = array.input;\n }\n return result;\n}\n\nexport default initCloneArray;\n","import root from './_root.js';\n\n/** Built-in value references. */\nvar Uint8Array = root.Uint8Array;\n\nexport default Uint8Array;\n","import Uint8Array from './_Uint8Array.js';\n\n/**\n * Creates a clone of `arrayBuffer`.\n *\n * @private\n * @param {ArrayBuffer} arrayBuffer The array buffer to clone.\n * @returns {ArrayBuffer} Returns the cloned array buffer.\n */\nfunction cloneArrayBuffer(arrayBuffer) {\n var result = new arrayBuffer.constructor(arrayBuffer.byteLength);\n new Uint8Array(result).set(new Uint8Array(arrayBuffer));\n return result;\n}\n\nexport default cloneArrayBuffer;\n","/** Used to match `RegExp` flags from their coerced string values. */\nvar reFlags = /\\w*$/;\n\n/**\n * Creates a clone of `regexp`.\n *\n * @private\n * @param {Object} regexp The regexp to clone.\n * @returns {Object} Returns the cloned regexp.\n */\nfunction cloneRegExp(regexp) {\n var result = new regexp.constructor(regexp.source, reFlags.exec(regexp));\n result.lastIndex = regexp.lastIndex;\n return result;\n}\n\nexport default cloneRegExp;\n","import Symbol from './_Symbol.js';\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolValueOf = symbolProto ? symbolProto.valueOf : undefined;\n\n/**\n * Creates a clone of the `symbol` object.\n *\n * @private\n * @param {Object} symbol The symbol object to clone.\n * @returns {Object} Returns the cloned symbol object.\n */\nfunction cloneSymbol(symbol) {\n return symbolValueOf ? Object(symbolValueOf.call(symbol)) : {};\n}\n\nexport default cloneSymbol;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\nimport cloneDataView from './_cloneDataView.js';\nimport cloneRegExp from './_cloneRegExp.js';\nimport cloneSymbol from './_cloneSymbol.js';\nimport cloneTypedArray from './_cloneTypedArray.js';\n\n/** `Object#toString` result references. */\nvar boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/**\n * Initializes an object clone based on its `toStringTag`.\n *\n * **Note:** This function only supports cloning values with tags of\n * `Boolean`, `Date`, `Error`, `Map`, `Number`, `RegExp`, `Set`, or `String`.\n *\n * @private\n * @param {Object} object The object to clone.\n * @param {string} tag The `toStringTag` of the object to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneByTag(object, tag, isDeep) {\n var Ctor = object.constructor;\n switch (tag) {\n case arrayBufferTag:\n return cloneArrayBuffer(object);\n\n case boolTag:\n case dateTag:\n return new Ctor(+object);\n\n case dataViewTag:\n return cloneDataView(object, isDeep);\n\n case float32Tag: case float64Tag:\n case int8Tag: case int16Tag: case int32Tag:\n case uint8Tag: case uint8ClampedTag: case uint16Tag: case uint32Tag:\n return cloneTypedArray(object, isDeep);\n\n case mapTag:\n return new Ctor;\n\n case numberTag:\n case stringTag:\n return new Ctor(object);\n\n case regexpTag:\n return cloneRegExp(object);\n\n case setTag:\n return new Ctor;\n\n case symbolTag:\n return cloneSymbol(object);\n }\n}\n\nexport default initCloneByTag;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `dataView`.\n *\n * @private\n * @param {Object} dataView The data view to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned data view.\n */\nfunction cloneDataView(dataView, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(dataView.buffer) : dataView.buffer;\n return new dataView.constructor(buffer, dataView.byteOffset, dataView.byteLength);\n}\n\nexport default cloneDataView;\n","import cloneArrayBuffer from './_cloneArrayBuffer.js';\n\n/**\n * Creates a clone of `typedArray`.\n *\n * @private\n * @param {Object} typedArray The typed array to clone.\n * @param {boolean} [isDeep] Specify a deep clone.\n * @returns {Object} Returns the cloned typed array.\n */\nfunction cloneTypedArray(typedArray, isDeep) {\n var buffer = isDeep ? cloneArrayBuffer(typedArray.buffer) : typedArray.buffer;\n return new typedArray.constructor(buffer, typedArray.byteOffset, typedArray.length);\n}\n\nexport default cloneTypedArray;\n","import isObject from './isObject.js';\n\n/** Built-in value references. */\nvar objectCreate = Object.create;\n\n/**\n * The base implementation of `_.create` without support for assigning\n * properties to the created object.\n *\n * @private\n * @param {Object} proto The object to inherit from.\n * @returns {Object} Returns the new object.\n */\nvar baseCreate = (function() {\n function object() {}\n return function(proto) {\n if (!isObject(proto)) {\n return {};\n }\n if (objectCreate) {\n return objectCreate(proto);\n }\n object.prototype = proto;\n var result = new object;\n object.prototype = undefined;\n return result;\n };\n}());\n\nexport default baseCreate;\n","import baseIsMap from './_baseIsMap.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsMap = nodeUtil && nodeUtil.isMap;\n\n/**\n * Checks if `value` is classified as a `Map` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n * @example\n *\n * _.isMap(new Map);\n * // => true\n *\n * _.isMap(new WeakMap);\n * // => false\n */\nvar isMap = nodeIsMap ? baseUnary(nodeIsMap) : baseIsMap;\n\nexport default isMap;\n","import getTag from './_getTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar mapTag = '[object Map]';\n\n/**\n * The base implementation of `_.isMap` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a map, else `false`.\n */\nfunction baseIsMap(value) {\n return isObjectLike(value) && getTag(value) == mapTag;\n}\n\nexport default baseIsMap;\n","import baseIsSet from './_baseIsSet.js';\nimport baseUnary from './_baseUnary.js';\nimport nodeUtil from './_nodeUtil.js';\n\n/* Node.js helper references. */\nvar nodeIsSet = nodeUtil && nodeUtil.isSet;\n\n/**\n * Checks if `value` is classified as a `Set` object.\n *\n * @static\n * @memberOf _\n * @since 4.3.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n * @example\n *\n * _.isSet(new Set);\n * // => true\n *\n * _.isSet(new WeakSet);\n * // => false\n */\nvar isSet = nodeIsSet ? baseUnary(nodeIsSet) : baseIsSet;\n\nexport default isSet;\n","import getTag from './_getTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar setTag = '[object Set]';\n\n/**\n * The base implementation of `_.isSet` without Node.js optimizations.\n *\n * @private\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a set, else `false`.\n */\nfunction baseIsSet(value) {\n return isObjectLike(value) && getTag(value) == setTag;\n}\n\nexport default baseIsSet;\n","import Stack from './_Stack.js';\nimport arrayEach from './_arrayEach.js';\nimport assignValue from './_assignValue.js';\nimport baseAssign from './_baseAssign.js';\nimport baseAssignIn from './_baseAssignIn.js';\nimport cloneBuffer from './_cloneBuffer.js';\nimport copyArray from './_copyArray.js';\nimport copySymbols from './_copySymbols.js';\nimport copySymbolsIn from './_copySymbolsIn.js';\nimport getAllKeys from './_getAllKeys.js';\nimport getAllKeysIn from './_getAllKeysIn.js';\nimport getTag from './_getTag.js';\nimport initCloneArray from './_initCloneArray.js';\nimport initCloneByTag from './_initCloneByTag.js';\nimport initCloneObject from './_initCloneObject.js';\nimport isArray from './isArray.js';\nimport isBuffer from './isBuffer.js';\nimport isMap from './isMap.js';\nimport isObject from './isObject.js';\nimport isSet from './isSet.js';\nimport keys from './keys.js';\nimport keysIn from './keysIn.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_FLAT_FLAG = 2,\n CLONE_SYMBOLS_FLAG = 4;\n\n/** `Object#toString` result references. */\nvar argsTag = '[object Arguments]',\n arrayTag = '[object Array]',\n boolTag = '[object Boolean]',\n dateTag = '[object Date]',\n errorTag = '[object Error]',\n funcTag = '[object Function]',\n genTag = '[object GeneratorFunction]',\n mapTag = '[object Map]',\n numberTag = '[object Number]',\n objectTag = '[object Object]',\n regexpTag = '[object RegExp]',\n setTag = '[object Set]',\n stringTag = '[object String]',\n symbolTag = '[object Symbol]',\n weakMapTag = '[object WeakMap]';\n\nvar arrayBufferTag = '[object ArrayBuffer]',\n dataViewTag = '[object DataView]',\n float32Tag = '[object Float32Array]',\n float64Tag = '[object Float64Array]',\n int8Tag = '[object Int8Array]',\n int16Tag = '[object Int16Array]',\n int32Tag = '[object Int32Array]',\n uint8Tag = '[object Uint8Array]',\n uint8ClampedTag = '[object Uint8ClampedArray]',\n uint16Tag = '[object Uint16Array]',\n uint32Tag = '[object Uint32Array]';\n\n/** Used to identify `toStringTag` values supported by `_.clone`. */\nvar cloneableTags = {};\ncloneableTags[argsTag] = cloneableTags[arrayTag] =\ncloneableTags[arrayBufferTag] = cloneableTags[dataViewTag] =\ncloneableTags[boolTag] = cloneableTags[dateTag] =\ncloneableTags[float32Tag] = cloneableTags[float64Tag] =\ncloneableTags[int8Tag] = cloneableTags[int16Tag] =\ncloneableTags[int32Tag] = cloneableTags[mapTag] =\ncloneableTags[numberTag] = cloneableTags[objectTag] =\ncloneableTags[regexpTag] = cloneableTags[setTag] =\ncloneableTags[stringTag] = cloneableTags[symbolTag] =\ncloneableTags[uint8Tag] = cloneableTags[uint8ClampedTag] =\ncloneableTags[uint16Tag] = cloneableTags[uint32Tag] = true;\ncloneableTags[errorTag] = cloneableTags[funcTag] =\ncloneableTags[weakMapTag] = false;\n\n/**\n * The base implementation of `_.clone` and `_.cloneDeep` which tracks\n * traversed objects.\n *\n * @private\n * @param {*} value The value to clone.\n * @param {boolean} bitmask The bitmask flags.\n * 1 - Deep clone\n * 2 - Flatten inherited properties\n * 4 - Clone symbols\n * @param {Function} [customizer] The function to customize cloning.\n * @param {string} [key] The key of `value`.\n * @param {Object} [object] The parent object of `value`.\n * @param {Object} [stack] Tracks traversed objects and their clone counterparts.\n * @returns {*} Returns the cloned value.\n */\nfunction baseClone(value, bitmask, customizer, key, object, stack) {\n var result,\n isDeep = bitmask & CLONE_DEEP_FLAG,\n isFlat = bitmask & CLONE_FLAT_FLAG,\n isFull = bitmask & CLONE_SYMBOLS_FLAG;\n\n if (customizer) {\n result = object ? customizer(value, key, object, stack) : customizer(value);\n }\n if (result !== undefined) {\n return result;\n }\n if (!isObject(value)) {\n return value;\n }\n var isArr = isArray(value);\n if (isArr) {\n result = initCloneArray(value);\n if (!isDeep) {\n return copyArray(value, result);\n }\n } else {\n var tag = getTag(value),\n isFunc = tag == funcTag || tag == genTag;\n\n if (isBuffer(value)) {\n return cloneBuffer(value, isDeep);\n }\n if (tag == objectTag || tag == argsTag || (isFunc && !object)) {\n result = (isFlat || isFunc) ? {} : initCloneObject(value);\n if (!isDeep) {\n return isFlat\n ? copySymbolsIn(value, baseAssignIn(result, value))\n : copySymbols(value, baseAssign(result, value));\n }\n } else {\n if (!cloneableTags[tag]) {\n return object ? value : {};\n }\n result = initCloneByTag(value, tag, isDeep);\n }\n }\n // Check for circular references and return its corresponding clone.\n stack || (stack = new Stack);\n var stacked = stack.get(value);\n if (stacked) {\n return stacked;\n }\n stack.set(value, result);\n\n if (isSet(value)) {\n value.forEach(function(subValue) {\n result.add(baseClone(subValue, bitmask, customizer, subValue, value, stack));\n });\n } else if (isMap(value)) {\n value.forEach(function(subValue, key) {\n result.set(key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n }\n\n var keysFunc = isFull\n ? (isFlat ? getAllKeysIn : getAllKeys)\n : (isFlat ? keysIn : keys);\n\n var props = isArr ? undefined : keysFunc(value);\n arrayEach(props || value, function(subValue, key) {\n if (props) {\n key = subValue;\n subValue = value[key];\n }\n // Recursively populate clone (susceptible to call stack limits).\n assignValue(result, key, baseClone(subValue, bitmask, customizer, key, value, stack));\n });\n return result;\n}\n\nexport default baseClone;\n","import baseCreate from './_baseCreate.js';\nimport getPrototype from './_getPrototype.js';\nimport isPrototype from './_isPrototype.js';\n\n/**\n * Initializes an object clone.\n *\n * @private\n * @param {Object} object The object to clone.\n * @returns {Object} Returns the initialized clone.\n */\nfunction initCloneObject(object) {\n return (typeof object.constructor == 'function' && !isPrototype(object))\n ? baseCreate(getPrototype(object))\n : {};\n}\n\nexport default initCloneObject;\n","import copyObject from './_copyObject.js';\nimport getSymbolsIn from './_getSymbolsIn.js';\n\n/**\n * Copies own and inherited symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbolsIn(source, object) {\n return copyObject(source, getSymbolsIn(source), object);\n}\n\nexport default copySymbolsIn;\n","import copyObject from './_copyObject.js';\nimport keysIn from './keysIn.js';\n\n/**\n * The base implementation of `_.assignIn` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssignIn(object, source) {\n return object && copyObject(source, keysIn(source), object);\n}\n\nexport default baseAssignIn;\n","import copyObject from './_copyObject.js';\nimport getSymbols from './_getSymbols.js';\n\n/**\n * Copies own symbols of `source` to `object`.\n *\n * @private\n * @param {Object} source The object to copy symbols from.\n * @param {Object} [object={}] The object to copy symbols to.\n * @returns {Object} Returns `object`.\n */\nfunction copySymbols(source, object) {\n return copyObject(source, getSymbols(source), object);\n}\n\nexport default copySymbols;\n","import copyObject from './_copyObject.js';\nimport keys from './keys.js';\n\n/**\n * The base implementation of `_.assign` without support for multiple sources\n * or `customizer` functions.\n *\n * @private\n * @param {Object} object The destination object.\n * @param {Object} source The source object.\n * @returns {Object} Returns `object`.\n */\nfunction baseAssign(object, source) {\n return object && copyObject(source, keys(source), object);\n}\n\nexport default baseAssign;\n","/**\n * A specialized version of `_.forEach` for arrays without support for\n * iteratee shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns `array`.\n */\nfunction arrayEach(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length;\n\n while (++index < length) {\n if (iteratee(array[index], index, array) === false) {\n break;\n }\n }\n return array;\n}\n\nexport default arrayEach;\n","import baseClone from './_baseClone.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * Creates a shallow clone of `value`.\n *\n * **Note:** This method is loosely based on the\n * [structured clone algorithm](https://mdn.io/Structured_clone_algorithm)\n * and supports cloning arrays, array buffers, booleans, date objects, maps,\n * numbers, `Object` objects, regexes, sets, strings, symbols, and typed\n * arrays. The own enumerable properties of `arguments` objects are cloned\n * as plain objects. An empty object is returned for uncloneable values such\n * as error objects, functions, DOM nodes, and WeakMaps.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Lang\n * @param {*} value The value to clone.\n * @returns {*} Returns the cloned value.\n * @see _.cloneDeep\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var shallow = _.clone(objects);\n * console.log(shallow[0] === objects[0]);\n * // => true\n */\nfunction clone(value) {\n return baseClone(value, CLONE_SYMBOLS_FLAG);\n}\n\nexport default clone;\n","/**\n * A specialized version of `_.map` for arrays without support for iteratee\n * shorthands.\n *\n * @private\n * @param {Array} [array] The array to iterate over.\n * @param {Function} iteratee The function invoked per iteration.\n * @returns {Array} Returns the new mapped array.\n */\nfunction arrayMap(array, iteratee) {\n var index = -1,\n length = array == null ? 0 : array.length,\n result = Array(length);\n\n while (++index < length) {\n result[index] = iteratee(array[index], index, array);\n }\n return result;\n}\n\nexport default arrayMap;\n","import baseGetTag from './_baseGetTag.js';\nimport isObjectLike from './isObjectLike.js';\n\n/** `Object#toString` result references. */\nvar symbolTag = '[object Symbol]';\n\n/**\n * Checks if `value` is classified as a `Symbol` primitive or object.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to check.\n * @returns {boolean} Returns `true` if `value` is a symbol, else `false`.\n * @example\n *\n * _.isSymbol(Symbol.iterator);\n * // => true\n *\n * _.isSymbol('abc');\n * // => false\n */\nfunction isSymbol(value) {\n return typeof value == 'symbol' ||\n (isObjectLike(value) && baseGetTag(value) == symbolTag);\n}\n\nexport default isSymbol;\n","import MapCache from './_MapCache.js';\n\n/** Error message constants. */\nvar FUNC_ERROR_TEXT = 'Expected a function';\n\n/**\n * Creates a function that memoizes the result of `func`. If `resolver` is\n * provided, it determines the cache key for storing the result based on the\n * arguments provided to the memoized function. By default, the first argument\n * provided to the memoized function is used as the map cache key. The `func`\n * is invoked with the `this` binding of the memoized function.\n *\n * **Note:** The cache is exposed as the `cache` property on the memoized\n * function. Its creation may be customized by replacing the `_.memoize.Cache`\n * constructor with one whose instances implement the\n * [`Map`](http://ecma-international.org/ecma-262/7.0/#sec-properties-of-the-map-prototype-object)\n * method interface of `clear`, `delete`, `get`, `has`, and `set`.\n *\n * @static\n * @memberOf _\n * @since 0.1.0\n * @category Function\n * @param {Function} func The function to have its output memoized.\n * @param {Function} [resolver] The function to resolve the cache key.\n * @returns {Function} Returns the new memoized function.\n * @example\n *\n * var object = { 'a': 1, 'b': 2 };\n * var other = { 'c': 3, 'd': 4 };\n *\n * var values = _.memoize(_.values);\n * values(object);\n * // => [1, 2]\n *\n * values(other);\n * // => [3, 4]\n *\n * object.a = 2;\n * values(object);\n * // => [1, 2]\n *\n * // Modify the result cache.\n * values.cache.set(object, ['a', 'b']);\n * values(object);\n * // => ['a', 'b']\n *\n * // Replace `_.memoize.Cache`.\n * _.memoize.Cache = WeakMap;\n */\nfunction memoize(func, resolver) {\n if (typeof func != 'function' || (resolver != null && typeof resolver != 'function')) {\n throw new TypeError(FUNC_ERROR_TEXT);\n }\n var memoized = function() {\n var args = arguments,\n key = resolver ? resolver.apply(this, args) : args[0],\n cache = memoized.cache;\n\n if (cache.has(key)) {\n return cache.get(key);\n }\n var result = func.apply(this, args);\n memoized.cache = cache.set(key, result) || cache;\n return result;\n };\n memoized.cache = new (memoize.Cache || MapCache);\n return memoized;\n}\n\n// Expose `MapCache`.\nmemoize.Cache = MapCache;\n\nexport default memoize;\n","import memoizeCapped from './_memoizeCapped.js';\n\n/** Used to match property names within property paths. */\nvar rePropName = /[^.[\\]]+|\\[(?:(-?\\d+(?:\\.\\d+)?)|([\"'])((?:(?!\\2)[^\\\\]|\\\\.)*?)\\2)\\]|(?=(?:\\.|\\[\\])(?:\\.|\\[\\]|$))/g;\n\n/** Used to match backslashes in property paths. */\nvar reEscapeChar = /\\\\(\\\\)?/g;\n\n/**\n * Converts `string` to a property path array.\n *\n * @private\n * @param {string} string The string to convert.\n * @returns {Array} Returns the property path array.\n */\nvar stringToPath = memoizeCapped(function(string) {\n var result = [];\n if (string.charCodeAt(0) === 46 /* . */) {\n result.push('');\n }\n string.replace(rePropName, function(match, number, quote, subString) {\n result.push(quote ? subString.replace(reEscapeChar, '$1') : (number || match));\n });\n return result;\n});\n\nexport default stringToPath;\n","import memoize from './memoize.js';\n\n/** Used as the maximum memoize cache size. */\nvar MAX_MEMOIZE_SIZE = 500;\n\n/**\n * A specialized version of `_.memoize` which clears the memoized function's\n * cache when it exceeds `MAX_MEMOIZE_SIZE`.\n *\n * @private\n * @param {Function} func The function to have its output memoized.\n * @returns {Function} Returns the new memoized function.\n */\nfunction memoizeCapped(func) {\n var result = memoize(func, function(key) {\n if (cache.size === MAX_MEMOIZE_SIZE) {\n cache.clear();\n }\n return key;\n });\n\n var cache = result.cache;\n return result;\n}\n\nexport default memoizeCapped;\n","import isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/**\n * Converts `value` to a string key if it's not a string or symbol.\n *\n * @private\n * @param {*} value The value to inspect.\n * @returns {string|symbol} Returns the key.\n */\nfunction toKey(value) {\n if (typeof value == 'string' || isSymbol(value)) {\n return value;\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default toKey;\n","import Symbol from './_Symbol.js';\nimport arrayMap from './_arrayMap.js';\nimport isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\n\n/** Used as references for various `Number` constants. */\nvar INFINITY = 1 / 0;\n\n/** Used to convert symbols to primitives and strings. */\nvar symbolProto = Symbol ? Symbol.prototype : undefined,\n symbolToString = symbolProto ? symbolProto.toString : undefined;\n\n/**\n * The base implementation of `_.toString` which doesn't convert nullish\n * values to empty strings.\n *\n * @private\n * @param {*} value The value to process.\n * @returns {string} Returns the string.\n */\nfunction baseToString(value) {\n // Exit early for strings to avoid a performance hit in some environments.\n if (typeof value == 'string') {\n return value;\n }\n if (isArray(value)) {\n // Recursively convert values (susceptible to call stack limits).\n return arrayMap(value, baseToString) + '';\n }\n if (isSymbol(value)) {\n return symbolToString ? symbolToString.call(value) : '';\n }\n var result = (value + '');\n return (result == '0' && (1 / value) == -INFINITY) ? '-0' : result;\n}\n\nexport default baseToString;\n","import baseToString from './_baseToString.js';\n\n/**\n * Converts `value` to a string. An empty string is returned for `null`\n * and `undefined` values. The sign of `-0` is preserved.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Lang\n * @param {*} value The value to convert.\n * @returns {string} Returns the converted string.\n * @example\n *\n * _.toString(null);\n * // => ''\n *\n * _.toString(-0);\n * // => '-0'\n *\n * _.toString([1, 2, 3]);\n * // => '1,2,3'\n */\nfunction toString(value) {\n return value == null ? '' : baseToString(value);\n}\n\nexport default toString;\n","import arrayMap from './_arrayMap.js';\nimport copyArray from './_copyArray.js';\nimport isArray from './isArray.js';\nimport isSymbol from './isSymbol.js';\nimport stringToPath from './_stringToPath.js';\nimport toKey from './_toKey.js';\nimport toString from './toString.js';\n\n/**\n * Converts `value` to a property path array.\n *\n * @static\n * @memberOf _\n * @since 4.0.0\n * @category Util\n * @param {*} value The value to convert.\n * @returns {Array} Returns the new property path array.\n * @example\n *\n * _.toPath('a.b.c');\n * // => ['a', 'b', 'c']\n *\n * _.toPath('a[0].b.c');\n * // => ['a', '0', 'b', 'c']\n */\nfunction toPath(value) {\n if (isArray(value)) {\n return arrayMap(value, toKey);\n }\n return isSymbol(value) ? [value] : copyArray(stringToPath(toString(value)));\n}\n\nexport default toPath;\n","import baseClone from './_baseClone.js';\n\n/** Used to compose bitmasks for cloning. */\nvar CLONE_DEEP_FLAG = 1,\n CLONE_SYMBOLS_FLAG = 4;\n\n/**\n * This method is like `_.clone` except that it recursively clones `value`.\n *\n * @static\n * @memberOf _\n * @since 1.0.0\n * @category Lang\n * @param {*} value The value to recursively clone.\n * @returns {*} Returns the deep cloned value.\n * @see _.clone\n * @example\n *\n * var objects = [{ 'a': 1 }, { 'b': 2 }];\n *\n * var deep = _.cloneDeep(objects);\n * console.log(deep[0] === objects[0]);\n * // => false\n */\nfunction cloneDeep(value) {\n return baseClone(value, CLONE_DEEP_FLAG | CLONE_SYMBOLS_FLAG);\n}\n\nexport default cloneDeep;\n","import { Children, createContext, useContext, useRef, useEffect, useReducer, useCallback, useMemo, useImperativeHandle, createElement, useLayoutEffect, forwardRef, Component } from 'react';\nimport isEqual from 'react-fast-compare';\nimport deepmerge from 'deepmerge';\nimport isPlainObject from 'lodash-es/isPlainObject';\nimport clone from 'lodash-es/clone';\nimport toPath from 'lodash-es/toPath';\nimport invariant from 'tiny-warning';\nimport hoistNonReactStatics from 'hoist-non-react-statics';\nimport cloneDeep from 'lodash-es/cloneDeep';\n\nfunction _extends() {\n _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\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 _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\n/** @private is the value an empty array? */\n\nvar isEmptyArray = function isEmptyArray(value) {\n return Array.isArray(value) && value.length === 0;\n};\n/** @private is the given object a Function? */\n\nvar isFunction = function isFunction(obj) {\n return typeof obj === 'function';\n};\n/** @private is the given object an Object? */\n\nvar isObject = function isObject(obj) {\n return obj !== null && typeof obj === 'object';\n};\n/** @private is the given object an integer? */\n\nvar isInteger = function isInteger(obj) {\n return String(Math.floor(Number(obj))) === obj;\n};\n/** @private is the given object a string? */\n\nvar isString = function isString(obj) {\n return Object.prototype.toString.call(obj) === '[object String]';\n};\n/** @private is the given object a NaN? */\n// eslint-disable-next-line no-self-compare\n\nvar isNaN$1 = function isNaN(obj) {\n return obj !== obj;\n};\n/** @private Does a React component have exactly 0 children? */\n\nvar isEmptyChildren = function isEmptyChildren(children) {\n return Children.count(children) === 0;\n};\n/** @private is the given object/value a promise? */\n\nvar isPromise = function isPromise(value) {\n return isObject(value) && isFunction(value.then);\n};\n/** @private is the given object/value a type of synthetic event? */\n\nvar isInputEvent = function isInputEvent(value) {\n return value && isObject(value) && isObject(value.target);\n};\n/**\r\n * Same as document.activeElement but wraps in a try-catch block. In IE it is\r\n * not safe to call document.activeElement if there is nothing focused.\r\n *\r\n * The activeElement will be null only if the document or document body is not\r\n * yet defined.\r\n *\r\n * @param {?Document} doc Defaults to current document.\r\n * @return {Element | null}\r\n * @see https://github.com/facebook/fbjs/blob/master/packages/fbjs/src/core/dom/getActiveElement.js\r\n */\n\nfunction getActiveElement(doc) {\n doc = doc || (typeof document !== 'undefined' ? document : undefined);\n\n if (typeof doc === 'undefined') {\n return null;\n }\n\n try {\n return doc.activeElement || doc.body;\n } catch (e) {\n return doc.body;\n }\n}\n/**\r\n * Deeply get a value from an object via its path.\r\n */\n\nfunction getIn(obj, key, def, p) {\n if (p === void 0) {\n p = 0;\n }\n\n var path = toPath(key);\n\n while (obj && p < path.length) {\n obj = obj[path[p++]];\n }\n\n return obj === undefined ? def : obj;\n}\n/**\r\n * Deeply set a value from in object via it's path. If the value at `path`\r\n * has changed, return a shallow copy of obj with `value` set at `path`.\r\n * If `value` has not changed, return the original `obj`.\r\n *\r\n * Existing objects / arrays along `path` are also shallow copied. Sibling\r\n * objects along path retain the same internal js reference. Since new\r\n * objects / arrays are only created along `path`, we can test if anything\r\n * changed in a nested structure by comparing the object's reference in\r\n * the old and new object, similar to how russian doll cache invalidation\r\n * works.\r\n *\r\n * In earlier versions of this function, which used cloneDeep, there were\r\n * issues whereby settings a nested value would mutate the parent\r\n * instead of creating a new object. `clone` avoids that bug making a\r\n * shallow copy of the objects along the update path\r\n * so no object is mutated in place.\r\n *\r\n * Before changing this function, please read through the following\r\n * discussions.\r\n *\r\n * @see https://github.com/developit/linkstate\r\n * @see https://github.com/jaredpalmer/formik/pull/123\r\n */\n\nfunction setIn(obj, path, value) {\n var res = clone(obj); // this keeps inheritance when obj is a class\n\n var resVal = res;\n var i = 0;\n var pathArray = toPath(path);\n\n for (; i < pathArray.length - 1; i++) {\n var currentPath = pathArray[i];\n var currentObj = getIn(obj, pathArray.slice(0, i + 1));\n\n if (currentObj && (isObject(currentObj) || Array.isArray(currentObj))) {\n resVal = resVal[currentPath] = clone(currentObj);\n } else {\n var nextPath = pathArray[i + 1];\n resVal = resVal[currentPath] = isInteger(nextPath) && Number(nextPath) >= 0 ? [] : {};\n }\n } // Return original object if new value is the same as current\n\n\n if ((i === 0 ? obj : resVal)[pathArray[i]] === value) {\n return obj;\n }\n\n if (value === undefined) {\n delete resVal[pathArray[i]];\n } else {\n resVal[pathArray[i]] = value;\n } // If the path array has a single element, the loop did not run.\n // Deleting on `resVal` had no effect in this scenario, so we delete on the result instead.\n\n\n if (i === 0 && value === undefined) {\n delete res[pathArray[i]];\n }\n\n return res;\n}\n/**\r\n * Recursively a set the same value for all keys and arrays nested object, cloning\r\n * @param object\r\n * @param value\r\n * @param visited\r\n * @param response\r\n */\n\nfunction setNestedObjectValues(object, value, visited, response) {\n if (visited === void 0) {\n visited = new WeakMap();\n }\n\n if (response === void 0) {\n response = {};\n }\n\n for (var _i = 0, _Object$keys = Object.keys(object); _i < _Object$keys.length; _i++) {\n var k = _Object$keys[_i];\n var val = object[k];\n\n if (isObject(val)) {\n if (!visited.get(val)) {\n visited.set(val, true); // In order to keep array values consistent for both dot path and\n // bracket syntax, we need to check if this is an array so that\n // this will output { friends: [true] } and not { friends: { \"0\": true } }\n\n response[k] = Array.isArray(val) ? [] : {};\n setNestedObjectValues(val, value, visited, response[k]);\n }\n } else {\n response[k] = value;\n }\n }\n\n return response;\n}\n\nvar FormikContext = /*#__PURE__*/createContext(undefined);\nFormikContext.displayName = 'FormikContext';\nvar FormikProvider = FormikContext.Provider;\nvar FormikConsumer = FormikContext.Consumer;\nfunction useFormikContext() {\n var formik = useContext(FormikContext);\n !!!formik ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"Formik context is undefined, please verify you are calling useFormikContext() as child of a component.\") : invariant(false) : void 0;\n return formik;\n}\n\nfunction formikReducer(state, msg) {\n switch (msg.type) {\n case 'SET_VALUES':\n return _extends({}, state, {\n values: msg.payload\n });\n\n case 'SET_TOUCHED':\n return _extends({}, state, {\n touched: msg.payload\n });\n\n case 'SET_ERRORS':\n if (isEqual(state.errors, msg.payload)) {\n return state;\n }\n\n return _extends({}, state, {\n errors: msg.payload\n });\n\n case 'SET_STATUS':\n return _extends({}, state, {\n status: msg.payload\n });\n\n case 'SET_ISSUBMITTING':\n return _extends({}, state, {\n isSubmitting: msg.payload\n });\n\n case 'SET_ISVALIDATING':\n return _extends({}, state, {\n isValidating: msg.payload\n });\n\n case 'SET_FIELD_VALUE':\n return _extends({}, state, {\n values: setIn(state.values, msg.payload.field, msg.payload.value)\n });\n\n case 'SET_FIELD_TOUCHED':\n return _extends({}, state, {\n touched: setIn(state.touched, msg.payload.field, msg.payload.value)\n });\n\n case 'SET_FIELD_ERROR':\n return _extends({}, state, {\n errors: setIn(state.errors, msg.payload.field, msg.payload.value)\n });\n\n case 'RESET_FORM':\n return _extends({}, state, msg.payload);\n\n case 'SET_FORMIK_STATE':\n return msg.payload(state);\n\n case 'SUBMIT_ATTEMPT':\n return _extends({}, state, {\n touched: setNestedObjectValues(state.values, true),\n isSubmitting: true,\n submitCount: state.submitCount + 1\n });\n\n case 'SUBMIT_FAILURE':\n return _extends({}, state, {\n isSubmitting: false\n });\n\n case 'SUBMIT_SUCCESS':\n return _extends({}, state, {\n isSubmitting: false\n });\n\n default:\n return state;\n }\n} // Initial empty states // objects\n\n\nvar emptyErrors = {};\nvar emptyTouched = {};\nfunction useFormik(_ref) {\n var _ref$validateOnChange = _ref.validateOnChange,\n validateOnChange = _ref$validateOnChange === void 0 ? true : _ref$validateOnChange,\n _ref$validateOnBlur = _ref.validateOnBlur,\n validateOnBlur = _ref$validateOnBlur === void 0 ? true : _ref$validateOnBlur,\n _ref$validateOnMount = _ref.validateOnMount,\n validateOnMount = _ref$validateOnMount === void 0 ? false : _ref$validateOnMount,\n isInitialValid = _ref.isInitialValid,\n _ref$enableReinitiali = _ref.enableReinitialize,\n enableReinitialize = _ref$enableReinitiali === void 0 ? false : _ref$enableReinitiali,\n onSubmit = _ref.onSubmit,\n rest = _objectWithoutPropertiesLoose(_ref, [\"validateOnChange\", \"validateOnBlur\", \"validateOnMount\", \"isInitialValid\", \"enableReinitialize\", \"onSubmit\"]);\n\n var props = _extends({\n validateOnChange: validateOnChange,\n validateOnBlur: validateOnBlur,\n validateOnMount: validateOnMount,\n onSubmit: onSubmit\n }, rest);\n\n var initialValues = useRef(props.initialValues);\n var initialErrors = useRef(props.initialErrors || emptyErrors);\n var initialTouched = useRef(props.initialTouched || emptyTouched);\n var initialStatus = useRef(props.initialStatus);\n var isMounted = useRef(false);\n var fieldRegistry = useRef({});\n\n if (process.env.NODE_ENV !== \"production\") {\n // eslint-disable-next-line react-hooks/rules-of-hooks\n useEffect(function () {\n !(typeof isInitialValid === 'undefined') ? process.env.NODE_ENV !== \"production\" ? invariant(false, 'isInitialValid has been deprecated and will be removed in future versions of Formik. Please use initialErrors or validateOnMount instead.') : invariant(false) : void 0; // eslint-disable-next-line\n }, []);\n }\n\n useEffect(function () {\n isMounted.current = true;\n return function () {\n isMounted.current = false;\n };\n }, []);\n\n var _React$useReducer = useReducer(formikReducer, {\n values: props.initialValues,\n errors: props.initialErrors || emptyErrors,\n touched: props.initialTouched || emptyTouched,\n status: props.initialStatus,\n isSubmitting: false,\n isValidating: false,\n submitCount: 0\n }),\n state = _React$useReducer[0],\n dispatch = _React$useReducer[1];\n\n var runValidateHandler = useCallback(function (values, field) {\n return new Promise(function (resolve, reject) {\n var maybePromisedErrors = props.validate(values, field);\n\n if (maybePromisedErrors == null) {\n // use loose null check here on purpose\n resolve(emptyErrors);\n } else if (isPromise(maybePromisedErrors)) {\n maybePromisedErrors.then(function (errors) {\n resolve(errors || emptyErrors);\n }, function (actualException) {\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\"Warning: An unhandled error was caught during validation in \", actualException);\n }\n\n reject(actualException);\n });\n } else {\n resolve(maybePromisedErrors);\n }\n });\n }, [props.validate]);\n /**\r\n * Run validation against a Yup schema and optionally run a function if successful\r\n */\n\n var runValidationSchema = useCallback(function (values, field) {\n var validationSchema = props.validationSchema;\n var schema = isFunction(validationSchema) ? validationSchema(field) : validationSchema;\n var promise = field && schema.validateAt ? schema.validateAt(field, values) : validateYupSchema(values, schema);\n return new Promise(function (resolve, reject) {\n promise.then(function () {\n resolve(emptyErrors);\n }, function (err) {\n // Yup will throw a validation error if validation fails. We catch those and\n // resolve them into Formik errors. We can sniff if something is a Yup error\n // by checking error.name.\n // @see https://github.com/jquense/yup#validationerrorerrors-string--arraystring-value-any-path-string\n if (err.name === 'ValidationError') {\n resolve(yupToFormErrors(err));\n } else {\n // We throw any other errors\n if (process.env.NODE_ENV !== 'production') {\n console.warn(\"Warning: An unhandled error was caught during validation in \", err);\n }\n\n reject(err);\n }\n });\n });\n }, [props.validationSchema]);\n var runSingleFieldLevelValidation = useCallback(function (field, value) {\n return new Promise(function (resolve) {\n return resolve(fieldRegistry.current[field].validate(value));\n });\n }, []);\n var runFieldLevelValidations = useCallback(function (values) {\n var fieldKeysWithValidation = Object.keys(fieldRegistry.current).filter(function (f) {\n return isFunction(fieldRegistry.current[f].validate);\n }); // Construct an array with all of the field validation functions\n\n var fieldValidations = fieldKeysWithValidation.length > 0 ? fieldKeysWithValidation.map(function (f) {\n return runSingleFieldLevelValidation(f, getIn(values, f));\n }) : [Promise.resolve('DO_NOT_DELETE_YOU_WILL_BE_FIRED')]; // use special case ;)\n\n return Promise.all(fieldValidations).then(function (fieldErrorsList) {\n return fieldErrorsList.reduce(function (prev, curr, index) {\n if (curr === 'DO_NOT_DELETE_YOU_WILL_BE_FIRED') {\n return prev;\n }\n\n if (curr) {\n prev = setIn(prev, fieldKeysWithValidation[index], curr);\n }\n\n return prev;\n }, {});\n });\n }, [runSingleFieldLevelValidation]); // Run all validations and return the result\n\n var runAllValidations = useCallback(function (values) {\n return Promise.all([runFieldLevelValidations(values), props.validationSchema ? runValidationSchema(values) : {}, props.validate ? runValidateHandler(values) : {}]).then(function (_ref2) {\n var fieldErrors = _ref2[0],\n schemaErrors = _ref2[1],\n validateErrors = _ref2[2];\n var combinedErrors = deepmerge.all([fieldErrors, schemaErrors, validateErrors], {\n arrayMerge: arrayMerge\n });\n return combinedErrors;\n });\n }, [props.validate, props.validationSchema, runFieldLevelValidations, runValidateHandler, runValidationSchema]); // Run all validations methods and update state accordingly\n\n var validateFormWithHighPriority = useEventCallback(function (values) {\n if (values === void 0) {\n values = state.values;\n }\n\n dispatch({\n type: 'SET_ISVALIDATING',\n payload: true\n });\n return runAllValidations(values).then(function (combinedErrors) {\n if (!!isMounted.current) {\n dispatch({\n type: 'SET_ISVALIDATING',\n payload: false\n });\n dispatch({\n type: 'SET_ERRORS',\n payload: combinedErrors\n });\n }\n\n return combinedErrors;\n });\n });\n useEffect(function () {\n if (validateOnMount && isMounted.current === true && isEqual(initialValues.current, props.initialValues)) {\n validateFormWithHighPriority(initialValues.current);\n }\n }, [validateOnMount, validateFormWithHighPriority]);\n var resetForm = useCallback(function (nextState) {\n var values = nextState && nextState.values ? nextState.values : initialValues.current;\n var errors = nextState && nextState.errors ? nextState.errors : initialErrors.current ? initialErrors.current : props.initialErrors || {};\n var touched = nextState && nextState.touched ? nextState.touched : initialTouched.current ? initialTouched.current : props.initialTouched || {};\n var status = nextState && nextState.status ? nextState.status : initialStatus.current ? initialStatus.current : props.initialStatus;\n initialValues.current = values;\n initialErrors.current = errors;\n initialTouched.current = touched;\n initialStatus.current = status;\n\n var dispatchFn = function dispatchFn() {\n dispatch({\n type: 'RESET_FORM',\n payload: {\n isSubmitting: !!nextState && !!nextState.isSubmitting,\n errors: errors,\n touched: touched,\n status: status,\n values: values,\n isValidating: !!nextState && !!nextState.isValidating,\n submitCount: !!nextState && !!nextState.submitCount && typeof nextState.submitCount === 'number' ? nextState.submitCount : 0\n }\n });\n };\n\n if (props.onReset) {\n var maybePromisedOnReset = props.onReset(state.values, imperativeMethods);\n\n if (isPromise(maybePromisedOnReset)) {\n maybePromisedOnReset.then(dispatchFn);\n } else {\n dispatchFn();\n }\n } else {\n dispatchFn();\n }\n }, [props.initialErrors, props.initialStatus, props.initialTouched]);\n useEffect(function () {\n if (isMounted.current === true && !isEqual(initialValues.current, props.initialValues)) {\n if (enableReinitialize) {\n initialValues.current = props.initialValues;\n resetForm();\n }\n\n if (validateOnMount) {\n validateFormWithHighPriority(initialValues.current);\n }\n }\n }, [enableReinitialize, props.initialValues, resetForm, validateOnMount, validateFormWithHighPriority]);\n useEffect(function () {\n if (enableReinitialize && isMounted.current === true && !isEqual(initialErrors.current, props.initialErrors)) {\n initialErrors.current = props.initialErrors || emptyErrors;\n dispatch({\n type: 'SET_ERRORS',\n payload: props.initialErrors || emptyErrors\n });\n }\n }, [enableReinitialize, props.initialErrors]);\n useEffect(function () {\n if (enableReinitialize && isMounted.current === true && !isEqual(initialTouched.current, props.initialTouched)) {\n initialTouched.current = props.initialTouched || emptyTouched;\n dispatch({\n type: 'SET_TOUCHED',\n payload: props.initialTouched || emptyTouched\n });\n }\n }, [enableReinitialize, props.initialTouched]);\n useEffect(function () {\n if (enableReinitialize && isMounted.current === true && !isEqual(initialStatus.current, props.initialStatus)) {\n initialStatus.current = props.initialStatus;\n dispatch({\n type: 'SET_STATUS',\n payload: props.initialStatus\n });\n }\n }, [enableReinitialize, props.initialStatus, props.initialTouched]);\n var validateField = useEventCallback(function (name) {\n // This will efficiently validate a single field by avoiding state\n // changes if the validation function is synchronous. It's different from\n // what is called when using validateForm.\n if (fieldRegistry.current[name] && isFunction(fieldRegistry.current[name].validate)) {\n var value = getIn(state.values, name);\n var maybePromise = fieldRegistry.current[name].validate(value);\n\n if (isPromise(maybePromise)) {\n // Only flip isValidating if the function is async.\n dispatch({\n type: 'SET_ISVALIDATING',\n payload: true\n });\n return maybePromise.then(function (x) {\n return x;\n }).then(function (error) {\n dispatch({\n type: 'SET_FIELD_ERROR',\n payload: {\n field: name,\n value: error\n }\n });\n dispatch({\n type: 'SET_ISVALIDATING',\n payload: false\n });\n });\n } else {\n dispatch({\n type: 'SET_FIELD_ERROR',\n payload: {\n field: name,\n value: maybePromise\n }\n });\n return Promise.resolve(maybePromise);\n }\n } else if (props.validationSchema) {\n dispatch({\n type: 'SET_ISVALIDATING',\n payload: true\n });\n return runValidationSchema(state.values, name).then(function (x) {\n return x;\n }).then(function (error) {\n dispatch({\n type: 'SET_FIELD_ERROR',\n payload: {\n field: name,\n value: error[name]\n }\n });\n dispatch({\n type: 'SET_ISVALIDATING',\n payload: false\n });\n });\n }\n\n return Promise.resolve();\n });\n var registerField = useCallback(function (name, _ref3) {\n var validate = _ref3.validate;\n fieldRegistry.current[name] = {\n validate: validate\n };\n }, []);\n var unregisterField = useCallback(function (name) {\n delete fieldRegistry.current[name];\n }, []);\n var setTouched = useEventCallback(function (touched, shouldValidate) {\n dispatch({\n type: 'SET_TOUCHED',\n payload: touched\n });\n var willValidate = shouldValidate === undefined ? validateOnBlur : shouldValidate;\n return willValidate ? validateFormWithHighPriority(state.values) : Promise.resolve();\n });\n var setErrors = useCallback(function (errors) {\n dispatch({\n type: 'SET_ERRORS',\n payload: errors\n });\n }, []);\n var setValues = useEventCallback(function (values, shouldValidate) {\n var resolvedValues = isFunction(values) ? values(state.values) : values;\n dispatch({\n type: 'SET_VALUES',\n payload: resolvedValues\n });\n var willValidate = shouldValidate === undefined ? validateOnChange : shouldValidate;\n return willValidate ? validateFormWithHighPriority(resolvedValues) : Promise.resolve();\n });\n var setFieldError = useCallback(function (field, value) {\n dispatch({\n type: 'SET_FIELD_ERROR',\n payload: {\n field: field,\n value: value\n }\n });\n }, []);\n var setFieldValue = useEventCallback(function (field, value, shouldValidate) {\n dispatch({\n type: 'SET_FIELD_VALUE',\n payload: {\n field: field,\n value: value\n }\n });\n var willValidate = shouldValidate === undefined ? validateOnChange : shouldValidate;\n return willValidate ? validateFormWithHighPriority(setIn(state.values, field, value)) : Promise.resolve();\n });\n var executeChange = useCallback(function (eventOrTextValue, maybePath) {\n // By default, assume that the first argument is a string. This allows us to use\n // handleChange with React Native and React Native Web's onChangeText prop which\n // provides just the value of the input.\n var field = maybePath;\n var val = eventOrTextValue;\n var parsed; // If the first argument is not a string though, it has to be a synthetic React Event (or a fake one),\n // so we handle like we would a normal HTML change event.\n\n if (!isString(eventOrTextValue)) {\n // If we can, persist the event\n // @see https://reactjs.org/docs/events.html#event-pooling\n if (eventOrTextValue.persist) {\n eventOrTextValue.persist();\n }\n\n var target = eventOrTextValue.target ? eventOrTextValue.target : eventOrTextValue.currentTarget;\n var type = target.type,\n name = target.name,\n id = target.id,\n value = target.value,\n checked = target.checked,\n outerHTML = target.outerHTML,\n options = target.options,\n multiple = target.multiple;\n field = maybePath ? maybePath : name ? name : id;\n\n if (!field && process.env.NODE_ENV !== \"production\") {\n warnAboutMissingIdentifier({\n htmlContent: outerHTML,\n documentationAnchorLink: 'handlechange-e-reactchangeeventany--void',\n handlerName: 'handleChange'\n });\n }\n\n val = /number|range/.test(type) ? (parsed = parseFloat(value), isNaN(parsed) ? '' : parsed) : /checkbox/.test(type) // checkboxes\n ? getValueForCheckbox(getIn(state.values, field), checked, value) : options && multiple //