@bikdotai/bik-component-library 0.0.876-beta.0 → 0.0.876-beta.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.
- package/dist/cjs/components/WhatsAppTextEditor/AIRephraseButton.js +2 -2
- package/dist/cjs/components/WhatsAppTextEditor/AIRephraseButton.js.map +1 -1
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditor.js +4 -4
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditor.js.map +1 -1
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.js +2 -2
- package/dist/cjs/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.js.map +1 -1
- package/dist/cjs/components/accordion/Accordion.style.js +1 -1
- package/dist/cjs/components/accordion/Accordion.style.js.map +1 -1
- package/dist/cjs/components/action-button/ActionButton.styled.js +1 -1
- package/dist/cjs/components/action-button/ActionButton.styled.js.map +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/CommonStyles.js +1 -1
- package/dist/cjs/components/analytics-chips-and-dropdowns/CommonStyles.js.map +1 -1
- package/dist/cjs/components/bik-layout/SidebarStyles.js +1 -1
- package/dist/cjs/components/bik-layout/SidebarStyles.js.map +1 -1
- package/dist/cjs/components/button/Button.styled.js +3 -3
- package/dist/cjs/components/button/Button.styled.js.map +1 -1
- package/dist/cjs/components/buttonGroup/ButtonGroupStyle.js +1 -1
- package/dist/cjs/components/buttonGroup/ButtonGroupStyle.js.map +1 -1
- package/dist/cjs/components/card-selector/CardSelector.styled.js +1 -1
- package/dist/cjs/components/card-selector/CardSelector.styled.js.map +1 -1
- package/dist/cjs/components/carousel-preview/CarouselPreview.style.js +2 -2
- package/dist/cjs/components/carousel-preview/CarouselPreview.style.js.map +1 -1
- package/dist/cjs/components/checkBox/CheckBox.styled.js +1 -1
- package/dist/cjs/components/checkBox/CheckBox.styled.js.map +1 -1
- package/dist/cjs/components/dropdown/MenuItem/MenuItem.js +1 -1
- package/dist/cjs/components/dropdown/MenuItem/MenuItem.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/OpennedDropdown.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +10 -27
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuItem.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/MenuList.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js.map +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/utils/iterationOnOptions.js +1 -1
- package/dist/cjs/components/dropdown/OpenedDropdown/utils/iterationOnOptions.js.map +1 -1
- package/dist/cjs/components/dropdown/hooks/useDropdown.js +1 -1
- package/dist/cjs/components/dropdown/hooks/useDropdown.js.map +1 -1
- package/dist/cjs/components/dual-icon-button/DualIconButton.styled.js +2 -2
- package/dist/cjs/components/dual-icon-button/DualIconButton.styled.js.map +1 -1
- package/dist/cjs/components/floating-action-button/FloatingActionButton.styles.js +1 -1
- package/dist/cjs/components/floating-action-button/FloatingActionButton.styles.js.map +1 -1
- package/dist/cjs/components/icon-button/IconButton.styled.js +4 -4
- package/dist/cjs/components/icon-button/IconButton.styled.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.js.map +1 -1
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.styled.js +11 -14
- package/dist/cjs/components/multi-level-dropdown/MultiLevelDropdown.styled.js.map +1 -1
- package/dist/cjs/components/plans/SubscriptionPlanSelector.js +1 -1
- package/dist/cjs/components/plans/SubscriptionPlanSelector.js.map +1 -1
- package/dist/cjs/components/product-picker-v2/style.js +2 -2
- package/dist/cjs/components/product-picker-v2/style.js.map +1 -1
- package/dist/cjs/components/switch/Switch.js +2 -2
- package/dist/cjs/components/switch/Switch.js.map +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSPreview.styled.js +1 -1
- package/dist/cjs/components/template-preview/RCS/RCSPreview.styled.js.map +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatUI.style.js +1 -1
- package/dist/cjs/components/template-preview/WhatsApp/ChatUI.style.js.map +1 -1
- package/dist/esm/components/WhatsAppTextEditor/AIRephraseButton.js +2 -2
- package/dist/esm/components/WhatsAppTextEditor/AIRephraseButton.js.map +1 -1
- package/dist/esm/components/WhatsAppTextEditor/WhatsAppTextEditor.js +4 -4
- package/dist/esm/components/WhatsAppTextEditor/WhatsAppTextEditor.js.map +1 -1
- package/dist/esm/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.js +2 -2
- package/dist/esm/components/WhatsAppTextEditor/WhatsAppTextEditorHeader.js.map +1 -1
- package/dist/esm/components/accordion/Accordion.style.js +1 -1
- package/dist/esm/components/accordion/Accordion.style.js.map +1 -1
- package/dist/esm/components/action-button/ActionButton.styled.js +1 -1
- package/dist/esm/components/action-button/ActionButton.styled.js.map +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/CommonStyles.js +1 -1
- package/dist/esm/components/analytics-chips-and-dropdowns/CommonStyles.js.map +1 -1
- package/dist/esm/components/bik-layout/SidebarStyles.js +1 -1
- package/dist/esm/components/bik-layout/SidebarStyles.js.map +1 -1
- package/dist/esm/components/button/Button.styled.js +3 -3
- package/dist/esm/components/button/Button.styled.js.map +1 -1
- package/dist/esm/components/buttonGroup/ButtonGroupStyle.js +1 -1
- package/dist/esm/components/buttonGroup/ButtonGroupStyle.js.map +1 -1
- package/dist/esm/components/card-selector/CardSelector.styled.js +1 -1
- package/dist/esm/components/card-selector/CardSelector.styled.js.map +1 -1
- package/dist/esm/components/carousel-preview/CarouselPreview.style.js +2 -2
- package/dist/esm/components/carousel-preview/CarouselPreview.style.js.map +1 -1
- package/dist/esm/components/checkBox/CheckBox.styled.js +1 -1
- package/dist/esm/components/checkBox/CheckBox.styled.js.map +1 -1
- package/dist/esm/components/dropdown/MenuItem/MenuItem.js +1 -1
- package/dist/esm/components/dropdown/MenuItem/MenuItem.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.js +278 -300
- package/dist/esm/components/dropdown/OpenedDropdown/components/OpennedDropdown.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.d.ts +0 -8
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.js +126 -170
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuItem.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.d.ts +0 -4
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.js +112 -144
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/MenuList.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.d.ts +0 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js +31 -32
- package/dist/esm/components/dropdown/OpenedDropdown/components/menu/SelectAllMenu.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.d.ts +0 -2
- package/dist/esm/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js +39 -54
- package/dist/esm/components/dropdown/OpenedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js.map +1 -1
- package/dist/esm/components/dropdown/OpenedDropdown/utils/iterationOnOptions.d.ts +16 -18
- package/dist/esm/components/dropdown/OpenedDropdown/utils/iterationOnOptions.js +27 -73
- package/dist/esm/components/dropdown/OpenedDropdown/utils/iterationOnOptions.js.map +1 -1
- package/dist/esm/components/dropdown/hooks/useDropdown.d.ts +17 -4
- package/dist/esm/components/dropdown/hooks/useDropdown.js +163 -176
- package/dist/esm/components/dropdown/hooks/useDropdown.js.map +1 -1
- package/dist/esm/components/dropdown/type.d.ts +0 -22
- package/dist/esm/components/dual-icon-button/DualIconButton.styled.js +2 -2
- package/dist/esm/components/dual-icon-button/DualIconButton.styled.js.map +1 -1
- package/dist/esm/components/floating-action-button/FloatingActionButton.styles.js +1 -1
- package/dist/esm/components/floating-action-button/FloatingActionButton.styles.js.map +1 -1
- package/dist/esm/components/icon-button/IconButton.styled.js +4 -4
- package/dist/esm/components/icon-button/IconButton.styled.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.js +44 -46
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.d.ts +0 -3
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.js +25 -29
- package/dist/esm/components/multi-level-dropdown/MultiLevelDropdown.styled.js.map +1 -1
- package/dist/esm/components/multi-level-dropdown/type.d.ts +0 -5
- package/dist/esm/components/plans/SubscriptionPlanSelector.js +1 -1
- package/dist/esm/components/plans/SubscriptionPlanSelector.js.map +1 -1
- package/dist/esm/components/product-picker-v2/style.js +2 -2
- package/dist/esm/components/product-picker-v2/style.js.map +1 -1
- package/dist/esm/components/switch/Switch.js +2 -2
- package/dist/esm/components/switch/Switch.js.map +1 -1
- package/dist/esm/components/template-preview/RCS/RCSPreview.styled.js +1 -1
- package/dist/esm/components/template-preview/RCS/RCSPreview.styled.js.map +1 -1
- package/dist/esm/components/template-preview/WhatsApp/ChatUI.style.js +1 -1
- package/dist/esm/components/template-preview/WhatsApp/ChatUI.style.js.map +1 -1
- package/package.json +1 -1
|
@@ -65,28 +65,6 @@ export interface OpenDropdownProps {
|
|
|
65
65
|
checkboxActiveColor?: string;
|
|
66
66
|
/** Renders rows with the brand selected theme (brandLight bg + primary text), square corners and flush spacing */
|
|
67
67
|
brandSelectedRow?: boolean;
|
|
68
|
-
/**
|
|
69
|
-
* How options that declare `children` are laid out.
|
|
70
|
-
*
|
|
71
|
-
* - `'flyout'` (default) — the parent row shows a chevron and its children
|
|
72
|
-
* open in a submenu to the right on hover. The parent is not selectable.
|
|
73
|
-
* - `'nested'` — children render inline, indented under the parent and joined
|
|
74
|
-
* by an elbow connector. With `isMultiSelect` the parent carries a
|
|
75
|
-
* tri-state checkbox that selects or clears all of its children.
|
|
76
|
-
*/
|
|
77
|
-
childrenLayout?: 'flyout' | 'nested';
|
|
78
|
-
/**
|
|
79
|
-
* With `childrenLayout='nested'`, gives every parent row a chevron that
|
|
80
|
-
* collapses and expands its children. Groups start expanded.
|
|
81
|
-
*/
|
|
82
|
-
collapsibleChildren?: boolean;
|
|
83
|
-
/**
|
|
84
|
-
* With `collapsibleChildren`, renders every group collapsed to begin with, so
|
|
85
|
-
* the list opens as its group names alone.
|
|
86
|
-
*/
|
|
87
|
-
defaultCollapsed?: boolean;
|
|
88
|
-
/** Hides the "N selected" text in the multiselect bottom bar. */
|
|
89
|
-
hideSelectedCount?: boolean;
|
|
90
68
|
}
|
|
91
69
|
export type GroupedOption = {
|
|
92
70
|
label?: string;
|
|
@@ -19,10 +19,10 @@ const t = n.div`
|
|
|
19
19
|
background: transparent;
|
|
20
20
|
|
|
21
21
|
${(e) => e.disabled ? "" : `
|
|
22
|
-
|
|
22
|
+
&:hover {
|
|
23
23
|
background-color: ${i.background.inverse};
|
|
24
24
|
}
|
|
25
|
-
|
|
25
|
+
&:active {
|
|
26
26
|
box-shadow: inset 0px 4px 12px rgba(0, 0, 0, 0.35);
|
|
27
27
|
}
|
|
28
28
|
`}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DualIconButton.styled.js","sources":["../../../../src/components/dual-icon-button/DualIconButton.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const Container = styled.div<{ disabled?: boolean }>`\n\tdisplay: inline-flex;\n\talign-items: center;\n\tborder-radius: 4px;\n\toverflow: hidden;\n\tbackground: ${(props) =>\n\t\tprops.disabled\n\t\t\t? COLORS.background.inactive\n\t\t\t: COLORS.background.inverseLight};\n`;\n\nexport const IconHalf = styled.button<{ disabled?: boolean }>`\n\tall: unset;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tpadding: 4px;\n\tbox-sizing: border-box;\n\tcursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n\tbackground: transparent;\n\n\t${(props) =>\n\t\t!props.disabled\n\t\t\t? `\n\t\t
|
|
1
|
+
{"version":3,"file":"DualIconButton.styled.js","sources":["../../../../src/components/dual-icon-button/DualIconButton.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const Container = styled.div<{ disabled?: boolean }>`\n\tdisplay: inline-flex;\n\talign-items: center;\n\tborder-radius: 4px;\n\toverflow: hidden;\n\tbackground: ${(props) =>\n\t\tprops.disabled\n\t\t\t? COLORS.background.inactive\n\t\t\t: COLORS.background.inverseLight};\n`;\n\nexport const IconHalf = styled.button<{ disabled?: boolean }>`\n\tall: unset;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\twidth: 24px;\n\theight: 24px;\n\tpadding: 4px;\n\tbox-sizing: border-box;\n\tcursor: ${(props) => (props.disabled ? 'not-allowed' : 'pointer')};\n\tbackground: transparent;\n\n\t${(props) =>\n\t\t!props.disabled\n\t\t\t? `\n\t\t&:hover {\n\t\t\tbackground-color: ${COLORS.background.inverse};\n\t\t}\n\t\t&:active {\n\t\t\tbox-shadow: inset 0px 4px 12px rgba(0, 0, 0, 0.35);\n\t\t}\n\t`\n\t\t\t: ''}\n`;\n\nexport const Divider = styled.div`\n\twidth: 1px;\n\theight: 12px;\n\tbackground: rgba(255, 255, 255, 0.3);\n\tflex-shrink: 0;\n`;\n"],"names":["Container","styled","props","COLORS","IconHalf","Divider"],"mappings":";;AAGO,MAAMA,IAAYC,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA,eAKjB,CAACC,MACdA,EAAM,WACHC,EAAO,WAAW,WAClBA,EAAO,WAAW,YAAY;AAAA,GAGtBC,IAAWH,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WASpB,CAACC,MAAWA,EAAM,WAAW,gBAAgB,SAAU;AAAA;AAAA;AAAA,GAG/D,CAACA,MACDA,EAAM,WASJ,KARA;AAAA;AAAA,uBAEkBC,EAAO,WAAW,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,EAMzC;AAAA,GAGME,IAAUJ,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FloatingActionButton.styles.js","sources":["../../../../src/components/floating-action-button/FloatingActionButton.styles.ts"],"sourcesContent":["import { Dropdown } from 'react-bootstrap';\nimport styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport enum FAB_POSITION {\n\tTOP_LEFT = 'top left',\n\tTOP_RIGHT = 'top right',\n\tBOTTOM_LEFT = 'bottom left',\n\tBOTTOM_RIGHT = 'botton right',\n}\n\nexport enum DROP_POSITION {\n\tUP = 'up',\n\tUP_CENTERED = 'up-centered',\n\tSTART = 'start',\n\tEND = 'end',\n\tDOWN = 'down',\n\tDOWN_CENTERED = 'down-centered',\n}\n\nexport enum MENU_ALIGNMENT {\n\tSTART = 'start',\n\tEND = 'end',\n}\n\nexport const FloatingActionButtonContainer = styled.div<{\n\twidth: number;\n\theight: number;\n\tcolor: string;\n\tisRound?: boolean;\n}>`\n\twidth: ${(props) => props.width}px;\n\theight: ${(props) => props.height}px;\n\tbackground: ${(props) => props.color};\n\t${(props) =>\n\t\tprops.isRound\n\t\t\t? 'border-radius: 50%;'\n\t\t\t: 'border-bottom-left-radius: 50%; border-bottom-right-radius: 50%; border-top-left-radius:50%;'}\n\tjustify-content: center;\n\talign-items: center;\n\tcursor: pointer;\n\tdisplay: flex;\n`;\nexport const FloatingActionButtonOuterContainer = styled.div<{\n\twidth: number;\n\theight: number;\n\tcolor: string;\n\tposition: FAB_POSITION;\n\tbuttonPaddingHorizontal: number;\n\tbuttonPaddingVertical: number;\n\tzIndex: number;\n}>`\n\tdisplay: flex;\n\tborder-radius: 50%;\n\tflex-direction: column;\n\talign-items: flex-end;\n\tposition: fixed;\n\twidth: ${(props) => props.width}px;\n\theight: ${(props) => props.height}px;\n\tz-index: ${(props) => props.zIndex};\n\t${(props) =>\n\t\tprops.position === FAB_POSITION.BOTTOM_RIGHT\n\t\t\t? `right: ${props.buttonPaddingHorizontal}px; bottom: ${props.buttonPaddingVertical}px`\n\t\t\t: props.position === FAB_POSITION.BOTTOM_LEFT\n\t\t\t? `left: ${props.buttonPaddingHorizontal}px; bottom: ${props.buttonPaddingVertical}px`\n\t\t\t: props.position === FAB_POSITION.TOP_LEFT\n\t\t\t? `left: ${props.buttonPaddingHorizontal}px; top: ${props.buttonPaddingVertical}px`\n\t\t\t: props.position === FAB_POSITION.TOP_RIGHT\n\t\t\t? `right: ${props.buttonPaddingHorizontal}px; top: ${props.buttonPaddingVertical}px`\n\t\t\t: ``};\n`;\n\nexport const StyledDropdown = styled(Dropdown)<{\n\tactive?: string;\n\twidth?: string;\n\theight?: string;\n}>`\n\t.filter-container {\n\t\t.single-row {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tjustify-content: flex-start;\n\t\t\tgap: 8px;\n\t\t\tpadding: 14px;\n\t\t\tborder-bottom: 1px solid ${COLORS.stroke.primary};\n\n\t\t\t
|
|
1
|
+
{"version":3,"file":"FloatingActionButton.styles.js","sources":["../../../../src/components/floating-action-button/FloatingActionButton.styles.ts"],"sourcesContent":["import { Dropdown } from 'react-bootstrap';\nimport styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport enum FAB_POSITION {\n\tTOP_LEFT = 'top left',\n\tTOP_RIGHT = 'top right',\n\tBOTTOM_LEFT = 'bottom left',\n\tBOTTOM_RIGHT = 'botton right',\n}\n\nexport enum DROP_POSITION {\n\tUP = 'up',\n\tUP_CENTERED = 'up-centered',\n\tSTART = 'start',\n\tEND = 'end',\n\tDOWN = 'down',\n\tDOWN_CENTERED = 'down-centered',\n}\n\nexport enum MENU_ALIGNMENT {\n\tSTART = 'start',\n\tEND = 'end',\n}\n\nexport const FloatingActionButtonContainer = styled.div<{\n\twidth: number;\n\theight: number;\n\tcolor: string;\n\tisRound?: boolean;\n}>`\n\twidth: ${(props) => props.width}px;\n\theight: ${(props) => props.height}px;\n\tbackground: ${(props) => props.color};\n\t${(props) =>\n\t\tprops.isRound\n\t\t\t? 'border-radius: 50%;'\n\t\t\t: 'border-bottom-left-radius: 50%; border-bottom-right-radius: 50%; border-top-left-radius:50%;'}\n\tjustify-content: center;\n\talign-items: center;\n\tcursor: pointer;\n\tdisplay: flex;\n`;\nexport const FloatingActionButtonOuterContainer = styled.div<{\n\twidth: number;\n\theight: number;\n\tcolor: string;\n\tposition: FAB_POSITION;\n\tbuttonPaddingHorizontal: number;\n\tbuttonPaddingVertical: number;\n\tzIndex: number;\n}>`\n\tdisplay: flex;\n\tborder-radius: 50%;\n\tflex-direction: column;\n\talign-items: flex-end;\n\tposition: fixed;\n\twidth: ${(props) => props.width}px;\n\theight: ${(props) => props.height}px;\n\tz-index: ${(props) => props.zIndex};\n\t${(props) =>\n\t\tprops.position === FAB_POSITION.BOTTOM_RIGHT\n\t\t\t? `right: ${props.buttonPaddingHorizontal}px; bottom: ${props.buttonPaddingVertical}px`\n\t\t\t: props.position === FAB_POSITION.BOTTOM_LEFT\n\t\t\t? `left: ${props.buttonPaddingHorizontal}px; bottom: ${props.buttonPaddingVertical}px`\n\t\t\t: props.position === FAB_POSITION.TOP_LEFT\n\t\t\t? `left: ${props.buttonPaddingHorizontal}px; top: ${props.buttonPaddingVertical}px`\n\t\t\t: props.position === FAB_POSITION.TOP_RIGHT\n\t\t\t? `right: ${props.buttonPaddingHorizontal}px; top: ${props.buttonPaddingVertical}px`\n\t\t\t: ``};\n`;\n\nexport const StyledDropdown = styled(Dropdown)<{\n\tactive?: string;\n\twidth?: string;\n\theight?: string;\n}>`\n\t.filter-container {\n\t\t.single-row {\n\t\t\tdisplay: flex;\n\t\t\tflex-direction: row;\n\t\t\talign-items: center;\n\t\t\tjustify-content: flex-start;\n\t\t\tgap: 8px;\n\t\t\tpadding: 14px;\n\t\t\tborder-bottom: 1px solid ${COLORS.stroke.primary};\n\n\t\t\t&:last-child {\n\t\t\t\tborder-bottom: none !important;\n\t\t\t}\n\t\t}\n\t}\n\tbutton:not(.date-picker-save-button-container button) {\n\t\tborder: 1px solid\n\t\t\t${(props) =>\n\t\t\t\tprops.active === 'true'\n\t\t\t\t\t? COLORS.stroke.positive.lightAlt\n\t\t\t\t\t: COLORS.stroke.primary};\n\t\tborder-radius: 4px;\n\t\tdisplay: flex;\n\t\tflex-direction: row;\n\t\talign-items: center;\n\t\tjustify-content: space-between;\n\t\tpadding: 6px 0px;\n\t\tbackground: ${(props) =>\n\t\t\tprops.active === 'true'\n\t\t\t\t? COLORS.background.positive.light\n\t\t\t\t: COLORS.surface.standard};\n\t\tcolor: ${(props) =>\n\t\t\tprops.active === 'true'\n\t\t\t\t? COLORS.content.positive\n\t\t\t\t: COLORS.content.primary};\n\t}\n\n\t.btn-primary:hover,\n\t.btn-primary:active,\n\t.btn-primary:focus,\n\t.btn-primary.dropdown-toggle,\n\t.show > .btn-primary.dropdown-toggle {\n\t\tcolor: ${(props) =>\n\t\t\tprops.active === 'true'\n\t\t\t\t? COLORS.content.positive\n\t\t\t\t: COLORS.content.primary};\n\t\tbackground-color: ${(props) =>\n\t\t\tprops.active === 'true'\n\t\t\t\t? COLORS.background.positive.light\n\t\t\t\t: 'transparent'};\n\t\tborder: none;\n\t}\n\t.btn:focus {\n\t\toutline: 0;\n\t\tbox-shadow: 0 0 0 0.25rem transparent !important;\n\t}\n\n\t.dropdown-toggle::after {\n\t\tborder-top: 0.3em solid ${COLORS.content.primary};\n\t\tdisplay: none !important;\n\t}\n\n\t.dropdown-toggle::before {\n\t\tborder-top: 0.3em solid ${COLORS.content.primary};\n\t\tdisplay: none !important;\n\t}\n\t.dropdown-menu {\n\t\tmin-width: 12rem;\n\t\tpadding: 0 0;\n\t}\n\t.dropdown-item:active,\n\t.dropdown-item:hover {\n\t\tcolor: ${COLORS.content.positive};\n\t\ttext-decoration: none;\n\t\tbackground-color: ${COLORS.background.positive.light};\n\t}\n`;\n\nexport const DropdownToggleContainer = styled(Dropdown.Toggle)`\n\tborder-radius: 4px;\n\tdisplay: flex;\n\tflex-direction: row;\n\talign-items: center;\n\tjustify-content: space-between;\n\tpadding: 6px 8px;\n\tfont-weight: 400;\n\tfont-size: 14px;\n\tline-height: 20px;\n`;\n\nexport const TooltipStyled = styled.div<{ tooltipWidth?: number }>`\n\tbox-shadow: 0px 2px 8px rgba(0, 0, 0, 0.12);\n\tborder-radius: 4px;\n\tpadding: 8px;\n\tbackground-color: ${COLORS.content.primary};\n\tcolor: ${COLORS.content.primaryInverse};\n\twidth: ${(props) =>\n\t\tprops.tooltipWidth ? props.tooltipWidth + 'px' : '120px'};\n`;\n"],"names":["FAB_POSITION","DROP_POSITION","MENU_ALIGNMENT","FloatingActionButtonContainer","styled","props","FloatingActionButtonOuterContainer","StyledDropdown","Dropdown","COLORS","DropdownToggleContainer","TooltipStyled"],"mappings":";;;AAIO,IAAKA,sBAAAA,OACXA,EAAA,WAAW,YACXA,EAAA,YAAY,aACZA,EAAA,cAAc,eACdA,EAAA,eAAe,gBAJJA,IAAAA,KAAA,CAAA,CAAA,GAOAC,sBAAAA,OACXA,EAAA,KAAK,MACLA,EAAA,cAAc,eACdA,EAAA,QAAQ,SACRA,EAAA,MAAM,OACNA,EAAA,OAAO,QACPA,EAAA,gBAAgB,iBANLA,IAAAA,KAAA,CAAA,CAAA,GASAC,sBAAAA,OACXA,EAAA,QAAQ,SACRA,EAAA,MAAM,OAFKA,IAAAA,KAAA,CAAA,CAAA;AAKL,MAAMC,IAAgCC,EAAO;AAAA,UAM1C,CAACC,MAAUA,EAAM,KAAK;AAAA,WACrB,CAACA,MAAUA,EAAM,MAAM;AAAA,eACnB,CAACA,MAAUA,EAAM,KAAK;AAAA,GAClC,CAACA,MACFA,EAAM,UACH,wBACA,8FAA8F;AAAA;AAAA;AAAA;AAAA;AAAA,GAMtFC,IAAqCF,EAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,UAc/C,CAACC,MAAUA,EAAM,KAAK;AAAA,WACrB,CAACA,MAAUA,EAAM,MAAM;AAAA,YACtB,CAACA,MAAUA,EAAM,MAAM;AAAA,GAChC,CAACA,MACFA,EAAM,aAAa,iBAChB,UAAUA,EAAM,uBAAuB,eAAeA,EAAM,qBAAqB,OACjFA,EAAM,aAAa,gBACnB,SAASA,EAAM,uBAAuB,eAAeA,EAAM,qBAAqB,OAChFA,EAAM,aAAa,aACnB,SAASA,EAAM,uBAAuB,YAAYA,EAAM,qBAAqB,OAC7EA,EAAM,aAAa,cACnB,UAAUA,EAAM,uBAAuB,YAAYA,EAAM,qBAAqB,OAC9E,EAAE;AAAA,GAGME,IAAiBH,EAAOI,CAAQ;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,8BAafC,EAAO,OAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,KAS9C,CAACJ,MACFA,EAAM,WAAW,SACdI,EAAO,OAAO,SAAS,WACvBA,EAAO,OAAO,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,gBAOZ,CAACJ,MACdA,EAAM,WAAW,SACdI,EAAO,WAAW,SAAS,QAC3BA,EAAO,QAAQ,QAAQ;AAAA,WAClB,CAACJ,MACTA,EAAM,WAAW,SACdI,EAAO,QAAQ,WACfA,EAAO,QAAQ,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WAQjB,CAACJ,MACTA,EAAM,WAAW,SACdI,EAAO,QAAQ,WACfA,EAAO,QAAQ,OAAO;AAAA,sBACN,CAACJ,MACpBA,EAAM,WAAW,SACdI,EAAO,WAAW,SAAS,QAC3B,aAAa;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,4BASSA,EAAO,QAAQ,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA,4BAKtBA,EAAO,QAAQ,OAAO;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,WASvCA,EAAO,QAAQ,QAAQ;AAAA;AAAA,sBAEZA,EAAO,WAAW,SAAS,KAAK;AAAA;AAAA,GAIzCC,IAA0BN,EAAOI,EAAS,MAAM;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA,GAYhDG,IAAgBP,EAAO;AAAA;AAAA;AAAA;AAAA,qBAIfK,EAAO,QAAQ,OAAO;AAAA,UACjCA,EAAO,QAAQ,cAAc;AAAA,UAC7B,CAACJ,MACTA,EAAM,eAAeA,EAAM,eAAe,OAAO,OAAO;AAAA;"}
|
|
@@ -11,17 +11,17 @@ const c = a.button`
|
|
|
11
11
|
${o.bordered && o.iconButtonType !== "ai" && o.iconButtonType !== "primary" ? `border: 1px solid ${r.stroke.primary};` : ""}
|
|
12
12
|
${o.iconButtonType === "primary" ? `
|
|
13
13
|
background: ${n("primary")};
|
|
14
|
-
${o.isSelected ? "" :
|
|
15
|
-
|
|
14
|
+
${o.isSelected ? "" : `&:hover { background-color: ${r.background.inverse}; }`}
|
|
15
|
+
&:active { box-shadow: inset 0px 4px 12px rgba(0, 0, 0, 0.35); }
|
|
16
16
|
` : o.isSelected ? `background: ${n(o.iconButtonType)};` : `
|
|
17
|
-
|
|
17
|
+
&:hover {
|
|
18
18
|
background-color: rgba(0, 0, 0, 0.03);
|
|
19
19
|
}
|
|
20
20
|
`}
|
|
21
21
|
${o.disabled ? o.iconButtonType === "primary" ? `
|
|
22
22
|
cursor: not-allowed !important;
|
|
23
23
|
background-color: ${r.background.inactive};
|
|
24
|
-
|
|
24
|
+
&:hover { background-color: ${r.background.inactive}; }
|
|
25
25
|
` : `
|
|
26
26
|
cursor: not-allowed !important;
|
|
27
27
|
background-color: rgba(0, 0, 0, 0.03);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.styled.js","sources":["../../../../src/components/icon-button/IconButton.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\nimport { IconButtonSize, IconButtonType } from './model';\nimport { generateBackgroundColor } from './theme';\n\nexport const IconButton = styled.button<{\n\tbordered?: boolean;\n\ticonButtonType: IconButtonType;\n\tisSelected?: boolean;\n\ticonPadding?: number;\n\tsize?: IconButtonSize;\n}>`\n\t${(props) => `\n\tall: unset;\n\tcursor: pointer;\n\tpadding: ${\n\t\tprops.iconPadding !== undefined\n\t\t\t? props.iconPadding\n\t\t\t: props.size === 'xs'\n\t\t\t? 4\n\t\t\t: 6\n\t}px;\n\tborder-radius: 4px;\n\tflex-wrap: wrap;\n\t${\n\t\tprops.bordered &&\n\t\tprops.iconButtonType !== 'ai' &&\n\t\tprops.iconButtonType !== 'primary'\n\t\t\t? `border: 1px solid ${COLORS.stroke.primary};`\n\t\t\t: ''\n\t}\n\t${\n\t\tprops.iconButtonType === 'primary'\n\t\t\t? `\n\t\t\t\tbackground: ${generateBackgroundColor('primary')};\n\t\t\t\t${\n\t\t\t\t\t!props.isSelected\n\t\t\t\t\t\t?
|
|
1
|
+
{"version":3,"file":"IconButton.styled.js","sources":["../../../../src/components/icon-button/IconButton.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\nimport { IconButtonSize, IconButtonType } from './model';\nimport { generateBackgroundColor } from './theme';\n\nexport const IconButton = styled.button<{\n\tbordered?: boolean;\n\ticonButtonType: IconButtonType;\n\tisSelected?: boolean;\n\ticonPadding?: number;\n\tsize?: IconButtonSize;\n}>`\n\t${(props) => `\n\tall: unset;\n\tcursor: pointer;\n\tpadding: ${\n\t\tprops.iconPadding !== undefined\n\t\t\t? props.iconPadding\n\t\t\t: props.size === 'xs'\n\t\t\t? 4\n\t\t\t: 6\n\t}px;\n\tborder-radius: 4px;\n\tflex-wrap: wrap;\n\t${\n\t\tprops.bordered &&\n\t\tprops.iconButtonType !== 'ai' &&\n\t\tprops.iconButtonType !== 'primary'\n\t\t\t? `border: 1px solid ${COLORS.stroke.primary};`\n\t\t\t: ''\n\t}\n\t${\n\t\tprops.iconButtonType === 'primary'\n\t\t\t? `\n\t\t\t\tbackground: ${generateBackgroundColor('primary')};\n\t\t\t\t${\n\t\t\t\t\t!props.isSelected\n\t\t\t\t\t\t? `&:hover { background-color: ${COLORS.background.inverse}; }`\n\t\t\t\t\t\t: ''\n\t\t\t\t}\n\t\t\t\t&:active { box-shadow: inset 0px 4px 12px rgba(0, 0, 0, 0.35); }\n\t\t\t`\n\t\t\t: props.isSelected\n\t\t\t? `background: ${generateBackgroundColor(props.iconButtonType)};`\n\t\t\t: `\n\t\t\t\t&:hover {\n\t\t\t\t\tbackground-color: rgba(0, 0, 0, 0.03);\n\t\t\t\t}\n\t\t\t`\n\t}\n\t${\n\t\tprops.disabled\n\t\t\t? props.iconButtonType === 'primary'\n\t\t\t\t? `\n\t\t\t\t\tcursor: not-allowed !important;\n\t\t\t\t\tbackground-color: ${COLORS.background.inactive};\n\t\t\t\t\t&:hover { background-color: ${COLORS.background.inactive}; }\n\t\t\t\t`\n\t\t\t\t: `\n\t\t\t\t\tcursor: not-allowed !important;\n\t\t\t\t\tbackground-color: rgba(0, 0, 0, 0.03);\n\t\t\t\t`\n\t\t\t: ''\n\t}\n\n\t`}\n`;\n"],"names":["IconButton","styled","props","COLORS","generateBackgroundColor"],"mappings":";;;AAKO,MAAMA,IAAaC,EAAO;AAAA,GAO9B,CAACC,MAAU;AAAA;AAAA;AAAA,YAIZA,EAAM,gBAAgB,SACnBA,EAAM,cACNA,EAAM,SAAS,OACf,IACA,CACJ;AAAA;AAAA;AAAA,GAICA,EAAM,YACNA,EAAM,mBAAmB,QACzBA,EAAM,mBAAmB,YACtB,qBAAqBC,EAAO,OAAO,OAAO,MAC1C,EACJ;AAAA,GAECD,EAAM,mBAAmB,YACtB;AAAA,kBACaE,EAAwB,SAAS,CAAC;AAAA,MAE9CF,EAAM,aAEJ,KADA,+BAA+BC,EAAO,WAAW,OAAO,KAE5D;AAAA;AAAA,OAGCD,EAAM,aACN,eAAeE,EAAwBF,EAAM,cAAc,CAAC,MAC5D;AAAA;AAAA;AAAA;AAAA,IAKJ;AAAA,GAECA,EAAM,WACHA,EAAM,mBAAmB,YACxB;AAAA;AAAA,yBAEmBC,EAAO,WAAW,QAAQ;AAAA,mCAChBA,EAAO,WAAW,QAAQ;AAAA,QAEvD;AAAA;AAAA;AAAA,QAID,EACJ;AAAA;AAAA,EAEC;AAAA;"}
|
|
@@ -1,35 +1,34 @@
|
|
|
1
1
|
import { jsx as t, jsxs as j } from "react/jsx-runtime";
|
|
2
2
|
import v, { useState as z, useEffect as p } from "react";
|
|
3
3
|
import { ZeroState as A } from "../zeroState/ZeroState.js";
|
|
4
|
-
import { COLORS as
|
|
5
|
-
import { SearchBox as
|
|
6
|
-
import { MenuList as
|
|
7
|
-
import { DropdownContainer as
|
|
8
|
-
import { Floater as
|
|
9
|
-
const
|
|
4
|
+
import { COLORS as S } from "../../constants/Theme.js";
|
|
5
|
+
import { SearchBox as F } from "../dropdown/OpenedDropdown/components/searchbox/SearchBox.js";
|
|
6
|
+
import { MenuList as M } from "./MenuList.js";
|
|
7
|
+
import { DropdownContainer as _, OptionsContainer as q, NoResultsContainer as B } from "./MultiLevelDropdown.styled.js";
|
|
8
|
+
import { Floater as H } from "../floater/floater.js";
|
|
9
|
+
const U = ({
|
|
10
10
|
options: l,
|
|
11
11
|
width: i,
|
|
12
|
-
isSearchable:
|
|
13
|
-
onDropdownItemClick:
|
|
12
|
+
isSearchable: L,
|
|
13
|
+
onDropdownItemClick: b,
|
|
14
14
|
refElement: w,
|
|
15
|
-
topOffset:
|
|
16
|
-
leftOffset:
|
|
17
|
-
isDropdownOpen:
|
|
15
|
+
topOffset: C,
|
|
16
|
+
leftOffset: R,
|
|
17
|
+
isDropdownOpen: u,
|
|
18
18
|
onDropdownOutsideClick: o,
|
|
19
|
-
allowParentSelection:
|
|
19
|
+
allowParentSelection: E,
|
|
20
20
|
maxLevels: N,
|
|
21
21
|
hideGroupLabel: O,
|
|
22
|
-
version: n = "1.0"
|
|
23
|
-
footer: m
|
|
22
|
+
version: n = "1.0"
|
|
24
23
|
}) => {
|
|
25
|
-
const
|
|
26
|
-
const c = Array.isArray(l) ? [...l] : [],
|
|
24
|
+
const d = v.useRef(null), [f, m] = z(l), x = (a) => {
|
|
25
|
+
const c = Array.isArray(l) ? [...l] : [], y = [];
|
|
27
26
|
for (; c.length > 0; ) {
|
|
28
27
|
const e = c.shift();
|
|
29
|
-
e && e.label.toLowerCase().includes(
|
|
28
|
+
e && e.label.toLowerCase().includes(a.toLowerCase()) && y.push(e), e && "children" in e && e.children ? c.push(...e.children) : e && "options" in e && e.options && c.push(...e.options);
|
|
30
29
|
}
|
|
31
30
|
const h = (e) => e.map((r) => {
|
|
32
|
-
if (
|
|
31
|
+
if (y.includes(r))
|
|
33
32
|
return r;
|
|
34
33
|
if ("children" in r && r.children) {
|
|
35
34
|
const s = h(
|
|
@@ -47,36 +46,36 @@ const W = ({
|
|
|
47
46
|
}
|
|
48
47
|
return null;
|
|
49
48
|
}).filter((r) => r !== null);
|
|
50
|
-
|
|
51
|
-
},
|
|
52
|
-
|
|
49
|
+
m(h(l));
|
|
50
|
+
}, g = (a) => {
|
|
51
|
+
d.current && !d.current.contains(a.target) ? o && o(!0) : o && o(!1);
|
|
53
52
|
};
|
|
54
53
|
return p(() => {
|
|
55
|
-
|
|
56
|
-
}, [
|
|
57
|
-
document.removeEventListener("mousedown",
|
|
54
|
+
u && x("");
|
|
55
|
+
}, [u]), p(() => (document.addEventListener("mousedown", g), () => {
|
|
56
|
+
document.removeEventListener("mousedown", g);
|
|
58
57
|
}), []), p(() => {
|
|
59
|
-
|
|
58
|
+
m(l);
|
|
60
59
|
}, [l]), /* @__PURE__ */ t(
|
|
61
|
-
|
|
60
|
+
H,
|
|
62
61
|
{
|
|
63
62
|
refElement: w,
|
|
64
|
-
topOffset:
|
|
65
|
-
leftOffset:
|
|
66
|
-
children:
|
|
63
|
+
topOffset: C,
|
|
64
|
+
leftOffset: R,
|
|
65
|
+
children: u && /* @__PURE__ */ t(
|
|
67
66
|
"div",
|
|
68
67
|
{
|
|
69
|
-
ref:
|
|
68
|
+
ref: d,
|
|
70
69
|
style: {
|
|
71
|
-
backgroundColor:
|
|
70
|
+
backgroundColor: S.surface.standard,
|
|
72
71
|
zIndex: 99999,
|
|
73
72
|
borderRadius: n === "3.0" ? "4px" : "8px",
|
|
74
73
|
overflow: "hidden",
|
|
75
74
|
boxShadow: "0 2px 8px 0 rgba(0, 0, 0, 0.12)",
|
|
76
75
|
whiteSpace: "normal"
|
|
77
76
|
},
|
|
78
|
-
children: /* @__PURE__ */ j(
|
|
79
|
-
|
|
77
|
+
children: /* @__PURE__ */ j(_, { width: i, version: n, children: [
|
|
78
|
+
L && /* @__PURE__ */ t(
|
|
80
79
|
"div",
|
|
81
80
|
{
|
|
82
81
|
style: {
|
|
@@ -84,30 +83,30 @@ const W = ({
|
|
|
84
83
|
width: i ?? "200px"
|
|
85
84
|
},
|
|
86
85
|
children: /* @__PURE__ */ t(
|
|
87
|
-
|
|
86
|
+
F,
|
|
88
87
|
{
|
|
89
|
-
onSearch:
|
|
88
|
+
onSearch: x,
|
|
90
89
|
version: n === "3.0" ? "3.0" : "2.0"
|
|
91
90
|
}
|
|
92
91
|
)
|
|
93
92
|
}
|
|
94
93
|
),
|
|
95
|
-
/* @__PURE__ */ t(
|
|
96
|
-
|
|
94
|
+
/* @__PURE__ */ t(q, { width: i, version: n, children: (f ?? []).length > 0 && /* @__PURE__ */ t(
|
|
95
|
+
M,
|
|
97
96
|
{
|
|
98
97
|
width: i ?? "200px",
|
|
99
|
-
onDropdownItemClick:
|
|
100
|
-
options:
|
|
98
|
+
onDropdownItemClick: b,
|
|
99
|
+
options: f,
|
|
101
100
|
parents: [],
|
|
102
|
-
allowParentSelection:
|
|
101
|
+
allowParentSelection: E,
|
|
103
102
|
maxLevels: N,
|
|
104
103
|
hideGroupLabel: O,
|
|
105
104
|
currentLevel: 1,
|
|
106
105
|
version: n
|
|
107
106
|
}
|
|
108
107
|
) }),
|
|
109
|
-
(
|
|
110
|
-
|
|
108
|
+
(f ?? []).length === 0 && /* @__PURE__ */ t(
|
|
109
|
+
B,
|
|
111
110
|
{
|
|
112
111
|
style: { width: i ?? "200px" },
|
|
113
112
|
version: n,
|
|
@@ -116,7 +115,7 @@ const W = ({
|
|
|
116
115
|
{
|
|
117
116
|
style: {
|
|
118
117
|
fontSize: "12px",
|
|
119
|
-
color:
|
|
118
|
+
color: S.content.placeholder,
|
|
120
119
|
lineHeight: "16px"
|
|
121
120
|
},
|
|
122
121
|
children: "No results found!"
|
|
@@ -129,8 +128,7 @@ const W = ({
|
|
|
129
128
|
}
|
|
130
129
|
)
|
|
131
130
|
}
|
|
132
|
-
)
|
|
133
|
-
m && /* @__PURE__ */ t(I, { children: m })
|
|
131
|
+
)
|
|
134
132
|
] })
|
|
135
133
|
}
|
|
136
134
|
)
|
|
@@ -138,6 +136,6 @@ const W = ({
|
|
|
138
136
|
);
|
|
139
137
|
};
|
|
140
138
|
export {
|
|
141
|
-
|
|
139
|
+
U as MultiLevelDropdown
|
|
142
140
|
};
|
|
143
141
|
//# sourceMappingURL=MultiLevelDropdown.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiLevelDropdown.js","sources":["../../../../src/components/multi-level-dropdown/MultiLevelDropdown.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { ZeroState } from '@src/components/zeroState/ZeroState';\nimport { COLORS } from '@src/constants/Theme';\nimport { SearchBox } from '../dropdown/OpenedDropdown/components/searchbox/SearchBox';\nimport { Floater } from '../floater';\nimport { MenuList } from './MenuList';\nimport {\n\tDropdownContainer,\n\
|
|
1
|
+
{"version":3,"file":"MultiLevelDropdown.js","sources":["../../../../src/components/multi-level-dropdown/MultiLevelDropdown.tsx"],"sourcesContent":["import React, { useEffect, useState } from 'react';\nimport { ZeroState } from '@src/components/zeroState/ZeroState';\nimport { COLORS } from '@src/constants/Theme';\nimport { SearchBox } from '../dropdown/OpenedDropdown/components/searchbox/SearchBox';\nimport { Floater } from '../floater';\nimport { MenuList } from './MenuList';\nimport {\n\tDropdownContainer,\n\tNoResultsContainer,\n\tOptionsContainer,\n} from './MultiLevelDropdown.styled';\nimport { MultiLevelDropdownOption, MultiLevelDropdownProps } from './type';\n\nexport const MultiLevelDropdown: React.FC<MultiLevelDropdownProps> = ({\n\toptions,\n\twidth,\n\tisSearchable,\n\tonDropdownItemClick,\n\trefElement,\n\ttopOffset,\n\tleftOffset,\n\tisDropdownOpen,\n\tonDropdownOutsideClick,\n\tallowParentSelection,\n\tmaxLevels,\n\thideGroupLabel,\n\tversion = '1.0',\n}) => {\n\tconst dropdownRef = React.useRef<HTMLDivElement>(null);\n\tconst [filteredOptions, setFilteredOptions] =\n\t\tuseState<MultiLevelDropdownOption[]>(options);\n\n\tconst search = (searchString: string) => {\n\t\tconst queue = Array.isArray(options) ? [...options] : [];\n\t\tconst result: MultiLevelDropdownOption[] = [];\n\n\t\twhile (queue.length > 0) {\n\t\t\tconst current = queue.shift();\n\t\t\tif (\n\t\t\t\tcurrent &&\n\t\t\t\tcurrent.label.toLowerCase().includes(searchString.toLowerCase())\n\t\t\t) {\n\t\t\t\tresult.push(current);\n\t\t\t}\n\t\t\tif (current && 'children' in current && current.children) {\n\t\t\t\tqueue.push(...current.children);\n\t\t\t} else if (current && 'options' in current && current.options) {\n\t\t\t\tqueue.push(...current.options);\n\t\t\t}\n\t\t}\n\n\t\tconst filterOptions = (options: MultiLevelDropdownOption[]) => {\n\t\t\treturn options\n\t\t\t\t.map((option: MultiLevelDropdownOption) => {\n\t\t\t\t\tif (result.includes(option)) {\n\t\t\t\t\t\treturn option;\n\t\t\t\t\t}\n\t\t\t\t\tif ('children' in option && option.children) {\n\t\t\t\t\t\tconst filteredChildren = filterOptions(\n\t\t\t\t\t\t\toption.children as MultiLevelDropdownOption[],\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (filteredChildren.length > 0) {\n\t\t\t\t\t\t\treturn { ...option, children: filteredChildren };\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\tif ('options' in option && option.options) {\n\t\t\t\t\t\tconst filteredOptions = filterOptions(\n\t\t\t\t\t\t\toption.options as MultiLevelDropdownOption[],\n\t\t\t\t\t\t);\n\t\t\t\t\t\tif (filteredOptions.length > 0) {\n\t\t\t\t\t\t\treturn { ...option, options: filteredOptions };\n\t\t\t\t\t\t}\n\t\t\t\t\t}\n\t\t\t\t\treturn null;\n\t\t\t\t})\n\t\t\t\t.filter((option) => option !== null);\n\t\t};\n\n\t\tsetFilteredOptions(filterOptions(options) as MultiLevelDropdownOption[]);\n\t};\n\n\tconst handleClickOutside = (event: MouseEvent) => {\n\t\tif (\n\t\t\tdropdownRef.current &&\n\t\t\t!dropdownRef.current.contains(event.target as Node)\n\t\t) {\n\t\t\tif (onDropdownOutsideClick) {\n\t\t\t\tonDropdownOutsideClick(true);\n\t\t\t}\n\t\t} else {\n\t\t\tif (onDropdownOutsideClick) {\n\t\t\t\tonDropdownOutsideClick(false);\n\t\t\t}\n\t\t}\n\t};\n\n\tuseEffect(() => {\n\t\tif (isDropdownOpen) {\n\t\t\tsearch('');\n\t\t}\n\t}, [isDropdownOpen]);\n\n\tuseEffect(() => {\n\t\tdocument.addEventListener('mousedown', handleClickOutside);\n\t\treturn () => {\n\t\t\tdocument.removeEventListener('mousedown', handleClickOutside);\n\t\t};\n\t}, []);\n\n\tuseEffect(() => {\n\t\tsetFilteredOptions(options);\n\t}, [options]);\n\n\treturn (\n\t\t<Floater\n\t\t\trefElement={refElement}\n\t\t\ttopOffset={topOffset}\n\t\t\tleftOffset={leftOffset}\n\t\t>\n\t\t\t{isDropdownOpen && (\n\t\t\t\t<div\n\t\t\t\t\tref={dropdownRef}\n\t\t\t\t\tstyle={{\n\t\t\t\t\t\tbackgroundColor: COLORS.surface.standard,\n\t\t\t\t\t\tzIndex: 99999,\n\t\t\t\t\t\tborderRadius: version === '3.0' ? '4px' : '8px',\n\t\t\t\t\t\toverflow: 'hidden',\n\t\t\t\t\t\tboxShadow: '0 2px 8px 0 rgba(0, 0, 0, 0.12)',\n\t\t\t\t\t\twhiteSpace: 'normal',\n\t\t\t\t\t}}\n\t\t\t\t>\n\t\t\t\t\t<DropdownContainer width={width} version={version}>\n\t\t\t\t\t\t{isSearchable && (\n\t\t\t\t\t\t\t<div\n\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\tpadding: version === '3.0' ? '0px' : '4px',\n\t\t\t\t\t\t\t\t\twidth: width ?? '200px',\n\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t<SearchBox\n\t\t\t\t\t\t\t\t\tonSearch={search}\n\t\t\t\t\t\t\t\t\tversion={version === '3.0' ? '3.0' : '2.0'}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t</div>\n\t\t\t\t\t\t)}\n\t\t\t\t\t\t<OptionsContainer width={width} version={version}>\n\t\t\t\t\t\t\t{(filteredOptions ?? []).length > 0 && (\n\t\t\t\t\t\t\t\t<MenuList\n\t\t\t\t\t\t\t\t\twidth={width ?? '200px'}\n\t\t\t\t\t\t\t\t\tonDropdownItemClick={onDropdownItemClick}\n\t\t\t\t\t\t\t\t\toptions={filteredOptions}\n\t\t\t\t\t\t\t\t\tparents={[]}\n\t\t\t\t\t\t\t\t\tallowParentSelection={allowParentSelection}\n\t\t\t\t\t\t\t\t\tmaxLevels={maxLevels}\n\t\t\t\t\t\t\t\t\thideGroupLabel={hideGroupLabel}\n\t\t\t\t\t\t\t\t\tcurrentLevel={1}\n\t\t\t\t\t\t\t\t\tversion={version}\n\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t</OptionsContainer>\n\n\t\t\t\t\t\t{(filteredOptions ?? []).length === 0 && (\n\t\t\t\t\t\t\t<NoResultsContainer\n\t\t\t\t\t\t\t\tstyle={{ width: width ?? '200px' }}\n\t\t\t\t\t\t\t\tversion={version}\n\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t{version === '3.0' ? (\n\t\t\t\t\t\t\t\t\t<span\n\t\t\t\t\t\t\t\t\t\tstyle={{\n\t\t\t\t\t\t\t\t\t\t\tfontSize: '12px',\n\t\t\t\t\t\t\t\t\t\t\tcolor: COLORS.content.placeholder,\n\t\t\t\t\t\t\t\t\t\t\tlineHeight: '16px',\n\t\t\t\t\t\t\t\t\t\t}}\n\t\t\t\t\t\t\t\t\t>\n\t\t\t\t\t\t\t\t\t\tNo results found!\n\t\t\t\t\t\t\t\t\t</span>\n\t\t\t\t\t\t\t\t) : (\n\t\t\t\t\t\t\t\t\t<ZeroState\n\t\t\t\t\t\t\t\t\t\ttitle=\"No results found!\"\n\t\t\t\t\t\t\t\t\t\tsubTitle={`Sorry, we are unable to find any results for your search.`}\n\t\t\t\t\t\t\t\t\t/>\n\t\t\t\t\t\t\t\t)}\n\t\t\t\t\t\t\t</NoResultsContainer>\n\t\t\t\t\t\t)}\n\t\t\t\t\t</DropdownContainer>\n\t\t\t\t</div>\n\t\t\t)}\n\t\t</Floater>\n\t);\n};\n"],"names":["MultiLevelDropdown","options","width","isSearchable","onDropdownItemClick","refElement","topOffset","leftOffset","isDropdownOpen","onDropdownOutsideClick","allowParentSelection","maxLevels","hideGroupLabel","version","dropdownRef","React","filteredOptions","setFilteredOptions","useState","search","searchString","queue","result","current","filterOptions","option","filteredChildren","handleClickOutside","event","useEffect","jsx","Floater","COLORS","jsxs","DropdownContainer","SearchBox","OptionsContainer","MenuList","NoResultsContainer","ZeroState"],"mappings":"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"}
|
|
@@ -11,9 +11,6 @@ export declare const OptionsContainer: import('styled-components/dist/types').IS
|
|
|
11
11
|
width?: string | undefined;
|
|
12
12
|
version?: "1.0" | "2.0" | "3.0" | undefined;
|
|
13
13
|
}>> & string;
|
|
14
|
-
export declare const FooterContainer: import('styled-components/dist/types').IStyledComponentBase<"web", Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
|
|
15
|
-
style?: import('react').CSSProperties | import('styled-components/dist/types').CSSPropertiesWithVars | undefined;
|
|
16
|
-
}> & string;
|
|
17
14
|
export declare const NoResultsContainer: import('styled-components/dist/types').IStyledComponentBase<"web", import('styled-components/dist/types').Merged<Omit<import('react').DetailedHTMLProps<import('react').HTMLAttributes<HTMLDivElement>, HTMLDivElement>, "style"> & {
|
|
18
15
|
style?: import('react').CSSProperties | import('styled-components/dist/types').CSSPropertiesWithVars | undefined;
|
|
19
16
|
}, {
|
|
@@ -15,29 +15,26 @@ const c = n.div`
|
|
|
15
15
|
width: 0px;
|
|
16
16
|
}
|
|
17
17
|
`, l = n.div`
|
|
18
|
-
border-top: 1px solid ${e.stroke.primary};
|
|
19
|
-
padding: 4px;
|
|
20
|
-
`, u = n.div`
|
|
21
18
|
margin-top: ${({ version: t }) => t === "3.0" ? 0 : 64}px;
|
|
22
19
|
height: ${({ version: t }) => t === "3.0" ? 236 : 200}px;
|
|
23
20
|
width: ${({ width: t }) => t || "200px"};
|
|
24
21
|
display: ${({ version: t }) => t === "3.0" ? "flex" : "block"};
|
|
25
22
|
align-items: center;
|
|
26
23
|
justify-content: center;
|
|
27
|
-
`,
|
|
24
|
+
`, u = n.div`
|
|
28
25
|
width: 100%;
|
|
29
26
|
justify-content: center;
|
|
30
27
|
cursor: pointer;
|
|
31
28
|
align-items: center;
|
|
32
29
|
justify-content: space-between;
|
|
33
30
|
margin: ${({ version: t }) => t === "3.0" ? "0" : "4px 0"};
|
|
34
|
-
`,
|
|
31
|
+
`, g = n.div`
|
|
35
32
|
z-index: 1000;
|
|
36
33
|
position: relative;
|
|
37
34
|
margin: 0px;
|
|
38
35
|
padding: 0px;
|
|
39
36
|
width: 100%;
|
|
40
|
-
`,
|
|
37
|
+
`, b = n.div`
|
|
41
38
|
position: relative;
|
|
42
39
|
padding: ${({ version: t }) => t === "3.0" ? "0px" : "1px 4px"};
|
|
43
40
|
cursor: pointer;
|
|
@@ -46,7 +43,7 @@ const c = n.div`
|
|
|
46
43
|
&:focus-within > .submenu {
|
|
47
44
|
display: block;
|
|
48
45
|
}
|
|
49
|
-
`,
|
|
46
|
+
`, h = n.div`
|
|
50
47
|
position: relative;
|
|
51
48
|
padding: ${({ version: t }) => t === "3.0" ? "8px" : "4px 8px"};
|
|
52
49
|
transition: background-color 0.2s;
|
|
@@ -58,8 +55,8 @@ const c = n.div`
|
|
|
58
55
|
isHovered: i,
|
|
59
56
|
isSubMenuOpen: o,
|
|
60
57
|
isDisabled: r,
|
|
61
|
-
version:
|
|
62
|
-
}) => r ? e.surface.standard : t || o ?
|
|
58
|
+
version: a
|
|
59
|
+
}) => r ? e.surface.standard : t || o ? a === "3.0" ? e.background.brandLight : e.background.positive.light : i ? e.surface.hovered : e.surface.standard};
|
|
63
60
|
color: ${({ isSelected: t, isSubMenuOpen: i, version: o }) => t || i ? o === "3.0" ? e.text.primary : e.content.positive : e.content.primary};
|
|
64
61
|
display: flex;
|
|
65
62
|
align-items: center;
|
|
@@ -68,15 +65,15 @@ const c = n.div`
|
|
|
68
65
|
&:hover {
|
|
69
66
|
background-color: ${({ isSelected: t, isDisabled: i, version: o }) => i ? e.surface.standard : t ? o === "3.0" ? e.background.brandLight : e.background.positive.light : e.surface.hovered};
|
|
70
67
|
}
|
|
71
|
-
`,
|
|
68
|
+
`, f = n.div`
|
|
72
69
|
display: flex;
|
|
73
70
|
align-items: center;
|
|
74
71
|
gap: 8px;
|
|
75
|
-
`,
|
|
72
|
+
`, p = n.div`
|
|
76
73
|
z-index: 1001;
|
|
77
74
|
position: fixed;
|
|
78
75
|
border-left: 4px solid transparent;
|
|
79
|
-
`,
|
|
76
|
+
`, m = n.div`
|
|
80
77
|
margin: 4px;
|
|
81
78
|
background-color: ${e.surface.standard};
|
|
82
79
|
box-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.12);
|
|
@@ -89,42 +86,41 @@ const c = n.div`
|
|
|
89
86
|
&::-webkit-scrollbar {
|
|
90
87
|
display: none;
|
|
91
88
|
}
|
|
92
|
-
`,
|
|
89
|
+
`, v = n.div`
|
|
93
90
|
width: 16px;
|
|
94
91
|
height: 16px;
|
|
95
92
|
display: flex;
|
|
96
93
|
align-items: center;
|
|
97
94
|
justify-content: center;
|
|
98
95
|
margin-right: 4px;
|
|
99
|
-
`,
|
|
96
|
+
`, $ = n.div`
|
|
100
97
|
width: 16px;
|
|
101
98
|
height: 16px;
|
|
102
99
|
display: flex;
|
|
103
100
|
align-items: center;
|
|
104
101
|
justify-content: center;
|
|
105
102
|
margin-left: 4px;
|
|
106
|
-
`,
|
|
103
|
+
`, w = n.div`
|
|
107
104
|
width: ${(t) => t.width};
|
|
108
|
-
`,
|
|
105
|
+
`, y = n(p)`
|
|
109
106
|
width: ${(t) => t.width};
|
|
110
107
|
top: ${(t) => t.top}px;
|
|
111
108
|
left: ${(t) => t.left}px;
|
|
112
109
|
`;
|
|
113
110
|
export {
|
|
114
|
-
|
|
111
|
+
f as ContentContainer,
|
|
115
112
|
c as DropdownContainer,
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
u as NoResultsContainer,
|
|
113
|
+
u as GroupedMenuListContainer,
|
|
114
|
+
v as LeadingIconContainer,
|
|
115
|
+
h as MenuItemContainer,
|
|
116
|
+
b as MenuItemWrapper,
|
|
117
|
+
l as NoResultsContainer,
|
|
122
118
|
x as OptionsContainer,
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
|
|
119
|
+
g as StyledMenuList,
|
|
120
|
+
y as StyledSubMenuWrapper,
|
|
121
|
+
w as SubMenuContainer,
|
|
122
|
+
m as SubMenuListContainer,
|
|
123
|
+
p as SubMenuWrapper,
|
|
124
|
+
$ as TrailingIconContainer
|
|
129
125
|
};
|
|
130
126
|
//# sourceMappingURL=MultiLevelDropdown.styled.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiLevelDropdown.styled.js","sources":["../../../../src/components/multi-level-dropdown/MultiLevelDropdown.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const DropdownContainer = styled.div<{\n\twidth?: string;\n\tversion?: '1.0' | '2.0' | '3.0';\n}>`\n\tposition: relative;\n\tborder-radius: ${({ version }) => (version === '3.0' ? 4 : 8)}px;\n\tbox-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.12);\n\tpadding-bottom: ${({ version }) => (version === '3.0' ? 0 : 4)}px;\n`;\n\nexport const OptionsContainer = styled.div<{\n\twidth?: string;\n\tversion?: '1.0' | '2.0' | '3.0';\n}>`\n\twidth: ${({ width }) => (width ? width : '200px')};\n\tmax-width: 300px;\n\tmax-height: 280px;\n\toverflow-y: scroll;\n\tpadding: ${({ version }) => (version === '3.0' ? '0' : '4px 0 0')};\n\t&::-webkit-scrollbar {\n\t\twidth: 0px;\n\t}\n`;\n\
|
|
1
|
+
{"version":3,"file":"MultiLevelDropdown.styled.js","sources":["../../../../src/components/multi-level-dropdown/MultiLevelDropdown.styled.tsx"],"sourcesContent":["import styled from 'styled-components';\nimport { COLORS } from '@src/constants/Theme';\n\nexport const DropdownContainer = styled.div<{\n\twidth?: string;\n\tversion?: '1.0' | '2.0' | '3.0';\n}>`\n\tposition: relative;\n\tborder-radius: ${({ version }) => (version === '3.0' ? 4 : 8)}px;\n\tbox-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.12);\n\tpadding-bottom: ${({ version }) => (version === '3.0' ? 0 : 4)}px;\n`;\n\nexport const OptionsContainer = styled.div<{\n\twidth?: string;\n\tversion?: '1.0' | '2.0' | '3.0';\n}>`\n\twidth: ${({ width }) => (width ? width : '200px')};\n\tmax-width: 300px;\n\tmax-height: 280px;\n\toverflow-y: scroll;\n\tpadding: ${({ version }) => (version === '3.0' ? '0' : '4px 0 0')};\n\t&::-webkit-scrollbar {\n\t\twidth: 0px;\n\t}\n`;\n\nexport const NoResultsContainer = styled.div<{\n\twidth?: string;\n\tversion?: '1.0' | '2.0' | '3.0';\n}>`\n\tmargin-top: ${({ version }) => (version === '3.0' ? 0 : 64)}px;\n\theight: ${({ version }) => (version === '3.0' ? 236 : 200)}px;\n\twidth: ${({ width }) => (width ? width : '200px')};\n\tdisplay: ${({ version }) => (version === '3.0' ? 'flex' : 'block')};\n\talign-items: center;\n\tjustify-content: center;\n`;\n\nexport const GroupedMenuListContainer = styled.div<{\n\tversion?: '1.0' | '2.0' | '3.0';\n}>`\n\twidth: 100%;\n\tjustify-content: center;\n\tcursor: pointer;\n\talign-items: center;\n\tjustify-content: space-between;\n\tmargin: ${({ version }) => (version === '3.0' ? '0' : '4px 0')};\n`;\n\nexport const StyledMenuList = styled.div`\n\tz-index: 1000;\n\tposition: relative;\n\tmargin: 0px;\n\tpadding: 0px;\n\twidth: 100%;\n`;\n\nexport const MenuItemWrapper = styled.div<{ version?: '1.0' | '2.0' | '3.0' }>`\n\tposition: relative;\n\tpadding: ${({ version }) => (version === '3.0' ? '0px' : '1px 4px')};\n\tcursor: pointer;\n\twidth: 100%;\n\t&:hover > .submenu,\n\t&:focus-within > .submenu {\n\t\tdisplay: block;\n\t}\n`;\n\nexport interface MenuItemContainerProps {\n\tisSelected?: boolean;\n\tisHovered?: boolean;\n\tisSubMenuOpen?: boolean;\n\tisDisabled?: boolean;\n\tversion?: '1.0' | '2.0' | '3.0';\n}\n\nexport const MenuItemContainer = styled.div<MenuItemContainerProps>`\n\tposition: relative;\n\tpadding: ${({ version }) => (version === '3.0' ? '8px' : '4px 8px')};\n\ttransition: background-color 0.2s;\n\twidth: 100%;\n\tborder-radius: ${({ version }) => (version === '3.0' ? 0 : 8)}px;\n\tjustify-content: center;\n\tbackground-color: ${({\n\t\tisSelected,\n\t\tisHovered,\n\t\tisSubMenuOpen,\n\t\tisDisabled,\n\t\tversion,\n\t}) =>\n\t\tisDisabled\n\t\t\t? COLORS.surface.standard\n\t\t\t: isSelected || isSubMenuOpen\n\t\t\t? version === '3.0'\n\t\t\t\t? COLORS.background.brandLight\n\t\t\t\t: COLORS.background.positive.light\n\t\t\t: isHovered\n\t\t\t? COLORS.surface.hovered\n\t\t\t: COLORS.surface.standard};\n\tcolor: ${({ isSelected, isSubMenuOpen, version }) =>\n\t\tisSelected || isSubMenuOpen\n\t\t\t? version === '3.0'\n\t\t\t\t? COLORS.text.primary\n\t\t\t\t: COLORS.content.positive\n\t\t\t: COLORS.content.primary};\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: space-between;\n\n\t&:hover {\n\t\tbackground-color: ${({ isSelected, isDisabled, version }) =>\n\t\t\tisDisabled\n\t\t\t\t? COLORS.surface.standard\n\t\t\t\t: isSelected\n\t\t\t\t? version === '3.0'\n\t\t\t\t\t? COLORS.background.brandLight\n\t\t\t\t\t: COLORS.background.positive.light\n\t\t\t\t: COLORS.surface.hovered};\n\t}\n`;\n\nexport const ContentContainer = styled.div`\n\tdisplay: flex;\n\talign-items: center;\n\tgap: 8px;\n`;\n\nexport const SubMenuWrapper = styled.div`\n\tz-index: 1001;\n\tposition: fixed;\n\tborder-left: 4px solid transparent;\n`;\n\nexport const SubMenuListContainer = styled.div<{\n\tversion?: '1.0' | '2.0' | '3.0';\n}>`\n\tmargin: 4px;\n\tbackground-color: ${COLORS.surface.standard};\n\tbox-shadow: 0px 2px 8px 0px rgba(0, 0, 0, 0.12);\n\tborder-radius: ${({ version }) => (version === '3.0' ? 4 : 8)}px;\n\tpadding-top: ${({ version }) => (version === '3.0' ? 0 : 4)}px;\n\tmax-height: 480px;\n\tpadding-bottom: ${({ version }) => (version === '3.0' ? 0 : 4)}px;\n\toverflow-y: scroll;\n\n\t&::-webkit-scrollbar {\n\t\tdisplay: none;\n\t}\n`;\n\nexport const LeadingIconContainer = styled.div`\n\twidth: 16px;\n\theight: 16px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tmargin-right: 4px;\n`;\n\nexport const TrailingIconContainer = styled.div`\n\twidth: 16px;\n\theight: 16px;\n\tdisplay: flex;\n\talign-items: center;\n\tjustify-content: center;\n\tmargin-left: 4px;\n`;\n\nexport const SubMenuContainer = styled.div<{ width: string }>`\n\twidth: ${(props) => props.width};\n`;\n\nexport const StyledSubMenuWrapper = styled(SubMenuWrapper)<{\n\twidth: string;\n\ttop: number;\n\tleft: number;\n}>`\n\twidth: ${(props) => props.width};\n\ttop: ${(props) => props.top}px;\n\tleft: ${(props) => props.left}px;\n`;\n"],"names":["DropdownContainer","styled","version","OptionsContainer","width","NoResultsContainer","GroupedMenuListContainer","StyledMenuList","MenuItemWrapper","MenuItemContainer","isSelected","isHovered","isSubMenuOpen","isDisabled","COLORS","ContentContainer","SubMenuWrapper","SubMenuListContainer","LeadingIconContainer","TrailingIconContainer","SubMenuContainer","props","StyledSubMenuWrapper"],"mappings":"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"}
|
|
@@ -9,11 +9,6 @@ export interface MultiLevelDropdownProps extends FloaterProps {
|
|
|
9
9
|
maxLevels?: number;
|
|
10
10
|
hideGroupLabel?: boolean;
|
|
11
11
|
version?: '1.0' | '2.0' | '3.0';
|
|
12
|
-
/**
|
|
13
|
-
* Pinned below the options list, outside the scroll area — for actions that
|
|
14
|
-
* must stay reachable however long the list is, e.g. "+ New label".
|
|
15
|
-
*/
|
|
16
|
-
footer?: ReactNode;
|
|
17
12
|
onDropdownOutsideClick?: (isOutsideClick: any) => void;
|
|
18
13
|
onDropdownItemClick?: (option: MultiLevelDropdownOption, parents: MultiLevelDropdownOption[]) => void;
|
|
19
14
|
}
|