@laerdal/life-react-components 5.0.3 → 5.0.5-dev.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.
@@ -86,9 +86,9 @@ var DualFunctionButton = function DualFunctionButton(_ref) {
86
86
  !isOpen && setKeyboardNavigated(false);
87
87
  }, [isOpen]);
88
88
  return /*#__PURE__*/(0, _jsxRuntime.jsxs)(DualButtonsContainer, {
89
- ref: dropdownContainerRef,
90
89
  $size: size,
91
90
  children: [/*#__PURE__*/(0, _jsxRuntime.jsxs)(_CommonStyling.DropdownContainer, {
91
+ ref: dropdownContainerRef,
92
92
  $isButton: true,
93
93
  $readOnly: false,
94
94
  $disabled: false,
@@ -115,6 +115,7 @@ var DualFunctionButton = function DualFunctionButton(_ref) {
115
115
  isButton: true,
116
116
  setIsOpen: setIsOpen,
117
117
  focused: focused,
118
+ width: size == _types.Size.Small ? '280px' : '360px',
118
119
  onActiveDescendantChanged: function onActiveDescendantChanged(e) {
119
120
  return setActiveDescendant(e);
120
121
  },
@@ -1 +1 @@
1
- {"version":3,"file":"DualFunctionButton.cjs","names":["React","_interopRequireWildcard","require","_Button","_icons","_CommonStyling","_nanoid","_types","_DropdownContent","_interopRequireDefault","_styledComponents","_common","_jsxRuntime","_excluded","_excluded2","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","DualButtonsContainer","styled","div","_taggedTemplateLiteral2","ButtonContentContainer","props","$size","Size","Large","Medium","DualFunctionButton","_ref","_ref$children","children","_ref$variant","variant","_ref$type","type","_ref$size","size","_ref$width","width","testId","disabled","id","dropdownMenuValues","setDropdownMenuValues","dropdownCustomizationProps","_objectWithoutProperties2","loading","icon","onClick","renderProps","_React$useState","useState","_React$useState2","_slicedToArray2","isOpen","setIsOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","focused","setFocused","_React$useState7","_React$useState8","keyboardNavigated","setKeyboardNavigated","dropdownContainerRef","useRef","_React$useState9","_React$useState10","selectedValues","setSelectedValues","dropdownContentRef","dropdownButtonRef","useClickOutsideRef","useFocusOutsideRef","dropdownContentId","nanoid","useEffect","jsxs","ref","DropdownContainer","$isButton","$readOnly","$disabled","margin","jsx","flatEdge","containerRef","customizationProps","itemsType","isButton","onActiveDescendantChanged","outline","messageOnNoResults","alignLeft","ariaRolesType","onKeyPress","key","className","role","stopPropagation","SystemIcons","ArrowDropUp","ArrowDropDown","propTypes","_propTypes","arrayOf","string","func","_default","exports"],"sources":["../../src/Button/DualFunctionButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport Button, { ButtonContentContainer, ButtonProps } from './Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { DropdownContainer } from '../Dropdown/CommonStyling';\r\nimport { nanoid } from 'nanoid';\r\nimport { Size } from '../types';\r\nimport DropdownContent, { DropdownCustomizationProps } from '../Dropdown/DropdownContent';\r\nimport styled from 'styled-components';\r\nimport { useClickOutsideRef, useFocusOutsideRef } from '../common';\r\n\r\nconst DualButtonsContainer = styled.div<{ $size?: Size }>`\r\n display: flex;\r\n align-items: center;\r\n\r\n button:first-child {\r\n margin-right: 2px;\r\n }\r\n\r\n ${ButtonContentContainer} {\r\n min-width: unset;\r\n gap: 0px;\r\n padding: ${(props) => (props.$size == Size.Large ? '4px 18px' : props.$size == Size.Medium ? '4px 14px' : '4px 10px')};\r\n }\r\n\r\n .extraMargin {\r\n margin-bottom: 4px;\r\n }\r\n`;\r\n\r\nexport interface ButtonOption {\r\n label: string;\r\n}\r\n\r\nexport interface DualButtonProps extends ButtonProps {\r\n /**\r\n * Required. An object containing customization properties for the dropdown.\r\n */\r\n dropdownCustomizationProps: DropdownCustomizationProps;\r\n /**\r\n * Optional. An array of strings representing the values in the dropdown menu.\r\n */\r\n dropdownMenuValues?: string[];\r\n /**\r\n * Optional. A function to be called when the values in the dropdown menu change.\r\n * It should return void, a boolean, or undefined.\r\n */\r\n setDropdownMenuValues?: (values: string[]) => void | boolean | undefined;\r\n}\r\n\r\nconst DualFunctionButton: React.FunctionComponent<DualButtonProps> = ({\r\n children = 'Primary Button',\r\n variant = 'primary',\r\n type = 'button',\r\n size = Size.Medium,\r\n width: width = 'auto',\r\n testId,\r\n disabled,\r\n id,\r\n dropdownMenuValues,\r\n setDropdownMenuValues,\r\n dropdownCustomizationProps,\r\n ...props\r\n}) => {\r\n // Let's filter out properties that we don't need to render.\r\n const { loading, icon, onClick, ...renderProps } = props;\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n const dropdownContainerRef = React.useRef<HTMLDivElement>(null);\r\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\r\n\r\n const dropdownContentRef = React.useRef<HTMLDivElement>(null);\r\n const dropdownButtonRef = useClickOutsideRef(\r\n () => setIsOpen(false),\r\n [dropdownContainerRef],\r\n useFocusOutsideRef(() => setIsOpen(false), [dropdownContentRef]),\r\n );\r\n \r\n const dropdownContentId = id ? id + '_dropdownContent' : nanoid();\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n return (\r\n <DualButtonsContainer ref={dropdownContainerRef} $size={size}>\r\n <DropdownContainer $isButton={true} $readOnly={false} $disabled={false} margin=\"\">\r\n <Button {...renderProps} testId={testId} onClick={onClick} disabled={disabled} type={type} loading={loading} icon={icon} size={size} width={width} variant={variant} flatEdge=\"right\">\r\n {children}\r\n </Button>\r\n <DropdownContent\r\n containerRef={dropdownContainerRef}\r\n customizationProps={dropdownCustomizationProps}\r\n filter=\"\"\r\n ref={dropdownContentRef}\r\n selectedValues={dropdownCustomizationProps.itemsType == 'normal' ? [] : dropdownMenuValues ?? selectedValues}\r\n setSelectedValues={setDropdownMenuValues ? setDropdownMenuValues : setSelectedValues}\r\n isButton={true}\r\n setIsOpen={setIsOpen}\r\n focused={focused}\r\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\r\n setFocused={setFocused}\r\n size={size}\r\n outline={keyboardNavigated}\r\n isOpen={isOpen}\r\n id={dropdownContentId}\r\n messageOnNoResults=\"\"\r\n alignLeft={true}\r\n ariaRolesType=\"menu\"\r\n />\r\n </DropdownContainer>\r\n <Button\r\n variant={variant}\r\n {...renderProps}\r\n onKeyPress={(e: any) => {\r\n if (isOpen) return;\r\n\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setFocused(0);\r\n setKeyboardNavigated(true);\r\n }\r\n }}\r\n className=\"extraMargin\"\r\n testId={'options_toggleBtn'}\r\n ref={dropdownButtonRef}\r\n aria-activedescendant={activeDescendant}\r\n role=\"button\"\r\n aria-controls={dropdownContentId}\r\n disabled={disabled}\r\n type={type}\r\n size={size}\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n }}\r\n icon={ isOpen ? <SystemIcons.ArrowDropUp aria-hidden=\"true\" size=\"16px\" /> \r\n : <SystemIcons.ArrowDropDown aria-hidden=\"true\" size=\"16px\" /> }\r\n flatEdge=\"left\"\r\n />\r\n </DualButtonsContainer>\r\n );\r\n};\r\n\r\nexport default DualFunctionButton;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DualFunctionButton.cjs","names":["React","_interopRequireWildcard","require","_Button","_icons","_CommonStyling","_nanoid","_types","_DropdownContent","_interopRequireDefault","_styledComponents","_common","_jsxRuntime","_excluded","_excluded2","_templateObject","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","ownKeys","keys","getOwnPropertySymbols","o","filter","enumerable","push","apply","_objectSpread","arguments","length","forEach","_defineProperty2","getOwnPropertyDescriptors","defineProperties","DualButtonsContainer","styled","div","_taggedTemplateLiteral2","ButtonContentContainer","props","$size","Size","Large","Medium","DualFunctionButton","_ref","_ref$children","children","_ref$variant","variant","_ref$type","type","_ref$size","size","_ref$width","width","testId","disabled","id","dropdownMenuValues","setDropdownMenuValues","dropdownCustomizationProps","_objectWithoutProperties2","loading","icon","onClick","renderProps","_React$useState","useState","_React$useState2","_slicedToArray2","isOpen","setIsOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","focused","setFocused","_React$useState7","_React$useState8","keyboardNavigated","setKeyboardNavigated","dropdownContainerRef","useRef","_React$useState9","_React$useState10","selectedValues","setSelectedValues","dropdownContentRef","dropdownButtonRef","useClickOutsideRef","useFocusOutsideRef","dropdownContentId","nanoid","useEffect","jsxs","DropdownContainer","ref","$isButton","$readOnly","$disabled","margin","jsx","flatEdge","containerRef","customizationProps","itemsType","isButton","Small","onActiveDescendantChanged","outline","messageOnNoResults","alignLeft","ariaRolesType","onKeyPress","key","className","role","stopPropagation","SystemIcons","ArrowDropUp","ArrowDropDown","propTypes","_propTypes","arrayOf","string","func","_default","exports"],"sources":["../../src/Button/DualFunctionButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport Button, { ButtonContentContainer, ButtonProps } from './Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { DropdownContainer } from '../Dropdown/CommonStyling';\r\nimport { nanoid } from 'nanoid';\r\nimport { Size } from '../types';\r\nimport DropdownContent, { DropdownCustomizationProps } from '../Dropdown/DropdownContent';\r\nimport styled from 'styled-components';\r\nimport { useClickOutsideRef, useFocusOutsideRef } from '../common';\r\n\r\nconst DualButtonsContainer = styled.div<{ $size?: Size }>`\r\n display: flex;\r\n align-items: center;\r\n\r\n button:first-child {\r\n margin-right: 2px;\r\n }\r\n\r\n ${ButtonContentContainer} {\r\n min-width: unset;\r\n gap: 0px;\r\n padding: ${(props) => (props.$size == Size.Large ? '4px 18px' : props.$size == Size.Medium ? '4px 14px' : '4px 10px')};\r\n }\r\n\r\n .extraMargin {\r\n margin-bottom: 4px;\r\n }\r\n`;\r\n\r\nexport interface ButtonOption {\r\n label: string;\r\n}\r\n\r\nexport interface DualButtonProps extends ButtonProps {\r\n /**\r\n * Required. An object containing customization properties for the dropdown.\r\n */\r\n dropdownCustomizationProps: DropdownCustomizationProps;\r\n /**\r\n * Optional. An array of strings representing the values in the dropdown menu.\r\n */\r\n dropdownMenuValues?: string[];\r\n /**\r\n * Optional. A function to be called when the values in the dropdown menu change.\r\n * It should return void, a boolean, or undefined.\r\n */\r\n setDropdownMenuValues?: (values: string[]) => void | boolean | undefined;\r\n}\r\n\r\nconst DualFunctionButton: React.FunctionComponent<DualButtonProps> = ({\r\n children = 'Primary Button',\r\n variant = 'primary',\r\n type = 'button',\r\n size = Size.Medium,\r\n width: width = 'auto',\r\n testId,\r\n disabled,\r\n id,\r\n dropdownMenuValues,\r\n setDropdownMenuValues,\r\n dropdownCustomizationProps,\r\n ...props\r\n}) => {\r\n // Let's filter out properties that we don't need to render.\r\n const { loading, icon, onClick, ...renderProps } = props;\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n const dropdownContainerRef = React.useRef<HTMLDivElement>(null);\r\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\r\n\r\n const dropdownContentRef = React.useRef<HTMLDivElement>(null);\r\n const dropdownButtonRef = useClickOutsideRef(\r\n () => setIsOpen(false),\r\n [dropdownContainerRef],\r\n useFocusOutsideRef(() => setIsOpen(false), [dropdownContentRef]),\r\n );\r\n \r\n const dropdownContentId = id ? id + '_dropdownContent' : nanoid();\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n return (\r\n <DualButtonsContainer $size={size}>\r\n <DropdownContainer ref={dropdownContainerRef} $isButton={true} $readOnly={false} $disabled={false} margin=\"\">\r\n <Button {...renderProps} testId={testId} onClick={onClick} disabled={disabled} type={type} loading={loading} icon={icon} size={size} width={width} variant={variant} flatEdge=\"right\">\r\n {children}\r\n </Button>\r\n <DropdownContent\r\n containerRef={dropdownContainerRef}\r\n customizationProps={dropdownCustomizationProps}\r\n filter=\"\"\r\n ref={dropdownContentRef}\r\n selectedValues={dropdownCustomizationProps.itemsType == 'normal' ? [] : dropdownMenuValues ?? selectedValues}\r\n setSelectedValues={setDropdownMenuValues ? setDropdownMenuValues : setSelectedValues}\r\n isButton={true}\r\n setIsOpen={setIsOpen}\r\n focused={focused}\r\n width={size == Size.Small ? '280px' : '360px'}\r\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\r\n setFocused={setFocused}\r\n size={size}\r\n outline={keyboardNavigated}\r\n isOpen={isOpen}\r\n id={dropdownContentId}\r\n messageOnNoResults=\"\"\r\n alignLeft={true}\r\n ariaRolesType=\"menu\"\r\n />\r\n </DropdownContainer>\r\n <Button\r\n variant={variant}\r\n {...renderProps}\r\n onKeyPress={(e: any) => {\r\n if (isOpen) return;\r\n\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setFocused(0);\r\n setKeyboardNavigated(true);\r\n }\r\n }}\r\n className=\"extraMargin\"\r\n testId={'options_toggleBtn'}\r\n ref={dropdownButtonRef}\r\n aria-activedescendant={activeDescendant}\r\n role=\"button\"\r\n aria-controls={dropdownContentId}\r\n disabled={disabled}\r\n type={type}\r\n size={size}\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n }}\r\n icon={ isOpen ? <SystemIcons.ArrowDropUp aria-hidden=\"true\" size=\"16px\" /> \r\n : <SystemIcons.ArrowDropDown aria-hidden=\"true\" size=\"16px\" /> }\r\n flatEdge=\"left\"\r\n />\r\n </DualButtonsContainer>\r\n );\r\n};\r\n\r\nexport default DualFunctionButton;\r\n"],"mappings":"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","ignoreList":[]}
@@ -77,9 +77,9 @@ var DualFunctionButton = function DualFunctionButton(_ref) {
77
77
  !isOpen && setKeyboardNavigated(false);
78
78
  }, [isOpen]);
79
79
  return /*#__PURE__*/_jsxs(DualButtonsContainer, {
80
- ref: dropdownContainerRef,
81
80
  $size: size,
82
81
  children: [/*#__PURE__*/_jsxs(DropdownContainer, {
82
+ ref: dropdownContainerRef,
83
83
  $isButton: true,
84
84
  $readOnly: false,
85
85
  $disabled: false,
@@ -106,6 +106,7 @@ var DualFunctionButton = function DualFunctionButton(_ref) {
106
106
  isButton: true,
107
107
  setIsOpen: setIsOpen,
108
108
  focused: focused,
109
+ width: size == Size.Small ? '280px' : '360px',
109
110
  onActiveDescendantChanged: function onActiveDescendantChanged(e) {
110
111
  return setActiveDescendant(e);
111
112
  },
@@ -1 +1 @@
1
- {"version":3,"file":"DualFunctionButton.js","names":["React","Button","ButtonContentContainer","SystemIcons","DropdownContainer","nanoid","Size","DropdownContent","styled","useClickOutsideRef","useFocusOutsideRef","jsx","_jsx","jsxs","_jsxs","DualButtonsContainer","div","_templateObject","_taggedTemplateLiteral","props","$size","Large","Medium","DualFunctionButton","_ref","_ref$children","children","_ref$variant","variant","_ref$type","type","_ref$size","size","_ref$width","width","testId","disabled","id","dropdownMenuValues","setDropdownMenuValues","dropdownCustomizationProps","_objectWithoutProperties","_excluded","loading","icon","onClick","renderProps","_excluded2","_React$useState","useState","_React$useState2","_slicedToArray","isOpen","setIsOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","focused","setFocused","_React$useState7","_React$useState8","keyboardNavigated","setKeyboardNavigated","dropdownContainerRef","useRef","_React$useState9","_React$useState10","selectedValues","setSelectedValues","dropdownContentRef","dropdownButtonRef","dropdownContentId","useEffect","ref","$isButton","$readOnly","$disabled","margin","_objectSpread","flatEdge","containerRef","customizationProps","filter","itemsType","isButton","onActiveDescendantChanged","e","outline","messageOnNoResults","alignLeft","ariaRolesType","onKeyPress","key","className","role","stopPropagation","ArrowDropUp","ArrowDropDown","propTypes","_pt","arrayOf","string","func"],"sources":["../../src/Button/DualFunctionButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport Button, { ButtonContentContainer, ButtonProps } from './Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { DropdownContainer } from '../Dropdown/CommonStyling';\r\nimport { nanoid } from 'nanoid';\r\nimport { Size } from '../types';\r\nimport DropdownContent, { DropdownCustomizationProps } from '../Dropdown/DropdownContent';\r\nimport styled from 'styled-components';\r\nimport { useClickOutsideRef, useFocusOutsideRef } from '../common';\r\n\r\nconst DualButtonsContainer = styled.div<{ $size?: Size }>`\r\n display: flex;\r\n align-items: center;\r\n\r\n button:first-child {\r\n margin-right: 2px;\r\n }\r\n\r\n ${ButtonContentContainer} {\r\n min-width: unset;\r\n gap: 0px;\r\n padding: ${(props) => (props.$size == Size.Large ? '4px 18px' : props.$size == Size.Medium ? '4px 14px' : '4px 10px')};\r\n }\r\n\r\n .extraMargin {\r\n margin-bottom: 4px;\r\n }\r\n`;\r\n\r\nexport interface ButtonOption {\r\n label: string;\r\n}\r\n\r\nexport interface DualButtonProps extends ButtonProps {\r\n /**\r\n * Required. An object containing customization properties for the dropdown.\r\n */\r\n dropdownCustomizationProps: DropdownCustomizationProps;\r\n /**\r\n * Optional. An array of strings representing the values in the dropdown menu.\r\n */\r\n dropdownMenuValues?: string[];\r\n /**\r\n * Optional. A function to be called when the values in the dropdown menu change.\r\n * It should return void, a boolean, or undefined.\r\n */\r\n setDropdownMenuValues?: (values: string[]) => void | boolean | undefined;\r\n}\r\n\r\nconst DualFunctionButton: React.FunctionComponent<DualButtonProps> = ({\r\n children = 'Primary Button',\r\n variant = 'primary',\r\n type = 'button',\r\n size = Size.Medium,\r\n width: width = 'auto',\r\n testId,\r\n disabled,\r\n id,\r\n dropdownMenuValues,\r\n setDropdownMenuValues,\r\n dropdownCustomizationProps,\r\n ...props\r\n}) => {\r\n // Let's filter out properties that we don't need to render.\r\n const { loading, icon, onClick, ...renderProps } = props;\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n const dropdownContainerRef = React.useRef<HTMLDivElement>(null);\r\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\r\n\r\n const dropdownContentRef = React.useRef<HTMLDivElement>(null);\r\n const dropdownButtonRef = useClickOutsideRef(\r\n () => setIsOpen(false),\r\n [dropdownContainerRef],\r\n useFocusOutsideRef(() => setIsOpen(false), [dropdownContentRef]),\r\n );\r\n \r\n const dropdownContentId = id ? id + '_dropdownContent' : nanoid();\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n return (\r\n <DualButtonsContainer ref={dropdownContainerRef} $size={size}>\r\n <DropdownContainer $isButton={true} $readOnly={false} $disabled={false} margin=\"\">\r\n <Button {...renderProps} testId={testId} onClick={onClick} disabled={disabled} type={type} loading={loading} icon={icon} size={size} width={width} variant={variant} flatEdge=\"right\">\r\n {children}\r\n </Button>\r\n <DropdownContent\r\n containerRef={dropdownContainerRef}\r\n customizationProps={dropdownCustomizationProps}\r\n filter=\"\"\r\n ref={dropdownContentRef}\r\n selectedValues={dropdownCustomizationProps.itemsType == 'normal' ? [] : dropdownMenuValues ?? selectedValues}\r\n setSelectedValues={setDropdownMenuValues ? setDropdownMenuValues : setSelectedValues}\r\n isButton={true}\r\n setIsOpen={setIsOpen}\r\n focused={focused}\r\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\r\n setFocused={setFocused}\r\n size={size}\r\n outline={keyboardNavigated}\r\n isOpen={isOpen}\r\n id={dropdownContentId}\r\n messageOnNoResults=\"\"\r\n alignLeft={true}\r\n ariaRolesType=\"menu\"\r\n />\r\n </DropdownContainer>\r\n <Button\r\n variant={variant}\r\n {...renderProps}\r\n onKeyPress={(e: any) => {\r\n if (isOpen) return;\r\n\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setFocused(0);\r\n setKeyboardNavigated(true);\r\n }\r\n }}\r\n className=\"extraMargin\"\r\n testId={'options_toggleBtn'}\r\n ref={dropdownButtonRef}\r\n aria-activedescendant={activeDescendant}\r\n role=\"button\"\r\n aria-controls={dropdownContentId}\r\n disabled={disabled}\r\n type={type}\r\n size={size}\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n }}\r\n icon={ isOpen ? <SystemIcons.ArrowDropUp aria-hidden=\"true\" size=\"16px\" /> \r\n : <SystemIcons.ArrowDropDown aria-hidden=\"true\" size=\"16px\" /> }\r\n flatEdge=\"left\"\r\n />\r\n </DualButtonsContainer>\r\n );\r\n};\r\n\r\nexport default DualFunctionButton;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DualFunctionButton.js","names":["React","Button","ButtonContentContainer","SystemIcons","DropdownContainer","nanoid","Size","DropdownContent","styled","useClickOutsideRef","useFocusOutsideRef","jsx","_jsx","jsxs","_jsxs","DualButtonsContainer","div","_templateObject","_taggedTemplateLiteral","props","$size","Large","Medium","DualFunctionButton","_ref","_ref$children","children","_ref$variant","variant","_ref$type","type","_ref$size","size","_ref$width","width","testId","disabled","id","dropdownMenuValues","setDropdownMenuValues","dropdownCustomizationProps","_objectWithoutProperties","_excluded","loading","icon","onClick","renderProps","_excluded2","_React$useState","useState","_React$useState2","_slicedToArray","isOpen","setIsOpen","_React$useState3","_React$useState4","activeDescendant","setActiveDescendant","_React$useState5","_React$useState6","focused","setFocused","_React$useState7","_React$useState8","keyboardNavigated","setKeyboardNavigated","dropdownContainerRef","useRef","_React$useState9","_React$useState10","selectedValues","setSelectedValues","dropdownContentRef","dropdownButtonRef","dropdownContentId","useEffect","ref","$isButton","$readOnly","$disabled","margin","_objectSpread","flatEdge","containerRef","customizationProps","filter","itemsType","isButton","Small","onActiveDescendantChanged","e","outline","messageOnNoResults","alignLeft","ariaRolesType","onKeyPress","key","className","role","stopPropagation","ArrowDropUp","ArrowDropDown","propTypes","_pt","arrayOf","string","func"],"sources":["../../src/Button/DualFunctionButton.tsx"],"sourcesContent":["import * as React from 'react';\r\nimport Button, { ButtonContentContainer, ButtonProps } from './Button';\r\nimport { SystemIcons } from '../icons';\r\nimport { DropdownContainer } from '../Dropdown/CommonStyling';\r\nimport { nanoid } from 'nanoid';\r\nimport { Size } from '../types';\r\nimport DropdownContent, { DropdownCustomizationProps } from '../Dropdown/DropdownContent';\r\nimport styled from 'styled-components';\r\nimport { useClickOutsideRef, useFocusOutsideRef } from '../common';\r\n\r\nconst DualButtonsContainer = styled.div<{ $size?: Size }>`\r\n display: flex;\r\n align-items: center;\r\n\r\n button:first-child {\r\n margin-right: 2px;\r\n }\r\n\r\n ${ButtonContentContainer} {\r\n min-width: unset;\r\n gap: 0px;\r\n padding: ${(props) => (props.$size == Size.Large ? '4px 18px' : props.$size == Size.Medium ? '4px 14px' : '4px 10px')};\r\n }\r\n\r\n .extraMargin {\r\n margin-bottom: 4px;\r\n }\r\n`;\r\n\r\nexport interface ButtonOption {\r\n label: string;\r\n}\r\n\r\nexport interface DualButtonProps extends ButtonProps {\r\n /**\r\n * Required. An object containing customization properties for the dropdown.\r\n */\r\n dropdownCustomizationProps: DropdownCustomizationProps;\r\n /**\r\n * Optional. An array of strings representing the values in the dropdown menu.\r\n */\r\n dropdownMenuValues?: string[];\r\n /**\r\n * Optional. A function to be called when the values in the dropdown menu change.\r\n * It should return void, a boolean, or undefined.\r\n */\r\n setDropdownMenuValues?: (values: string[]) => void | boolean | undefined;\r\n}\r\n\r\nconst DualFunctionButton: React.FunctionComponent<DualButtonProps> = ({\r\n children = 'Primary Button',\r\n variant = 'primary',\r\n type = 'button',\r\n size = Size.Medium,\r\n width: width = 'auto',\r\n testId,\r\n disabled,\r\n id,\r\n dropdownMenuValues,\r\n setDropdownMenuValues,\r\n dropdownCustomizationProps,\r\n ...props\r\n}) => {\r\n // Let's filter out properties that we don't need to render.\r\n const { loading, icon, onClick, ...renderProps } = props;\r\n const [isOpen, setIsOpen] = React.useState<boolean>(false);\r\n const [activeDescendant, setActiveDescendant] = React.useState<string>();\r\n const [focused, setFocused] = React.useState<number | null>(null);\r\n const [keyboardNavigated, setKeyboardNavigated] = React.useState<boolean>(false);\r\n const dropdownContainerRef = React.useRef<HTMLDivElement>(null);\r\n const [selectedValues, setSelectedValues] = React.useState<string[]>([]);\r\n\r\n const dropdownContentRef = React.useRef<HTMLDivElement>(null);\r\n const dropdownButtonRef = useClickOutsideRef(\r\n () => setIsOpen(false),\r\n [dropdownContainerRef],\r\n useFocusOutsideRef(() => setIsOpen(false), [dropdownContentRef]),\r\n );\r\n \r\n const dropdownContentId = id ? id + '_dropdownContent' : nanoid();\r\n\r\n React.useEffect(() => {\r\n !isOpen && setKeyboardNavigated(false);\r\n }, [isOpen]);\r\n\r\n return (\r\n <DualButtonsContainer $size={size}>\r\n <DropdownContainer ref={dropdownContainerRef} $isButton={true} $readOnly={false} $disabled={false} margin=\"\">\r\n <Button {...renderProps} testId={testId} onClick={onClick} disabled={disabled} type={type} loading={loading} icon={icon} size={size} width={width} variant={variant} flatEdge=\"right\">\r\n {children}\r\n </Button>\r\n <DropdownContent\r\n containerRef={dropdownContainerRef}\r\n customizationProps={dropdownCustomizationProps}\r\n filter=\"\"\r\n ref={dropdownContentRef}\r\n selectedValues={dropdownCustomizationProps.itemsType == 'normal' ? [] : dropdownMenuValues ?? selectedValues}\r\n setSelectedValues={setDropdownMenuValues ? setDropdownMenuValues : setSelectedValues}\r\n isButton={true}\r\n setIsOpen={setIsOpen}\r\n focused={focused}\r\n width={size == Size.Small ? '280px' : '360px'}\r\n onActiveDescendantChanged={(e) => setActiveDescendant(e)}\r\n setFocused={setFocused}\r\n size={size}\r\n outline={keyboardNavigated}\r\n isOpen={isOpen}\r\n id={dropdownContentId}\r\n messageOnNoResults=\"\"\r\n alignLeft={true}\r\n ariaRolesType=\"menu\"\r\n />\r\n </DropdownContainer>\r\n <Button\r\n variant={variant}\r\n {...renderProps}\r\n onKeyPress={(e: any) => {\r\n if (isOpen) return;\r\n\r\n if (e.key === 'Enter' || e.key === ' ') {\r\n setFocused(0);\r\n setKeyboardNavigated(true);\r\n }\r\n }}\r\n className=\"extraMargin\"\r\n testId={'options_toggleBtn'}\r\n ref={dropdownButtonRef}\r\n aria-activedescendant={activeDescendant}\r\n role=\"button\"\r\n aria-controls={dropdownContentId}\r\n disabled={disabled}\r\n type={type}\r\n size={size}\r\n onClick={(e) => {\r\n e.stopPropagation();\r\n setIsOpen(!isOpen);\r\n }}\r\n icon={ isOpen ? <SystemIcons.ArrowDropUp aria-hidden=\"true\" size=\"16px\" /> \r\n : <SystemIcons.ArrowDropDown aria-hidden=\"true\" size=\"16px\" /> }\r\n flatEdge=\"left\"\r\n />\r\n </DualButtonsContainer>\r\n );\r\n};\r\n\r\nexport default DualFunctionButton;\r\n"],"mappings":";;;;;;;;;;AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,OAAOC,MAAM,IAAIC,sBAAsB,QAAqB,UAAU;AACtE,SAASC,WAAW,QAAQ,UAAU;AACtC,SAASC,iBAAiB,QAAQ,2BAA2B;AAC7D,SAASC,MAAM,QAAQ,QAAQ;AAC/B,SAASC,IAAI,QAAQ,UAAU;AAC/B,OAAOC,eAAe,MAAsC,6BAA6B;AACzF,OAAOC,MAAM,MAAM,mBAAmB;AACtC,SAASC,kBAAkB,EAAEC,kBAAkB,QAAQ,WAAW;AAAC,SAAAC,GAAA,IAAAC,IAAA;AAAA,SAAAC,IAAA,IAAAC,KAAA;AAEnE,IAAMC,oBAAoB,GAAGP,MAAM,CAACQ,GAAG,CAAAC,eAAA,KAAAA,eAAA,GAAAC,sBAAA,yOAQnChB,sBAAsB,EAGX,UAACiB,KAAK;EAAA,OAAMA,KAAK,CAACC,KAAK,IAAId,IAAI,CAACe,KAAK,GAAG,UAAU,GAAGF,KAAK,CAACC,KAAK,IAAId,IAAI,CAACgB,MAAM,GAAG,UAAU,GAAG,UAAU;AAAA,CAAC,CAMxH;AAsBD,IAAMC,kBAA4D,GAAG,SAA/DA,kBAA4DA,CAAAC,IAAA,EAa5D;EAAA,IAAAC,aAAA,GAAAD,IAAA,CAZJE,QAAQ;IAARA,QAAQ,GAAAD,aAAA,cAAG,gBAAgB,GAAAA,aAAA;IAAAE,YAAA,GAAAH,IAAA,CAC3BI,OAAO;IAAPA,OAAO,GAAAD,YAAA,cAAG,SAAS,GAAAA,YAAA;IAAAE,SAAA,GAAAL,IAAA,CACnBM,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAG,QAAQ,GAAAA,SAAA;IAAAE,SAAA,GAAAP,IAAA,CACfQ,IAAI;IAAJA,IAAI,GAAAD,SAAA,cAAGzB,IAAI,CAACgB,MAAM,GAAAS,SAAA;IAAAE,UAAA,GAAAT,IAAA,CAClBU,KAAK;IAAEA,KAAK,GAAAD,UAAA,cAAG,MAAM,GAAAA,UAAA;IACrBE,MAAM,GAAAX,IAAA,CAANW,MAAM;IACNC,QAAQ,GAAAZ,IAAA,CAARY,QAAQ;IACRC,EAAE,GAAAb,IAAA,CAAFa,EAAE;IACFC,kBAAkB,GAAAd,IAAA,CAAlBc,kBAAkB;IAClBC,qBAAqB,GAAAf,IAAA,CAArBe,qBAAqB;IACrBC,0BAA0B,GAAAhB,IAAA,CAA1BgB,0BAA0B;IACvBrB,KAAK,GAAAsB,wBAAA,CAAAjB,IAAA,EAAAkB,SAAA;EAER;EACA,IAAQC,OAAO,GAAoCxB,KAAK,CAAhDwB,OAAO;IAAEC,IAAI,GAA8BzB,KAAK,CAAvCyB,IAAI;IAAEC,OAAO,GAAqB1B,KAAK,CAAjC0B,OAAO;IAAKC,WAAW,GAAAL,wBAAA,CAAKtB,KAAK,EAAA4B,UAAA;EACxD,IAAAC,eAAA,GAA4BhD,KAAK,CAACiD,QAAQ,CAAU,KAAK,CAAC;IAAAC,gBAAA,GAAAC,cAAA,CAAAH,eAAA;IAAnDI,MAAM,GAAAF,gBAAA;IAAEG,SAAS,GAAAH,gBAAA;EACxB,IAAAI,gBAAA,GAAgDtD,KAAK,CAACiD,QAAQ,CAAS,CAAC;IAAAM,gBAAA,GAAAJ,cAAA,CAAAG,gBAAA;IAAjEE,gBAAgB,GAAAD,gBAAA;IAAEE,mBAAmB,GAAAF,gBAAA;EAC5C,IAAAG,gBAAA,GAA8B1D,KAAK,CAACiD,QAAQ,CAAgB,IAAI,CAAC;IAAAU,gBAAA,GAAAR,cAAA,CAAAO,gBAAA;IAA1DE,OAAO,GAAAD,gBAAA;IAAEE,UAAU,GAAAF,gBAAA;EAC1B,IAAAG,gBAAA,GAAkD9D,KAAK,CAACiD,QAAQ,CAAU,KAAK,CAAC;IAAAc,gBAAA,GAAAZ,cAAA,CAAAW,gBAAA;IAAzEE,iBAAiB,GAAAD,gBAAA;IAAEE,oBAAoB,GAAAF,gBAAA;EAC9C,IAAMG,oBAAoB,GAAGlE,KAAK,CAACmE,MAAM,CAAiB,IAAI,CAAC;EAC/D,IAAAC,gBAAA,GAA4CpE,KAAK,CAACiD,QAAQ,CAAW,EAAE,CAAC;IAAAoB,iBAAA,GAAAlB,cAAA,CAAAiB,gBAAA;IAAjEE,cAAc,GAAAD,iBAAA;IAAEE,iBAAiB,GAAAF,iBAAA;EAExC,IAAMG,kBAAkB,GAAGxE,KAAK,CAACmE,MAAM,CAAiB,IAAI,CAAC;EAC7D,IAAMM,iBAAiB,GAAGhE,kBAAkB,CAC1C;IAAA,OAAM4C,SAAS,CAAC,KAAK,CAAC;EAAA,GACtB,CAACa,oBAAoB,CAAC,EACtBxD,kBAAkB,CAAC;IAAA,OAAM2C,SAAS,CAAC,KAAK,CAAC;EAAA,GAAE,CAACmB,kBAAkB,CAAC,CACjE,CAAC;EAED,IAAME,iBAAiB,GAAGrC,EAAE,GAAGA,EAAE,GAAG,kBAAkB,GAAGhC,MAAM,CAAC,CAAC;EAEjEL,KAAK,CAAC2E,SAAS,CAAC,YAAM;IACpB,CAACvB,MAAM,IAAIa,oBAAoB,CAAC,KAAK,CAAC;EACxC,CAAC,EAAE,CAACb,MAAM,CAAC,CAAC;EAEZ,oBACEtC,KAAA,CAACC,oBAAoB;IAACK,KAAK,EAAEY,IAAK;IAAAN,QAAA,gBAChCZ,KAAA,CAACV,iBAAiB;MAACwE,GAAG,EAAEV,oBAAqB;MAACW,SAAS,EAAE,IAAK;MAACC,SAAS,EAAE,KAAM;MAACC,SAAS,EAAE,KAAM;MAACC,MAAM,EAAC,EAAE;MAAAtD,QAAA,gBAC1Gd,IAAA,CAACX,MAAM,EAAAgF,aAAA,CAAAA,aAAA,KAAKnC,WAAW;QAAEX,MAAM,EAAEA,MAAO;QAACU,OAAO,EAAEA,OAAQ;QAACT,QAAQ,EAAEA,QAAS;QAACN,IAAI,EAAEA,IAAK;QAACa,OAAO,EAAEA,OAAQ;QAACC,IAAI,EAAEA,IAAK;QAACZ,IAAI,EAAEA,IAAK;QAACE,KAAK,EAAEA,KAAM;QAACN,OAAO,EAAEA,OAAQ;QAACsD,QAAQ,EAAC,OAAO;QAAAxD,QAAA,EAClLA;MAAQ,EACH,CAAC,eACTd,IAAA,CAACL,eAAe;QACd4E,YAAY,EAAEjB,oBAAqB;QACnCkB,kBAAkB,EAAE5C,0BAA2B;QAC/C6C,MAAM,EAAC,EAAE;QACTT,GAAG,EAAEJ,kBAAmB;QACxBF,cAAc,EAAE9B,0BAA0B,CAAC8C,SAAS,IAAI,QAAQ,GAAG,EAAE,GAAGhD,kBAAkB,aAAlBA,kBAAkB,cAAlBA,kBAAkB,GAAIgC,cAAe;QAC7GC,iBAAiB,EAAEhC,qBAAqB,GAAGA,qBAAqB,GAAGgC,iBAAkB;QACrFgB,QAAQ,EAAE,IAAK;QACflC,SAAS,EAAEA,SAAU;QACrBO,OAAO,EAAEA,OAAQ;QACjB1B,KAAK,EAAEF,IAAI,IAAI1B,IAAI,CAACkF,KAAK,GAAG,OAAO,GAAG,OAAQ;QAC9CC,yBAAyB,EAAE,SAAAA,0BAACC,CAAC;UAAA,OAAKjC,mBAAmB,CAACiC,CAAC,CAAC;QAAA,CAAC;QACzD7B,UAAU,EAAEA,UAAW;QACvB7B,IAAI,EAAEA,IAAK;QACX2D,OAAO,EAAE3B,iBAAkB;QAC3BZ,MAAM,EAAEA,MAAO;QACff,EAAE,EAAEqC,iBAAkB;QACtBkB,kBAAkB,EAAC,EAAE;QACrBC,SAAS,EAAE,IAAK;QAChBC,aAAa,EAAC;MAAM,CACrB,CAAC;IAAA,CACe,CAAC,eACpBlF,IAAA,CAACX,MAAM,EAAAgF,aAAA,CAAAA,aAAA;MACLrD,OAAO,EAAEA;IAAQ,GACbkB,WAAW;MACfiD,UAAU,EAAE,SAAAA,WAACL,CAAM,EAAK;QACtB,IAAItC,MAAM,EAAE;QAEZ,IAAIsC,CAAC,CAACM,GAAG,KAAK,OAAO,IAAIN,CAAC,CAACM,GAAG,KAAK,GAAG,EAAE;UACtCnC,UAAU,CAAC,CAAC,CAAC;UACbI,oBAAoB,CAAC,IAAI,CAAC;QAC5B;MACF,CAAE;MACFgC,SAAS,EAAC,aAAa;MACvB9D,MAAM,EAAE,mBAAoB;MAC5ByC,GAAG,EAAEH,iBAAkB;MACvB,yBAAuBjB,gBAAiB;MACxC0C,IAAI,EAAC,QAAQ;MACb,iBAAexB,iBAAkB;MACjCtC,QAAQ,EAAEA,QAAS;MACnBN,IAAI,EAAEA,IAAK;MACXE,IAAI,EAAEA,IAAK;MACXa,OAAO,EAAE,SAAAA,QAAC6C,CAAC,EAAK;QACdA,CAAC,CAACS,eAAe,CAAC,CAAC;QACnB9C,SAAS,CAAC,CAACD,MAAM,CAAC;MACpB,CAAE;MACFR,IAAI,EAAGQ,MAAM,gBAAGxC,IAAA,CAACT,WAAW,CAACiG,WAAW;QAAC,eAAY,MAAM;QAACpE,IAAI,EAAC;MAAM,CAAE,CAAC,gBACxEpB,IAAA,CAACT,WAAW,CAACkG,aAAa;QAAC,eAAY,MAAM;QAACrE,IAAI,EAAC;MAAM,CAAE,CAAG;MAChEkD,QAAQ,EAAC;IAAM,EAChB,CAAC;EAAA,CACkB,CAAC;AAE3B,CAAC;AAAC3D,kBAAA,CAAA+E,SAAA;EAtGAhE,kBAAkB,EAAAiE,GAAA,CAAAC,OAAA,CAAAD,GAAA,CAAAE,MAAA;EAKlBlE,qBAAqB,EAAAgE,GAAA,CAAAG;AAAA;AAmGvB,eAAenF,kBAAkB","ignoreList":[]}
@@ -27,13 +27,13 @@ function _arrayLikeToArray(r, a) { (null == a || a > r.length) && (a = r.length)
27
27
  var MAX_MENU_HEIGHT = 240;
28
28
  var AVG_OPTION_HEIGHT = 48;
29
29
  var OFFSET_BEFORE_SHOW = 1000000;
30
- var DropdownContentContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n pointer-events: auto;\n position: absolute;\n background-color: ", ";\n\n z-index: ", ";\n margin: ", ";\n\n &.show {\n display: flex;\n flex-direction: column;\n justify-content: center;\n &.down,\n &.up {\n ", "\n }\n }\n\n transform: translate(-", "px, -", "px);\n\n &.outline:focus:after {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n outline: 4px solid black;\n outline-offset: 2px;\n border-radius: 2px;\n }\n\n &:focus {\n outline: none;\n }\n\n ", ";\n\n border: 1px solid ", ";\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\n padding: 4px 0px;\n\n min-width: ", ";\n border-radius: ", ";\n\n max-height: ", ";\n"])), function (props) {
30
+ var DropdownContentContainer = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n display: none;\n pointer-events: auto;\n position: absolute;\n background-color: ", ";\n\n z-index: ", ";\n margin: ", ";\n\n inset: 0px auto auto 100%;\n\n &.show {\n display: flex;\n flex-direction: column;\n justify-content: center;\n &.down,\n &.up {\n ", "\n }\n }\n\n &.outline:focus:after {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n outline: 4px solid black;\n outline-offset: 2px;\n border-radius: 2px;\n }\n\n &:focus {\n outline: none;\n }\n\n ", ";\n\n border: 1px solid ", ";\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\n padding: 4px 0px;\n\n min-width: ", ";\n border-radius: ", ";\n\n max-height: ", ";\n"])), function (props) {
31
31
  return _styles.COLORS.getColor('white', props.theme);
32
32
  }, _zIndexes.Z_INDEXES.dropdown, function (props) {
33
33
  return props.$isButton ? '-4px' : '4px 0px';
34
34
  }, function (props) {
35
35
  return "transform: translate(".concat(props.$offsetLeft, ", ").concat(props.$offsetTop, ");");
36
- }, OFFSET_BEFORE_SHOW, OFFSET_BEFORE_SHOW, function (props) {
36
+ }, function (props) {
37
37
  return props.$isButton ? _CommonStyling.DropdownContentButtonStyling : '';
38
38
  }, function (props) {
39
39
  return _styles.COLORS.getColor('neutral_100', props.theme);
@@ -91,7 +91,7 @@ var DropdownContentActionButtonContainer = _styledComponents["default"].div(_tem
91
91
  }, function (props) {
92
92
  return props.$size === _types.Size.Small || !props.$size ? '4px 16px 0px' : props.$size === _types.Size.Medium ? '12px 16px 8px' : '16px 16px 12px';
93
93
  });
94
- var Overlay = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: ", ";\n"])), _zIndexes.Z_INDEXES.modal);
94
+ var Overlay = _styledComponents["default"].div(_templateObject8 || (_templateObject8 = (0, _taggedTemplateLiteral2["default"])(["\n position: relative;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: ", ";\n"])), _zIndexes.Z_INDEXES.modal);
95
95
  var DropdownContent = /*#__PURE__*/_react["default"].forwardRef(function (_ref, ref) {
96
96
  var _ref2, _customizationProps$a;
97
97
  var id = _ref.id,
@@ -514,8 +514,6 @@ var DropdownContent = /*#__PURE__*/_react["default"].forwardRef(function (_ref,
514
514
  var _containerRef$current;
515
515
  var rect = containerRef === null || containerRef === void 0 ? void 0 : (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.getBoundingClientRect();
516
516
  if (rect) {
517
- dropdownContentRef.current.style.left = "".concat(rect.x + rect.width, "px");
518
- dropdownContentRef.current.style.top = "".concat(rect.y + rect.height, "px");
519
517
  dropdownContentRef.current.style.width = width !== null && width !== void 0 ? width : "".concat(rect.width, "px");
520
518
  }
521
519
  determineDropUp();
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownContent.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_Button","_types","_CommonStyling","_typography","_styles","_InputFields","_zIndexes","_MenuItem","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_arrayLikeToArray","toString","slice","constructor","name","from","test","MAX_MENU_HEIGHT","AVG_OPTION_HEIGHT","OFFSET_BEFORE_SHOW","DropdownContentContainer","styled","div","_taggedTemplateLiteral2","props","COLORS","getColor","theme","Z_INDEXES","dropdown","$isButton","concat","$offsetLeft","$offsetTop","DropdownContentButtonStyling","$size","Size","Large","Medium","$scrollable","$maxHeight","exports","DropdownContentItemsContainer","hover","active","focus","DropdownContentListContainer","$itemsType","scrollBarStyling","Small","DropdownContentMenuContentContainer","ComponentXLStyling","ComponentTextStyle","Bold","ComponentLStyling","ComponentMStyling","Regular","ComponentSStyling","DividerContainer","DropdownContentTopItemContainer","DropdownContentActionButtonContainer","Overlay","modal","DropdownContent","React","forwardRef","_ref","ref","_ref2","_customizationProps$a","id","customizationProps","alignLeft","isButton","size","isOpen","width","setIsOpen","filter","focused","setFocused","selectedValues","setSelectedValues","messageOnNoResults","outline","containerRef","onActiveDescendantChanged","_ref$ariaRolesType","ariaRolesType","_React$useState","useState","_React$useState2","_slicedToArray2","isUp","setIsUp","_React$useState3","_React$useState4","locationDefined","setLocationDefined","_React$useState5","top","left","_React$useState6","offset","setOffset","dropdownContentRef","useRef","itemsType","itemsListRef","actionButtonRef","determineDropUp","options","items","rect","current","getBoundingClientRect","windowHeight","window","innerHeight","menuHeight","Math","min","instOffsetWithMenu","height","up","setNewFocusedElement","index","_dropdownContentRef$c","newFocusedElement","elRefs","oldFocusedElement","_oldFocusedElement$cu","_newFocusedElement$cu","_newFocusedElement$cu2","classList","remove","add","scrollIntoView","block","inline","getFilteredItems","filtrationString","toUpperCase","x","_x$value","_x$displayLabel","includes","displayLabel","findNextActiveIndex","direction","i","_items","disabled","handleKeyDown","key","preventDefault","focusedNow","arrLength","haveTopItem","undefined","target","focusedElement","_focusedElement$curre","click","useEffect","document","addEventListener","removeEventListener","scrollPosition","handleScroll","_itemsListRef$current","scrollTop","useLayoutEffect","_scrollPosition$curre","getCorrectRef","createRef","_React$useState7","_React$useState8","setElRefs","fill","map","_","_getSuggestions","pinTopItem","multiSelect","getSuggestions","suggestion","_dropdownContentRef$c2","_dropdownContentRef$c3","_iterator","_step","_elRef$current","elRef","err","blur","_dropdownContentRef$c4","_dropdownContentRef$c5","observer","IntersectionObserver","entries","isIntersecting","_document","_document$activeEleme","activeElement","threshold","rootMargin","observe","calculateOffset","disconnect","handleItemClick","selected","item","newValue","_toConsumableArray2","onValueUpdate","getTopItem","_customizationProps$i","_customizationProps$i2","_selectedFirst$displa","_selectedFirst$displa2","visibleItems","allSelected","some","y","showTopItem","suggestions","find","c","selectedFirst","jsxs","children","jsx","RadioButton","role","iconPointerEventsTransparent","onFocus","tabIndexVal","className","select","label","Checkbox","newValues","semiSelected","Fragment","tabIndex","onClickHandler","stopPropagation","getElements","_item$displayLabel","_item$displayLabel2","customContent","_containerRef$current","style","cls","$alignLeft","scrollable","maxHeight","onScroll","$outline","menuContent","action","actionLabel","icon","actionIcon","loading","actionLoading","actionDisabled","variant","actionVariant","onClick","propTypes","_propTypes","bool","isRequired","shape","oneOf","node","string","func","arrayOf","noteLabel","showDividerAbove","locked","oneOfType","number","_default"],"sources":["../../src/Dropdown/DropdownContent.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport Button from '../Button/Button';\r\nimport { Size } from '../types';\r\nimport { DropdownContentButtonStyling } from './CommonStyling';\r\nimport { ComponentLStyling, ComponentXLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\r\nimport { COLORS, focusStyles, scrollBarStyling } from '../styles';\r\nimport { Checkbox, RadioButton } from '../InputFields';\r\nimport { Z_INDEXES } from '../styles/z-indexes';\r\nimport MenuItem from '../MenuItem/MenuItem';\r\nimport { defaultOnMouseDownHandler } from '../common';\r\n\r\nconst MAX_MENU_HEIGHT = 240;\r\nconst AVG_OPTION_HEIGHT = 48;\r\nconst OFFSET_BEFORE_SHOW = 1000000;\r\n\r\nexport const DropdownContentContainer = styled.div<{ $offsetTop: string; $offsetLeft: string; $isButton: boolean; $alignLeft?: boolean; $size?: Size; $scrollable?: boolean; $maxHeight?: string }>`\r\n display: none;\r\n pointer-events: auto;\r\n position: absolute;\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n\r\n z-index: ${Z_INDEXES.dropdown};\r\n margin: ${(props) => (props.$isButton ? '-4px' : '4px 0px')};\r\n\r\n &.show {\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n &.down,\r\n &.up {\r\n ${(props) => `transform: translate(${props.$offsetLeft}, ${props.$offsetTop});`}\r\n }\r\n }\r\n\r\n transform: translate(-${OFFSET_BEFORE_SHOW}px, -${OFFSET_BEFORE_SHOW}px);\r\n\r\n &.outline:focus:after {\r\n content: '';\r\n pointer-events: none;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n outline: 4px solid black;\r\n outline-offset: 2px;\r\n border-radius: 2px;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n ${(props) => (props.$isButton ? DropdownContentButtonStyling : '')};\r\n\r\n border: 1px solid ${props => COLORS.getColor('neutral_100', props.theme)};\r\n box-sizing: border-box;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n padding: 4px 0px;\r\n\r\n min-width: ${(props) => (props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n border-radius: ${(props) => (props.$size == Size.Large ? '10px' : props.$size == Size.Medium ? '8px' : '6px')};\r\n\r\n max-height: ${(props) => (!props.$scrollable ? 'auto' : props.$maxHeight ? props.$maxHeight : props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n`;\r\n\r\nexport const DropdownContentItemsContainer = styled.div<{ $size?: Size }>`\r\n > *:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n }\r\n\r\n > *:active,\r\n > *.active {\r\n z-index: ${Z_INDEXES.active};\r\n }\r\n\r\n > *:focus {\r\n z-index: ${Z_INDEXES.focus};\r\n }\r\n`;\r\n\r\nexport const DropdownContentListContainer = styled.div<{ $scrollable?: boolean; $size?: Size; $itemsType?: string; $outline?: boolean }>`\r\n ${(props) => (props.$scrollable ? 'overflow-y: scroll;' : '')}\r\n ${(props) => (props.$scrollable ? 'margin-right: 6px;' : '')}\r\n ${(props) => (props.$scrollable ? 'padding-right: 6px;' : '')}\r\n ${(props) => (props.$itemsType != 'normal' ? 'margin-left: 4px;' : '')}\r\n div.divider {\r\n display: block;\r\n width: calc(100% - 40px);\r\n margin-left: 16px;\r\n border-top: 1px solid #e5e5e5;\r\n position: absolute;\r\n top: 0px;\r\n }\r\n\r\n ${DropdownContentItemsContainer} {\r\n padding-top: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n padding-bottom: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n\r\n word-break: break-word;\r\n }\r\n\r\n *:focus {\r\n outline: none !important;\r\n }\r\n\r\n ${scrollBarStyling(Size.Small)}\r\n`;\r\n\r\nconst DropdownContentMenuContentContainer = styled.div<{ $size?: Size }>`\r\n h1,\r\n h2,\r\n h3 {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentXLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentMStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '10px 16px 6px' : props.$size == Size.Medium ? '16px 24px 8px' : '16px 32px 8px')};\r\n }\r\n\r\n p {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentLStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '8px 16px' : props.$size == Size.Medium ? '12px 24px' : '16px 32px')};\r\n }\r\n`;\r\n\r\nconst DividerContainer = styled.div<{ $size?: Size }>`\r\n position: relative;\r\n\r\n margin-top: ${(props) => (props.$size == Size.Large ? '16px' : props.$size == Size.Medium ? '12px' : props.$size == Size.Small || !props.$size ? '8px' : '6px')};\r\n\r\n div.divider {\r\n width: 100%;\r\n margin: 0px;\r\n }\r\n`;\r\n\r\nconst DropdownContentTopItemContainer = styled.div<{ $size?: Size }>`\r\n border-bottom-style: solid;\r\n border-bottom-color: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n border-bottom-width: 1px;\r\n margin-right: 22px;\r\n`;\r\n\r\nconst DropdownContentActionButtonContainer = styled.div<{ $size?: Size; $scrollable?: boolean }>`\r\n ${(props) => (props.$scrollable ? `border-top: 1px solid ${COLORS.getColor('neutral_200', props.theme)};` : '')}\r\n ${(props) => (props.$scrollable ? 'margin-top: 4px;' : '')}\r\n\r\n padding: ${(props) => (props.$size === Size.Small || !props.$size ? '4px 16px 0px' : props.$size === Size.Medium ? '12px 16px 8px' : '16px 16px 12px')};\r\n\r\n button {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nconst Overlay = styled.div`\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n pointer-events: none;\r\n z-index: ${Z_INDEXES.modal};\r\n`;\r\n\r\nexport interface DropdownItem {\r\n /** Required. Value of the DropdownItem. */\r\n value: string;\r\n /** Optional. Display label to show in the MenuItem. If not provided then 'value' will be used as label. */\r\n displayLabel?: string;\r\n /** Optional. Note label to be shown under the Display label in the MenuItem. */\r\n noteLabel?: string;\r\n /** */\r\n suggestion?: boolean;\r\n /** Optional. Show dividing line on the top of the item. */\r\n showDividerAbove?: boolean;\r\n /** Optional. If disabled user can not interact with the item. */\r\n disabled?: boolean;\r\n /** Optional. If item is locked then user can not interact with the item and 'lock' icon is shown on the right side of the item. */\r\n locked?: boolean;\r\n /** Optional. Icon to be shown on the left side of the menu item */\r\n icon?: React.ReactNode;\r\n /** */\r\n customContent?: React.ReactNode;\r\n}\r\n\r\nexport interface DropdownCustomizationProps {\r\n itemsType?: 'radio' | 'checkbox' | 'normal';\r\n menuContent?: React.ReactNode;\r\n scrollable?: boolean;\r\n multiSelect?: boolean;\r\n maxHeight?: string;\r\n actionLabel?: string;\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n actionIcon?: React.ReactNode;\r\n actionLoading?: boolean;\r\n actionDisabled?: boolean;\r\n action: () => boolean | void | undefined;\r\n pinTopItem?: boolean;\r\n onValueUpdate: (values: string[]) => boolean | void | undefined;\r\n items: DropdownItem[];\r\n}\r\n\r\nexport interface DropdownProps {\r\n isButton: boolean;\r\n customizationProps: DropdownCustomizationProps;\r\n alignLeft?: boolean;\r\n isOpen: boolean;\r\n setIsOpen: (open: boolean) => void;\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n id: string;\r\n filter: string;\r\n width?: string;\r\n onActiveDescendantChanged?: (descendantId?: string) => void;\r\n selectedValues: string[];\r\n setSelectedValues: (val: string[]) => void;\r\n messageOnNoResults: string;\r\n focused: number | null;\r\n setFocused: (focused: number | null) => void;\r\n outline?: boolean;\r\n containerRef: React.RefObject<HTMLDivElement>;\r\n ariaRolesType?: 'input' | 'menu';\r\n}\r\n\r\nconst DropdownContent = React.forwardRef<HTMLDivElement, DropdownProps>(\r\n (\r\n {\r\n id,\r\n customizationProps,\r\n alignLeft,\r\n isButton,\r\n size,\r\n isOpen,\r\n width,\r\n setIsOpen,\r\n filter,\r\n focused,\r\n setFocused,\r\n selectedValues,\r\n setSelectedValues,\r\n messageOnNoResults,\r\n outline,\r\n containerRef,\r\n onActiveDescendantChanged,\r\n ariaRolesType = 'menu',\r\n },\r\n ref,\r\n ) => {\r\n const [isUp, setIsUp] = React.useState<boolean>(false);\r\n const [locationDefined, setLocationDefined] = React.useState<boolean>(false);\r\n const [offset, setOffset] = React.useState<{ top: string; left: string }>({ top: '0', left: '0' });\r\n\r\n const dropdownContentRef = (ref as MutableRefObject<HTMLDivElement>) ?? React.useRef<HTMLDivElement>(null);\r\n\r\n if (!customizationProps.itemsType) customizationProps.itemsType = 'normal';\r\n if (!size) size = Size.Small;\r\n\r\n const itemsListRef = React.useRef<HTMLDivElement>(null);\r\n const actionButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const determineDropUp = () => {\r\n const options = customizationProps.items;\r\n\r\n const rect = containerRef.current!.getBoundingClientRect();\r\n\r\n const windowHeight = window.innerHeight;\r\n const menuHeight = Math.min(MAX_MENU_HEIGHT, options.length * AVG_OPTION_HEIGHT);\r\n const instOffsetWithMenu = rect.top + rect.height + menuHeight;\r\n\r\n const up = instOffsetWithMenu >= windowHeight;\r\n\r\n setOffset({\r\n top: up ? `calc(-100% - ${rect.height}px ${isButton ? '' : '- 8px'})` : '0',\r\n left: alignLeft ? `calc(-${rect.width}px)` : `calc(-100%)`,\r\n });\r\n\r\n setIsUp(up);\r\n setLocationDefined(true);\r\n };\r\n\r\n const setNewFocusedElement = (index: number) => {\r\n if (outline) dropdownContentRef.current?.focus();\r\n\r\n const newFocusedElement = elRefs[index];\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(index == 0 ? `${id}_topitem` : `${id}_${index}`);\r\n\r\n const oldFocusedElement = focused || focused === 0 ? elRefs[focused] : null;\r\n if (newFocusedElement && newFocusedElement !== oldFocusedElement) {\r\n setFocused(index);\r\n oldFocusedElement?.current?.classList.remove('dropdown-hover');\r\n\r\n newFocusedElement.current?.classList.add('dropdown-hover');\r\n newFocusedElement.current?.scrollIntoView({\r\n block: 'nearest',\r\n inline: 'nearest',\r\n });\r\n }\r\n };\r\n\r\n const getFilteredItems = () => {\r\n const filtrationString = (filter ?? '').toUpperCase();\r\n return customizationProps.items.filter((x) => x?.value?.toUpperCase().includes(filtrationString) || x?.displayLabel?.toUpperCase().includes(filtrationString));\r\n };\r\n\r\n const findNextActiveIndex = (index: number, direction: number, items: DropdownItem[]) => {\r\n for (let i = index + direction; i > 0 && i <= items.length; i += direction) {\r\n if (!items[i - 1]?.disabled) {\r\n return i;\r\n }\r\n }\r\n\r\n return index;\r\n };\r\n\r\n const handleKeyDown = (e: KeyboardEvent) => {\r\n if (isOpen) {\r\n if (e.key === 'ArrowUp' || e.key === 'Up') {\r\n e.preventDefault();\r\n let focusedNow = focused || focused === 0 ? focused : arrLength + 1;\r\n if (!!focusedNow) {\r\n focusedNow = focusedNow === 1 && haveTopItem() ? 0 : findNextActiveIndex(focusedNow, -1, getFilteredItems());\r\n\r\n setNewFocusedElement(focusedNow);\r\n }\r\n } else if (e.key === 'ArrowDown' || e.key === 'Down') {\r\n e.preventDefault();\r\n let focusedNow = focused;\r\n\r\n focusedNow = !!focusedNow || focusedNow === 0 ? findNextActiveIndex(focusedNow, 1, getFilteredItems()) : haveTopItem() ? 0 : 1;\r\n\r\n setNewFocusedElement(focusedNow);\r\n } else if (e.key === 'Escape' || e.key === 'Esc') {\r\n setIsOpen(false);\r\n setFocused(null);\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n } else if ((e.key === 'Enter' || e.key === ' ') && focused !== null && e.target !== actionButtonRef?.current) {\r\n e.preventDefault();\r\n const focusedElement = elRefs[focused];\r\n if (focusedElement) {\r\n focusedElement.current?.click();\r\n }\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n }\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n document.addEventListener('keydown', handleKeyDown);\r\n return () => {\r\n document.removeEventListener('keydown', handleKeyDown);\r\n };\r\n }, []);\r\n\r\n const scrollPosition = React.useRef<number | undefined>(0);\r\n const handleScroll = () => {\r\n scrollPosition.current = itemsListRef.current?.scrollTop;\r\n };\r\n React.useLayoutEffect(() => {\r\n if (itemsListRef.current) itemsListRef.current.scrollTop = scrollPosition.current ?? 0;\r\n }, [selectedValues]);\r\n\r\n const getCorrectRef = (ref: React.RefObject<HTMLElement>): React.RefObject<HTMLElement> => {\r\n switch (customizationProps.itemsType) {\r\n case 'normal':\r\n return (ref as React.RefObject<HTMLButtonElement>) || React.createRef<HTMLButtonElement>();\r\n default:\r\n return (ref as React.RefObject<HTMLDivElement>) || React.createRef<HTMLDivElement>();\r\n }\r\n };\r\n\r\n const arrLength = getFilteredItems().length;\r\n const [elRefs, setElRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\r\n\r\n React.useEffect(() => {\r\n if (elRefs?.length !== arrLength) {\r\n setFocused(null);\r\n }\r\n\r\n setElRefs((elRefs) =>\r\n Array(arrLength + 1)\r\n .fill(null)\r\n .map((_, i) => getCorrectRef(elRefs[i])),\r\n );\r\n }, [isOpen, arrLength]);\r\n\r\n React.useLayoutEffect(() => {\r\n isOpen && !locationDefined && determineDropUp();\r\n }, [isOpen, locationDefined]);\r\n\r\n const haveTopItem = () => {\r\n if (!customizationProps.pinTopItem) return false;\r\n\r\n if (customizationProps.itemsType === 'radio' && selectedValues && selectedValues?.length > 0) return true;\r\n else if (customizationProps.itemsType === 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) return true;\r\n else if (customizationProps.itemsType === 'normal' && getSuggestions()?.length > 0) return true;\r\n return false;\r\n };\r\n\r\n const getSuggestions = () => {\r\n return getFilteredItems().filter((x) => x.suggestion);\r\n };\r\n\r\n /**\r\n * when dropdown opens set correct position of focused item\r\n * */\r\n React.useLayoutEffect(() => {\r\n if (isOpen && (focused || focused === 0)) {\r\n setNewFocusedElement(focused === 0 && !haveTopItem() ? 1 : focused);\r\n }\r\n }, [isOpen, focused]);\r\n\r\n /**\r\n * Reset dropdown content state on close\r\n * */\r\n React.useEffect(() => {\r\n if (!isOpen) {\r\n setLocationDefined(false);\r\n for (let elRef of elRefs) {\r\n elRef.current?.classList.remove('dropdown-hover');\r\n }\r\n setFocused(null);\r\n if(onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n dropdownContentRef.current?.classList.remove('outline');\r\n dropdownContentRef.current?.blur();\r\n } else {\r\n if (outline) {\r\n dropdownContentRef.current?.classList.add('outline');\r\n dropdownContentRef.current?.focus();\r\n }\r\n }\r\n }, [isOpen, dropdownContentRef, focused, outline]);\r\n\r\n /**\r\n * Scroll item container to top when dropdown opens\r\n * */\r\n React.useEffect(() => {\r\n if (isOpen && itemsListRef.current) {\r\n itemsListRef.current.scrollTop = 0;\r\n }\r\n }, [isOpen]);\r\n\r\n React.useEffect(() => {\r\n if (isOpen) {\r\n const observer = new IntersectionObserver(function (entries) {\r\n if (!entries[0].isIntersecting) {\r\n setIsOpen(false);\r\n //@ts-ignore\r\n document?.activeElement?.blur();\r\n }\r\n }, {threshold: [0], rootMargin: '8px'});\r\n\r\n observer.observe(containerRef.current!);\r\n\r\n calculateOffset();\r\n window.addEventListener('scroll', calculateOffset, true);\r\n window.addEventListener('resize', calculateOffset);\r\n\r\n return () => {\r\n observer.disconnect();\r\n window.removeEventListener('scroll', calculateOffset, true);\r\n window.removeEventListener('resize', calculateOffset);\r\n }\r\n }\r\n return () => {};\r\n }, [isOpen]);\r\n\r\n const handleItemClick = (selected: boolean, item: DropdownItem) => {\r\n let newValue: string[] = [];\r\n if (customizationProps.multiSelect) {\r\n if (selected) newValue = [...selectedValues, item.value];\r\n else newValue = selectedValues.filter((x) => x != item.value);\r\n } else newValue = selected ? [item.value] : [];\r\n\r\n setSelectedValues(newValue);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValue)) {\r\n setIsOpen(false);\r\n }\r\n };\r\n\r\n const getTopItem = () => {\r\n if (!customizationProps.pinTopItem) return;\r\n const visibleItems = getFilteredItems();\r\n const allSelected = selectedValues?.filter((x) => visibleItems.some((y) => y.value == x)).length == visibleItems.length;\r\n let showTopItem = false;\r\n const suggestions = getSuggestions();\r\n const displayLabel = selectedValues[0] ? customizationProps.items?.find((c) => c.value === selectedValues[0])?.displayLabel : undefined;\r\n if (customizationProps.itemsType == 'radio' && selectedValues && selectedValues?.length > 0) showTopItem = true;\r\n else if (customizationProps.itemsType == 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) showTopItem = true;\r\n else if (customizationProps.itemsType == 'normal' && suggestions.length > 0) showTopItem = true;\r\n\r\n if (!showTopItem) return;\r\n\r\n const selectedFirst = selectedValues.length > 0 ? visibleItems.find((x) => x.value == selectedValues[0]) : null;\r\n\r\n return (\r\n <DropdownContentTopItemContainer $size={size}>\r\n {customizationProps.itemsType === 'radio' && (\r\n <RadioButton\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemradio'\r\n iconPointerEventsTransparent={true}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={() => {}}\r\n label={selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n size={size}\r\n id={`${id}_topitem`}\r\n selected={true}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'checkbox' && (\r\n <Checkbox\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemcheckbox'\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={(selected: boolean) => {\r\n if (!customizationProps.multiSelect) return;\r\n\r\n const newValues = selected ? visibleItems.map((x) => x.value) : [];\r\n setSelectedValues(newValues);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValues)) setIsOpen(false);\r\n }}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n iconPointerEventsTransparent={true}\r\n semiSelected={customizationProps.multiSelect && !allSelected && selectedValues?.length > 0}\r\n size={size}\r\n id={`${id}_checkbox_selectall`}\r\n label={customizationProps.multiSelect ? 'Select all' : selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n selected={!customizationProps.multiSelect || allSelected}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'normal' && (\r\n <>\r\n {suggestions.map((x) => (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`${id}_topitem_${x.value}`}\r\n item={x}\r\n size={size}\r\n active={false}\r\n tabIndex={-1}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[0] as React.RefObject<HTMLButtonElement>}\r\n id={`${id}_topitem`}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([x.value]);\r\n setSelectedValues([x.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n ))}\r\n </>\r\n )}\r\n </DropdownContentTopItemContainer>\r\n );\r\n };\r\n\r\n const getElements = (messageOnNoResults: string, size: Size.Small | Size.Medium | Size.Large) => {\r\n if (getFilteredItems().length === 0) {\r\n return <MenuItem item={{ value: messageOnNoResults, disabled: true }} size={size} id=\"noResultsFound\" active={false} onClickHandler={(e) => {}} />;\r\n }\r\n return (\r\n <DropdownContentItemsContainer $size={size}>\r\n {getFilteredItems()\r\n .filter((x) => x && (customizationProps.itemsType != 'normal' || !x.suggestion))\r\n .map((item, index) => {\r\n return (\r\n <React.Fragment key={`key_${id}_${item.value}`}>\r\n {item.customContent}\r\n {!item.customContent && customizationProps.itemsType == 'radio' && (\r\n <RadioButton\r\n role='menuitemradio'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && customizationProps.itemsType == 'checkbox' && (\r\n <Checkbox\r\n role='menuitemcheckbox'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && (customizationProps.itemsType == 'normal' || !customizationProps.itemsType) && (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`key_${id}_${index + 1}`}\r\n id={`${id}_${index + 1}`}\r\n item={item}\r\n tabIndex={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n size={size}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n active={selectedValues?.includes(item.value)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLButtonElement>}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([item.value]);\r\n setSelectedValues([item.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n )}\r\n </React.Fragment>\r\n );\r\n })}\r\n </DropdownContentItemsContainer>\r\n );\r\n };\r\n\r\n const calculateOffset = () => {\r\n const rect = containerRef?.current?.getBoundingClientRect();\r\n if (rect) {\r\n dropdownContentRef.current.style.left = `${rect.x + rect.width}px`;\r\n dropdownContentRef.current.style.top = `${rect.y + rect.height}px`;\r\n dropdownContentRef.current.style.width = width ?? `${rect.width}px`;\r\n }\r\n determineDropUp();\r\n };\r\n\r\n const cls = `${isOpen ? 'show' : ''} ${isOpen && outline ? 'outline' : ''} ${locationDefined ? (isUp ? 'up' : 'down') : ''}`;\r\n\r\n return (\r\n <Overlay>\r\n <DropdownContentContainer\r\n role={ariaRolesType == \"menu\" ? \"menu\" : \"optionlist\"}\r\n ref={dropdownContentRef}\r\n $size={size}\r\n $offsetTop={offset.top}\r\n id={id}\r\n $offsetLeft={offset.left}\r\n tabIndex={-1}\r\n $isButton={isButton}\r\n $alignLeft={alignLeft}\r\n $scrollable={customizationProps.scrollable}\r\n $maxHeight={customizationProps.maxHeight}\r\n className={cls}>\r\n <DropdownContentListContainer\r\n role=\"group\"\r\n $size={size}\r\n $itemsType={customizationProps.itemsType}\r\n onScroll={handleScroll}\r\n ref={itemsListRef}\r\n $outline={outline}\r\n $scrollable={customizationProps.scrollable}>\r\n {customizationProps.menuContent && (\r\n <DropdownContentMenuContentContainer $size={size}>\r\n {customizationProps.menuContent}\r\n <DividerContainer $size={size}>\r\n <div className=\"divider\" />\r\n </DividerContainer>\r\n </DropdownContentMenuContentContainer>\r\n )}\r\n {customizationProps.pinTopItem && getTopItem()}\r\n {getElements(messageOnNoResults, size)}\r\n </DropdownContentListContainer>\r\n {customizationProps.action && customizationProps.actionLabel && (\r\n <DropdownContentActionButtonContainer $size={size} $scrollable={customizationProps.scrollable}>\r\n <Button\r\n width=\"100%\"\r\n role=\"menuitem\"\r\n icon={customizationProps.actionIcon}\r\n ref={actionButtonRef}\r\n loading={customizationProps.actionLoading}\r\n disabled={customizationProps.actionDisabled}\r\n variant={customizationProps.actionVariant ?? 'primary'}\r\n size={size}\r\n onClick={() => customizationProps.action() && setIsOpen(false)}>\r\n {customizationProps.actionLabel}\r\n </Button>\r\n </DropdownContentActionButtonContainer>\r\n )}\r\n </DropdownContentContainer>\r\n </Overlay>\r\n );\r\n },\r\n);\r\n\r\nexport default DropdownContent;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DropdownContent.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_Button","_types","_CommonStyling","_typography","_styles","_InputFields","_zIndexes","_MenuItem","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_createForOfIteratorHelper","r","e","t","Symbol","iterator","Array","isArray","_unsupportedIterableToArray","length","_n","F","s","n","done","value","f","TypeError","o","a","u","call","next","_arrayLikeToArray","toString","slice","constructor","name","from","test","MAX_MENU_HEIGHT","AVG_OPTION_HEIGHT","OFFSET_BEFORE_SHOW","DropdownContentContainer","styled","div","_taggedTemplateLiteral2","props","COLORS","getColor","theme","Z_INDEXES","dropdown","$isButton","concat","$offsetLeft","$offsetTop","DropdownContentButtonStyling","$size","Size","Large","Medium","$scrollable","$maxHeight","exports","DropdownContentItemsContainer","hover","active","focus","DropdownContentListContainer","$itemsType","scrollBarStyling","Small","DropdownContentMenuContentContainer","ComponentXLStyling","ComponentTextStyle","Bold","ComponentLStyling","ComponentMStyling","Regular","ComponentSStyling","DividerContainer","DropdownContentTopItemContainer","DropdownContentActionButtonContainer","Overlay","modal","DropdownContent","React","forwardRef","_ref","ref","_ref2","_customizationProps$a","id","customizationProps","alignLeft","isButton","size","isOpen","width","setIsOpen","filter","focused","setFocused","selectedValues","setSelectedValues","messageOnNoResults","outline","containerRef","onActiveDescendantChanged","_ref$ariaRolesType","ariaRolesType","_React$useState","useState","_React$useState2","_slicedToArray2","isUp","setIsUp","_React$useState3","_React$useState4","locationDefined","setLocationDefined","_React$useState5","top","left","_React$useState6","offset","setOffset","dropdownContentRef","useRef","itemsType","itemsListRef","actionButtonRef","determineDropUp","options","items","rect","current","getBoundingClientRect","windowHeight","window","innerHeight","menuHeight","Math","min","instOffsetWithMenu","height","up","setNewFocusedElement","index","_dropdownContentRef$c","newFocusedElement","elRefs","oldFocusedElement","_oldFocusedElement$cu","_newFocusedElement$cu","_newFocusedElement$cu2","classList","remove","add","scrollIntoView","block","inline","getFilteredItems","filtrationString","toUpperCase","x","_x$value","_x$displayLabel","includes","displayLabel","findNextActiveIndex","direction","i","_items","disabled","handleKeyDown","key","preventDefault","focusedNow","arrLength","haveTopItem","undefined","target","focusedElement","_focusedElement$curre","click","useEffect","document","addEventListener","removeEventListener","scrollPosition","handleScroll","_itemsListRef$current","scrollTop","useLayoutEffect","_scrollPosition$curre","getCorrectRef","createRef","_React$useState7","_React$useState8","setElRefs","fill","map","_","_getSuggestions","pinTopItem","multiSelect","getSuggestions","suggestion","_dropdownContentRef$c2","_dropdownContentRef$c3","_iterator","_step","_elRef$current","elRef","err","blur","_dropdownContentRef$c4","_dropdownContentRef$c5","observer","IntersectionObserver","entries","isIntersecting","_document","_document$activeEleme","activeElement","threshold","rootMargin","observe","calculateOffset","disconnect","handleItemClick","selected","item","newValue","_toConsumableArray2","onValueUpdate","getTopItem","_customizationProps$i","_customizationProps$i2","_selectedFirst$displa","_selectedFirst$displa2","visibleItems","allSelected","some","y","showTopItem","suggestions","find","c","selectedFirst","jsxs","children","jsx","RadioButton","role","iconPointerEventsTransparent","onFocus","tabIndexVal","className","select","label","Checkbox","newValues","semiSelected","Fragment","tabIndex","onClickHandler","stopPropagation","getElements","_item$displayLabel","_item$displayLabel2","customContent","_containerRef$current","style","cls","$alignLeft","scrollable","maxHeight","onScroll","$outline","menuContent","action","actionLabel","icon","actionIcon","loading","actionLoading","actionDisabled","variant","actionVariant","onClick","propTypes","_propTypes","bool","isRequired","shape","oneOf","node","string","func","arrayOf","noteLabel","showDividerAbove","locked","oneOfType","number","_default"],"sources":["../../src/Dropdown/DropdownContent.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport Button from '../Button/Button';\r\nimport { Size } from '../types';\r\nimport { DropdownContentButtonStyling } from './CommonStyling';\r\nimport { ComponentLStyling, ComponentXLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\r\nimport { COLORS, focusStyles, scrollBarStyling } from '../styles';\r\nimport { Checkbox, RadioButton } from '../InputFields';\r\nimport { Z_INDEXES } from '../styles/z-indexes';\r\nimport MenuItem from '../MenuItem/MenuItem';\r\nimport { defaultOnMouseDownHandler } from '../common';\r\n\r\nconst MAX_MENU_HEIGHT = 240;\r\nconst AVG_OPTION_HEIGHT = 48;\r\nconst OFFSET_BEFORE_SHOW = 1000000;\r\n\r\nexport const DropdownContentContainer = styled.div<{ $offsetTop: string; $offsetLeft: string; $isButton: boolean; $alignLeft?: boolean; $size?: Size; $scrollable?: boolean; $maxHeight?: string }>`\r\n display: none;\r\n pointer-events: auto;\r\n position: absolute;\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n\r\n z-index: ${Z_INDEXES.dropdown};\r\n margin: ${(props) => (props.$isButton ? '-4px' : '4px 0px')};\r\n\r\n inset: 0px auto auto 100%;\r\n\r\n &.show {\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n &.down,\r\n &.up {\r\n ${(props) => `transform: translate(${props.$offsetLeft}, ${props.$offsetTop});`}\r\n }\r\n }\r\n\r\n &.outline:focus:after {\r\n content: '';\r\n pointer-events: none;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n outline: 4px solid black;\r\n outline-offset: 2px;\r\n border-radius: 2px;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n ${(props) => (props.$isButton ? DropdownContentButtonStyling : '')};\r\n\r\n border: 1px solid ${props => COLORS.getColor('neutral_100', props.theme)};\r\n box-sizing: border-box;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n padding: 4px 0px;\r\n\r\n min-width: ${(props) => (props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n border-radius: ${(props) => (props.$size == Size.Large ? '10px' : props.$size == Size.Medium ? '8px' : '6px')};\r\n\r\n max-height: ${(props) => (!props.$scrollable ? 'auto' : props.$maxHeight ? props.$maxHeight : props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n`;\r\n\r\nexport const DropdownContentItemsContainer = styled.div<{ $size?: Size }>`\r\n > *:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n }\r\n\r\n > *:active,\r\n > *.active {\r\n z-index: ${Z_INDEXES.active};\r\n }\r\n\r\n > *:focus {\r\n z-index: ${Z_INDEXES.focus};\r\n }\r\n`;\r\n\r\nexport const DropdownContentListContainer = styled.div<{ $scrollable?: boolean; $size?: Size; $itemsType?: string; $outline?: boolean }>`\r\n ${(props) => (props.$scrollable ? 'overflow-y: scroll;' : '')}\r\n ${(props) => (props.$scrollable ? 'margin-right: 6px;' : '')}\r\n ${(props) => (props.$scrollable ? 'padding-right: 6px;' : '')}\r\n ${(props) => (props.$itemsType != 'normal' ? 'margin-left: 4px;' : '')}\r\n div.divider {\r\n display: block;\r\n width: calc(100% - 40px);\r\n margin-left: 16px;\r\n border-top: 1px solid #e5e5e5;\r\n position: absolute;\r\n top: 0px;\r\n }\r\n\r\n ${DropdownContentItemsContainer} {\r\n padding-top: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n padding-bottom: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n\r\n word-break: break-word;\r\n }\r\n\r\n *:focus {\r\n outline: none !important;\r\n }\r\n\r\n ${scrollBarStyling(Size.Small)}\r\n`;\r\n\r\nconst DropdownContentMenuContentContainer = styled.div<{ $size?: Size }>`\r\n h1,\r\n h2,\r\n h3 {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentXLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentMStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '10px 16px 6px' : props.$size == Size.Medium ? '16px 24px 8px' : '16px 32px 8px')};\r\n }\r\n\r\n p {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentLStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '8px 16px' : props.$size == Size.Medium ? '12px 24px' : '16px 32px')};\r\n }\r\n`;\r\n\r\nconst DividerContainer = styled.div<{ $size?: Size }>`\r\n position: relative;\r\n\r\n margin-top: ${(props) => (props.$size == Size.Large ? '16px' : props.$size == Size.Medium ? '12px' : props.$size == Size.Small || !props.$size ? '8px' : '6px')};\r\n\r\n div.divider {\r\n width: 100%;\r\n margin: 0px;\r\n }\r\n`;\r\n\r\nconst DropdownContentTopItemContainer = styled.div<{ $size?: Size }>`\r\n border-bottom-style: solid;\r\n border-bottom-color: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n border-bottom-width: 1px;\r\n margin-right: 22px;\r\n`;\r\n\r\nconst DropdownContentActionButtonContainer = styled.div<{ $size?: Size; $scrollable?: boolean }>`\r\n ${(props) => (props.$scrollable ? `border-top: 1px solid ${COLORS.getColor('neutral_200', props.theme)};` : '')}\r\n ${(props) => (props.$scrollable ? 'margin-top: 4px;' : '')}\r\n\r\n padding: ${(props) => (props.$size === Size.Small || !props.$size ? '4px 16px 0px' : props.$size === Size.Medium ? '12px 16px 8px' : '16px 16px 12px')};\r\n\r\n button {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nconst Overlay = styled.div`\r\n position: relative;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n pointer-events: none;\r\n z-index: ${Z_INDEXES.modal};\r\n`;\r\n\r\nexport interface DropdownItem {\r\n /** Required. Value of the DropdownItem. */\r\n value: string;\r\n /** Optional. Display label to show in the MenuItem. If not provided then 'value' will be used as label. */\r\n displayLabel?: string;\r\n /** Optional. Note label to be shown under the Display label in the MenuItem. */\r\n noteLabel?: string;\r\n /** */\r\n suggestion?: boolean;\r\n /** Optional. Show dividing line on the top of the item. */\r\n showDividerAbove?: boolean;\r\n /** Optional. If disabled user can not interact with the item. */\r\n disabled?: boolean;\r\n /** Optional. If item is locked then user can not interact with the item and 'lock' icon is shown on the right side of the item. */\r\n locked?: boolean;\r\n /** Optional. Icon to be shown on the left side of the menu item */\r\n icon?: React.ReactNode;\r\n /** */\r\n customContent?: React.ReactNode;\r\n}\r\n\r\nexport interface DropdownCustomizationProps {\r\n itemsType?: 'radio' | 'checkbox' | 'normal';\r\n menuContent?: React.ReactNode;\r\n scrollable?: boolean;\r\n multiSelect?: boolean;\r\n maxHeight?: string;\r\n actionLabel?: string;\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n actionIcon?: React.ReactNode;\r\n actionLoading?: boolean;\r\n actionDisabled?: boolean;\r\n action: () => boolean | void | undefined;\r\n pinTopItem?: boolean;\r\n onValueUpdate: (values: string[]) => boolean | void | undefined;\r\n items: DropdownItem[];\r\n}\r\n\r\nexport interface DropdownProps {\r\n isButton: boolean;\r\n customizationProps: DropdownCustomizationProps;\r\n alignLeft?: boolean;\r\n isOpen: boolean;\r\n setIsOpen: (open: boolean) => void;\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n id: string;\r\n filter: string;\r\n width?: string;\r\n onActiveDescendantChanged?: (descendantId?: string) => void;\r\n selectedValues: string[];\r\n setSelectedValues: (val: string[]) => void;\r\n messageOnNoResults: string;\r\n focused: number | null;\r\n setFocused: (focused: number | null) => void;\r\n outline?: boolean;\r\n containerRef: React.RefObject<HTMLDivElement>;\r\n ariaRolesType?: 'input' | 'menu';\r\n}\r\n\r\nconst DropdownContent = React.forwardRef<HTMLDivElement, DropdownProps>(\r\n (\r\n {\r\n id,\r\n customizationProps,\r\n alignLeft,\r\n isButton,\r\n size,\r\n isOpen,\r\n width,\r\n setIsOpen,\r\n filter,\r\n focused,\r\n setFocused,\r\n selectedValues,\r\n setSelectedValues,\r\n messageOnNoResults,\r\n outline,\r\n containerRef,\r\n onActiveDescendantChanged,\r\n ariaRolesType = 'menu',\r\n },\r\n ref,\r\n ) => {\r\n const [isUp, setIsUp] = React.useState<boolean>(false);\r\n const [locationDefined, setLocationDefined] = React.useState<boolean>(false);\r\n const [offset, setOffset] = React.useState<{ top: string; left: string }>({ top: '0', left: '0' });\r\n\r\n const dropdownContentRef = (ref as MutableRefObject<HTMLDivElement>) ?? React.useRef<HTMLDivElement>(null);\r\n\r\n if (!customizationProps.itemsType) customizationProps.itemsType = 'normal';\r\n if (!size) size = Size.Small;\r\n\r\n const itemsListRef = React.useRef<HTMLDivElement>(null);\r\n const actionButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const determineDropUp = () => {\r\n const options = customizationProps.items;\r\n\r\n const rect = containerRef.current!.getBoundingClientRect();\r\n\r\n const windowHeight = window.innerHeight;\r\n const menuHeight = Math.min(MAX_MENU_HEIGHT, options.length * AVG_OPTION_HEIGHT);\r\n const instOffsetWithMenu = rect.top + rect.height + menuHeight;\r\n\r\n const up = instOffsetWithMenu >= windowHeight;\r\n\r\n setOffset({\r\n top: up ? `calc(-100% - ${rect.height}px ${isButton ? '' : '- 8px'})` : '0',\r\n left: alignLeft ? `calc(-${rect.width}px)` : `calc(-100%)`,\r\n });\r\n\r\n setIsUp(up);\r\n setLocationDefined(true);\r\n };\r\n\r\n const setNewFocusedElement = (index: number) => {\r\n if (outline) dropdownContentRef.current?.focus();\r\n\r\n const newFocusedElement = elRefs[index];\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(index == 0 ? `${id}_topitem` : `${id}_${index}`);\r\n\r\n const oldFocusedElement = focused || focused === 0 ? elRefs[focused] : null;\r\n if (newFocusedElement && newFocusedElement !== oldFocusedElement) {\r\n setFocused(index);\r\n oldFocusedElement?.current?.classList.remove('dropdown-hover');\r\n\r\n newFocusedElement.current?.classList.add('dropdown-hover');\r\n newFocusedElement.current?.scrollIntoView({\r\n block: 'nearest',\r\n inline: 'nearest',\r\n });\r\n }\r\n };\r\n\r\n const getFilteredItems = () => {\r\n const filtrationString = (filter ?? '').toUpperCase();\r\n return customizationProps.items.filter((x) => x?.value?.toUpperCase().includes(filtrationString) || x?.displayLabel?.toUpperCase().includes(filtrationString));\r\n };\r\n\r\n const findNextActiveIndex = (index: number, direction: number, items: DropdownItem[]) => {\r\n for (let i = index + direction; i > 0 && i <= items.length; i += direction) {\r\n if (!items[i - 1]?.disabled) {\r\n return i;\r\n }\r\n }\r\n\r\n return index;\r\n };\r\n\r\n const handleKeyDown = (e: KeyboardEvent) => {\r\n if (isOpen) {\r\n if (e.key === 'ArrowUp' || e.key === 'Up') {\r\n e.preventDefault();\r\n let focusedNow = focused || focused === 0 ? focused : arrLength + 1;\r\n if (!!focusedNow) {\r\n focusedNow = focusedNow === 1 && haveTopItem() ? 0 : findNextActiveIndex(focusedNow, -1, getFilteredItems());\r\n\r\n setNewFocusedElement(focusedNow);\r\n }\r\n } else if (e.key === 'ArrowDown' || e.key === 'Down') {\r\n e.preventDefault();\r\n let focusedNow = focused;\r\n\r\n focusedNow = !!focusedNow || focusedNow === 0 ? findNextActiveIndex(focusedNow, 1, getFilteredItems()) : haveTopItem() ? 0 : 1;\r\n\r\n setNewFocusedElement(focusedNow);\r\n } else if (e.key === 'Escape' || e.key === 'Esc') {\r\n setIsOpen(false);\r\n setFocused(null);\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n } else if ((e.key === 'Enter' || e.key === ' ') && focused !== null && e.target !== actionButtonRef?.current) {\r\n e.preventDefault();\r\n const focusedElement = elRefs[focused];\r\n if (focusedElement) {\r\n focusedElement.current?.click();\r\n }\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n }\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n document.addEventListener('keydown', handleKeyDown);\r\n return () => {\r\n document.removeEventListener('keydown', handleKeyDown);\r\n };\r\n }, []);\r\n\r\n const scrollPosition = React.useRef<number | undefined>(0);\r\n const handleScroll = () => {\r\n scrollPosition.current = itemsListRef.current?.scrollTop;\r\n };\r\n React.useLayoutEffect(() => {\r\n if (itemsListRef.current) itemsListRef.current.scrollTop = scrollPosition.current ?? 0;\r\n }, [selectedValues]);\r\n\r\n const getCorrectRef = (ref: React.RefObject<HTMLElement>): React.RefObject<HTMLElement> => {\r\n switch (customizationProps.itemsType) {\r\n case 'normal':\r\n return (ref as React.RefObject<HTMLButtonElement>) || React.createRef<HTMLButtonElement>();\r\n default:\r\n return (ref as React.RefObject<HTMLDivElement>) || React.createRef<HTMLDivElement>();\r\n }\r\n };\r\n\r\n const arrLength = getFilteredItems().length;\r\n const [elRefs, setElRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\r\n\r\n React.useEffect(() => {\r\n if (elRefs?.length !== arrLength) {\r\n setFocused(null);\r\n }\r\n\r\n setElRefs((elRefs) =>\r\n Array(arrLength + 1)\r\n .fill(null)\r\n .map((_, i) => getCorrectRef(elRefs[i])),\r\n );\r\n }, [isOpen, arrLength]);\r\n\r\n React.useLayoutEffect(() => {\r\n isOpen && !locationDefined && determineDropUp();\r\n }, [isOpen, locationDefined]);\r\n\r\n const haveTopItem = () => {\r\n if (!customizationProps.pinTopItem) return false;\r\n\r\n if (customizationProps.itemsType === 'radio' && selectedValues && selectedValues?.length > 0) return true;\r\n else if (customizationProps.itemsType === 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) return true;\r\n else if (customizationProps.itemsType === 'normal' && getSuggestions()?.length > 0) return true;\r\n return false;\r\n };\r\n\r\n const getSuggestions = () => {\r\n return getFilteredItems().filter((x) => x.suggestion);\r\n };\r\n\r\n /**\r\n * when dropdown opens set correct position of focused item\r\n * */\r\n React.useLayoutEffect(() => {\r\n if (isOpen && (focused || focused === 0)) {\r\n setNewFocusedElement(focused === 0 && !haveTopItem() ? 1 : focused);\r\n }\r\n }, [isOpen, focused]);\r\n\r\n /**\r\n * Reset dropdown content state on close\r\n * */\r\n React.useEffect(() => {\r\n if (!isOpen) {\r\n setLocationDefined(false);\r\n for (let elRef of elRefs) {\r\n elRef.current?.classList.remove('dropdown-hover');\r\n }\r\n setFocused(null);\r\n if(onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n dropdownContentRef.current?.classList.remove('outline');\r\n dropdownContentRef.current?.blur();\r\n } else {\r\n if (outline) {\r\n dropdownContentRef.current?.classList.add('outline');\r\n dropdownContentRef.current?.focus();\r\n }\r\n }\r\n }, [isOpen, dropdownContentRef, focused, outline]);\r\n\r\n /**\r\n * Scroll item container to top when dropdown opens\r\n * */\r\n React.useEffect(() => {\r\n if (isOpen && itemsListRef.current) {\r\n itemsListRef.current.scrollTop = 0;\r\n }\r\n }, [isOpen]);\r\n\r\n React.useEffect(() => {\r\n if (isOpen) {\r\n const observer = new IntersectionObserver(function (entries) {\r\n if (!entries[0].isIntersecting) {\r\n setIsOpen(false);\r\n //@ts-ignore\r\n document?.activeElement?.blur();\r\n }\r\n }, {threshold: [0], rootMargin: '8px'});\r\n\r\n observer.observe(containerRef.current!);\r\n\r\n calculateOffset();\r\n window.addEventListener('scroll', calculateOffset, true);\r\n window.addEventListener('resize', calculateOffset);\r\n\r\n return () => {\r\n observer.disconnect();\r\n window.removeEventListener('scroll', calculateOffset, true);\r\n window.removeEventListener('resize', calculateOffset);\r\n }\r\n }\r\n return () => {};\r\n }, [isOpen]);\r\n\r\n const handleItemClick = (selected: boolean, item: DropdownItem) => {\r\n let newValue: string[] = [];\r\n if (customizationProps.multiSelect) {\r\n if (selected) newValue = [...selectedValues, item.value];\r\n else newValue = selectedValues.filter((x) => x != item.value);\r\n } else newValue = selected ? [item.value] : [];\r\n\r\n setSelectedValues(newValue);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValue)) {\r\n setIsOpen(false);\r\n }\r\n };\r\n\r\n const getTopItem = () => {\r\n if (!customizationProps.pinTopItem) return;\r\n const visibleItems = getFilteredItems();\r\n const allSelected = selectedValues?.filter((x) => visibleItems.some((y) => y.value == x)).length == visibleItems.length;\r\n let showTopItem = false;\r\n const suggestions = getSuggestions();\r\n const displayLabel = selectedValues[0] ? customizationProps.items?.find((c) => c.value === selectedValues[0])?.displayLabel : undefined;\r\n if (customizationProps.itemsType == 'radio' && selectedValues && selectedValues?.length > 0) showTopItem = true;\r\n else if (customizationProps.itemsType == 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) showTopItem = true;\r\n else if (customizationProps.itemsType == 'normal' && suggestions.length > 0) showTopItem = true;\r\n\r\n if (!showTopItem) return;\r\n\r\n const selectedFirst = selectedValues.length > 0 ? visibleItems.find((x) => x.value == selectedValues[0]) : null;\r\n\r\n return (\r\n <DropdownContentTopItemContainer $size={size}>\r\n {customizationProps.itemsType === 'radio' && (\r\n <RadioButton\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemradio'\r\n iconPointerEventsTransparent={true}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={() => {}}\r\n label={selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n size={size}\r\n id={`${id}_topitem`}\r\n selected={true}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'checkbox' && (\r\n <Checkbox\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemcheckbox'\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={(selected: boolean) => {\r\n if (!customizationProps.multiSelect) return;\r\n\r\n const newValues = selected ? visibleItems.map((x) => x.value) : [];\r\n setSelectedValues(newValues);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValues)) setIsOpen(false);\r\n }}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n iconPointerEventsTransparent={true}\r\n semiSelected={customizationProps.multiSelect && !allSelected && selectedValues?.length > 0}\r\n size={size}\r\n id={`${id}_checkbox_selectall`}\r\n label={customizationProps.multiSelect ? 'Select all' : selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n selected={!customizationProps.multiSelect || allSelected}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'normal' && (\r\n <>\r\n {suggestions.map((x) => (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`${id}_topitem_${x.value}`}\r\n item={x}\r\n size={size}\r\n active={false}\r\n tabIndex={-1}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[0] as React.RefObject<HTMLButtonElement>}\r\n id={`${id}_topitem`}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([x.value]);\r\n setSelectedValues([x.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n ))}\r\n </>\r\n )}\r\n </DropdownContentTopItemContainer>\r\n );\r\n };\r\n\r\n const getElements = (messageOnNoResults: string, size: Size.Small | Size.Medium | Size.Large) => {\r\n if (getFilteredItems().length === 0) {\r\n return <MenuItem item={{ value: messageOnNoResults, disabled: true }} size={size} id=\"noResultsFound\" active={false} onClickHandler={(e) => {}} />;\r\n }\r\n return (\r\n <DropdownContentItemsContainer $size={size}>\r\n {getFilteredItems()\r\n .filter((x) => x && (customizationProps.itemsType != 'normal' || !x.suggestion))\r\n .map((item, index) => {\r\n return (\r\n <React.Fragment key={`key_${id}_${item.value}`}>\r\n {item.customContent}\r\n {!item.customContent && customizationProps.itemsType == 'radio' && (\r\n <RadioButton\r\n role='menuitemradio'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && customizationProps.itemsType == 'checkbox' && (\r\n <Checkbox\r\n role='menuitemcheckbox'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && (customizationProps.itemsType == 'normal' || !customizationProps.itemsType) && (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`key_${id}_${index + 1}`}\r\n id={`${id}_${index + 1}`}\r\n item={item}\r\n tabIndex={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n size={size}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n active={selectedValues?.includes(item.value)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLButtonElement>}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([item.value]);\r\n setSelectedValues([item.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n )}\r\n </React.Fragment>\r\n );\r\n })}\r\n </DropdownContentItemsContainer>\r\n );\r\n };\r\n\r\n const calculateOffset = () => {\r\n const rect = containerRef?.current?.getBoundingClientRect();\r\n if (rect) {\r\n dropdownContentRef.current.style.width = width ?? `${rect.width}px`;\r\n }\r\n determineDropUp();\r\n };\r\n\r\n const cls = `${isOpen ? 'show' : ''} ${isOpen && outline ? 'outline' : ''} ${locationDefined ? (isUp ? 'up' : 'down') : ''}`;\r\n\r\n return (\r\n <Overlay>\r\n <DropdownContentContainer\r\n role={ariaRolesType == \"menu\" ? \"menu\" : \"optionlist\"}\r\n ref={dropdownContentRef}\r\n $size={size}\r\n $offsetTop={offset.top}\r\n id={id}\r\n $offsetLeft={offset.left}\r\n tabIndex={-1}\r\n $isButton={isButton}\r\n $alignLeft={alignLeft}\r\n $scrollable={customizationProps.scrollable}\r\n $maxHeight={customizationProps.maxHeight}\r\n className={cls}>\r\n <DropdownContentListContainer\r\n role=\"group\"\r\n $size={size}\r\n $itemsType={customizationProps.itemsType}\r\n onScroll={handleScroll}\r\n ref={itemsListRef}\r\n $outline={outline}\r\n $scrollable={customizationProps.scrollable}>\r\n {customizationProps.menuContent && (\r\n <DropdownContentMenuContentContainer $size={size}>\r\n {customizationProps.menuContent}\r\n <DividerContainer $size={size}>\r\n <div className=\"divider\" />\r\n </DividerContainer>\r\n </DropdownContentMenuContentContainer>\r\n )}\r\n {customizationProps.pinTopItem && getTopItem()}\r\n {getElements(messageOnNoResults, size)}\r\n </DropdownContentListContainer>\r\n {customizationProps.action && customizationProps.actionLabel && (\r\n <DropdownContentActionButtonContainer $size={size} $scrollable={customizationProps.scrollable}>\r\n <Button\r\n width=\"100%\"\r\n role=\"menuitem\"\r\n icon={customizationProps.actionIcon}\r\n ref={actionButtonRef}\r\n loading={customizationProps.actionLoading}\r\n disabled={customizationProps.actionDisabled}\r\n variant={customizationProps.actionVariant ?? 'primary'}\r\n size={size}\r\n onClick={() => customizationProps.action() && setIsOpen(false)}>\r\n {customizationProps.actionLabel}\r\n </Button>\r\n </DropdownContentActionButtonContainer>\r\n )}\r\n </DropdownContentContainer>\r\n </Overlay>\r\n );\r\n },\r\n);\r\n\r\nexport default DropdownContent;\r\n"],"mappings":";;;;;;;;;;;AAAA,IAAAA,MAAA,GAAAC,sBAAA,CAAAC,OAAA;AACA,IAAAC,iBAAA,GAAAF,sBAAA,CAAAC,OAAA;AACA,IAAAE,OAAA,GAAAH,sBAAA,CAAAC,OAAA;AACA,IAAAG,MAAA,GAAAH,OAAA;AACA,IAAAI,cAAA,GAAAJ,OAAA;AACA,IAAAK,WAAA,GAAAL,OAAA;AACA,IAAAM,OAAA,GAAAN,OAAA;AACA,IAAAO,YAAA,GAAAP,OAAA;AACA,IAAAQ,SAAA,GAAAR,OAAA;AACA,IAAAS,SAAA,GAAAV,sBAAA,CAAAC,OAAA;AAA4C,IAAAU,WAAA,GAAAV,OAAA;AAAA,IAAAW,eAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA,EAAAC,gBAAA;AAAA,SAAAC,2BAAAC,CAAA,EAAAC,CAAA,QAAAC,CAAA,yBAAAC,MAAA,IAAAH,CAAA,CAAAG,MAAA,CAAAC,QAAA,KAAAJ,CAAA,qBAAAE,CAAA,QAAAG,KAAA,CAAAC,OAAA,CAAAN,CAAA,MAAAE,CAAA,GAAAK,2BAAA,CAAAP,CAAA,MAAAC,CAAA,IAAAD,CAAA,uBAAAA,CAAA,CAAAQ,MAAA,IAAAN,CAAA,KAAAF,CAAA,GAAAE,CAAA,OAAAO,EAAA,MAAAC,CAAA,YAAAA,EAAA,eAAAC,CAAA,EAAAD,CAAA,EAAAE,CAAA,WAAAA,EAAA,WAAAH,EAAA,IAAAT,CAAA,CAAAQ,MAAA,KAAAK,IAAA,WAAAA,IAAA,MAAAC,KAAA,EAAAd,CAAA,CAAAS,EAAA,UAAAR,CAAA,WAAAA,EAAAD,CAAA,UAAAA,CAAA,KAAAe,CAAA,EAAAL,CAAA,gBAAAM,SAAA,iJAAAC,CAAA,EAAAC,CAAA,OAAAC,CAAA,gBAAAR,CAAA,WAAAA,EAAA,IAAAT,CAAA,GAAAA,CAAA,CAAAkB,IAAA,CAAApB,CAAA,MAAAY,CAAA,WAAAA,EAAA,QAAAZ,CAAA,GAAAE,CAAA,CAAAmB,IAAA,WAAAH,CAAA,GAAAlB,CAAA,CAAAa,IAAA,EAAAb,CAAA,KAAAC,CAAA,WAAAA,EAAAD,CAAA,IAAAmB,CAAA,OAAAF,CAAA,GAAAjB,CAAA,KAAAe,CAAA,WAAAA,EAAA,UAAAG,CAAA,YAAAhB,CAAA,cAAAA,CAAA,8BAAAiB,CAAA,QAAAF,CAAA;AAAA,SAAAV,4BAAAP,CAAA,EAAAkB,CAAA,QAAAlB,CAAA,2BAAAA,CAAA,SAAAsB,iBAAA,CAAAtB,CAAA,EAAAkB,CAAA,OAAAhB,CAAA,MAAAqB,QAAA,CAAAH,IAAA,CAAApB,CAAA,EAAAwB,KAAA,6BAAAtB,CAAA,IAAAF,CAAA,CAAAyB,WAAA,KAAAvB,CAAA,GAAAF,CAAA,CAAAyB,WAAA,CAAAC,IAAA,aAAAxB,CAAA,cAAAA,CAAA,GAAAG,KAAA,CAAAsB,IAAA,CAAA3B,CAAA,oBAAAE,CAAA,+CAAA0B,IAAA,CAAA1B,CAAA,IAAAoB,iBAAA,CAAAtB,CAAA,EAAAkB,CAAA;AAAA,SAAAI,kBAAAtB,CAAA,EAAAkB,CAAA,aAAAA,CAAA,IAAAA,CAAA,GAAAlB,CAAA,CAAAQ,MAAA,MAAAU,CAAA,GAAAlB,CAAA,CAAAQ,MAAA,YAAAP,CAAA,MAAAW,CAAA,GAAAP,KAAA,CAAAa,CAAA,GAAAjB,CAAA,GAAAiB,CAAA,EAAAjB,CAAA,IAAAW,CAAA,CAAAX,CAAA,IAAAD,CAAA,CAAAC,CAAA,UAAAW,CAAA;AAG5C,IAAMiB,eAAe,GAAG,GAAG;AAC3B,IAAMC,iBAAiB,GAAG,EAAE;AAC5B,IAAMC,kBAAkB,GAAG,OAAO;AAE3B,IAAMC,wBAAwB,GAAGC,4BAAM,CAACC,GAAG,CAAA3C,eAAA,KAAAA,eAAA,OAAA4C,uBAAA,gzBAI5B,UAAAC,KAAK;EAAA,OAAIC,cAAM,CAACC,QAAQ,CAAC,OAAO,EAAEF,KAAK,CAACG,KAAK,CAAC;AAAA,GAEvDC,mBAAS,CAACC,QAAQ,EACnB,UAACL,KAAK;EAAA,OAAMA,KAAK,CAACM,SAAS,GAAG,MAAM,GAAG,SAAS;AAAA,CAAC,EAUrD,UAACN,KAAK;EAAA,+BAAAO,MAAA,CAA6BP,KAAK,CAACQ,WAAW,QAAAD,MAAA,CAAKP,KAAK,CAACS,UAAU;AAAA,CAAI,EAqBjF,UAACT,KAAK;EAAA,OAAMA,KAAK,CAACM,SAAS,GAAGI,2CAA4B,GAAG,EAAE;AAAA,CAAC,EAE9C,UAAAV,KAAK;EAAA,OAAIC,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC;AAAA,GAK3D,UAACH,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,GAAG,OAAO,GAAGb,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,OAAO,GAAG,OAAO;AAAA,CAAC,EAC7F,UAACd,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,GAAG,MAAM,GAAGb,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,KAAK,GAAG,KAAK;AAAA,CAAC,EAE/F,UAACd,KAAK;EAAA,OAAM,CAACA,KAAK,CAACe,WAAW,GAAG,MAAM,GAAGf,KAAK,CAACgB,UAAU,GAAGhB,KAAK,CAACgB,UAAU,GAAGhB,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,GAAG,OAAO,GAAGb,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,OAAO,GAAG,OAAO;AAAA,CAAC,CACpL;AAACG,OAAA,CAAArB,wBAAA,GAAAA,wBAAA;AAEK,IAAMsB,6BAA6B,GAAGrB,4BAAM,CAACC,GAAG,CAAA1C,gBAAA,KAAAA,gBAAA,OAAA2C,uBAAA,mKAExCK,mBAAS,CAACe,KAAK,EAKff,mBAAS,CAACgB,MAAM,EAIhBhB,mBAAS,CAACiB,KAAK,CAE7B;AAACJ,OAAA,CAAAC,6BAAA,GAAAA,6BAAA;AAEK,IAAMI,4BAA4B,GAAGzB,4BAAM,CAACC,GAAG,CAAAzC,gBAAA,KAAAA,gBAAA,OAAA0C,uBAAA,qYAClD,UAACC,KAAK;EAAA,OAAMA,KAAK,CAACe,WAAW,GAAG,qBAAqB,GAAG,EAAE;AAAA,CAAC,EAC3D,UAACf,KAAK;EAAA,OAAMA,KAAK,CAACe,WAAW,GAAG,oBAAoB,GAAG,EAAE;AAAA,CAAC,EAC1D,UAACf,KAAK;EAAA,OAAMA,KAAK,CAACe,WAAW,GAAG,qBAAqB,GAAG,EAAE;AAAA,CAAC,EAC3D,UAACf,KAAK;EAAA,OAAMA,KAAK,CAACuB,UAAU,IAAI,QAAQ,GAAG,mBAAmB,GAAG,EAAE;AAAA,CAAC,EAUpEL,6BAA6B,EACd,UAAClB,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,GAAG,KAAK,GAAGb,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,KAAK,GAAG,KAAK;AAAA,CAAC,EACxF,UAACd,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,GAAG,KAAK,GAAGb,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,KAAK,GAAG,KAAK;AAAA,CAAC,EAS7G,IAAAU,wBAAgB,EAACZ,WAAI,CAACa,KAAK,CAAC,CAC/B;AAACR,OAAA,CAAAK,4BAAA,GAAAA,4BAAA;AAEF,IAAMI,mCAAmC,GAAG7B,4BAAM,CAACC,GAAG,CAAAxC,gBAAA,KAAAA,gBAAA,OAAAyC,uBAAA,wRAMhD,UAACC,KAAK;EAAA,OAAKA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,IAAI,IAAAc,8BAAkB,EAACC,8BAAkB,CAACC,IAAI,EAAE5B,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC,CAAC;AAAA,GAChI,UAACH,KAAK;EAAA,OAAKA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,IAAI,IAAAgB,6BAAiB,EAACF,8BAAkB,CAACC,IAAI,EAAE5B,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC,CAAC;AAAA,GAChI,UAACH,KAAK;EAAA,OAAK,CAACA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACa,KAAK,IAAI,CAACzB,KAAK,CAACW,KAAK,KAAK,IAAAoB,6BAAiB,EAACH,8BAAkB,CAACC,IAAI,EAAE5B,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC,CAAC;AAAA,GACxI,UAACH,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACa,KAAK,IAAI,CAACzB,KAAK,CAACW,KAAK,GAAG,eAAe,GAAGX,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,eAAe,GAAG,eAAe;AAAA,CAAC,EAMlJ,UAACd,KAAK;EAAA,OAAKA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,IAAI,IAAAiB,6BAAiB,EAACF,8BAAkB,CAACI,OAAO,EAAE/B,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC,CAAC;AAAA,GAClI,UAACH,KAAK;EAAA,OAAKA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,IAAI,IAAAiB,6BAAiB,EAACH,8BAAkB,CAACI,OAAO,EAAE/B,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC,CAAC;AAAA,GACnI,UAACH,KAAK;EAAA,OAAK,CAACA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACa,KAAK,IAAI,CAACzB,KAAK,CAACW,KAAK,KAAK,IAAAsB,6BAAiB,EAACL,8BAAkB,CAACI,OAAO,EAAE/B,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC,CAAC;AAAA,GAC3I,UAACH,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACa,KAAK,IAAI,CAACzB,KAAK,CAACW,KAAK,GAAG,UAAU,GAAGX,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,WAAW,GAAG,WAAW;AAAA,CAAC,CAE1I;AAED,IAAMoB,gBAAgB,GAAGrC,4BAAM,CAACC,GAAG,CAAAvC,gBAAA,KAAAA,gBAAA,OAAAwC,uBAAA,iIAGnB,UAACC,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACC,KAAK,GAAG,MAAM,GAAGb,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACE,MAAM,GAAG,MAAM,GAAGd,KAAK,CAACW,KAAK,IAAIC,WAAI,CAACa,KAAK,IAAI,CAACzB,KAAK,CAACW,KAAK,GAAG,KAAK,GAAG,KAAK;AAAA,CAAC,CAMhK;AAED,IAAMwB,+BAA+B,GAAGtC,4BAAM,CAACC,GAAG,CAAAtC,gBAAA,KAAAA,gBAAA,OAAAuC,uBAAA,wIAEzB,UAAAC,KAAK;EAAA,OAAIC,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC;AAAA,EAG5E;AAED,IAAMiC,oCAAoC,GAAGvC,4BAAM,CAACC,GAAG,CAAArC,gBAAA,KAAAA,gBAAA,OAAAsC,uBAAA,gGACnD,UAACC,KAAK;EAAA,OAAMA,KAAK,CAACe,WAAW,6BAAAR,MAAA,CAA6BN,cAAM,CAACC,QAAQ,CAAC,aAAa,EAAEF,KAAK,CAACG,KAAK,CAAC,SAAM,EAAE;AAAA,CAAC,EAC9G,UAACH,KAAK;EAAA,OAAMA,KAAK,CAACe,WAAW,GAAG,kBAAkB,GAAG,EAAE;AAAA,CAAC,EAE/C,UAACf,KAAK;EAAA,OAAMA,KAAK,CAACW,KAAK,KAAKC,WAAI,CAACa,KAAK,IAAI,CAACzB,KAAK,CAACW,KAAK,GAAG,cAAc,GAAGX,KAAK,CAACW,KAAK,KAAKC,WAAI,CAACE,MAAM,GAAG,eAAe,GAAG,gBAAgB;AAAA,CAAC,CAKvJ;AAED,IAAMuB,OAAO,GAAGxC,4BAAM,CAACC,GAAG,CAAApC,gBAAA,KAAAA,gBAAA,OAAAqC,uBAAA,iJAObK,mBAAS,CAACkC,KAAK,CAC3B;AA6DD,IAAMC,eAAe,gBAAGC,iBAAK,CAACC,UAAU,CACtC,UAAAC,IAAA,EAqBEC,GAAG,EACA;EAAA,IAAAC,KAAA,EAAAC,qBAAA;EAAA,IApBDC,EAAE,GAAAJ,IAAA,CAAFI,EAAE;IACFC,kBAAkB,GAAAL,IAAA,CAAlBK,kBAAkB;IAClBC,SAAS,GAAAN,IAAA,CAATM,SAAS;IACTC,QAAQ,GAAAP,IAAA,CAARO,QAAQ;IACRC,IAAI,GAAAR,IAAA,CAAJQ,IAAI;IACJC,MAAM,GAAAT,IAAA,CAANS,MAAM;IACNC,KAAK,GAAAV,IAAA,CAALU,KAAK;IACLC,SAAS,GAAAX,IAAA,CAATW,SAAS;IACTC,MAAM,GAAAZ,IAAA,CAANY,MAAM;IACNC,OAAO,GAAAb,IAAA,CAAPa,OAAO;IACPC,UAAU,GAAAd,IAAA,CAAVc,UAAU;IACVC,cAAc,GAAAf,IAAA,CAAde,cAAc;IACdC,iBAAiB,GAAAhB,IAAA,CAAjBgB,iBAAiB;IACjBC,kBAAkB,GAAAjB,IAAA,CAAlBiB,kBAAkB;IAClBC,OAAO,GAAAlB,IAAA,CAAPkB,OAAO;IACPC,YAAY,GAAAnB,IAAA,CAAZmB,YAAY;IACZC,yBAAyB,GAAApB,IAAA,CAAzBoB,yBAAyB;IAAAC,kBAAA,GAAArB,IAAA,CACzBsB,aAAa;IAAbA,aAAa,GAAAD,kBAAA,cAAG,MAAM,GAAAA,kBAAA;EAIxB,IAAAE,eAAA,GAAwBzB,iBAAK,CAAC0B,QAAQ,CAAU,KAAK,CAAC;IAAAC,gBAAA,OAAAC,eAAA,aAAAH,eAAA;IAA/CI,IAAI,GAAAF,gBAAA;IAAEG,OAAO,GAAAH,gBAAA;EACpB,IAAAI,gBAAA,GAA8C/B,iBAAK,CAAC0B,QAAQ,CAAU,KAAK,CAAC;IAAAM,gBAAA,OAAAJ,eAAA,aAAAG,gBAAA;IAArEE,eAAe,GAAAD,gBAAA;IAAEE,kBAAkB,GAAAF,gBAAA;EAC1C,IAAAG,gBAAA,GAA4BnC,iBAAK,CAAC0B,QAAQ,CAAgC;MAAEU,GAAG,EAAE,GAAG;MAAEC,IAAI,EAAE;IAAI,CAAC,CAAC;IAAAC,gBAAA,OAAAV,eAAA,aAAAO,gBAAA;IAA3FI,MAAM,GAAAD,gBAAA;IAAEE,SAAS,GAAAF,gBAAA;EAExB,IAAMG,kBAAkB,IAAArC,KAAA,GAAID,GAAG,cAAAC,KAAA,cAAAA,KAAA,GAAyCJ,iBAAK,CAAC0C,MAAM,CAAiB,IAAI,CAAC;EAE1G,IAAI,CAACnC,kBAAkB,CAACoC,SAAS,EAAEpC,kBAAkB,CAACoC,SAAS,GAAG,QAAQ;EAC1E,IAAI,CAACjC,IAAI,EAAEA,IAAI,GAAGtC,WAAI,CAACa,KAAK;EAE5B,IAAM2D,YAAY,GAAG5C,iBAAK,CAAC0C,MAAM,CAAiB,IAAI,CAAC;EACvD,IAAMG,eAAe,GAAG7C,iBAAK,CAAC0C,MAAM,CAAoB,IAAI,CAAC;EAE7D,IAAMI,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;IAC5B,IAAMC,OAAO,GAAGxC,kBAAkB,CAACyC,KAAK;IAExC,IAAMC,IAAI,GAAG5B,YAAY,CAAC6B,OAAO,CAAEC,qBAAqB,CAAC,CAAC;IAE1D,IAAMC,YAAY,GAAGC,MAAM,CAACC,WAAW;IACvC,IAAMC,UAAU,GAAGC,IAAI,CAACC,GAAG,CAACxG,eAAe,EAAE8F,OAAO,CAACnH,MAAM,GAAGsB,iBAAiB,CAAC;IAChF,IAAMwG,kBAAkB,GAAGT,IAAI,CAACb,GAAG,GAAGa,IAAI,CAACU,MAAM,GAAGJ,UAAU;IAE9D,IAAMK,EAAE,GAAGF,kBAAkB,IAAIN,YAAY;IAE7CZ,SAAS,CAAC;MACRJ,GAAG,EAAEwB,EAAE,mBAAA7F,MAAA,CAAmBkF,IAAI,CAACU,MAAM,SAAA5F,MAAA,CAAM0C,QAAQ,GAAG,EAAE,GAAG,OAAO,SAAM,GAAG;MAC3E4B,IAAI,EAAE7B,SAAS,YAAAzC,MAAA,CAAYkF,IAAI,CAACrC,KAAK;IACvC,CAAC,CAAC;IAEFkB,OAAO,CAAC8B,EAAE,CAAC;IACX1B,kBAAkB,CAAC,IAAI,CAAC;EAC1B,CAAC;EAED,IAAM2B,oBAAoB,GAAG,SAAvBA,oBAAoBA,CAAIC,KAAa,EAAK;IAAA,IAAAC,qBAAA;IAC9C,IAAI3C,OAAO,EAAE,CAAA2C,qBAAA,GAAAtB,kBAAkB,CAACS,OAAO,cAAAa,qBAAA,uBAA1BA,qBAAA,CAA4BlF,KAAK,CAAC,CAAC;IAEhD,IAAMmF,iBAAiB,GAAGC,MAAM,CAACH,KAAK,CAAC;IACvC,IAAIxC,yBAAyB,EAAEA,yBAAyB,CAACwC,KAAK,IAAI,CAAC,MAAA/F,MAAA,CAAMuC,EAAE,mBAAAvC,MAAA,CAAgBuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,CAAE,CAAC;IAEzG,IAAMI,iBAAiB,GAAGnD,OAAO,IAAIA,OAAO,KAAK,CAAC,GAAGkD,MAAM,CAAClD,OAAO,CAAC,GAAG,IAAI;IAC3E,IAAIiD,iBAAiB,IAAIA,iBAAiB,KAAKE,iBAAiB,EAAE;MAAA,IAAAC,qBAAA,EAAAC,qBAAA,EAAAC,sBAAA;MAChErD,UAAU,CAAC8C,KAAK,CAAC;MACjBI,iBAAiB,aAAjBA,iBAAiB,wBAAAC,qBAAA,GAAjBD,iBAAiB,CAAEhB,OAAO,cAAAiB,qBAAA,uBAA1BA,qBAAA,CAA4BG,SAAS,CAACC,MAAM,CAAC,gBAAgB,CAAC;MAE9D,CAAAH,qBAAA,GAAAJ,iBAAiB,CAACd,OAAO,cAAAkB,qBAAA,uBAAzBA,qBAAA,CAA2BE,SAAS,CAACE,GAAG,CAAC,gBAAgB,CAAC;MAC1D,CAAAH,sBAAA,GAAAL,iBAAiB,CAACd,OAAO,cAAAmB,sBAAA,uBAAzBA,sBAAA,CAA2BI,cAAc,CAAC;QACxCC,KAAK,EAAE,SAAS;QAChBC,MAAM,EAAE;MACV,CAAC,CAAC;IACJ;EACF,CAAC;EAED,IAAMC,gBAAgB,GAAG,SAAnBA,gBAAgBA,CAAA,EAAS;IAC7B,IAAMC,gBAAgB,GAAG,CAAC/D,MAAM,aAANA,MAAM,cAANA,MAAM,GAAI,EAAE,EAAEgE,WAAW,CAAC,CAAC;IACrD,OAAOvE,kBAAkB,CAACyC,KAAK,CAAClC,MAAM,CAAC,UAACiE,CAAC;MAAA,IAAAC,QAAA,EAAAC,eAAA;MAAA,OAAK,CAAAF,CAAC,aAADA,CAAC,wBAAAC,QAAA,GAADD,CAAC,CAAE7I,KAAK,cAAA8I,QAAA,uBAARA,QAAA,CAAUF,WAAW,CAAC,CAAC,CAACI,QAAQ,CAACL,gBAAgB,CAAC,MAAIE,CAAC,aAADA,CAAC,wBAAAE,eAAA,GAADF,CAAC,CAAEI,YAAY,cAAAF,eAAA,uBAAfA,eAAA,CAAiBH,WAAW,CAAC,CAAC,CAACI,QAAQ,CAACL,gBAAgB,CAAC;IAAA,EAAC;EAChK,CAAC;EAED,IAAMO,mBAAmB,GAAG,SAAtBA,mBAAmBA,CAAItB,KAAa,EAAEuB,SAAiB,EAAErC,KAAqB,EAAK;IACvF,KAAK,IAAIsC,CAAC,GAAGxB,KAAK,GAAGuB,SAAS,EAAEC,CAAC,GAAG,CAAC,IAAIA,CAAC,IAAItC,KAAK,CAACpH,MAAM,EAAE0J,CAAC,IAAID,SAAS,EAAE;MAAA,IAAAE,MAAA;MAC1E,IAAI,GAAAA,MAAA,GAACvC,KAAK,CAACsC,CAAC,GAAG,CAAC,CAAC,cAAAC,MAAA,eAAZA,MAAA,CAAcC,QAAQ,GAAE;QAC3B,OAAOF,CAAC;MACV;IACF;IAEA,OAAOxB,KAAK;EACd,CAAC;EAED,IAAM2B,aAAa,GAAG,SAAhBA,aAAaA,CAAIpK,CAAgB,EAAK;IAC1C,IAAIsF,MAAM,EAAE;MACV,IAAItF,CAAC,CAACqK,GAAG,KAAK,SAAS,IAAIrK,CAAC,CAACqK,GAAG,KAAK,IAAI,EAAE;QACzCrK,CAAC,CAACsK,cAAc,CAAC,CAAC;QAClB,IAAIC,UAAU,GAAG7E,OAAO,IAAIA,OAAO,KAAK,CAAC,GAAGA,OAAO,GAAG8E,SAAS,GAAG,CAAC;QACnE,IAAI,CAAC,CAACD,UAAU,EAAE;UAChBA,UAAU,GAAGA,UAAU,KAAK,CAAC,IAAIE,WAAW,CAAC,CAAC,GAAG,CAAC,GAAGV,mBAAmB,CAACQ,UAAU,EAAE,CAAC,CAAC,EAAEhB,gBAAgB,CAAC,CAAC,CAAC;UAE5Gf,oBAAoB,CAAC+B,UAAU,CAAC;QAClC;MACF,CAAC,MAAM,IAAIvK,CAAC,CAACqK,GAAG,KAAK,WAAW,IAAIrK,CAAC,CAACqK,GAAG,KAAK,MAAM,EAAE;QACpDrK,CAAC,CAACsK,cAAc,CAAC,CAAC;QAClB,IAAIC,WAAU,GAAG7E,OAAO;QAExB6E,WAAU,GAAG,CAAC,CAACA,WAAU,IAAIA,WAAU,KAAK,CAAC,GAAGR,mBAAmB,CAACQ,WAAU,EAAE,CAAC,EAAEhB,gBAAgB,CAAC,CAAC,CAAC,GAAGkB,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QAE9HjC,oBAAoB,CAAC+B,WAAU,CAAC;MAClC,CAAC,MAAM,IAAIvK,CAAC,CAACqK,GAAG,KAAK,QAAQ,IAAIrK,CAAC,CAACqK,GAAG,KAAK,KAAK,EAAE;QAChD7E,SAAS,CAAC,KAAK,CAAC;QAChBG,UAAU,CAAC,IAAI,CAAC;QAChB,IAAIM,yBAAyB,EAAEA,yBAAyB,CAACyE,SAAS,CAAC;MACrE,CAAC,MAAM,IAAI,CAAC1K,CAAC,CAACqK,GAAG,KAAK,OAAO,IAAIrK,CAAC,CAACqK,GAAG,KAAK,GAAG,KAAK3E,OAAO,KAAK,IAAI,IAAI1F,CAAC,CAAC2K,MAAM,MAAKnD,eAAe,aAAfA,eAAe,uBAAfA,eAAe,CAAEK,OAAO,GAAE;QAC5G7H,CAAC,CAACsK,cAAc,CAAC,CAAC;QAClB,IAAMM,cAAc,GAAGhC,MAAM,CAAClD,OAAO,CAAC;QACtC,IAAIkF,cAAc,EAAE;UAAA,IAAAC,qBAAA;UAClB,CAAAA,qBAAA,GAAAD,cAAc,CAAC/C,OAAO,cAAAgD,qBAAA,uBAAtBA,qBAAA,CAAwBC,KAAK,CAAC,CAAC;QACjC;QACA,IAAI7E,yBAAyB,EAAEA,yBAAyB,CAACyE,SAAS,CAAC;MACrE;IACF;EACF,CAAC;EAED/F,iBAAK,CAACoG,SAAS,CAAC,YAAM;IACpBC,QAAQ,CAACC,gBAAgB,CAAC,SAAS,EAAEb,aAAa,CAAC;IACnD,OAAO,YAAM;MACXY,QAAQ,CAACE,mBAAmB,CAAC,SAAS,EAAEd,aAAa,CAAC;IACxD,CAAC;EACL,CAAC,EAAE,EAAE,CAAC;EAEJ,IAAMe,cAAc,GAAGxG,iBAAK,CAAC0C,MAAM,CAAqB,CAAC,CAAC;EAC1D,IAAM+D,YAAY,GAAG,SAAfA,YAAYA,CAAA,EAAS;IAAA,IAAAC,qBAAA;IACzBF,cAAc,CAACtD,OAAO,IAAAwD,qBAAA,GAAG9D,YAAY,CAACM,OAAO,cAAAwD,qBAAA,uBAApBA,qBAAA,CAAsBC,SAAS;EAC1D,CAAC;EACD3G,iBAAK,CAAC4G,eAAe,CAAC,YAAM;IAAA,IAAAC,qBAAA;IAC1B,IAAIjE,YAAY,CAACM,OAAO,EAAEN,YAAY,CAACM,OAAO,CAACyD,SAAS,IAAAE,qBAAA,GAAGL,cAAc,CAACtD,OAAO,cAAA2D,qBAAA,cAAAA,qBAAA,GAAI,CAAC;EACxF,CAAC,EAAE,CAAC5F,cAAc,CAAC,CAAC;EAEpB,IAAM6F,aAAa,GAAG,SAAhBA,aAAaA,CAAI3G,GAAiC,EAAmC;IACzF,QAAQI,kBAAkB,CAACoC,SAAS;MAClC,KAAK,QAAQ;QACX,OAAQxC,GAAG,iBAA2CH,iBAAK,CAAC+G,SAAS,CAAoB,CAAC;MAC5F;QACE,OAAQ5G,GAAG,iBAAwCH,iBAAK,CAAC+G,SAAS,CAAiB,CAAC;IACxF;EACF,CAAC;EAED,IAAMlB,SAAS,GAAGjB,gBAAgB,CAAC,CAAC,CAAChJ,MAAM;EAC3C,IAAAoL,gBAAA,GAA4BhH,iBAAK,CAAC0B,QAAQ,CAAiC,EAAE,CAAC;IAAAuF,gBAAA,OAAArF,eAAA,aAAAoF,gBAAA;IAAvE/C,MAAM,GAAAgD,gBAAA;IAAEC,SAAS,GAAAD,gBAAA;EAExBjH,iBAAK,CAACoG,SAAS,CAAC,YAAM;IACpB,IAAI,CAAAnC,MAAM,aAANA,MAAM,uBAANA,MAAM,CAAErI,MAAM,MAAKiK,SAAS,EAAE;MAChC7E,UAAU,CAAC,IAAI,CAAC;IAClB;IAEAkG,SAAS,CAAC,UAACjD,MAAM;MAAA,OACfxI,KAAK,CAACoK,SAAS,GAAG,CAAC,CAAC,CACjBsB,IAAI,CAAC,IAAI,CAAC,CACVC,GAAG,CAAC,UAACC,CAAC,EAAE/B,CAAC;QAAA,OAAKwB,aAAa,CAAC7C,MAAM,CAACqB,CAAC,CAAC,CAAC;MAAA,EAAC;IAAA,CAC5C,CAAC;EACH,CAAC,EAAE,CAAC3E,MAAM,EAAEkF,SAAS,CAAC,CAAC;EAEvB7F,iBAAK,CAAC4G,eAAe,CAAC,YAAM;IAC1BjG,MAAM,IAAI,CAACsB,eAAe,IAAIa,eAAe,CAAC,CAAC;EACjD,CAAC,EAAE,CAACnC,MAAM,EAAEsB,eAAe,CAAC,CAAC;EAE7B,IAAM6D,WAAW,GAAG,SAAdA,WAAWA,CAAA,EAAS;IAAA,IAAAwB,eAAA;IACxB,IAAI,CAAC/G,kBAAkB,CAACgH,UAAU,EAAE,OAAO,KAAK;IAEhD,IAAIhH,kBAAkB,CAACoC,SAAS,KAAK,OAAO,IAAI1B,cAAc,IAAI,CAAAA,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAErF,MAAM,IAAG,CAAC,EAAE,OAAO,IAAI,CAAC,KACrG,IAAI2E,kBAAkB,CAACoC,SAAS,KAAK,UAAU,KAAKpC,kBAAkB,CAACiH,WAAW,IAAI,CAAAvG,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAErF,MAAM,IAAG,CAAC,CAAC,EAAE,OAAO,IAAI,CAAC,KAC/H,IAAI2E,kBAAkB,CAACoC,SAAS,KAAK,QAAQ,IAAI,EAAA2E,eAAA,GAAAG,cAAc,CAAC,CAAC,cAAAH,eAAA,uBAAhBA,eAAA,CAAkB1L,MAAM,IAAG,CAAC,EAAE,OAAO,IAAI;IAC/F,OAAO,KAAK;EACd,CAAC;EAED,IAAM6L,cAAc,GAAG,SAAjBA,cAAcA,CAAA,EAAS;IAC3B,OAAO7C,gBAAgB,CAAC,CAAC,CAAC9D,MAAM,CAAC,UAACiE,CAAC;MAAA,OAAKA,CAAC,CAAC2C,UAAU;IAAA,EAAC;EACvD,CAAC;;EAED;AACJ;AACA;EACI1H,iBAAK,CAAC4G,eAAe,CAAC,YAAM;IAC1B,IAAIjG,MAAM,KAAKI,OAAO,IAAIA,OAAO,KAAK,CAAC,CAAC,EAAE;MACxC8C,oBAAoB,CAAC9C,OAAO,KAAK,CAAC,IAAI,CAAC+E,WAAW,CAAC,CAAC,GAAG,CAAC,GAAG/E,OAAO,CAAC;IACrE;EACF,CAAC,EAAE,CAACJ,MAAM,EAAEI,OAAO,CAAC,CAAC;;EAErB;AACJ;AACA;EACIf,iBAAK,CAACoG,SAAS,CAAC,YAAM;IACpB,IAAI,CAACzF,MAAM,EAAE;MAAA,IAAAgH,sBAAA,EAAAC,sBAAA;MACX1F,kBAAkB,CAAC,KAAK,CAAC;MAAC,IAAA2F,SAAA,GAAA1M,0BAAA,CACR8I,MAAM;QAAA6D,KAAA;MAAA;QAAxB,KAAAD,SAAA,CAAA9L,CAAA,MAAA+L,KAAA,GAAAD,SAAA,CAAA7L,CAAA,IAAAC,IAAA,GAA0B;UAAA,IAAA8L,cAAA;UAAA,IAAjBC,KAAK,GAAAF,KAAA,CAAA5L,KAAA;UACZ,CAAA6L,cAAA,GAAAC,KAAK,CAAC9E,OAAO,cAAA6E,cAAA,uBAAbA,cAAA,CAAezD,SAAS,CAACC,MAAM,CAAC,gBAAgB,CAAC;QACnD;MAAC,SAAA0D,GAAA;QAAAJ,SAAA,CAAAxM,CAAA,CAAA4M,GAAA;MAAA;QAAAJ,SAAA,CAAA1L,CAAA;MAAA;MACD6E,UAAU,CAAC,IAAI,CAAC;MAChB,IAAGM,yBAAyB,EAAEA,yBAAyB,CAACyE,SAAS,CAAC;MAClE,CAAA4B,sBAAA,GAAAlF,kBAAkB,CAACS,OAAO,cAAAyE,sBAAA,uBAA1BA,sBAAA,CAA4BrD,SAAS,CAACC,MAAM,CAAC,SAAS,CAAC;MACvD,CAAAqD,sBAAA,GAAAnF,kBAAkB,CAACS,OAAO,cAAA0E,sBAAA,uBAA1BA,sBAAA,CAA4BM,IAAI,CAAC,CAAC;IACpC,CAAC,MAAM;MACL,IAAI9G,OAAO,EAAE;QAAA,IAAA+G,sBAAA,EAAAC,sBAAA;QACX,CAAAD,sBAAA,GAAA1F,kBAAkB,CAACS,OAAO,cAAAiF,sBAAA,uBAA1BA,sBAAA,CAA4B7D,SAAS,CAACE,GAAG,CAAC,SAAS,CAAC;QACpD,CAAA4D,sBAAA,GAAA3F,kBAAkB,CAACS,OAAO,cAAAkF,sBAAA,uBAA1BA,sBAAA,CAA4BvJ,KAAK,CAAC,CAAC;MACrC;IACF;EACF,CAAC,EAAE,CAAC8B,MAAM,EAAE8B,kBAAkB,EAAE1B,OAAO,EAAEK,OAAO,CAAC,CAAC;;EAElD;AACJ;AACA;EACIpB,iBAAK,CAACoG,SAAS,CAAC,YAAM;IACpB,IAAIzF,MAAM,IAAIiC,YAAY,CAACM,OAAO,EAAE;MAClCN,YAAY,CAACM,OAAO,CAACyD,SAAS,GAAG,CAAC;IACpC;EACF,CAAC,EAAE,CAAChG,MAAM,CAAC,CAAC;EAEZX,iBAAK,CAACoG,SAAS,CAAC,YAAM;IACpB,IAAIzF,MAAM,EAAE;MACV,IAAM0H,QAAQ,GAAG,IAAIC,oBAAoB,CAAC,UAAUC,OAAO,EAAE;QAC3D,IAAI,CAACA,OAAO,CAAC,CAAC,CAAC,CAACC,cAAc,EAAE;UAAA,IAAAC,SAAA,EAAAC,qBAAA;UAC9B7H,SAAS,CAAC,KAAK,CAAC;UAChB;UACA,CAAA4H,SAAA,GAAApC,QAAQ,cAAAoC,SAAA,wBAAAC,qBAAA,GAARD,SAAA,CAAUE,aAAa,cAAAD,qBAAA,uBAAvBA,qBAAA,CAAyBR,IAAI,CAAC,CAAC;QACjC;MACF,CAAC,EAAE;QAACU,SAAS,EAAE,CAAC,CAAC,CAAC;QAAEC,UAAU,EAAE;MAAK,CAAC,CAAC;MAEvCR,QAAQ,CAACS,OAAO,CAACzH,YAAY,CAAC6B,OAAQ,CAAC;MAEvC6F,eAAe,CAAC,CAAC;MACjB1F,MAAM,CAACiD,gBAAgB,CAAC,QAAQ,EAAEyC,eAAe,EAAE,IAAI,CAAC;MACxD1F,MAAM,CAACiD,gBAAgB,CAAC,QAAQ,EAAEyC,eAAe,CAAC;MAElD,OAAO,YAAM;QACXV,QAAQ,CAACW,UAAU,CAAC,CAAC;QACrB3F,MAAM,CAACkD,mBAAmB,CAAC,QAAQ,EAAEwC,eAAe,EAAE,IAAI,CAAC;QAC3D1F,MAAM,CAACkD,mBAAmB,CAAC,QAAQ,EAAEwC,eAAe,CAAC;MACvD,CAAC;IACH;IACA,OAAO,YAAM,CAAC,CAAC;EACjB,CAAC,EAAE,CAACpI,MAAM,CAAC,CAAC;EAEZ,IAAMsI,eAAe,GAAG,SAAlBA,eAAeA,CAAIC,QAAiB,EAAEC,IAAkB,EAAK;IACjE,IAAIC,QAAkB,GAAG,EAAE;IAC3B,IAAI7I,kBAAkB,CAACiH,WAAW,EAAE;MAClC,IAAI0B,QAAQ,EAAEE,QAAQ,MAAArL,MAAA,KAAAsL,mBAAA,aAAOpI,cAAc,IAAEkI,IAAI,CAACjN,KAAK,EAAC,CAAC,KACpDkN,QAAQ,GAAGnI,cAAc,CAACH,MAAM,CAAC,UAACiE,CAAC;QAAA,OAAKA,CAAC,IAAIoE,IAAI,CAACjN,KAAK;MAAA,EAAC;IAC/D,CAAC,MAAMkN,QAAQ,GAAGF,QAAQ,GAAG,CAACC,IAAI,CAACjN,KAAK,CAAC,GAAG,EAAE;IAE9CgF,iBAAiB,CAACkI,QAAQ,CAAC;IAC3B,IAAI7I,kBAAkB,CAAC+I,aAAa,IAAI/I,kBAAkB,CAAC+I,aAAa,CAACF,QAAQ,CAAC,EAAE;MAClFvI,SAAS,CAAC,KAAK,CAAC;IAClB;EACF,CAAC;EAED,IAAM0I,UAAU,GAAG,SAAbA,UAAUA,CAAA,EAAS;IAAA,IAAAC,qBAAA,EAAAC,sBAAA,EAAAC,qBAAA,EAAAC,sBAAA;IACvB,IAAI,CAACpJ,kBAAkB,CAACgH,UAAU,EAAE;IACpC,IAAMqC,YAAY,GAAGhF,gBAAgB,CAAC,CAAC;IACvC,IAAMiF,WAAW,GAAG,CAAA5I,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEH,MAAM,CAAC,UAACiE,CAAC;MAAA,OAAK6E,YAAY,CAACE,IAAI,CAAC,UAACC,CAAC;QAAA,OAAKA,CAAC,CAAC7N,KAAK,IAAI6I,CAAC;MAAA,EAAC;IAAA,EAAC,CAACnJ,MAAM,KAAIgO,YAAY,CAAChO,MAAM;IACvH,IAAIoO,WAAW,GAAG,KAAK;IACvB,IAAMC,WAAW,GAAGxC,cAAc,CAAC,CAAC;IACpC,IAAMtC,YAAY,GAAGlE,cAAc,CAAC,CAAC,CAAC,IAAAuI,qBAAA,GAAGjJ,kBAAkB,CAACyC,KAAK,cAAAwG,qBAAA,wBAAAC,sBAAA,GAAxBD,qBAAA,CAA0BU,IAAI,CAAC,UAACC,CAAC;MAAA,OAAKA,CAAC,CAACjO,KAAK,KAAK+E,cAAc,CAAC,CAAC,CAAC;IAAA,EAAC,cAAAwI,sBAAA,uBAApEA,sBAAA,CAAsEtE,YAAY,GAAGY,SAAS;IACvI,IAAIxF,kBAAkB,CAACoC,SAAS,IAAI,OAAO,IAAI1B,cAAc,IAAI,CAAAA,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAErF,MAAM,IAAG,CAAC,EAAEoO,WAAW,GAAG,IAAI,CAAC,KAC3G,IAAIzJ,kBAAkB,CAACoC,SAAS,IAAI,UAAU,KAAKpC,kBAAkB,CAACiH,WAAW,IAAI,CAAAvG,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAErF,MAAM,IAAG,CAAC,CAAC,EAAEoO,WAAW,GAAG,IAAI,CAAC,KACrI,IAAIzJ,kBAAkB,CAACoC,SAAS,IAAI,QAAQ,IAAIsH,WAAW,CAACrO,MAAM,GAAG,CAAC,EAAEoO,WAAW,GAAG,IAAI;IAE/F,IAAI,CAACA,WAAW,EAAE;IAElB,IAAMI,aAAa,GAAGnJ,cAAc,CAACrF,MAAM,GAAG,CAAC,GAAGgO,YAAY,CAACM,IAAI,CAAC,UAACnF,CAAC;MAAA,OAAKA,CAAC,CAAC7I,KAAK,IAAI+E,cAAc,CAAC,CAAC,CAAC;IAAA,EAAC,GAAG,IAAI;IAE/G,oBACE,IAAAvG,WAAA,CAAA2P,IAAA,EAAC1K,+BAA+B;MAACxB,KAAK,EAAEuC,IAAK;MAAA4J,QAAA,GAC1C/J,kBAAkB,CAACoC,SAAS,KAAK,OAAO,iBACvC,IAAAjI,WAAA,CAAA6P,GAAA,EAAChQ,YAAA,CAAAiQ,WAAW;QACVrK,GAAG,EAAE8D,MAAM,CAAC,CAAC,CAAqC;QAClDwG,IAAI,EAAC,eAAe;QACpBC,4BAA4B,EAAE,IAAK;QACnCC,OAAO,EAAE,SAAAA,QAACtP,CAAC;UAAA,OAAKiG,yBAAyB,IAAIA,yBAAyB,IAAAvD,MAAA,CAAIuC,EAAE,aAAU,CAAC;QAAA,CAAC;QACxFsK,WAAW,EAAE,CAAC,CAAE;QAChBC,SAAS,KAAA9M,MAAA,CAAKgD,OAAO,KAAK,CAAC,GAAG,gBAAgB,GAAG,EAAE,CAAG;QACtD+J,MAAM,EAAE,SAAAA,OAAA,EAAM,CAAC,CAAE;QACjBC,KAAK,GAAArB,qBAAA,GAAEU,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEjF,YAAY,cAAAuE,qBAAA,cAAAA,qBAAA,GAAIU,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAElO,KAAM;QAC3DwE,IAAI,EAAEA,IAAK;QACXJ,EAAE,KAAAvC,MAAA,CAAKuC,EAAE,aAAW;QACpB4I,QAAQ,EAAE;MAAK,CAChB,CACF,EACA3I,kBAAkB,CAACoC,SAAS,KAAK,UAAU,iBAC1C,IAAAjI,WAAA,CAAA6P,GAAA,EAAChQ,YAAA,CAAAyQ,QAAQ;QACP7K,GAAG,EAAE8D,MAAM,CAAC,CAAC,CAAqC;QAClDwG,IAAI,EAAC,kBAAkB;QACvBG,WAAW,EAAE,CAAC,CAAE;QAChBC,SAAS,KAAA9M,MAAA,CAAKgD,OAAO,KAAK,CAAC,GAAG,gBAAgB,GAAG,EAAE,CAAG;QACtD+J,MAAM,EAAE,SAAAA,OAAC5B,QAAiB,EAAK;UAC7B,IAAI,CAAC3I,kBAAkB,CAACiH,WAAW,EAAE;UAErC,IAAMyD,SAAS,GAAG/B,QAAQ,GAAGU,YAAY,CAACxC,GAAG,CAAC,UAACrC,CAAC;YAAA,OAAKA,CAAC,CAAC7I,KAAK;UAAA,EAAC,GAAG,EAAE;UAClEgF,iBAAiB,CAAC+J,SAAS,CAAC;UAC5B,IAAI1K,kBAAkB,CAAC+I,aAAa,IAAI/I,kBAAkB,CAAC+I,aAAa,CAAC2B,SAAS,CAAC,EAAEpK,SAAS,CAAC,KAAK,CAAC;QACvG,CAAE;QACF8J,OAAO,EAAE,SAAAA,QAACtP,CAAC;UAAA,OAAKiG,yBAAyB,IAAIA,yBAAyB,IAAAvD,MAAA,CAAIuC,EAAE,aAAU,CAAC;QAAA,CAAC;QACxFoK,4BAA4B,EAAE,IAAK;QACnCQ,YAAY,EAAE3K,kBAAkB,CAACiH,WAAW,IAAI,CAACqC,WAAW,IAAI,CAAA5I,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAErF,MAAM,IAAG,CAAE;QAC3F8E,IAAI,EAAEA,IAAK;QACXJ,EAAE,KAAAvC,MAAA,CAAKuC,EAAE,wBAAsB;QAC/ByK,KAAK,EAAExK,kBAAkB,CAACiH,WAAW,GAAG,YAAY,IAAAmC,sBAAA,GAAGS,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAEjF,YAAY,cAAAwE,sBAAA,cAAAA,sBAAA,GAAIS,aAAa,aAAbA,aAAa,uBAAbA,aAAa,CAAElO,KAAM;QAC3GgN,QAAQ,EAAE,CAAC3I,kBAAkB,CAACiH,WAAW,IAAIqC;MAAY,CAC1D,CACF,EACAtJ,kBAAkB,CAACoC,SAAS,KAAK,QAAQ,iBACxC,IAAAjI,WAAA,CAAA6P,GAAA,EAAA7P,WAAA,CAAAyQ,QAAA;QAAAb,QAAA,EACGL,WAAW,CAAC7C,GAAG,CAAC,UAACrC,CAAC;UAAA,oBACjB,IAAArK,WAAA,CAAA6P,GAAA,EAAC9P,SAAA,WAAQ;YACPgQ,IAAI,EAAEjJ,aAAa,IAAI,OAAO,GAAG,QAAQ,GAAG,MAAO;YAEnD2H,IAAI,EAAEpE,CAAE;YACRrE,IAAI,EAAEA,IAAK;YACX9B,MAAM,EAAE,KAAM;YACdwM,QAAQ,EAAE,CAAC,CAAE;YACbT,OAAO,EAAE,SAAAA,QAACtP,CAAC;cAAA,OAAKiG,yBAAyB,IAAIA,yBAAyB,IAAAvD,MAAA,CAAIuC,EAAE,aAAU,CAAC;YAAA,CAAC;YACxFuK,SAAS,KAAA9M,MAAA,CAAKgD,OAAO,KAAK,CAAC,GAAG,gBAAgB,GAAG,EAAE,CAAG;YACtDZ,GAAG,EAAE8D,MAAM,CAAC,CAAC,CAAwC;YACrD3D,EAAE,KAAAvC,MAAA,CAAKuC,EAAE,aAAW;YACpB+K,cAAc,EAAE,SAAAA,eAAChQ,CAAM,EAAK;cAC1BA,CAAC,CAACiQ,eAAe,CAAC,CAAC;cACnB/K,kBAAkB,CAAC+I,aAAa,CAAC,CAACvE,CAAC,CAAC7I,KAAK,CAAC,CAAC;cAC3CgF,iBAAiB,CAAC,CAAC6D,CAAC,CAAC7I,KAAK,CAAC,CAAC;cAC5B2E,SAAS,CAAC,KAAK,CAAC;cAChBG,UAAU,CAAC,IAAI,CAAC;YAClB;UAAE,MAAAjD,MAAA,CAfMuC,EAAE,eAAAvC,MAAA,CAAYgH,CAAC,CAAC7I,KAAK,CAgB9B,CAAC;QAAA,CACH;MAAC,CACF,CACH;IAAA,CAC8B,CAAC;EAEtC,CAAC;EAED,IAAMqP,WAAW,GAAG,SAAdA,WAAWA,CAAIpK,kBAA0B,EAAET,IAA2C,EAAK;IAC/F,IAAIkE,gBAAgB,CAAC,CAAC,CAAChJ,MAAM,KAAK,CAAC,EAAE;MACnC,oBAAO,IAAAlB,WAAA,CAAA6P,GAAA,EAAC9P,SAAA,WAAQ;QAAC0O,IAAI,EAAE;UAAEjN,KAAK,EAAEiF,kBAAkB;UAAEqE,QAAQ,EAAE;QAAK,CAAE;QAAC9E,IAAI,EAAEA,IAAK;QAACJ,EAAE,EAAC,gBAAgB;QAAC1B,MAAM,EAAE,KAAM;QAACyM,cAAc,EAAE,SAAAA,eAAChQ,CAAC,EAAK,CAAC;MAAE,CAAE,CAAC;IACpJ;IACA,oBACE,IAAAX,WAAA,CAAA6P,GAAA,EAAC7L,6BAA6B;MAACP,KAAK,EAAEuC,IAAK;MAAA4J,QAAA,EACxC1F,gBAAgB,CAAC,CAAC,CAChB9D,MAAM,CAAC,UAACiE,CAAC;QAAA,OAAKA,CAAC,KAAKxE,kBAAkB,CAACoC,SAAS,IAAI,QAAQ,IAAI,CAACoC,CAAC,CAAC2C,UAAU,CAAC;MAAA,EAAC,CAC/EN,GAAG,CAAC,UAAC+B,IAAI,EAAErF,KAAK,EAAK;QAAA,IAAA0H,kBAAA,EAAAC,mBAAA;QACpB,oBACE,IAAA/Q,WAAA,CAAA2P,IAAA,EAACvQ,MAAA,WAAK,CAACqR,QAAQ;UAAAb,QAAA,GACZnB,IAAI,CAACuC,aAAa,EAClB,CAACvC,IAAI,CAACuC,aAAa,IAAInL,kBAAkB,CAACoC,SAAS,IAAI,OAAO,iBAC7D,IAAAjI,WAAA,CAAA6P,GAAA,EAAChQ,YAAA,CAAAiQ,WAAW;YACVC,IAAI,EAAC,eAAe;YACpBK,MAAM,EAAE,SAAAA,OAAC5B,QAAiB;cAAA,OAAKD,eAAe,CAACC,QAAQ,EAAEC,IAAI,CAAC;YAAA,CAAC;YAC/DhJ,GAAG,EAAE8D,MAAM,CAACH,KAAK,GAAG,CAAC,CAAqC;YAC1DpD,IAAI,EAAEA,IAAK;YACXkK,WAAW,EAAE,CAAC,CAAE;YAChBC,SAAS,KAAA9M,MAAA,CAAK+F,KAAK,GAAG,CAAC,KAAK/C,OAAO,GAAG,gBAAgB,GAAG,EAAE,CAAG;YAC9D2J,4BAA4B,EAAE,IAAK;YACnClF,QAAQ,EAAE2D,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAE3D,QAAS;YAEzBmF,OAAO,EAAE,SAAAA,QAACtP,CAAC;cAAA,OAAKiG,yBAAyB,IAAIA,yBAAyB,IAAAvD,MAAA,CAAIuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAAE,CAAC;YAAA,CAAC;YAC7FxD,EAAE,KAAAvC,MAAA,CAAKuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAAG;YACzBiH,KAAK,GAAAS,kBAAA,GAAErC,IAAI,CAAChE,YAAY,cAAAqG,kBAAA,cAAAA,kBAAA,GAAIrC,IAAI,CAACjN,KAAM;YACvCgN,QAAQ,EAAEjI,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEiE,QAAQ,CAACiE,IAAI,CAACjN,KAAK;UAAE,UAAA6B,MAAA,CAJnCuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAK5B,CACF,EACA,CAACqF,IAAI,CAACuC,aAAa,IAAInL,kBAAkB,CAACoC,SAAS,IAAI,UAAU,iBAChE,IAAAjI,WAAA,CAAA6P,GAAA,EAAChQ,YAAA,CAAAyQ,QAAQ;YACPP,IAAI,EAAC,kBAAkB;YACvBK,MAAM,EAAE,SAAAA,OAAC5B,QAAiB;cAAA,OAAKD,eAAe,CAACC,QAAQ,EAAEC,IAAI,CAAC;YAAA,CAAC;YAC/DuB,4BAA4B,EAAE,IAAK;YACnClF,QAAQ,EAAE2D,IAAI,aAAJA,IAAI,uBAAJA,IAAI,CAAE3D,QAAS;YACzBqF,SAAS,KAAA9M,MAAA,CAAK+F,KAAK,GAAG,CAAC,KAAK/C,OAAO,GAAG,gBAAgB,GAAG,EAAE,CAAG;YAC9DZ,GAAG,EAAE8D,MAAM,CAACH,KAAK,GAAG,CAAC,CAAqC;YAC1DpD,IAAI,EAAEA,IAAK;YACXkK,WAAW,EAAE,CAAC,CAAE;YAEhBD,OAAO,EAAE,SAAAA,QAACtP,CAAC;cAAA,OAAKiG,yBAAyB,IAAIA,yBAAyB,IAAAvD,MAAA,CAAIuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAAE,CAAC;YAAA,CAAC;YAC7FxD,EAAE,KAAAvC,MAAA,CAAKuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAAG;YACzBiH,KAAK,GAAAU,mBAAA,GAAEtC,IAAI,CAAChE,YAAY,cAAAsG,mBAAA,cAAAA,mBAAA,GAAItC,IAAI,CAACjN,KAAM;YACvCgN,QAAQ,EAAEjI,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEiE,QAAQ,CAACiE,IAAI,CAACjN,KAAK;UAAE,UAAA6B,MAAA,CAJnCuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAK5B,CACF,EACA,CAACqF,IAAI,CAACuC,aAAa,KAAKnL,kBAAkB,CAACoC,SAAS,IAAI,QAAQ,IAAI,CAACpC,kBAAkB,CAACoC,SAAS,CAAC,iBACjG,IAAAjI,WAAA,CAAA6P,GAAA,EAAC9P,SAAA,WAAQ;YACPgQ,IAAI,EAAEjJ,aAAa,IAAI,OAAO,GAAG,QAAQ,GAAG,MAAO;YAEnDlB,EAAE,KAAAvC,MAAA,CAAKuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAAG;YACzBqF,IAAI,EAAEA,IAAK;YACXiC,QAAQ,EAAE,CAAC,CAAE;YACbP,SAAS,KAAA9M,MAAA,CAAK+F,KAAK,GAAG,CAAC,KAAK/C,OAAO,GAAG,gBAAgB,GAAG,EAAE,CAAG;YAC9DL,IAAI,EAAEA,IAAK;YACXiK,OAAO,EAAE,SAAAA,QAACtP,CAAC;cAAA,OAAKiG,yBAAyB,IAAIA,yBAAyB,IAAAvD,MAAA,CAAIuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAAE,CAAC;YAAA,CAAC;YAC7FlF,MAAM,EAAEqC,cAAc,aAAdA,cAAc,uBAAdA,cAAc,CAAEiE,QAAQ,CAACiE,IAAI,CAACjN,KAAK,CAAE;YAC7CiE,GAAG,EAAE8D,MAAM,CAACH,KAAK,GAAG,CAAC,CAAwC;YAC7DuH,cAAc,EAAE,SAAAA,eAAChQ,CAAM,EAAK;cAC1BA,CAAC,CAACiQ,eAAe,CAAC,CAAC;cACnB/K,kBAAkB,CAAC+I,aAAa,CAAC,CAACH,IAAI,CAACjN,KAAK,CAAC,CAAC;cAC9CgF,iBAAiB,CAAC,CAACiI,IAAI,CAACjN,KAAK,CAAC,CAAC;cAC/B2E,SAAS,CAAC,KAAK,CAAC;cAChBG,UAAU,CAAC,IAAI,CAAC;YAClB;UAAE,UAAAjD,MAAA,CAfUuC,EAAE,OAAAvC,MAAA,CAAI+F,KAAK,GAAG,CAAC,CAgB5B,CACF;QAAA,UAAA/F,MAAA,CAxDyBuC,EAAE,OAAAvC,MAAA,CAAIoL,IAAI,CAACjN,KAAK,CAyD5B,CAAC;MAErB,CAAC;IAAC,CACyB,CAAC;EAEpC,CAAC;EAED,IAAM6M,eAAe,GAAG,SAAlBA,eAAeA,CAAA,EAAS;IAAA,IAAA4C,qBAAA;IAC5B,IAAM1I,IAAI,GAAG5B,YAAY,aAAZA,YAAY,wBAAAsK,qBAAA,GAAZtK,YAAY,CAAE6B,OAAO,cAAAyI,qBAAA,uBAArBA,qBAAA,CAAuBxI,qBAAqB,CAAC,CAAC;IAC3D,IAAIF,IAAI,EAAE;MACRR,kBAAkB,CAACS,OAAO,CAAC0I,KAAK,CAAChL,KAAK,GAAGA,KAAK,aAALA,KAAK,cAALA,KAAK,MAAA7C,MAAA,CAAOkF,IAAI,CAACrC,KAAK,OAAI;IACrE;IACAkC,eAAe,CAAC,CAAC;EACnB,CAAC;EAED,IAAM+I,GAAG,MAAA9N,MAAA,CAAM4C,MAAM,GAAG,MAAM,GAAG,EAAE,OAAA5C,MAAA,CAAI4C,MAAM,IAAIS,OAAO,GAAG,SAAS,GAAG,EAAE,OAAArD,MAAA,CAAIkE,eAAe,GAAIJ,IAAI,GAAG,IAAI,GAAG,MAAM,GAAI,EAAE,CAAE;EAE5H,oBACE,IAAAnH,WAAA,CAAA6P,GAAA,EAAC1K,OAAO;IAAAyK,QAAA,eACN,IAAA5P,WAAA,CAAA2P,IAAA,EAACjN,wBAAwB;MACvBqN,IAAI,EAAEjJ,aAAa,IAAI,MAAM,GAAG,MAAM,GAAG,YAAa;MACtDrB,GAAG,EAAEsC,kBAAmB;MACxBtE,KAAK,EAAEuC,IAAK;MACZzC,UAAU,EAAEsE,MAAM,CAACH,GAAI;MACvB9B,EAAE,EAAEA,EAAG;MACPtC,WAAW,EAAEuE,MAAM,CAACF,IAAK;MACzB+I,QAAQ,EAAE,CAAC,CAAE;MACbtN,SAAS,EAAE2C,QAAS;MACpBqL,UAAU,EAAEtL,SAAU;MACtBjC,WAAW,EAAEgC,kBAAkB,CAACwL,UAAW;MAC3CvN,UAAU,EAAE+B,kBAAkB,CAACyL,SAAU;MACzCnB,SAAS,EAAEgB,GAAI;MAAAvB,QAAA,gBACf,IAAA5P,WAAA,CAAA2P,IAAA,EAACvL,4BAA4B;QAC3B2L,IAAI,EAAC,OAAO;QACZtM,KAAK,EAAEuC,IAAK;QACZ3B,UAAU,EAAEwB,kBAAkB,CAACoC,SAAU;QACzCsJ,QAAQ,EAAExF,YAAa;QACvBtG,GAAG,EAAEyC,YAAa;QAClBsJ,QAAQ,EAAE9K,OAAQ;QAClB7C,WAAW,EAAEgC,kBAAkB,CAACwL,UAAW;QAAAzB,QAAA,GAC1C/J,kBAAkB,CAAC4L,WAAW,iBAC7B,IAAAzR,WAAA,CAAA2P,IAAA,EAACnL,mCAAmC;UAACf,KAAK,EAAEuC,IAAK;UAAA4J,QAAA,GAC9C/J,kBAAkB,CAAC4L,WAAW,eAC/B,IAAAzR,WAAA,CAAA6P,GAAA,EAAC7K,gBAAgB;YAACvB,KAAK,EAAEuC,IAAK;YAAA4J,QAAA,eAC5B,IAAA5P,WAAA,CAAA6P,GAAA;cAAKM,SAAS,EAAC;YAAS,CAAE;UAAC,CACX,CAAC;QAAA,CACgB,CACtC,EACAtK,kBAAkB,CAACgH,UAAU,IAAIgC,UAAU,CAAC,CAAC,EAC7CgC,WAAW,CAACpK,kBAAkB,EAAET,IAAI,CAAC;MAAA,CACV,CAAC,EAC9BH,kBAAkB,CAAC6L,MAAM,IAAI7L,kBAAkB,CAAC8L,WAAW,iBAC1D,IAAA3R,WAAA,CAAA6P,GAAA,EAAC3K,oCAAoC;QAACzB,KAAK,EAAEuC,IAAK;QAACnC,WAAW,EAAEgC,kBAAkB,CAACwL,UAAW;QAAAzB,QAAA,eAC5F,IAAA5P,WAAA,CAAA6P,GAAA,EAACrQ,OAAA,WAAM;UACL0G,KAAK,EAAC,MAAM;UACZ6J,IAAI,EAAC,UAAU;UACf6B,IAAI,EAAE/L,kBAAkB,CAACgM,UAAW;UACpCpM,GAAG,EAAE0C,eAAgB;UACrB2J,OAAO,EAAEjM,kBAAkB,CAACkM,aAAc;UAC1CjH,QAAQ,EAAEjF,kBAAkB,CAACmM,cAAe;UAC5CC,OAAO,GAAAtM,qBAAA,GAAEE,kBAAkB,CAACqM,aAAa,cAAAvM,qBAAA,cAAAA,qBAAA,GAAI,SAAU;UACvDK,IAAI,EAAEA,IAAK;UACXmM,OAAO,EAAE,SAAAA,QAAA;YAAA,OAAMtM,kBAAkB,CAAC6L,MAAM,CAAC,CAAC,IAAIvL,SAAS,CAAC,KAAK,CAAC;UAAA,CAAC;UAAAyJ,QAAA,EAC9D/J,kBAAkB,CAAC8L;QAAW,CACzB;MAAC,CAC2B,CACvC;IAAA,CACuB;EAAC,CACpB,CAAC;AAEd,CACF,CAAC;AAACtM,eAAA,CAAA+M,SAAA;EAhfArM,QAAQ,EAAAsM,UAAA,YAAAC,IAAA,CAAAC,UAAA;EACR1M,kBAAkB,EAAAwM,UAAA,YAAAG,KAAA;IAlBlBvK,SAAS,EAAAoK,UAAA,YAAAI,KAAA,EAAG,OAAO,EAAG,UAAU,EAAG,QAAQ;IAC3ChB,WAAW,EAAAY,UAAA,YAAAK,IAAA;IACXrB,UAAU,EAAAgB,UAAA,YAAAC,IAAA;IACVxF,WAAW,EAAAuF,UAAA,YAAAC,IAAA;IACXhB,SAAS,EAAAe,UAAA,YAAAM,MAAA;IACThB,WAAW,EAAAU,UAAA,YAAAM,MAAA;IAEXd,UAAU,EAAAQ,UAAA,YAAAK,IAAA;IACVX,aAAa,EAAAM,UAAA,YAAAC,IAAA;IACbN,cAAc,EAAAK,UAAA,YAAAC,IAAA;IACdZ,MAAM,EAAAW,UAAA,YAAAO,IAAA,CAAAL,UAAA;IACN1F,UAAU,EAAAwF,UAAA,YAAAC,IAAA;IACV1D,aAAa,EAAAyD,UAAA,YAAAO,IAAA,CAAAL,UAAA;IACbjK,KAAK,EAAA+J,UAAA,YAAAQ,OAAA,CAAAR,UAAA,YAAAG,KAAA;MAjCLhR,KAAK,EAAA6Q,UAAA,YAAAM,MAAA,CAAAJ,UAAA;MAEL9H,YAAY,EAAA4H,UAAA,YAAAM,MAAA;MAEZG,SAAS,EAAAT,UAAA,YAAAM,MAAA;MAET3F,UAAU,EAAAqF,UAAA,YAAAC,IAAA;MAEVS,gBAAgB,EAAAV,UAAA,YAAAC,IAAA;MAEhBxH,QAAQ,EAAAuH,UAAA,YAAAC,IAAA;MAERU,MAAM,EAAAX,UAAA,YAAAC,IAAA;MAENV,IAAI,EAAAS,UAAA,YAAAK,IAAA;MAEJ1B,aAAa,EAAAqB,UAAA,YAAAK;IAAA,IAAAH;EAAA,GAAAA,UAAA;EAuBbzM,SAAS,EAAAuM,UAAA,YAAAC,IAAA;EACTrM,MAAM,EAAAoM,UAAA,YAAAC,IAAA,CAAAC,UAAA;EACNpM,SAAS,EAAAkM,UAAA,YAAAO,IAAA,CAAAL,UAAA;EAET3M,EAAE,EAAAyM,UAAA,YAAAM,MAAA,CAAAJ,UAAA;EACFnM,MAAM,EAAAiM,UAAA,YAAAM,MAAA,CAAAJ,UAAA;EACNrM,KAAK,EAAAmM,UAAA,YAAAM,MAAA;EACL/L,yBAAyB,EAAAyL,UAAA,YAAAO,IAAA;EACzBrM,cAAc,EAAA8L,UAAA,YAAAQ,OAAA,CAAAR,UAAA,YAAAM,MAAA,EAAAJ,UAAA;EACd/L,iBAAiB,EAAA6L,UAAA,YAAAO,IAAA,CAAAL,UAAA;EACjB9L,kBAAkB,EAAA4L,UAAA,YAAAM,MAAA,CAAAJ,UAAA;EAClBlM,OAAO,EAAAgM,UAAA,YAAAY,SAAA,EAAAZ,UAAA,YAAAa,MAAA,EAAAb,UAAA,YAAAI,KAAA;EACPnM,UAAU,EAAA+L,UAAA,YAAAO,IAAA,CAAAL,UAAA;EACV7L,OAAO,EAAA2L,UAAA,YAAAC,IAAA;EAEPxL,aAAa,EAAAuL,UAAA,YAAAI,KAAA,EAAG,OAAO,EAAG,MAAM;AAAA;AAAA,IAAAU,QAAA,GAienB9N,eAAe;AAAAtB,OAAA,cAAAoP,QAAA","ignoreList":[]}
@@ -22,13 +22,13 @@ import { jsxs as _jsxs } from "react/jsx-runtime";
22
22
  var MAX_MENU_HEIGHT = 240;
23
23
  var AVG_OPTION_HEIGHT = 48;
24
24
  var OFFSET_BEFORE_SHOW = 1000000;
25
- export var DropdownContentContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: none;\n pointer-events: auto;\n position: absolute;\n background-color: ", ";\n\n z-index: ", ";\n margin: ", ";\n\n &.show {\n display: flex;\n flex-direction: column;\n justify-content: center;\n &.down,\n &.up {\n ", "\n }\n }\n\n transform: translate(-", "px, -", "px);\n\n &.outline:focus:after {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n outline: 4px solid black;\n outline-offset: 2px;\n border-radius: 2px;\n }\n\n &:focus {\n outline: none;\n }\n\n ", ";\n\n border: 1px solid ", ";\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\n padding: 4px 0px;\n\n min-width: ", ";\n border-radius: ", ";\n\n max-height: ", ";\n"])), function (props) {
25
+ export var DropdownContentContainer = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n display: none;\n pointer-events: auto;\n position: absolute;\n background-color: ", ";\n\n z-index: ", ";\n margin: ", ";\n\n inset: 0px auto auto 100%;\n\n &.show {\n display: flex;\n flex-direction: column;\n justify-content: center;\n &.down,\n &.up {\n ", "\n }\n }\n\n &.outline:focus:after {\n content: '';\n pointer-events: none;\n position: absolute;\n top: 0;\n left: 0;\n right: 0;\n bottom: 0;\n outline: 4px solid black;\n outline-offset: 2px;\n border-radius: 2px;\n }\n\n &:focus {\n outline: none;\n }\n\n ", ";\n\n border: 1px solid ", ";\n box-sizing: border-box;\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\n padding: 4px 0px;\n\n min-width: ", ";\n border-radius: ", ";\n\n max-height: ", ";\n"])), function (props) {
26
26
  return COLORS.getColor('white', props.theme);
27
27
  }, Z_INDEXES.dropdown, function (props) {
28
28
  return props.$isButton ? '-4px' : '4px 0px';
29
29
  }, function (props) {
30
30
  return "transform: translate(".concat(props.$offsetLeft, ", ").concat(props.$offsetTop, ");");
31
- }, OFFSET_BEFORE_SHOW, OFFSET_BEFORE_SHOW, function (props) {
31
+ }, function (props) {
32
32
  return props.$isButton ? DropdownContentButtonStyling : '';
33
33
  }, function (props) {
34
34
  return COLORS.getColor('neutral_100', props.theme);
@@ -83,7 +83,7 @@ var DropdownContentActionButtonContainer = styled.div(_templateObject7 || (_temp
83
83
  }, function (props) {
84
84
  return props.$size === Size.Small || !props.$size ? '4px 16px 0px' : props.$size === Size.Medium ? '12px 16px 8px' : '16px 16px 12px';
85
85
  });
86
- var Overlay = styled.div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n position: fixed;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: ", ";\n"])), Z_INDEXES.modal);
86
+ var Overlay = styled.div(_templateObject8 || (_templateObject8 = _taggedTemplateLiteral(["\n position: relative;\n top: 0;\n left: 0;\n width: 100%;\n height: 100%;\n pointer-events: none;\n z-index: ", ";\n"])), Z_INDEXES.modal);
87
87
  var DropdownContent = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
88
88
  var _ref2, _customizationProps$a;
89
89
  var id = _ref.id,
@@ -506,8 +506,6 @@ var DropdownContent = /*#__PURE__*/React.forwardRef(function (_ref, ref) {
506
506
  var _containerRef$current;
507
507
  var rect = containerRef === null || containerRef === void 0 ? void 0 : (_containerRef$current = containerRef.current) === null || _containerRef$current === void 0 ? void 0 : _containerRef$current.getBoundingClientRect();
508
508
  if (rect) {
509
- dropdownContentRef.current.style.left = "".concat(rect.x + rect.width, "px");
510
- dropdownContentRef.current.style.top = "".concat(rect.y + rect.height, "px");
511
509
  dropdownContentRef.current.style.width = width !== null && width !== void 0 ? width : "".concat(rect.width, "px");
512
510
  }
513
511
  determineDropUp();
@@ -1 +1 @@
1
- {"version":3,"file":"DropdownContent.js","names":["React","styled","Button","Size","DropdownContentButtonStyling","ComponentLStyling","ComponentXLStyling","ComponentMStyling","ComponentSStyling","ComponentTextStyle","COLORS","scrollBarStyling","Checkbox","RadioButton","Z_INDEXES","MenuItem","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","MAX_MENU_HEIGHT","AVG_OPTION_HEIGHT","OFFSET_BEFORE_SHOW","DropdownContentContainer","div","_templateObject","_taggedTemplateLiteral","props","getColor","theme","dropdown","$isButton","concat","$offsetLeft","$offsetTop","$size","Large","Medium","$scrollable","$maxHeight","DropdownContentItemsContainer","_templateObject2","hover","active","focus","DropdownContentListContainer","_templateObject3","$itemsType","Small","DropdownContentMenuContentContainer","_templateObject4","Bold","Regular","DividerContainer","_templateObject5","DropdownContentTopItemContainer","_templateObject6","DropdownContentActionButtonContainer","_templateObject7","Overlay","_templateObject8","modal","DropdownContent","forwardRef","_ref","ref","_ref2","_customizationProps$a","id","customizationProps","alignLeft","isButton","size","isOpen","width","setIsOpen","filter","focused","setFocused","selectedValues","setSelectedValues","messageOnNoResults","outline","containerRef","onActiveDescendantChanged","_ref$ariaRolesType","ariaRolesType","_React$useState","useState","_React$useState2","_slicedToArray","isUp","setIsUp","_React$useState3","_React$useState4","locationDefined","setLocationDefined","_React$useState5","top","left","_React$useState6","offset","setOffset","dropdownContentRef","useRef","itemsType","itemsListRef","actionButtonRef","determineDropUp","options","items","rect","current","getBoundingClientRect","windowHeight","window","innerHeight","menuHeight","Math","min","length","instOffsetWithMenu","height","up","setNewFocusedElement","index","_dropdownContentRef$c","newFocusedElement","elRefs","oldFocusedElement","_oldFocusedElement$cu","_newFocusedElement$cu","_newFocusedElement$cu2","classList","remove","add","scrollIntoView","block","inline","getFilteredItems","filtrationString","toUpperCase","x","_x$value","_x$displayLabel","value","includes","displayLabel","findNextActiveIndex","direction","i","_items","disabled","handleKeyDown","e","key","preventDefault","focusedNow","arrLength","haveTopItem","undefined","target","focusedElement","_focusedElement$curre","click","useEffect","document","addEventListener","removeEventListener","scrollPosition","handleScroll","_itemsListRef$current","scrollTop","useLayoutEffect","_scrollPosition$curre","getCorrectRef","createRef","_React$useState7","_React$useState8","setElRefs","Array","fill","map","_","_getSuggestions","pinTopItem","multiSelect","getSuggestions","suggestion","_dropdownContentRef$c2","_dropdownContentRef$c3","_iterator","_createForOfIteratorHelper","_step","s","n","done","_elRef$current","elRef","err","f","blur","_dropdownContentRef$c4","_dropdownContentRef$c5","observer","IntersectionObserver","entries","isIntersecting","_document","_document$activeEleme","activeElement","threshold","rootMargin","observe","calculateOffset","disconnect","handleItemClick","selected","item","newValue","_toConsumableArray","onValueUpdate","getTopItem","_customizationProps$i","_customizationProps$i2","_selectedFirst$displa","_selectedFirst$displa2","visibleItems","allSelected","some","y","showTopItem","suggestions","find","c","selectedFirst","children","role","iconPointerEventsTransparent","onFocus","tabIndexVal","className","select","label","newValues","semiSelected","tabIndex","onClickHandler","stopPropagation","getElements","_item$displayLabel","_item$displayLabel2","customContent","_containerRef$current","style","cls","$alignLeft","scrollable","maxHeight","onScroll","$outline","menuContent","action","actionLabel","icon","actionIcon","loading","actionLoading","actionDisabled","variant","actionVariant","onClick","propTypes","_pt","bool","isRequired","shape","oneOf","node","string","func","arrayOf","noteLabel","showDividerAbove","locked","oneOfType","number"],"sources":["../../src/Dropdown/DropdownContent.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport Button from '../Button/Button';\r\nimport { Size } from '../types';\r\nimport { DropdownContentButtonStyling } from './CommonStyling';\r\nimport { ComponentLStyling, ComponentXLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\r\nimport { COLORS, focusStyles, scrollBarStyling } from '../styles';\r\nimport { Checkbox, RadioButton } from '../InputFields';\r\nimport { Z_INDEXES } from '../styles/z-indexes';\r\nimport MenuItem from '../MenuItem/MenuItem';\r\nimport { defaultOnMouseDownHandler } from '../common';\r\n\r\nconst MAX_MENU_HEIGHT = 240;\r\nconst AVG_OPTION_HEIGHT = 48;\r\nconst OFFSET_BEFORE_SHOW = 1000000;\r\n\r\nexport const DropdownContentContainer = styled.div<{ $offsetTop: string; $offsetLeft: string; $isButton: boolean; $alignLeft?: boolean; $size?: Size; $scrollable?: boolean; $maxHeight?: string }>`\r\n display: none;\r\n pointer-events: auto;\r\n position: absolute;\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n\r\n z-index: ${Z_INDEXES.dropdown};\r\n margin: ${(props) => (props.$isButton ? '-4px' : '4px 0px')};\r\n\r\n &.show {\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n &.down,\r\n &.up {\r\n ${(props) => `transform: translate(${props.$offsetLeft}, ${props.$offsetTop});`}\r\n }\r\n }\r\n\r\n transform: translate(-${OFFSET_BEFORE_SHOW}px, -${OFFSET_BEFORE_SHOW}px);\r\n\r\n &.outline:focus:after {\r\n content: '';\r\n pointer-events: none;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n outline: 4px solid black;\r\n outline-offset: 2px;\r\n border-radius: 2px;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n ${(props) => (props.$isButton ? DropdownContentButtonStyling : '')};\r\n\r\n border: 1px solid ${props => COLORS.getColor('neutral_100', props.theme)};\r\n box-sizing: border-box;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n padding: 4px 0px;\r\n\r\n min-width: ${(props) => (props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n border-radius: ${(props) => (props.$size == Size.Large ? '10px' : props.$size == Size.Medium ? '8px' : '6px')};\r\n\r\n max-height: ${(props) => (!props.$scrollable ? 'auto' : props.$maxHeight ? props.$maxHeight : props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n`;\r\n\r\nexport const DropdownContentItemsContainer = styled.div<{ $size?: Size }>`\r\n > *:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n }\r\n\r\n > *:active,\r\n > *.active {\r\n z-index: ${Z_INDEXES.active};\r\n }\r\n\r\n > *:focus {\r\n z-index: ${Z_INDEXES.focus};\r\n }\r\n`;\r\n\r\nexport const DropdownContentListContainer = styled.div<{ $scrollable?: boolean; $size?: Size; $itemsType?: string; $outline?: boolean }>`\r\n ${(props) => (props.$scrollable ? 'overflow-y: scroll;' : '')}\r\n ${(props) => (props.$scrollable ? 'margin-right: 6px;' : '')}\r\n ${(props) => (props.$scrollable ? 'padding-right: 6px;' : '')}\r\n ${(props) => (props.$itemsType != 'normal' ? 'margin-left: 4px;' : '')}\r\n div.divider {\r\n display: block;\r\n width: calc(100% - 40px);\r\n margin-left: 16px;\r\n border-top: 1px solid #e5e5e5;\r\n position: absolute;\r\n top: 0px;\r\n }\r\n\r\n ${DropdownContentItemsContainer} {\r\n padding-top: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n padding-bottom: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n\r\n word-break: break-word;\r\n }\r\n\r\n *:focus {\r\n outline: none !important;\r\n }\r\n\r\n ${scrollBarStyling(Size.Small)}\r\n`;\r\n\r\nconst DropdownContentMenuContentContainer = styled.div<{ $size?: Size }>`\r\n h1,\r\n h2,\r\n h3 {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentXLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentMStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '10px 16px 6px' : props.$size == Size.Medium ? '16px 24px 8px' : '16px 32px 8px')};\r\n }\r\n\r\n p {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentLStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '8px 16px' : props.$size == Size.Medium ? '12px 24px' : '16px 32px')};\r\n }\r\n`;\r\n\r\nconst DividerContainer = styled.div<{ $size?: Size }>`\r\n position: relative;\r\n\r\n margin-top: ${(props) => (props.$size == Size.Large ? '16px' : props.$size == Size.Medium ? '12px' : props.$size == Size.Small || !props.$size ? '8px' : '6px')};\r\n\r\n div.divider {\r\n width: 100%;\r\n margin: 0px;\r\n }\r\n`;\r\n\r\nconst DropdownContentTopItemContainer = styled.div<{ $size?: Size }>`\r\n border-bottom-style: solid;\r\n border-bottom-color: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n border-bottom-width: 1px;\r\n margin-right: 22px;\r\n`;\r\n\r\nconst DropdownContentActionButtonContainer = styled.div<{ $size?: Size; $scrollable?: boolean }>`\r\n ${(props) => (props.$scrollable ? `border-top: 1px solid ${COLORS.getColor('neutral_200', props.theme)};` : '')}\r\n ${(props) => (props.$scrollable ? 'margin-top: 4px;' : '')}\r\n\r\n padding: ${(props) => (props.$size === Size.Small || !props.$size ? '4px 16px 0px' : props.$size === Size.Medium ? '12px 16px 8px' : '16px 16px 12px')};\r\n\r\n button {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nconst Overlay = styled.div`\r\n position: fixed;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n pointer-events: none;\r\n z-index: ${Z_INDEXES.modal};\r\n`;\r\n\r\nexport interface DropdownItem {\r\n /** Required. Value of the DropdownItem. */\r\n value: string;\r\n /** Optional. Display label to show in the MenuItem. If not provided then 'value' will be used as label. */\r\n displayLabel?: string;\r\n /** Optional. Note label to be shown under the Display label in the MenuItem. */\r\n noteLabel?: string;\r\n /** */\r\n suggestion?: boolean;\r\n /** Optional. Show dividing line on the top of the item. */\r\n showDividerAbove?: boolean;\r\n /** Optional. If disabled user can not interact with the item. */\r\n disabled?: boolean;\r\n /** Optional. If item is locked then user can not interact with the item and 'lock' icon is shown on the right side of the item. */\r\n locked?: boolean;\r\n /** Optional. Icon to be shown on the left side of the menu item */\r\n icon?: React.ReactNode;\r\n /** */\r\n customContent?: React.ReactNode;\r\n}\r\n\r\nexport interface DropdownCustomizationProps {\r\n itemsType?: 'radio' | 'checkbox' | 'normal';\r\n menuContent?: React.ReactNode;\r\n scrollable?: boolean;\r\n multiSelect?: boolean;\r\n maxHeight?: string;\r\n actionLabel?: string;\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n actionIcon?: React.ReactNode;\r\n actionLoading?: boolean;\r\n actionDisabled?: boolean;\r\n action: () => boolean | void | undefined;\r\n pinTopItem?: boolean;\r\n onValueUpdate: (values: string[]) => boolean | void | undefined;\r\n items: DropdownItem[];\r\n}\r\n\r\nexport interface DropdownProps {\r\n isButton: boolean;\r\n customizationProps: DropdownCustomizationProps;\r\n alignLeft?: boolean;\r\n isOpen: boolean;\r\n setIsOpen: (open: boolean) => void;\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n id: string;\r\n filter: string;\r\n width?: string;\r\n onActiveDescendantChanged?: (descendantId?: string) => void;\r\n selectedValues: string[];\r\n setSelectedValues: (val: string[]) => void;\r\n messageOnNoResults: string;\r\n focused: number | null;\r\n setFocused: (focused: number | null) => void;\r\n outline?: boolean;\r\n containerRef: React.RefObject<HTMLDivElement>;\r\n ariaRolesType?: 'input' | 'menu';\r\n}\r\n\r\nconst DropdownContent = React.forwardRef<HTMLDivElement, DropdownProps>(\r\n (\r\n {\r\n id,\r\n customizationProps,\r\n alignLeft,\r\n isButton,\r\n size,\r\n isOpen,\r\n width,\r\n setIsOpen,\r\n filter,\r\n focused,\r\n setFocused,\r\n selectedValues,\r\n setSelectedValues,\r\n messageOnNoResults,\r\n outline,\r\n containerRef,\r\n onActiveDescendantChanged,\r\n ariaRolesType = 'menu',\r\n },\r\n ref,\r\n ) => {\r\n const [isUp, setIsUp] = React.useState<boolean>(false);\r\n const [locationDefined, setLocationDefined] = React.useState<boolean>(false);\r\n const [offset, setOffset] = React.useState<{ top: string; left: string }>({ top: '0', left: '0' });\r\n\r\n const dropdownContentRef = (ref as MutableRefObject<HTMLDivElement>) ?? React.useRef<HTMLDivElement>(null);\r\n\r\n if (!customizationProps.itemsType) customizationProps.itemsType = 'normal';\r\n if (!size) size = Size.Small;\r\n\r\n const itemsListRef = React.useRef<HTMLDivElement>(null);\r\n const actionButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const determineDropUp = () => {\r\n const options = customizationProps.items;\r\n\r\n const rect = containerRef.current!.getBoundingClientRect();\r\n\r\n const windowHeight = window.innerHeight;\r\n const menuHeight = Math.min(MAX_MENU_HEIGHT, options.length * AVG_OPTION_HEIGHT);\r\n const instOffsetWithMenu = rect.top + rect.height + menuHeight;\r\n\r\n const up = instOffsetWithMenu >= windowHeight;\r\n\r\n setOffset({\r\n top: up ? `calc(-100% - ${rect.height}px ${isButton ? '' : '- 8px'})` : '0',\r\n left: alignLeft ? `calc(-${rect.width}px)` : `calc(-100%)`,\r\n });\r\n\r\n setIsUp(up);\r\n setLocationDefined(true);\r\n };\r\n\r\n const setNewFocusedElement = (index: number) => {\r\n if (outline) dropdownContentRef.current?.focus();\r\n\r\n const newFocusedElement = elRefs[index];\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(index == 0 ? `${id}_topitem` : `${id}_${index}`);\r\n\r\n const oldFocusedElement = focused || focused === 0 ? elRefs[focused] : null;\r\n if (newFocusedElement && newFocusedElement !== oldFocusedElement) {\r\n setFocused(index);\r\n oldFocusedElement?.current?.classList.remove('dropdown-hover');\r\n\r\n newFocusedElement.current?.classList.add('dropdown-hover');\r\n newFocusedElement.current?.scrollIntoView({\r\n block: 'nearest',\r\n inline: 'nearest',\r\n });\r\n }\r\n };\r\n\r\n const getFilteredItems = () => {\r\n const filtrationString = (filter ?? '').toUpperCase();\r\n return customizationProps.items.filter((x) => x?.value?.toUpperCase().includes(filtrationString) || x?.displayLabel?.toUpperCase().includes(filtrationString));\r\n };\r\n\r\n const findNextActiveIndex = (index: number, direction: number, items: DropdownItem[]) => {\r\n for (let i = index + direction; i > 0 && i <= items.length; i += direction) {\r\n if (!items[i - 1]?.disabled) {\r\n return i;\r\n }\r\n }\r\n\r\n return index;\r\n };\r\n\r\n const handleKeyDown = (e: KeyboardEvent) => {\r\n if (isOpen) {\r\n if (e.key === 'ArrowUp' || e.key === 'Up') {\r\n e.preventDefault();\r\n let focusedNow = focused || focused === 0 ? focused : arrLength + 1;\r\n if (!!focusedNow) {\r\n focusedNow = focusedNow === 1 && haveTopItem() ? 0 : findNextActiveIndex(focusedNow, -1, getFilteredItems());\r\n\r\n setNewFocusedElement(focusedNow);\r\n }\r\n } else if (e.key === 'ArrowDown' || e.key === 'Down') {\r\n e.preventDefault();\r\n let focusedNow = focused;\r\n\r\n focusedNow = !!focusedNow || focusedNow === 0 ? findNextActiveIndex(focusedNow, 1, getFilteredItems()) : haveTopItem() ? 0 : 1;\r\n\r\n setNewFocusedElement(focusedNow);\r\n } else if (e.key === 'Escape' || e.key === 'Esc') {\r\n setIsOpen(false);\r\n setFocused(null);\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n } else if ((e.key === 'Enter' || e.key === ' ') && focused !== null && e.target !== actionButtonRef?.current) {\r\n e.preventDefault();\r\n const focusedElement = elRefs[focused];\r\n if (focusedElement) {\r\n focusedElement.current?.click();\r\n }\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n }\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n document.addEventListener('keydown', handleKeyDown);\r\n return () => {\r\n document.removeEventListener('keydown', handleKeyDown);\r\n };\r\n }, []);\r\n\r\n const scrollPosition = React.useRef<number | undefined>(0);\r\n const handleScroll = () => {\r\n scrollPosition.current = itemsListRef.current?.scrollTop;\r\n };\r\n React.useLayoutEffect(() => {\r\n if (itemsListRef.current) itemsListRef.current.scrollTop = scrollPosition.current ?? 0;\r\n }, [selectedValues]);\r\n\r\n const getCorrectRef = (ref: React.RefObject<HTMLElement>): React.RefObject<HTMLElement> => {\r\n switch (customizationProps.itemsType) {\r\n case 'normal':\r\n return (ref as React.RefObject<HTMLButtonElement>) || React.createRef<HTMLButtonElement>();\r\n default:\r\n return (ref as React.RefObject<HTMLDivElement>) || React.createRef<HTMLDivElement>();\r\n }\r\n };\r\n\r\n const arrLength = getFilteredItems().length;\r\n const [elRefs, setElRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\r\n\r\n React.useEffect(() => {\r\n if (elRefs?.length !== arrLength) {\r\n setFocused(null);\r\n }\r\n\r\n setElRefs((elRefs) =>\r\n Array(arrLength + 1)\r\n .fill(null)\r\n .map((_, i) => getCorrectRef(elRefs[i])),\r\n );\r\n }, [isOpen, arrLength]);\r\n\r\n React.useLayoutEffect(() => {\r\n isOpen && !locationDefined && determineDropUp();\r\n }, [isOpen, locationDefined]);\r\n\r\n const haveTopItem = () => {\r\n if (!customizationProps.pinTopItem) return false;\r\n\r\n if (customizationProps.itemsType === 'radio' && selectedValues && selectedValues?.length > 0) return true;\r\n else if (customizationProps.itemsType === 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) return true;\r\n else if (customizationProps.itemsType === 'normal' && getSuggestions()?.length > 0) return true;\r\n return false;\r\n };\r\n\r\n const getSuggestions = () => {\r\n return getFilteredItems().filter((x) => x.suggestion);\r\n };\r\n\r\n /**\r\n * when dropdown opens set correct position of focused item\r\n * */\r\n React.useLayoutEffect(() => {\r\n if (isOpen && (focused || focused === 0)) {\r\n setNewFocusedElement(focused === 0 && !haveTopItem() ? 1 : focused);\r\n }\r\n }, [isOpen, focused]);\r\n\r\n /**\r\n * Reset dropdown content state on close\r\n * */\r\n React.useEffect(() => {\r\n if (!isOpen) {\r\n setLocationDefined(false);\r\n for (let elRef of elRefs) {\r\n elRef.current?.classList.remove('dropdown-hover');\r\n }\r\n setFocused(null);\r\n if(onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n dropdownContentRef.current?.classList.remove('outline');\r\n dropdownContentRef.current?.blur();\r\n } else {\r\n if (outline) {\r\n dropdownContentRef.current?.classList.add('outline');\r\n dropdownContentRef.current?.focus();\r\n }\r\n }\r\n }, [isOpen, dropdownContentRef, focused, outline]);\r\n\r\n /**\r\n * Scroll item container to top when dropdown opens\r\n * */\r\n React.useEffect(() => {\r\n if (isOpen && itemsListRef.current) {\r\n itemsListRef.current.scrollTop = 0;\r\n }\r\n }, [isOpen]);\r\n\r\n React.useEffect(() => {\r\n if (isOpen) {\r\n const observer = new IntersectionObserver(function (entries) {\r\n if (!entries[0].isIntersecting) {\r\n setIsOpen(false);\r\n //@ts-ignore\r\n document?.activeElement?.blur();\r\n }\r\n }, {threshold: [0], rootMargin: '8px'});\r\n\r\n observer.observe(containerRef.current!);\r\n\r\n calculateOffset();\r\n window.addEventListener('scroll', calculateOffset, true);\r\n window.addEventListener('resize', calculateOffset);\r\n\r\n return () => {\r\n observer.disconnect();\r\n window.removeEventListener('scroll', calculateOffset, true);\r\n window.removeEventListener('resize', calculateOffset);\r\n }\r\n }\r\n return () => {};\r\n }, [isOpen]);\r\n\r\n const handleItemClick = (selected: boolean, item: DropdownItem) => {\r\n let newValue: string[] = [];\r\n if (customizationProps.multiSelect) {\r\n if (selected) newValue = [...selectedValues, item.value];\r\n else newValue = selectedValues.filter((x) => x != item.value);\r\n } else newValue = selected ? [item.value] : [];\r\n\r\n setSelectedValues(newValue);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValue)) {\r\n setIsOpen(false);\r\n }\r\n };\r\n\r\n const getTopItem = () => {\r\n if (!customizationProps.pinTopItem) return;\r\n const visibleItems = getFilteredItems();\r\n const allSelected = selectedValues?.filter((x) => visibleItems.some((y) => y.value == x)).length == visibleItems.length;\r\n let showTopItem = false;\r\n const suggestions = getSuggestions();\r\n const displayLabel = selectedValues[0] ? customizationProps.items?.find((c) => c.value === selectedValues[0])?.displayLabel : undefined;\r\n if (customizationProps.itemsType == 'radio' && selectedValues && selectedValues?.length > 0) showTopItem = true;\r\n else if (customizationProps.itemsType == 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) showTopItem = true;\r\n else if (customizationProps.itemsType == 'normal' && suggestions.length > 0) showTopItem = true;\r\n\r\n if (!showTopItem) return;\r\n\r\n const selectedFirst = selectedValues.length > 0 ? visibleItems.find((x) => x.value == selectedValues[0]) : null;\r\n\r\n return (\r\n <DropdownContentTopItemContainer $size={size}>\r\n {customizationProps.itemsType === 'radio' && (\r\n <RadioButton\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemradio'\r\n iconPointerEventsTransparent={true}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={() => {}}\r\n label={selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n size={size}\r\n id={`${id}_topitem`}\r\n selected={true}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'checkbox' && (\r\n <Checkbox\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemcheckbox'\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={(selected: boolean) => {\r\n if (!customizationProps.multiSelect) return;\r\n\r\n const newValues = selected ? visibleItems.map((x) => x.value) : [];\r\n setSelectedValues(newValues);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValues)) setIsOpen(false);\r\n }}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n iconPointerEventsTransparent={true}\r\n semiSelected={customizationProps.multiSelect && !allSelected && selectedValues?.length > 0}\r\n size={size}\r\n id={`${id}_checkbox_selectall`}\r\n label={customizationProps.multiSelect ? 'Select all' : selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n selected={!customizationProps.multiSelect || allSelected}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'normal' && (\r\n <>\r\n {suggestions.map((x) => (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`${id}_topitem_${x.value}`}\r\n item={x}\r\n size={size}\r\n active={false}\r\n tabIndex={-1}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[0] as React.RefObject<HTMLButtonElement>}\r\n id={`${id}_topitem`}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([x.value]);\r\n setSelectedValues([x.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n ))}\r\n </>\r\n )}\r\n </DropdownContentTopItemContainer>\r\n );\r\n };\r\n\r\n const getElements = (messageOnNoResults: string, size: Size.Small | Size.Medium | Size.Large) => {\r\n if (getFilteredItems().length === 0) {\r\n return <MenuItem item={{ value: messageOnNoResults, disabled: true }} size={size} id=\"noResultsFound\" active={false} onClickHandler={(e) => {}} />;\r\n }\r\n return (\r\n <DropdownContentItemsContainer $size={size}>\r\n {getFilteredItems()\r\n .filter((x) => x && (customizationProps.itemsType != 'normal' || !x.suggestion))\r\n .map((item, index) => {\r\n return (\r\n <React.Fragment key={`key_${id}_${item.value}`}>\r\n {item.customContent}\r\n {!item.customContent && customizationProps.itemsType == 'radio' && (\r\n <RadioButton\r\n role='menuitemradio'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && customizationProps.itemsType == 'checkbox' && (\r\n <Checkbox\r\n role='menuitemcheckbox'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && (customizationProps.itemsType == 'normal' || !customizationProps.itemsType) && (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`key_${id}_${index + 1}`}\r\n id={`${id}_${index + 1}`}\r\n item={item}\r\n tabIndex={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n size={size}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n active={selectedValues?.includes(item.value)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLButtonElement>}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([item.value]);\r\n setSelectedValues([item.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n )}\r\n </React.Fragment>\r\n );\r\n })}\r\n </DropdownContentItemsContainer>\r\n );\r\n };\r\n\r\n const calculateOffset = () => {\r\n const rect = containerRef?.current?.getBoundingClientRect();\r\n if (rect) {\r\n dropdownContentRef.current.style.left = `${rect.x + rect.width}px`;\r\n dropdownContentRef.current.style.top = `${rect.y + rect.height}px`;\r\n dropdownContentRef.current.style.width = width ?? `${rect.width}px`;\r\n }\r\n determineDropUp();\r\n };\r\n\r\n const cls = `${isOpen ? 'show' : ''} ${isOpen && outline ? 'outline' : ''} ${locationDefined ? (isUp ? 'up' : 'down') : ''}`;\r\n\r\n return (\r\n <Overlay>\r\n <DropdownContentContainer\r\n role={ariaRolesType == \"menu\" ? \"menu\" : \"optionlist\"}\r\n ref={dropdownContentRef}\r\n $size={size}\r\n $offsetTop={offset.top}\r\n id={id}\r\n $offsetLeft={offset.left}\r\n tabIndex={-1}\r\n $isButton={isButton}\r\n $alignLeft={alignLeft}\r\n $scrollable={customizationProps.scrollable}\r\n $maxHeight={customizationProps.maxHeight}\r\n className={cls}>\r\n <DropdownContentListContainer\r\n role=\"group\"\r\n $size={size}\r\n $itemsType={customizationProps.itemsType}\r\n onScroll={handleScroll}\r\n ref={itemsListRef}\r\n $outline={outline}\r\n $scrollable={customizationProps.scrollable}>\r\n {customizationProps.menuContent && (\r\n <DropdownContentMenuContentContainer $size={size}>\r\n {customizationProps.menuContent}\r\n <DividerContainer $size={size}>\r\n <div className=\"divider\" />\r\n </DividerContainer>\r\n </DropdownContentMenuContentContainer>\r\n )}\r\n {customizationProps.pinTopItem && getTopItem()}\r\n {getElements(messageOnNoResults, size)}\r\n </DropdownContentListContainer>\r\n {customizationProps.action && customizationProps.actionLabel && (\r\n <DropdownContentActionButtonContainer $size={size} $scrollable={customizationProps.scrollable}>\r\n <Button\r\n width=\"100%\"\r\n role=\"menuitem\"\r\n icon={customizationProps.actionIcon}\r\n ref={actionButtonRef}\r\n loading={customizationProps.actionLoading}\r\n disabled={customizationProps.actionDisabled}\r\n variant={customizationProps.actionVariant ?? 'primary'}\r\n size={size}\r\n onClick={() => customizationProps.action() && setIsOpen(false)}>\r\n {customizationProps.actionLabel}\r\n </Button>\r\n </DropdownContentActionButtonContainer>\r\n )}\r\n </DropdownContentContainer>\r\n </Overlay>\r\n );\r\n },\r\n);\r\n\r\nexport default DropdownContent;\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"DropdownContent.js","names":["React","styled","Button","Size","DropdownContentButtonStyling","ComponentLStyling","ComponentXLStyling","ComponentMStyling","ComponentSStyling","ComponentTextStyle","COLORS","scrollBarStyling","Checkbox","RadioButton","Z_INDEXES","MenuItem","jsx","_jsx","Fragment","_Fragment","jsxs","_jsxs","MAX_MENU_HEIGHT","AVG_OPTION_HEIGHT","OFFSET_BEFORE_SHOW","DropdownContentContainer","div","_templateObject","_taggedTemplateLiteral","props","getColor","theme","dropdown","$isButton","concat","$offsetLeft","$offsetTop","$size","Large","Medium","$scrollable","$maxHeight","DropdownContentItemsContainer","_templateObject2","hover","active","focus","DropdownContentListContainer","_templateObject3","$itemsType","Small","DropdownContentMenuContentContainer","_templateObject4","Bold","Regular","DividerContainer","_templateObject5","DropdownContentTopItemContainer","_templateObject6","DropdownContentActionButtonContainer","_templateObject7","Overlay","_templateObject8","modal","DropdownContent","forwardRef","_ref","ref","_ref2","_customizationProps$a","id","customizationProps","alignLeft","isButton","size","isOpen","width","setIsOpen","filter","focused","setFocused","selectedValues","setSelectedValues","messageOnNoResults","outline","containerRef","onActiveDescendantChanged","_ref$ariaRolesType","ariaRolesType","_React$useState","useState","_React$useState2","_slicedToArray","isUp","setIsUp","_React$useState3","_React$useState4","locationDefined","setLocationDefined","_React$useState5","top","left","_React$useState6","offset","setOffset","dropdownContentRef","useRef","itemsType","itemsListRef","actionButtonRef","determineDropUp","options","items","rect","current","getBoundingClientRect","windowHeight","window","innerHeight","menuHeight","Math","min","length","instOffsetWithMenu","height","up","setNewFocusedElement","index","_dropdownContentRef$c","newFocusedElement","elRefs","oldFocusedElement","_oldFocusedElement$cu","_newFocusedElement$cu","_newFocusedElement$cu2","classList","remove","add","scrollIntoView","block","inline","getFilteredItems","filtrationString","toUpperCase","x","_x$value","_x$displayLabel","value","includes","displayLabel","findNextActiveIndex","direction","i","_items","disabled","handleKeyDown","e","key","preventDefault","focusedNow","arrLength","haveTopItem","undefined","target","focusedElement","_focusedElement$curre","click","useEffect","document","addEventListener","removeEventListener","scrollPosition","handleScroll","_itemsListRef$current","scrollTop","useLayoutEffect","_scrollPosition$curre","getCorrectRef","createRef","_React$useState7","_React$useState8","setElRefs","Array","fill","map","_","_getSuggestions","pinTopItem","multiSelect","getSuggestions","suggestion","_dropdownContentRef$c2","_dropdownContentRef$c3","_iterator","_createForOfIteratorHelper","_step","s","n","done","_elRef$current","elRef","err","f","blur","_dropdownContentRef$c4","_dropdownContentRef$c5","observer","IntersectionObserver","entries","isIntersecting","_document","_document$activeEleme","activeElement","threshold","rootMargin","observe","calculateOffset","disconnect","handleItemClick","selected","item","newValue","_toConsumableArray","onValueUpdate","getTopItem","_customizationProps$i","_customizationProps$i2","_selectedFirst$displa","_selectedFirst$displa2","visibleItems","allSelected","some","y","showTopItem","suggestions","find","c","selectedFirst","children","role","iconPointerEventsTransparent","onFocus","tabIndexVal","className","select","label","newValues","semiSelected","tabIndex","onClickHandler","stopPropagation","getElements","_item$displayLabel","_item$displayLabel2","customContent","_containerRef$current","style","cls","$alignLeft","scrollable","maxHeight","onScroll","$outline","menuContent","action","actionLabel","icon","actionIcon","loading","actionLoading","actionDisabled","variant","actionVariant","onClick","propTypes","_pt","bool","isRequired","shape","oneOf","node","string","func","arrayOf","noteLabel","showDividerAbove","locked","oneOfType","number"],"sources":["../../src/Dropdown/DropdownContent.tsx"],"sourcesContent":["import React, { MutableRefObject } from 'react';\r\nimport styled, { css } from 'styled-components';\r\nimport Button from '../Button/Button';\r\nimport { Size } from '../types';\r\nimport { DropdownContentButtonStyling } from './CommonStyling';\r\nimport { ComponentLStyling, ComponentXLStyling, ComponentMStyling, ComponentSStyling, ComponentTextStyle } from '../styles/typography';\r\nimport { COLORS, focusStyles, scrollBarStyling } from '../styles';\r\nimport { Checkbox, RadioButton } from '../InputFields';\r\nimport { Z_INDEXES } from '../styles/z-indexes';\r\nimport MenuItem from '../MenuItem/MenuItem';\r\nimport { defaultOnMouseDownHandler } from '../common';\r\n\r\nconst MAX_MENU_HEIGHT = 240;\r\nconst AVG_OPTION_HEIGHT = 48;\r\nconst OFFSET_BEFORE_SHOW = 1000000;\r\n\r\nexport const DropdownContentContainer = styled.div<{ $offsetTop: string; $offsetLeft: string; $isButton: boolean; $alignLeft?: boolean; $size?: Size; $scrollable?: boolean; $maxHeight?: string }>`\r\n display: none;\r\n pointer-events: auto;\r\n position: absolute;\r\n background-color: ${props => COLORS.getColor('white', props.theme)};\r\n\r\n z-index: ${Z_INDEXES.dropdown};\r\n margin: ${(props) => (props.$isButton ? '-4px' : '4px 0px')};\r\n\r\n inset: 0px auto auto 100%;\r\n\r\n &.show {\r\n display: flex;\r\n flex-direction: column;\r\n justify-content: center;\r\n &.down,\r\n &.up {\r\n ${(props) => `transform: translate(${props.$offsetLeft}, ${props.$offsetTop});`}\r\n }\r\n }\r\n\r\n &.outline:focus:after {\r\n content: '';\r\n pointer-events: none;\r\n position: absolute;\r\n top: 0;\r\n left: 0;\r\n right: 0;\r\n bottom: 0;\r\n outline: 4px solid black;\r\n outline-offset: 2px;\r\n border-radius: 2px;\r\n }\r\n\r\n &:focus {\r\n outline: none;\r\n }\r\n\r\n ${(props) => (props.$isButton ? DropdownContentButtonStyling : '')};\r\n\r\n border: 1px solid ${props => COLORS.getColor('neutral_100', props.theme)};\r\n box-sizing: border-box;\r\n box-shadow: 0px 2px 4px rgba(0, 0, 0, 0.15);\r\n padding: 4px 0px;\r\n\r\n min-width: ${(props) => (props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n border-radius: ${(props) => (props.$size == Size.Large ? '10px' : props.$size == Size.Medium ? '8px' : '6px')};\r\n\r\n max-height: ${(props) => (!props.$scrollable ? 'auto' : props.$maxHeight ? props.$maxHeight : props.$size == Size.Large ? '320px' : props.$size == Size.Medium ? '280px' : '240px')};\r\n`;\r\n\r\nexport const DropdownContentItemsContainer = styled.div<{ $size?: Size }>`\r\n > *:hover {\r\n z-index: ${Z_INDEXES.hover};\r\n }\r\n\r\n > *:active,\r\n > *.active {\r\n z-index: ${Z_INDEXES.active};\r\n }\r\n\r\n > *:focus {\r\n z-index: ${Z_INDEXES.focus};\r\n }\r\n`;\r\n\r\nexport const DropdownContentListContainer = styled.div<{ $scrollable?: boolean; $size?: Size; $itemsType?: string; $outline?: boolean }>`\r\n ${(props) => (props.$scrollable ? 'overflow-y: scroll;' : '')}\r\n ${(props) => (props.$scrollable ? 'margin-right: 6px;' : '')}\r\n ${(props) => (props.$scrollable ? 'padding-right: 6px;' : '')}\r\n ${(props) => (props.$itemsType != 'normal' ? 'margin-left: 4px;' : '')}\r\n div.divider {\r\n display: block;\r\n width: calc(100% - 40px);\r\n margin-left: 16px;\r\n border-top: 1px solid #e5e5e5;\r\n position: absolute;\r\n top: 0px;\r\n }\r\n\r\n ${DropdownContentItemsContainer} {\r\n padding-top: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n padding-bottom: ${(props) => (props.$size == Size.Large ? '8px' : props.$size == Size.Medium ? '4px' : '0px')};\r\n\r\n word-break: break-word;\r\n }\r\n\r\n *:focus {\r\n outline: none !important;\r\n }\r\n\r\n ${scrollBarStyling(Size.Small)}\r\n`;\r\n\r\nconst DropdownContentMenuContentContainer = styled.div<{ $size?: Size }>`\r\n h1,\r\n h2,\r\n h3 {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentXLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentLStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentMStyling(ComponentTextStyle.Bold, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '10px 16px 6px' : props.$size == Size.Medium ? '16px 24px 8px' : '16px 32px 8px')};\r\n }\r\n\r\n p {\r\n margin-block-start: 0px;\r\n margin-block-end: 0px;\r\n ${(props) => props.$size == Size.Large && ComponentLStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => props.$size == Size.Medium && ComponentMStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n ${(props) => (props.$size == Size.Small || !props.$size) && ComponentSStyling(ComponentTextStyle.Regular, COLORS.getColor('neutral_500', props.theme))}\r\n padding: ${(props) => (props.$size == Size.Small || !props.$size ? '8px 16px' : props.$size == Size.Medium ? '12px 24px' : '16px 32px')};\r\n }\r\n`;\r\n\r\nconst DividerContainer = styled.div<{ $size?: Size }>`\r\n position: relative;\r\n\r\n margin-top: ${(props) => (props.$size == Size.Large ? '16px' : props.$size == Size.Medium ? '12px' : props.$size == Size.Small || !props.$size ? '8px' : '6px')};\r\n\r\n div.divider {\r\n width: 100%;\r\n margin: 0px;\r\n }\r\n`;\r\n\r\nconst DropdownContentTopItemContainer = styled.div<{ $size?: Size }>`\r\n border-bottom-style: solid;\r\n border-bottom-color: ${props => COLORS.getColor('neutral_200', props.theme)};\r\n border-bottom-width: 1px;\r\n margin-right: 22px;\r\n`;\r\n\r\nconst DropdownContentActionButtonContainer = styled.div<{ $size?: Size; $scrollable?: boolean }>`\r\n ${(props) => (props.$scrollable ? `border-top: 1px solid ${COLORS.getColor('neutral_200', props.theme)};` : '')}\r\n ${(props) => (props.$scrollable ? 'margin-top: 4px;' : '')}\r\n\r\n padding: ${(props) => (props.$size === Size.Small || !props.$size ? '4px 16px 0px' : props.$size === Size.Medium ? '12px 16px 8px' : '16px 16px 12px')};\r\n\r\n button {\r\n width: 100%;\r\n }\r\n`;\r\n\r\nconst Overlay = styled.div`\r\n position: relative;\r\n top: 0;\r\n left: 0;\r\n width: 100%;\r\n height: 100%;\r\n pointer-events: none;\r\n z-index: ${Z_INDEXES.modal};\r\n`;\r\n\r\nexport interface DropdownItem {\r\n /** Required. Value of the DropdownItem. */\r\n value: string;\r\n /** Optional. Display label to show in the MenuItem. If not provided then 'value' will be used as label. */\r\n displayLabel?: string;\r\n /** Optional. Note label to be shown under the Display label in the MenuItem. */\r\n noteLabel?: string;\r\n /** */\r\n suggestion?: boolean;\r\n /** Optional. Show dividing line on the top of the item. */\r\n showDividerAbove?: boolean;\r\n /** Optional. If disabled user can not interact with the item. */\r\n disabled?: boolean;\r\n /** Optional. If item is locked then user can not interact with the item and 'lock' icon is shown on the right side of the item. */\r\n locked?: boolean;\r\n /** Optional. Icon to be shown on the left side of the menu item */\r\n icon?: React.ReactNode;\r\n /** */\r\n customContent?: React.ReactNode;\r\n}\r\n\r\nexport interface DropdownCustomizationProps {\r\n itemsType?: 'radio' | 'checkbox' | 'normal';\r\n menuContent?: React.ReactNode;\r\n scrollable?: boolean;\r\n multiSelect?: boolean;\r\n maxHeight?: string;\r\n actionLabel?: string;\r\n actionVariant?: 'primary' | 'secondary' | 'tertiary' | undefined;\r\n actionIcon?: React.ReactNode;\r\n actionLoading?: boolean;\r\n actionDisabled?: boolean;\r\n action: () => boolean | void | undefined;\r\n pinTopItem?: boolean;\r\n onValueUpdate: (values: string[]) => boolean | void | undefined;\r\n items: DropdownItem[];\r\n}\r\n\r\nexport interface DropdownProps {\r\n isButton: boolean;\r\n customizationProps: DropdownCustomizationProps;\r\n alignLeft?: boolean;\r\n isOpen: boolean;\r\n setIsOpen: (open: boolean) => void;\r\n size?: Size.Small | Size.Medium | Size.Large;\r\n id: string;\r\n filter: string;\r\n width?: string;\r\n onActiveDescendantChanged?: (descendantId?: string) => void;\r\n selectedValues: string[];\r\n setSelectedValues: (val: string[]) => void;\r\n messageOnNoResults: string;\r\n focused: number | null;\r\n setFocused: (focused: number | null) => void;\r\n outline?: boolean;\r\n containerRef: React.RefObject<HTMLDivElement>;\r\n ariaRolesType?: 'input' | 'menu';\r\n}\r\n\r\nconst DropdownContent = React.forwardRef<HTMLDivElement, DropdownProps>(\r\n (\r\n {\r\n id,\r\n customizationProps,\r\n alignLeft,\r\n isButton,\r\n size,\r\n isOpen,\r\n width,\r\n setIsOpen,\r\n filter,\r\n focused,\r\n setFocused,\r\n selectedValues,\r\n setSelectedValues,\r\n messageOnNoResults,\r\n outline,\r\n containerRef,\r\n onActiveDescendantChanged,\r\n ariaRolesType = 'menu',\r\n },\r\n ref,\r\n ) => {\r\n const [isUp, setIsUp] = React.useState<boolean>(false);\r\n const [locationDefined, setLocationDefined] = React.useState<boolean>(false);\r\n const [offset, setOffset] = React.useState<{ top: string; left: string }>({ top: '0', left: '0' });\r\n\r\n const dropdownContentRef = (ref as MutableRefObject<HTMLDivElement>) ?? React.useRef<HTMLDivElement>(null);\r\n\r\n if (!customizationProps.itemsType) customizationProps.itemsType = 'normal';\r\n if (!size) size = Size.Small;\r\n\r\n const itemsListRef = React.useRef<HTMLDivElement>(null);\r\n const actionButtonRef = React.useRef<HTMLButtonElement>(null);\r\n\r\n const determineDropUp = () => {\r\n const options = customizationProps.items;\r\n\r\n const rect = containerRef.current!.getBoundingClientRect();\r\n\r\n const windowHeight = window.innerHeight;\r\n const menuHeight = Math.min(MAX_MENU_HEIGHT, options.length * AVG_OPTION_HEIGHT);\r\n const instOffsetWithMenu = rect.top + rect.height + menuHeight;\r\n\r\n const up = instOffsetWithMenu >= windowHeight;\r\n\r\n setOffset({\r\n top: up ? `calc(-100% - ${rect.height}px ${isButton ? '' : '- 8px'})` : '0',\r\n left: alignLeft ? `calc(-${rect.width}px)` : `calc(-100%)`,\r\n });\r\n\r\n setIsUp(up);\r\n setLocationDefined(true);\r\n };\r\n\r\n const setNewFocusedElement = (index: number) => {\r\n if (outline) dropdownContentRef.current?.focus();\r\n\r\n const newFocusedElement = elRefs[index];\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(index == 0 ? `${id}_topitem` : `${id}_${index}`);\r\n\r\n const oldFocusedElement = focused || focused === 0 ? elRefs[focused] : null;\r\n if (newFocusedElement && newFocusedElement !== oldFocusedElement) {\r\n setFocused(index);\r\n oldFocusedElement?.current?.classList.remove('dropdown-hover');\r\n\r\n newFocusedElement.current?.classList.add('dropdown-hover');\r\n newFocusedElement.current?.scrollIntoView({\r\n block: 'nearest',\r\n inline: 'nearest',\r\n });\r\n }\r\n };\r\n\r\n const getFilteredItems = () => {\r\n const filtrationString = (filter ?? '').toUpperCase();\r\n return customizationProps.items.filter((x) => x?.value?.toUpperCase().includes(filtrationString) || x?.displayLabel?.toUpperCase().includes(filtrationString));\r\n };\r\n\r\n const findNextActiveIndex = (index: number, direction: number, items: DropdownItem[]) => {\r\n for (let i = index + direction; i > 0 && i <= items.length; i += direction) {\r\n if (!items[i - 1]?.disabled) {\r\n return i;\r\n }\r\n }\r\n\r\n return index;\r\n };\r\n\r\n const handleKeyDown = (e: KeyboardEvent) => {\r\n if (isOpen) {\r\n if (e.key === 'ArrowUp' || e.key === 'Up') {\r\n e.preventDefault();\r\n let focusedNow = focused || focused === 0 ? focused : arrLength + 1;\r\n if (!!focusedNow) {\r\n focusedNow = focusedNow === 1 && haveTopItem() ? 0 : findNextActiveIndex(focusedNow, -1, getFilteredItems());\r\n\r\n setNewFocusedElement(focusedNow);\r\n }\r\n } else if (e.key === 'ArrowDown' || e.key === 'Down') {\r\n e.preventDefault();\r\n let focusedNow = focused;\r\n\r\n focusedNow = !!focusedNow || focusedNow === 0 ? findNextActiveIndex(focusedNow, 1, getFilteredItems()) : haveTopItem() ? 0 : 1;\r\n\r\n setNewFocusedElement(focusedNow);\r\n } else if (e.key === 'Escape' || e.key === 'Esc') {\r\n setIsOpen(false);\r\n setFocused(null);\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n } else if ((e.key === 'Enter' || e.key === ' ') && focused !== null && e.target !== actionButtonRef?.current) {\r\n e.preventDefault();\r\n const focusedElement = elRefs[focused];\r\n if (focusedElement) {\r\n focusedElement.current?.click();\r\n }\r\n if (onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n }\r\n }\r\n };\r\n\r\n React.useEffect(() => {\r\n document.addEventListener('keydown', handleKeyDown);\r\n return () => {\r\n document.removeEventListener('keydown', handleKeyDown);\r\n };\r\n }, []);\r\n\r\n const scrollPosition = React.useRef<number | undefined>(0);\r\n const handleScroll = () => {\r\n scrollPosition.current = itemsListRef.current?.scrollTop;\r\n };\r\n React.useLayoutEffect(() => {\r\n if (itemsListRef.current) itemsListRef.current.scrollTop = scrollPosition.current ?? 0;\r\n }, [selectedValues]);\r\n\r\n const getCorrectRef = (ref: React.RefObject<HTMLElement>): React.RefObject<HTMLElement> => {\r\n switch (customizationProps.itemsType) {\r\n case 'normal':\r\n return (ref as React.RefObject<HTMLButtonElement>) || React.createRef<HTMLButtonElement>();\r\n default:\r\n return (ref as React.RefObject<HTMLDivElement>) || React.createRef<HTMLDivElement>();\r\n }\r\n };\r\n\r\n const arrLength = getFilteredItems().length;\r\n const [elRefs, setElRefs] = React.useState<React.RefObject<HTMLElement>[]>([]);\r\n\r\n React.useEffect(() => {\r\n if (elRefs?.length !== arrLength) {\r\n setFocused(null);\r\n }\r\n\r\n setElRefs((elRefs) =>\r\n Array(arrLength + 1)\r\n .fill(null)\r\n .map((_, i) => getCorrectRef(elRefs[i])),\r\n );\r\n }, [isOpen, arrLength]);\r\n\r\n React.useLayoutEffect(() => {\r\n isOpen && !locationDefined && determineDropUp();\r\n }, [isOpen, locationDefined]);\r\n\r\n const haveTopItem = () => {\r\n if (!customizationProps.pinTopItem) return false;\r\n\r\n if (customizationProps.itemsType === 'radio' && selectedValues && selectedValues?.length > 0) return true;\r\n else if (customizationProps.itemsType === 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) return true;\r\n else if (customizationProps.itemsType === 'normal' && getSuggestions()?.length > 0) return true;\r\n return false;\r\n };\r\n\r\n const getSuggestions = () => {\r\n return getFilteredItems().filter((x) => x.suggestion);\r\n };\r\n\r\n /**\r\n * when dropdown opens set correct position of focused item\r\n * */\r\n React.useLayoutEffect(() => {\r\n if (isOpen && (focused || focused === 0)) {\r\n setNewFocusedElement(focused === 0 && !haveTopItem() ? 1 : focused);\r\n }\r\n }, [isOpen, focused]);\r\n\r\n /**\r\n * Reset dropdown content state on close\r\n * */\r\n React.useEffect(() => {\r\n if (!isOpen) {\r\n setLocationDefined(false);\r\n for (let elRef of elRefs) {\r\n elRef.current?.classList.remove('dropdown-hover');\r\n }\r\n setFocused(null);\r\n if(onActiveDescendantChanged) onActiveDescendantChanged(undefined);\r\n dropdownContentRef.current?.classList.remove('outline');\r\n dropdownContentRef.current?.blur();\r\n } else {\r\n if (outline) {\r\n dropdownContentRef.current?.classList.add('outline');\r\n dropdownContentRef.current?.focus();\r\n }\r\n }\r\n }, [isOpen, dropdownContentRef, focused, outline]);\r\n\r\n /**\r\n * Scroll item container to top when dropdown opens\r\n * */\r\n React.useEffect(() => {\r\n if (isOpen && itemsListRef.current) {\r\n itemsListRef.current.scrollTop = 0;\r\n }\r\n }, [isOpen]);\r\n\r\n React.useEffect(() => {\r\n if (isOpen) {\r\n const observer = new IntersectionObserver(function (entries) {\r\n if (!entries[0].isIntersecting) {\r\n setIsOpen(false);\r\n //@ts-ignore\r\n document?.activeElement?.blur();\r\n }\r\n }, {threshold: [0], rootMargin: '8px'});\r\n\r\n observer.observe(containerRef.current!);\r\n\r\n calculateOffset();\r\n window.addEventListener('scroll', calculateOffset, true);\r\n window.addEventListener('resize', calculateOffset);\r\n\r\n return () => {\r\n observer.disconnect();\r\n window.removeEventListener('scroll', calculateOffset, true);\r\n window.removeEventListener('resize', calculateOffset);\r\n }\r\n }\r\n return () => {};\r\n }, [isOpen]);\r\n\r\n const handleItemClick = (selected: boolean, item: DropdownItem) => {\r\n let newValue: string[] = [];\r\n if (customizationProps.multiSelect) {\r\n if (selected) newValue = [...selectedValues, item.value];\r\n else newValue = selectedValues.filter((x) => x != item.value);\r\n } else newValue = selected ? [item.value] : [];\r\n\r\n setSelectedValues(newValue);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValue)) {\r\n setIsOpen(false);\r\n }\r\n };\r\n\r\n const getTopItem = () => {\r\n if (!customizationProps.pinTopItem) return;\r\n const visibleItems = getFilteredItems();\r\n const allSelected = selectedValues?.filter((x) => visibleItems.some((y) => y.value == x)).length == visibleItems.length;\r\n let showTopItem = false;\r\n const suggestions = getSuggestions();\r\n const displayLabel = selectedValues[0] ? customizationProps.items?.find((c) => c.value === selectedValues[0])?.displayLabel : undefined;\r\n if (customizationProps.itemsType == 'radio' && selectedValues && selectedValues?.length > 0) showTopItem = true;\r\n else if (customizationProps.itemsType == 'checkbox' && (customizationProps.multiSelect || selectedValues?.length > 0)) showTopItem = true;\r\n else if (customizationProps.itemsType == 'normal' && suggestions.length > 0) showTopItem = true;\r\n\r\n if (!showTopItem) return;\r\n\r\n const selectedFirst = selectedValues.length > 0 ? visibleItems.find((x) => x.value == selectedValues[0]) : null;\r\n\r\n return (\r\n <DropdownContentTopItemContainer $size={size}>\r\n {customizationProps.itemsType === 'radio' && (\r\n <RadioButton\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemradio'\r\n iconPointerEventsTransparent={true}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={() => {}}\r\n label={selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n size={size}\r\n id={`${id}_topitem`}\r\n selected={true}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'checkbox' && (\r\n <Checkbox\r\n ref={elRefs[0] as React.RefObject<HTMLDivElement>}\r\n role='menuitemcheckbox'\r\n tabIndexVal={-1}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n select={(selected: boolean) => {\r\n if (!customizationProps.multiSelect) return;\r\n\r\n const newValues = selected ? visibleItems.map((x) => x.value) : [];\r\n setSelectedValues(newValues);\r\n if (customizationProps.onValueUpdate && customizationProps.onValueUpdate(newValues)) setIsOpen(false);\r\n }}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n iconPointerEventsTransparent={true}\r\n semiSelected={customizationProps.multiSelect && !allSelected && selectedValues?.length > 0}\r\n size={size}\r\n id={`${id}_checkbox_selectall`}\r\n label={customizationProps.multiSelect ? 'Select all' : selectedFirst?.displayLabel ?? selectedFirst?.value}\r\n selected={!customizationProps.multiSelect || allSelected}\r\n />\r\n )}\r\n {customizationProps.itemsType === 'normal' && (\r\n <>\r\n {suggestions.map((x) => (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`${id}_topitem_${x.value}`}\r\n item={x}\r\n size={size}\r\n active={false}\r\n tabIndex={-1}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_topitem`)}\r\n className={`${focused === 0 ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[0] as React.RefObject<HTMLButtonElement>}\r\n id={`${id}_topitem`}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([x.value]);\r\n setSelectedValues([x.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n ))}\r\n </>\r\n )}\r\n </DropdownContentTopItemContainer>\r\n );\r\n };\r\n\r\n const getElements = (messageOnNoResults: string, size: Size.Small | Size.Medium | Size.Large) => {\r\n if (getFilteredItems().length === 0) {\r\n return <MenuItem item={{ value: messageOnNoResults, disabled: true }} size={size} id=\"noResultsFound\" active={false} onClickHandler={(e) => {}} />;\r\n }\r\n return (\r\n <DropdownContentItemsContainer $size={size}>\r\n {getFilteredItems()\r\n .filter((x) => x && (customizationProps.itemsType != 'normal' || !x.suggestion))\r\n .map((item, index) => {\r\n return (\r\n <React.Fragment key={`key_${id}_${item.value}`}>\r\n {item.customContent}\r\n {!item.customContent && customizationProps.itemsType == 'radio' && (\r\n <RadioButton\r\n role='menuitemradio'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && customizationProps.itemsType == 'checkbox' && (\r\n <Checkbox\r\n role='menuitemcheckbox'\r\n select={(selected: boolean) => handleItemClick(selected, item)}\r\n iconPointerEventsTransparent={true}\r\n disabled={item?.disabled}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLDivElement>}\r\n size={size}\r\n tabIndexVal={-1}\r\n key={`key_${id}_${index + 1}`}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n id={`${id}_${index + 1}`}\r\n label={item.displayLabel ?? item.value}\r\n selected={selectedValues?.includes(item.value)}\r\n />\r\n )}\r\n {!item.customContent && (customizationProps.itemsType == 'normal' || !customizationProps.itemsType) && (\r\n <MenuItem\r\n role={ariaRolesType == 'input' ? 'option' : 'menu'} \r\n key={`key_${id}_${index + 1}`}\r\n id={`${id}_${index + 1}`}\r\n item={item}\r\n tabIndex={-1}\r\n className={`${index + 1 === focused ? 'dropdown-hover' : ''}`}\r\n size={size}\r\n onFocus={(e) => onActiveDescendantChanged && onActiveDescendantChanged(`${id}_${index + 1}`)}\r\n active={selectedValues?.includes(item.value)}\r\n ref={elRefs[index + 1] as React.RefObject<HTMLButtonElement>}\r\n onClickHandler={(e: any) => {\r\n e.stopPropagation();\r\n customizationProps.onValueUpdate([item.value]);\r\n setSelectedValues([item.value]);\r\n setIsOpen(false);\r\n setFocused(null);\r\n }}\r\n />\r\n )}\r\n </React.Fragment>\r\n );\r\n })}\r\n </DropdownContentItemsContainer>\r\n );\r\n };\r\n\r\n const calculateOffset = () => {\r\n const rect = containerRef?.current?.getBoundingClientRect();\r\n if (rect) {\r\n dropdownContentRef.current.style.width = width ?? `${rect.width}px`;\r\n }\r\n determineDropUp();\r\n };\r\n\r\n const cls = `${isOpen ? 'show' : ''} ${isOpen && outline ? 'outline' : ''} ${locationDefined ? (isUp ? 'up' : 'down') : ''}`;\r\n\r\n return (\r\n <Overlay>\r\n <DropdownContentContainer\r\n role={ariaRolesType == \"menu\" ? \"menu\" : \"optionlist\"}\r\n ref={dropdownContentRef}\r\n $size={size}\r\n $offsetTop={offset.top}\r\n id={id}\r\n $offsetLeft={offset.left}\r\n tabIndex={-1}\r\n $isButton={isButton}\r\n $alignLeft={alignLeft}\r\n $scrollable={customizationProps.scrollable}\r\n $maxHeight={customizationProps.maxHeight}\r\n className={cls}>\r\n <DropdownContentListContainer\r\n role=\"group\"\r\n $size={size}\r\n $itemsType={customizationProps.itemsType}\r\n onScroll={handleScroll}\r\n ref={itemsListRef}\r\n $outline={outline}\r\n $scrollable={customizationProps.scrollable}>\r\n {customizationProps.menuContent && (\r\n <DropdownContentMenuContentContainer $size={size}>\r\n {customizationProps.menuContent}\r\n <DividerContainer $size={size}>\r\n <div className=\"divider\" />\r\n </DividerContainer>\r\n </DropdownContentMenuContentContainer>\r\n )}\r\n {customizationProps.pinTopItem && getTopItem()}\r\n {getElements(messageOnNoResults, size)}\r\n </DropdownContentListContainer>\r\n {customizationProps.action && customizationProps.actionLabel && (\r\n <DropdownContentActionButtonContainer $size={size} $scrollable={customizationProps.scrollable}>\r\n <Button\r\n width=\"100%\"\r\n role=\"menuitem\"\r\n icon={customizationProps.actionIcon}\r\n ref={actionButtonRef}\r\n loading={customizationProps.actionLoading}\r\n disabled={customizationProps.actionDisabled}\r\n variant={customizationProps.actionVariant ?? 'primary'}\r\n size={size}\r\n onClick={() => customizationProps.action() && setIsOpen(false)}>\r\n {customizationProps.actionLabel}\r\n </Button>\r\n </DropdownContentActionButtonContainer>\r\n )}\r\n </DropdownContentContainer>\r\n </Overlay>\r\n );\r\n },\r\n);\r\n\r\nexport default DropdownContent;\r\n"],"mappings":"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","ignoreList":[]}
@@ -16,7 +16,7 @@ var _jsxRuntime = require("react/jsx-runtime");
16
16
  var _templateObject, _templateObject2, _templateObject3, _templateObject4, _templateObject5, _templateObject6, _templateObject7, _templateObject8, _templateObject9;
17
17
  function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
18
18
  function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
19
- var TypographyBase = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n fontSize: ", ";\n fontWeight: ", ";\n lineHeight: ", "px;\n textTransform: ", ";\n textDecorationLine: ", ";\n fontStyle: ", ";\n color: ", ";\n"])), function (props) {
19
+ var TypographyBase = _styledComponents["default"].div(_templateObject || (_templateObject = (0, _taggedTemplateLiteral2["default"])(["\n font-size: ", "px;\n font-weight: ", ";\n line-height: ", "px;\n text-transform: ", ";\n text-decoration-line: ", ";\n font-style: ", ";\n color: ", ";\n"])), function (props) {
20
20
  return props.$fontSize;
21
21
  }, function (props) {
22
22
  return props.$fontWeight;
@@ -1 +1 @@
1
- {"version":3,"file":"typography.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_interopRequireWildcard","_","_types","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypographyBase","styled","div","_taggedTemplateLiteral2","props","$fontSize","$fontWeight","$lineHeight","_props$$textTransform","$textTransform","_props$$textDecoratio","$textDecorationLine","_props$$fontStyle","$fontStyle","_props$$color","$color","COLORS","getColor","theme","exports","ComponentTextStyle","componentFontWeight","textStyle","fontWeight","Bold","UppercaseBold","componentFontStyle","fontStyle","Italic","componentTextTransformation","ComponentStyling","fontSize","lineHeight","color","css","concat","ComponentXLStyling","ComponentXL","_ref","children","className","jsx","propTypes","_propTypes","string","oneOf","node","ComponentLStyling","ComponentL","_ref2","ComponentMStyling","ComponentM","_ref3","ComponentSStyling","ComponentS","_ref4","ComponentXSStyling","ComponentXS","_ref5","textTransform","ComponentXXSStyling","ComponentXXS","_ref6","ComponentResponsive","_ref7","size","width","fontsize","Size","Medium","Small","Large","XXSmall","XSmall","Typography","QuoteTypography","NoteTypography","UpperCaseTypography","Note","p","Quote","UpperCase"],"sources":["../../src/styles/typography.tsx"],"sourcesContent":["import React from 'react';\r\nimport styled, {css} from 'styled-components';\r\nimport {COLORS} from '.';\r\nimport {Property} from 'csstype';\r\nimport {Size} from '../types';\r\n\r\nexport const TypographyBase = styled.div<{$color?: string,\r\n $lineHeight: number,\r\n $fontSize: number,\r\n $fontWeight: number,\r\n $fontStyle?: string,\r\n $textTransform?: Property.TextTransform,\r\n $textDecorationLine?: Property.TextDecorationLine,\r\n}>`\r\n fontSize: ${props => props.$fontSize};\r\n fontWeight: ${props => props.$fontWeight};\r\n lineHeight: ${props => props.$lineHeight}px;\r\n textTransform: ${props => props.$textTransform ?? 'none' };\r\n textDecorationLine: ${props => props.$textDecorationLine ?? 'none'};\r\n fontStyle: ${props => props.$fontStyle ?? 'normal'};\r\n color: ${props => props.$color ?? COLORS.getColor('black', props.theme)};\r\n`;\r\n\r\nenum ComponentTextStyle {\r\n Regular = 1,\r\n Bold,\r\n Italic,\r\n UppercaseBold,\r\n}\r\n\r\ntype ComponentProps = {\r\n color?: string;\r\n className?: string;\r\n textStyle?: ComponentTextStyle;\r\n children?: React.ReactNode;\r\n};\r\n\r\nconst componentFontWeight = (textStyle?: ComponentTextStyle) => {\r\n let fontWeight = 400;\r\n if (textStyle === ComponentTextStyle.Bold || textStyle === ComponentTextStyle.UppercaseBold) {\r\n fontWeight = 700;\r\n }\r\n return fontWeight;\r\n};\r\n\r\nconst componentFontStyle = (textStyle?: ComponentTextStyle) => {\r\n let fontStyle = textStyle && textStyle === ComponentTextStyle.Italic ? 'italic' : '';\r\n return fontStyle;\r\n};\r\n\r\nconst componentTextTransformation = (textStyle?: ComponentTextStyle): Property.TextTransform => {\r\n let fontStyle: Property.TextTransform = textStyle && textStyle === ComponentTextStyle.UppercaseBold ? 'uppercase' : 'none';\r\n return fontStyle;\r\n};\r\n\r\nconst ComponentStyling = (fontSize: string, lineHeight: string, textStyle: ComponentTextStyle, color: string | undefined | null) => {\r\n return css`\r\n font-size: ${fontSize};\r\n font-weight: ${componentFontWeight(textStyle)};\r\n line-height: ${lineHeight};\r\n font-style: ${componentFontStyle(textStyle)};\r\n ${props => color === null ? '' : `color: ${color || COLORS.getColor('black', props.theme)};`}\r\n `;\r\n};\r\n\r\nconst ComponentXLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('24px', '28px', textStyle, color);\r\nconst ComponentXL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={28} $fontSize={24} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('20px', '24px', textStyle, color);\r\nconst ComponentL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={20} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentMStyling = (textStyle: ComponentTextStyle, color: string | undefined | null) => ComponentStyling('18px', '24px', textStyle, color);\r\nconst ComponentM: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={18} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('16px', '20px', textStyle, color);\r\nconst ComponentS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={20} $fontSize={16} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('14px', '16px', textStyle, color);\r\nconst ComponentXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={14} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('12px', '16px', textStyle, color);\r\nconst ComponentXXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={12} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentResponsive: React.FunctionComponent<ComponentProps & { size?: Size; width: number }> = ({\r\n color,\r\n textStyle,\r\n children,\r\n size,\r\n width\r\n }) => {\r\n let fontsize = size;\r\n if (!size) {\r\n if (width == -1) {\r\n fontsize = Size.Medium;\r\n } else if (width < 768) {\r\n fontsize = Size.Small;\r\n } else if (width < 992) {\r\n fontsize = Size.Medium;\r\n } else {\r\n fontsize = Size.Large;\r\n }\r\n }\r\n switch (fontsize) {\r\n case Size.XXSmall:\r\n return <ComponentXXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.XSmall:\r\n return <ComponentXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Small:\r\n return <ComponentS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Medium:\r\n return <ComponentM color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Large:\r\n default:\r\n return <ComponentL color={color} textStyle={textStyle} children={children}/>;\r\n }\r\n};\r\n\r\nexport const Typography = css`\r\n html {\r\n font-size: 100%;\r\n }\r\n\r\n @media (min-width: 48rem) {\r\n html {\r\n font-size: 112.5%;\r\n }\r\n }\r\n\r\n @media (min-width: 80rem) {\r\n html {\r\n font-size: 125%;\r\n }\r\n }\r\n\r\n h1, h2, h3, h4, h5, h6 {\r\n font-weight: 700;\r\n line-height: 120%;\r\n margin: 0;\r\n }\r\n\r\n h1 {\r\n font-size: 3rem;\r\n }\r\n\r\n h2 {\r\n font-size: 2.5rem;\r\n }\r\n\r\n h3 {\r\n font-size: 2rem;\r\n }\r\n\r\n h4 {\r\n font-size: 1.75rem;\r\n }\r\n\r\n h5 {\r\n font-size: 1.5rem;\r\n }\r\n\r\n h6 {\r\n font-size: 1.25rem;\r\n }\r\n\r\n p {\r\n font-size: 1rem;\r\n line-height: 150%;\r\n margin: 0 0 0.5rem;\r\n }\r\n\r\n p:last-of-type {\r\n margin-bottom: 0;\r\n }\r\n\r\n\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 34rem;\r\n }\r\n\r\n :lang(ja-jp) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(ko-kr) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(zh-CN) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n`;\r\n\r\nexport const QuoteTypography = css`\r\n font-size: 1.5rem;\r\n line-height: 150%;\r\n margin-bottom: 0.75rem;\r\n`;\r\n\r\nexport const NoteTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n margin-bottom: 0.375rem;\r\n`;\r\n\r\nexport const UpperCaseTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n`;\r\n\r\nexport const Note = styled.p`\r\n ${NoteTypography}\r\n`;\r\n\r\nexport const Quote = styled.p`\r\n ${QuoteTypography}\r\n`;\r\n\r\nexport const UpperCase = styled.p`\r\n ${UpperCaseTypography}\r\n`;\r\n\r\nexport {\r\n ComponentTextStyle,\r\n ComponentXL,\r\n ComponentL,\r\n ComponentM,\r\n ComponentS,\r\n ComponentXS,\r\n ComponentXXS,\r\n ComponentResponsive\r\n};\r\nexport {\r\n ComponentXLStyling,\r\n ComponentLStyling,\r\n ComponentMStyling,\r\n ComponentSStyling,\r\n ComponentXSStyling,\r\n ComponentXXSStyling\r\n};\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"typography.cjs","names":["_react","_interopRequireDefault","require","_styledComponents","_interopRequireWildcard","_","_types","_jsxRuntime","_templateObject","_templateObject2","_templateObject3","_templateObject4","_templateObject5","_templateObject6","_templateObject7","_templateObject8","_templateObject9","_getRequireWildcardCache","e","WeakMap","r","t","__esModule","_typeof","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","hasOwnProperty","call","i","set","TypographyBase","styled","div","_taggedTemplateLiteral2","props","$fontSize","$fontWeight","$lineHeight","_props$$textTransform","$textTransform","_props$$textDecoratio","$textDecorationLine","_props$$fontStyle","$fontStyle","_props$$color","$color","COLORS","getColor","theme","exports","ComponentTextStyle","componentFontWeight","textStyle","fontWeight","Bold","UppercaseBold","componentFontStyle","fontStyle","Italic","componentTextTransformation","ComponentStyling","fontSize","lineHeight","color","css","concat","ComponentXLStyling","ComponentXL","_ref","children","className","jsx","propTypes","_propTypes","string","oneOf","node","ComponentLStyling","ComponentL","_ref2","ComponentMStyling","ComponentM","_ref3","ComponentSStyling","ComponentS","_ref4","ComponentXSStyling","ComponentXS","_ref5","textTransform","ComponentXXSStyling","ComponentXXS","_ref6","ComponentResponsive","_ref7","size","width","fontsize","Size","Medium","Small","Large","XXSmall","XSmall","Typography","QuoteTypography","NoteTypography","UpperCaseTypography","Note","p","Quote","UpperCase"],"sources":["../../src/styles/typography.tsx"],"sourcesContent":["import React from 'react';\r\nimport styled, {css} from 'styled-components';\r\nimport {COLORS} from '.';\r\nimport {Property} from 'csstype';\r\nimport {Size} from '../types';\r\n\r\nexport const TypographyBase = styled.div<{$color?: string,\r\n $lineHeight: number,\r\n $fontSize: number,\r\n $fontWeight: number,\r\n $fontStyle?: string,\r\n $textTransform?: Property.TextTransform,\r\n $textDecorationLine?: Property.TextDecorationLine,\r\n}>`\r\n font-size: ${props => props.$fontSize}px;\r\n font-weight: ${props => props.$fontWeight};\r\n line-height: ${props => props.$lineHeight}px;\r\n text-transform: ${props => props.$textTransform ?? 'none' };\r\n text-decoration-line: ${props => props.$textDecorationLine ?? 'none'};\r\n font-style: ${props => props.$fontStyle ?? 'normal'};\r\n color: ${props => props.$color ?? COLORS.getColor('black', props.theme)};\r\n`;\r\n\r\nenum ComponentTextStyle {\r\n Regular = 1,\r\n Bold,\r\n Italic,\r\n UppercaseBold,\r\n}\r\n\r\ntype ComponentProps = {\r\n color?: string;\r\n className?: string;\r\n textStyle?: ComponentTextStyle;\r\n children?: React.ReactNode;\r\n};\r\n\r\nconst componentFontWeight = (textStyle?: ComponentTextStyle) => {\r\n let fontWeight = 400;\r\n if (textStyle === ComponentTextStyle.Bold || textStyle === ComponentTextStyle.UppercaseBold) {\r\n fontWeight = 700;\r\n }\r\n return fontWeight;\r\n};\r\n\r\nconst componentFontStyle = (textStyle?: ComponentTextStyle) => {\r\n let fontStyle = textStyle && textStyle === ComponentTextStyle.Italic ? 'italic' : '';\r\n return fontStyle;\r\n};\r\n\r\nconst componentTextTransformation = (textStyle?: ComponentTextStyle): Property.TextTransform => {\r\n let fontStyle: Property.TextTransform = textStyle && textStyle === ComponentTextStyle.UppercaseBold ? 'uppercase' : 'none';\r\n return fontStyle;\r\n};\r\n\r\nconst ComponentStyling = (fontSize: string, lineHeight: string, textStyle: ComponentTextStyle, color: string | undefined | null) => {\r\n return css`\r\n font-size: ${fontSize};\r\n font-weight: ${componentFontWeight(textStyle)};\r\n line-height: ${lineHeight};\r\n font-style: ${componentFontStyle(textStyle)};\r\n ${props => color === null ? '' : `color: ${color || COLORS.getColor('black', props.theme)};`}\r\n `;\r\n};\r\n\r\nconst ComponentXLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('24px', '28px', textStyle, color);\r\nconst ComponentXL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={28} $fontSize={24} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('20px', '24px', textStyle, color);\r\nconst ComponentL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={20} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentMStyling = (textStyle: ComponentTextStyle, color: string | undefined | null) => ComponentStyling('18px', '24px', textStyle, color);\r\nconst ComponentM: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={18} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('16px', '20px', textStyle, color);\r\nconst ComponentS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={20} $fontSize={16} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('14px', '16px', textStyle, color);\r\nconst ComponentXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={14} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('12px', '16px', textStyle, color);\r\nconst ComponentXXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={12} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentResponsive: React.FunctionComponent<ComponentProps & { size?: Size; width: number }> = ({\r\n color,\r\n textStyle,\r\n children,\r\n size,\r\n width\r\n }) => {\r\n let fontsize = size;\r\n if (!size) {\r\n if (width == -1) {\r\n fontsize = Size.Medium;\r\n } else if (width < 768) {\r\n fontsize = Size.Small;\r\n } else if (width < 992) {\r\n fontsize = Size.Medium;\r\n } else {\r\n fontsize = Size.Large;\r\n }\r\n }\r\n switch (fontsize) {\r\n case Size.XXSmall:\r\n return <ComponentXXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.XSmall:\r\n return <ComponentXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Small:\r\n return <ComponentS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Medium:\r\n return <ComponentM color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Large:\r\n default:\r\n return <ComponentL color={color} textStyle={textStyle} children={children}/>;\r\n }\r\n};\r\n\r\nexport const Typography = css`\r\n html {\r\n font-size: 100%;\r\n }\r\n\r\n @media (min-width: 48rem) {\r\n html {\r\n font-size: 112.5%;\r\n }\r\n }\r\n\r\n @media (min-width: 80rem) {\r\n html {\r\n font-size: 125%;\r\n }\r\n }\r\n\r\n h1, h2, h3, h4, h5, h6 {\r\n font-weight: 700;\r\n line-height: 120%;\r\n margin: 0;\r\n }\r\n\r\n h1 {\r\n font-size: 3rem;\r\n }\r\n\r\n h2 {\r\n font-size: 2.5rem;\r\n }\r\n\r\n h3 {\r\n font-size: 2rem;\r\n }\r\n\r\n h4 {\r\n font-size: 1.75rem;\r\n }\r\n\r\n h5 {\r\n font-size: 1.5rem;\r\n }\r\n\r\n h6 {\r\n font-size: 1.25rem;\r\n }\r\n\r\n p {\r\n font-size: 1rem;\r\n line-height: 150%;\r\n margin: 0 0 0.5rem;\r\n }\r\n\r\n p:last-of-type {\r\n margin-bottom: 0;\r\n }\r\n\r\n\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 34rem;\r\n }\r\n\r\n :lang(ja-jp) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(ko-kr) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(zh-CN) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n`;\r\n\r\nexport const QuoteTypography = css`\r\n font-size: 1.5rem;\r\n line-height: 150%;\r\n margin-bottom: 0.75rem;\r\n`;\r\n\r\nexport const NoteTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n margin-bottom: 0.375rem;\r\n`;\r\n\r\nexport const UpperCaseTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n`;\r\n\r\nexport const Note = styled.p`\r\n ${NoteTypography}\r\n`;\r\n\r\nexport const Quote = styled.p`\r\n ${QuoteTypography}\r\n`;\r\n\r\nexport const UpperCase = styled.p`\r\n ${UpperCaseTypography}\r\n`;\r\n\r\nexport {\r\n ComponentTextStyle,\r\n ComponentXL,\r\n ComponentL,\r\n ComponentM,\r\n ComponentS,\r\n ComponentXS,\r\n ComponentXXS,\r\n ComponentResponsive\r\n};\r\nexport {\r\n ComponentXLStyling,\r\n ComponentLStyling,\r\n ComponentMStyling,\r\n ComponentSStyling,\r\n ComponentXSStyling,\r\n ComponentXXSStyling\r\n};\r\n"],"mappings":"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","ignoreList":[]}
@@ -6,7 +6,7 @@ import styled, { css } from 'styled-components';
6
6
  import { COLORS } from '.';
7
7
  import { Size } from '../types';
8
8
  import { jsx as _jsx } from "react/jsx-runtime";
9
- export var TypographyBase = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n fontSize: ", ";\n fontWeight: ", ";\n lineHeight: ", "px;\n textTransform: ", ";\n textDecorationLine: ", ";\n fontStyle: ", ";\n color: ", ";\n"])), function (props) {
9
+ export var TypographyBase = styled.div(_templateObject || (_templateObject = _taggedTemplateLiteral(["\n font-size: ", "px;\n font-weight: ", ";\n line-height: ", "px;\n text-transform: ", ";\n text-decoration-line: ", ";\n font-style: ", ";\n color: ", ";\n"])), function (props) {
10
10
  return props.$fontSize;
11
11
  }, function (props) {
12
12
  return props.$fontWeight;
@@ -1 +1 @@
1
- {"version":3,"file":"typography.js","names":["React","styled","css","COLORS","Size","jsx","_jsx","TypographyBase","div","_templateObject","_taggedTemplateLiteral","props","$fontSize","$fontWeight","$lineHeight","_props$$textTransform","$textTransform","_props$$textDecoratio","$textDecorationLine","_props$$fontStyle","$fontStyle","_props$$color","$color","getColor","theme","ComponentTextStyle","componentFontWeight","textStyle","fontWeight","Bold","UppercaseBold","componentFontStyle","fontStyle","Italic","componentTextTransformation","ComponentStyling","fontSize","lineHeight","color","_templateObject2","concat","ComponentXLStyling","ComponentXL","_ref","children","className","propTypes","_pt","string","oneOf","node","ComponentLStyling","ComponentL","_ref2","ComponentMStyling","ComponentM","_ref3","ComponentSStyling","ComponentS","_ref4","ComponentXSStyling","ComponentXS","_ref5","textTransform","ComponentXXSStyling","ComponentXXS","_ref6","ComponentResponsive","_ref7","size","width","fontsize","Medium","Small","Large","XXSmall","XSmall","Typography","_templateObject3","QuoteTypography","_templateObject4","NoteTypography","_templateObject5","UpperCaseTypography","_templateObject6","Note","p","_templateObject7","Quote","_templateObject8","UpperCase","_templateObject9"],"sources":["../../src/styles/typography.tsx"],"sourcesContent":["import React from 'react';\r\nimport styled, {css} from 'styled-components';\r\nimport {COLORS} from '.';\r\nimport {Property} from 'csstype';\r\nimport {Size} from '../types';\r\n\r\nexport const TypographyBase = styled.div<{$color?: string,\r\n $lineHeight: number,\r\n $fontSize: number,\r\n $fontWeight: number,\r\n $fontStyle?: string,\r\n $textTransform?: Property.TextTransform,\r\n $textDecorationLine?: Property.TextDecorationLine,\r\n}>`\r\n fontSize: ${props => props.$fontSize};\r\n fontWeight: ${props => props.$fontWeight};\r\n lineHeight: ${props => props.$lineHeight}px;\r\n textTransform: ${props => props.$textTransform ?? 'none' };\r\n textDecorationLine: ${props => props.$textDecorationLine ?? 'none'};\r\n fontStyle: ${props => props.$fontStyle ?? 'normal'};\r\n color: ${props => props.$color ?? COLORS.getColor('black', props.theme)};\r\n`;\r\n\r\nenum ComponentTextStyle {\r\n Regular = 1,\r\n Bold,\r\n Italic,\r\n UppercaseBold,\r\n}\r\n\r\ntype ComponentProps = {\r\n color?: string;\r\n className?: string;\r\n textStyle?: ComponentTextStyle;\r\n children?: React.ReactNode;\r\n};\r\n\r\nconst componentFontWeight = (textStyle?: ComponentTextStyle) => {\r\n let fontWeight = 400;\r\n if (textStyle === ComponentTextStyle.Bold || textStyle === ComponentTextStyle.UppercaseBold) {\r\n fontWeight = 700;\r\n }\r\n return fontWeight;\r\n};\r\n\r\nconst componentFontStyle = (textStyle?: ComponentTextStyle) => {\r\n let fontStyle = textStyle && textStyle === ComponentTextStyle.Italic ? 'italic' : '';\r\n return fontStyle;\r\n};\r\n\r\nconst componentTextTransformation = (textStyle?: ComponentTextStyle): Property.TextTransform => {\r\n let fontStyle: Property.TextTransform = textStyle && textStyle === ComponentTextStyle.UppercaseBold ? 'uppercase' : 'none';\r\n return fontStyle;\r\n};\r\n\r\nconst ComponentStyling = (fontSize: string, lineHeight: string, textStyle: ComponentTextStyle, color: string | undefined | null) => {\r\n return css`\r\n font-size: ${fontSize};\r\n font-weight: ${componentFontWeight(textStyle)};\r\n line-height: ${lineHeight};\r\n font-style: ${componentFontStyle(textStyle)};\r\n ${props => color === null ? '' : `color: ${color || COLORS.getColor('black', props.theme)};`}\r\n `;\r\n};\r\n\r\nconst ComponentXLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('24px', '28px', textStyle, color);\r\nconst ComponentXL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={28} $fontSize={24} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('20px', '24px', textStyle, color);\r\nconst ComponentL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={20} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentMStyling = (textStyle: ComponentTextStyle, color: string | undefined | null) => ComponentStyling('18px', '24px', textStyle, color);\r\nconst ComponentM: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={18} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('16px', '20px', textStyle, color);\r\nconst ComponentS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={20} $fontSize={16} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('14px', '16px', textStyle, color);\r\nconst ComponentXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={14} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('12px', '16px', textStyle, color);\r\nconst ComponentXXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={12} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentResponsive: React.FunctionComponent<ComponentProps & { size?: Size; width: number }> = ({\r\n color,\r\n textStyle,\r\n children,\r\n size,\r\n width\r\n }) => {\r\n let fontsize = size;\r\n if (!size) {\r\n if (width == -1) {\r\n fontsize = Size.Medium;\r\n } else if (width < 768) {\r\n fontsize = Size.Small;\r\n } else if (width < 992) {\r\n fontsize = Size.Medium;\r\n } else {\r\n fontsize = Size.Large;\r\n }\r\n }\r\n switch (fontsize) {\r\n case Size.XXSmall:\r\n return <ComponentXXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.XSmall:\r\n return <ComponentXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Small:\r\n return <ComponentS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Medium:\r\n return <ComponentM color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Large:\r\n default:\r\n return <ComponentL color={color} textStyle={textStyle} children={children}/>;\r\n }\r\n};\r\n\r\nexport const Typography = css`\r\n html {\r\n font-size: 100%;\r\n }\r\n\r\n @media (min-width: 48rem) {\r\n html {\r\n font-size: 112.5%;\r\n }\r\n }\r\n\r\n @media (min-width: 80rem) {\r\n html {\r\n font-size: 125%;\r\n }\r\n }\r\n\r\n h1, h2, h3, h4, h5, h6 {\r\n font-weight: 700;\r\n line-height: 120%;\r\n margin: 0;\r\n }\r\n\r\n h1 {\r\n font-size: 3rem;\r\n }\r\n\r\n h2 {\r\n font-size: 2.5rem;\r\n }\r\n\r\n h3 {\r\n font-size: 2rem;\r\n }\r\n\r\n h4 {\r\n font-size: 1.75rem;\r\n }\r\n\r\n h5 {\r\n font-size: 1.5rem;\r\n }\r\n\r\n h6 {\r\n font-size: 1.25rem;\r\n }\r\n\r\n p {\r\n font-size: 1rem;\r\n line-height: 150%;\r\n margin: 0 0 0.5rem;\r\n }\r\n\r\n p:last-of-type {\r\n margin-bottom: 0;\r\n }\r\n\r\n\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 34rem;\r\n }\r\n\r\n :lang(ja-jp) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(ko-kr) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(zh-CN) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n`;\r\n\r\nexport const QuoteTypography = css`\r\n font-size: 1.5rem;\r\n line-height: 150%;\r\n margin-bottom: 0.75rem;\r\n`;\r\n\r\nexport const NoteTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n margin-bottom: 0.375rem;\r\n`;\r\n\r\nexport const UpperCaseTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n`;\r\n\r\nexport const Note = styled.p`\r\n ${NoteTypography}\r\n`;\r\n\r\nexport const Quote = styled.p`\r\n ${QuoteTypography}\r\n`;\r\n\r\nexport const UpperCase = styled.p`\r\n ${UpperCaseTypography}\r\n`;\r\n\r\nexport {\r\n ComponentTextStyle,\r\n ComponentXL,\r\n ComponentL,\r\n ComponentM,\r\n ComponentS,\r\n ComponentXS,\r\n ComponentXXS,\r\n ComponentResponsive\r\n};\r\nexport {\r\n ComponentXLStyling,\r\n ComponentLStyling,\r\n ComponentMStyling,\r\n ComponentSStyling,\r\n ComponentXSStyling,\r\n ComponentXXSStyling\r\n};\r\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"file":"typography.js","names":["React","styled","css","COLORS","Size","jsx","_jsx","TypographyBase","div","_templateObject","_taggedTemplateLiteral","props","$fontSize","$fontWeight","$lineHeight","_props$$textTransform","$textTransform","_props$$textDecoratio","$textDecorationLine","_props$$fontStyle","$fontStyle","_props$$color","$color","getColor","theme","ComponentTextStyle","componentFontWeight","textStyle","fontWeight","Bold","UppercaseBold","componentFontStyle","fontStyle","Italic","componentTextTransformation","ComponentStyling","fontSize","lineHeight","color","_templateObject2","concat","ComponentXLStyling","ComponentXL","_ref","children","className","propTypes","_pt","string","oneOf","node","ComponentLStyling","ComponentL","_ref2","ComponentMStyling","ComponentM","_ref3","ComponentSStyling","ComponentS","_ref4","ComponentXSStyling","ComponentXS","_ref5","textTransform","ComponentXXSStyling","ComponentXXS","_ref6","ComponentResponsive","_ref7","size","width","fontsize","Medium","Small","Large","XXSmall","XSmall","Typography","_templateObject3","QuoteTypography","_templateObject4","NoteTypography","_templateObject5","UpperCaseTypography","_templateObject6","Note","p","_templateObject7","Quote","_templateObject8","UpperCase","_templateObject9"],"sources":["../../src/styles/typography.tsx"],"sourcesContent":["import React from 'react';\r\nimport styled, {css} from 'styled-components';\r\nimport {COLORS} from '.';\r\nimport {Property} from 'csstype';\r\nimport {Size} from '../types';\r\n\r\nexport const TypographyBase = styled.div<{$color?: string,\r\n $lineHeight: number,\r\n $fontSize: number,\r\n $fontWeight: number,\r\n $fontStyle?: string,\r\n $textTransform?: Property.TextTransform,\r\n $textDecorationLine?: Property.TextDecorationLine,\r\n}>`\r\n font-size: ${props => props.$fontSize}px;\r\n font-weight: ${props => props.$fontWeight};\r\n line-height: ${props => props.$lineHeight}px;\r\n text-transform: ${props => props.$textTransform ?? 'none' };\r\n text-decoration-line: ${props => props.$textDecorationLine ?? 'none'};\r\n font-style: ${props => props.$fontStyle ?? 'normal'};\r\n color: ${props => props.$color ?? COLORS.getColor('black', props.theme)};\r\n`;\r\n\r\nenum ComponentTextStyle {\r\n Regular = 1,\r\n Bold,\r\n Italic,\r\n UppercaseBold,\r\n}\r\n\r\ntype ComponentProps = {\r\n color?: string;\r\n className?: string;\r\n textStyle?: ComponentTextStyle;\r\n children?: React.ReactNode;\r\n};\r\n\r\nconst componentFontWeight = (textStyle?: ComponentTextStyle) => {\r\n let fontWeight = 400;\r\n if (textStyle === ComponentTextStyle.Bold || textStyle === ComponentTextStyle.UppercaseBold) {\r\n fontWeight = 700;\r\n }\r\n return fontWeight;\r\n};\r\n\r\nconst componentFontStyle = (textStyle?: ComponentTextStyle) => {\r\n let fontStyle = textStyle && textStyle === ComponentTextStyle.Italic ? 'italic' : '';\r\n return fontStyle;\r\n};\r\n\r\nconst componentTextTransformation = (textStyle?: ComponentTextStyle): Property.TextTransform => {\r\n let fontStyle: Property.TextTransform = textStyle && textStyle === ComponentTextStyle.UppercaseBold ? 'uppercase' : 'none';\r\n return fontStyle;\r\n};\r\n\r\nconst ComponentStyling = (fontSize: string, lineHeight: string, textStyle: ComponentTextStyle, color: string | undefined | null) => {\r\n return css`\r\n font-size: ${fontSize};\r\n font-weight: ${componentFontWeight(textStyle)};\r\n line-height: ${lineHeight};\r\n font-style: ${componentFontStyle(textStyle)};\r\n ${props => color === null ? '' : `color: ${color || COLORS.getColor('black', props.theme)};`}\r\n `;\r\n};\r\n\r\nconst ComponentXLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('24px', '28px', textStyle, color);\r\nconst ComponentXL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={28} $fontSize={24} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentLStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('20px', '24px', textStyle, color);\r\nconst ComponentL: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={20} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentMStyling = (textStyle: ComponentTextStyle, color: string | undefined | null) => ComponentStyling('18px', '24px', textStyle, color);\r\nconst ComponentM: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={24} $fontSize={18} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('16px', '20px', textStyle, color);\r\nconst ComponentS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={20} $fontSize={16} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('14px', '16px', textStyle, color);\r\nconst ComponentXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={14} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentXXSStyling = (textStyle: ComponentTextStyle, color: string | null) => ComponentStyling('12px', '16px', textStyle, color);\r\nconst ComponentXXS: React.FunctionComponent<ComponentProps> = ({color, textStyle, children, className}) => {\r\n let fontWeight = componentFontWeight(textStyle);\r\n let fontStyle = componentFontStyle(textStyle);\r\n let textTransform = componentTextTransformation(textStyle);\r\n return (\r\n <TypographyBase className={className} $color={color} $lineHeight={16} $fontSize={12} $fontWeight={fontWeight}\r\n $fontStyle={fontStyle} $textTransform={textTransform}>\r\n {children}\r\n </TypographyBase>\r\n );\r\n};\r\n\r\nconst ComponentResponsive: React.FunctionComponent<ComponentProps & { size?: Size; width: number }> = ({\r\n color,\r\n textStyle,\r\n children,\r\n size,\r\n width\r\n }) => {\r\n let fontsize = size;\r\n if (!size) {\r\n if (width == -1) {\r\n fontsize = Size.Medium;\r\n } else if (width < 768) {\r\n fontsize = Size.Small;\r\n } else if (width < 992) {\r\n fontsize = Size.Medium;\r\n } else {\r\n fontsize = Size.Large;\r\n }\r\n }\r\n switch (fontsize) {\r\n case Size.XXSmall:\r\n return <ComponentXXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.XSmall:\r\n return <ComponentXS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Small:\r\n return <ComponentS color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Medium:\r\n return <ComponentM color={color} textStyle={textStyle} children={children}/>;\r\n case Size.Large:\r\n default:\r\n return <ComponentL color={color} textStyle={textStyle} children={children}/>;\r\n }\r\n};\r\n\r\nexport const Typography = css`\r\n html {\r\n font-size: 100%;\r\n }\r\n\r\n @media (min-width: 48rem) {\r\n html {\r\n font-size: 112.5%;\r\n }\r\n }\r\n\r\n @media (min-width: 80rem) {\r\n html {\r\n font-size: 125%;\r\n }\r\n }\r\n\r\n h1, h2, h3, h4, h5, h6 {\r\n font-weight: 700;\r\n line-height: 120%;\r\n margin: 0;\r\n }\r\n\r\n h1 {\r\n font-size: 3rem;\r\n }\r\n\r\n h2 {\r\n font-size: 2.5rem;\r\n }\r\n\r\n h3 {\r\n font-size: 2rem;\r\n }\r\n\r\n h4 {\r\n font-size: 1.75rem;\r\n }\r\n\r\n h5 {\r\n font-size: 1.5rem;\r\n }\r\n\r\n h6 {\r\n font-size: 1.25rem;\r\n }\r\n\r\n p {\r\n font-size: 1rem;\r\n line-height: 150%;\r\n margin: 0 0 0.5rem;\r\n }\r\n\r\n p:last-of-type {\r\n margin-bottom: 0;\r\n }\r\n\r\n\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 34rem;\r\n }\r\n\r\n :lang(ja-jp) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(ko-kr) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n\r\n :lang(zh-CN) {\r\n h1, h2, h3, h4, h5, h6, p, span {\r\n max-width: 30rem;\r\n }\r\n }\r\n`;\r\n\r\nexport const QuoteTypography = css`\r\n font-size: 1.5rem;\r\n line-height: 150%;\r\n margin-bottom: 0.75rem;\r\n`;\r\n\r\nexport const NoteTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n margin-bottom: 0.375rem;\r\n`;\r\n\r\nexport const UpperCaseTypography = css`\r\n font-size: 0.75rem;\r\n line-height: 150%;\r\n font-weight: 700;\r\n text-transform: uppercase;\r\n`;\r\n\r\nexport const Note = styled.p`\r\n ${NoteTypography}\r\n`;\r\n\r\nexport const Quote = styled.p`\r\n ${QuoteTypography}\r\n`;\r\n\r\nexport const UpperCase = styled.p`\r\n ${UpperCaseTypography}\r\n`;\r\n\r\nexport {\r\n ComponentTextStyle,\r\n ComponentXL,\r\n ComponentL,\r\n ComponentM,\r\n ComponentS,\r\n ComponentXS,\r\n ComponentXXS,\r\n ComponentResponsive\r\n};\r\nexport {\r\n ComponentXLStyling,\r\n ComponentLStyling,\r\n ComponentMStyling,\r\n ComponentSStyling,\r\n ComponentXSStyling,\r\n ComponentXXSStyling\r\n};\r\n"],"mappings":"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","ignoreList":[]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@laerdal/life-react-components",
3
- "version": "5.0.3",
3
+ "version": "5.0.5-dev.1",
4
4
  "private": false,
5
5
  "author": "Erik Martirosyan <erik.martirosyan@laerdal.com>",
6
6
  "contributors": [],