@kaizen/components 1.67.7 → 1.67.9
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/ButtonGroup/ButtonGroup.cjs +1 -1
- package/dist/cjs/Filter/Filter/Filter.cjs +4 -1
- package/dist/cjs/Filter/Filter/Filter.module.css.cjs +6 -0
- package/dist/cjs/Filter/FilterBar/FilterBar.cjs +4 -2
- package/dist/cjs/Filter/FilterBar/FilterBar.module.css.cjs +8 -0
- package/dist/cjs/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.cjs +9 -3
- package/dist/cjs/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.module.css.cjs +6 -0
- package/dist/cjs/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.cjs +7 -2
- package/dist/cjs/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.module.css.cjs +6 -0
- package/dist/cjs/Filter/FilterButton/FilterButton/FilterButton.cjs +1 -1
- package/dist/cjs/Filter/FilterButton/FilterButton/FilterButton.module.css.cjs +9 -0
- package/dist/cjs/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.cjs +5 -1
- package/dist/cjs/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.module.css.cjs +6 -0
- package/dist/cjs/Filter/FilterMultiSelect/FilterMultiSelect.cjs +5 -2
- package/dist/cjs/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.cjs +4 -1
- package/dist/cjs/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.module.css.cjs +6 -0
- package/dist/esm/ButtonGroup/ButtonGroup.mjs +1 -1
- package/dist/esm/Filter/Filter/Filter.mjs +3 -1
- package/dist/esm/Filter/Filter/Filter.module.css.mjs +4 -0
- package/dist/esm/Filter/FilterBar/FilterBar.mjs +4 -2
- package/dist/esm/Filter/FilterBar/FilterBar.module.css.mjs +6 -0
- package/dist/esm/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.mjs +8 -3
- package/dist/esm/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.module.css.mjs +4 -0
- package/dist/esm/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.mjs +7 -2
- package/dist/esm/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.module.css.mjs +4 -0
- package/dist/esm/Filter/FilterButton/FilterButton/FilterButton.mjs +1 -1
- package/dist/esm/Filter/FilterButton/FilterButton/FilterButton.module.css.mjs +7 -0
- package/dist/esm/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.mjs +4 -1
- package/dist/esm/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.module.css.mjs +4 -0
- package/dist/esm/Filter/FilterMultiSelect/FilterMultiSelect.mjs +5 -2
- package/dist/esm/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.mjs +3 -1
- package/dist/esm/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.module.css.mjs +4 -0
- package/dist/styles.css +112 -78
- package/dist/types/Filter/FilterMultiSelect/FilterMultiSelect.d.ts +2 -1
- package/package.json +3 -2
- package/src/ButtonGroup/ButtonGroup.tsx +4 -1
- package/src/Filter/Filter/Filter.module.css +5 -0
- package/src/Filter/Filter/Filter.tsx +6 -1
- package/src/Filter/FilterBar/FilterBar.module.css +23 -0
- package/src/Filter/FilterBar/FilterBar.tsx +15 -13
- package/src/Filter/FilterBar/_docs/FilterBar.stories.tsx +5 -0
- package/src/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.module.css +3 -0
- package/src/Filter/FilterBar/subcomponents/FilterBarButton/FilterBarButton.tsx +36 -18
- package/src/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.module.css +5 -0
- package/src/Filter/FilterBar/subcomponents/FilterBarMultiSelect/FilterBarMultiSelect.tsx +7 -1
- package/src/Filter/FilterButton/FilterButton/FilterButton.module.css +23 -0
- package/src/Filter/FilterButton/FilterButton/FilterButton.tsx +1 -1
- package/src/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.module.css +3 -0
- package/src/Filter/FilterButton/FilterButtonRemovable/FilterButtonRemovable.tsx +10 -1
- package/src/Filter/FilterButton/subcomponents/FilterButtonBase/FilterButtonBase.module.scss +2 -2
- package/src/Filter/FilterMultiSelect/FilterMultiSelect.tsx +3 -1
- package/src/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.module.css +3 -0
- package/src/Filter/FilterMultiSelect/subcomponents/Trigger/RemovableFilterTrigger/RemovableFilterTrigger.tsx +6 -1
- package/dist/cjs/Filter/FilterBar/FilterBar.module.scss.cjs +0 -7
- package/dist/cjs/Filter/FilterButton/FilterButton/FilterButton.module.scss.cjs +0 -9
- package/dist/esm/Filter/FilterBar/FilterBar.module.scss.mjs +0 -5
- package/dist/esm/Filter/FilterButton/FilterButton/FilterButton.module.scss.mjs +0 -7
- package/src/Filter/FilterBar/FilterBar.module.scss +0 -19
- package/src/Filter/FilterButton/FilterButton/FilterButton.module.scss +0 -22
package/dist/styles.css
CHANGED
|
@@ -1,33 +1,31 @@
|
|
|
1
1
|
@layer tokens, normalize, reset;@layer tokens{:root{--theme-key:heart;--animation-easing-function-ease-in-out:cubic-bezier(0.455,0.03,0.515,0.955);--animation-easing-function-ease-in:cubic-bezier(0.55,0.085,0.68,0.53);--animation-easing-function-ease-out:cubic-bezier(0.25,0.46,0.45,0.94);--animation-easing-function-linear:linear;--animation-easing-function-bounce-in:cubic-bezier(0.485,0.155,0.24,1.245);--animation-easing-function-bounce-out:cubic-bezier(0.485,0.155,0.515,0.845);--animation-easing-function-bounce-in-out:cubic-bezier(0.76,-0.245,0.24,1.245);--animation-duration-instant:0ms;--animation-duration-immediate:100ms;--animation-duration-rapid:200ms;--animation-duration-fast:300ms;--animation-duration-slow:400ms;--animation-duration-deliberate:700ms;--border-solid-border-width:2px;--border-solid-border-radius:7px;--border-solid-border-style:solid;--border-solid-border-color:#e1e2ea;--border-solid-border-color-rgb:225,226,234;--border-dashed-border-width:2px;--border-dashed-border-radius:7px;--border-dashed-border-style:dashed;--border-borderless-border-width:2px;--border-borderless-border-radius:7px;--border-borderless-border-style:solid;--border-borderless-border-color:transparent;--border-borderless-border-color-rgb:0,0,0;--border-focus-ring-border-width:2px;--border-focus-ring-border-radius:10px;--border-focus-ring-border-style:solid;--border-width-1:1px;--color-purple-100:#f4edf8;--color-purple-100-rgb:244,237,248;--color-purple-200:#dfc9ea;--color-purple-200-rgb:223,201,234;--color-purple-300:#c9a5dd;--color-purple-300-rgb:201,165,221;--color-purple-400:#ae67b1;--color-purple-400-rgb:174,103,177;--color-purple-500:#844587;--color-purple-500-rgb:132,69,135;--color-purple-600:#5f3361;--color-purple-600-rgb:95,51,97;--color-purple-700:#4a234d;--color-purple-700-rgb:74,35,77;--color-purple-800:#2f2438;--color-purple-800-rgb:47,36,56;--color-blue-100:#e6f6ff;--color-blue-100-rgb:230,246,255;--color-blue-200:#bde2f5;--color-blue-200-rgb:189,226,245;--color-blue-300:#73c0e8;--color-blue-300-rgb:115,192,232;--color-blue-400:#008bd6;--color-blue-400-rgb:0,139,214;--color-blue-500:#0168b3;--color-blue-500-rgb:1,104,179;--color-blue-600:#004970;--color-blue-600-rgb:0,73,112;--color-blue-700:#003157;--color-blue-700-rgb:0,49,87;--color-green-100:#e8f8f4;--color-green-100-rgb:232,248,244;--color-green-200:#c4ede2;--color-green-200-rgb:196,237,226;--color-green-300:#8fdbc7;--color-green-300-rgb:143,219,199;--color-green-400:#5dcaad;--color-green-400-rgb:93,202,173;--color-green-500:#3f9a86;--color-green-500-rgb:63,154,134;--color-green-600:#2c7d67;--color-green-600-rgb:44,125,103;--color-green-700:#22594a;--color-green-700-rgb:34,89,74;--color-yellow-100:#fff9e4;--color-yellow-100-rgb:255,249,228;--color-yellow-200:#ffeeb3;--color-yellow-200-rgb:255,238,179;--color-yellow-300:#ffe36e;--color-yellow-300-rgb:255,227,110;--color-yellow-400:#ffca4d;--color-yellow-400-rgb:255,202,77;--color-yellow-500:#ffb600;--color-yellow-500-rgb:255,182,0;--color-yellow-600:#c68600;--color-yellow-600-rgb:198,134,0;--color-yellow-700:#876400;--color-yellow-700-rgb:135,100,0;--color-red-100:#fdeaee;--color-red-100-rgb:253,234,238;--color-red-200:#f9c2cb;--color-red-200-rgb:249,194,203;--color-red-300:#f597a8;--color-red-300-rgb:245,151,168;--color-red-400:#e0707d;--color-red-400-rgb:224,112,125;--color-red-500:#c93b55;--color-red-500-rgb:201,59,85;--color-red-600:#a82433;--color-red-600-rgb:168,36,51;--color-red-700:#6c1e20;--color-red-700-rgb:108,30,32;--color-orange-100:#fff0e8;--color-orange-100-rgb:255,240,232;--color-orange-200:#ffd1b9;--color-orange-200-rgb:255,209,185;--color-orange-300:#ffb08a;--color-orange-300-rgb:255,176,138;--color-orange-400:#ff9461;--color-orange-400-rgb:255,148,97;--color-orange-500:#e96c2f;--color-orange-500-rgb:233,108,47;--color-orange-600:#b74302;--color-orange-600-rgb:183,67,2;--color-orange-700:#903c00;--color-orange-700-rgb:144,60,0;--color-gray-100:#f9f9f9;--color-gray-100-rgb:249,249,249;--color-gray-200:#f4f4f5;--color-gray-200-rgb:244,244,245;--color-gray-300:#eaeaec;--color-gray-300-rgb:234,234,236;--color-gray-400:#cdcdd0;--color-gray-400-rgb:205,205,208;--color-gray-500:#878792;--color-gray-500-rgb:135,135,146;--color-gray-600:#524e56;--color-gray-600-rgb:82,78,86;--color-white:#fff;--color-white-rgb:255,255,255;--color-black:#000;--color-black-rgb:0,0,0;--data-viz-favorable:#7dd5bd;--data-viz-favorable-rgb:125,213,189;--data-viz-unfavorable:#e68d97;--data-viz-unfavorable-rgb:230,141,151;--layout-content-max-width:1392px;--layout-content-max-width-with-sidebar:1080px;--layout-content-side-margin:72px;--layout-mobile-actions-drawer-height:60px;--layout-navigation-bar-height:72px;--layout-breakpoints-medium:768px;--layout-breakpoints-large:1080px;--shadow-small-box-shadow:0 1px 3px 0 rgba(0,0,0,.1),0 3px 16px 0 rgba(0,0,0,.06);--shadow-large-box-shadow:0 3px 9px 0 rgba(0,0,0,.1),0 8px 40px 0 rgba(0,0,0,.08);--spacing-0:0;--spacing-1:.0625rem;--spacing-2:.125rem;--spacing-4:.25rem;--spacing-6:.375rem;--spacing-8:.5rem;--spacing-12:.75rem;--spacing-16:1rem;--spacing-20:1.25rem;--spacing-24:1.5rem;--spacing-32:2rem;--spacing-40:2.5rem;--spacing-48:3rem;--spacing-56:3.5rem;--spacing-64:4rem;--spacing-72:4.5rem;--spacing-80:5rem;--spacing-96:6rem;--spacing-112:7rem;--spacing-128:8rem;--spacing-160:10rem;--spacing-200:12.5rem;--spacing-240:15rem;--spacing-280:17.5rem;--spacing-320:20rem;--spacing-xs:0.375rem;--spacing-sm:0.75rem;--spacing-md:1.5rem;--spacing-lg:2.25rem;--spacing-xl:3rem;--spacing-xxl:3.75rem;--spacing-xxxl:4.5rem;--spacing-xxxxl:5.25rem;--spacing-xxxxxl:6rem;--typography-data-large-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-large-font-weight:700;--typography-data-large-font-size:5.25rem;--typography-data-large-line-height:5.25rem;--typography-data-large-letter-spacing:normal;--typography-data-large-units-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-large-units-font-weight:700;--typography-data-large-units-font-size:2.625rem;--typography-data-large-units-line-height:5.25rem;--typography-data-large-units-letter-spacing:normal;--typography-data-medium-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-medium-font-weight:700;--typography-data-medium-font-size:3rem;--typography-data-medium-line-height:5rem;--typography-data-medium-letter-spacing:normal;--typography-data-medium-units-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-medium-units-font-weight:700;--typography-data-medium-units-font-size:1.5rem;--typography-data-medium-units-line-height:5rem;--typography-data-medium-units-letter-spacing:normal;--typography-data-small-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-small-font-weight:700;--typography-data-small-font-size:1.5rem;--typography-data-small-line-height:1.5rem;--typography-data-small-letter-spacing:normal;--typography-data-small-units-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-data-small-units-font-weight:700;--typography-data-small-units-font-size:1.125rem;--typography-data-small-units-line-height:1.5rem;--typography-data-small-units-letter-spacing:normal;--typography-display-0-font-family:"Tiempos Headline",Georgia,serif;--typography-display-0-font-weight:800;--typography-display-0-font-size:4.5rem;--typography-display-0-line-height:5.25rem;--typography-display-0-letter-spacing:0em;--typography-heading-1-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-1-font-weight:500;--typography-heading-1-font-size:2.125rem;--typography-heading-1-line-height:2.625rem;--typography-heading-1-letter-spacing:normal;--typography-heading-2-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-2-font-weight:600;--typography-heading-2-font-size:1.75rem;--typography-heading-2-line-height:2.25rem;--typography-heading-2-letter-spacing:normal;--typography-heading-3-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-3-font-weight:600;--typography-heading-3-font-size:1.375rem;--typography-heading-3-line-height:1.875rem;--typography-heading-3-letter-spacing:normal;--typography-heading-4-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-4-font-weight:600;--typography-heading-4-font-size:1.125rem;--typography-heading-4-line-height:1.5rem;--typography-heading-4-letter-spacing:normal;--typography-heading-5-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-5-font-weight:600;--typography-heading-5-font-size:1rem;--typography-heading-5-line-height:1.5rem;--typography-heading-5-letter-spacing:normal;--typography-heading-6-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-heading-6-font-weight:600;--typography-heading-6-font-size:0.875rem;--typography-heading-6-line-height:1.5rem;--typography-heading-6-letter-spacing:normal;--typography-paragraph-intro-lede-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-intro-lede-font-weight:400;--typography-paragraph-intro-lede-font-size:1.25rem;--typography-paragraph-intro-lede-line-height:1.875rem;--typography-paragraph-intro-lede-letter-spacing:0;--typography-paragraph-intro-lede-max-width:975px;--typography-paragraph-body-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-body-font-weight:400;--typography-paragraph-body-font-size:1rem;--typography-paragraph-body-line-height:1.5rem;--typography-paragraph-body-letter-spacing:normal;--typography-paragraph-body-max-width:780px;--typography-paragraph-small-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-small-font-weight:400;--typography-paragraph-small-font-size:0.875rem;--typography-paragraph-small-line-height:1.125rem;--typography-paragraph-small-letter-spacing:normal;--typography-paragraph-small-max-width:680px;--typography-paragraph-extra-small-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-paragraph-extra-small-font-weight:400;--typography-paragraph-extra-small-font-size:0.75rem;--typography-paragraph-extra-small-line-height:1.125rem;--typography-paragraph-extra-small-letter-spacing:normal;--typography-paragraph-extra-small-max-width:600px;--typography-paragraph-bold-font-weight:600;--typography-button-primary-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-button-primary-font-weight:500;--typography-button-primary-font-size:1.125rem;--typography-button-primary-line-height:1.5rem;--typography-button-primary-letter-spacing:normal;--typography-button-secondary-font-family:"Inter","Noto Sans",Helvetica,Arial,sans-serif;--typography-button-secondary-font-weight:500;--typography-button-secondary-font-size:1rem;--typography-button-secondary-line-height:1.5rem;--typography-button-secondary-letter-spacing:normal}}@layer normalize{html{text-size-adjust:100%;line-height:1.15}body{margin:0}main{display:block}h1{font-size:2em;margin:.67em 0}hr{box-sizing:content-box;height:0;overflow:visible}pre{font-family:monospace;font-size:1em}a{background-color:transparent}abbr[title]{border-bottom:none;text-decoration:underline;text-decoration:underline dotted}b,strong{font-weight:bolder}code,kbd,samp{font-family:monospace;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}img{border-style:none}button,input,optgroup,select,textarea{font-family:inherit;font-size:100%;line-height:1.15;margin:0}button,input{overflow:visible}button,select{text-transform:none}[type=button],[type=reset],[type=submit],button{appearance:button}[type=button]::-moz-focus-inner,[type=reset]::-moz-focus-inner,[type=submit]::-moz-focus-inner,button::-moz-focus-inner{border-style:none;padding:0}[type=button]:-moz-focusring,[type=reset]:-moz-focusring,[type=submit]:-moz-focusring,button:-moz-focusring{outline:1px dotted ButtonText}fieldset{padding:.35em .75em .625em}legend{box-sizing:border-box;color:inherit;display:table;max-width:100%;padding:0;white-space:normal}progress{vertical-align:baseline}textarea{overflow:auto}[type=checkbox],[type=radio]{box-sizing:border-box;padding:0}[type=number]::-webkit-inner-spin-button,[type=number]::-webkit-outer-spin-button{height:auto}[type=search]{appearance:textfield;outline-offset:-2px}[type=search]::-webkit-search-decoration{appearance:none}::-webkit-file-upload-button{appearance:button;font:inherit}details{display:block}summary{display:list-item}[hidden],template{display:none}}@layer reset{@font-face{font-family:Tiempos Headline;font-weight:800;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-bold.woff)}@font-face{font-family:Tiempos Headline;font-weight:500;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-medium.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/tiempos/tiempos-headline-medium.woff)}@font-face{font-family:Greycliff CF;font-weight:300;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-light.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:400;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-regular.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:500;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-medium.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:600;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-demi-bold.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:700;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-bold.woff) format("woff")}@font-face{font-family:Greycliff CF;font-weight:800;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/greycliff/greycliff-cf-extra-bold.woff) format("woff")}@font-face{font-family:Inter;font-weight:300;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-light.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-light.woff)}@font-face{font-family:Inter;font-weight:400;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-regular.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-regular.woff)}@font-face{font-family:Inter;font-weight:500;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-medium.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-medium.woff)}@font-face{font-family:Inter;font-weight:600;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-demi-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-demi-bold.woff)}@font-face{font-family:Inter;font-weight:700;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-bold.woff)}@font-face{font-family:Inter;font-weight:800;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-extra-bold.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/inter/inter-extra-bold.woff)}@font-face{font-family:IBM Plex Mono;src:url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/ibm-plex-mono/ibm-plex-mono-regular.woff2),url(https://d1e7r7b0lb8p4d.cloudfront.net/fonts/ibm-plex-mono/ibm-plex-mono-regular.woff)}}@layer reset{*,:after,:before{border-color:var(--border-solid-border-color,"currentColor");border-style:solid;border-width:0}}
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
overflow: auto;
|
|
8
|
-
padding-block: var(--spacing-6);
|
|
9
|
-
outline: none;
|
|
10
|
-
border-radius: var(--border-solid-border-radius);
|
|
11
|
-
box-shadow: var(--shadow-large-box-shadow);
|
|
2
|
+
/** THIS IS AN AUTOGENERATED FILE **/
|
|
3
|
+
/** THIS IS AN AUTOGENERATED FILE **/
|
|
4
|
+
.OverlayArrow-module_overlayArrow__hoDyK {
|
|
5
|
+
display: flex;
|
|
6
|
+
padding: 8px;
|
|
12
7
|
}
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
font-family: var(--typography-heading-6-font-family);
|
|
16
|
-
font-size: var(--typography-heading-6-font-size);
|
|
17
|
-
letter-spacing: var(--typography-heading-6-letter-spacing);
|
|
18
|
-
font-weight: var(--typography-heading-6-font-weight);
|
|
19
|
-
line-height: var(--typography-heading-6-line-height);
|
|
20
|
-
padding: var(--spacing-6) 10px;
|
|
21
|
-
margin-inline: var(--spacing-6);
|
|
8
|
+
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=top], .OverlayArrow-module_overlayArrow__hoDyK[data-placement=bottom] {
|
|
9
|
+
padding: 0 8px;
|
|
22
10
|
}
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
11
|
+
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=left], .OverlayArrow-module_overlayArrow__hoDyK[data-placement=right] {
|
|
12
|
+
padding: 8px 0;
|
|
13
|
+
}
|
|
14
|
+
.OverlayArrow-module_overlayArrow__hoDyK path {
|
|
15
|
+
fill: var(--color-purple-800, #2f2438);
|
|
16
|
+
box-shadow: var(--shadow-small-box-shadow, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 3px 16px 0 rgba(0, 0, 0, 0.06));
|
|
17
|
+
}
|
|
18
|
+
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=right] svg {
|
|
19
|
+
transform: rotate(90deg);
|
|
20
|
+
}
|
|
21
|
+
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=bottom] svg {
|
|
22
|
+
transform: rotate(180deg);
|
|
23
|
+
}
|
|
24
|
+
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=left] svg {
|
|
25
|
+
transform: rotate(270deg);
|
|
26
|
+
}
|
|
27
|
+
.OverlayArrow-module_overlayArrow__hoDyK.OverlayArrow-module_reversed__-WGcR path {
|
|
28
|
+
fill: var(--color-white, #ffffff);
|
|
31
29
|
}
|
|
32
30
|
.MenuItem-module_item__DPerF {
|
|
33
31
|
font-family: var(--typography-paragraph-body-font-family);
|
|
@@ -63,6 +61,36 @@
|
|
|
63
61
|
.MenuItem-module_item__DPerF[data-disabled] {
|
|
64
62
|
opacity: 0.3;
|
|
65
63
|
}
|
|
64
|
+
.Menu-module_menu__iHYqh {
|
|
65
|
+
background-color: var(--color-white);
|
|
66
|
+
color: var(--color-purple-800);
|
|
67
|
+
width: 248px;
|
|
68
|
+
max-height: 22rem;
|
|
69
|
+
overflow: auto;
|
|
70
|
+
padding-block: var(--spacing-6);
|
|
71
|
+
outline: none;
|
|
72
|
+
border-radius: var(--border-solid-border-radius);
|
|
73
|
+
box-shadow: var(--shadow-large-box-shadow);
|
|
74
|
+
}
|
|
75
|
+
|
|
76
|
+
.Menu-module_menu__iHYqh .react-aria-Header {
|
|
77
|
+
font-family: var(--typography-heading-6-font-family);
|
|
78
|
+
font-size: var(--typography-heading-6-font-size);
|
|
79
|
+
letter-spacing: var(--typography-heading-6-letter-spacing);
|
|
80
|
+
font-weight: var(--typography-heading-6-font-weight);
|
|
81
|
+
line-height: var(--typography-heading-6-line-height);
|
|
82
|
+
padding: var(--spacing-6) 10px;
|
|
83
|
+
margin-inline: var(--spacing-6);
|
|
84
|
+
}
|
|
85
|
+
|
|
86
|
+
.Menu-module_menu__iHYqh section:not(:last-of-type)::after {
|
|
87
|
+
width: 100%;
|
|
88
|
+
height: 1px;
|
|
89
|
+
background-color: var(--border-solid-border-color);
|
|
90
|
+
content: "";
|
|
91
|
+
display: block;
|
|
92
|
+
margin-block: var(--spacing-6);
|
|
93
|
+
}
|
|
66
94
|
.Button-module_button__QOSYH {
|
|
67
95
|
--button-min-height-width: var(--spacing-48);
|
|
68
96
|
--button-padding-x: calc(
|
|
@@ -210,34 +238,6 @@
|
|
|
210
238
|
opacity: 1;
|
|
211
239
|
}
|
|
212
240
|
}
|
|
213
|
-
/** THIS IS AN AUTOGENERATED FILE **/
|
|
214
|
-
/** THIS IS AN AUTOGENERATED FILE **/
|
|
215
|
-
.OverlayArrow-module_overlayArrow__hoDyK {
|
|
216
|
-
display: flex;
|
|
217
|
-
padding: 8px;
|
|
218
|
-
}
|
|
219
|
-
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=top], .OverlayArrow-module_overlayArrow__hoDyK[data-placement=bottom] {
|
|
220
|
-
padding: 0 8px;
|
|
221
|
-
}
|
|
222
|
-
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=left], .OverlayArrow-module_overlayArrow__hoDyK[data-placement=right] {
|
|
223
|
-
padding: 8px 0;
|
|
224
|
-
}
|
|
225
|
-
.OverlayArrow-module_overlayArrow__hoDyK path {
|
|
226
|
-
fill: var(--color-purple-800, #2f2438);
|
|
227
|
-
box-shadow: var(--shadow-small-box-shadow, 0 1px 3px 0 rgba(0, 0, 0, 0.1), 0 3px 16px 0 rgba(0, 0, 0, 0.06));
|
|
228
|
-
}
|
|
229
|
-
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=right] svg {
|
|
230
|
-
transform: rotate(90deg);
|
|
231
|
-
}
|
|
232
|
-
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=bottom] svg {
|
|
233
|
-
transform: rotate(180deg);
|
|
234
|
-
}
|
|
235
|
-
.OverlayArrow-module_overlayArrow__hoDyK[data-placement=left] svg {
|
|
236
|
-
transform: rotate(270deg);
|
|
237
|
-
}
|
|
238
|
-
.OverlayArrow-module_overlayArrow__hoDyK.OverlayArrow-module_reversed__-WGcR path {
|
|
239
|
-
fill: var(--color-white, #ffffff);
|
|
240
|
-
}
|
|
241
241
|
.Icon-module_icon__CkmHY {
|
|
242
242
|
font-size: calc(1px * var(--icon-size, 20));
|
|
243
243
|
font-weight: var(--icon-font-weight, 400);
|
|
@@ -1765,7 +1765,7 @@
|
|
|
1765
1765
|
position: relative;
|
|
1766
1766
|
display: inline-flex;
|
|
1767
1767
|
align-items: center;
|
|
1768
|
-
height: 3rem;
|
|
1768
|
+
min-height: 3rem;
|
|
1769
1769
|
padding: var(--spacing-sm, 0.75rem);
|
|
1770
1770
|
border-width: 0;
|
|
1771
1771
|
border-radius: var(--border-solid-border-radius, 7px);
|
|
@@ -1776,7 +1776,7 @@
|
|
|
1776
1776
|
line-height: var(--typography-button-secondary-line-height, 1.5rem);
|
|
1777
1777
|
letter-spacing: var(--typography-button-secondary-letter-spacing, normal);
|
|
1778
1778
|
color: var(--color-blue-500, #0168b3);
|
|
1779
|
-
|
|
1779
|
+
text-align: start;
|
|
1780
1780
|
}
|
|
1781
1781
|
.FilterButtonBase-module_filterButtonBase__ImByM:hover, .FilterButtonBase-module_filterButtonBase__ImByM:active {
|
|
1782
1782
|
z-index: 2;
|
|
@@ -4052,6 +4052,12 @@ input[type=range].InputRange-module_ratingScaleRange__gI-rs::-ms-thumb:not(:disa
|
|
|
4052
4052
|
border-radius: var(--border-borderless-border-radius, 7px);
|
|
4053
4053
|
display: inline-flex;
|
|
4054
4054
|
}
|
|
4055
|
+
@media (width < 768px) {
|
|
4056
|
+
.Filter-module_filter__u3IkC {
|
|
4057
|
+
flex-basis: 100%;
|
|
4058
|
+
}
|
|
4059
|
+
}
|
|
4060
|
+
|
|
4055
4061
|
/** THIS IS AN AUTOGENERATED FILE **/
|
|
4056
4062
|
.FilterContents-module_filterContents__tQWu8 {
|
|
4057
4063
|
padding: var(--spacing-md, 1.5rem);
|
|
@@ -4065,26 +4071,38 @@ input[type=range].InputRange-module_ratingScaleRange__gI-rs::-ms-thumb:not(:disa
|
|
|
4065
4071
|
display: grid;
|
|
4066
4072
|
gap: var(--spacing-16, 1rem);
|
|
4067
4073
|
}
|
|
4068
|
-
|
|
4069
|
-
|
|
4070
|
-
|
|
4071
|
-
|
|
4074
|
+
.FilterButton-module_filterButton__Fn1OD {
|
|
4075
|
+
gap: var(--spacing-6);
|
|
4076
|
+
justify-content: space-between;
|
|
4077
|
+
}
|
|
4078
|
+
|
|
4079
|
+
@media (width < 768px) {
|
|
4080
|
+
.FilterButton-module_filterButton__Fn1OD {
|
|
4081
|
+
flex-grow: 1;
|
|
4082
|
+
}
|
|
4072
4083
|
}
|
|
4073
4084
|
|
|
4074
|
-
.FilterButton-
|
|
4085
|
+
.FilterButton-module_labelContainer__sPAcx {
|
|
4075
4086
|
display: inline-flex;
|
|
4087
|
+
flex-wrap: wrap;
|
|
4076
4088
|
}
|
|
4077
4089
|
|
|
4078
|
-
.FilterButton-
|
|
4090
|
+
.FilterButton-module_hasSelectedValues__bHR5g {
|
|
4079
4091
|
font-weight: bold;
|
|
4080
4092
|
}
|
|
4081
4093
|
|
|
4082
|
-
.FilterButton-
|
|
4083
|
-
margin-inline-end: var(--spacing-
|
|
4094
|
+
.FilterButton-module_labelSeparator__KimZO {
|
|
4095
|
+
margin-inline-end: var(--spacing-6);
|
|
4084
4096
|
}
|
|
4085
|
-
|
|
4086
|
-
|
|
4097
|
+
|
|
4098
|
+
.FilterButtonRemovable-module_filterButtonBase__V4xk8 {
|
|
4099
|
+
height: 100%;
|
|
4100
|
+
}
|
|
4101
|
+
|
|
4102
|
+
.FilterBarButton-module_filterBarButton__3IF-- {
|
|
4103
|
+
width: 100%;
|
|
4087
4104
|
}
|
|
4105
|
+
|
|
4088
4106
|
/** THIS IS AN AUTOGENERATED FILE **/
|
|
4089
4107
|
.DateRangeDisplayLabel-module_dateRangeDisplayLabel__g7nVd {
|
|
4090
4108
|
display: inline-flex;
|
|
@@ -4374,6 +4392,16 @@ input[type=range].InputRange-module_ratingScaleRange__gI-rs::-ms-thumb:not(:disa
|
|
|
4374
4392
|
.SelectionControlButton-module_button__u-ysH.SelectionControlButton-module_isDisabled__0axMR:focus-visible::after {
|
|
4375
4393
|
border-color: var(--color-gray-400, #cdcdd0);
|
|
4376
4394
|
}
|
|
4395
|
+
.RemovableFilterTrigger-module_filterButtonRemovable__-M4wV {
|
|
4396
|
+
width: 100%;
|
|
4397
|
+
}
|
|
4398
|
+
|
|
4399
|
+
@media (width < 768px) {
|
|
4400
|
+
.FilterBarMultiSelect-module_filterMultiSelect__a4enz {
|
|
4401
|
+
flex-basis: 100%;
|
|
4402
|
+
}
|
|
4403
|
+
}
|
|
4404
|
+
|
|
4377
4405
|
.ListBox-module_listBox__Uf6Mc {
|
|
4378
4406
|
list-style: none;
|
|
4379
4407
|
margin-top: 0;
|
|
@@ -4623,24 +4651,30 @@ input[type=range].InputRange-module_ratingScaleRange__gI-rs::-ms-thumb:not(:disa
|
|
|
4623
4651
|
.ClearAllButton-module_clearAllButton__XNkm2 {
|
|
4624
4652
|
white-space: nowrap;
|
|
4625
4653
|
}
|
|
4626
|
-
|
|
4627
|
-
|
|
4628
|
-
|
|
4629
|
-
|
|
4630
|
-
.FilterBar-
|
|
4654
|
+
.FilterBar-module_wrapper__D8GXq {
|
|
4655
|
+
container: filter-bar-wrapper / inline-size;
|
|
4656
|
+
}
|
|
4657
|
+
|
|
4658
|
+
.FilterBar-module_filterBar__JEVKL {
|
|
4631
4659
|
display: flex;
|
|
4632
|
-
padding: var(--spacing-8
|
|
4633
|
-
|
|
4634
|
-
|
|
4635
|
-
background-color: var(--color-white, #ffffff);
|
|
4660
|
+
padding: var(--spacing-8);
|
|
4661
|
+
border-radius: var(--border-solid-border-radius);
|
|
4662
|
+
background-color: var(--color-white);
|
|
4636
4663
|
}
|
|
4637
4664
|
|
|
4638
|
-
|
|
4665
|
+
@media (width < 768px) {
|
|
4666
|
+
.FilterBar-module_filterBar__JEVKL {
|
|
4667
|
+
flex-direction: column;
|
|
4668
|
+
}
|
|
4669
|
+
}
|
|
4670
|
+
|
|
4671
|
+
.FilterBar-module_filtersContainer__Xl-DO {
|
|
4639
4672
|
display: flex;
|
|
4640
4673
|
flex-grow: 1;
|
|
4641
4674
|
flex-wrap: wrap;
|
|
4642
|
-
gap: var(--spacing-8
|
|
4675
|
+
gap: var(--spacing-8);
|
|
4643
4676
|
}
|
|
4677
|
+
|
|
4644
4678
|
/** THIS IS AN AUTOGENERATED FILE **/
|
|
4645
4679
|
/** THIS IS AN AUTOGENERATED FILE **/
|
|
4646
4680
|
/** THIS IS AN AUTOGENERATED FILE **/
|
|
@@ -16,9 +16,10 @@ export type FilterMultiSelectProps = {
|
|
|
16
16
|
trigger: (value?: MenuTriggerProviderContextType) => React.ReactNode;
|
|
17
17
|
children: (value?: SelectionProviderContextType) => React.ReactNode;
|
|
18
18
|
triggerRef?: React.RefObject<HTMLButtonElement>;
|
|
19
|
+
className?: string;
|
|
19
20
|
} & Omit<MenuPopupProps, "children"> & Omit<MenuTriggerProviderProps, "children"> & SelectionProps;
|
|
20
21
|
export declare const FilterMultiSelect: {
|
|
21
|
-
({ trigger, children, isOpen, defaultOpen, onOpenChange, isLoading, loadingSkeleton, label, items, selectedKeys, defaultSelectedKeys, onSelectionChange, selectionMode, onSearchInputChange, triggerRef, }: FilterMultiSelectProps): JSX.Element;
|
|
22
|
+
({ trigger, children, isOpen, defaultOpen, onOpenChange, isLoading, loadingSkeleton, label, items, selectedKeys, defaultSelectedKeys, onSelectionChange, selectionMode, onSearchInputChange, triggerRef, className, }: FilterMultiSelectProps): JSX.Element;
|
|
22
23
|
displayName: string;
|
|
23
24
|
TriggerButton: {
|
|
24
25
|
({ selectedOptionLabels, label, classNameOverride, labelCharacterLimitBeforeTruncate, }: import("./subcomponents/Trigger").FilterTriggerButtonProps): JSX.Element;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kaizen/components",
|
|
3
|
-
"version": "1.67.
|
|
3
|
+
"version": "1.67.9",
|
|
4
4
|
"description": "Kaizen component library",
|
|
5
5
|
"author": "Geoffrey Chong <geoff.chong@cultureamp.com>",
|
|
6
6
|
"homepage": "https://cultureamp.design",
|
|
@@ -113,7 +113,7 @@
|
|
|
113
113
|
"react-highlight": "^0.15.0",
|
|
114
114
|
"react-intl": "^6.8.4",
|
|
115
115
|
"rollup": "^4.24.2",
|
|
116
|
-
"sass": "
|
|
116
|
+
"sass": "1.79.6",
|
|
117
117
|
"serialize-query-params": "^2.0.2",
|
|
118
118
|
"svgo": "^3.3.2",
|
|
119
119
|
"tslib": "^2.8.0",
|
|
@@ -122,6 +122,7 @@
|
|
|
122
122
|
"@kaizen/design-tokens": "10.8.1"
|
|
123
123
|
},
|
|
124
124
|
"devDependenciesComments": {
|
|
125
|
+
"sass": "Prevent deprecation warnings introduced in 1.80 as we plan to move away from sass",
|
|
125
126
|
"typescript": "Installed in root"
|
|
126
127
|
},
|
|
127
128
|
"peerDependencies": {
|
|
@@ -50,7 +50,10 @@ export const ButtonGroup = ({
|
|
|
50
50
|
if (isFilterButton(button)) {
|
|
51
51
|
return React.cloneElement(child, {
|
|
52
52
|
children: React.cloneElement(button, {
|
|
53
|
-
classNameOverride:
|
|
53
|
+
classNameOverride: classnames(
|
|
54
|
+
button.props.classNameOverride,
|
|
55
|
+
buttonClassNames
|
|
56
|
+
),
|
|
54
57
|
}),
|
|
55
58
|
})
|
|
56
59
|
}
|
|
@@ -5,10 +5,12 @@ import React, {
|
|
|
5
5
|
useRef,
|
|
6
6
|
useState,
|
|
7
7
|
} from "react"
|
|
8
|
+
import classnames from "classnames"
|
|
8
9
|
import { FocusOn } from "react-focus-on"
|
|
9
10
|
import { OverrideClassName } from "~components/types/OverrideClassName"
|
|
10
11
|
import { FilterPopover } from "./subcomponents/FilterPopover"
|
|
11
12
|
import { FilterTriggerRef } from "./types"
|
|
13
|
+
import styles from "./Filter.module.css"
|
|
12
14
|
|
|
13
15
|
export type FilterProps = {
|
|
14
16
|
children: React.ReactNode
|
|
@@ -54,7 +56,10 @@ export const Filter = ({
|
|
|
54
56
|
}, [filterButtonRef.current?.triggerRef?.current, onMount])
|
|
55
57
|
|
|
56
58
|
return (
|
|
57
|
-
<div
|
|
59
|
+
<div
|
|
60
|
+
className={classnames(styles.filter, classNameOverride)}
|
|
61
|
+
{...restProps}
|
|
62
|
+
>
|
|
58
63
|
{React.cloneElement(trigger, {
|
|
59
64
|
ref: filterButtonRef,
|
|
60
65
|
})}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
.wrapper {
|
|
2
|
+
container: filter-bar-wrapper / inline-size;
|
|
3
|
+
}
|
|
4
|
+
|
|
5
|
+
.filterBar {
|
|
6
|
+
display: flex;
|
|
7
|
+
padding: var(--spacing-8);
|
|
8
|
+
border-radius: var(--border-solid-border-radius);
|
|
9
|
+
background-color: var(--color-white);
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
@media (width < 768px) {
|
|
13
|
+
.filterBar {
|
|
14
|
+
flex-direction: column;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
.filtersContainer {
|
|
19
|
+
display: flex;
|
|
20
|
+
flex-grow: 1;
|
|
21
|
+
flex-wrap: wrap;
|
|
22
|
+
gap: var(--spacing-8);
|
|
23
|
+
}
|
|
@@ -14,7 +14,7 @@ import {
|
|
|
14
14
|
import { AddFiltersMenu } from "./subcomponents/AddFiltersMenu"
|
|
15
15
|
import { ClearAllButton } from "./subcomponents/ClearAllButton"
|
|
16
16
|
import { FiltersValues } from "./types"
|
|
17
|
-
import styles from "./FilterBar.module.
|
|
17
|
+
import styles from "./FilterBar.module.css"
|
|
18
18
|
|
|
19
19
|
export type FilterBarProps<ValuesMap extends FiltersValues> = OverrideClassName<
|
|
20
20
|
Omit<FilterBarProviderProps<ValuesMap>, "children">
|
|
@@ -27,19 +27,21 @@ export const FilterBar = <ValuesMap extends FiltersValues>({
|
|
|
27
27
|
}: FilterBarProps<ValuesMap>): JSX.Element => (
|
|
28
28
|
<FilterBarProvider<ValuesMap> filters={filters} {...providerProps}>
|
|
29
29
|
{(activeFilters): JSX.Element => (
|
|
30
|
-
<div className={
|
|
31
|
-
<div className={styles.
|
|
32
|
-
{
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
30
|
+
<div className={styles.wrapper}>
|
|
31
|
+
<div className={classnames(styles.filterBar, classNameOverride)}>
|
|
32
|
+
<div className={styles.filtersContainer}>
|
|
33
|
+
{Object.values(activeFilters).map(({ id, Component }) => (
|
|
34
|
+
// `id` will always be `string`, but keyof ValuesMap transformed it
|
|
35
|
+
<React.Fragment key={id as string}>
|
|
36
|
+
{React.cloneElement(Component, { id })}
|
|
37
|
+
</React.Fragment>
|
|
38
|
+
))}
|
|
39
|
+
<AddFiltersMenu />
|
|
40
|
+
</div>
|
|
40
41
|
|
|
41
|
-
|
|
42
|
-
|
|
42
|
+
<div>
|
|
43
|
+
<ClearAllButton />
|
|
44
|
+
</div>
|
|
43
45
|
</div>
|
|
44
46
|
</div>
|
|
45
47
|
)}
|
|
@@ -152,6 +152,11 @@ const filters = [
|
|
|
152
152
|
{ value: "none", label: "None" },
|
|
153
153
|
{ value: "pearls", label: "Pearls" },
|
|
154
154
|
{ value: "fruit-jelly", label: "Fruit Jelly" },
|
|
155
|
+
{ value: "peanuts", label: "Peanuts" },
|
|
156
|
+
{ value: "coconut", label: "Coconut" },
|
|
157
|
+
{ value: "aloe", label: "Aloe Vera" },
|
|
158
|
+
{ value: "mochi", label: "Mini Mochi" },
|
|
159
|
+
{ value: "popping-pearls", label: "Popping Pearls" },
|
|
155
160
|
]}
|
|
156
161
|
>
|
|
157
162
|
{(): JSX.Element => (
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import React, { forwardRef, useEffect } from "react"
|
|
2
|
+
import classnames from "classnames"
|
|
2
3
|
import { FilterTriggerRef } from "~components/Filter/Filter"
|
|
3
4
|
import { useFilterBarContext } from "~components/Filter/FilterBar/context/FilterBarContext"
|
|
4
5
|
import {
|
|
@@ -7,6 +8,7 @@ import {
|
|
|
7
8
|
FilterButtonRemovable,
|
|
8
9
|
} from "~components/Filter/FilterButton"
|
|
9
10
|
import { isRefObject } from "~components/utils/isRefObject"
|
|
11
|
+
import styles from "./FilterBarButton.module.css"
|
|
10
12
|
|
|
11
13
|
export type FilterBarButtonProps = FilterButtonProps & {
|
|
12
14
|
filterId: string
|
|
@@ -16,25 +18,41 @@ export type FilterBarButtonProps = FilterButtonProps & {
|
|
|
16
18
|
export const FilterBarButton = forwardRef<
|
|
17
19
|
FilterTriggerRef,
|
|
18
20
|
FilterBarButtonProps
|
|
19
|
-
>(
|
|
20
|
-
|
|
21
|
+
>(
|
|
22
|
+
(
|
|
23
|
+
{ filterId, isRemovable = false, classNameOverride, ...props },
|
|
24
|
+
ref
|
|
25
|
+
): JSX.Element => {
|
|
26
|
+
const { hideFilter, focusId, setFocus } = useFilterBarContext()
|
|
21
27
|
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
+
useEffect(() => {
|
|
29
|
+
if (focusId === filterId && isRefObject(ref)) {
|
|
30
|
+
ref?.current?.triggerRef?.current?.focus()
|
|
31
|
+
setFocus(undefined)
|
|
32
|
+
}
|
|
33
|
+
}, [focusId])
|
|
28
34
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
35
|
+
return isRemovable ? (
|
|
36
|
+
<FilterButtonRemovable
|
|
37
|
+
ref={ref}
|
|
38
|
+
triggerButtonProps={props}
|
|
39
|
+
removeButtonProps={{ onClick: () => hideFilter(filterId) }}
|
|
40
|
+
classNameOverride={classnames(
|
|
41
|
+
classNameOverride,
|
|
42
|
+
styles.filterBarButton
|
|
43
|
+
)}
|
|
44
|
+
/>
|
|
45
|
+
) : (
|
|
46
|
+
<FilterButton
|
|
47
|
+
ref={ref}
|
|
48
|
+
classNameOverride={classnames(
|
|
49
|
+
classNameOverride,
|
|
50
|
+
styles.filterBarButton
|
|
51
|
+
)}
|
|
52
|
+
{...props}
|
|
53
|
+
/>
|
|
54
|
+
)
|
|
55
|
+
}
|
|
56
|
+
)
|
|
39
57
|
|
|
40
58
|
FilterBarButton.displayName = "FilterBar.Button"
|
|
@@ -8,6 +8,7 @@ import {
|
|
|
8
8
|
} from "~components/Filter/FilterMultiSelect"
|
|
9
9
|
import { useFilterBarContext } from "../../context/FilterBarContext"
|
|
10
10
|
import { checkArraysMatch } from "../../utils/checkArraysMatch"
|
|
11
|
+
import styles from "./FilterBarMultiSelect.module.css"
|
|
11
12
|
|
|
12
13
|
export type FilterBarMultiSelectProps = Omit<
|
|
13
14
|
FilterMultiSelectProps,
|
|
@@ -97,6 +98,7 @@ export const FilterBarMultiSelect = ({
|
|
|
97
98
|
items={items}
|
|
98
99
|
isOpen={filterState.isOpen}
|
|
99
100
|
onOpenChange={(open): void => setFilterOpenState(id, open)}
|
|
101
|
+
className={styles.filterMultiSelect}
|
|
100
102
|
trigger={(): JSX.Element => {
|
|
101
103
|
const triggerProps = {
|
|
102
104
|
selectedOptionLabels: filterState.value
|
|
@@ -112,9 +114,13 @@ export const FilterBarMultiSelect = ({
|
|
|
112
114
|
<FilterMultiSelect.RemovableTrigger
|
|
113
115
|
{...triggerProps}
|
|
114
116
|
onRemove={() => hideFilter(id)}
|
|
117
|
+
classNameOverride={styles.triggerButton}
|
|
115
118
|
/>
|
|
116
119
|
) : (
|
|
117
|
-
<FilterMultiSelect.TriggerButton
|
|
120
|
+
<FilterMultiSelect.TriggerButton
|
|
121
|
+
classNameOverride={styles.triggerButton}
|
|
122
|
+
{...triggerProps}
|
|
123
|
+
/>
|
|
118
124
|
)
|
|
119
125
|
}}
|
|
120
126
|
triggerRef={buttonRef}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
.filterButton {
|
|
2
|
+
gap: var(--spacing-6);
|
|
3
|
+
justify-content: space-between;
|
|
4
|
+
}
|
|
5
|
+
|
|
6
|
+
@media (width < 768px) {
|
|
7
|
+
.filterButton {
|
|
8
|
+
flex-grow: 1;
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
.labelContainer {
|
|
13
|
+
display: inline-flex;
|
|
14
|
+
flex-wrap: wrap;
|
|
15
|
+
}
|
|
16
|
+
|
|
17
|
+
.hasSelectedValues {
|
|
18
|
+
font-weight: bold;
|
|
19
|
+
}
|
|
20
|
+
|
|
21
|
+
.labelSeparator {
|
|
22
|
+
margin-inline-end: var(--spacing-6);
|
|
23
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import React, { forwardRef } from "react"
|
|
2
2
|
import { useIntl } from "@cultureamp/i18n-react-intl"
|
|
3
|
+
import classnames from "classnames"
|
|
3
4
|
import { ButtonGroup, ButtonGroupProps } from "~components/ButtonGroup"
|
|
4
5
|
import { FilterTriggerRef } from "~components/Filter/Filter"
|
|
5
6
|
import { Icon } from "~components/__future__/Icon"
|
|
@@ -11,6 +12,7 @@ import {
|
|
|
11
12
|
FilterButtonBase,
|
|
12
13
|
FilterButtonBaseProps,
|
|
13
14
|
} from "../subcomponents/FilterButtonBase"
|
|
15
|
+
import styles from "./FilterButtonRemovable.module.css"
|
|
14
16
|
|
|
15
17
|
export type FilterButtonRemovableProps = {
|
|
16
18
|
triggerButtonProps: FilterButtonProps & DataAttributes
|
|
@@ -49,7 +51,14 @@ export const FilterButtonRemovable = forwardRef<
|
|
|
49
51
|
<ButtonGroup {...restProps}>
|
|
50
52
|
<FilterButton ref={ref} {...triggerButtonProps} />
|
|
51
53
|
<Tooltip text={removeButtonLabel} display="inline-block" position="below">
|
|
52
|
-
<FilterButtonBase
|
|
54
|
+
<FilterButtonBase
|
|
55
|
+
ref={removeButtonRef}
|
|
56
|
+
classNameOverride={classnames(
|
|
57
|
+
styles.filterButtonBase,
|
|
58
|
+
restProps.classNameOverride
|
|
59
|
+
)}
|
|
60
|
+
{...removeButtonProps}
|
|
61
|
+
>
|
|
53
62
|
<Icon name="cancel" alt={removeButtonLabel} isFilled />
|
|
54
63
|
</FilterButtonBase>
|
|
55
64
|
</Tooltip>
|