@flipdish/ui-library 0.41.1 → 0.42.0
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/components/atoms/Dot/Dot.styles.cjs +1 -0
- package/dist/components/atoms/Dot/Dot.styles.cjs.map +1 -1
- package/dist/components/atoms/Dot/Dot.styles.d.ts +4 -0
- package/dist/components/atoms/Dot/Dot.styles.d.ts.map +1 -1
- package/dist/components/atoms/Dot/Dot.styles.js +1 -0
- package/dist/components/atoms/Dot/Dot.styles.js.map +1 -1
- package/dist/components/molecules/Select/components/MultiSelect.cjs +10 -36
- package/dist/components/molecules/Select/components/MultiSelect.cjs.map +1 -1
- package/dist/components/molecules/Select/components/MultiSelect.d.ts.map +1 -1
- package/dist/components/molecules/Select/components/MultiSelect.js +11 -37
- package/dist/components/molecules/Select/components/MultiSelect.js.map +1 -1
- package/dist/components/molecules/Select/hooks/useMultiSelectSelection.cjs +43 -0
- package/dist/components/molecules/Select/hooks/useMultiSelectSelection.cjs.map +1 -0
- package/dist/components/molecules/Select/hooks/useMultiSelectSelection.d.ts +35 -0
- package/dist/components/molecules/Select/hooks/useMultiSelectSelection.d.ts.map +1 -0
- package/dist/components/molecules/Select/hooks/useMultiSelectSelection.js +41 -0
- package/dist/components/molecules/Select/hooks/useMultiSelectSelection.js.map +1 -0
- package/dist/components/molecules/Select/multiSelect.utils.cjs +34 -0
- package/dist/components/molecules/Select/multiSelect.utils.cjs.map +1 -0
- package/dist/components/molecules/Select/multiSelect.utils.d.ts +23 -0
- package/dist/components/molecules/Select/multiSelect.utils.d.ts.map +1 -0
- package/dist/components/molecules/Select/multiSelect.utils.js +31 -0
- package/dist/components/molecules/Select/multiSelect.utils.js.map +1 -0
- package/dist/components/molecules/Tags/Tags.styles.cjs +66 -0
- package/dist/components/molecules/Tags/Tags.styles.cjs.map +1 -0
- package/dist/components/molecules/Tags/Tags.styles.d.ts +141 -0
- package/dist/components/molecules/Tags/Tags.styles.d.ts.map +1 -0
- package/dist/components/molecules/Tags/Tags.styles.js +64 -0
- package/dist/components/molecules/Tags/Tags.styles.js.map +1 -0
- package/dist/components/molecules/Tags/components/TagCheckbox.cjs +2 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.cjs.map +1 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.d.ts +2 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.d.ts.map +1 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.js +2 -1
- package/dist/components/molecules/Tags/components/TagCheckbox.js.map +1 -1
- package/dist/components/molecules/Tags/components/TagCloseX.cjs +2 -6
- package/dist/components/molecules/Tags/components/TagCloseX.cjs.map +1 -1
- package/dist/components/molecules/Tags/components/TagCloseX.d.ts +2 -1
- package/dist/components/molecules/Tags/components/TagCloseX.d.ts.map +1 -1
- package/dist/components/molecules/Tags/components/TagCloseX.js +2 -6
- package/dist/components/molecules/Tags/components/TagCloseX.js.map +1 -1
- package/dist/components/molecules/Tags/index.cjs +11 -48
- package/dist/components/molecules/Tags/index.cjs.map +1 -1
- package/dist/components/molecules/Tags/index.d.ts +12 -3
- package/dist/components/molecules/Tags/index.d.ts.map +1 -1
- package/dist/components/molecules/Tags/index.js +11 -48
- package/dist/components/molecules/Tags/index.js.map +1 -1
- package/dist/components/organisms/ColorPicker/colorPicker.utils.cjs +45 -0
- package/dist/components/organisms/ColorPicker/colorPicker.utils.cjs.map +1 -1
- package/dist/components/organisms/ColorPicker/colorPicker.utils.d.ts +29 -0
- package/dist/components/organisms/ColorPicker/colorPicker.utils.d.ts.map +1 -1
- package/dist/components/organisms/ColorPicker/colorPicker.utils.js +43 -1
- package/dist/components/organisms/ColorPicker/colorPicker.utils.js.map +1 -1
- package/dist/components/organisms/ColorPicker/hooks/useCssColorField.cjs +38 -0
- package/dist/components/organisms/ColorPicker/hooks/useCssColorField.cjs.map +1 -0
- package/dist/components/organisms/ColorPicker/hooks/useCssColorField.d.ts +28 -0
- package/dist/components/organisms/ColorPicker/hooks/useCssColorField.d.ts.map +1 -0
- package/dist/components/organisms/ColorPicker/hooks/useCssColorField.js +36 -0
- package/dist/components/organisms/ColorPicker/hooks/useCssColorField.js.map +1 -0
- package/dist/components/organisms/ColorPicker/index.cjs +15 -38
- package/dist/components/organisms/ColorPicker/index.cjs.map +1 -1
- package/dist/components/organisms/ColorPicker/index.d.ts.map +1 -1
- package/dist/components/organisms/ColorPicker/index.js +16 -39
- package/dist/components/organisms/ColorPicker/index.js.map +1 -1
- package/dist/native/components/atoms/Dot/Dot.styles.d.ts +4 -0
- package/dist/native/components/atoms/Dot/Dot.styles.d.ts.map +1 -1
- package/dist/native/components/atoms/Dot/Dot.styles.js +1 -0
- package/dist/native/components/atoms/Dot/Dot.styles.js.map +1 -1
- package/dist/native/components/molecules/Tags/Tags.styles.d.ts +141 -0
- package/dist/native/components/molecules/Tags/Tags.styles.d.ts.map +1 -0
- package/dist/native/components/molecules/Tags/Tags.styles.js +92 -0
- package/dist/native/components/molecules/Tags/Tags.styles.js.map +1 -0
- package/dist/native/components/molecules/Tags/index.d.ts +95 -8
- package/dist/native/components/molecules/Tags/index.d.ts.map +1 -0
- package/dist/native/components/molecules/Tags/index.js +98 -0
- package/dist/native/components/molecules/Tags/index.js.map +1 -0
- package/package.json +2 -2
|
@@ -31,6 +31,7 @@ const styles = {
|
|
|
31
31
|
'fg-primary': { web: 'text-fg-primary', native: 'bg-fg-primary' },
|
|
32
32
|
'fg-quaternary': { web: 'text-fg-quaternary', native: 'bg-fg-quaternary' },
|
|
33
33
|
'fg-success-secondary': { web: 'text-fg-success-secondary', native: 'bg-fg-success-secondary' },
|
|
34
|
+
'fg-warning-secondary': { web: 'text-fg-warning-secondary', native: 'bg-fg-warning-secondary' },
|
|
34
35
|
'border-primary': { web: 'text-border-primary', native: 'bg-border-primary' },
|
|
35
36
|
'utility-neutral-500': { web: 'text-utility-neutral-500', native: 'bg-utility-neutral-500' },
|
|
36
37
|
'utility-brand-500': { web: 'text-utility-brand-500', native: 'bg-utility-brand-500' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dot.styles.cjs","sources":["../../../../src/components/atoms/Dot/Dot.styles.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,MAAM,GAAG;AACpB,IAAA,KAAK,EAAE;AACL,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;AAC3B,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;AAC3B,KAAA;AACD,IAAA,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,gBAAgB,EAAE;QACzE,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,eAAe,EAAE;QACjE,eAAe,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,EAAE,kBAAkB,EAAE;QAC1E,sBAAsB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC/F,gBAAgB,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,MAAM,EAAE,mBAAmB,EAAE;QAC7E,qBAAqB,EAAE,EAAE,GAAG,EAAE,0BAA0B,EAAE,MAAM,EAAE,wBAAwB,EAAE;QAC5F,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;AAC1F,KAAA;;;"}
|
|
1
|
+
{"version":3,"file":"Dot.styles.cjs","sources":["../../../../src/components/atoms/Dot/Dot.styles.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,MAAM,GAAG;AACpB,IAAA,KAAK,EAAE;AACL,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;AAC3B,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;AAC3B,KAAA;AACD,IAAA,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,gBAAgB,EAAE;QACzE,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,eAAe,EAAE;QACjE,eAAe,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,EAAE,kBAAkB,EAAE;QAC1E,sBAAsB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC/F,sBAAsB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC/F,gBAAgB,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,MAAM,EAAE,mBAAmB,EAAE;QAC7E,qBAAqB,EAAE,EAAE,GAAG,EAAE,0BAA0B,EAAE,MAAM,EAAE,wBAAwB,EAAE;QAC5F,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;AAC1F,KAAA;;;"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dot.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Dot/Dot.styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"Dot.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/atoms/Dot/Dot.styles.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAyBlB,CAAC;AAEF,MAAM,MAAM,OAAO,GAAG,MAAM,OAAO,MAAM,CAAC,KAAK,CAAC;AAChD,MAAM,MAAM,QAAQ,GAAG,MAAM,OAAO,MAAM,CAAC,MAAM,CAAC;AAElD,eAAO,MAAM,aAAa,EAAiC,QAAQ,EAAE,CAAC"}
|
|
@@ -29,6 +29,7 @@ const styles = {
|
|
|
29
29
|
'fg-primary': { web: 'text-fg-primary', native: 'bg-fg-primary' },
|
|
30
30
|
'fg-quaternary': { web: 'text-fg-quaternary', native: 'bg-fg-quaternary' },
|
|
31
31
|
'fg-success-secondary': { web: 'text-fg-success-secondary', native: 'bg-fg-success-secondary' },
|
|
32
|
+
'fg-warning-secondary': { web: 'text-fg-warning-secondary', native: 'bg-fg-warning-secondary' },
|
|
32
33
|
'border-primary': { web: 'text-border-primary', native: 'bg-border-primary' },
|
|
33
34
|
'utility-neutral-500': { web: 'text-utility-neutral-500', native: 'bg-utility-neutral-500' },
|
|
34
35
|
'utility-brand-500': { web: 'text-utility-brand-500', native: 'bg-utility-brand-500' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Dot.styles.js","sources":["../../../../src/components/atoms/Dot/Dot.styles.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,MAAM,GAAG;AACpB,IAAA,KAAK,EAAE;AACL,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;AAC3B,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;AAC3B,KAAA;AACD,IAAA,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,gBAAgB,EAAE;QACzE,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,eAAe,EAAE;QACjE,eAAe,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,EAAE,kBAAkB,EAAE;QAC1E,sBAAsB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC/F,gBAAgB,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,MAAM,EAAE,mBAAmB,EAAE;QAC7E,qBAAqB,EAAE,EAAE,GAAG,EAAE,0BAA0B,EAAE,MAAM,EAAE,wBAAwB,EAAE;QAC5F,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;AAC1F,KAAA;;;"}
|
|
1
|
+
{"version":3,"file":"Dot.styles.js","sources":["../../../../src/components/atoms/Dot/Dot.styles.ts"],"sourcesContent":[null],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;AAoBG;AACI,MAAM,MAAM,GAAG;AACpB,IAAA,KAAK,EAAE;AACL,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,EAAE;AAC3B,QAAA,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE;AAC3B,KAAA;AACD,IAAA,MAAM,EAAE;QACN,aAAa,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,gBAAgB,EAAE;QACzE,YAAY,EAAE,EAAE,GAAG,EAAE,iBAAiB,EAAE,MAAM,EAAE,eAAe,EAAE;QACjE,eAAe,EAAE,EAAE,GAAG,EAAE,oBAAoB,EAAE,MAAM,EAAE,kBAAkB,EAAE;QAC1E,sBAAsB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC/F,sBAAsB,EAAE,EAAE,GAAG,EAAE,2BAA2B,EAAE,MAAM,EAAE,yBAAyB,EAAE;QAC/F,gBAAgB,EAAE,EAAE,GAAG,EAAE,qBAAqB,EAAE,MAAM,EAAE,mBAAmB,EAAE;QAC7E,qBAAqB,EAAE,EAAE,GAAG,EAAE,0BAA0B,EAAE,MAAM,EAAE,wBAAwB,EAAE;QAC5F,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,mBAAmB,EAAE,EAAE,GAAG,EAAE,wBAAwB,EAAE,MAAM,EAAE,sBAAsB,EAAE;QACtF,iBAAiB,EAAE,EAAE,GAAG,EAAE,sBAAsB,EAAE,MAAM,EAAE,oBAAoB,EAAE;QAChF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;QACzF,kBAAkB,EAAE,EAAE,GAAG,EAAE,uBAAuB,EAAE,MAAM,EAAE,qBAAqB,EAAE;QACnF,oBAAoB,EAAE,EAAE,GAAG,EAAE,yBAAyB,EAAE,MAAM,EAAE,uBAAuB,EAAE;AAC1F,KAAA;;;"}
|
|
@@ -10,7 +10,7 @@ var testIdUtils = require('@flipdish/ui-library/utilities/testIdUtils');
|
|
|
10
10
|
var React = require('react');
|
|
11
11
|
var reactAriaComponents = require('react-aria-components');
|
|
12
12
|
var ScrollClosingPopover = require('../../../__internal__/popover/ScrollClosingPopover.cjs');
|
|
13
|
-
var
|
|
13
|
+
var useMultiSelectSelection = require('../hooks/useMultiSelectSelection.cjs');
|
|
14
14
|
var SelectItem = require('./SelectItem.cjs');
|
|
15
15
|
var SelectShared = require('./SelectShared.cjs');
|
|
16
16
|
|
|
@@ -46,41 +46,15 @@ const MultiSelectRoot = ({ items, children, size = 'md', selectedKeys, defaultSe
|
|
|
46
46
|
const rect = triggerRef.current.getBoundingClientRect();
|
|
47
47
|
setPopoverWidth(`${rect.width}px`);
|
|
48
48
|
}, []);
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
onSelectionChange?.(keys);
|
|
59
|
-
};
|
|
60
|
-
const handleReset = () => {
|
|
61
|
-
if (!isControlled)
|
|
62
|
-
setInternalSelectedKeys(new Set());
|
|
63
|
-
onReset?.();
|
|
64
|
-
};
|
|
65
|
-
// Every selectable key — from `items` when data-driven, else from the ids of the
|
|
66
|
-
// static `MultiSelect.Item` children, so "Select all" works in both modes.
|
|
67
|
-
const getSelectableKeys = () => {
|
|
68
|
-
if (items)
|
|
69
|
-
return new Set(items.map((item) => item.id));
|
|
70
|
-
if (typeof children === 'function')
|
|
71
|
-
return new Set();
|
|
72
|
-
return new Set(children_utils.flattenChildren(children)
|
|
73
|
-
.filter(React.isValidElement)
|
|
74
|
-
.map((child) => child.props.id)
|
|
75
|
-
.filter((id) => id != null));
|
|
76
|
-
};
|
|
77
|
-
const handleSelectAll = () => {
|
|
78
|
-
if (!isControlled)
|
|
79
|
-
setInternalSelectedKeys(getSelectableKeys());
|
|
80
|
-
onSelectAll?.();
|
|
81
|
-
};
|
|
82
|
-
const selectedCount = currentSelectedKeys instanceof Set ? currentSelectedKeys.size : currentSelectedKeys === 'all' ? (items?.length ?? 0) : 0;
|
|
83
|
-
const hasSelection = selectedCount > 0;
|
|
49
|
+
const { currentSelectedKeys, selectedCount, hasSelection, handleSelectionChange, handleReset, handleSelectAll } = useMultiSelectSelection.useMultiSelectSelection({
|
|
50
|
+
selectedKeys,
|
|
51
|
+
defaultSelectedKeys,
|
|
52
|
+
onSelectionChange,
|
|
53
|
+
onReset,
|
|
54
|
+
onSelectAll,
|
|
55
|
+
items,
|
|
56
|
+
children,
|
|
57
|
+
});
|
|
84
58
|
const handleClearSearch = React.useCallback(() => {
|
|
85
59
|
setSearchValue('');
|
|
86
60
|
}, []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.cjs","sources":["../../../../../src/components/molecules/Select/components/MultiSelect.tsx"],"sourcesContent":[null],"names":["_jsxs","cx","_jsx","Button","FeaturedIcon","SearchLg","useFilter","useState","useResolvedTestId","useRef","useCallback","
|
|
1
|
+
{"version":3,"file":"MultiSelect.cjs","sources":["../../../../../src/components/molecules/Select/components/MultiSelect.tsx"],"sourcesContent":[null],"names":["_jsxs","cx","_jsx","Button","FeaturedIcon","SearchLg","useFilter","useState","useResolvedTestId","useRef","useCallback","useMultiSelectSelection","SelectContext","Label","AriaDialogTrigger","AriaButton","joinTestId","sizes","ChevronDown","ScrollClosingPopover","AriaDialog","AriaAutocomplete","AriaSearchField","AriaInput","AriaListBox","HintText","SelectItem"],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.d.ts","sourceRoot":"","sources":["../../../../../src/components/molecules/Select/components/MultiSelect.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,OAAO,CAAC;AAEtD,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAavD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAC1C,OAAO,EAAE,KAAK,WAAW,EAAiB,KAAK,cAAc,EAAS,MAAM,gBAAgB,CAAC;AAoB7F,MAAM,WAAW,sBAAsB;IACrC;;;OAGG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,QAAA,MAAM,iBAAiB,GAAI,2CAAkD,sBAAsB,gCAalG,CAAC;AAEF,MAAM,WAAW,0BAA0B;IACzC;;;OAGG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,aAAa,CAAC,EAAE,MAAM,IAAI,CAAC;IAC3B,6BAA6B;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,QAAA,MAAM,qBAAqB,GAAI,mDAK5B,0BAA0B,gCAe5B,CAAC;AAEF,MAAM,WAAW,gBAAiB,SAAQ,aAAa,CAAC,cAAc,CAAC,EAAE,WAAW;IAClF,2CAA2C;IAC3C,KAAK,CAAC,EAAE,cAAc,EAAE,CAAC;IACzB,4CAA4C;IAC5C,QAAQ,EAAE,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC;IAC5D,gDAAgD;IAChD,YAAY,CAAC,EAAE,SAAS,CAAC;IACzB,gDAAgD;IAChD,mBAAmB,CAAC,EAAE,SAAS,CAAC;IAChC,yDAAyD;IACzD,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;IAC9C,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,iDAAiD;IACjD,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,gFAAgF;IAChF,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,6CAA6C;IAC7C,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,kDAAkD;IAClD,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,oEAAoE;IACpE,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,2DAA2D;IAC3D,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,iEAAiE;IACjE,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,mEAAmE;IACnE,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,SAAS,CAAC;IACtD,2EAA2E;IAC3E,cAAc,CAAC,EAAE,SAAS,CAAC;CAC5B;AAED,QAAA,MAAM,eAAe,GAAI,mYA4BtB,gBAAgB,
|
|
1
|
+
{"version":3,"file":"MultiSelect.d.ts","sourceRoot":"","sources":["../../../../../src/components/molecules/Select/components/MultiSelect.tsx"],"names":[],"mappings":"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"}
|
|
@@ -5,10 +5,10 @@ import { FeaturedIcon } from '@flipdish/ui-library/components/atoms/FeaturedIcon
|
|
|
5
5
|
import { Label, HintText } from '@flipdish/ui-library/components/atoms/Input';
|
|
6
6
|
import { cx } from '@flipdish/ui-library/utilities/cx';
|
|
7
7
|
import { useResolvedTestId, joinTestId } from '@flipdish/ui-library/utilities/testIdUtils';
|
|
8
|
-
import { useState, useRef, useCallback
|
|
8
|
+
import { useState, useRef, useCallback } from 'react';
|
|
9
9
|
import { useFilter, DialogTrigger, Button, Dialog, Autocomplete, SearchField, Input, ListBox } from 'react-aria-components';
|
|
10
10
|
import { ScrollClosingPopover } from '../../../__internal__/popover/ScrollClosingPopover.js';
|
|
11
|
-
import {
|
|
11
|
+
import { useMultiSelectSelection } from '../hooks/useMultiSelectSelection.js';
|
|
12
12
|
import { SelectItem } from './SelectItem.js';
|
|
13
13
|
import { SelectContext, sizes } from './SelectShared.js';
|
|
14
14
|
|
|
@@ -44,41 +44,15 @@ const MultiSelectRoot = ({ items, children, size = 'md', selectedKeys, defaultSe
|
|
|
44
44
|
const rect = triggerRef.current.getBoundingClientRect();
|
|
45
45
|
setPopoverWidth(`${rect.width}px`);
|
|
46
46
|
}, []);
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
onSelectionChange?.(keys);
|
|
57
|
-
};
|
|
58
|
-
const handleReset = () => {
|
|
59
|
-
if (!isControlled)
|
|
60
|
-
setInternalSelectedKeys(new Set());
|
|
61
|
-
onReset?.();
|
|
62
|
-
};
|
|
63
|
-
// Every selectable key — from `items` when data-driven, else from the ids of the
|
|
64
|
-
// static `MultiSelect.Item` children, so "Select all" works in both modes.
|
|
65
|
-
const getSelectableKeys = () => {
|
|
66
|
-
if (items)
|
|
67
|
-
return new Set(items.map((item) => item.id));
|
|
68
|
-
if (typeof children === 'function')
|
|
69
|
-
return new Set();
|
|
70
|
-
return new Set(flattenChildren(children)
|
|
71
|
-
.filter(isValidElement)
|
|
72
|
-
.map((child) => child.props.id)
|
|
73
|
-
.filter((id) => id != null));
|
|
74
|
-
};
|
|
75
|
-
const handleSelectAll = () => {
|
|
76
|
-
if (!isControlled)
|
|
77
|
-
setInternalSelectedKeys(getSelectableKeys());
|
|
78
|
-
onSelectAll?.();
|
|
79
|
-
};
|
|
80
|
-
const selectedCount = currentSelectedKeys instanceof Set ? currentSelectedKeys.size : currentSelectedKeys === 'all' ? (items?.length ?? 0) : 0;
|
|
81
|
-
const hasSelection = selectedCount > 0;
|
|
47
|
+
const { currentSelectedKeys, selectedCount, hasSelection, handleSelectionChange, handleReset, handleSelectAll } = useMultiSelectSelection({
|
|
48
|
+
selectedKeys,
|
|
49
|
+
defaultSelectedKeys,
|
|
50
|
+
onSelectionChange,
|
|
51
|
+
onReset,
|
|
52
|
+
onSelectAll,
|
|
53
|
+
items,
|
|
54
|
+
children,
|
|
55
|
+
});
|
|
82
56
|
const handleClearSearch = useCallback(() => {
|
|
83
57
|
setSearchValue('');
|
|
84
58
|
}, []);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MultiSelect.js","sources":["../../../../../src/components/molecules/Select/components/MultiSelect.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","Button","AriaDialogTrigger","AriaButton","AriaDialog","AriaAutocomplete","AriaSearchField","AriaInput","AriaListBox"],"mappings":"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
|
|
1
|
+
{"version":3,"file":"MultiSelect.js","sources":["../../../../../src/components/molecules/Select/components/MultiSelect.tsx"],"sourcesContent":[null],"names":["_jsxs","_jsx","Button","AriaDialogTrigger","AriaButton","AriaDialog","AriaAutocomplete","AriaSearchField","AriaInput","AriaListBox"],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var multiSelect_utils = require('../multiSelect.utils.cjs');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Tracks which MultiSelect options are chosen, internally when the parent does not pass
|
|
8
|
+
* `selectedKeys`, and reports the trigger count plus the footer handlers.
|
|
9
|
+
*
|
|
10
|
+
* @param options The selection props and the options the footer can select.
|
|
11
|
+
* @returns The selection to render, whether any option is chosen, how many, and the change, reset and select-all handlers.
|
|
12
|
+
*/
|
|
13
|
+
const useMultiSelectSelection = ({ selectedKeys, defaultSelectedKeys, onSelectionChange, onReset, onSelectAll, items, children, }) => {
|
|
14
|
+
// Controlled when `selectedKeys` is supplied; otherwise track selection internally
|
|
15
|
+
// (seeded from `defaultSelectedKeys`) so the trigger summary, footer, and item ticks
|
|
16
|
+
// all reflect choices even without the parent wiring `onSelectionChange`.
|
|
17
|
+
const isControlled = selectedKeys !== undefined;
|
|
18
|
+
const [internalSelectedKeys, setInternalSelectedKeys] = React.useState(defaultSelectedKeys ?? new Set());
|
|
19
|
+
const currentSelectedKeys = isControlled ? selectedKeys : internalSelectedKeys;
|
|
20
|
+
const handleSelectionChange = (keys) => {
|
|
21
|
+
if (!isControlled)
|
|
22
|
+
setInternalSelectedKeys(keys);
|
|
23
|
+
onSelectionChange?.(keys);
|
|
24
|
+
};
|
|
25
|
+
const handleReset = () => {
|
|
26
|
+
if (!isControlled)
|
|
27
|
+
setInternalSelectedKeys(new Set());
|
|
28
|
+
onReset?.();
|
|
29
|
+
};
|
|
30
|
+
const handleSelectAll = () => {
|
|
31
|
+
// Every selectable key — from `items` when data-driven, else from the ids of the
|
|
32
|
+
// static `MultiSelect.Item` children, so "Select all" works in both modes.
|
|
33
|
+
if (!isControlled)
|
|
34
|
+
setInternalSelectedKeys(multiSelect_utils.collectSelectableKeys(items ? items.map((item) => item.id) : undefined, children));
|
|
35
|
+
onSelectAll?.();
|
|
36
|
+
};
|
|
37
|
+
const selectedCount = multiSelect_utils.countSelectedKeys(currentSelectedKeys, items?.length ?? 0);
|
|
38
|
+
const hasSelection = selectedCount > 0;
|
|
39
|
+
return { currentSelectedKeys, selectedCount, hasSelection, handleSelectionChange, handleReset, handleSelectAll };
|
|
40
|
+
};
|
|
41
|
+
|
|
42
|
+
exports.useMultiSelectSelection = useMultiSelectSelection;
|
|
43
|
+
//# sourceMappingURL=useMultiSelectSelection.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMultiSelectSelection.cjs","sources":["../../../../../src/components/molecules/Select/hooks/useMultiSelectSelection.ts"],"sourcesContent":[null],"names":["useState","collectSelectableKeys","countSelectedKeys"],"mappings":";;;;;AAsBA;;;;;;AAMG;MACU,uBAAuB,GAAG,CAAC,EACtC,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,OAAO,EACP,WAAW,EACX,KAAK,EACL,QAAQ,GACuB,KAAI;;;;AAInC,IAAA,MAAM,YAAY,GAAG,YAAY,KAAK,SAAS;AAC/C,IAAA,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAGA,cAAQ,CAAuB,mBAAmB,IAAI,IAAI,GAAG,EAAE,CAAC;IACxH,MAAM,mBAAmB,GAAG,YAAY,GAAG,YAAY,GAAG,oBAAoB;AAE9E,IAAA,MAAM,qBAAqB,GAAG,CAAC,IAA0B,KAAI;AAC3D,QAAA,IAAI,CAAC,YAAY;YAAE,uBAAuB,CAAC,IAAI,CAAC;AAChD,QAAA,iBAAiB,GAAG,IAAI,CAAC;AAC3B,IAAA,CAAC;IAED,MAAM,WAAW,GAAG,MAAK;AACvB,QAAA,IAAI,CAAC,YAAY;AAAE,YAAA,uBAAuB,CAAC,IAAI,GAAG,EAAE,CAAC;QACrD,OAAO,IAAI;AACb,IAAA,CAAC;IAED,MAAM,eAAe,GAAG,MAAK;;;AAG3B,QAAA,IAAI,CAAC,YAAY;AAAE,YAAA,uBAAuB,CAACC,uCAAqB,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC7H,WAAW,IAAI;AACjB,IAAA,CAAC;AAED,IAAA,MAAM,aAAa,GAAGC,mCAAiB,CAAC,mBAAmB,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;AAChF,IAAA,MAAM,YAAY,GAAG,aAAa,GAAG,CAAC;AAEtC,IAAA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,eAAe,EAAE;AAClH;;"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { type MultiSelectChildren, type MultiSelectSelection } from '../multiSelect.utils';
|
|
2
|
+
export interface UseMultiSelectSelectionOptions {
|
|
3
|
+
/** Controlled selection. When omitted, the hook tracks selection itself. */
|
|
4
|
+
selectedKeys?: MultiSelectSelection;
|
|
5
|
+
/** Initial selection used only while uncontrolled. */
|
|
6
|
+
defaultSelectedKeys?: MultiSelectSelection;
|
|
7
|
+
/** Called with the next selection whenever the user changes it. */
|
|
8
|
+
onSelectionChange?: (keys: MultiSelectSelection) => void;
|
|
9
|
+
/** Called when Reset is pressed. Uncontrolled selection is cleared before this runs. */
|
|
10
|
+
onReset?: () => void;
|
|
11
|
+
/** Called when Select all is pressed. Uncontrolled selection is replaced before this runs. */
|
|
12
|
+
onSelectAll?: () => void;
|
|
13
|
+
/** Data-driven options. When set, Select all uses their ids and ignores static children. */
|
|
14
|
+
items?: readonly {
|
|
15
|
+
id: string | number;
|
|
16
|
+
}[];
|
|
17
|
+
/** Static item elements, or a render function when `items` is set. */
|
|
18
|
+
children?: MultiSelectChildren;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Tracks which MultiSelect options are chosen, internally when the parent does not pass
|
|
22
|
+
* `selectedKeys`, and reports the trigger count plus the footer handlers.
|
|
23
|
+
*
|
|
24
|
+
* @param options The selection props and the options the footer can select.
|
|
25
|
+
* @returns The selection to render, whether any option is chosen, how many, and the change, reset and select-all handlers.
|
|
26
|
+
*/
|
|
27
|
+
export declare const useMultiSelectSelection: ({ selectedKeys, defaultSelectedKeys, onSelectionChange, onReset, onSelectAll, items, children, }: UseMultiSelectSelectionOptions) => {
|
|
28
|
+
currentSelectedKeys: MultiSelectSelection;
|
|
29
|
+
selectedCount: number;
|
|
30
|
+
hasSelection: boolean;
|
|
31
|
+
handleSelectionChange: (keys: MultiSelectSelection) => void;
|
|
32
|
+
handleReset: () => void;
|
|
33
|
+
handleSelectAll: () => void;
|
|
34
|
+
};
|
|
35
|
+
//# sourceMappingURL=useMultiSelectSelection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMultiSelectSelection.d.ts","sourceRoot":"","sources":["../../../../../src/components/molecules/Select/hooks/useMultiSelectSelection.ts"],"names":[],"mappings":"AAGA,OAAO,EAA4C,KAAK,mBAAmB,EAAE,KAAK,oBAAoB,EAAE,MAAM,sBAAsB,CAAC;AAErI,MAAM,WAAW,8BAA8B;IAC7C,4EAA4E;IAC5E,YAAY,CAAC,EAAE,oBAAoB,CAAC;IACpC,sDAAsD;IACtD,mBAAmB,CAAC,EAAE,oBAAoB,CAAC;IAC3C,mEAAmE;IACnE,iBAAiB,CAAC,EAAE,CAAC,IAAI,EAAE,oBAAoB,KAAK,IAAI,CAAC;IACzD,wFAAwF;IACxF,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,8FAA8F;IAC9F,WAAW,CAAC,EAAE,MAAM,IAAI,CAAC;IACzB,4FAA4F;IAC5F,KAAK,CAAC,EAAE,SAAS;QAAE,EAAE,EAAE,MAAM,GAAG,MAAM,CAAA;KAAE,EAAE,CAAC;IAC3C,sEAAsE;IACtE,QAAQ,CAAC,EAAE,mBAAmB,CAAC;CAChC;AAED;;;;;;GAMG;AACH,eAAO,MAAM,uBAAuB,GAAI,kGAQrC,8BAA8B;;;;kCAQM,oBAAoB;;;CAqB1D,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { useState } from 'react';
|
|
2
|
+
import { countSelectedKeys, collectSelectableKeys } from '../multiSelect.utils.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Tracks which MultiSelect options are chosen, internally when the parent does not pass
|
|
6
|
+
* `selectedKeys`, and reports the trigger count plus the footer handlers.
|
|
7
|
+
*
|
|
8
|
+
* @param options The selection props and the options the footer can select.
|
|
9
|
+
* @returns The selection to render, whether any option is chosen, how many, and the change, reset and select-all handlers.
|
|
10
|
+
*/
|
|
11
|
+
const useMultiSelectSelection = ({ selectedKeys, defaultSelectedKeys, onSelectionChange, onReset, onSelectAll, items, children, }) => {
|
|
12
|
+
// Controlled when `selectedKeys` is supplied; otherwise track selection internally
|
|
13
|
+
// (seeded from `defaultSelectedKeys`) so the trigger summary, footer, and item ticks
|
|
14
|
+
// all reflect choices even without the parent wiring `onSelectionChange`.
|
|
15
|
+
const isControlled = selectedKeys !== undefined;
|
|
16
|
+
const [internalSelectedKeys, setInternalSelectedKeys] = useState(defaultSelectedKeys ?? new Set());
|
|
17
|
+
const currentSelectedKeys = isControlled ? selectedKeys : internalSelectedKeys;
|
|
18
|
+
const handleSelectionChange = (keys) => {
|
|
19
|
+
if (!isControlled)
|
|
20
|
+
setInternalSelectedKeys(keys);
|
|
21
|
+
onSelectionChange?.(keys);
|
|
22
|
+
};
|
|
23
|
+
const handleReset = () => {
|
|
24
|
+
if (!isControlled)
|
|
25
|
+
setInternalSelectedKeys(new Set());
|
|
26
|
+
onReset?.();
|
|
27
|
+
};
|
|
28
|
+
const handleSelectAll = () => {
|
|
29
|
+
// Every selectable key — from `items` when data-driven, else from the ids of the
|
|
30
|
+
// static `MultiSelect.Item` children, so "Select all" works in both modes.
|
|
31
|
+
if (!isControlled)
|
|
32
|
+
setInternalSelectedKeys(collectSelectableKeys(items ? items.map((item) => item.id) : undefined, children));
|
|
33
|
+
onSelectAll?.();
|
|
34
|
+
};
|
|
35
|
+
const selectedCount = countSelectedKeys(currentSelectedKeys, items?.length ?? 0);
|
|
36
|
+
const hasSelection = selectedCount > 0;
|
|
37
|
+
return { currentSelectedKeys, selectedCount, hasSelection, handleSelectionChange, handleReset, handleSelectAll };
|
|
38
|
+
};
|
|
39
|
+
|
|
40
|
+
export { useMultiSelectSelection };
|
|
41
|
+
//# sourceMappingURL=useMultiSelectSelection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"useMultiSelectSelection.js","sources":["../../../../../src/components/molecules/Select/hooks/useMultiSelectSelection.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAsBA;;;;;;AAMG;MACU,uBAAuB,GAAG,CAAC,EACtC,YAAY,EACZ,mBAAmB,EACnB,iBAAiB,EACjB,OAAO,EACP,WAAW,EACX,KAAK,EACL,QAAQ,GACuB,KAAI;;;;AAInC,IAAA,MAAM,YAAY,GAAG,YAAY,KAAK,SAAS;AAC/C,IAAA,MAAM,CAAC,oBAAoB,EAAE,uBAAuB,CAAC,GAAG,QAAQ,CAAuB,mBAAmB,IAAI,IAAI,GAAG,EAAE,CAAC;IACxH,MAAM,mBAAmB,GAAG,YAAY,GAAG,YAAY,GAAG,oBAAoB;AAE9E,IAAA,MAAM,qBAAqB,GAAG,CAAC,IAA0B,KAAI;AAC3D,QAAA,IAAI,CAAC,YAAY;YAAE,uBAAuB,CAAC,IAAI,CAAC;AAChD,QAAA,iBAAiB,GAAG,IAAI,CAAC;AAC3B,IAAA,CAAC;IAED,MAAM,WAAW,GAAG,MAAK;AACvB,QAAA,IAAI,CAAC,YAAY;AAAE,YAAA,uBAAuB,CAAC,IAAI,GAAG,EAAE,CAAC;QACrD,OAAO,IAAI;AACb,IAAA,CAAC;IAED,MAAM,eAAe,GAAG,MAAK;;;AAG3B,QAAA,IAAI,CAAC,YAAY;AAAE,YAAA,uBAAuB,CAAC,qBAAqB,CAAC,KAAK,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,EAAE,CAAC,GAAG,SAAS,EAAE,QAAQ,CAAC,CAAC;QAC7H,WAAW,IAAI;AACjB,IAAA,CAAC;AAED,IAAA,MAAM,aAAa,GAAG,iBAAiB,CAAC,mBAAmB,EAAE,KAAK,EAAE,MAAM,IAAI,CAAC,CAAC;AAChF,IAAA,MAAM,YAAY,GAAG,aAAa,GAAG,CAAC;AAEtC,IAAA,OAAO,EAAE,mBAAmB,EAAE,aAAa,EAAE,YAAY,EAAE,qBAAqB,EAAE,WAAW,EAAE,eAAe,EAAE;AAClH;;"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
var React = require('react');
|
|
4
|
+
var children_utils = require('../../../utilities/__internal__/childrenUtils/children.utils.cjs');
|
|
5
|
+
|
|
6
|
+
/**
|
|
7
|
+
* Counts how many options the trigger should report as selected.
|
|
8
|
+
*
|
|
9
|
+
* @param selection The current selection. A set counts its members; `'all'` counts the data-driven list.
|
|
10
|
+
* @param itemCount Length of the `items` array. Used only when `selection` is `'all'`, and zero when that list is absent.
|
|
11
|
+
* @returns The number shown in the trigger. Zero when the selection is neither a set nor `'all'`.
|
|
12
|
+
*/
|
|
13
|
+
const countSelectedKeys = (selection, itemCount) => selection instanceof Set ? selection.size : selection === 'all' ? itemCount : 0;
|
|
14
|
+
/**
|
|
15
|
+
* Collects the keys Select all applies.
|
|
16
|
+
*
|
|
17
|
+
* @param itemIds Ids from a data-driven `items` list. When present, even empty, static children are ignored.
|
|
18
|
+
* @param children Static `MultiSelect.Item` elements, or a render function that carries no ids.
|
|
19
|
+
* @returns Those ids. Empty when children is a render function and no items were passed.
|
|
20
|
+
*/
|
|
21
|
+
const collectSelectableKeys = (itemIds, children) => {
|
|
22
|
+
if (itemIds)
|
|
23
|
+
return new Set(itemIds);
|
|
24
|
+
if (typeof children === 'function')
|
|
25
|
+
return new Set();
|
|
26
|
+
return new Set(children_utils.flattenChildren(children)
|
|
27
|
+
.filter(React.isValidElement)
|
|
28
|
+
.map((child) => child.props.id)
|
|
29
|
+
.filter((id) => id != null));
|
|
30
|
+
};
|
|
31
|
+
|
|
32
|
+
exports.collectSelectableKeys = collectSelectableKeys;
|
|
33
|
+
exports.countSelectedKeys = countSelectedKeys;
|
|
34
|
+
//# sourceMappingURL=multiSelect.utils.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiSelect.utils.cjs","sources":["../../../../src/components/molecules/Select/multiSelect.utils.ts"],"sourcesContent":[null],"names":["flattenChildren","isValidElement"],"mappings":";;;;;AAUA;;;;;;AAMG;AACI,MAAM,iBAAiB,GAAG,CAAC,SAA+B,EAAE,SAAiB,KAClF,SAAS,YAAY,GAAG,GAAG,SAAS,CAAC,IAAI,GAAG,SAAS,KAAK,KAAK,GAAG,SAAS,GAAG;AAEhF;;;;;;AAMG;MACU,qBAAqB,GAAG,CAAC,OAAiD,EAAE,QAA6B,KAA0B;AAC9I,IAAA,IAAI,OAAO;AAAE,QAAA,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;IACpC,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO,IAAI,GAAG,EAAE;AAEpD,IAAA,OAAO,IAAI,GAAG,CACZA,8BAAe,CAAC,QAAQ;SACrB,MAAM,CAACC,oBAAc;SACrB,GAAG,CAAC,CAAC,KAAK,KAAM,KAAK,CAAC,KAAkC,CAAC,EAAE;SAC3D,MAAM,CAAC,CAAC,EAAE,KAA4B,EAAE,IAAI,IAAI,CAAC,CACrD;AACH;;;"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { type ReactNode } from 'react';
|
|
2
|
+
import type { SelectItemType } from './components/SelectShared';
|
|
3
|
+
/** Explicit keys, or `'all'` when every option is selected. */
|
|
4
|
+
export type MultiSelectSelection = 'all' | Set<string | number>;
|
|
5
|
+
/** Static item elements, or a render function when the list is data-driven. */
|
|
6
|
+
export type MultiSelectChildren = ReactNode | ((item: SelectItemType) => ReactNode);
|
|
7
|
+
/**
|
|
8
|
+
* Counts how many options the trigger should report as selected.
|
|
9
|
+
*
|
|
10
|
+
* @param selection The current selection. A set counts its members; `'all'` counts the data-driven list.
|
|
11
|
+
* @param itemCount Length of the `items` array. Used only when `selection` is `'all'`, and zero when that list is absent.
|
|
12
|
+
* @returns The number shown in the trigger. Zero when the selection is neither a set nor `'all'`.
|
|
13
|
+
*/
|
|
14
|
+
export declare const countSelectedKeys: (selection: MultiSelectSelection, itemCount: number) => number;
|
|
15
|
+
/**
|
|
16
|
+
* Collects the keys Select all applies.
|
|
17
|
+
*
|
|
18
|
+
* @param itemIds Ids from a data-driven `items` list. When present, even empty, static children are ignored.
|
|
19
|
+
* @param children Static `MultiSelect.Item` elements, or a render function that carries no ids.
|
|
20
|
+
* @returns Those ids. Empty when children is a render function and no items were passed.
|
|
21
|
+
*/
|
|
22
|
+
export declare const collectSelectableKeys: (itemIds: readonly (string | number)[] | undefined, children: MultiSelectChildren) => Set<string | number>;
|
|
23
|
+
//# sourceMappingURL=multiSelect.utils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiSelect.utils.d.ts","sourceRoot":"","sources":["../../../../src/components/molecules/Select/multiSelect.utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAkB,KAAK,SAAS,EAAE,MAAM,OAAO,CAAC;AAEvD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAEhE,+DAA+D;AAC/D,MAAM,MAAM,oBAAoB,GAAG,KAAK,GAAG,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC,CAAC;AAEhE,+EAA+E;AAC/E,MAAM,MAAM,mBAAmB,GAAG,SAAS,GAAG,CAAC,CAAC,IAAI,EAAE,cAAc,KAAK,SAAS,CAAC,CAAC;AAEpF;;;;;;GAMG;AACH,eAAO,MAAM,iBAAiB,GAAI,WAAW,oBAAoB,EAAE,WAAW,MAAM,KAAG,MACN,CAAC;AAElF;;;;;;GAMG;AACH,eAAO,MAAM,qBAAqB,GAAI,SAAS,SAAS,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,SAAS,EAAE,UAAU,mBAAmB,KAAG,GAAG,CAAC,MAAM,GAAG,MAAM,CAU3I,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { isValidElement } from 'react';
|
|
2
|
+
import { flattenChildren } from '../../../utilities/__internal__/childrenUtils/children.utils.js';
|
|
3
|
+
|
|
4
|
+
/**
|
|
5
|
+
* Counts how many options the trigger should report as selected.
|
|
6
|
+
*
|
|
7
|
+
* @param selection The current selection. A set counts its members; `'all'` counts the data-driven list.
|
|
8
|
+
* @param itemCount Length of the `items` array. Used only when `selection` is `'all'`, and zero when that list is absent.
|
|
9
|
+
* @returns The number shown in the trigger. Zero when the selection is neither a set nor `'all'`.
|
|
10
|
+
*/
|
|
11
|
+
const countSelectedKeys = (selection, itemCount) => selection instanceof Set ? selection.size : selection === 'all' ? itemCount : 0;
|
|
12
|
+
/**
|
|
13
|
+
* Collects the keys Select all applies.
|
|
14
|
+
*
|
|
15
|
+
* @param itemIds Ids from a data-driven `items` list. When present, even empty, static children are ignored.
|
|
16
|
+
* @param children Static `MultiSelect.Item` elements, or a render function that carries no ids.
|
|
17
|
+
* @returns Those ids. Empty when children is a render function and no items were passed.
|
|
18
|
+
*/
|
|
19
|
+
const collectSelectableKeys = (itemIds, children) => {
|
|
20
|
+
if (itemIds)
|
|
21
|
+
return new Set(itemIds);
|
|
22
|
+
if (typeof children === 'function')
|
|
23
|
+
return new Set();
|
|
24
|
+
return new Set(flattenChildren(children)
|
|
25
|
+
.filter(isValidElement)
|
|
26
|
+
.map((child) => child.props.id)
|
|
27
|
+
.filter((id) => id != null));
|
|
28
|
+
};
|
|
29
|
+
|
|
30
|
+
export { collectSelectableKeys, countSelectedKeys };
|
|
31
|
+
//# sourceMappingURL=multiSelect.utils.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"multiSelect.utils.js","sources":["../../../../src/components/molecules/Select/multiSelect.utils.ts"],"sourcesContent":[null],"names":[],"mappings":";;;AAUA;;;;;;AAMG;AACI,MAAM,iBAAiB,GAAG,CAAC,SAA+B,EAAE,SAAiB,KAClF,SAAS,YAAY,GAAG,GAAG,SAAS,CAAC,IAAI,GAAG,SAAS,KAAK,KAAK,GAAG,SAAS,GAAG;AAEhF;;;;;;AAMG;MACU,qBAAqB,GAAG,CAAC,OAAiD,EAAE,QAA6B,KAA0B;AAC9I,IAAA,IAAI,OAAO;AAAE,QAAA,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC;IACpC,IAAI,OAAO,QAAQ,KAAK,UAAU;QAAE,OAAO,IAAI,GAAG,EAAE;AAEpD,IAAA,OAAO,IAAI,GAAG,CACZ,eAAe,CAAC,QAAQ;SACrB,MAAM,CAAC,cAAc;SACrB,GAAG,CAAC,CAAC,KAAK,KAAM,KAAK,CAAC,KAAkC,CAAC,EAAE;SAC3D,MAAM,CAAC,CAAC,EAAE,KAA4B,EAAE,IAAI,IAAI,CAAC,CACrD;AACH;;"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* Shared `Tags` style config, read by both `index.tsx` and `index.native.tsx`.
|
|
5
|
+
*
|
|
6
|
+
* Complete literal class names only — Tailwind scans source for whole candidates.
|
|
7
|
+
* `native` holds pixel sizes and light-mode hex colours that React Native needs as
|
|
8
|
+
* plain `style` / icon props (no `currentColor`, and `Text` ignores `className` under
|
|
9
|
+
* the current `react-native-css` preview).
|
|
10
|
+
*/
|
|
11
|
+
const styles = {
|
|
12
|
+
sizes: {
|
|
13
|
+
sm: {
|
|
14
|
+
root: {
|
|
15
|
+
base: 'px-2 py-0.75 text-xs font-medium',
|
|
16
|
+
withCheckbox: 'pl-1.25',
|
|
17
|
+
withAvatar: 'pl-1',
|
|
18
|
+
withDot: 'pl-1.5',
|
|
19
|
+
withCount: 'pr-1',
|
|
20
|
+
withClose: 'pr-1',
|
|
21
|
+
},
|
|
22
|
+
content: 'gap-1',
|
|
23
|
+
count: 'px-1 text-xs font-medium',
|
|
24
|
+
},
|
|
25
|
+
md: {
|
|
26
|
+
root: {
|
|
27
|
+
base: 'px-2.25 py-0.5 text-sm font-medium',
|
|
28
|
+
withCheckbox: 'pl-1',
|
|
29
|
+
withAvatar: 'pl-1.25',
|
|
30
|
+
withDot: 'pl-1.75',
|
|
31
|
+
withCount: 'pr-0.75',
|
|
32
|
+
withClose: 'pr-1',
|
|
33
|
+
},
|
|
34
|
+
content: 'gap-1.25',
|
|
35
|
+
count: 'px-1.25 text-xs font-medium',
|
|
36
|
+
},
|
|
37
|
+
lg: {
|
|
38
|
+
root: {
|
|
39
|
+
base: 'px-2.5 py-1 text-sm font-medium',
|
|
40
|
+
withCheckbox: 'pl-1.25',
|
|
41
|
+
withAvatar: 'pl-1.75',
|
|
42
|
+
withDot: 'pl-2.25',
|
|
43
|
+
withCount: 'pr-1',
|
|
44
|
+
withClose: 'pr-1',
|
|
45
|
+
},
|
|
46
|
+
content: 'gap-1.5',
|
|
47
|
+
count: 'px-1.5 text-sm font-medium',
|
|
48
|
+
},
|
|
49
|
+
},
|
|
50
|
+
/** Shared chrome for every tag root (size-specific padding lives under `sizes`). */
|
|
51
|
+
root: 'flex cursor-default items-center gap-0.75 rounded-md bg-primary text-secondary ring-1 ring-primary outline-focus-ring transition duration-50 ease-linear ring-inset focus-visible:outline-2 focus-visible:outline-offset-2',
|
|
52
|
+
close: {
|
|
53
|
+
sm: { root: 'p-0.5', icon: 'size-2.5 stroke-[3.6px]' },
|
|
54
|
+
md: { root: 'p-0.5', icon: 'size-3 stroke-[2.86px]' },
|
|
55
|
+
lg: { root: 'p-0.75', icon: 'size-3.5 stroke-3' },
|
|
56
|
+
},
|
|
57
|
+
checkbox: {
|
|
58
|
+
sm: { root: 'size-3.5', icon: 'size-2.5' },
|
|
59
|
+
md: { root: 'size-4', icon: 'size-3' },
|
|
60
|
+
lg: { root: 'size-4.5', icon: 'size-3.5' },
|
|
61
|
+
},
|
|
62
|
+
avatar: 'relative inline-flex size-4 shrink-0 items-center justify-center overflow-hidden rounded-full bg-tertiary',
|
|
63
|
+
count: 'flex items-center justify-center rounded-[3px] bg-tertiary text-center'};
|
|
64
|
+
|
|
65
|
+
exports.styles = styles;
|
|
66
|
+
//# sourceMappingURL=Tags.styles.cjs.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Tags.styles.cjs","sources":["../../../../src/components/molecules/Tags/Tags.styles.ts"],"sourcesContent":[null],"names":[],"mappings":";;AAAA;;;;;;;AAOG;AACI,MAAM,MAAM,GAAG;AACpB,IAAA,KAAK,EAAE;AACL,QAAA,EAAE,EAAE;AACF,YAAA,IAAI,EAAE;AACJ,gBAAA,IAAI,EAAE,kCAAkC;AACxC,gBAAA,YAAY,EAAE,SAAS;AACvB,gBAAA,UAAU,EAAE,MAAM;AAClB,gBAAA,OAAO,EAAE,QAAQ;AACjB,gBAAA,SAAS,EAAE,MAAM;AACjB,gBAAA,SAAS,EAAE,MAAM;AAClB,aAAA;AACD,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,KAAK,EAAE,0BAA0B;AAClC,SAAA;AACD,QAAA,EAAE,EAAE;AACF,YAAA,IAAI,EAAE;AACJ,gBAAA,IAAI,EAAE,oCAAoC;AAC1C,gBAAA,YAAY,EAAE,MAAM;AACpB,gBAAA,UAAU,EAAE,SAAS;AACrB,gBAAA,OAAO,EAAE,SAAS;AAClB,gBAAA,SAAS,EAAE,SAAS;AACpB,gBAAA,SAAS,EAAE,MAAM;AAClB,aAAA;AACD,YAAA,OAAO,EAAE,UAAU;AACnB,YAAA,KAAK,EAAE,6BAA6B;AACrC,SAAA;AACD,QAAA,EAAE,EAAE;AACF,YAAA,IAAI,EAAE;AACJ,gBAAA,IAAI,EAAE,iCAAiC;AACvC,gBAAA,YAAY,EAAE,SAAS;AACvB,gBAAA,UAAU,EAAE,SAAS;AACrB,gBAAA,OAAO,EAAE,SAAS;AAClB,gBAAA,SAAS,EAAE,MAAM;AACjB,gBAAA,SAAS,EAAE,MAAM;AAClB,aAAA;AACD,YAAA,OAAO,EAAE,SAAS;AAClB,YAAA,KAAK,EAAE,4BAA4B;AACpC,SAAA;AACF,KAAA;;AAED,IAAA,IAAI,EAAE,4NAA4N;IAGlO,KAAK,EAAE;QACL,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,yBAAyB,EAAE;QACtD,EAAE,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,IAAI,EAAE,wBAAwB,EAAE;QACrD,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,mBAAmB,EAAE;AAClD,KAAA;AACD,IAAA,QAAQ,EAAE;QACR,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE;QAC1C,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,QAAQ,EAAE;QACtC,EAAE,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,IAAI,EAAE,UAAU,EAAE;AAC3C,KAAA;AACD,IAAA,MAAM,EAAE,2GAA2G;AACnH,IAAA,KAAK,EAAE;;"}
|