@redsift/popovers 7.5.0 → 7.5.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (3) hide show
  1. package/index.js +20 -21
  2. package/index.js.map +1 -1
  3. package/package.json +5 -5
package/index.js CHANGED
@@ -1017,7 +1017,7 @@ const StyledButton = styled.button`
1017
1017
  color: ${$isDisabled ? 'var(--redsift-color-neutral-midgrey)' : `var(--redsift-color-${$color}-secondary)`};
1018
1018
  }
1019
1019
  ` : css`
1020
- background-color: ${$isDisabled ? 'var(--redsift-color-neutral-lightgrey)' : `var(--redsift-color-${$color}-secondary)`};
1020
+ background-color: ${$isActive ? `var(--redsift-color-${$color}-primary-active-hover)` : $isDisabled ? 'var(--redsift-color-neutral-lightgrey)' : `var(--redsift-color-${$color}-secondary)`};
1021
1021
  &,
1022
1022
  .redsift-icon {
1023
1023
  color: ${$isDisabled ? 'var(--redsift-color-neutral-midgrey)' : 'var(--redsift-color-neutral-white)'};
@@ -1085,7 +1085,8 @@ const DEFAULT_PROPS$d = {
1085
1085
  const IconButton = /*#__PURE__*/forwardRef((props, ref) => {
1086
1086
  const buttonRef = ref || useRef();
1087
1087
  const {
1088
- buttonProps
1088
+ buttonProps,
1089
+ isPressed
1089
1090
  } = useButton(_objectSpread2(_objectSpread2({}, props), {}, {
1090
1091
  isDisabled: props.isDisabled || props.disabled,
1091
1092
  preventFocusOnPress: true
@@ -1105,7 +1106,7 @@ const IconButton = /*#__PURE__*/forwardRef((props, ref) => {
1105
1106
  warnIfNoAccessibleLabelFound(props);
1106
1107
  return /*#__PURE__*/React.createElement(StyledIconButton, _extends({}, forwardedProps, buttonProps, {
1107
1108
  $color: isDisabled || disabled ? undefined : color,
1108
- $isActive: isActive,
1109
+ $isActive: isActive || isPressed,
1109
1110
  $isDisabled: isDisabled || disabled,
1110
1111
  $variant: variant,
1111
1112
  "aria-disabled": isDisabled || disabled,
@@ -1137,9 +1138,10 @@ const StyledDialogContent = styled.div`
1137
1138
  font-weight: var(--redsift-typography-dialog-font-weight);
1138
1139
  line-height: var(--redsift-typography-dialog-line-height);
1139
1140
  margin: 32px;
1140
- max-width: calc(100vw - 16px);
1141
+ max-width: calc(100vw - 48px);
1141
1142
  padding: 24px;
1142
1143
  width: 540px;
1144
+ z-index: var(--redsift-layout-z-index-dialog);
1143
1145
 
1144
1146
  ${_ref => {
1145
1147
  let {
@@ -1187,7 +1189,7 @@ const StyledFloatingOverlay = styled(FloatingOverlay)`
1187
1189
  background: rgba(0, 0, 0, 0.8);
1188
1190
  display: grid;
1189
1191
  place-items: center;
1190
- z-index: 1;
1192
+ z-index: var(--redsift-layout-z-index-overlay);
1191
1193
  `;
1192
1194
 
1193
1195
  /**
@@ -1784,21 +1786,19 @@ const PopoverPlacement = {
1784
1786
  */
1785
1787
  const StyledPopoverContent = styled.div`
1786
1788
  ${baseContainer}
1787
- max-width: calc(100vw - 16px);
1788
-
1789
- display: flex;
1790
1789
  align-items: center;
1791
1790
  background-color: var(--redsift-color-neutral-white);
1791
+ box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);
1792
1792
  color: var(--redsift-color-neutral-black);
1793
-
1793
+ display: flex;
1794
+ filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))
1795
+ drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));
1794
1796
  font-family: var(--redsift-typography-popover-font-family);
1795
1797
  font-size: var(--redsift-typography-popover-font-size);
1796
1798
  font-weight: var(--redsift-typography-popover-font-weight);
1797
1799
  line-height: var(--redsift-typography-popover-line-height);
1798
-
1799
- box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);
1800
- filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))
1801
- drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));
1800
+ max-width: calc(100vw - 48px);
1801
+ z-index: var(--redsift-layout-z-index-popover);
1802
1802
 
1803
1803
  &:focus-visible {
1804
1804
  outline: none;
@@ -1999,22 +1999,21 @@ const TooltipPlacement = {
1999
1999
  */
2000
2000
  const StyledTooltipContent = styled.div`
2001
2001
  ${baseContainer}
2002
- max-width: calc(100vw - 16px);
2003
2002
 
2004
- display: flex;
2005
2003
  align-items: center;
2006
- padding: 4px 8px;
2007
2004
  background-color: var(--redsift-color-neutral-white);
2005
+ box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);
2008
2006
  color: var(--redsift-color-neutral-black);
2009
-
2007
+ display: flex;
2008
+ filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))
2009
+ drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));
2010
2010
  font-family: var(--redsift-typography-tooltip-font-family);
2011
2011
  font-size: var(--redsift-typography-tooltip-font-size);
2012
2012
  font-weight: var(--redsift-typography-tooltip-font-weight);
2013
2013
  line-height: var(--redsift-typography-tooltip-line-height);
2014
-
2015
- box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);
2016
- filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))
2017
- drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));
2014
+ max-width: calc(100vw - 48px);
2015
+ padding: 4px 8px;
2016
+ z-index: var(--redsift-layout-z-index-tooltip);
2018
2017
 
2019
2018
  .redsift-tooltip-content__arrow {
2020
2019
  position: absolute;
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sources":["../src/components/dialog/context.ts","../src/components/dialog/types.ts","../../design-system/src/utils/isComponent.ts","../../design-system/src/utils/partitionComponents.ts","../../design-system/src/utils/warnIfNoAccessibleLabelFound.ts","../../../node_modules/@react-aria/ssr/dist/module.js","../../../node_modules/@internationalized/string/dist/module.js","../../../node_modules/@react-aria/i18n/dist/real-module.js","../src/components/dialog-content/intl/index.ts","../../design-system/src/components/icon-button/types.ts","../../design-system/src/types/colors.ts","../../design-system/src/components/icon/types.ts","../../design-system/src/components/shared/styles.ts","../../design-system/src/components/icon/styles.ts","../../design-system/src/components/icon/Icon.tsx","../../design-system/src/components/button/types.ts","../../design-system/src/components/button/styles.ts","../../design-system/src/components/icon-button/styles.ts","../../design-system/src/components/icon-button/IconButton.tsx","../src/components/dialog-content/styles.ts","../src/components/dialog-content-actions/styles.ts","../src/components/dialog-content-actions/DialogContentActions.tsx","../src/components/dialog-content-body/styles.ts","../../design-system/src/hooks/useBoundingRect.ts","../src/components/dialog-content-body/DialogContentBody.tsx","../../design-system/src/components/heading/styles.ts","../../design-system/src/components/heading/Heading.tsx","../src/components/dialog-content-header/styles.ts","../src/components/dialog-content-header/DialogContentHeader.tsx","../src/components/dialog-content/DialogContent.tsx","../src/components/dialog-trigger/DialogTrigger.tsx","../src/components/dialog/useDialog.tsx","../src/components/dialog/Dialog.tsx","../src/components/dialog/useDialogContext.tsx","../src/components/popover/context.ts","../src/components/popover/types.ts","../src/components/popover-content/styles.ts","../src/components/popover-content/PopoverContent.tsx","../src/components/popover-trigger/PopoverTrigger.tsx","../src/components/popover/usePopover.tsx","../src/components/popover/Popover.tsx","../src/components/popover/usePopoverContext.tsx","../src/components/tooltip/context.ts","../src/components/tooltip/types.ts","../src/components/tooltip-content/styles.ts","../src/components/tooltip-content/TooltipContent.tsx","../src/components/tooltip-trigger/TooltipTrigger.tsx","../src/components/tooltip/useTooltip.tsx","../src/components/tooltip/Tooltip.tsx","../src/components/tooltip/useTooltipContext.tsx"],"sourcesContent":["import React from 'react';\nimport { DialogState } from './types';\n\nexport const DialogContext = React.createContext<DialogState | null>(null);\n","import { Dispatch, ReactNode, SetStateAction } from 'react';\nimport { ValueOf } from '~/types';\nimport { useDialog } from './useDialog';\n\n/**\n * Context props.\n */\nexport type DialogState =\n | (ReturnType<typeof useDialog> & {\n setLabelId: Dispatch<SetStateAction<string | undefined>>;\n setDescriptionId: Dispatch<SetStateAction<string | undefined>>;\n })\n | null;\n\n/**\n * Component variant.\n */\nexport const DialogSize = {\n small: 'small',\n medium: 'medium',\n large: 'large',\n} as const;\nexport type DialogSize = ValueOf<typeof DialogSize>;\n\n/**\n * Component props.\n */\nexport interface DialogProps {\n /** Children. Can only be DialogTrigger and DialogContent. */\n children: ReactNode;\n /**\n * Default open status.\n * Used for uncontrolled version.\n */\n defaultOpen?: boolean;\n /** Whether the Close icon button is displayed or not. */\n hasCloseButton?: boolean;\n /** Which element to initially focus. Can be either a number (tabbable index), a ref to en element, or a shortcut pointing towards a section of the dialog. See the accessibility section in the documentation to know which one to use. */\n initialFocus?:\n | number\n | React.MutableRefObject<HTMLElement | null>\n | 'header'\n | 'body'\n | 'actions';\n /**\n * Whether the component is opened or not.\n * Used for controlled version.\n */\n isOpen?: boolean;\n /** Method to handle component change. */\n onOpen?: (open: boolean) => void;\n /** Dialog size. */\n size?: DialogSize;\n}\n\nexport type StyledDialogProps = DialogProps;\n","import React, { ReactNode, ReactElement } from 'react';\nimport { Comp } from '~/types';\n\n/**\n * Create a predicate function that checks if a ReactNode is a react element from the given component.\n *\n * @param component React function component or the component name\n * @return predicate returning true if value is instance of the component\n */\nexport const isComponent =\n <C>(component: Comp<C, any> | string) =>\n (instance: ReactNode): instance is ReactElement => {\n const componentName =\n typeof component === 'string' ? component : component.displayName;\n\n return (\n React.isValidElement(instance) &&\n (instance.type as Comp<any>).displayName === componentName\n );\n };\n","/**\n * Return components based on list of predicates.\n *\n * @param components Array of components\n * @param predicates Array of predicates\n * @return an array of arrays of components based on the given array of predicates\n */\nexport function partitionComponents<T>(\n components: T[],\n predicates: Array<(t: T) => boolean>\n): T[][] {\n const elements: T[][] = [...predicates.map(() => []), []];\n components.forEach((component) => {\n let found = false;\n predicates.forEach((predicate, index) => {\n if (predicate(component)) {\n elements[index].push(component);\n found = true;\n }\n });\n if (!found) {\n elements[elements.length - 1].push(component);\n }\n });\n return elements;\n}\n","import { ComponentProps, DependencyList } from 'react';\n\n/**\n * Display a warning if no label was found for screen readers and assistive technologies.\n *\n * @param props Component props containing the aria-label and aria-labelledby params to check for.\n * @param additionalKeysToCheck Additional props to check that can act as a label for screen readers (i.e. children).\n */\nexport const warnIfNoAccessibleLabelFound = (\n props: ComponentProps<keyof JSX.IntrinsicElements>,\n additionalKeysToCheck?: DependencyList\n): void => {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby } = props;\n\n const hasText =\n additionalKeysToCheck &&\n additionalKeysToCheck.filter((key) => !!key).length > 0;\n const hasAriaLabel = Boolean(ariaLabel || ariaLabelledby);\n\n if (!hasAriaLabel && !hasText) {\n console.warn('You must provide a label for accessibility');\n }\n};\n","import $89yE2$react, {useContext as $89yE2$useContext, useMemo as $89yE2$useMemo, useState as $89yE2$useState, useLayoutEffect as $89yE2$useLayoutEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We must avoid a circular dependency with @react-aria/utils, and this useLayoutEffect is\n// guarded by a check that it only runs on the client side.\n// eslint-disable-next-line rulesdir/useLayoutEffectRule\n\n// Default context value to use in case there is no SSRProvider. This is fine for\n// client-only apps. In order to support multiple copies of React Aria potentially\n// being on the page at once, the prefix is set to a random number. SSRProvider\n// will reset this to zero for consistency between server and client, so in the\n// SSR case multiple copies of React Aria is not supported.\nconst $704cf1d3b684cc5c$var$defaultContext = {\n prefix: String(Math.round(Math.random() * 10000000000)),\n current: 0\n};\nconst $704cf1d3b684cc5c$var$SSRContext = /*#__PURE__*/ (0, $89yE2$react).createContext($704cf1d3b684cc5c$var$defaultContext);\nfunction $704cf1d3b684cc5c$export$9f8ac96af4b1b2ae(props) {\n let cur = (0, $89yE2$useContext)($704cf1d3b684cc5c$var$SSRContext);\n let value = (0, $89yE2$useMemo)(()=>({\n // If this is the first SSRProvider, start with an empty string prefix, otherwise\n // append and increment the counter.\n prefix: cur === $704cf1d3b684cc5c$var$defaultContext ? \"\" : `${cur.prefix}-${++cur.current}`,\n current: 0\n }), [\n cur\n ]);\n return /*#__PURE__*/ (0, $89yE2$react).createElement($704cf1d3b684cc5c$var$SSRContext.Provider, {\n value: value\n }, props.children);\n}\nlet $704cf1d3b684cc5c$var$canUseDOM = Boolean(typeof window !== \"undefined\" && window.document && window.document.createElement);\nfunction $704cf1d3b684cc5c$export$619500959fc48b26(defaultId) {\n let ctx = (0, $89yE2$useContext)($704cf1d3b684cc5c$var$SSRContext);\n // If we are rendering in a non-DOM environment, and there's no SSRProvider,\n // provide a warning to hint to the developer to add one.\n if (ctx === $704cf1d3b684cc5c$var$defaultContext && !$704cf1d3b684cc5c$var$canUseDOM) console.warn(\"When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.\");\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return (0, $89yE2$useMemo)(()=>defaultId || `react-aria${ctx.prefix}-${++ctx.current}`, [\n defaultId\n ]);\n}\nfunction $704cf1d3b684cc5c$export$535bd6ca7f90a273() {\n let cur = (0, $89yE2$useContext)($704cf1d3b684cc5c$var$SSRContext);\n let isInSSRContext = cur !== $704cf1d3b684cc5c$var$defaultContext;\n let [isSSR, setIsSSR] = (0, $89yE2$useState)(isInSSRContext);\n // If on the client, and the component was initially server rendered,\n // then schedule a layout effect to update the component after hydration.\n if (typeof window !== \"undefined\" && isInSSRContext) // This if statement technically breaks the rules of hooks, but is safe\n // because the condition never changes after mounting.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n (0, $89yE2$useLayoutEffect)(()=>{\n setIsSSR(false);\n }, []);\n return isSSR;\n}\n\n\n\n\nexport {$704cf1d3b684cc5c$export$9f8ac96af4b1b2ae as SSRProvider, $704cf1d3b684cc5c$export$619500959fc48b26 as useSSRSafeId, $704cf1d3b684cc5c$export$535bd6ca7f90a273 as useIsSSR};\n//# sourceMappingURL=module.js.map\n","/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $5b160d28a433310d$export$c17fa47878dc55b6 {\n /** Returns a localized string for the given key and locale. */ getStringForLocale(key, locale) {\n let strings = this.strings[locale];\n if (!strings) {\n strings = $5b160d28a433310d$var$getStringsForLocale(locale, this.strings, this.defaultLocale);\n this.strings[locale] = strings;\n }\n let string = strings[key];\n if (!string) throw new Error(`Could not find intl message ${key} in ${locale} locale`);\n return string;\n }\n constructor(messages, defaultLocale = \"en-US\"){\n // Clone messages so we don't modify the original object.\n this.strings = {\n ...messages\n };\n this.defaultLocale = defaultLocale;\n }\n}\nfunction $5b160d28a433310d$var$getStringsForLocale(locale, strings, defaultLocale = \"en-US\") {\n // If there is an exact match, use it.\n if (strings[locale]) return strings[locale];\n // Attempt to find the closest match by language.\n // For example, if the locale is fr-CA (French Canadian), but there is only\n // an fr-FR (France) set of strings, use that.\n // This could be replaced with Intl.LocaleMatcher once it is supported.\n // https://github.com/tc39/proposal-intl-localematcher\n let language = $5b160d28a433310d$var$getLanguage(locale);\n if (strings[language]) return strings[language];\n for(let key in strings){\n if (key.startsWith(language + \"-\")) return strings[key];\n }\n // Nothing close, use english.\n return strings[defaultLocale];\n}\nfunction $5b160d28a433310d$var$getLanguage(locale) {\n // @ts-ignore\n if (Intl.Locale) // @ts-ignore\n return new Intl.Locale(locale).language;\n return locale.split(\"-\")[0];\n}\n\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $6db58dc88e78b024$var$pluralRulesCache = new Map();\nconst $6db58dc88e78b024$var$numberFormatCache = new Map();\nclass $6db58dc88e78b024$export$2f817fcdc4b89ae0 {\n /** Formats a localized string for the given key with the provided variables. */ format(key, variables) {\n let message = this.strings.getStringForLocale(key, this.locale);\n return typeof message === \"function\" ? message(variables, this) : message;\n }\n plural(count, options, type = \"cardinal\") {\n let opt = options[\"=\" + count];\n if (opt) return typeof opt === \"function\" ? opt() : opt;\n let key = this.locale + \":\" + type;\n let pluralRules = $6db58dc88e78b024$var$pluralRulesCache.get(key);\n if (!pluralRules) {\n pluralRules = new Intl.PluralRules(this.locale, {\n type: type\n });\n $6db58dc88e78b024$var$pluralRulesCache.set(key, pluralRules);\n }\n let selected = pluralRules.select(count);\n opt = options[selected] || options.other;\n return typeof opt === \"function\" ? opt() : opt;\n }\n number(value) {\n let numberFormat = $6db58dc88e78b024$var$numberFormatCache.get(this.locale);\n if (!numberFormat) {\n numberFormat = new Intl.NumberFormat(this.locale);\n $6db58dc88e78b024$var$numberFormatCache.set(this.locale, numberFormat);\n }\n return numberFormat.format(value);\n }\n select(options, value) {\n let opt = options[value] || options.other;\n return typeof opt === \"function\" ? opt() : opt;\n }\n constructor(locale, strings){\n this.locale = locale;\n this.strings = strings;\n }\n}\n\n\n\n\nexport {$5b160d28a433310d$export$c17fa47878dc55b6 as LocalizedStringDictionary, $6db58dc88e78b024$export$2f817fcdc4b89ae0 as LocalizedStringFormatter};\n//# sourceMappingURL=module.js.map\n","import $iFADg$react, {useContext as $iFADg$useContext, useState as $iFADg$useState, useEffect as $iFADg$useEffect, useMemo as $iFADg$useMemo, useRef as $iFADg$useRef} from \"react\";\nimport {useIsSSR as $iFADg$useIsSSR} from \"@react-aria/ssr\";\nimport {LocalizedStringDictionary as $iFADg$LocalizedStringDictionary, LocalizedStringFormatter as $iFADg$LocalizedStringFormatter} from \"@internationalized/string\";\nimport {DateFormatter as $iFADg$DateFormatter} from \"@internationalized/date\";\nimport {NumberFormatter as $iFADg$NumberFormatter} from \"@internationalized/number\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // https://en.wikipedia.org/wiki/Right-to-left\nconst $148a7a147e38ea7f$var$RTL_SCRIPTS = new Set([\n \"Arab\",\n \"Syrc\",\n \"Samr\",\n \"Mand\",\n \"Thaa\",\n \"Mend\",\n \"Nkoo\",\n \"Adlm\",\n \"Rohg\",\n \"Hebr\"\n]);\nconst $148a7a147e38ea7f$var$RTL_LANGS = new Set([\n \"ae\",\n \"ar\",\n \"arc\",\n \"bcc\",\n \"bqi\",\n \"ckb\",\n \"dv\",\n \"fa\",\n \"glk\",\n \"he\",\n \"ku\",\n \"mzn\",\n \"nqo\",\n \"pnb\",\n \"ps\",\n \"sd\",\n \"ug\",\n \"ur\",\n \"yi\"\n]);\nfunction $148a7a147e38ea7f$export$702d680b21cbd764(locale) {\n // If the Intl.Locale API is available, use it to get the script for the locale.\n // This is more accurate than guessing by language, since languages can be written in multiple scripts.\n // @ts-ignore\n if (Intl.Locale) {\n // @ts-ignore\n let script = new Intl.Locale(locale).maximize().script;\n return $148a7a147e38ea7f$var$RTL_SCRIPTS.has(script);\n }\n // If not, just guess by the language (first part of the locale)\n let lang = locale.split(\"-\")[0];\n return $148a7a147e38ea7f$var$RTL_LANGS.has(lang);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $1e5a04cdaf7d1af8$export$f09106e7c6677ec5() {\n // @ts-ignore\n let locale = typeof navigator !== \"undefined\" && (navigator.language || navigator.userLanguage) || \"en-US\";\n try {\n // @ts-ignore\n Intl.DateTimeFormat.supportedLocalesOf([\n locale\n ]);\n } catch (_err) {\n locale = \"en-US\";\n }\n return {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? \"rtl\" : \"ltr\"\n };\n}\nlet $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\nlet $1e5a04cdaf7d1af8$var$listeners = new Set();\nfunction $1e5a04cdaf7d1af8$var$updateLocale() {\n $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\n for (let listener of $1e5a04cdaf7d1af8$var$listeners)listener($1e5a04cdaf7d1af8$var$currentLocale);\n}\nfunction $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a() {\n let isSSR = (0, $iFADg$useIsSSR)();\n let [defaultLocale, setDefaultLocale] = (0, $iFADg$useState)($1e5a04cdaf7d1af8$var$currentLocale);\n (0, $iFADg$useEffect)(()=>{\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.addEventListener(\"languagechange\", $1e5a04cdaf7d1af8$var$updateLocale);\n $1e5a04cdaf7d1af8$var$listeners.add(setDefaultLocale);\n return ()=>{\n $1e5a04cdaf7d1af8$var$listeners.delete(setDefaultLocale);\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.removeEventListener(\"languagechange\", $1e5a04cdaf7d1af8$var$updateLocale);\n };\n }, []);\n // We cannot determine the browser's language on the server, so default to\n // en-US. This will be updated after hydration on the client to the correct value.\n if (isSSR) return {\n locale: \"en-US\",\n direction: \"ltr\"\n };\n return defaultLocale;\n}\n\n\n\nconst $18f2051aff69b9bf$var$I18nContext = /*#__PURE__*/ (0, $iFADg$react).createContext(null);\nfunction $18f2051aff69b9bf$export$a54013f0d02a8f82(props) {\n let { locale: locale , children: children } = props;\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let value = locale ? {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? \"rtl\" : \"ltr\"\n } : defaultLocale;\n return /*#__PURE__*/ (0, $iFADg$react).createElement($18f2051aff69b9bf$var$I18nContext.Provider, {\n value: value\n }, children);\n}\nfunction $18f2051aff69b9bf$export$43bb16f9c6d9e3f7() {\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let context = (0, $iFADg$useContext)($18f2051aff69b9bf$var$I18nContext);\n return context || defaultLocale;\n}\n\n\nvar $2aa2084a6c2b6b4f$exports = {};\n\"use strict\";\n\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $fca6afa0e843324b$var$cache = new WeakMap();\nfunction $fca6afa0e843324b$var$getCachedDictionary(strings) {\n let dictionary = $fca6afa0e843324b$var$cache.get(strings);\n if (!dictionary) {\n dictionary = new (0, $iFADg$LocalizedStringDictionary)(strings);\n $fca6afa0e843324b$var$cache.set(strings, dictionary);\n }\n return dictionary;\n}\nfunction $fca6afa0e843324b$export$f12b703ca79dfbb1(strings) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let dictionary = (0, $iFADg$useMemo)(()=>$fca6afa0e843324b$var$getCachedDictionary(strings), [\n strings\n ]);\n return (0, $iFADg$useMemo)(()=>new (0, $iFADg$LocalizedStringFormatter)(locale, dictionary), [\n locale,\n dictionary\n ]);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $33bf17300c498528$export$a2f47a3d2973640(options = {}) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n // @ts-ignore\n return (0, $iFADg$useMemo)(()=>new Intl.ListFormat(locale, options), [\n locale,\n options\n ]);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $896ba0a80a8f4d36$export$85fd5fdf27bacc79(options) {\n // Reuse last options object if it is shallowly equal, which allows the useMemo result to also be reused.\n let lastOptions = (0, $iFADg$useRef)(null);\n if (options && lastOptions.current && $896ba0a80a8f4d36$var$isEqual(options, lastOptions.current)) options = lastOptions.current;\n lastOptions.current = options;\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n return (0, $iFADg$useMemo)(()=>new (0, $iFADg$DateFormatter)(locale, options), [\n locale,\n options\n ]);\n}\nfunction $896ba0a80a8f4d36$var$isEqual(a, b) {\n if (a === b) return true;\n let aKeys = Object.keys(a);\n let bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) return false;\n for (let key of aKeys){\n if (b[key] !== a[key]) return false;\n }\n return true;\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $a916eb452884faea$export$b7a616150fdb9f44(options = {}) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n return (0, $iFADg$useMemo)(()=>new (0, $iFADg$NumberFormatter)(locale, options), [\n locale,\n options\n ]);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nlet $325a3faab7a68acd$var$cache = new Map();\nfunction $325a3faab7a68acd$export$a16aca283550c30d(options) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b)=>a[0] < b[0] ? -1 : 1).join() : \"\");\n if ($325a3faab7a68acd$var$cache.has(cacheKey)) return $325a3faab7a68acd$var$cache.get(cacheKey);\n let formatter = new Intl.Collator(locale, options);\n $325a3faab7a68acd$var$cache.set(cacheKey, formatter);\n return formatter;\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $bb77f239b46e8c72$export$3274cf84b703fff(options) {\n let collator = (0, $325a3faab7a68acd$export$a16aca283550c30d)({\n usage: \"search\",\n ...options\n });\n // TODO(later): these methods don't currently support the ignorePunctuation option.\n return {\n startsWith (string, substring) {\n if (substring.length === 0) return true;\n // Normalize both strings so we can slice safely\n // TODO: take into account the ignorePunctuation option as well...\n string = string.normalize(\"NFC\");\n substring = substring.normalize(\"NFC\");\n return collator.compare(string.slice(0, substring.length), substring) === 0;\n },\n endsWith (string, substring) {\n if (substring.length === 0) return true;\n string = string.normalize(\"NFC\");\n substring = substring.normalize(\"NFC\");\n return collator.compare(string.slice(-substring.length), substring) === 0;\n },\n contains (string, substring) {\n if (substring.length === 0) return true;\n string = string.normalize(\"NFC\");\n substring = substring.normalize(\"NFC\");\n let scan = 0;\n let sliceLen = substring.length;\n for(; scan + sliceLen <= string.length; scan++){\n let slice = string.slice(scan, scan + sliceLen);\n if (collator.compare(substring, slice) === 0) return true;\n }\n return false;\n }\n };\n}\n\n\n\n\nexport {$18f2051aff69b9bf$export$a54013f0d02a8f82 as I18nProvider, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 as useLocale, $fca6afa0e843324b$export$f12b703ca79dfbb1 as useLocalizedStringFormatter, $33bf17300c498528$export$a2f47a3d2973640 as useListFormatter, $896ba0a80a8f4d36$export$85fd5fdf27bacc79 as useDateFormatter, $a916eb452884faea$export$b7a616150fdb9f44 as useNumberFormatter, $325a3faab7a68acd$export$a16aca283550c30d as useCollator, $bb77f239b46e8c72$export$3274cf84b703fff as useFilter};\n//# sourceMappingURL=real-module.js.map\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const IconButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type IconButtonVariant = ValueOf<typeof IconButtonVariant>;\n\n/**\n * Component color.\n */\nexport type IconButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface IconButtonProps\n extends ComponentProps<'button'>,\n StylingProps {\n /** Color variant. */\n color?: IconButtonColor;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /** Button variant. */\n variant?: IconButtonVariant;\n}\n\nexport type StyledIconButtonProps = Omit<\n IconButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'icon'\n> & {\n $color: IconButtonProps['color'];\n $isActive: IconButtonProps['isActive'];\n $isDisabled: IconButtonProps['isDisabled'];\n $variant: IconButtonProps['variant'];\n};\n","import { ValueOf } from './helpers';\n\n/**\n * Color palette.\n */\nexport const ColorPalette = {\n default: 'default',\n success: 'success',\n error: 'error',\n warning: 'warning',\n info: 'info',\n question: 'question',\n 'no-data': 'no-data',\n} as const;\nexport type ColorPalette = ValueOf<typeof ColorPalette>;\n\nexport const ProductColorPalette = {\n website: 'website',\n ondmarc: 'ondmarc',\n oninbox: 'oninbox',\n ondomain: 'ondomain',\n hardenize: 'hardenize',\n tools: 'tools',\n} as const;\nexport type ProductColorPalette = ValueOf<typeof ProductColorPalette>;\n\nexport const DataVizColorPalette = {\n purple: 'purple',\n blue: 'blue',\n green: 'green',\n red: 'red',\n pink: 'pink',\n cyan: 'cyan',\n orange: 'orange',\n yellow: 'yellow',\n brown: 'brown',\n grey: 'grey',\n} as const;\nexport type DataVizColorPalette = ValueOf<typeof DataVizColorPalette>;\n\nexport const NeutralColorPalette = {\n black: 'black',\n darkgrey: 'darkgrey',\n midgrey: 'midgrey',\n lightgrey: 'lightgrey',\n xlightgrey: 'xlightgrey',\n white: 'white',\n} as const;\nexport type NeutralColorPalette = ValueOf<typeof NeutralColorPalette>;\n","import { ComponentProps, ReactElement } from 'react';\nimport {\n ColorPalette,\n LayoutProps,\n PositioningProps,\n ProductColorPalette,\n SpacingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component size.\n */\nexport const IconSize = {\n xsmall: 'xsmall',\n small: 'small',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge',\n} as const;\nexport type IconSize = ValueOf<typeof IconSize>;\n\n/**\n * Component props.\n */\nexport interface IconProps\n extends ComponentProps<'span'>,\n LayoutProps,\n SpacingProps,\n PositioningProps {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Icon. */\n 'aria-label'?: string;\n /** Color variant. Either from color palette or hex or rgb strings. */\n color?: ColorPalette | ProductColorPalette | string;\n /** Whether the icon has a badge attached to it. */\n badge?: ReactElement;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Icon size. */\n size?: IconSize;\n /** Additional properties to forward to the SVG tag. */\n svgProps?: ComponentProps<'svg'>;\n}\n\nexport type StyledIconProps = Omit<\n IconProps,\n 'color' | 'size' | 'icon' | 'svgProps'\n> & {\n $color: IconProps['color'];\n $size: IconProps['size'];\n};\n","import { css } from 'styled-components';\nimport {\n LayoutProps,\n SpacingProps,\n SizingProps,\n PositioningProps,\n FlexLayoutProps,\n GridLayoutProps,\n StylingProps,\n ContainerProps,\n InternalSpacingProps,\n} from '~/types';\n\nexport const baseLayout = css<LayoutProps>`\n ${({\n flex,\n flexGrow,\n flexShrink,\n flexBasis,\n alignSelf,\n justifySelf,\n order,\n gridArea,\n gridColumn,\n gridRow,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n }) =>\n css`\n ${flex ? `flex: ${flex};` : ''}\n ${flexGrow ? `flex-grow: ${flexGrow};` : ''}\n ${flexShrink ? `flex-shrink: ${flexShrink};` : ''}\n ${flexBasis ? `flex-basis: ${flexBasis};` : ''}\n ${alignSelf ? `align-self: ${alignSelf};` : ''}\n ${justifySelf ? `justify-self: ${justifySelf};` : ''}\n ${order ? `order: ${order};` : ''}\n ${gridArea ? `grid-area: ${gridArea};` : ''}\n ${gridColumn ? `grid-column: ${gridColumn};` : ''}\n ${gridRow ? `grid-row: ${gridRow};` : ''}\n ${gridColumnStart ? `grid-column-start: ${gridColumnStart};` : ''}\n ${gridColumnEnd ? `grid-column-end: ${gridColumnEnd};` : ''}\n ${gridRowStart ? `grid-row-start: ${gridRowStart};` : ''}\n ${gridRowEnd ? `grid-row-end: ${gridRowEnd};` : ''}\n `}\n`;\n\nexport const baseSpacing = css<SpacingProps>`\n ${({ margin, marginBottom, marginLeft, marginRight, marginTop }) =>\n css`\n ${margin ? `margin: ${margin};` : ''}\n ${marginBottom ? `margin-bottom: ${marginBottom};` : ''}\n ${marginLeft ? `margin-left: ${marginLeft};` : ''}\n ${marginRight ? `margin-right: ${marginRight};` : ''}\n ${marginTop ? `margin-top: ${marginTop};` : ''}\n `}\n`;\n\nexport const baseInternalSpacing = css<InternalSpacingProps>`\n ${({ padding, paddingBottom, paddingLeft, paddingRight, paddingTop }) =>\n css`\n ${padding ? `padding: ${padding};` : ''}\n ${paddingBottom ? `padding-bottom: ${paddingBottom};` : ''}\n ${paddingLeft ? `padding-left: ${paddingLeft};` : ''}\n ${paddingRight ? `padding-right: ${paddingRight};` : ''}\n ${paddingTop ? `padding-top: ${paddingTop};` : ''}\n `}\n`;\n\nexport const baseSizing = css<SizingProps>`\n ${({ height, maxHeight, maxWidth, minHeight, minWidth, width }) =>\n css`\n ${height\n ? `height: ${typeof height === 'number' ? `${height}px` : height};`\n : ''}\n ${maxHeight ? `max-height: ${maxHeight};` : ''}\n ${maxWidth ? `max-width: ${maxWidth};` : ''}\n ${minHeight ? `min-height: ${minHeight};` : ''}\n ${minWidth ? `min-width: ${minWidth};` : ''}\n ${width\n ? `width: ${typeof width === 'number' ? `${width}px` : width};`\n : ''}\n `}\n`;\n\nexport const basePositioning = css<PositioningProps>`\n ${({ position, top, bottom, left, right, zIndex }) =>\n css`\n ${position ? `position: ${position};` : ''}\n ${top ? `top: ${top};` : ''}\n ${bottom ? `bottom: ${bottom};` : ''}\n ${left ? `left: ${left};` : ''}\n ${right ? `right: ${right};` : ''}\n ${zIndex ? `z-index: ${zIndex};` : ''}\n `}\n`;\n\nexport const baseFlexbox = css<FlexLayoutProps>`\n ${({\n alignContent,\n alignItems,\n flexDirection,\n flexWrap,\n gap,\n justifyContent,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${flexDirection ? `flex-direction: ${flexDirection};` : ''}\n ${flexWrap ? `flex-wrap: ${flexWrap};` : ''}\n gap: ${gap};\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n `}\n`;\n\nexport const baseGrid = css<GridLayoutProps>`\n ${({\n alignContent,\n alignItems,\n gap,\n gridAutoColumns,\n gridAutoRows,\n gridTemplateAreas,\n gridTemplateColumns,\n gridTemplateRows,\n justifyContent,\n justifyItems,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${gap ? `gap: ${gap};` : ''}\n ${gridAutoColumns ? `grid-auto-columns: ${gridAutoColumns};` : ''}\n ${gridAutoRows ? `grid-auto-rows: ${gridAutoRows};` : ''}\n ${gridTemplateAreas ? `grid-template-areas: ${gridTemplateAreas};` : ''}\n ${gridTemplateColumns\n ? `grid-template-columns: ${gridTemplateColumns};`\n : ''}\n ${gridTemplateRows ? `grid-template-rows: ${gridTemplateRows};` : ''}\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n ${justifyItems ? `justify-items: ${justifyItems};` : ''}\n `}\n`;\n\nexport const baseStyling = css<StylingProps>`\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n color: var(--redsift-color-neutral-black);\n\n ${baseLayout}\n ${baseSpacing}\n ${baseSizing}\n ${basePositioning}\n`;\n\nexport const baseContainer = css<ContainerProps>`\n ${({ display }) => (display ? `display: ${display};` : '')}\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n color: var(--redsift-color-neutral-black);\n\n ${baseInternalSpacing}\n ${baseFlexbox}\n ${baseGrid}\n`;\n","import styled, { css } from 'styled-components';\nimport { ColorPalette, ProductColorPalette } from '~/types';\nimport { baseStyling } from '~/components/shared';\nimport { StyledIconProps, IconSize } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIcon = styled.span<StyledIconProps>`\n position: relative;\n ${baseStyling}\n\n font-style: normal;\n\n svg {\n vertical-align: -0.125em;\n }\n\n ${({ $color }) =>\n $color &&\n [...Object.keys(ColorPalette), ...Object.keys(ProductColorPalette)].indexOf(\n $color\n ) !== -1\n ? css`\n color: var(--redsift-color-${$color}-primary);\n `\n : css`\n color: ${$color || css`var(--redsift-color-neutral-darkgrey)`};\n `}\n\n ${({ $size }) => {\n switch ($size) {\n case IconSize.xlarge:\n return css`\n font-size: 40px;\n height: 40px;\n line-height: 40px;\n width: 40px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -2px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 6px;\n }\n `;\n case IconSize.large:\n return css`\n font-size: 28px;\n height: 28px;\n line-height: 28px;\n width: 28px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -4px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 2px;\n }\n `;\n case IconSize.small:\n return css`\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n width: 20px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -8px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n case IconSize.xsmall:\n return css`\n font-size: 16px;\n height: 16px;\n line-height: 16px;\n width: 16px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -12px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: -1px;\n }\n `;\n case IconSize.medium:\n default:\n return css`\n font-size: 24px;\n height: 24px;\n line-height: 24px;\n width: 24px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -5px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledIcon } from './styles';\nimport { IconProps, IconSize } from './types';\n\nconst COMPONENT_NAME = 'Icon';\nconst CLASSNAME = 'redsift-icon';\nconst DEFAULT_PROPS: Partial<IconProps> = {\n size: IconSize.medium,\n};\n\n/**\n * The Icon component.\n */\nexport const Icon: Comp<IconProps, HTMLSpanElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n badge,\n className,\n color,\n icon,\n size,\n svgProps,\n ...forwardedProps\n } = props;\n\n return (\n <StyledIcon\n {...forwardedProps}\n $color={color}\n $size={size}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Icon.className, className)}\n ref={ref as RefObject<HTMLSpanElement>}\n >\n <svg\n {...svgProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n focusable=\"false\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n role=\"img\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n >\n <path d={icon} fill=\"currentColor\" />\n </svg>\n {badge ? badge : null}\n </StyledIcon>\n );\n }\n);\nIcon.className = CLASSNAME;\nIcon.defaultProps = DEFAULT_PROPS;\nIcon.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const ButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type ButtonVariant = ValueOf<typeof ButtonVariant>;\n\n/**\n * Component color.\n */\nexport type ButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface ButtonProps extends ComponentProps<'button'>, StylingProps {\n /** Color variant. The product colors are available but should only be used to display the Button in the color of another product. To display a Button with a color of the current product, use `default`. */\n color?: ButtonColor;\n /** Whether the component take the full width or not. */\n fullWidth?: boolean;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is in a loading state or not. */\n isLoading?: boolean;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n leftIcon?: string;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n rightIcon?: string;\n /** Button variant. */\n variant?: ButtonVariant;\n}\n\nexport type StyledButtonProps = Omit<\n ButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'size' | 'fullWidth'\n> & {\n $color: ButtonProps['color'];\n $fullWidth?: ButtonProps['fullWidth'];\n $isActive: ButtonProps['isActive'];\n $isDisabled: ButtonProps['isDisabled'];\n $variant: ButtonProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledButtonProps, ButtonVariant } from './types';\n\n/**\n * Component style.\n */\nexport const StyledButton = styled.button<StyledButtonProps>`\n ${baseStyling}\n\n align-items: center;\n background: none;\n border: none;\n display: flex;\n font-family: var(--redsift-typography-button-font-family);\n font-size: var(--redsift-typography-button-font-size);\n font-weight: var(--redsift-typography-button-font-weight);\n gap: 8px;\n justify-content: center;\n line-height: var(--redsift-typography-button-line-height);\n text-decoration: none;\n text-transform: var(--redsift-typography-button-text-transform);\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n padding: ${$variant === ButtonVariant.secondary ? '7px 15px' : '8px 16px'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : 'var(--redsift-color-neutral-white)'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'none'\n : 'none'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-primary-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : ''}\n `};\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n cursor: ${$isDisabled ? 'default' : 'pointer'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'none'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : css`\n background-color: ${$isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : `\n border: none;\n `}\n `};\n }\n\n ${({ $fullWidth }) =>\n $fullWidth\n ? `\n width: 100%;\n flex-grow: 1;\n\n .redsift-icon.left {\n margin-right: unset;\n }\n\n .redsift-icon.right {\n margin-left: unset;\n }\n `\n : ''}\n`;\n","import styled, { css } from 'styled-components';\nimport { StyledButton } from '~/components/button';\nimport { IconButtonVariant, StyledIconButtonProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIconButton = styled(StyledButton)<StyledIconButtonProps>`\n ${({ $variant }) => css`\n padding: ${$variant === IconButtonVariant.secondary ? '7px' : '8px'};\n `};\n`;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledIconButton } from './styles';\nimport { IconButtonProps, IconButtonVariant } from './types';\n\nconst COMPONENT_NAME = 'IconButton';\nconst CLASSNAME = 'redsift-icon-button';\nconst DEFAULT_PROPS: Partial<IconButtonProps> = {\n color: ColorPalette.default,\n height: 'fit-content',\n variant: IconButtonVariant.unstyled,\n};\n\n/**\n * The Icon Button is a component that contains only one icon as a child, without text.\n *\n * This component should use aria-label, aria-labelledby or aria-describedby to make this\n * component usable with a screen reader.\n */\nexport const IconButton: Comp<IconButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps } = useButton(\n {\n ...props,\n isDisabled: props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n className,\n color,\n disabled,\n icon,\n isActive,\n isDisabled,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n variant,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n return (\n <StyledIconButton\n {...forwardedProps}\n {...buttonProps}\n $color={isDisabled || disabled ? undefined : color}\n $isActive={isActive}\n $isDisabled={isDisabled || disabled}\n $variant={variant}\n aria-disabled={isDisabled || disabled}\n className={classNames(IconButton.className, className)}\n disabled={isDisabled || disabled}\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n <Icon icon={icon} color={isDisabled || disabled ? undefined : color} />\n </StyledIconButton>\n );\n }\n);\nIconButton.className = CLASSNAME;\nIconButton.defaultProps = DEFAULT_PROPS;\nIconButton.displayName = COMPONENT_NAME;\n","import { FloatingOverlay } from '@floating-ui/react';\nimport styled, { css } from 'styled-components';\nimport { DialogSize } from '../dialog/types';\nimport { StyledDialogContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContent = styled.div<StyledDialogContentProps>`\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);\n color: var(--redsift-color-neutral-black);\n display: flex;\n filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))\n drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));\n flex-direction: column;\n font-family: var(--redsift-typography-dialog-font-family);\n font-size: var(--redsift-typography-dialog-font-size);\n font-weight: var(--redsift-typography-dialog-font-weight);\n line-height: var(--redsift-typography-dialog-line-height);\n margin: 32px;\n max-width: calc(100vw - 16px);\n padding: 24px;\n width: 540px;\n\n ${({ $size }) => {\n switch ($size) {\n case DialogSize.small:\n return css`\n width: 540px;\n `;\n case DialogSize.large:\n return css`\n width: 800px;\n `;\n case DialogSize.medium:\n default:\n return css`\n width: 700px;\n `;\n }\n }}\n\n &:focus-visible {\n outline: none;\n }\n\n .redsift-dialog-content__header {\n align-items: flex-start;\n display: flex;\n justify-content: space-between;\n }\n\n .redsift-card-header__icon-button {\n margin-top: 8px;\n margin-left: auto;\n margin-right: 8px;\n\n [dir='rtl'] & {\n margin-left: 8px;\n margin-right: auto;\n }\n }\n`;\n\nexport const StyledFloatingOverlay = styled(FloatingOverlay)`\n background: rgba(0, 0, 0, 0.8);\n display: grid;\n place-items: center;\n z-index: 1;\n`;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledDialogContentActionsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContentActions = styled.div<StyledDialogContentActionsProps>`\n display: flex;\n ${baseContainer}\n\n margin-top: 8px;\n margin-bottom: 8px;\n\n &:focus-visible {\n outline: none;\n }\n`;\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { StyledDialogContentActions } from './styles';\nimport { DialogContentActionsProps } from './types';\nimport { useDialogContext } from '../dialog';\n\nconst COMPONENT_NAME = 'DialogContentActions';\nconst CLASSNAME = 'redsift-dialog-content-actions';\nconst DEFAULT_PROPS: Partial<DialogContentActionsProps> = {\n flexDirection: 'row',\n};\n\n/**\n * The DialogContentActions component.\n */\nexport const DialogContentActions: Comp<\n DialogContentActionsProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n const { actionsRef, initialFocus } = useDialogContext();\n\n return (\n <StyledDialogContentActions\n {...forwardedProps}\n className={classNames(DialogContentActions.className, className)}\n ref={useMergeRefs([ref, actionsRef])}\n tabIndex={initialFocus === 'actions' ? -1 : undefined}\n >\n {children}\n </StyledDialogContentActions>\n );\n});\nDialogContentActions.className = CLASSNAME;\nDialogContentActions.defaultProps = DEFAULT_PROPS;\nDialogContentActions.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledDialogContentBodyProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContentBody = styled.div<StyledDialogContentBodyProps>`\n ${baseContainer}\n\n overflow-y: auto;\n ${({ $marginTop, $marginBottom }) => css`\n max-height: calc(100vh - ${$marginTop + $marginBottom}px);\n `}\n\n color: var(--redsift-color-neutral-darkgrey);\n font-family: var(--redsift-typography-body2-font-family);\n font-size: var(--redsift-typography-body2-font-size);\n font-weight: var(--redsift-typography-body2-font-weight);\n line-height: var(--redsift-typography-body2-line-height);\n padding: 0 24px;\n margin: 16px -24px;\n\n &:focus-visible {\n outline: none;\n }\n\n scrollbar-color: var(--redsift-color-neutral-midgrey) transparent;\n scrollbar-width: thin;\n\n &::-webkit-scrollbar {\n block-size: 9px;\n inline-size: 9px;\n }\n\n &::-webkit-scrollbar-thumb {\n background-clip: padding-box;\n background-color: var(--redsift-color-neutral-midgrey);\n border-radius: 0px;\n border-left: 2px solid transparent;\n border-right: 2px solid transparent;\n }\n\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-thumb:horizontal,\n &::-webkit-scrollbar-thumb:vertical {\n &:hover {\n background-color: var(--redsift-color-neutral-darkgrey);\n }\n }\n\n &::-webkit-scrollbar-corner {\n visibility: hidden;\n }\n`;\n","import { useState, useEffect, MutableRefObject, DependencyList } from 'react';\n\n/**\n * Get the bounding rect of a component.\n */\nexport const useBoundingClientRect = (\n ref: MutableRefObject<HTMLElement>,\n deps?: DependencyList\n) => {\n const [boundingRect, setBoundingRect] = useState<DOMRect>({} as DOMRect);\n\n useEffect(() => {\n if (ref.current) {\n setBoundingRect(ref.current.getBoundingClientRect());\n }\n }, deps);\n\n return boundingRect;\n};\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { StyledDialogContentBody } from './styles';\nimport { DialogContentBodyProps } from './types';\nimport { useDialogContext } from '../dialog';\nimport { useBoundingClientRect } from '~/hooks/useBoundingRect';\n\nconst COMPONENT_NAME = 'DialogContentBody';\nconst CLASSNAME = 'redsift-dialog-content-body';\nconst DEFAULT_PROPS: Partial<DialogContentBodyProps> = {};\n\n/**\n * The DialogContentBody component.\n */\nexport const DialogContentBody: Comp<DialogContentBodyProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n const { actionsRef, bodyRef, hasCloseButton, headerRef, initialFocus } =\n useDialogContext();\n\n const { height: headerHeight = 0 } = useBoundingClientRect(\n headerRef as any,\n [children, headerRef]\n );\n const { height: actionsHeight = 0 } = useBoundingClientRect(\n actionsRef as any,\n [children, actionsRef]\n );\n\n /* istanbul ignore next */\n return (\n <StyledDialogContentBody\n {...forwardedProps}\n className={classNames(DialogContentBody.className, className)}\n ref={useMergeRefs([ref, bodyRef])}\n tabIndex={initialFocus === 'body' ? -1 : undefined}\n $marginTop={Math.max(headerHeight, hasCloseButton ? 40 : 0) + 80}\n $marginBottom={(actionsHeight === 0 ? 0 : actionsHeight + 16) + 80}\n >\n {children}\n </StyledDialogContentBody>\n );\n });\nDialogContentBody.className = CLASSNAME;\nDialogContentBody.defaultProps = DEFAULT_PROPS;\nDialogContentBody.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledHeadingProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledHeading = styled.span<StyledHeadingProps>`\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font: inherit;\n vertical-align: baseline;\n\n ${baseStyling}\n\n ${({ $variant }) =>\n $variant === 'h1'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h1-font-family);\n font-size: var(--redsift-typography-h1-font-size);\n font-weight: var(--redsift-typography-h1-font-weight);\n line-height: var(--redsift-typography-h1-line-height);\n text-transform: var(--redsift-typography-h1-text-transform);\n `\n : $variant === 'h2'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h2-font-family);\n font-size: var(--redsift-typography-h2-font-size);\n font-weight: var(--redsift-typography-h2-font-weight);\n line-height: var(--redsift-typography-h2-line-height);\n `\n : $variant === 'h3'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h3-font-family);\n font-size: var(--redsift-typography-h3-font-size);\n font-weight: var(--redsift-typography-h3-font-weight);\n line-height: var(--redsift-typography-h3-line-height);\n `\n : $variant === 'h4'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h4-font-family);\n font-size: var(--redsift-typography-h4-font-size);\n font-weight: var(--redsift-typography-h4-font-weight);\n line-height: var(--redsift-typography-h4-line-height);\n `\n : $variant === 'h5'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h5-font-family);\n font-size: var(--redsift-typography-h5-font-size);\n font-weight: var(--redsift-typography-h5-font-weight);\n line-height: var(--redsift-typography-h5-line-height);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n `}\n\n ${({ $noWrap }) =>\n $noWrap\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `\n : css`\n word-break: break-word;\n `}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledHeading } from './styles';\nimport { HeadingProps } from './types';\n\nconst COMPONENT_NAME = 'Heading';\nconst CLASSNAME = 'redsift-heading';\nconst DEFAULT_PROPS: Partial<HeadingProps> = {};\n\n/**\n * The Heading component.\n */\nexport const Heading: Comp<HeadingProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { as, children, className, noWrap, variant, ...forwardedProps } =\n props;\n\n return (\n <StyledHeading\n as={as}\n {...forwardedProps}\n className={classNames(Heading.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $noWrap={noWrap}\n $variant={variant ? variant : as === 'span' ? 'body' : as}\n >\n {children}\n </StyledHeading>\n );\n }\n);\nHeading.className = CLASSNAME;\nHeading.defaultProps = DEFAULT_PROPS;\nHeading.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledDialogContentHeaderProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContentHeader = styled.div<StyledDialogContentHeaderProps>`\n color: var(--redsift-color-neutral-black);\n\n &:focus-visible {\n outline: none;\n }\n\n .redsift-dialog-content-header__header {\n align-items: center;\n display: flex;\n gap: 8px;\n padding: 10px 0px;\n margin: 0px;\n\n .redsift-icon {\n color: var(--redsift-color-neutral-black);\n padding-right: 8px;\n font-size: 30px;\n line-height: 30px;\n height: 30px;\n }\n }\n\n .redsift-dialog-content-header__subheader {\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n }\n`;\n","import React, { forwardRef, useId } from 'react';\nimport classNames from 'classnames';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Icon } from '~/components/icon';\nimport { Heading } from '~/components/heading';\nimport { Comp } from '~/types';\nimport { StyledDialogContentHeader } from './styles';\nimport { DialogContentHeaderProps } from './types';\nimport { useDialogContext } from '../dialog';\n\nconst COMPONENT_NAME = 'DialogContentHeader';\nconst CLASSNAME = 'redsift-dialog-content-header';\nconst DEFAULT_PROPS: Partial<DialogContentHeaderProps> = {};\n\n/**\n * The DialogContentHeader component.\n */\nexport const DialogContentHeader: Comp<\n DialogContentHeaderProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const {\n children,\n className,\n header,\n headingProps,\n icon,\n subheader,\n ...forwardedProps\n } = props;\n\n const { setLabelId, setDescriptionId, headerRef, initialFocus } =\n useDialogContext();\n const labelId = useId();\n const descriptionId = useId();\n\n // Only sets `aria-labelledby` on the Dialog root element\n // if this component is mounted inside it.\n React.useLayoutEffect(() => {\n setLabelId(labelId);\n return () => setLabelId(undefined);\n }, [labelId, setLabelId]);\n\n // Only sets `aria-describedby` on the Dialog root element\n // if this component is mounted inside it.\n React.useLayoutEffect(() => {\n setDescriptionId(descriptionId);\n return () => setDescriptionId(undefined);\n }, [descriptionId, setDescriptionId]);\n\n return (\n <StyledDialogContentHeader\n {...forwardedProps}\n className={classNames(DialogContentHeader.className, className)}\n ref={useMergeRefs([ref, headerRef])}\n tabIndex={initialFocus === 'header' ? -1 : undefined}\n >\n {subheader ? (\n <div className={`${DialogContentHeader.className}__subheader`}>\n {subheader}\n </div>\n ) : null}\n {header ? (\n <Heading\n as=\"h2\"\n color=\"black\"\n className={`${DialogContentHeader.className}__header`}\n id={labelId}\n variant=\"h2\"\n {...headingProps}\n >\n {icon ? <Icon icon={icon} aria-hidden=\"true\" /> : null}\n {header}\n </Heading>\n ) : null}\n {children ? <div id={descriptionId}>{children}</div> : null}\n </StyledDialogContentHeader>\n );\n});\nDialogContentHeader.className = CLASSNAME;\nDialogContentHeader.defaultProps = DEFAULT_PROPS;\nDialogContentHeader.displayName = COMPONENT_NAME;\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport {\n useMergeRefs,\n FloatingPortal,\n FloatingFocusManager,\n useTransitionStyles,\n} from '@floating-ui/react';\nimport { mdiClose } from '@redsift/icons';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { Comp } from '~/types';\nimport { isComponent, partitionComponents } from '~/utils';\nimport { IconButton } from '~/components/icon-button';\nimport { DialogContentProps } from './types';\nimport { useDialogContext } from '../dialog';\nimport { StyledDialogContent, StyledFloatingOverlay } from './styles';\nimport { DialogContentActions } from '../dialog-content-actions';\nimport { DialogContentBody } from '../dialog-content-body';\nimport { DialogContentHeader } from '../dialog-content-header';\n\nconst COMPONENT_NAME = 'DialogContent';\nconst CLASSNAME = 'redsift-dialog-content';\nconst DEFAULT_PROPS: Partial<DialogContentProps> = {};\n\n/**\n * The DialogContent component.\n */\nexport const BaseDialogContent: Comp<DialogContentProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n const {\n context: floatingContext,\n getFloatingProps,\n refs,\n labelId,\n descriptionId,\n handleOpen,\n hasCloseButton,\n initialFocus: propsInitialFocus,\n size,\n headerRef,\n bodyRef,\n actionsRef,\n } = useDialogContext();\n const { isMounted, styles } = useTransitionStyles(floatingContext);\n const dialogRef = useMergeRefs([refs.setFloating, ref]);\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const [[header], [body], [actions]] = partitionComponents(\n React.Children.toArray(children),\n [\n isComponent('DialogContentHeader'),\n isComponent('DialogContentBody'),\n isComponent('DialogContentActions'),\n ]\n );\n\n const initialFocus:\n | number\n | React.MutableRefObject<HTMLElement | null>\n | undefined =\n propsInitialFocus === 'header'\n ? headerRef\n : propsInitialFocus === 'body'\n ? bodyRef\n : propsInitialFocus === 'actions'\n ? actionsRef\n : propsInitialFocus\n ? propsInitialFocus\n : undefined;\n\n return (\n <FloatingPortal>\n {isMounted && (\n <StyledFloatingOverlay lockScroll style={styles}>\n <FloatingFocusManager\n context={floatingContext}\n initialFocus={initialFocus ? initialFocus : undefined}\n >\n <StyledDialogContent\n className={classNames(DialogContent.className, className)}\n {...forwardedProps}\n ref={dialogRef}\n aria-labelledby={labelId}\n aria-describedby={descriptionId}\n {...getFloatingProps(props)}\n style={styles}\n $size={size!}\n >\n {header || hasCloseButton ? (\n <div className={`${BaseDialogContent.className}__header`}>\n {header}\n\n {hasCloseButton ? (\n <IconButton\n aria-label={stringFormatter.format('close')}\n className={`${BaseDialogContent.className}-header__icon-button`}\n color=\"question\"\n icon={mdiClose}\n onPress={() => handleOpen(false)}\n />\n ) : null}\n </div>\n ) : null}\n\n {body || actions ? (\n <div className={`${BaseDialogContent.className}__content`}>\n {body}\n {actions}\n </div>\n ) : null}\n </StyledDialogContent>\n </FloatingFocusManager>\n </StyledFloatingOverlay>\n )}\n </FloatingPortal>\n );\n });\nBaseDialogContent.className = CLASSNAME;\nBaseDialogContent.defaultProps = DEFAULT_PROPS;\nBaseDialogContent.displayName = COMPONENT_NAME;\n\nexport const DialogContent = Object.assign(BaseDialogContent, {\n Header: DialogContentHeader,\n Body: DialogContentBody,\n Actions: DialogContentActions,\n});\n","import React, { forwardRef, ReactElement } from 'react';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { useDialogContext } from '../dialog';\nimport { DialogTriggerProps } from './types';\nimport { isComponent } from '~/utils';\n\nconst COMPONENT_NAME = 'DialogTrigger';\nconst CLASSNAME = 'redsift-dialog-trigger';\nconst DEFAULT_PROPS: Partial<DialogTriggerProps> = {};\n\n/**\n * The DialogTrigger component.\n */\nexport const DialogTrigger: Comp<DialogTriggerProps, HTMLButtonElement> =\n forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = useDialogContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n if (\n isComponent('Button')(children) ||\n isComponent('IconButton')(children) ||\n isComponent('LinkButton')(children)\n ) {\n return React.cloneElement(children, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(children as ReactElement).props,\n }),\n onPress: () => handleOpen(!isOpen),\n isActive: isOpen,\n });\n }\n\n return <>{children}</>;\n });\nDialogTrigger.className = CLASSNAME;\nDialogTrigger.defaultProps = DEFAULT_PROPS;\nDialogTrigger.displayName = COMPONENT_NAME;\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport {\n useFloating,\n useDismiss,\n useRole,\n useInteractions,\n} from '@floating-ui/react';\nimport { DialogProps } from './types';\n\nexport function useDialog({\n defaultOpen,\n hasCloseButton,\n initialFocus,\n isOpen: propsIsOpen,\n onOpen,\n size,\n}: Omit<DialogProps, 'children'>) {\n const headerRef = useRef(null);\n const bodyRef = useRef(null);\n const actionsRef = useRef(null);\n const [labelId, setLabelId] = React.useState<string | undefined>();\n const [descriptionId, setDescriptionId] =\n React.useState<string | undefined>();\n\n const [isOpen, setIsOpen] = useState(propsIsOpen ?? defaultOpen);\n\n useEffect(() => {\n setIsOpen(propsIsOpen ?? defaultOpen);\n }, [propsIsOpen, defaultOpen]);\n\n const handleOpen = useCallback(\n (collapsed: boolean) => {\n if (onOpen) {\n onOpen(collapsed);\n }\n if (propsIsOpen === undefined || propsIsOpen === null) {\n setIsOpen(collapsed);\n }\n },\n [onOpen]\n );\n\n const data = useFloating({\n open: isOpen,\n onOpenChange: handleOpen,\n });\n\n const context = data.context;\n\n const dismiss = useDismiss(context, { outsidePressEvent: 'mousedown' });\n const role = useRole(context);\n\n const interactions = useInteractions([dismiss, role]);\n\n return React.useMemo(\n () => ({\n isOpen,\n handleOpen,\n ...interactions,\n ...data,\n labelId,\n descriptionId,\n setLabelId,\n setDescriptionId,\n hasCloseButton,\n initialFocus,\n size,\n headerRef,\n bodyRef,\n actionsRef,\n }),\n [\n isOpen,\n handleOpen,\n interactions,\n data,\n labelId,\n descriptionId,\n hasCloseButton,\n initialFocus,\n size,\n headerRef,\n bodyRef,\n actionsRef,\n ]\n );\n}\n","import React from 'react';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { DialogContent } from '../dialog-content';\nimport { DialogTrigger } from '../dialog-trigger';\n\nimport { DialogContext } from './context';\nimport { DialogProps, DialogSize } from './types';\nimport { useDialog } from './useDialog';\n\nconst COMPONENT_NAME = 'Dialog';\nconst CLASSNAME = 'redsift-dialog';\nconst DEFAULT_PROPS: Partial<DialogProps> = {\n hasCloseButton: true,\n size: DialogSize.medium,\n};\n\n/**\n * The Dialog component.\n */\nexport const BaseDialog: React.FC<DialogProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n children,\n defaultOpen,\n hasCloseButton,\n initialFocus,\n isOpen,\n onOpen,\n size,\n } = props;\n\n const dialog = useDialog({\n defaultOpen,\n hasCloseButton,\n initialFocus,\n isOpen,\n onOpen,\n size,\n });\n\n const [[trigger], [content]] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('DialogTrigger'), isComponent('DialogContent')]\n );\n\n return (\n <DialogContext.Provider value={dialog}>\n {trigger}\n {content}\n </DialogContext.Provider>\n );\n};\nBaseDialog.className = CLASSNAME;\nBaseDialog.defaultProps = DEFAULT_PROPS;\nBaseDialog.displayName = COMPONENT_NAME;\n\nexport const Dialog = Object.assign(BaseDialog, {\n Trigger: DialogTrigger,\n Content: DialogContent,\n});\n","import React from 'react';\nimport { DialogContext } from './context';\n\nexport const useDialogContext = () => {\n const context = React.useContext(DialogContext);\n\n if (context == null) {\n throw new Error('Dialog components must be wrapped in <Dialog />');\n }\n\n return context;\n};\n","import React from 'react';\nimport { PopoverState } from './types';\n\nexport const PopoverContext = React.createContext<PopoverState | null>(null);\n","import { ReactNode } from 'react';\nimport { ValueOf } from '~/types';\nimport { usePopover } from './usePopover';\n\n/**\n * Context props.\n */\nexport type PopoverState = ReturnType<typeof usePopover> | null;\n\n/**\n * Component variant.\n */\nexport const PopoverPlacement = {\n top: 'top',\n right: 'right',\n bottom: 'bottom',\n left: 'left',\n 'top-start': 'top-start',\n 'top-end': 'top-end',\n 'right-start': 'right-start',\n 'right-end': 'right-end',\n 'bottom-start': 'bottom-start',\n 'bottom-end': 'bottom-end',\n 'left-start': 'left-start',\n 'left-end': 'left-end',\n} as const;\nexport type PopoverPlacement = ValueOf<typeof PopoverPlacement>;\n\n/**\n * Component props.\n */\nexport interface PopoverProps {\n /** Children. Can only be PopoverTrigger and PopoverContent. */\n children: ReactNode;\n /**\n * Default open status.\n * Used for uncontrolled version.\n */\n defaultOpen?: boolean;\n /** Default placement of the popover. */\n placement?: PopoverPlacement;\n /** Whether the popover is a modal or not. */\n isModal?: boolean;\n /**\n * Whether the component is opened or not.\n * Used for controlled version.\n */\n isOpen?: boolean;\n /** Method to handle component change. */\n onOpen?: (open: boolean) => void;\n}\n\nexport type StyledPopoverProps = PopoverProps;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledPopoverContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledPopoverContent = styled.div<StyledPopoverContentProps>`\n ${baseContainer}\n max-width: calc(100vw - 16px);\n\n display: flex;\n align-items: center;\n background-color: var(--redsift-color-neutral-white);\n color: var(--redsift-color-neutral-black);\n\n font-family: var(--redsift-typography-popover-font-family);\n font-size: var(--redsift-typography-popover-font-size);\n font-weight: var(--redsift-typography-popover-font-weight);\n line-height: var(--redsift-typography-popover-line-height);\n\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);\n filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))\n drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));\n\n &:focus-visible {\n outline: none;\n }\n`;\n","import React, { forwardRef } from 'react';\nimport {\n useMergeRefs,\n FloatingPortal,\n FloatingFocusManager,\n} from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { PopoverContentProps } from './types';\nimport { usePopoverContext } from '../popover';\nimport { StyledPopoverContent } from './styles';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'PopoverContent';\nconst CLASSNAME = 'redsift-popover-content';\nconst DEFAULT_PROPS: Partial<PopoverContentProps> = {};\n\n/**\n * The PopoverContent component.\n */\nexport const PopoverContent: Comp<PopoverContentProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, style } = props;\n const {\n context: floatingContext,\n getFloatingProps,\n isModal,\n isOpen,\n refs,\n strategy,\n x,\n y,\n } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n return (\n <FloatingPortal>\n {isOpen && (\n <FloatingFocusManager context={floatingContext} modal={isModal}>\n <StyledPopoverContent\n className={classNames(PopoverContent.className, className)}\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n width: 'fit-content',\n ...style,\n }}\n {...getFloatingProps(props)}\n >\n {children}\n </StyledPopoverContent>\n </FloatingFocusManager>\n )}\n </FloatingPortal>\n );\n });\nPopoverContent.className = CLASSNAME;\nPopoverContent.defaultProps = DEFAULT_PROPS;\nPopoverContent.displayName = COMPONENT_NAME;\n","import React, { forwardRef, ReactElement } from 'react';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { usePopoverContext } from '../popover';\nimport { PopoverTriggerProps } from './types';\nimport { isComponent } from '~/utils';\n\nconst COMPONENT_NAME = 'PopoverTrigger';\nconst CLASSNAME = 'redsift-popover-trigger';\nconst DEFAULT_PROPS: Partial<PopoverTriggerProps> = {};\n\n/**\n * The PopoverTrigger component.\n */\nexport const PopoverTrigger: Comp<PopoverTriggerProps, HTMLButtonElement> =\n forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n if (\n isComponent('Button')(children) ||\n isComponent('IconButton')(children) ||\n isComponent('LinkButton')(children)\n ) {\n return React.cloneElement(children, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(children as ReactElement).props,\n }),\n onPress: () => handleOpen(!isOpen),\n isActive: isOpen,\n });\n }\n\n return <>{children}</>;\n });\nPopoverTrigger.className = CLASSNAME;\nPopoverTrigger.defaultProps = DEFAULT_PROPS;\nPopoverTrigger.displayName = COMPONENT_NAME;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport {\n useFloating,\n autoUpdate,\n offset,\n flip,\n shift,\n useDismiss,\n useRole,\n useInteractions,\n} from '@floating-ui/react';\nimport { PopoverProps } from './types';\n\nexport function usePopover({\n defaultOpen,\n placement,\n isModal,\n isOpen: propsIsOpen,\n onOpen,\n}: Omit<PopoverProps, 'children'>) {\n const [isOpen, setIsOpen] = useState(propsIsOpen ?? defaultOpen);\n\n useEffect(() => {\n setIsOpen(propsIsOpen ?? defaultOpen);\n }, [propsIsOpen, defaultOpen]);\n\n const handleOpen = useCallback(\n (collapsed: boolean) => {\n if (onOpen) {\n onOpen(collapsed);\n }\n if (propsIsOpen === undefined || propsIsOpen === null) {\n setIsOpen(collapsed);\n }\n },\n [onOpen]\n );\n\n const data = useFloating({\n placement,\n open: isOpen,\n onOpenChange: handleOpen,\n whileElementsMounted: autoUpdate,\n middleware: [\n offset(2),\n flip({\n fallbackAxisSideDirection: 'end',\n }),\n shift({ padding: 2 }),\n ],\n });\n\n const context = data.context;\n\n const dismiss = useDismiss(context);\n const role = useRole(context);\n\n const interactions = useInteractions([dismiss, role]);\n\n return React.useMemo(\n () => ({\n isOpen,\n handleOpen,\n ...interactions,\n ...data,\n isModal,\n }),\n [isOpen, handleOpen, interactions, data, isModal]\n );\n}\n","import React from 'react';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { PopoverContent } from '../popover-content';\nimport { PopoverTrigger } from '../popover-trigger';\n\nimport { PopoverContext } from './context';\nimport { PopoverPlacement, PopoverProps } from './types';\nimport { usePopover } from './usePopover';\n\nconst COMPONENT_NAME = 'Popover';\nconst CLASSNAME = 'redsift-popover';\nconst DEFAULT_PROPS: Partial<PopoverProps> = {\n isModal: false,\n placement: PopoverPlacement.bottom,\n};\n\n/**\n * The Popover component.\n */\nexport const BasePopover: React.FC<PopoverProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { children, defaultOpen, placement, isModal, isOpen, onOpen } = props;\n\n const popover = usePopover({\n defaultOpen,\n placement,\n isModal,\n isOpen,\n onOpen,\n });\n\n const [[trigger], [content]] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('PopoverTrigger'), isComponent('PopoverContent')]\n );\n\n return (\n <PopoverContext.Provider value={popover}>\n {trigger}\n {content}\n </PopoverContext.Provider>\n );\n};\nBasePopover.className = CLASSNAME;\nBasePopover.defaultProps = DEFAULT_PROPS;\nBasePopover.displayName = COMPONENT_NAME;\n\nexport const Popover = Object.assign(BasePopover, {\n Trigger: PopoverTrigger,\n Content: PopoverContent,\n});\n","import React from 'react';\nimport { PopoverContext } from './context';\n\nexport const usePopoverContext = () => {\n const context = React.useContext(PopoverContext);\n\n if (context == null) {\n throw new Error('Popover components must be wrapped in <Popover />');\n }\n\n return context;\n};\n","import React from 'react';\nimport { TooltipState } from './types';\n\nexport const TooltipContext = React.createContext<TooltipState | null>(null);\n","import { ReactNode } from 'react';\nimport { ValueOf } from '~/types';\nimport { useTooltip } from './useTooltip';\n\n/**\n * Context props.\n */\nexport type TooltipState = ReturnType<typeof useTooltip> | null;\n\n/**\n * Component variant.\n */\nexport const TooltipPlacement = {\n top: 'top',\n right: 'right',\n bottom: 'bottom',\n left: 'left',\n 'top-start': 'top-start',\n 'top-end': 'top-end',\n 'right-start': 'right-start',\n 'right-end': 'right-end',\n 'bottom-start': 'bottom-start',\n 'bottom-end': 'bottom-end',\n 'left-start': 'left-start',\n 'left-end': 'left-end',\n} as const;\nexport type TooltipPlacement = ValueOf<typeof TooltipPlacement>;\n\n/**\n * Component props.\n */\nexport interface TooltipProps {\n /** Children. Can only be TooltipTrigger and TooltilContent. */\n children: ReactNode;\n /**\n * Default open status.\n * Used for uncontrolled version.\n */\n defaultOpen?: boolean;\n /** Delay time (in ms) for the tooltip to show up. */\n delay?: number;\n /** Default placement of the tooltip. */\n placement?: TooltipPlacement;\n /**\n * Whether the component is opened or not.\n * Used for controlled version.\n */\n isOpen?: boolean;\n /** Method to handle component change. */\n onOpen?: (open: boolean) => void;\n /** Id to the tooltip content. */\n tooltipId?: string;\n}\n\nexport type StyledTooltipProps = TooltipProps;\n","import styled, { css } from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { TooltipPlacement } from '../tooltip';\nimport { StyledTooltipContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledTooltipContent = styled.div<StyledTooltipContentProps>`\n ${baseContainer}\n max-width: calc(100vw - 16px);\n\n display: flex;\n align-items: center;\n padding: 4px 8px;\n background-color: var(--redsift-color-neutral-white);\n color: var(--redsift-color-neutral-black);\n\n font-family: var(--redsift-typography-tooltip-font-family);\n font-size: var(--redsift-typography-tooltip-font-size);\n font-weight: var(--redsift-typography-tooltip-font-weight);\n line-height: var(--redsift-typography-tooltip-line-height);\n\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);\n filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))\n drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));\n\n .redsift-tooltip-content__arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: var(--redsift-color-neutral-white);\n border-style: solid;\n }\n\n ${({ $placement }) => {\n switch ($placement) {\n case TooltipPlacement.left:\n case TooltipPlacement['left-end']:\n case TooltipPlacement['left-start']:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 6px 0 6px 6px;\n border-top-color: transparent;\n border-right-color: transparent;\n border-bottom-color: transparent;\n }\n `;\n case TooltipPlacement.top:\n case TooltipPlacement['top-end']:\n case TooltipPlacement['top-start']:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 6px 6px 0;\n border-right-color: transparent;\n border-bottom-color: transparent;\n border-left-color: transparent;\n }\n `;\n case TooltipPlacement.right:\n case TooltipPlacement['right-end']:\n case TooltipPlacement['right-start']:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 6px 6px 6px 0;\n border-top-color: transparent;\n border-bottom-color: transparent;\n border-left-color: transparent;\n }\n `;\n case TooltipPlacement.bottom:\n case TooltipPlacement['bottom-end']:\n case TooltipPlacement['bottom-start']:\n default:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 0 6px 6px;\n border-top-color: transparent;\n border-right-color: transparent;\n border-left-color: transparent;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef } from 'react';\nimport { useMergeRefs, FloatingPortal } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { TooltipContentProps } from './types';\nimport { TooltipPlacement, useTooltipContext } from '../tooltip';\nimport { StyledTooltipContent } from './styles';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'TooltipContent';\nconst CLASSNAME = 'redsift-tooltip-content';\nconst DEFAULT_PROPS: Partial<TooltipContentProps> = {};\n\n/**\n * The TooltipContent component.\n */\nexport const TooltipContent: Comp<TooltipContentProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, style } = props;\n const {\n getFloatingProps,\n isOpen,\n placement,\n refs,\n strategy,\n tooltipId,\n x,\n y,\n middlewareData: { arrow: { x: arrowX, y: arrowY } = {} },\n } = useTooltipContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const { arrowRef } = useTooltipContext();\n\n const staticSide = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[placement.split('-')[0]];\n\n return (\n <FloatingPortal id={tooltipId}>\n {isOpen && (\n <StyledTooltipContent\n className={classNames(TooltipContent.className, className)}\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n visibility: x == null ? 'hidden' : 'visible',\n ...style,\n }}\n {...getFloatingProps(props)}\n $placement={placement as TooltipPlacement}\n >\n <div\n ref={arrowRef}\n className={`${TooltipContent.className}__arrow`}\n style={{\n left: arrowX != null ? `${arrowX}px` : '',\n top: arrowY != null ? `${arrowY}px` : '',\n [staticSide!]: '-6px',\n }}\n />\n <div className={`${TooltipContent.className}__inner`}>\n {children}\n </div>\n </StyledTooltipContent>\n )}\n </FloatingPortal>\n );\n });\nTooltipContent.className = CLASSNAME;\nTooltipContent.defaultProps = DEFAULT_PROPS;\nTooltipContent.displayName = COMPONENT_NAME;\n","import React, { forwardRef, ReactElement } from 'react';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { useTooltipContext } from '../tooltip';\nimport { TooltipTriggerProps } from './types';\n\nconst COMPONENT_NAME = 'TooltipTrigger';\nconst CLASSNAME = 'redsift-tooltip-trigger';\nconst DEFAULT_PROPS: Partial<TooltipTriggerProps> = {};\n\n/**\n * The TooltipTrigger component.\n */\nexport const TooltipTrigger: Comp<TooltipTriggerProps, HTMLSpanElement> =\n forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, refs, tooltipId } = useTooltipContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n if (React.isValidElement(children)) {\n return React.cloneElement(children as ReactElement, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n 'aria-describedby': tooltipId,\n ...children.props,\n }),\n });\n }\n\n return (\n <span ref={triggerRef} {...getReferenceProps(props)}>\n {children}\n </span>\n );\n });\nTooltipTrigger.className = CLASSNAME;\nTooltipTrigger.defaultProps = DEFAULT_PROPS;\nTooltipTrigger.displayName = COMPONENT_NAME;\n","import React, { useCallback, useEffect, useId, useRef, useState } from 'react';\nimport {\n useFloating,\n arrow,\n autoUpdate,\n offset,\n flip,\n shift,\n useHover,\n useFocus,\n useDismiss,\n useRole,\n useInteractions,\n} from '@floating-ui/react';\nimport { TooltipProps } from './types';\n\nexport function useTooltip({\n defaultOpen,\n delay,\n placement,\n isOpen: propsIsOpen,\n onOpen,\n tooltipId: propsTooltipId,\n}: Omit<TooltipProps, 'children'>) {\n const arrowRef = useRef(null);\n const [isOpen, setIsOpen] = useState(propsIsOpen ?? defaultOpen);\n\n const tooltipId = propsTooltipId ?? useId();\n\n useEffect(() => {\n setIsOpen(propsIsOpen ?? defaultOpen);\n }, [propsIsOpen, defaultOpen]);\n\n const handleOpen = useCallback(\n (collapsed: boolean) => {\n if (onOpen) {\n onOpen(collapsed);\n }\n if (propsIsOpen === undefined || propsIsOpen === null) {\n setIsOpen(collapsed);\n }\n },\n [onOpen]\n );\n\n const data = useFloating({\n placement,\n open: isOpen,\n onOpenChange: handleOpen,\n whileElementsMounted: autoUpdate,\n middleware: [\n offset(8),\n flip({\n fallbackAxisSideDirection: 'start',\n }),\n shift({ padding: 8 }),\n arrow({\n element: arrowRef,\n }),\n ],\n });\n\n const context = data.context;\n\n const hover = useHover(context, {\n move: false,\n delay: {\n open: delay,\n close: 0,\n },\n });\n const focus = useFocus(context);\n const dismiss = useDismiss(context);\n const role = useRole(context, { role: 'tooltip' });\n\n const interactions = useInteractions([hover, focus, dismiss, role]);\n\n return React.useMemo(\n () => ({\n isOpen,\n handleOpen,\n ...interactions,\n ...data,\n arrowRef,\n tooltipId,\n }),\n [isOpen, handleOpen, interactions, data, arrowRef, tooltipId]\n );\n}\n","import React from 'react';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { TooltipContent } from '../tooltip-content';\nimport { TooltipTrigger } from '../tooltip-trigger';\n\nimport { TooltipContext } from './context';\nimport { TooltipPlacement, TooltipProps } from './types';\nimport { useTooltip } from './useTooltip';\n\nconst COMPONENT_NAME = 'Tooltip';\nconst CLASSNAME = 'redsift-tooltip';\nconst DEFAULT_PROPS: Partial<TooltipProps> = {\n delay: 500,\n placement: TooltipPlacement.top,\n};\n\n/**\n * The Tooltip component.\n */\nexport const BaseTooltip: React.FC<TooltipProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { children, defaultOpen, delay, isOpen, onOpen, placement, tooltipId } =\n props;\n\n const tooltip = useTooltip({\n defaultOpen,\n delay,\n placement,\n isOpen,\n onOpen,\n tooltipId,\n });\n\n const [[trigger], [content]] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('TooltipTrigger'), isComponent('TooltipContent')]\n );\n\n return (\n <TooltipContext.Provider value={tooltip}>\n {trigger}\n {content}\n </TooltipContext.Provider>\n );\n};\nBaseTooltip.className = CLASSNAME;\nBaseTooltip.defaultProps = DEFAULT_PROPS;\nBaseTooltip.displayName = COMPONENT_NAME;\n\nexport const Tooltip = Object.assign(BaseTooltip, {\n Trigger: TooltipTrigger,\n Content: TooltipContent,\n});\n","import React from 'react';\nimport { TooltipContext } from './context';\n\nexport const useTooltipContext = () => {\n const context = React.useContext(TooltipContext);\n\n if (context == null) {\n throw new Error('Tooltip components must be wrapped in <Tooltip />');\n }\n\n return context;\n};\n"],"names":["DialogContext","React","createContext","DialogSize","small","medium","large","isComponent","component","instance","componentName","displayName","isValidElement","type","partitionComponents","components","predicates","elements","map","forEach","found","predicate","index","push","length","warnIfNoAccessibleLabelFound","props","additionalKeysToCheck","ariaLabel","ariaLabelledby","hasText","filter","key","hasAriaLabel","Boolean","console","warn","$89yE2$react","$89yE2$useContext","$89yE2$useState","$89yE2$useLayoutEffect","$iFADg$useIsSSR","$iFADg$useState","$iFADg$useEffect","$iFADg$react","$iFADg$useContext","$iFADg$LocalizedStringDictionary","$iFADg$useMemo","$iFADg$LocalizedStringFormatter","enUS","frFR","IconButtonVariant","primary","secondary","unstyled","ColorPalette","default","success","error","warning","info","question","ProductColorPalette","website","ondmarc","oninbox","ondomain","hardenize","tools","IconSize","xsmall","xlarge","baseLayout","css","flex","flexGrow","flexShrink","flexBasis","alignSelf","justifySelf","order","gridArea","gridColumn","gridRow","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","baseSpacing","margin","marginBottom","marginLeft","marginRight","marginTop","baseInternalSpacing","padding","paddingBottom","paddingLeft","paddingRight","paddingTop","baseSizing","height","maxHeight","maxWidth","minHeight","minWidth","width","basePositioning","position","top","bottom","left","right","zIndex","baseFlexbox","alignContent","alignItems","flexDirection","flexWrap","gap","justifyContent","baseGrid","gridAutoColumns","gridAutoRows","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","justifyItems","baseStyling","baseContainer","display","StyledIcon","styled","span","$color","Object","keys","indexOf","$size","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","size","Icon","forwardRef","ref","ariaHidden","badge","className","color","icon","svgProps","forwardedProps","_excluded","undefined","classNames","defaultProps","ButtonVariant","StyledButton","button","$variant","$isActive","$isDisabled","$fullWidth","StyledIconButton","variant","IconButton","buttonRef","useRef","buttonProps","useButton","_objectSpread","isDisabled","disabled","preventFocusOnPress","isActive","onPress","StyledDialogContent","div","StyledFloatingOverlay","FloatingOverlay","StyledDialogContentActions","DialogContentActions","children","actionsRef","initialFocus","useDialogContext","useMergeRefs","StyledDialogContentBody","$marginTop","$marginBottom","useBoundingClientRect","deps","boundingRect","setBoundingRect","useState","useEffect","current","getBoundingClientRect","DialogContentBody","bodyRef","hasCloseButton","headerRef","headerHeight","actionsHeight","Math","max","StyledHeading","$noWrap","Heading","as","noWrap","StyledDialogContentHeader","DialogContentHeader","header","headingProps","subheader","setLabelId","setDescriptionId","labelId","useId","descriptionId","useLayoutEffect","BaseDialogContent","context","floatingContext","getFloatingProps","refs","handleOpen","propsInitialFocus","isMounted","styles","useTransitionStyles","dialogRef","setFloating","stringFormatter","useLocalizedStringFormatter","intlMessages","body","actions","Children","toArray","DialogContent","format","mdiClose","assign","Header","Body","Actions","DialogTrigger","getReferenceProps","isOpen","childrenRef","triggerRef","setReference","cloneElement","useDialog","defaultOpen","propsIsOpen","onOpen","setIsOpen","useCallback","collapsed","data","useFloating","open","onOpenChange","dismiss","useDismiss","outsidePressEvent","role","useRole","interactions","useInteractions","useMemo","BaseDialog","dialog","trigger","content","Dialog","Trigger","Content","useContext","Error","PopoverContext","PopoverPlacement","StyledPopoverContent","PopoverContent","style","isModal","strategy","x","y","usePopoverContext","popoverRef","PopoverTrigger","usePopover","placement","whileElementsMounted","autoUpdate","middleware","offset","flip","fallbackAxisSideDirection","shift","BasePopover","popover","Popover","TooltipContext","TooltipPlacement","StyledTooltipContent","$placement","TooltipContent","tooltipId","middlewareData","arrow","arrowX","arrowY","useTooltipContext","arrowRef","staticSide","split","visibility","TooltipTrigger","useTooltip","delay","propsTooltipId","element","hover","useHover","move","close","focus","useFocus","BaseTooltip","tooltip","Tooltip"],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sources":["../src/components/dialog/context.ts","../src/components/dialog/types.ts","../../design-system/src/utils/isComponent.ts","../../design-system/src/utils/partitionComponents.ts","../../design-system/src/utils/warnIfNoAccessibleLabelFound.ts","../../../node_modules/@react-aria/ssr/dist/module.js","../../../node_modules/@internationalized/string/dist/module.js","../../../node_modules/@react-aria/i18n/dist/real-module.js","../src/components/dialog-content/intl/index.ts","../../design-system/src/components/icon-button/types.ts","../../design-system/src/types/colors.ts","../../design-system/src/components/icon/types.ts","../../design-system/src/components/shared/styles.ts","../../design-system/src/components/icon/styles.ts","../../design-system/src/components/icon/Icon.tsx","../../design-system/src/components/button/types.ts","../../design-system/src/components/button/styles.ts","../../design-system/src/components/icon-button/styles.ts","../../design-system/src/components/icon-button/IconButton.tsx","../src/components/dialog-content/styles.ts","../src/components/dialog-content-actions/styles.ts","../src/components/dialog-content-actions/DialogContentActions.tsx","../src/components/dialog-content-body/styles.ts","../../design-system/src/hooks/useBoundingRect.ts","../src/components/dialog-content-body/DialogContentBody.tsx","../../design-system/src/components/heading/styles.ts","../../design-system/src/components/heading/Heading.tsx","../src/components/dialog-content-header/styles.ts","../src/components/dialog-content-header/DialogContentHeader.tsx","../src/components/dialog-content/DialogContent.tsx","../src/components/dialog-trigger/DialogTrigger.tsx","../src/components/dialog/useDialog.tsx","../src/components/dialog/Dialog.tsx","../src/components/dialog/useDialogContext.tsx","../src/components/popover/context.ts","../src/components/popover/types.ts","../src/components/popover-content/styles.ts","../src/components/popover-content/PopoverContent.tsx","../src/components/popover-trigger/PopoverTrigger.tsx","../src/components/popover/usePopover.tsx","../src/components/popover/Popover.tsx","../src/components/popover/usePopoverContext.tsx","../src/components/tooltip/context.ts","../src/components/tooltip/types.ts","../src/components/tooltip-content/styles.ts","../src/components/tooltip-content/TooltipContent.tsx","../src/components/tooltip-trigger/TooltipTrigger.tsx","../src/components/tooltip/useTooltip.tsx","../src/components/tooltip/Tooltip.tsx","../src/components/tooltip/useTooltipContext.tsx"],"sourcesContent":["import React from 'react';\nimport { DialogState } from './types';\n\nexport const DialogContext = React.createContext<DialogState | null>(null);\n","import { Dispatch, ReactNode, SetStateAction } from 'react';\nimport { ValueOf } from '~/types';\nimport { useDialog } from './useDialog';\n\n/**\n * Context props.\n */\nexport type DialogState =\n | (ReturnType<typeof useDialog> & {\n setLabelId: Dispatch<SetStateAction<string | undefined>>;\n setDescriptionId: Dispatch<SetStateAction<string | undefined>>;\n })\n | null;\n\n/**\n * Component variant.\n */\nexport const DialogSize = {\n small: 'small',\n medium: 'medium',\n large: 'large',\n} as const;\nexport type DialogSize = ValueOf<typeof DialogSize>;\n\n/**\n * Component props.\n */\nexport interface DialogProps {\n /** Children. Can only be DialogTrigger and DialogContent. */\n children: ReactNode;\n /**\n * Default open status.\n * Used for uncontrolled version.\n */\n defaultOpen?: boolean;\n /** Whether the Close icon button is displayed or not. */\n hasCloseButton?: boolean;\n /** Which element to initially focus. Can be either a number (tabbable index), a ref to en element, or a shortcut pointing towards a section of the dialog. See the accessibility section in the documentation to know which one to use. */\n initialFocus?:\n | number\n | React.MutableRefObject<HTMLElement | null>\n | 'header'\n | 'body'\n | 'actions';\n /**\n * Whether the component is opened or not.\n * Used for controlled version.\n */\n isOpen?: boolean;\n /** Method to handle component change. */\n onOpen?: (open: boolean) => void;\n /** Dialog size. */\n size?: DialogSize;\n}\n\nexport type StyledDialogProps = DialogProps;\n","import React, { ReactNode, ReactElement } from 'react';\nimport { Comp } from '~/types';\n\n/**\n * Create a predicate function that checks if a ReactNode is a react element from the given component.\n *\n * @param component React function component or the component name\n * @return predicate returning true if value is instance of the component\n */\nexport const isComponent =\n <C>(component: Comp<C, any> | string) =>\n (instance: ReactNode): instance is ReactElement => {\n const componentName =\n typeof component === 'string' ? component : component.displayName;\n\n return (\n React.isValidElement(instance) &&\n (instance.type as Comp<any>).displayName === componentName\n );\n };\n","/**\n * Return components based on list of predicates.\n *\n * @param components Array of components\n * @param predicates Array of predicates\n * @return an array of arrays of components based on the given array of predicates\n */\nexport function partitionComponents<T>(\n components: T[],\n predicates: Array<(t: T) => boolean>\n): T[][] {\n const elements: T[][] = [...predicates.map(() => []), []];\n components.forEach((component) => {\n let found = false;\n predicates.forEach((predicate, index) => {\n if (predicate(component)) {\n elements[index].push(component);\n found = true;\n }\n });\n if (!found) {\n elements[elements.length - 1].push(component);\n }\n });\n return elements;\n}\n","import { ComponentProps, DependencyList } from 'react';\n\n/**\n * Display a warning if no label was found for screen readers and assistive technologies.\n *\n * @param props Component props containing the aria-label and aria-labelledby params to check for.\n * @param additionalKeysToCheck Additional props to check that can act as a label for screen readers (i.e. children).\n */\nexport const warnIfNoAccessibleLabelFound = (\n props: ComponentProps<keyof JSX.IntrinsicElements>,\n additionalKeysToCheck?: DependencyList\n): void => {\n const { 'aria-label': ariaLabel, 'aria-labelledby': ariaLabelledby } = props;\n\n const hasText =\n additionalKeysToCheck &&\n additionalKeysToCheck.filter((key) => !!key).length > 0;\n const hasAriaLabel = Boolean(ariaLabel || ariaLabelledby);\n\n if (!hasAriaLabel && !hasText) {\n console.warn('You must provide a label for accessibility');\n }\n};\n","import $89yE2$react, {useContext as $89yE2$useContext, useMemo as $89yE2$useMemo, useState as $89yE2$useState, useLayoutEffect as $89yE2$useLayoutEffect} from \"react\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // We must avoid a circular dependency with @react-aria/utils, and this useLayoutEffect is\n// guarded by a check that it only runs on the client side.\n// eslint-disable-next-line rulesdir/useLayoutEffectRule\n\n// Default context value to use in case there is no SSRProvider. This is fine for\n// client-only apps. In order to support multiple copies of React Aria potentially\n// being on the page at once, the prefix is set to a random number. SSRProvider\n// will reset this to zero for consistency between server and client, so in the\n// SSR case multiple copies of React Aria is not supported.\nconst $704cf1d3b684cc5c$var$defaultContext = {\n prefix: String(Math.round(Math.random() * 10000000000)),\n current: 0\n};\nconst $704cf1d3b684cc5c$var$SSRContext = /*#__PURE__*/ (0, $89yE2$react).createContext($704cf1d3b684cc5c$var$defaultContext);\nfunction $704cf1d3b684cc5c$export$9f8ac96af4b1b2ae(props) {\n let cur = (0, $89yE2$useContext)($704cf1d3b684cc5c$var$SSRContext);\n let value = (0, $89yE2$useMemo)(()=>({\n // If this is the first SSRProvider, start with an empty string prefix, otherwise\n // append and increment the counter.\n prefix: cur === $704cf1d3b684cc5c$var$defaultContext ? \"\" : `${cur.prefix}-${++cur.current}`,\n current: 0\n }), [\n cur\n ]);\n return /*#__PURE__*/ (0, $89yE2$react).createElement($704cf1d3b684cc5c$var$SSRContext.Provider, {\n value: value\n }, props.children);\n}\nlet $704cf1d3b684cc5c$var$canUseDOM = Boolean(typeof window !== \"undefined\" && window.document && window.document.createElement);\nfunction $704cf1d3b684cc5c$export$619500959fc48b26(defaultId) {\n let ctx = (0, $89yE2$useContext)($704cf1d3b684cc5c$var$SSRContext);\n // If we are rendering in a non-DOM environment, and there's no SSRProvider,\n // provide a warning to hint to the developer to add one.\n if (ctx === $704cf1d3b684cc5c$var$defaultContext && !$704cf1d3b684cc5c$var$canUseDOM) console.warn(\"When server rendering, you must wrap your application in an <SSRProvider> to ensure consistent ids are generated between the client and server.\");\n // eslint-disable-next-line react-hooks/exhaustive-deps\n return (0, $89yE2$useMemo)(()=>defaultId || `react-aria${ctx.prefix}-${++ctx.current}`, [\n defaultId\n ]);\n}\nfunction $704cf1d3b684cc5c$export$535bd6ca7f90a273() {\n let cur = (0, $89yE2$useContext)($704cf1d3b684cc5c$var$SSRContext);\n let isInSSRContext = cur !== $704cf1d3b684cc5c$var$defaultContext;\n let [isSSR, setIsSSR] = (0, $89yE2$useState)(isInSSRContext);\n // If on the client, and the component was initially server rendered,\n // then schedule a layout effect to update the component after hydration.\n if (typeof window !== \"undefined\" && isInSSRContext) // This if statement technically breaks the rules of hooks, but is safe\n // because the condition never changes after mounting.\n // eslint-disable-next-line react-hooks/rules-of-hooks\n (0, $89yE2$useLayoutEffect)(()=>{\n setIsSSR(false);\n }, []);\n return isSSR;\n}\n\n\n\n\nexport {$704cf1d3b684cc5c$export$9f8ac96af4b1b2ae as SSRProvider, $704cf1d3b684cc5c$export$619500959fc48b26 as useSSRSafeId, $704cf1d3b684cc5c$export$535bd6ca7f90a273 as useIsSSR};\n//# sourceMappingURL=module.js.map\n","/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ class $5b160d28a433310d$export$c17fa47878dc55b6 {\n /** Returns a localized string for the given key and locale. */ getStringForLocale(key, locale) {\n let strings = this.strings[locale];\n if (!strings) {\n strings = $5b160d28a433310d$var$getStringsForLocale(locale, this.strings, this.defaultLocale);\n this.strings[locale] = strings;\n }\n let string = strings[key];\n if (!string) throw new Error(`Could not find intl message ${key} in ${locale} locale`);\n return string;\n }\n constructor(messages, defaultLocale = \"en-US\"){\n // Clone messages so we don't modify the original object.\n this.strings = {\n ...messages\n };\n this.defaultLocale = defaultLocale;\n }\n}\nfunction $5b160d28a433310d$var$getStringsForLocale(locale, strings, defaultLocale = \"en-US\") {\n // If there is an exact match, use it.\n if (strings[locale]) return strings[locale];\n // Attempt to find the closest match by language.\n // For example, if the locale is fr-CA (French Canadian), but there is only\n // an fr-FR (France) set of strings, use that.\n // This could be replaced with Intl.LocaleMatcher once it is supported.\n // https://github.com/tc39/proposal-intl-localematcher\n let language = $5b160d28a433310d$var$getLanguage(locale);\n if (strings[language]) return strings[language];\n for(let key in strings){\n if (key.startsWith(language + \"-\")) return strings[key];\n }\n // Nothing close, use english.\n return strings[defaultLocale];\n}\nfunction $5b160d28a433310d$var$getLanguage(locale) {\n // @ts-ignore\n if (Intl.Locale) // @ts-ignore\n return new Intl.Locale(locale).language;\n return locale.split(\"-\")[0];\n}\n\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ const $6db58dc88e78b024$var$pluralRulesCache = new Map();\nconst $6db58dc88e78b024$var$numberFormatCache = new Map();\nclass $6db58dc88e78b024$export$2f817fcdc4b89ae0 {\n /** Formats a localized string for the given key with the provided variables. */ format(key, variables) {\n let message = this.strings.getStringForLocale(key, this.locale);\n return typeof message === \"function\" ? message(variables, this) : message;\n }\n plural(count, options, type = \"cardinal\") {\n let opt = options[\"=\" + count];\n if (opt) return typeof opt === \"function\" ? opt() : opt;\n let key = this.locale + \":\" + type;\n let pluralRules = $6db58dc88e78b024$var$pluralRulesCache.get(key);\n if (!pluralRules) {\n pluralRules = new Intl.PluralRules(this.locale, {\n type: type\n });\n $6db58dc88e78b024$var$pluralRulesCache.set(key, pluralRules);\n }\n let selected = pluralRules.select(count);\n opt = options[selected] || options.other;\n return typeof opt === \"function\" ? opt() : opt;\n }\n number(value) {\n let numberFormat = $6db58dc88e78b024$var$numberFormatCache.get(this.locale);\n if (!numberFormat) {\n numberFormat = new Intl.NumberFormat(this.locale);\n $6db58dc88e78b024$var$numberFormatCache.set(this.locale, numberFormat);\n }\n return numberFormat.format(value);\n }\n select(options, value) {\n let opt = options[value] || options.other;\n return typeof opt === \"function\" ? opt() : opt;\n }\n constructor(locale, strings){\n this.locale = locale;\n this.strings = strings;\n }\n}\n\n\n\n\nexport {$5b160d28a433310d$export$c17fa47878dc55b6 as LocalizedStringDictionary, $6db58dc88e78b024$export$2f817fcdc4b89ae0 as LocalizedStringFormatter};\n//# sourceMappingURL=module.js.map\n","import $iFADg$react, {useContext as $iFADg$useContext, useState as $iFADg$useState, useEffect as $iFADg$useEffect, useMemo as $iFADg$useMemo, useRef as $iFADg$useRef} from \"react\";\nimport {useIsSSR as $iFADg$useIsSSR} from \"@react-aria/ssr\";\nimport {LocalizedStringDictionary as $iFADg$LocalizedStringDictionary, LocalizedStringFormatter as $iFADg$LocalizedStringFormatter} from \"@internationalized/string\";\nimport {DateFormatter as $iFADg$DateFormatter} from \"@internationalized/date\";\nimport {NumberFormatter as $iFADg$NumberFormatter} from \"@internationalized/number\";\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ /*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ // https://en.wikipedia.org/wiki/Right-to-left\nconst $148a7a147e38ea7f$var$RTL_SCRIPTS = new Set([\n \"Arab\",\n \"Syrc\",\n \"Samr\",\n \"Mand\",\n \"Thaa\",\n \"Mend\",\n \"Nkoo\",\n \"Adlm\",\n \"Rohg\",\n \"Hebr\"\n]);\nconst $148a7a147e38ea7f$var$RTL_LANGS = new Set([\n \"ae\",\n \"ar\",\n \"arc\",\n \"bcc\",\n \"bqi\",\n \"ckb\",\n \"dv\",\n \"fa\",\n \"glk\",\n \"he\",\n \"ku\",\n \"mzn\",\n \"nqo\",\n \"pnb\",\n \"ps\",\n \"sd\",\n \"ug\",\n \"ur\",\n \"yi\"\n]);\nfunction $148a7a147e38ea7f$export$702d680b21cbd764(locale) {\n // If the Intl.Locale API is available, use it to get the script for the locale.\n // This is more accurate than guessing by language, since languages can be written in multiple scripts.\n // @ts-ignore\n if (Intl.Locale) {\n // @ts-ignore\n let script = new Intl.Locale(locale).maximize().script;\n return $148a7a147e38ea7f$var$RTL_SCRIPTS.has(script);\n }\n // If not, just guess by the language (first part of the locale)\n let lang = locale.split(\"-\")[0];\n return $148a7a147e38ea7f$var$RTL_LANGS.has(lang);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $1e5a04cdaf7d1af8$export$f09106e7c6677ec5() {\n // @ts-ignore\n let locale = typeof navigator !== \"undefined\" && (navigator.language || navigator.userLanguage) || \"en-US\";\n try {\n // @ts-ignore\n Intl.DateTimeFormat.supportedLocalesOf([\n locale\n ]);\n } catch (_err) {\n locale = \"en-US\";\n }\n return {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? \"rtl\" : \"ltr\"\n };\n}\nlet $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\nlet $1e5a04cdaf7d1af8$var$listeners = new Set();\nfunction $1e5a04cdaf7d1af8$var$updateLocale() {\n $1e5a04cdaf7d1af8$var$currentLocale = $1e5a04cdaf7d1af8$export$f09106e7c6677ec5();\n for (let listener of $1e5a04cdaf7d1af8$var$listeners)listener($1e5a04cdaf7d1af8$var$currentLocale);\n}\nfunction $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a() {\n let isSSR = (0, $iFADg$useIsSSR)();\n let [defaultLocale, setDefaultLocale] = (0, $iFADg$useState)($1e5a04cdaf7d1af8$var$currentLocale);\n (0, $iFADg$useEffect)(()=>{\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.addEventListener(\"languagechange\", $1e5a04cdaf7d1af8$var$updateLocale);\n $1e5a04cdaf7d1af8$var$listeners.add(setDefaultLocale);\n return ()=>{\n $1e5a04cdaf7d1af8$var$listeners.delete(setDefaultLocale);\n if ($1e5a04cdaf7d1af8$var$listeners.size === 0) window.removeEventListener(\"languagechange\", $1e5a04cdaf7d1af8$var$updateLocale);\n };\n }, []);\n // We cannot determine the browser's language on the server, so default to\n // en-US. This will be updated after hydration on the client to the correct value.\n if (isSSR) return {\n locale: \"en-US\",\n direction: \"ltr\"\n };\n return defaultLocale;\n}\n\n\n\nconst $18f2051aff69b9bf$var$I18nContext = /*#__PURE__*/ (0, $iFADg$react).createContext(null);\nfunction $18f2051aff69b9bf$export$a54013f0d02a8f82(props) {\n let { locale: locale , children: children } = props;\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let value = locale ? {\n locale: locale,\n direction: (0, $148a7a147e38ea7f$export$702d680b21cbd764)(locale) ? \"rtl\" : \"ltr\"\n } : defaultLocale;\n return /*#__PURE__*/ (0, $iFADg$react).createElement($18f2051aff69b9bf$var$I18nContext.Provider, {\n value: value\n }, children);\n}\nfunction $18f2051aff69b9bf$export$43bb16f9c6d9e3f7() {\n let defaultLocale = (0, $1e5a04cdaf7d1af8$export$188ec29ebc2bdc3a)();\n let context = (0, $iFADg$useContext)($18f2051aff69b9bf$var$I18nContext);\n return context || defaultLocale;\n}\n\n\nvar $2aa2084a6c2b6b4f$exports = {};\n\"use strict\";\n\n\n/*\n * Copyright 2022 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nconst $fca6afa0e843324b$var$cache = new WeakMap();\nfunction $fca6afa0e843324b$var$getCachedDictionary(strings) {\n let dictionary = $fca6afa0e843324b$var$cache.get(strings);\n if (!dictionary) {\n dictionary = new (0, $iFADg$LocalizedStringDictionary)(strings);\n $fca6afa0e843324b$var$cache.set(strings, dictionary);\n }\n return dictionary;\n}\nfunction $fca6afa0e843324b$export$f12b703ca79dfbb1(strings) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let dictionary = (0, $iFADg$useMemo)(()=>$fca6afa0e843324b$var$getCachedDictionary(strings), [\n strings\n ]);\n return (0, $iFADg$useMemo)(()=>new (0, $iFADg$LocalizedStringFormatter)(locale, dictionary), [\n locale,\n dictionary\n ]);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\nfunction $33bf17300c498528$export$a2f47a3d2973640(options = {}) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n // @ts-ignore\n return (0, $iFADg$useMemo)(()=>new Intl.ListFormat(locale, options), [\n locale,\n options\n ]);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $896ba0a80a8f4d36$export$85fd5fdf27bacc79(options) {\n // Reuse last options object if it is shallowly equal, which allows the useMemo result to also be reused.\n let lastOptions = (0, $iFADg$useRef)(null);\n if (options && lastOptions.current && $896ba0a80a8f4d36$var$isEqual(options, lastOptions.current)) options = lastOptions.current;\n lastOptions.current = options;\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n return (0, $iFADg$useMemo)(()=>new (0, $iFADg$DateFormatter)(locale, options), [\n locale,\n options\n ]);\n}\nfunction $896ba0a80a8f4d36$var$isEqual(a, b) {\n if (a === b) return true;\n let aKeys = Object.keys(a);\n let bKeys = Object.keys(b);\n if (aKeys.length !== bKeys.length) return false;\n for (let key of aKeys){\n if (b[key] !== a[key]) return false;\n }\n return true;\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \n\n\nfunction $a916eb452884faea$export$b7a616150fdb9f44(options = {}) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n return (0, $iFADg$useMemo)(()=>new (0, $iFADg$NumberFormatter)(locale, options), [\n locale,\n options\n ]);\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nlet $325a3faab7a68acd$var$cache = new Map();\nfunction $325a3faab7a68acd$export$a16aca283550c30d(options) {\n let { locale: locale } = (0, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7)();\n let cacheKey = locale + (options ? Object.entries(options).sort((a, b)=>a[0] < b[0] ? -1 : 1).join() : \"\");\n if ($325a3faab7a68acd$var$cache.has(cacheKey)) return $325a3faab7a68acd$var$cache.get(cacheKey);\n let formatter = new Intl.Collator(locale, options);\n $325a3faab7a68acd$var$cache.set(cacheKey, formatter);\n return formatter;\n}\n\n\n/*\n * Copyright 2020 Adobe. All rights reserved.\n * This file is licensed to you under the Apache License, Version 2.0 (the \"License\");\n * you may not use this file except in compliance with the License. You may obtain a copy\n * of the License at http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing, software distributed under\n * the License is distributed on an \"AS IS\" BASIS, WITHOUT WARRANTIES OR REPRESENTATIONS\n * OF ANY KIND, either express or implied. See the License for the specific language\n * governing permissions and limitations under the License.\n */ \nfunction $bb77f239b46e8c72$export$3274cf84b703fff(options) {\n let collator = (0, $325a3faab7a68acd$export$a16aca283550c30d)({\n usage: \"search\",\n ...options\n });\n // TODO(later): these methods don't currently support the ignorePunctuation option.\n return {\n startsWith (string, substring) {\n if (substring.length === 0) return true;\n // Normalize both strings so we can slice safely\n // TODO: take into account the ignorePunctuation option as well...\n string = string.normalize(\"NFC\");\n substring = substring.normalize(\"NFC\");\n return collator.compare(string.slice(0, substring.length), substring) === 0;\n },\n endsWith (string, substring) {\n if (substring.length === 0) return true;\n string = string.normalize(\"NFC\");\n substring = substring.normalize(\"NFC\");\n return collator.compare(string.slice(-substring.length), substring) === 0;\n },\n contains (string, substring) {\n if (substring.length === 0) return true;\n string = string.normalize(\"NFC\");\n substring = substring.normalize(\"NFC\");\n let scan = 0;\n let sliceLen = substring.length;\n for(; scan + sliceLen <= string.length; scan++){\n let slice = string.slice(scan, scan + sliceLen);\n if (collator.compare(substring, slice) === 0) return true;\n }\n return false;\n }\n };\n}\n\n\n\n\nexport {$18f2051aff69b9bf$export$a54013f0d02a8f82 as I18nProvider, $18f2051aff69b9bf$export$43bb16f9c6d9e3f7 as useLocale, $fca6afa0e843324b$export$f12b703ca79dfbb1 as useLocalizedStringFormatter, $33bf17300c498528$export$a2f47a3d2973640 as useListFormatter, $896ba0a80a8f4d36$export$85fd5fdf27bacc79 as useDateFormatter, $a916eb452884faea$export$b7a616150fdb9f44 as useNumberFormatter, $325a3faab7a68acd$export$a16aca283550c30d as useCollator, $bb77f239b46e8c72$export$3274cf84b703fff as useFilter};\n//# sourceMappingURL=real-module.js.map\n","import enUS from './en-US.json';\nimport frFR from './fr-FR.json';\n\nexport default {\n 'en-US': enUS,\n 'fr-FR': frFR,\n};\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const IconButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type IconButtonVariant = ValueOf<typeof IconButtonVariant>;\n\n/**\n * Component color.\n */\nexport type IconButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface IconButtonProps\n extends ComponentProps<'button'>,\n StylingProps {\n /** Color variant. */\n color?: IconButtonColor;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /** Button variant. */\n variant?: IconButtonVariant;\n}\n\nexport type StyledIconButtonProps = Omit<\n IconButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'icon'\n> & {\n $color: IconButtonProps['color'];\n $isActive: IconButtonProps['isActive'];\n $isDisabled: IconButtonProps['isDisabled'];\n $variant: IconButtonProps['variant'];\n};\n","import { ValueOf } from './helpers';\n\n/**\n * Color palette.\n */\nexport const ColorPalette = {\n default: 'default',\n success: 'success',\n error: 'error',\n warning: 'warning',\n info: 'info',\n question: 'question',\n 'no-data': 'no-data',\n} as const;\nexport type ColorPalette = ValueOf<typeof ColorPalette>;\n\nexport const ProductColorPalette = {\n website: 'website',\n ondmarc: 'ondmarc',\n oninbox: 'oninbox',\n ondomain: 'ondomain',\n hardenize: 'hardenize',\n tools: 'tools',\n} as const;\nexport type ProductColorPalette = ValueOf<typeof ProductColorPalette>;\n\nexport const DataVizColorPalette = {\n purple: 'purple',\n blue: 'blue',\n green: 'green',\n red: 'red',\n pink: 'pink',\n cyan: 'cyan',\n orange: 'orange',\n yellow: 'yellow',\n brown: 'brown',\n grey: 'grey',\n} as const;\nexport type DataVizColorPalette = ValueOf<typeof DataVizColorPalette>;\n\nexport const NeutralColorPalette = {\n black: 'black',\n darkgrey: 'darkgrey',\n midgrey: 'midgrey',\n lightgrey: 'lightgrey',\n xlightgrey: 'xlightgrey',\n white: 'white',\n} as const;\nexport type NeutralColorPalette = ValueOf<typeof NeutralColorPalette>;\n","import { ComponentProps, ReactElement } from 'react';\nimport {\n ColorPalette,\n LayoutProps,\n PositioningProps,\n ProductColorPalette,\n SpacingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component size.\n */\nexport const IconSize = {\n xsmall: 'xsmall',\n small: 'small',\n medium: 'medium',\n large: 'large',\n xlarge: 'xlarge',\n} as const;\nexport type IconSize = ValueOf<typeof IconSize>;\n\n/**\n * Component props.\n */\nexport interface IconProps\n extends ComponentProps<'span'>,\n LayoutProps,\n SpacingProps,\n PositioningProps {\n /** Indicates whether the element is exposed to an accessibility API. */\n 'aria-hidden'?: boolean | 'false' | 'true';\n /** A screen reader only label for the Icon. */\n 'aria-label'?: string;\n /** Color variant. Either from color palette or hex or rgb strings. */\n color?: ColorPalette | ProductColorPalette | string;\n /** Whether the icon has a badge attached to it. */\n badge?: ReactElement;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n icon: string;\n /** Icon size. */\n size?: IconSize;\n /** Additional properties to forward to the SVG tag. */\n svgProps?: ComponentProps<'svg'>;\n}\n\nexport type StyledIconProps = Omit<\n IconProps,\n 'color' | 'size' | 'icon' | 'svgProps'\n> & {\n $color: IconProps['color'];\n $size: IconProps['size'];\n};\n","import { css } from 'styled-components';\nimport {\n LayoutProps,\n SpacingProps,\n SizingProps,\n PositioningProps,\n FlexLayoutProps,\n GridLayoutProps,\n StylingProps,\n ContainerProps,\n InternalSpacingProps,\n} from '~/types';\n\nexport const baseLayout = css<LayoutProps>`\n ${({\n flex,\n flexGrow,\n flexShrink,\n flexBasis,\n alignSelf,\n justifySelf,\n order,\n gridArea,\n gridColumn,\n gridRow,\n gridColumnStart,\n gridColumnEnd,\n gridRowStart,\n gridRowEnd,\n }) =>\n css`\n ${flex ? `flex: ${flex};` : ''}\n ${flexGrow ? `flex-grow: ${flexGrow};` : ''}\n ${flexShrink ? `flex-shrink: ${flexShrink};` : ''}\n ${flexBasis ? `flex-basis: ${flexBasis};` : ''}\n ${alignSelf ? `align-self: ${alignSelf};` : ''}\n ${justifySelf ? `justify-self: ${justifySelf};` : ''}\n ${order ? `order: ${order};` : ''}\n ${gridArea ? `grid-area: ${gridArea};` : ''}\n ${gridColumn ? `grid-column: ${gridColumn};` : ''}\n ${gridRow ? `grid-row: ${gridRow};` : ''}\n ${gridColumnStart ? `grid-column-start: ${gridColumnStart};` : ''}\n ${gridColumnEnd ? `grid-column-end: ${gridColumnEnd};` : ''}\n ${gridRowStart ? `grid-row-start: ${gridRowStart};` : ''}\n ${gridRowEnd ? `grid-row-end: ${gridRowEnd};` : ''}\n `}\n`;\n\nexport const baseSpacing = css<SpacingProps>`\n ${({ margin, marginBottom, marginLeft, marginRight, marginTop }) =>\n css`\n ${margin ? `margin: ${margin};` : ''}\n ${marginBottom ? `margin-bottom: ${marginBottom};` : ''}\n ${marginLeft ? `margin-left: ${marginLeft};` : ''}\n ${marginRight ? `margin-right: ${marginRight};` : ''}\n ${marginTop ? `margin-top: ${marginTop};` : ''}\n `}\n`;\n\nexport const baseInternalSpacing = css<InternalSpacingProps>`\n ${({ padding, paddingBottom, paddingLeft, paddingRight, paddingTop }) =>\n css`\n ${padding ? `padding: ${padding};` : ''}\n ${paddingBottom ? `padding-bottom: ${paddingBottom};` : ''}\n ${paddingLeft ? `padding-left: ${paddingLeft};` : ''}\n ${paddingRight ? `padding-right: ${paddingRight};` : ''}\n ${paddingTop ? `padding-top: ${paddingTop};` : ''}\n `}\n`;\n\nexport const baseSizing = css<SizingProps>`\n ${({ height, maxHeight, maxWidth, minHeight, minWidth, width }) =>\n css`\n ${height\n ? `height: ${typeof height === 'number' ? `${height}px` : height};`\n : ''}\n ${maxHeight ? `max-height: ${maxHeight};` : ''}\n ${maxWidth ? `max-width: ${maxWidth};` : ''}\n ${minHeight ? `min-height: ${minHeight};` : ''}\n ${minWidth ? `min-width: ${minWidth};` : ''}\n ${width\n ? `width: ${typeof width === 'number' ? `${width}px` : width};`\n : ''}\n `}\n`;\n\nexport const basePositioning = css<PositioningProps>`\n ${({ position, top, bottom, left, right, zIndex }) =>\n css`\n ${position ? `position: ${position};` : ''}\n ${top ? `top: ${top};` : ''}\n ${bottom ? `bottom: ${bottom};` : ''}\n ${left ? `left: ${left};` : ''}\n ${right ? `right: ${right};` : ''}\n ${zIndex ? `z-index: ${zIndex};` : ''}\n `}\n`;\n\nexport const baseFlexbox = css<FlexLayoutProps>`\n ${({\n alignContent,\n alignItems,\n flexDirection,\n flexWrap,\n gap,\n justifyContent,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${flexDirection ? `flex-direction: ${flexDirection};` : ''}\n ${flexWrap ? `flex-wrap: ${flexWrap};` : ''}\n gap: ${gap};\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n `}\n`;\n\nexport const baseGrid = css<GridLayoutProps>`\n ${({\n alignContent,\n alignItems,\n gap,\n gridAutoColumns,\n gridAutoRows,\n gridTemplateAreas,\n gridTemplateColumns,\n gridTemplateRows,\n justifyContent,\n justifyItems,\n }) =>\n css`\n ${alignContent ? `align-content: ${alignContent};` : ''}\n ${alignItems ? `align-items: ${alignItems};` : ''}\n ${gap ? `gap: ${gap};` : ''}\n ${gridAutoColumns ? `grid-auto-columns: ${gridAutoColumns};` : ''}\n ${gridAutoRows ? `grid-auto-rows: ${gridAutoRows};` : ''}\n ${gridTemplateAreas ? `grid-template-areas: ${gridTemplateAreas};` : ''}\n ${gridTemplateColumns\n ? `grid-template-columns: ${gridTemplateColumns};`\n : ''}\n ${gridTemplateRows ? `grid-template-rows: ${gridTemplateRows};` : ''}\n ${justifyContent ? `justify-content: ${justifyContent};` : ''}\n ${justifyItems ? `justify-items: ${justifyItems};` : ''}\n `}\n`;\n\nexport const baseStyling = css<StylingProps>`\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n color: var(--redsift-color-neutral-black);\n\n ${baseLayout}\n ${baseSpacing}\n ${baseSizing}\n ${basePositioning}\n`;\n\nexport const baseContainer = css<ContainerProps>`\n ${({ display }) => (display ? `display: ${display};` : '')}\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n color: var(--redsift-color-neutral-black);\n\n ${baseInternalSpacing}\n ${baseFlexbox}\n ${baseGrid}\n`;\n","import styled, { css } from 'styled-components';\nimport { ColorPalette, ProductColorPalette } from '~/types';\nimport { baseStyling } from '~/components/shared';\nimport { StyledIconProps, IconSize } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIcon = styled.span<StyledIconProps>`\n position: relative;\n ${baseStyling}\n\n font-style: normal;\n\n svg {\n vertical-align: -0.125em;\n }\n\n ${({ $color }) =>\n $color &&\n [...Object.keys(ColorPalette), ...Object.keys(ProductColorPalette)].indexOf(\n $color\n ) !== -1\n ? css`\n color: var(--redsift-color-${$color}-primary);\n `\n : css`\n color: ${$color || css`var(--redsift-color-neutral-darkgrey)`};\n `}\n\n ${({ $size }) => {\n switch ($size) {\n case IconSize.xlarge:\n return css`\n font-size: 40px;\n height: 40px;\n line-height: 40px;\n width: 40px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -2px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 6px;\n }\n `;\n case IconSize.large:\n return css`\n font-size: 28px;\n height: 28px;\n line-height: 28px;\n width: 28px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -4px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 2px;\n }\n `;\n case IconSize.small:\n return css`\n font-size: 20px;\n height: 20px;\n line-height: 20px;\n width: 20px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -8px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n case IconSize.xsmall:\n return css`\n font-size: 16px;\n height: 16px;\n line-height: 16px;\n width: 16px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -12px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: -1px;\n }\n `;\n case IconSize.medium:\n default:\n return css`\n font-size: 24px;\n height: 24px;\n line-height: 24px;\n width: 24px;\n\n & .redsift-badge-standard {\n position: absolute;\n right: -24px;\n top: -5px;\n }\n\n & .redsift-badge-dot {\n position: absolute;\n right: -14px;\n top: 1px;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledIcon } from './styles';\nimport { IconProps, IconSize } from './types';\n\nconst COMPONENT_NAME = 'Icon';\nconst CLASSNAME = 'redsift-icon';\nconst DEFAULT_PROPS: Partial<IconProps> = {\n size: IconSize.medium,\n};\n\n/**\n * The Icon component.\n */\nexport const Icon: Comp<IconProps, HTMLSpanElement> = forwardRef(\n (props, ref) => {\n const {\n 'aria-hidden': ariaHidden,\n 'aria-label': ariaLabel,\n badge,\n className,\n color,\n icon,\n size,\n svgProps,\n ...forwardedProps\n } = props;\n\n return (\n <StyledIcon\n {...forwardedProps}\n $color={color}\n $size={size}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n className={classNames(Icon.className, className)}\n ref={ref as RefObject<HTMLSpanElement>}\n >\n <svg\n {...svgProps}\n aria-hidden={ariaLabel ? (ariaHidden ? ariaHidden : undefined) : true}\n aria-label={ariaLabel}\n focusable=\"false\"\n height=\"1em\"\n preserveAspectRatio=\"xMidYMid meet\"\n role=\"img\"\n viewBox=\"0 0 24 24\"\n width=\"1em\"\n >\n <path d={icon} fill=\"currentColor\" />\n </svg>\n {badge ? badge : null}\n </StyledIcon>\n );\n }\n);\nIcon.className = CLASSNAME;\nIcon.defaultProps = DEFAULT_PROPS;\nIcon.displayName = COMPONENT_NAME;\n","import { ComponentProps } from 'react';\nimport { PressEvent } from '@react-types/shared';\nimport {\n ColorPalette,\n ProductColorPalette,\n StylingProps,\n ValueOf,\n} from '~/types';\n\n/**\n * Component variant.\n */\nexport const ButtonVariant = {\n primary: 'primary',\n secondary: 'secondary',\n unstyled: 'unstyled',\n} as const;\nexport type ButtonVariant = ValueOf<typeof ButtonVariant>;\n\n/**\n * Component color.\n */\nexport type ButtonColor = ColorPalette | ProductColorPalette;\n\n/**\n * Component props.\n */\nexport interface ButtonProps extends ComponentProps<'button'>, StylingProps {\n /** Color variant. The product colors are available but should only be used to display the Button in the color of another product. To display a Button with a color of the current product, use `default`. */\n color?: ButtonColor;\n /** Whether the component take the full width or not. */\n fullWidth?: boolean;\n /** Whether the component is active or not. */\n isActive?: boolean;\n /** Whether the component is disabled or not. */\n isDisabled?: boolean;\n /** Whether the component is in a loading state or not. */\n isLoading?: boolean;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n leftIcon?: string;\n /** Preferred method to handle click, press and touch. */\n onPress?: (e: PressEvent) => void;\n /**\n * Icon path data (`d` property of the `path` SVG element).<br />\n * See <a href=\"https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths\">https://developer.mozilla.org/en-US/docs/Web/SVG/Tutorial/Paths</a>.<br />\n * Recommended path data come from mdi/js.<br />\n * See <a href=\"https://www.npmjs.com/package/@mdi/js\">https://www.npmjs.com/package/@mdi/js</a>.\n */\n rightIcon?: string;\n /** Button variant. */\n variant?: ButtonVariant;\n}\n\nexport type StyledButtonProps = Omit<\n ButtonProps,\n 'isActive' | 'isDisabled' | 'variant' | 'color' | 'size' | 'fullWidth'\n> & {\n $color: ButtonProps['color'];\n $fullWidth?: ButtonProps['fullWidth'];\n $isActive: ButtonProps['isActive'];\n $isDisabled: ButtonProps['isDisabled'];\n $variant: ButtonProps['variant'];\n};\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledButtonProps, ButtonVariant } from './types';\n\n/**\n * Component style.\n */\nexport const StyledButton = styled.button<StyledButtonProps>`\n ${baseStyling}\n\n align-items: center;\n background: none;\n border: none;\n display: flex;\n font-family: var(--redsift-typography-button-font-family);\n font-size: var(--redsift-typography-button-font-size);\n font-weight: var(--redsift-typography-button-font-weight);\n gap: 8px;\n justify-content: center;\n line-height: var(--redsift-typography-button-line-height);\n text-decoration: none;\n text-transform: var(--redsift-typography-button-text-transform);\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n padding: ${$variant === ButtonVariant.secondary ? '7px 15px' : '8px 16px'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : 'var(--redsift-color-neutral-white)'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active)`\n : $isDisabled\n ? 'none'\n : 'none'};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n }\n `\n : css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-primary-active)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : ''}\n `};\n\n &:hover,\n &:focus-visible {\n outline: none;\n\n ${({ $variant, $color, $isActive, $isDisabled }) => css`\n cursor: ${$isDisabled ? 'default' : 'pointer'};\n\n ${$variant === ButtonVariant.secondary\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-white)'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : $variant === ButtonVariant.unstyled\n ? css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-active-hover)`\n : $isDisabled\n ? 'none'\n : `var(--redsift-color-${$color}-hover)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n }\n `\n : css`\n background-color: ${$isActive\n ? `var(--redsift-color-${$color}-primary-active-hover)`\n : $isDisabled\n ? 'var(--redsift-color-neutral-lightgrey)'\n : `var(--redsift-color-${$color}-secondary)`};\n &,\n .redsift-icon {\n color: ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : 'var(--redsift-color-neutral-white)'};\n }\n `}\n\n ${$variant === ButtonVariant.secondary\n ? css`\n border: 1px solid\n ${$isDisabled\n ? 'var(--redsift-color-neutral-midgrey)'\n : `var(--redsift-color-${$color}-primary)`};\n `\n : `\n border: none;\n `}\n `};\n }\n\n ${({ $fullWidth }) =>\n $fullWidth\n ? `\n width: 100%;\n flex-grow: 1;\n\n .redsift-icon.left {\n margin-right: unset;\n }\n\n .redsift-icon.right {\n margin-left: unset;\n }\n `\n : ''}\n`;\n","import styled, { css } from 'styled-components';\nimport { StyledButton } from '~/components/button';\nimport { IconButtonVariant, StyledIconButtonProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledIconButton = styled(StyledButton)<StyledIconButtonProps>`\n ${({ $variant }) => css`\n padding: ${$variant === IconButtonVariant.secondary ? '7px' : '8px'};\n `};\n`;\n","import React, { forwardRef, RefObject, useRef } from 'react';\nimport classNames from 'classnames';\nimport { useButton } from '@react-aria/button';\nimport { AriaButtonProps } from '@react-types/button';\nimport { ColorPalette, Comp } from '~/types';\nimport { Icon } from '~/components/icon';\nimport { warnIfNoAccessibleLabelFound } from '~/utils/warnIfNoAccessibleLabelFound';\nimport { StyledIconButton } from './styles';\nimport { IconButtonProps, IconButtonVariant } from './types';\n\nconst COMPONENT_NAME = 'IconButton';\nconst CLASSNAME = 'redsift-icon-button';\nconst DEFAULT_PROPS: Partial<IconButtonProps> = {\n color: ColorPalette.default,\n height: 'fit-content',\n variant: IconButtonVariant.unstyled,\n};\n\n/**\n * The Icon Button is a component that contains only one icon as a child, without text.\n *\n * This component should use aria-label, aria-labelledby or aria-describedby to make this\n * component usable with a screen reader.\n */\nexport const IconButton: Comp<IconButtonProps, HTMLButtonElement> = forwardRef(\n (props, ref) => {\n const buttonRef = ref || useRef<HTMLButtonElement>();\n const { buttonProps, isPressed } = useButton(\n {\n ...props,\n isDisabled: props.isDisabled || props.disabled,\n preventFocusOnPress: true,\n } as AriaButtonProps<'button'>,\n buttonRef as RefObject<HTMLButtonElement>\n );\n\n const {\n className,\n color,\n disabled,\n icon,\n isActive,\n isDisabled,\n // eslint-disable-next-line @typescript-eslint/no-unused-vars\n onPress,\n variant,\n ...forwardedProps\n } = props;\n\n warnIfNoAccessibleLabelFound(props);\n\n return (\n <StyledIconButton\n {...forwardedProps}\n {...buttonProps}\n $color={isDisabled || disabled ? undefined : color}\n $isActive={isActive || isPressed}\n $isDisabled={isDisabled || disabled}\n $variant={variant}\n aria-disabled={isDisabled || disabled}\n className={classNames(IconButton.className, className)}\n disabled={isDisabled || disabled}\n ref={buttonRef as RefObject<HTMLButtonElement>}\n >\n <Icon icon={icon} color={isDisabled || disabled ? undefined : color} />\n </StyledIconButton>\n );\n }\n);\nIconButton.className = CLASSNAME;\nIconButton.defaultProps = DEFAULT_PROPS;\nIconButton.displayName = COMPONENT_NAME;\n","import { FloatingOverlay } from '@floating-ui/react';\nimport styled, { css } from 'styled-components';\nimport { DialogSize } from '../dialog/types';\nimport { StyledDialogContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContent = styled.div<StyledDialogContentProps>`\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);\n color: var(--redsift-color-neutral-black);\n display: flex;\n filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))\n drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));\n flex-direction: column;\n font-family: var(--redsift-typography-dialog-font-family);\n font-size: var(--redsift-typography-dialog-font-size);\n font-weight: var(--redsift-typography-dialog-font-weight);\n line-height: var(--redsift-typography-dialog-line-height);\n margin: 32px;\n max-width: calc(100vw - 48px);\n padding: 24px;\n width: 540px;\n z-index: var(--redsift-layout-z-index-dialog);\n\n ${({ $size }) => {\n switch ($size) {\n case DialogSize.small:\n return css`\n width: 540px;\n `;\n case DialogSize.large:\n return css`\n width: 800px;\n `;\n case DialogSize.medium:\n default:\n return css`\n width: 700px;\n `;\n }\n }}\n\n &:focus-visible {\n outline: none;\n }\n\n .redsift-dialog-content__header {\n align-items: flex-start;\n display: flex;\n justify-content: space-between;\n }\n\n .redsift-card-header__icon-button {\n margin-top: 8px;\n margin-left: auto;\n margin-right: 8px;\n\n [dir='rtl'] & {\n margin-left: 8px;\n margin-right: auto;\n }\n }\n`;\n\nexport const StyledFloatingOverlay = styled(FloatingOverlay)`\n background: rgba(0, 0, 0, 0.8);\n display: grid;\n place-items: center;\n z-index: var(--redsift-layout-z-index-overlay);\n`;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledDialogContentActionsProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContentActions = styled.div<StyledDialogContentActionsProps>`\n display: flex;\n ${baseContainer}\n\n margin-top: 8px;\n margin-bottom: 8px;\n\n &:focus-visible {\n outline: none;\n }\n`;\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { StyledDialogContentActions } from './styles';\nimport { DialogContentActionsProps } from './types';\nimport { useDialogContext } from '../dialog';\n\nconst COMPONENT_NAME = 'DialogContentActions';\nconst CLASSNAME = 'redsift-dialog-content-actions';\nconst DEFAULT_PROPS: Partial<DialogContentActionsProps> = {\n flexDirection: 'row',\n};\n\n/**\n * The DialogContentActions component.\n */\nexport const DialogContentActions: Comp<\n DialogContentActionsProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n const { actionsRef, initialFocus } = useDialogContext();\n\n return (\n <StyledDialogContentActions\n {...forwardedProps}\n className={classNames(DialogContentActions.className, className)}\n ref={useMergeRefs([ref, actionsRef])}\n tabIndex={initialFocus === 'actions' ? -1 : undefined}\n >\n {children}\n </StyledDialogContentActions>\n );\n});\nDialogContentActions.className = CLASSNAME;\nDialogContentActions.defaultProps = DEFAULT_PROPS;\nDialogContentActions.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledDialogContentBodyProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContentBody = styled.div<StyledDialogContentBodyProps>`\n ${baseContainer}\n\n overflow-y: auto;\n ${({ $marginTop, $marginBottom }) => css`\n max-height: calc(100vh - ${$marginTop + $marginBottom}px);\n `}\n\n color: var(--redsift-color-neutral-darkgrey);\n font-family: var(--redsift-typography-body2-font-family);\n font-size: var(--redsift-typography-body2-font-size);\n font-weight: var(--redsift-typography-body2-font-weight);\n line-height: var(--redsift-typography-body2-line-height);\n padding: 0 24px;\n margin: 16px -24px;\n\n &:focus-visible {\n outline: none;\n }\n\n scrollbar-color: var(--redsift-color-neutral-midgrey) transparent;\n scrollbar-width: thin;\n\n &::-webkit-scrollbar {\n block-size: 9px;\n inline-size: 9px;\n }\n\n &::-webkit-scrollbar-thumb {\n background-clip: padding-box;\n background-color: var(--redsift-color-neutral-midgrey);\n border-radius: 0px;\n border-left: 2px solid transparent;\n border-right: 2px solid transparent;\n }\n\n &::-webkit-scrollbar-track {\n background-color: transparent;\n }\n\n &::-webkit-scrollbar-thumb:horizontal,\n &::-webkit-scrollbar-thumb:vertical {\n &:hover {\n background-color: var(--redsift-color-neutral-darkgrey);\n }\n }\n\n &::-webkit-scrollbar-corner {\n visibility: hidden;\n }\n`;\n","import { useState, useEffect, MutableRefObject, DependencyList } from 'react';\n\n/**\n * Get the bounding rect of a component.\n */\nexport const useBoundingClientRect = (\n ref: MutableRefObject<HTMLElement>,\n deps?: DependencyList\n) => {\n const [boundingRect, setBoundingRect] = useState<DOMRect>({} as DOMRect);\n\n useEffect(() => {\n if (ref.current) {\n setBoundingRect(ref.current.getBoundingClientRect());\n }\n }, deps);\n\n return boundingRect;\n};\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { StyledDialogContentBody } from './styles';\nimport { DialogContentBodyProps } from './types';\nimport { useDialogContext } from '../dialog';\nimport { useBoundingClientRect } from '~/hooks/useBoundingRect';\n\nconst COMPONENT_NAME = 'DialogContentBody';\nconst CLASSNAME = 'redsift-dialog-content-body';\nconst DEFAULT_PROPS: Partial<DialogContentBodyProps> = {};\n\n/**\n * The DialogContentBody component.\n */\nexport const DialogContentBody: Comp<DialogContentBodyProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n\n const { actionsRef, bodyRef, hasCloseButton, headerRef, initialFocus } =\n useDialogContext();\n\n const { height: headerHeight = 0 } = useBoundingClientRect(\n headerRef as any,\n [children, headerRef]\n );\n const { height: actionsHeight = 0 } = useBoundingClientRect(\n actionsRef as any,\n [children, actionsRef]\n );\n\n /* istanbul ignore next */\n return (\n <StyledDialogContentBody\n {...forwardedProps}\n className={classNames(DialogContentBody.className, className)}\n ref={useMergeRefs([ref, bodyRef])}\n tabIndex={initialFocus === 'body' ? -1 : undefined}\n $marginTop={Math.max(headerHeight, hasCloseButton ? 40 : 0) + 80}\n $marginBottom={(actionsHeight === 0 ? 0 : actionsHeight + 16) + 80}\n >\n {children}\n </StyledDialogContentBody>\n );\n });\nDialogContentBody.className = CLASSNAME;\nDialogContentBody.defaultProps = DEFAULT_PROPS;\nDialogContentBody.displayName = COMPONENT_NAME;\n","import styled, { css } from 'styled-components';\nimport { baseStyling } from '~/components/shared';\nimport { StyledHeadingProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledHeading = styled.span<StyledHeadingProps>`\n margin: 0;\n padding: 0;\n border: 0;\n font-size: 100%;\n font: inherit;\n vertical-align: baseline;\n\n ${baseStyling}\n\n ${({ $variant }) =>\n $variant === 'h1'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h1-font-family);\n font-size: var(--redsift-typography-h1-font-size);\n font-weight: var(--redsift-typography-h1-font-weight);\n line-height: var(--redsift-typography-h1-line-height);\n text-transform: var(--redsift-typography-h1-text-transform);\n `\n : $variant === 'h2'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h2-font-family);\n font-size: var(--redsift-typography-h2-font-size);\n font-weight: var(--redsift-typography-h2-font-weight);\n line-height: var(--redsift-typography-h2-line-height);\n `\n : $variant === 'h3'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h3-font-family);\n font-size: var(--redsift-typography-h3-font-size);\n font-weight: var(--redsift-typography-h3-font-weight);\n line-height: var(--redsift-typography-h3-line-height);\n `\n : $variant === 'h4'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h4-font-family);\n font-size: var(--redsift-typography-h4-font-size);\n font-weight: var(--redsift-typography-h4-font-weight);\n line-height: var(--redsift-typography-h4-line-height);\n `\n : $variant === 'h5'\n ? css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-h5-font-family);\n font-size: var(--redsift-typography-h5-font-size);\n font-weight: var(--redsift-typography-h5-font-weight);\n line-height: var(--redsift-typography-h5-line-height);\n `\n : css`\n color: var(--redsift-color-neutral-black);\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n `}\n\n ${({ $noWrap }) =>\n $noWrap\n ? css`\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `\n : css`\n word-break: break-word;\n `}\n`;\n","import React, { forwardRef, RefObject } from 'react';\nimport classNames from 'classnames';\nimport { Comp } from '~/types';\nimport { StyledHeading } from './styles';\nimport { HeadingProps } from './types';\n\nconst COMPONENT_NAME = 'Heading';\nconst CLASSNAME = 'redsift-heading';\nconst DEFAULT_PROPS: Partial<HeadingProps> = {};\n\n/**\n * The Heading component.\n */\nexport const Heading: Comp<HeadingProps, HTMLDivElement> = forwardRef(\n (props, ref) => {\n const { as, children, className, noWrap, variant, ...forwardedProps } =\n props;\n\n return (\n <StyledHeading\n as={as}\n {...forwardedProps}\n className={classNames(Heading.className, className)}\n ref={ref as RefObject<HTMLDivElement>}\n $noWrap={noWrap}\n $variant={variant ? variant : as === 'span' ? 'body' : as}\n >\n {children}\n </StyledHeading>\n );\n }\n);\nHeading.className = CLASSNAME;\nHeading.defaultProps = DEFAULT_PROPS;\nHeading.displayName = COMPONENT_NAME;\n","import styled from 'styled-components';\nimport { StyledDialogContentHeaderProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledDialogContentHeader = styled.div<StyledDialogContentHeaderProps>`\n color: var(--redsift-color-neutral-black);\n\n &:focus-visible {\n outline: none;\n }\n\n .redsift-dialog-content-header__header {\n align-items: center;\n display: flex;\n gap: 8px;\n padding: 10px 0px;\n margin: 0px;\n\n .redsift-icon {\n color: var(--redsift-color-neutral-black);\n padding-right: 8px;\n font-size: 30px;\n line-height: 30px;\n height: 30px;\n }\n }\n\n .redsift-dialog-content-header__subheader {\n font-family: var(--redsift-typography-body-font-family);\n font-size: var(--redsift-typography-body-font-size);\n font-weight: var(--redsift-typography-body-font-weight);\n line-height: var(--redsift-typography-body-line-height);\n }\n`;\n","import React, { forwardRef, useId } from 'react';\nimport classNames from 'classnames';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Icon } from '~/components/icon';\nimport { Heading } from '~/components/heading';\nimport { Comp } from '~/types';\nimport { StyledDialogContentHeader } from './styles';\nimport { DialogContentHeaderProps } from './types';\nimport { useDialogContext } from '../dialog';\n\nconst COMPONENT_NAME = 'DialogContentHeader';\nconst CLASSNAME = 'redsift-dialog-content-header';\nconst DEFAULT_PROPS: Partial<DialogContentHeaderProps> = {};\n\n/**\n * The DialogContentHeader component.\n */\nexport const DialogContentHeader: Comp<\n DialogContentHeaderProps,\n HTMLDivElement\n> = forwardRef((props, ref) => {\n const {\n children,\n className,\n header,\n headingProps,\n icon,\n subheader,\n ...forwardedProps\n } = props;\n\n const { setLabelId, setDescriptionId, headerRef, initialFocus } =\n useDialogContext();\n const labelId = useId();\n const descriptionId = useId();\n\n // Only sets `aria-labelledby` on the Dialog root element\n // if this component is mounted inside it.\n React.useLayoutEffect(() => {\n setLabelId(labelId);\n return () => setLabelId(undefined);\n }, [labelId, setLabelId]);\n\n // Only sets `aria-describedby` on the Dialog root element\n // if this component is mounted inside it.\n React.useLayoutEffect(() => {\n setDescriptionId(descriptionId);\n return () => setDescriptionId(undefined);\n }, [descriptionId, setDescriptionId]);\n\n return (\n <StyledDialogContentHeader\n {...forwardedProps}\n className={classNames(DialogContentHeader.className, className)}\n ref={useMergeRefs([ref, headerRef])}\n tabIndex={initialFocus === 'header' ? -1 : undefined}\n >\n {subheader ? (\n <div className={`${DialogContentHeader.className}__subheader`}>\n {subheader}\n </div>\n ) : null}\n {header ? (\n <Heading\n as=\"h2\"\n color=\"black\"\n className={`${DialogContentHeader.className}__header`}\n id={labelId}\n variant=\"h2\"\n {...headingProps}\n >\n {icon ? <Icon icon={icon} aria-hidden=\"true\" /> : null}\n {header}\n </Heading>\n ) : null}\n {children ? <div id={descriptionId}>{children}</div> : null}\n </StyledDialogContentHeader>\n );\n});\nDialogContentHeader.className = CLASSNAME;\nDialogContentHeader.defaultProps = DEFAULT_PROPS;\nDialogContentHeader.displayName = COMPONENT_NAME;\n","import React, { forwardRef } from 'react';\nimport classNames from 'classnames';\nimport {\n useMergeRefs,\n FloatingPortal,\n FloatingFocusManager,\n useTransitionStyles,\n} from '@floating-ui/react';\nimport { mdiClose } from '@redsift/icons';\n\nimport { useLocalizedStringFormatter } from '@react-aria/i18n';\nimport intlMessages from './intl';\n\nimport { Comp } from '~/types';\nimport { isComponent, partitionComponents } from '~/utils';\nimport { IconButton } from '~/components/icon-button';\nimport { DialogContentProps } from './types';\nimport { useDialogContext } from '../dialog';\nimport { StyledDialogContent, StyledFloatingOverlay } from './styles';\nimport { DialogContentActions } from '../dialog-content-actions';\nimport { DialogContentBody } from '../dialog-content-body';\nimport { DialogContentHeader } from '../dialog-content-header';\n\nconst COMPONENT_NAME = 'DialogContent';\nconst CLASSNAME = 'redsift-dialog-content';\nconst DEFAULT_PROPS: Partial<DialogContentProps> = {};\n\n/**\n * The DialogContent component.\n */\nexport const BaseDialogContent: Comp<DialogContentProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, ...forwardedProps } = props;\n const {\n context: floatingContext,\n getFloatingProps,\n refs,\n labelId,\n descriptionId,\n handleOpen,\n hasCloseButton,\n initialFocus: propsInitialFocus,\n size,\n headerRef,\n bodyRef,\n actionsRef,\n } = useDialogContext();\n const { isMounted, styles } = useTransitionStyles(floatingContext);\n const dialogRef = useMergeRefs([refs.setFloating, ref]);\n\n const stringFormatter = useLocalizedStringFormatter(intlMessages);\n\n const [[header], [body], [actions]] = partitionComponents(\n React.Children.toArray(children),\n [\n isComponent('DialogContentHeader'),\n isComponent('DialogContentBody'),\n isComponent('DialogContentActions'),\n ]\n );\n\n const initialFocus:\n | number\n | React.MutableRefObject<HTMLElement | null>\n | undefined =\n propsInitialFocus === 'header'\n ? headerRef\n : propsInitialFocus === 'body'\n ? bodyRef\n : propsInitialFocus === 'actions'\n ? actionsRef\n : propsInitialFocus\n ? propsInitialFocus\n : undefined;\n\n return (\n <FloatingPortal>\n {isMounted && (\n <StyledFloatingOverlay lockScroll style={styles}>\n <FloatingFocusManager\n context={floatingContext}\n initialFocus={initialFocus ? initialFocus : undefined}\n >\n <StyledDialogContent\n className={classNames(DialogContent.className, className)}\n {...forwardedProps}\n ref={dialogRef}\n aria-labelledby={labelId}\n aria-describedby={descriptionId}\n {...getFloatingProps(props)}\n style={styles}\n $size={size!}\n >\n {header || hasCloseButton ? (\n <div className={`${BaseDialogContent.className}__header`}>\n {header}\n\n {hasCloseButton ? (\n <IconButton\n aria-label={stringFormatter.format('close')}\n className={`${BaseDialogContent.className}-header__icon-button`}\n color=\"question\"\n icon={mdiClose}\n onPress={() => handleOpen(false)}\n />\n ) : null}\n </div>\n ) : null}\n\n {body || actions ? (\n <div className={`${BaseDialogContent.className}__content`}>\n {body}\n {actions}\n </div>\n ) : null}\n </StyledDialogContent>\n </FloatingFocusManager>\n </StyledFloatingOverlay>\n )}\n </FloatingPortal>\n );\n });\nBaseDialogContent.className = CLASSNAME;\nBaseDialogContent.defaultProps = DEFAULT_PROPS;\nBaseDialogContent.displayName = COMPONENT_NAME;\n\nexport const DialogContent = Object.assign(BaseDialogContent, {\n Header: DialogContentHeader,\n Body: DialogContentBody,\n Actions: DialogContentActions,\n});\n","import React, { forwardRef, ReactElement } from 'react';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { useDialogContext } from '../dialog';\nimport { DialogTriggerProps } from './types';\nimport { isComponent } from '~/utils';\n\nconst COMPONENT_NAME = 'DialogTrigger';\nconst CLASSNAME = 'redsift-dialog-trigger';\nconst DEFAULT_PROPS: Partial<DialogTriggerProps> = {};\n\n/**\n * The DialogTrigger component.\n */\nexport const DialogTrigger: Comp<DialogTriggerProps, HTMLButtonElement> =\n forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = useDialogContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n if (\n isComponent('Button')(children) ||\n isComponent('IconButton')(children) ||\n isComponent('LinkButton')(children)\n ) {\n return React.cloneElement(children, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(children as ReactElement).props,\n }),\n onPress: () => handleOpen(!isOpen),\n isActive: isOpen,\n });\n }\n\n return <>{children}</>;\n });\nDialogTrigger.className = CLASSNAME;\nDialogTrigger.defaultProps = DEFAULT_PROPS;\nDialogTrigger.displayName = COMPONENT_NAME;\n","import React, { useCallback, useEffect, useRef, useState } from 'react';\nimport {\n useFloating,\n useDismiss,\n useRole,\n useInteractions,\n} from '@floating-ui/react';\nimport { DialogProps } from './types';\n\nexport function useDialog({\n defaultOpen,\n hasCloseButton,\n initialFocus,\n isOpen: propsIsOpen,\n onOpen,\n size,\n}: Omit<DialogProps, 'children'>) {\n const headerRef = useRef(null);\n const bodyRef = useRef(null);\n const actionsRef = useRef(null);\n const [labelId, setLabelId] = React.useState<string | undefined>();\n const [descriptionId, setDescriptionId] =\n React.useState<string | undefined>();\n\n const [isOpen, setIsOpen] = useState(propsIsOpen ?? defaultOpen);\n\n useEffect(() => {\n setIsOpen(propsIsOpen ?? defaultOpen);\n }, [propsIsOpen, defaultOpen]);\n\n const handleOpen = useCallback(\n (collapsed: boolean) => {\n if (onOpen) {\n onOpen(collapsed);\n }\n if (propsIsOpen === undefined || propsIsOpen === null) {\n setIsOpen(collapsed);\n }\n },\n [onOpen]\n );\n\n const data = useFloating({\n open: isOpen,\n onOpenChange: handleOpen,\n });\n\n const context = data.context;\n\n const dismiss = useDismiss(context, { outsidePressEvent: 'mousedown' });\n const role = useRole(context);\n\n const interactions = useInteractions([dismiss, role]);\n\n return React.useMemo(\n () => ({\n isOpen,\n handleOpen,\n ...interactions,\n ...data,\n labelId,\n descriptionId,\n setLabelId,\n setDescriptionId,\n hasCloseButton,\n initialFocus,\n size,\n headerRef,\n bodyRef,\n actionsRef,\n }),\n [\n isOpen,\n handleOpen,\n interactions,\n data,\n labelId,\n descriptionId,\n hasCloseButton,\n initialFocus,\n size,\n headerRef,\n bodyRef,\n actionsRef,\n ]\n );\n}\n","import React from 'react';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { DialogContent } from '../dialog-content';\nimport { DialogTrigger } from '../dialog-trigger';\n\nimport { DialogContext } from './context';\nimport { DialogProps, DialogSize } from './types';\nimport { useDialog } from './useDialog';\n\nconst COMPONENT_NAME = 'Dialog';\nconst CLASSNAME = 'redsift-dialog';\nconst DEFAULT_PROPS: Partial<DialogProps> = {\n hasCloseButton: true,\n size: DialogSize.medium,\n};\n\n/**\n * The Dialog component.\n */\nexport const BaseDialog: React.FC<DialogProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const {\n children,\n defaultOpen,\n hasCloseButton,\n initialFocus,\n isOpen,\n onOpen,\n size,\n } = props;\n\n const dialog = useDialog({\n defaultOpen,\n hasCloseButton,\n initialFocus,\n isOpen,\n onOpen,\n size,\n });\n\n const [[trigger], [content]] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('DialogTrigger'), isComponent('DialogContent')]\n );\n\n return (\n <DialogContext.Provider value={dialog}>\n {trigger}\n {content}\n </DialogContext.Provider>\n );\n};\nBaseDialog.className = CLASSNAME;\nBaseDialog.defaultProps = DEFAULT_PROPS;\nBaseDialog.displayName = COMPONENT_NAME;\n\nexport const Dialog = Object.assign(BaseDialog, {\n Trigger: DialogTrigger,\n Content: DialogContent,\n});\n","import React from 'react';\nimport { DialogContext } from './context';\n\nexport const useDialogContext = () => {\n const context = React.useContext(DialogContext);\n\n if (context == null) {\n throw new Error('Dialog components must be wrapped in <Dialog />');\n }\n\n return context;\n};\n","import React from 'react';\nimport { PopoverState } from './types';\n\nexport const PopoverContext = React.createContext<PopoverState | null>(null);\n","import { ReactNode } from 'react';\nimport { ValueOf } from '~/types';\nimport { usePopover } from './usePopover';\n\n/**\n * Context props.\n */\nexport type PopoverState = ReturnType<typeof usePopover> | null;\n\n/**\n * Component variant.\n */\nexport const PopoverPlacement = {\n top: 'top',\n right: 'right',\n bottom: 'bottom',\n left: 'left',\n 'top-start': 'top-start',\n 'top-end': 'top-end',\n 'right-start': 'right-start',\n 'right-end': 'right-end',\n 'bottom-start': 'bottom-start',\n 'bottom-end': 'bottom-end',\n 'left-start': 'left-start',\n 'left-end': 'left-end',\n} as const;\nexport type PopoverPlacement = ValueOf<typeof PopoverPlacement>;\n\n/**\n * Component props.\n */\nexport interface PopoverProps {\n /** Children. Can only be PopoverTrigger and PopoverContent. */\n children: ReactNode;\n /**\n * Default open status.\n * Used for uncontrolled version.\n */\n defaultOpen?: boolean;\n /** Default placement of the popover. */\n placement?: PopoverPlacement;\n /** Whether the popover is a modal or not. */\n isModal?: boolean;\n /**\n * Whether the component is opened or not.\n * Used for controlled version.\n */\n isOpen?: boolean;\n /** Method to handle component change. */\n onOpen?: (open: boolean) => void;\n}\n\nexport type StyledPopoverProps = PopoverProps;\n","import styled from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { StyledPopoverContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledPopoverContent = styled.div<StyledPopoverContentProps>`\n ${baseContainer}\n align-items: center;\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);\n color: var(--redsift-color-neutral-black);\n display: flex;\n filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))\n drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));\n font-family: var(--redsift-typography-popover-font-family);\n font-size: var(--redsift-typography-popover-font-size);\n font-weight: var(--redsift-typography-popover-font-weight);\n line-height: var(--redsift-typography-popover-line-height);\n max-width: calc(100vw - 48px);\n z-index: var(--redsift-layout-z-index-popover);\n\n &:focus-visible {\n outline: none;\n }\n`;\n","import React, { forwardRef } from 'react';\nimport {\n useMergeRefs,\n FloatingPortal,\n FloatingFocusManager,\n} from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { PopoverContentProps } from './types';\nimport { usePopoverContext } from '../popover';\nimport { StyledPopoverContent } from './styles';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'PopoverContent';\nconst CLASSNAME = 'redsift-popover-content';\nconst DEFAULT_PROPS: Partial<PopoverContentProps> = {};\n\n/**\n * The PopoverContent component.\n */\nexport const PopoverContent: Comp<PopoverContentProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, style } = props;\n const {\n context: floatingContext,\n getFloatingProps,\n isModal,\n isOpen,\n refs,\n strategy,\n x,\n y,\n } = usePopoverContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n return (\n <FloatingPortal>\n {isOpen && (\n <FloatingFocusManager context={floatingContext} modal={isModal}>\n <StyledPopoverContent\n className={classNames(PopoverContent.className, className)}\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n width: 'fit-content',\n ...style,\n }}\n {...getFloatingProps(props)}\n >\n {children}\n </StyledPopoverContent>\n </FloatingFocusManager>\n )}\n </FloatingPortal>\n );\n });\nPopoverContent.className = CLASSNAME;\nPopoverContent.defaultProps = DEFAULT_PROPS;\nPopoverContent.displayName = COMPONENT_NAME;\n","import React, { forwardRef, ReactElement } from 'react';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { usePopoverContext } from '../popover';\nimport { PopoverTriggerProps } from './types';\nimport { isComponent } from '~/utils';\n\nconst COMPONENT_NAME = 'PopoverTrigger';\nconst CLASSNAME = 'redsift-popover-trigger';\nconst DEFAULT_PROPS: Partial<PopoverTriggerProps> = {};\n\n/**\n * The PopoverTrigger component.\n */\nexport const PopoverTrigger: Comp<PopoverTriggerProps, HTMLButtonElement> =\n forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, isOpen, handleOpen, refs } = usePopoverContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n if (\n isComponent('Button')(children) ||\n isComponent('IconButton')(children) ||\n isComponent('LinkButton')(children)\n ) {\n return React.cloneElement(children, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n ...(children as ReactElement).props,\n }),\n onPress: () => handleOpen(!isOpen),\n isActive: isOpen,\n });\n }\n\n return <>{children}</>;\n });\nPopoverTrigger.className = CLASSNAME;\nPopoverTrigger.defaultProps = DEFAULT_PROPS;\nPopoverTrigger.displayName = COMPONENT_NAME;\n","import React, { useCallback, useEffect, useState } from 'react';\nimport {\n useFloating,\n autoUpdate,\n offset,\n flip,\n shift,\n useDismiss,\n useRole,\n useInteractions,\n} from '@floating-ui/react';\nimport { PopoverProps } from './types';\n\nexport function usePopover({\n defaultOpen,\n placement,\n isModal,\n isOpen: propsIsOpen,\n onOpen,\n}: Omit<PopoverProps, 'children'>) {\n const [isOpen, setIsOpen] = useState(propsIsOpen ?? defaultOpen);\n\n useEffect(() => {\n setIsOpen(propsIsOpen ?? defaultOpen);\n }, [propsIsOpen, defaultOpen]);\n\n const handleOpen = useCallback(\n (collapsed: boolean) => {\n if (onOpen) {\n onOpen(collapsed);\n }\n if (propsIsOpen === undefined || propsIsOpen === null) {\n setIsOpen(collapsed);\n }\n },\n [onOpen]\n );\n\n const data = useFloating({\n placement,\n open: isOpen,\n onOpenChange: handleOpen,\n whileElementsMounted: autoUpdate,\n middleware: [\n offset(2),\n flip({\n fallbackAxisSideDirection: 'end',\n }),\n shift({ padding: 2 }),\n ],\n });\n\n const context = data.context;\n\n const dismiss = useDismiss(context);\n const role = useRole(context);\n\n const interactions = useInteractions([dismiss, role]);\n\n return React.useMemo(\n () => ({\n isOpen,\n handleOpen,\n ...interactions,\n ...data,\n isModal,\n }),\n [isOpen, handleOpen, interactions, data, isModal]\n );\n}\n","import React from 'react';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { PopoverContent } from '../popover-content';\nimport { PopoverTrigger } from '../popover-trigger';\n\nimport { PopoverContext } from './context';\nimport { PopoverPlacement, PopoverProps } from './types';\nimport { usePopover } from './usePopover';\n\nconst COMPONENT_NAME = 'Popover';\nconst CLASSNAME = 'redsift-popover';\nconst DEFAULT_PROPS: Partial<PopoverProps> = {\n isModal: false,\n placement: PopoverPlacement.bottom,\n};\n\n/**\n * The Popover component.\n */\nexport const BasePopover: React.FC<PopoverProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { children, defaultOpen, placement, isModal, isOpen, onOpen } = props;\n\n const popover = usePopover({\n defaultOpen,\n placement,\n isModal,\n isOpen,\n onOpen,\n });\n\n const [[trigger], [content]] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('PopoverTrigger'), isComponent('PopoverContent')]\n );\n\n return (\n <PopoverContext.Provider value={popover}>\n {trigger}\n {content}\n </PopoverContext.Provider>\n );\n};\nBasePopover.className = CLASSNAME;\nBasePopover.defaultProps = DEFAULT_PROPS;\nBasePopover.displayName = COMPONENT_NAME;\n\nexport const Popover = Object.assign(BasePopover, {\n Trigger: PopoverTrigger,\n Content: PopoverContent,\n});\n","import React from 'react';\nimport { PopoverContext } from './context';\n\nexport const usePopoverContext = () => {\n const context = React.useContext(PopoverContext);\n\n if (context == null) {\n throw new Error('Popover components must be wrapped in <Popover />');\n }\n\n return context;\n};\n","import React from 'react';\nimport { TooltipState } from './types';\n\nexport const TooltipContext = React.createContext<TooltipState | null>(null);\n","import { ReactNode } from 'react';\nimport { ValueOf } from '~/types';\nimport { useTooltip } from './useTooltip';\n\n/**\n * Context props.\n */\nexport type TooltipState = ReturnType<typeof useTooltip> | null;\n\n/**\n * Component variant.\n */\nexport const TooltipPlacement = {\n top: 'top',\n right: 'right',\n bottom: 'bottom',\n left: 'left',\n 'top-start': 'top-start',\n 'top-end': 'top-end',\n 'right-start': 'right-start',\n 'right-end': 'right-end',\n 'bottom-start': 'bottom-start',\n 'bottom-end': 'bottom-end',\n 'left-start': 'left-start',\n 'left-end': 'left-end',\n} as const;\nexport type TooltipPlacement = ValueOf<typeof TooltipPlacement>;\n\n/**\n * Component props.\n */\nexport interface TooltipProps {\n /** Children. Can only be TooltipTrigger and TooltilContent. */\n children: ReactNode;\n /**\n * Default open status.\n * Used for uncontrolled version.\n */\n defaultOpen?: boolean;\n /** Delay time (in ms) for the tooltip to show up. */\n delay?: number;\n /** Default placement of the tooltip. */\n placement?: TooltipPlacement;\n /**\n * Whether the component is opened or not.\n * Used for controlled version.\n */\n isOpen?: boolean;\n /** Method to handle component change. */\n onOpen?: (open: boolean) => void;\n /** Id to the tooltip content. */\n tooltipId?: string;\n}\n\nexport type StyledTooltipProps = TooltipProps;\n","import styled, { css } from 'styled-components';\nimport { baseContainer } from '~/components/shared';\nimport { TooltipPlacement } from '../tooltip';\nimport { StyledTooltipContentProps } from './types';\n\n/**\n * Component style.\n */\nexport const StyledTooltipContent = styled.div<StyledTooltipContentProps>`\n ${baseContainer}\n\n align-items: center;\n background-color: var(--redsift-color-neutral-white);\n box-shadow: 0px 2px 4px -1px rgba(0, 0, 0, 0.2);\n color: var(--redsift-color-neutral-black);\n display: flex;\n filter: drop-shadow(0px 4px 5px rgba(0, 0, 0, 0.14))\n drop-shadow(0px 1px 10px rgba(0, 0, 0, 0.12));\n font-family: var(--redsift-typography-tooltip-font-family);\n font-size: var(--redsift-typography-tooltip-font-size);\n font-weight: var(--redsift-typography-tooltip-font-weight);\n line-height: var(--redsift-typography-tooltip-line-height);\n max-width: calc(100vw - 48px);\n padding: 4px 8px;\n z-index: var(--redsift-layout-z-index-tooltip);\n\n .redsift-tooltip-content__arrow {\n position: absolute;\n width: 0;\n height: 0;\n border-color: var(--redsift-color-neutral-white);\n border-style: solid;\n }\n\n ${({ $placement }) => {\n switch ($placement) {\n case TooltipPlacement.left:\n case TooltipPlacement['left-end']:\n case TooltipPlacement['left-start']:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 6px 0 6px 6px;\n border-top-color: transparent;\n border-right-color: transparent;\n border-bottom-color: transparent;\n }\n `;\n case TooltipPlacement.top:\n case TooltipPlacement['top-end']:\n case TooltipPlacement['top-start']:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 6px 6px 0;\n border-right-color: transparent;\n border-bottom-color: transparent;\n border-left-color: transparent;\n }\n `;\n case TooltipPlacement.right:\n case TooltipPlacement['right-end']:\n case TooltipPlacement['right-start']:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 6px 6px 6px 0;\n border-top-color: transparent;\n border-bottom-color: transparent;\n border-left-color: transparent;\n }\n `;\n case TooltipPlacement.bottom:\n case TooltipPlacement['bottom-end']:\n case TooltipPlacement['bottom-start']:\n default:\n return css`\n .redsift-tooltip-content__arrow {\n border-width: 0 6px 6px;\n border-top-color: transparent;\n border-right-color: transparent;\n border-left-color: transparent;\n }\n `;\n }\n }}\n`;\n","import React, { forwardRef } from 'react';\nimport { useMergeRefs, FloatingPortal } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { TooltipContentProps } from './types';\nimport { TooltipPlacement, useTooltipContext } from '../tooltip';\nimport { StyledTooltipContent } from './styles';\nimport classNames from 'classnames';\n\nconst COMPONENT_NAME = 'TooltipContent';\nconst CLASSNAME = 'redsift-tooltip-content';\nconst DEFAULT_PROPS: Partial<TooltipContentProps> = {};\n\n/**\n * The TooltipContent component.\n */\nexport const TooltipContent: Comp<TooltipContentProps, HTMLDivElement> =\n forwardRef((props, ref) => {\n const { children, className, style } = props;\n const {\n getFloatingProps,\n isOpen,\n placement,\n refs,\n strategy,\n tooltipId,\n x,\n y,\n middlewareData: { arrow: { x: arrowX, y: arrowY } = {} },\n } = useTooltipContext();\n const popoverRef = useMergeRefs([refs.setFloating, ref]);\n\n const { arrowRef } = useTooltipContext();\n\n const staticSide = {\n top: 'bottom',\n right: 'left',\n bottom: 'top',\n left: 'right',\n }[placement.split('-')[0]];\n\n return (\n <FloatingPortal id={tooltipId}>\n {isOpen && (\n <StyledTooltipContent\n className={classNames(TooltipContent.className, className)}\n ref={popoverRef}\n style={{\n position: strategy,\n top: y ?? 0,\n left: x ?? 0,\n visibility: x == null ? 'hidden' : 'visible',\n ...style,\n }}\n {...getFloatingProps(props)}\n $placement={placement as TooltipPlacement}\n >\n <div\n ref={arrowRef}\n className={`${TooltipContent.className}__arrow`}\n style={{\n left: arrowX != null ? `${arrowX}px` : '',\n top: arrowY != null ? `${arrowY}px` : '',\n [staticSide!]: '-6px',\n }}\n />\n <div className={`${TooltipContent.className}__inner`}>\n {children}\n </div>\n </StyledTooltipContent>\n )}\n </FloatingPortal>\n );\n });\nTooltipContent.className = CLASSNAME;\nTooltipContent.defaultProps = DEFAULT_PROPS;\nTooltipContent.displayName = COMPONENT_NAME;\n","import React, { forwardRef, ReactElement } from 'react';\nimport { useMergeRefs } from '@floating-ui/react';\n\nimport { Comp } from '~/types';\nimport { useTooltipContext } from '../tooltip';\nimport { TooltipTriggerProps } from './types';\n\nconst COMPONENT_NAME = 'TooltipTrigger';\nconst CLASSNAME = 'redsift-tooltip-trigger';\nconst DEFAULT_PROPS: Partial<TooltipTriggerProps> = {};\n\n/**\n * The TooltipTrigger component.\n */\nexport const TooltipTrigger: Comp<TooltipTriggerProps, HTMLSpanElement> =\n forwardRef((props, ref) => {\n const { children } = props;\n\n const { getReferenceProps, refs, tooltipId } = useTooltipContext();\n const childrenRef = (children as any).ref;\n const triggerRef = useMergeRefs([refs.setReference, ref, childrenRef]);\n\n if (React.isValidElement(children)) {\n return React.cloneElement(children as ReactElement, {\n ...getReferenceProps({\n ref: triggerRef,\n ...props,\n 'aria-describedby': tooltipId,\n ...children.props,\n }),\n });\n }\n\n return (\n <span ref={triggerRef} {...getReferenceProps(props)}>\n {children}\n </span>\n );\n });\nTooltipTrigger.className = CLASSNAME;\nTooltipTrigger.defaultProps = DEFAULT_PROPS;\nTooltipTrigger.displayName = COMPONENT_NAME;\n","import React, { useCallback, useEffect, useId, useRef, useState } from 'react';\nimport {\n useFloating,\n arrow,\n autoUpdate,\n offset,\n flip,\n shift,\n useHover,\n useFocus,\n useDismiss,\n useRole,\n useInteractions,\n} from '@floating-ui/react';\nimport { TooltipProps } from './types';\n\nexport function useTooltip({\n defaultOpen,\n delay,\n placement,\n isOpen: propsIsOpen,\n onOpen,\n tooltipId: propsTooltipId,\n}: Omit<TooltipProps, 'children'>) {\n const arrowRef = useRef(null);\n const [isOpen, setIsOpen] = useState(propsIsOpen ?? defaultOpen);\n\n const tooltipId = propsTooltipId ?? useId();\n\n useEffect(() => {\n setIsOpen(propsIsOpen ?? defaultOpen);\n }, [propsIsOpen, defaultOpen]);\n\n const handleOpen = useCallback(\n (collapsed: boolean) => {\n if (onOpen) {\n onOpen(collapsed);\n }\n if (propsIsOpen === undefined || propsIsOpen === null) {\n setIsOpen(collapsed);\n }\n },\n [onOpen]\n );\n\n const data = useFloating({\n placement,\n open: isOpen,\n onOpenChange: handleOpen,\n whileElementsMounted: autoUpdate,\n middleware: [\n offset(8),\n flip({\n fallbackAxisSideDirection: 'start',\n }),\n shift({ padding: 8 }),\n arrow({\n element: arrowRef,\n }),\n ],\n });\n\n const context = data.context;\n\n const hover = useHover(context, {\n move: false,\n delay: {\n open: delay,\n close: 0,\n },\n });\n const focus = useFocus(context);\n const dismiss = useDismiss(context);\n const role = useRole(context, { role: 'tooltip' });\n\n const interactions = useInteractions([hover, focus, dismiss, role]);\n\n return React.useMemo(\n () => ({\n isOpen,\n handleOpen,\n ...interactions,\n ...data,\n arrowRef,\n tooltipId,\n }),\n [isOpen, handleOpen, interactions, data, arrowRef, tooltipId]\n );\n}\n","import React from 'react';\nimport { partitionComponents, isComponent } from '~/utils';\nimport { TooltipContent } from '../tooltip-content';\nimport { TooltipTrigger } from '../tooltip-trigger';\n\nimport { TooltipContext } from './context';\nimport { TooltipPlacement, TooltipProps } from './types';\nimport { useTooltip } from './useTooltip';\n\nconst COMPONENT_NAME = 'Tooltip';\nconst CLASSNAME = 'redsift-tooltip';\nconst DEFAULT_PROPS: Partial<TooltipProps> = {\n delay: 500,\n placement: TooltipPlacement.top,\n};\n\n/**\n * The Tooltip component.\n */\nexport const BaseTooltip: React.FC<TooltipProps> & {\n displayName?: string;\n className?: string;\n} = (props) => {\n const { children, defaultOpen, delay, isOpen, onOpen, placement, tooltipId } =\n props;\n\n const tooltip = useTooltip({\n defaultOpen,\n delay,\n placement,\n isOpen,\n onOpen,\n tooltipId,\n });\n\n const [[trigger], [content]] = partitionComponents(\n React.Children.toArray(children),\n [isComponent('TooltipTrigger'), isComponent('TooltipContent')]\n );\n\n return (\n <TooltipContext.Provider value={tooltip}>\n {trigger}\n {content}\n </TooltipContext.Provider>\n );\n};\nBaseTooltip.className = CLASSNAME;\nBaseTooltip.defaultProps = DEFAULT_PROPS;\nBaseTooltip.displayName = COMPONENT_NAME;\n\nexport const Tooltip = Object.assign(BaseTooltip, {\n Trigger: TooltipTrigger,\n Content: TooltipContent,\n});\n","import React from 'react';\nimport { TooltipContext } from './context';\n\nexport const useTooltipContext = () => {\n const context = React.useContext(TooltipContext);\n\n if (context == null) {\n throw new Error('Tooltip components must be wrapped in <Tooltip />');\n }\n\n return context;\n};\n"],"names":["DialogContext","React","createContext","DialogSize","small","medium","large","isComponent","component","instance","componentName","displayName","isValidElement","type","partitionComponents","components","predicates","elements","map","forEach","found","predicate","index","push","length","warnIfNoAccessibleLabelFound","props","additionalKeysToCheck","ariaLabel","ariaLabelledby","hasText","filter","key","hasAriaLabel","Boolean","console","warn","$89yE2$react","$89yE2$useContext","$89yE2$useState","$89yE2$useLayoutEffect","$iFADg$useIsSSR","$iFADg$useState","$iFADg$useEffect","$iFADg$react","$iFADg$useContext","$iFADg$LocalizedStringDictionary","$iFADg$useMemo","$iFADg$LocalizedStringFormatter","enUS","frFR","IconButtonVariant","primary","secondary","unstyled","ColorPalette","default","success","error","warning","info","question","ProductColorPalette","website","ondmarc","oninbox","ondomain","hardenize","tools","IconSize","xsmall","xlarge","baseLayout","css","flex","flexGrow","flexShrink","flexBasis","alignSelf","justifySelf","order","gridArea","gridColumn","gridRow","gridColumnStart","gridColumnEnd","gridRowStart","gridRowEnd","baseSpacing","margin","marginBottom","marginLeft","marginRight","marginTop","baseInternalSpacing","padding","paddingBottom","paddingLeft","paddingRight","paddingTop","baseSizing","height","maxHeight","maxWidth","minHeight","minWidth","width","basePositioning","position","top","bottom","left","right","zIndex","baseFlexbox","alignContent","alignItems","flexDirection","flexWrap","gap","justifyContent","baseGrid","gridAutoColumns","gridAutoRows","gridTemplateAreas","gridTemplateColumns","gridTemplateRows","justifyItems","baseStyling","baseContainer","display","StyledIcon","styled","span","$color","Object","keys","indexOf","$size","COMPONENT_NAME","CLASSNAME","DEFAULT_PROPS","size","Icon","forwardRef","ref","ariaHidden","badge","className","color","icon","svgProps","forwardedProps","_excluded","undefined","classNames","defaultProps","ButtonVariant","StyledButton","button","$variant","$isActive","$isDisabled","$fullWidth","StyledIconButton","variant","IconButton","buttonRef","useRef","buttonProps","isPressed","useButton","_objectSpread","isDisabled","disabled","preventFocusOnPress","isActive","onPress","StyledDialogContent","div","StyledFloatingOverlay","FloatingOverlay","StyledDialogContentActions","DialogContentActions","children","actionsRef","initialFocus","useDialogContext","useMergeRefs","StyledDialogContentBody","$marginTop","$marginBottom","useBoundingClientRect","deps","boundingRect","setBoundingRect","useState","useEffect","current","getBoundingClientRect","DialogContentBody","bodyRef","hasCloseButton","headerRef","headerHeight","actionsHeight","Math","max","StyledHeading","$noWrap","Heading","as","noWrap","StyledDialogContentHeader","DialogContentHeader","header","headingProps","subheader","setLabelId","setDescriptionId","labelId","useId","descriptionId","useLayoutEffect","BaseDialogContent","context","floatingContext","getFloatingProps","refs","handleOpen","propsInitialFocus","isMounted","styles","useTransitionStyles","dialogRef","setFloating","stringFormatter","useLocalizedStringFormatter","intlMessages","body","actions","Children","toArray","DialogContent","format","mdiClose","assign","Header","Body","Actions","DialogTrigger","getReferenceProps","isOpen","childrenRef","triggerRef","setReference","cloneElement","useDialog","defaultOpen","propsIsOpen","onOpen","setIsOpen","useCallback","collapsed","data","useFloating","open","onOpenChange","dismiss","useDismiss","outsidePressEvent","role","useRole","interactions","useInteractions","useMemo","BaseDialog","dialog","trigger","content","Dialog","Trigger","Content","useContext","Error","PopoverContext","PopoverPlacement","StyledPopoverContent","PopoverContent","style","isModal","strategy","x","y","usePopoverContext","popoverRef","PopoverTrigger","usePopover","placement","whileElementsMounted","autoUpdate","middleware","offset","flip","fallbackAxisSideDirection","shift","BasePopover","popover","Popover","TooltipContext","TooltipPlacement","StyledTooltipContent","$placement","TooltipContent","tooltipId","middlewareData","arrow","arrowX","arrowY","useTooltipContext","arrowRef","staticSide","split","visibility","TooltipTrigger","useTooltip","delay","propsTooltipId","element","hover","useHover","move","close","focus","useFocus","BaseTooltip","tooltip","Tooltip"],"mappings":"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"}
package/package.json CHANGED
@@ -28,13 +28,13 @@
28
28
  "test": "NODE_ENV=test jest --verbose"
29
29
  },
30
30
  "types": "index.d.ts",
31
- "version": "7.5.0",
31
+ "version": "7.5.1",
32
32
  "dependencies": {
33
33
  "@floating-ui/react": "^0.19.2",
34
34
  "@react-aria/button": "^3.6.4",
35
35
  "@react-types/button": "^3.7.0",
36
36
  "@react-types/shared": "^3.16.0",
37
- "@redsift/icons": "^7.5.0",
37
+ "@redsift/icons": "^7.5.1",
38
38
  "classnames": "^2.3.1"
39
39
  },
40
40
  "devDependencies": {
@@ -93,9 +93,9 @@
93
93
  "ts-jest": "^28.0.3"
94
94
  },
95
95
  "peerDependencies": {
96
- "react": "17 || 18",
97
- "react-dom": "17 || 18",
96
+ "react": "18",
97
+ "react-dom": "18",
98
98
  "styled-components": "^5.3.3"
99
99
  },
100
- "gitHead": "ff1044f74075e317dbc08ddbdd91bb8a8e79b0ce"
100
+ "gitHead": "bc01f6a68f156a9fefc1967ae483ea91abe11060"
101
101
  }