@cloudscape-design/components 3.0.930 → 3.0.932

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. package/internal/components/option/interfaces.d.ts +1 -1
  2. package/internal/components/option/interfaces.d.ts.map +1 -1
  3. package/internal/components/option/interfaces.js.map +1 -1
  4. package/internal/components/option/utils/prepare-options.d.ts +1 -0
  5. package/internal/components/option/utils/prepare-options.d.ts.map +1 -1
  6. package/internal/components/option/utils/prepare-options.js +1 -0
  7. package/internal/components/option/utils/prepare-options.js.map +1 -1
  8. package/internal/components/options-list/index.d.ts +1 -0
  9. package/internal/components/options-list/index.d.ts.map +1 -1
  10. package/internal/components/options-list/index.js +2 -2
  11. package/internal/components/options-list/index.js.map +1 -1
  12. package/internal/components/selectable-item/index.d.ts.map +1 -1
  13. package/internal/components/selectable-item/index.js +2 -1
  14. package/internal/components/selectable-item/index.js.map +1 -1
  15. package/internal/components/selectable-item/interfaces.d.ts +1 -0
  16. package/internal/components/selectable-item/interfaces.d.ts.map +1 -1
  17. package/internal/components/selectable-item/interfaces.js.map +1 -1
  18. package/internal/components/selectable-item/styles.css.js +20 -19
  19. package/internal/components/selectable-item/styles.scoped.css +41 -37
  20. package/internal/components/selectable-item/styles.selectors.js +20 -19
  21. package/internal/environment.js +1 -1
  22. package/internal/environment.json +1 -1
  23. package/internal/manifest.json +1 -1
  24. package/multiselect/interfaces.d.ts +11 -2
  25. package/multiselect/interfaces.d.ts.map +1 -1
  26. package/multiselect/interfaces.js.map +1 -1
  27. package/multiselect/internal.d.ts.map +1 -1
  28. package/multiselect/internal.js +5 -3
  29. package/multiselect/internal.js.map +1 -1
  30. package/multiselect/use-multiselect.d.ts +7 -4
  31. package/multiselect/use-multiselect.d.ts.map +1 -1
  32. package/multiselect/use-multiselect.js +33 -9
  33. package/multiselect/use-multiselect.js.map +1 -1
  34. package/package.json +1 -1
  35. package/select/parts/common.d.ts +2 -0
  36. package/select/parts/common.d.ts.map +1 -0
  37. package/select/parts/common.js +4 -0
  38. package/select/parts/common.js.map +1 -0
  39. package/select/parts/multiselect-item.d.ts.map +1 -1
  40. package/select/parts/multiselect-item.js +3 -2
  41. package/select/parts/multiselect-item.js.map +1 -1
  42. package/select/parts/plain-list.d.ts.map +1 -1
  43. package/select/parts/plain-list.js +22 -14
  44. package/select/parts/plain-list.js.map +1 -1
  45. package/select/parts/virtual-list.d.ts.map +1 -1
  46. package/select/parts/virtual-list.js +26 -9
  47. package/select/parts/virtual-list.js.map +1 -1
  48. package/select/utils/render-options.d.ts +4 -3
  49. package/select/utils/render-options.d.ts.map +1 -1
  50. package/select/utils/render-options.js +5 -5
  51. package/select/utils/render-options.js.map +1 -1
  52. package/select/utils/scroll-to-index.d.ts +5 -0
  53. package/select/utils/scroll-to-index.d.ts.map +1 -0
  54. package/select/utils/scroll-to-index.js +14 -0
  55. package/select/utils/scroll-to-index.js.map +1 -0
  56. package/select/utils/use-select.d.ts +4 -1
  57. package/select/utils/use-select.d.ts.map +1 -1
  58. package/select/utils/use-select.js +18 -9
  59. package/select/utils/use-select.js.map +1 -1
  60. package/table/body-cell/styles.css.js +46 -46
  61. package/table/body-cell/styles.scoped.css +378 -369
  62. package/table/body-cell/styles.selectors.js +46 -46
  63. package/table/internal.d.ts.map +1 -1
  64. package/table/internal.js +2 -0
  65. package/table/internal.js.map +1 -1
  66. package/table/use-prevent-sticky-click-scroll.d.ts +3 -0
  67. package/table/use-prevent-sticky-click-scroll.d.ts.map +1 -0
  68. package/table/use-prevent-sticky-click-scroll.js +79 -0
  69. package/table/use-prevent-sticky-click-scroll.js.map +1 -0
  70. package/test-utils/dom/internal/dropdown-host.d.ts +20 -2
  71. package/test-utils/dom/internal/dropdown-host.js +33 -2
  72. package/test-utils/dom/internal/dropdown-host.js.map +1 -1
  73. package/test-utils/selectors/internal/dropdown-host.d.ts +1 -0
  74. package/test-utils/selectors/internal/dropdown-host.js +6 -0
  75. package/test-utils/selectors/internal/dropdown-host.js.map +1 -1
  76. package/test-utils/tsconfig.tsbuildinfo +1 -1
@@ -26,7 +26,7 @@ export interface OptionGroup extends BaseOption {
26
26
  options: ReadonlyArray<OptionDefinition>;
27
27
  }
28
28
  export interface DropdownOption {
29
- type?: string;
29
+ type?: 'child' | 'parent' | 'select-all' | 'use-entered';
30
30
  disabled?: boolean;
31
31
  disabledReason?: string;
32
32
  option: OptionDefinition | OptionGroup;
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/option/interfaces.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,wBAAyB,SAAQ,gBAAgB;IACzD,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,OAAO,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,gBAAgB,GAAG,WAAW,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/option/interfaces.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AACrD,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAE1D,UAAU,UAAU;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IAC7B,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,SAAS,CAAC,IAAI,CAAC;IAC1B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC3B;AAED,MAAM,WAAW,gBAAiB,SAAQ,UAAU;IAClD,aAAa,CAAC,EAAE,MAAM,CAAC;CACxB;AAED,UAAU,wBAAyB,SAAQ,gBAAgB;IACzD,YAAY,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAChC;AAED,MAAM,WAAW,WAAY,SAAQ,UAAU;IAC7C,OAAO,EAAE,aAAa,CAAC,gBAAgB,CAAC,CAAC;CAC1C;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,CAAC,EAAE,OAAO,GAAG,QAAQ,GAAG,YAAY,GAAG,aAAa,CAAC;IACzD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,MAAM,EAAE,gBAAgB,GAAG,WAAW,CAAC;IACvC,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD,MAAM,CAAC,EAAE,wBAAwB,CAAC;IAClC,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAC5B,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B"}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../../src/internal/components/option/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nimport { IconProps } from '../../../icon/interfaces';\nimport { BaseComponentProps } from '../../base-component';\n\ninterface BaseOption {\n value?: string;\n label?: string;\n lang?: string;\n description?: string;\n disabled?: boolean;\n disabledReason?: string;\n labelTag?: string;\n tags?: ReadonlyArray<string>;\n filteringTags?: ReadonlyArray<string>;\n iconAlt?: string;\n iconName?: IconProps.Name;\n iconUrl?: string;\n iconSvg?: React.ReactNode;\n}\n\nexport interface OptionDefinition extends BaseOption {\n __labelPrefix?: string;\n}\n\ninterface InternalOptionDefinition extends OptionDefinition {\n __customIcon?: React.ReactNode;\n}\n\nexport interface OptionGroup extends BaseOption {\n options: ReadonlyArray<OptionDefinition>;\n}\n\nexport interface DropdownOption {\n type?: string;\n disabled?: boolean;\n disabledReason?: string;\n option: OptionDefinition | OptionGroup;\n afterHeader?: boolean;\n}\n\nexport interface OptionProps extends BaseComponentProps {\n option?: InternalOptionDefinition;\n triggerVariant?: boolean;\n highlightText?: string;\n highlightedOption?: boolean;\n selectedOption?: boolean;\n isGroupOption?: boolean;\n isGenericGroup?: boolean;\n}\n"]}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../../src/internal/components/option/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nimport { IconProps } from '../../../icon/interfaces';\nimport { BaseComponentProps } from '../../base-component';\n\ninterface BaseOption {\n value?: string;\n label?: string;\n lang?: string;\n description?: string;\n disabled?: boolean;\n disabledReason?: string;\n labelTag?: string;\n tags?: ReadonlyArray<string>;\n filteringTags?: ReadonlyArray<string>;\n iconAlt?: string;\n iconName?: IconProps.Name;\n iconUrl?: string;\n iconSvg?: React.ReactNode;\n}\n\nexport interface OptionDefinition extends BaseOption {\n __labelPrefix?: string;\n}\n\ninterface InternalOptionDefinition extends OptionDefinition {\n __customIcon?: React.ReactNode;\n}\n\nexport interface OptionGroup extends BaseOption {\n options: ReadonlyArray<OptionDefinition>;\n}\n\nexport interface DropdownOption {\n type?: 'child' | 'parent' | 'select-all' | 'use-entered';\n disabled?: boolean;\n disabledReason?: string;\n option: OptionDefinition | OptionGroup;\n afterHeader?: boolean;\n}\n\nexport interface OptionProps extends BaseComponentProps {\n option?: InternalOptionDefinition;\n triggerVariant?: boolean;\n highlightText?: string;\n highlightedOption?: boolean;\n selectedOption?: boolean;\n isGroupOption?: boolean;\n isGenericGroup?: boolean;\n}\n"]}
@@ -1,5 +1,6 @@
1
1
  import { SelectProps } from '../../../../select/interfaces';
2
2
  export declare function prepareOptions(options: SelectProps.Options, filteringType: SelectProps.FilteringType, filteringText: string): {
3
+ flatOptions: import("../interfaces").DropdownOption[];
3
4
  filteredOptions: readonly import("../interfaces").DropdownOption[];
4
5
  parentMap: Map<import("../interfaces").DropdownOption, import("../interfaces").DropdownOption>;
5
6
  totalCount: number;
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-options.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/prepare-options.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAK5D,wBAAgB,cAAc,CAC5B,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,aAAa,EAAE,WAAW,CAAC,aAAa,EACxC,aAAa,EAAE,MAAM;;;;;EAWtB"}
1
+ {"version":3,"file":"prepare-options.d.ts","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/prepare-options.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAK5D,wBAAgB,cAAc,CAC5B,OAAO,EAAE,WAAW,CAAC,OAAO,EAC5B,aAAa,EAAE,WAAW,CAAC,aAAa,EACxC,aAAa,EAAE,MAAM;;;;;;EAYtB"}
@@ -6,6 +6,7 @@ export function prepareOptions(options, filteringType, filteringText) {
6
6
  const filteredOptions = filteringType !== 'auto' ? flatOptions : filterOptions(flatOptions, filteringText);
7
7
  generateTestIndexes(filteredOptions, parentMap.get.bind(parentMap));
8
8
  return {
9
+ flatOptions,
9
10
  filteredOptions,
10
11
  parentMap,
11
12
  totalCount: flatOptions.length,
@@ -1 +1 @@
1
- {"version":3,"file":"prepare-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/prepare-options.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,UAAU,cAAc,CAC5B,OAA4B,EAC5B,aAAwC,EACxC,aAAqB;IAErB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC3G,mBAAmB,CAAC,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACpE,OAAO;QACL,eAAe;QACf,SAAS;QACT,UAAU,EAAE,WAAW,CAAC,MAAM;QAC9B,YAAY,EAAE,eAAe,CAAC,MAAM;KACrC,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { SelectProps } from '../../../../select/interfaces';\nimport { generateTestIndexes } from '../../options-list/utils/test-indexes';\nimport { filterOptions } from './filter-options';\nimport { flattenOptions } from './flatten-options';\n\nexport function prepareOptions(\n options: SelectProps.Options,\n filteringType: SelectProps.FilteringType,\n filteringText: string\n) {\n const { flatOptions, parentMap } = flattenOptions(options);\n const filteredOptions = filteringType !== 'auto' ? flatOptions : filterOptions(flatOptions, filteringText);\n generateTestIndexes(filteredOptions, parentMap.get.bind(parentMap));\n return {\n filteredOptions,\n parentMap,\n totalCount: flatOptions.length,\n matchesCount: filteredOptions.length,\n };\n}\n"]}
1
+ {"version":3,"file":"prepare-options.js","sourceRoot":"","sources":["../../../../../../src/internal/components/option/utils/prepare-options.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAC5E,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEnD,MAAM,UAAU,cAAc,CAC5B,OAA4B,EAC5B,aAAwC,EACxC,aAAqB;IAErB,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3D,MAAM,eAAe,GAAG,aAAa,KAAK,MAAM,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,aAAa,CAAC,WAAW,EAAE,aAAa,CAAC,CAAC;IAC3G,mBAAmB,CAAC,eAAe,EAAE,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACpE,OAAO;QACL,WAAW;QACX,eAAe;QACf,SAAS;QACT,UAAU,EAAE,WAAW,CAAC,MAAM;QAC9B,YAAY,EAAE,eAAe,CAAC,MAAM;KACrC,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport { SelectProps } from '../../../../select/interfaces';\nimport { generateTestIndexes } from '../../options-list/utils/test-indexes';\nimport { filterOptions } from './filter-options';\nimport { flattenOptions } from './flatten-options';\n\nexport function prepareOptions(\n options: SelectProps.Options,\n filteringType: SelectProps.FilteringType,\n filteringText: string\n) {\n const { flatOptions, parentMap } = flattenOptions(options);\n const filteredOptions = filteringType !== 'auto' ? flatOptions : filterOptions(flatOptions, filteringText);\n generateTestIndexes(filteredOptions, parentMap.get.bind(parentMap));\n return {\n flatOptions,\n filteredOptions,\n parentMap,\n totalCount: flatOptions.length,\n matchesCount: filteredOptions.length,\n };\n}\n"]}
@@ -28,6 +28,7 @@ export interface OptionsListProps extends BaseComponentProps {
28
28
  ariaDescribedby?: string;
29
29
  decreaseBlockMargin?: boolean;
30
30
  embedded?: boolean;
31
+ stickyItemBlockSize?: number | null;
31
32
  }
32
33
  declare const _default: React.ForwardRefExoticComponent<OptionsListProps & React.RefAttributes<HTMLUListElement>>;
33
34
  export default _default;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/options-list/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAMjD,OAAO,EAAE,kBAAkB,EAAgB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,aAAa,EACb,sBAAsB,EAGtB,yBAAyB,EAC1B,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAIzD,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,mBAAmB,CAAC,UAAU,CAAC;IAC3C;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC;;OAEG;IACH,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,SAAS,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,CAAC,EAAE,yBAAyB,CAAC;QAAE,aAAa,EAAE,IAAI,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACnE,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB;;AAuFD,wBAA6C"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/options-list/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAA4B,MAAM,OAAO,CAAC;AAMjD,OAAO,EAAE,kBAAkB,EAAgB,MAAM,sBAAsB,CAAC;AACxE,OAAO,EACL,aAAa,EACb,sBAAsB,EAGtB,yBAAyB,EAC1B,MAAM,cAAc,CAAC;AAEtB,OAAO,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAIzD,MAAM,WAAW,gBAAiB,SAAQ,kBAAkB;IAC1D,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,EAAE,mBAAmB,CAAC,UAAU,CAAC;IAC3C;;OAEG;IACH,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;IACvC;;OAEG;IACH,UAAU,CAAC,EAAE,yBAAyB,CAAC;IACvC,SAAS,CAAC,EAAE,sBAAsB,CAAC,aAAa,CAAC,CAAC;IAClD,MAAM,CAAC,EAAE,yBAAyB,CAAC;QAAE,aAAa,EAAE,IAAI,GAAG,IAAI,CAAA;KAAE,CAAC,CAAC;IACnE,OAAO,CAAC,EAAE,yBAAyB,CAAC;IACpC,SAAS,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IACxC,WAAW,CAAC,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,IAAI,CAAC;IAC1C,QAAQ,CAAC,EAAE,KAAK,CAAC,aAAa,CAAC,UAAU,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,mBAAmB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;;AAwFD,wBAA6C"}
@@ -16,7 +16,7 @@ const getItemIndex = (containerRef, event) => {
16
16
  return mouseTarget ? parseInt(mouseTarget) : -1;
17
17
  };
18
18
  const OptionsList = (_a, ref) => {
19
- var { open, statusType, children, nativeAttributes = {}, onKeyDown, onBlur, onFocus, onLoadMore, onMouseUp, onMouseMove, position = 'relative', role = 'listbox', decreaseBlockMargin = false, ariaLabel, ariaLabelledby, ariaDescribedby, embedded } = _a, restProps = __rest(_a, ["open", "statusType", "children", "nativeAttributes", "onKeyDown", "onBlur", "onFocus", "onLoadMore", "onMouseUp", "onMouseMove", "position", "role", "decreaseBlockMargin", "ariaLabel", "ariaLabelledby", "ariaDescribedby", "embedded"]);
19
+ var { open, statusType, children, nativeAttributes = {}, onKeyDown, onBlur, onFocus, onLoadMore, onMouseUp, onMouseMove, position = 'relative', role = 'listbox', decreaseBlockMargin = false, ariaLabel, ariaLabelledby, ariaDescribedby, embedded, stickyItemBlockSize } = _a, restProps = __rest(_a, ["open", "statusType", "children", "nativeAttributes", "onKeyDown", "onBlur", "onFocus", "onLoadMore", "onMouseUp", "onMouseMove", "position", "role", "decreaseBlockMargin", "ariaLabel", "ariaLabelledby", "ariaDescribedby", "embedded", "stickyItemBlockSize"]);
20
20
  const baseProps = getBaseProps(restProps);
21
21
  const menuRef = useRef(null);
22
22
  const handleScroll = useStableCallback(() => {
@@ -39,7 +39,7 @@ const OptionsList = (_a, ref) => {
39
39
  [styles['options-list-embedded']]: embedded,
40
40
  });
41
41
  const mergedRef = useMergeRefs(ref, menuRef);
42
- return (React.createElement("ul", Object.assign({}, baseProps, nativeAttributes, { className: className, ref: mergedRef, style: { position }, role: role, onScroll: handleScroll, onKeyDown: event => fireKeyboardEvent(onKeyDown, event), onMouseMove: event => onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(getItemIndex(menuRef, event)), onMouseUp: event => onMouseUp === null || onMouseUp === void 0 ? void 0 : onMouseUp(getItemIndex(menuRef, event)), onBlur: event => fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget }), onFocus: () => fireNonCancelableEvent(onFocus), tabIndex: embedded ? 0 : -1, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledby, "aria-describedby": ariaDescribedby }), open && children));
42
+ return (React.createElement("ul", Object.assign({}, baseProps, nativeAttributes, { className: className, ref: mergedRef, style: { position, scrollPaddingBlockStart: stickyItemBlockSize !== null && stickyItemBlockSize !== void 0 ? stickyItemBlockSize : undefined }, role: role, onScroll: handleScroll, onKeyDown: event => fireKeyboardEvent(onKeyDown, event), onMouseMove: event => onMouseMove === null || onMouseMove === void 0 ? void 0 : onMouseMove(getItemIndex(menuRef, event)), onMouseUp: event => onMouseUp === null || onMouseUp === void 0 ? void 0 : onMouseUp(getItemIndex(menuRef, event)), onBlur: event => fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget }), onFocus: () => fireNonCancelableEvent(onFocus), tabIndex: embedded ? 0 : -1, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledby, "aria-describedby": ariaDescribedby }), open && children));
43
43
  };
44
44
  export default React.forwardRef(OptionsList);
45
45
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/options-list/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { findUpUntil } from '@cloudscape-design/component-toolkit/dom';\nimport { useStableCallback } from '@cloudscape-design/component-toolkit/internal';\n\nimport { BaseComponentProps, getBaseProps } from '../../base-component';\nimport {\n BaseKeyDetail,\n CancelableEventHandler,\n fireKeyboardEvent,\n fireNonCancelableEvent,\n NonCancelableEventHandler,\n} from '../../events';\nimport { useMergeRefs } from '../../hooks/use-merge-refs';\nimport { DropdownStatusProps } from '../dropdown-status';\n\nimport styles from './styles.css.js';\n\nexport interface OptionsListProps extends BaseComponentProps {\n open?: boolean;\n statusType: DropdownStatusProps.StatusType;\n /**\n * Options list\n */\n children: React.ReactNode;\n nativeAttributes?: Record<string, any>;\n /**\n * Called when more items need to be loaded.\n */\n onLoadMore?: NonCancelableEventHandler;\n onKeyDown?: CancelableEventHandler<BaseKeyDetail>;\n onBlur?: NonCancelableEventHandler<{ relatedTarget: Node | null }>;\n onFocus?: NonCancelableEventHandler;\n onMouseUp?: (itemIndex: number) => void;\n onMouseMove?: (itemIndex: number) => void;\n position?: React.CSSProperties['position'];\n role?: 'listbox' | 'list' | 'menu';\n ariaLabel?: string;\n ariaLabelledby?: string;\n ariaDescribedby?: string;\n decreaseBlockMargin?: boolean;\n embedded?: boolean;\n}\n\nconst BOTTOM_TRIGGER_OFFSET = 80;\n\nconst getItemIndex = (containerRef: React.RefObject<HTMLElement>, event: React.MouseEvent) => {\n const target = findUpUntil(\n event.target as HTMLElement,\n element => element === containerRef.current || !!element.dataset.mouseTarget\n );\n const mouseTarget = target?.dataset.mouseTarget;\n return mouseTarget ? parseInt(mouseTarget) : -1;\n};\n\nconst OptionsList = (\n {\n open,\n statusType,\n children,\n nativeAttributes = {},\n onKeyDown,\n onBlur,\n onFocus,\n onLoadMore,\n onMouseUp,\n onMouseMove,\n position = 'relative',\n role = 'listbox',\n decreaseBlockMargin = false,\n ariaLabel,\n ariaLabelledby,\n ariaDescribedby,\n embedded,\n ...restProps\n }: OptionsListProps,\n ref: React.Ref<HTMLUListElement>\n) => {\n const baseProps = getBaseProps(restProps);\n const menuRef = useRef<HTMLUListElement>(null);\n\n const handleScroll = useStableCallback(() => {\n const scrollContainer = menuRef?.current;\n if (scrollContainer) {\n const bottomEdgePosition = scrollContainer.scrollTop + scrollContainer.clientHeight;\n const remainingScrollHeight = scrollContainer.scrollHeight - bottomEdgePosition;\n if (remainingScrollHeight < BOTTOM_TRIGGER_OFFSET) {\n fireNonCancelableEvent(onLoadMore);\n }\n }\n });\n\n useEffect(() => {\n if (open && statusType === 'pending') {\n handleScroll();\n }\n }, [open, statusType, handleScroll]);\n\n const className = clsx(styles['options-list'], {\n [styles['decrease-block-margin']]: decreaseBlockMargin,\n [styles['options-list-embedded']]: embedded,\n });\n\n const mergedRef = useMergeRefs(ref, menuRef);\n\n return (\n <ul\n {...baseProps}\n {...nativeAttributes}\n className={className}\n ref={mergedRef}\n style={{ position }}\n role={role}\n onScroll={handleScroll}\n onKeyDown={event => fireKeyboardEvent(onKeyDown, event)}\n onMouseMove={event => onMouseMove?.(getItemIndex(menuRef, event))}\n onMouseUp={event => onMouseUp?.(getItemIndex(menuRef, event))}\n onBlur={event => fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget })}\n onFocus={() => fireNonCancelableEvent(onFocus)}\n tabIndex={embedded ? 0 : -1}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-describedby={ariaDescribedby}\n >\n {open && children}\n </ul>\n );\n};\n\nexport default React.forwardRef(OptionsList);\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/options-list/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { findUpUntil } from '@cloudscape-design/component-toolkit/dom';\nimport { useStableCallback } from '@cloudscape-design/component-toolkit/internal';\n\nimport { BaseComponentProps, getBaseProps } from '../../base-component';\nimport {\n BaseKeyDetail,\n CancelableEventHandler,\n fireKeyboardEvent,\n fireNonCancelableEvent,\n NonCancelableEventHandler,\n} from '../../events';\nimport { useMergeRefs } from '../../hooks/use-merge-refs';\nimport { DropdownStatusProps } from '../dropdown-status';\n\nimport styles from './styles.css.js';\n\nexport interface OptionsListProps extends BaseComponentProps {\n open?: boolean;\n statusType: DropdownStatusProps.StatusType;\n /**\n * Options list\n */\n children: React.ReactNode;\n nativeAttributes?: Record<string, any>;\n /**\n * Called when more items need to be loaded.\n */\n onLoadMore?: NonCancelableEventHandler;\n onKeyDown?: CancelableEventHandler<BaseKeyDetail>;\n onBlur?: NonCancelableEventHandler<{ relatedTarget: Node | null }>;\n onFocus?: NonCancelableEventHandler;\n onMouseUp?: (itemIndex: number) => void;\n onMouseMove?: (itemIndex: number) => void;\n position?: React.CSSProperties['position'];\n role?: 'listbox' | 'list' | 'menu';\n ariaLabel?: string;\n ariaLabelledby?: string;\n ariaDescribedby?: string;\n decreaseBlockMargin?: boolean;\n embedded?: boolean;\n stickyItemBlockSize?: number | null;\n}\n\nconst BOTTOM_TRIGGER_OFFSET = 80;\n\nconst getItemIndex = (containerRef: React.RefObject<HTMLElement>, event: React.MouseEvent) => {\n const target = findUpUntil(\n event.target as HTMLElement,\n element => element === containerRef.current || !!element.dataset.mouseTarget\n );\n const mouseTarget = target?.dataset.mouseTarget;\n return mouseTarget ? parseInt(mouseTarget) : -1;\n};\n\nconst OptionsList = (\n {\n open,\n statusType,\n children,\n nativeAttributes = {},\n onKeyDown,\n onBlur,\n onFocus,\n onLoadMore,\n onMouseUp,\n onMouseMove,\n position = 'relative',\n role = 'listbox',\n decreaseBlockMargin = false,\n ariaLabel,\n ariaLabelledby,\n ariaDescribedby,\n embedded,\n stickyItemBlockSize,\n ...restProps\n }: OptionsListProps,\n ref: React.Ref<HTMLUListElement>\n) => {\n const baseProps = getBaseProps(restProps);\n const menuRef = useRef<HTMLUListElement>(null);\n\n const handleScroll = useStableCallback(() => {\n const scrollContainer = menuRef?.current;\n if (scrollContainer) {\n const bottomEdgePosition = scrollContainer.scrollTop + scrollContainer.clientHeight;\n const remainingScrollHeight = scrollContainer.scrollHeight - bottomEdgePosition;\n if (remainingScrollHeight < BOTTOM_TRIGGER_OFFSET) {\n fireNonCancelableEvent(onLoadMore);\n }\n }\n });\n\n useEffect(() => {\n if (open && statusType === 'pending') {\n handleScroll();\n }\n }, [open, statusType, handleScroll]);\n\n const className = clsx(styles['options-list'], {\n [styles['decrease-block-margin']]: decreaseBlockMargin,\n [styles['options-list-embedded']]: embedded,\n });\n\n const mergedRef = useMergeRefs(ref, menuRef);\n\n return (\n <ul\n {...baseProps}\n {...nativeAttributes}\n className={className}\n ref={mergedRef}\n style={{ position, scrollPaddingBlockStart: stickyItemBlockSize ?? undefined }}\n role={role}\n onScroll={handleScroll}\n onKeyDown={event => fireKeyboardEvent(onKeyDown, event)}\n onMouseMove={event => onMouseMove?.(getItemIndex(menuRef, event))}\n onMouseUp={event => onMouseUp?.(getItemIndex(menuRef, event))}\n onBlur={event => fireNonCancelableEvent(onBlur, { relatedTarget: event.relatedTarget })}\n onFocus={() => fireNonCancelableEvent(onFocus)}\n tabIndex={embedded ? 0 : -1}\n aria-label={ariaLabel}\n aria-labelledby={ariaLabelledby}\n aria-describedby={ariaDescribedby}\n >\n {open && children}\n </ul>\n );\n};\n\nexport default React.forwardRef(OptionsList);\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAOvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAKnD,OAAO,EAAE,mBAAmB,EAAE,CAAC;;AAwH/B,wBAAgD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAkC,MAAM,OAAO,CAAC;AAOvD,OAAO,EAAE,mBAAmB,EAAE,MAAM,cAAc,CAAC;AAKnD,OAAO,EAAE,mBAAmB,EAAE,CAAC;;AA0H/B,wBAAgD"}
@@ -9,7 +9,7 @@ import { getAnalyticsSelectActionMetadata } from './analytics-metadata/utils';
9
9
  import analyticsSelectors from './analytics-metadata/styles.css.js';
10
10
  import styles from './styles.css.js';
11
11
  const SelectableItem = (_a, ref) => {
12
- var { children: content, ariaSelected, ariaChecked, selected, highlighted, disabled, hasBackground, isParent, isChild, virtualPosition, padBottom, isNextSelected, useInteractiveGroups, screenReaderContent, ariaPosinset, ariaSetsize, highlightType, value, sticky, afterHeader, withScrollbar } = _a, restProps = __rest(_a, ["children", "ariaSelected", "ariaChecked", "selected", "highlighted", "disabled", "hasBackground", "isParent", "isChild", "virtualPosition", "padBottom", "isNextSelected", "useInteractiveGroups", "screenReaderContent", "ariaPosinset", "ariaSetsize", "highlightType", "value", "sticky", "afterHeader", "withScrollbar"]);
12
+ var { children: content, ariaSelected, ariaChecked, selected, highlighted, disabled, hasBackground, isParent, isChild, isSelectAll, virtualPosition, padBottom, isNextSelected, useInteractiveGroups, screenReaderContent, ariaPosinset, ariaSetsize, highlightType, value, sticky, afterHeader, withScrollbar } = _a, restProps = __rest(_a, ["children", "ariaSelected", "ariaChecked", "selected", "highlighted", "disabled", "hasBackground", "isParent", "isChild", "isSelectAll", "virtualPosition", "padBottom", "isNextSelected", "useInteractiveGroups", "screenReaderContent", "ariaPosinset", "ariaSetsize", "highlightType", "value", "sticky", "afterHeader", "withScrollbar"]);
13
13
  const _b = getBaseProps(restProps), { className } = _b, rest = __rest(_b, ["className"]);
14
14
  const classNames = clsx(className, styles['selectable-item'], {
15
15
  [styles.selected]: selected,
@@ -18,6 +18,7 @@ const SelectableItem = (_a, ref) => {
18
18
  [styles.parent]: isParent,
19
19
  [analyticsSelectors.parent]: isParent,
20
20
  [styles.child]: isChild,
21
+ [styles['select-all']]: isSelectAll,
21
22
  [styles['is-keyboard']]: highlightType === 'keyboard',
22
23
  [styles.disabled]: disabled,
23
24
  [styles.virtual]: virtualPosition !== undefined && !sticky,
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useLayoutEffect, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { getBaseProps } from '../../base-component';\nimport { getAnalyticsSelectActionMetadata } from './analytics-metadata/utils';\nimport { SelectableItemProps } from './interfaces';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nexport { SelectableItemProps };\n\nconst SelectableItem = (\n {\n children: content,\n ariaSelected,\n ariaChecked,\n selected,\n highlighted,\n disabled,\n hasBackground,\n isParent,\n isChild,\n virtualPosition,\n padBottom,\n isNextSelected,\n useInteractiveGroups,\n screenReaderContent,\n ariaPosinset,\n ariaSetsize,\n highlightType,\n value,\n sticky,\n afterHeader,\n withScrollbar,\n ...restProps\n }: SelectableItemProps,\n ref: React.Ref<HTMLDivElement>\n) => {\n const { className, ...rest } = getBaseProps(restProps);\n const classNames = clsx(className, styles['selectable-item'], {\n [styles.selected]: selected,\n [styles.highlighted]: highlighted,\n [styles['has-background']]: hasBackground,\n [styles.parent]: isParent,\n [analyticsSelectors.parent]: isParent,\n [styles.child]: isChild,\n [styles['is-keyboard']]: highlightType === 'keyboard',\n [styles.disabled]: disabled,\n [styles.virtual]: virtualPosition !== undefined && !sticky,\n [styles['pad-bottom']]: padBottom,\n [styles['next-item-selected']]: isNextSelected,\n [styles.interactiveGroups]: useInteractiveGroups,\n [styles.sticky]: sticky,\n [styles['after-header']]: !!afterHeader,\n [styles['with-scrollbar']]: withScrollbar,\n });\n\n const contentRef = useRef<HTMLDivElement>(null);\n const screenReaderContentRef = useRef<HTMLDivElement>(null);\n\n useLayoutEffect(() => {\n // the state of aria-hidden and announcement is not set back because NVDA+Firefox would announce\n // the item which lost highlight\n // set aria-hidden true when there is announcement content, so that screen reader still announce\n // meaningful content when navigate with screen reader cursor\n // imperatively update to avoid announcement made multiple times when content updates\n if (highlighted && screenReaderContent) {\n if (contentRef.current) {\n contentRef.current.setAttribute('aria-hidden', 'true');\n }\n if (screenReaderContentRef.current) {\n screenReaderContentRef.current.textContent = screenReaderContent;\n }\n }\n }, [highlighted, screenReaderContent, contentRef, screenReaderContentRef]);\n\n const style =\n virtualPosition !== undefined\n ? {\n transform: `translateY(${virtualPosition}px)`,\n }\n : undefined;\n\n const a11yProperties: Record<string, string | number | boolean | undefined> = {\n 'aria-disabled': disabled,\n };\n\n if (isParent && !useInteractiveGroups) {\n a11yProperties['aria-hidden'] = true;\n }\n\n if (ariaSelected !== undefined) {\n a11yProperties['aria-selected'] = ariaSelected;\n }\n\n // Safari+VO needs aria-checked for multi-selection. Otherwise it only announces selected option even though another option is highlighted.\n if (ariaChecked !== undefined) {\n a11yProperties['aria-checked'] = ariaChecked;\n }\n\n if (ariaPosinset && ariaSetsize) {\n a11yProperties['aria-posinset'] = ariaPosinset;\n a11yProperties['aria-setsize'] = ariaSetsize;\n }\n\n if (restProps.ariaDescribedby) {\n a11yProperties['aria-describedby'] = restProps.ariaDescribedby;\n }\n\n return (\n <li\n role=\"option\"\n className={classNames}\n style={style}\n {...a11yProperties}\n {...rest}\n {...(isParent || disabled\n ? {}\n : getAnalyticsMetadataAttribute(getAnalyticsSelectActionMetadata({ isChild, value, ...restProps })))}\n >\n <div className={clsx(styles['option-content'], analyticsSelectors['option-content'])} ref={contentRef}>\n {content}\n </div>\n <div className={styles['measure-strut']} ref={ref} />\n <div className={styles['screenreader-content']} ref={screenReaderContentRef}></div>\n </li>\n );\n};\n\nexport default React.forwardRef(SelectableItem);\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useLayoutEffect, useRef } from 'react';\nimport clsx from 'clsx';\n\nimport { getAnalyticsMetadataAttribute } from '@cloudscape-design/component-toolkit/internal/analytics-metadata';\n\nimport { getBaseProps } from '../../base-component';\nimport { getAnalyticsSelectActionMetadata } from './analytics-metadata/utils';\nimport { SelectableItemProps } from './interfaces';\n\nimport analyticsSelectors from './analytics-metadata/styles.css.js';\nimport styles from './styles.css.js';\n\nexport { SelectableItemProps };\n\nconst SelectableItem = (\n {\n children: content,\n ariaSelected,\n ariaChecked,\n selected,\n highlighted,\n disabled,\n hasBackground,\n isParent,\n isChild,\n isSelectAll,\n virtualPosition,\n padBottom,\n isNextSelected,\n useInteractiveGroups,\n screenReaderContent,\n ariaPosinset,\n ariaSetsize,\n highlightType,\n value,\n sticky,\n afterHeader,\n withScrollbar,\n ...restProps\n }: SelectableItemProps,\n ref: React.Ref<HTMLDivElement>\n) => {\n const { className, ...rest } = getBaseProps(restProps);\n const classNames = clsx(className, styles['selectable-item'], {\n [styles.selected]: selected,\n [styles.highlighted]: highlighted,\n [styles['has-background']]: hasBackground,\n [styles.parent]: isParent,\n [analyticsSelectors.parent]: isParent,\n [styles.child]: isChild,\n [styles['select-all']]: isSelectAll,\n [styles['is-keyboard']]: highlightType === 'keyboard',\n [styles.disabled]: disabled,\n [styles.virtual]: virtualPosition !== undefined && !sticky,\n [styles['pad-bottom']]: padBottom,\n [styles['next-item-selected']]: isNextSelected,\n [styles.interactiveGroups]: useInteractiveGroups,\n [styles.sticky]: sticky,\n [styles['after-header']]: !!afterHeader,\n [styles['with-scrollbar']]: withScrollbar,\n });\n\n const contentRef = useRef<HTMLDivElement>(null);\n const screenReaderContentRef = useRef<HTMLDivElement>(null);\n\n useLayoutEffect(() => {\n // the state of aria-hidden and announcement is not set back because NVDA+Firefox would announce\n // the item which lost highlight\n // set aria-hidden true when there is announcement content, so that screen reader still announce\n // meaningful content when navigate with screen reader cursor\n // imperatively update to avoid announcement made multiple times when content updates\n if (highlighted && screenReaderContent) {\n if (contentRef.current) {\n contentRef.current.setAttribute('aria-hidden', 'true');\n }\n if (screenReaderContentRef.current) {\n screenReaderContentRef.current.textContent = screenReaderContent;\n }\n }\n }, [highlighted, screenReaderContent, contentRef, screenReaderContentRef]);\n\n const style =\n virtualPosition !== undefined\n ? {\n transform: `translateY(${virtualPosition}px)`,\n }\n : undefined;\n\n const a11yProperties: Record<string, string | number | boolean | undefined> = {\n 'aria-disabled': disabled,\n };\n\n if (isParent && !useInteractiveGroups) {\n a11yProperties['aria-hidden'] = true;\n }\n\n if (ariaSelected !== undefined) {\n a11yProperties['aria-selected'] = ariaSelected;\n }\n\n // Safari+VO needs aria-checked for multi-selection. Otherwise it only announces selected option even though another option is highlighted.\n if (ariaChecked !== undefined) {\n a11yProperties['aria-checked'] = ariaChecked;\n }\n\n if (ariaPosinset && ariaSetsize) {\n a11yProperties['aria-posinset'] = ariaPosinset;\n a11yProperties['aria-setsize'] = ariaSetsize;\n }\n\n if (restProps.ariaDescribedby) {\n a11yProperties['aria-describedby'] = restProps.ariaDescribedby;\n }\n\n return (\n <li\n role=\"option\"\n className={classNames}\n style={style}\n {...a11yProperties}\n {...rest}\n {...(isParent || disabled\n ? {}\n : getAnalyticsMetadataAttribute(getAnalyticsSelectActionMetadata({ isChild, value, ...restProps })))}\n >\n <div className={clsx(styles['option-content'], analyticsSelectors['option-content'])} ref={contentRef}>\n {content}\n </div>\n <div className={styles['measure-strut']} ref={ref} />\n <div className={styles['screenreader-content']} ref={screenReaderContentRef}></div>\n </li>\n );\n};\n\nexport default React.forwardRef(SelectableItem);\n"]}
@@ -9,6 +9,7 @@ export type SelectableItemProps = BaseComponentProps & {
9
9
  hasBackground?: boolean;
10
10
  isParent?: boolean;
11
11
  isChild?: boolean;
12
+ isSelectAll?: boolean;
12
13
  virtualPosition?: number;
13
14
  padBottom?: boolean;
14
15
  isNextSelected?: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/interfaces.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GAAG;IACrD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,CAAC;IAAE,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,YAAY,CAAC,EAAE,KAAK,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CAAE,CAAC,CAAC;AAElH,MAAM,WAAW,kBAAkB;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/interfaces.ts"],"names":[],"mappings":";AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,sBAAsB,CAAC;AAC1D,OAAO,EAAE,aAAa,EAAE,MAAM,4CAA4C,CAAC;AAE3E,MAAM,MAAM,mBAAmB,GAAG,kBAAkB,GAAG;IACrD,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,oBAAoB,CAAC,EAAE,OAAO,CAAC;IAC/B,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,aAAa,CAAC,EAAE,aAAa,CAAC,MAAM,CAAC,CAAC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,GAAG,CAAC;IAAE,YAAY,CAAC,EAAE,OAAO,CAAC;IAAC,WAAW,CAAC,EAAE,KAAK,CAAA;CAAE,GAAG;IAAE,YAAY,CAAC,EAAE,KAAK,CAAC;IAAC,WAAW,CAAC,EAAE,OAAO,GAAG,OAAO,CAAA;CAAE,CAAC,CAAC;AAElH,MAAM,WAAW,kBAAkB;IACjC,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/interfaces.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { BaseComponentProps } from '../../base-component';\nimport { HighlightType } from '../options-list/utils/use-highlight-option';\n\nexport type SelectableItemProps = BaseComponentProps & {\n children: React.ReactNode;\n selected?: boolean;\n highlighted?: boolean;\n disabled?: boolean;\n hasBackground?: boolean;\n isParent?: boolean;\n isChild?: boolean;\n virtualPosition?: number;\n padBottom?: boolean;\n isNextSelected?: boolean;\n useInteractiveGroups?: boolean;\n screenReaderContent?: string;\n ariaPosinset?: number;\n ariaSetsize?: number;\n highlightType?: HighlightType['type'];\n ariaDescribedby?: string;\n value?: string;\n sticky?: boolean;\n afterHeader?: boolean;\n withScrollbar?: boolean;\n} & ({ ariaSelected?: boolean; ariaChecked?: never } | { ariaSelected?: never; ariaChecked?: boolean | 'mixed' });\n\nexport interface ItemDataAttributes {\n 'data-group-index'?: string;\n 'data-child-index'?: string;\n 'data-in-group-index'?: string;\n 'data-test-index'?: string;\n}\n"]}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../../../src/internal/components/selectable-item/interfaces.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\n\nimport { BaseComponentProps } from '../../base-component';\nimport { HighlightType } from '../options-list/utils/use-highlight-option';\n\nexport type SelectableItemProps = BaseComponentProps & {\n children: React.ReactNode;\n selected?: boolean;\n highlighted?: boolean;\n disabled?: boolean;\n hasBackground?: boolean;\n isParent?: boolean;\n isChild?: boolean;\n isSelectAll?: boolean;\n virtualPosition?: number;\n padBottom?: boolean;\n isNextSelected?: boolean;\n useInteractiveGroups?: boolean;\n screenReaderContent?: string;\n ariaPosinset?: number;\n ariaSetsize?: number;\n highlightType?: HighlightType['type'];\n ariaDescribedby?: string;\n value?: string;\n sticky?: boolean;\n afterHeader?: boolean;\n withScrollbar?: boolean;\n} & ({ ariaSelected?: boolean; ariaChecked?: never } | { ariaSelected?: never; ariaChecked?: boolean | 'mixed' });\n\nexport interface ItemDataAttributes {\n 'data-group-index'?: string;\n 'data-child-index'?: string;\n 'data-in-group-index'?: string;\n 'data-test-index'?: string;\n}\n"]}
@@ -1,24 +1,25 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "selectable-item": "awsui_selectable-item_15o6u_bg2ke_145",
5
- "pad-bottom": "awsui_pad-bottom_15o6u_bg2ke_167",
6
- "virtual": "awsui_virtual_15o6u_bg2ke_171",
7
- "has-background": "awsui_has-background_15o6u_bg2ke_174",
8
- "highlighted": "awsui_highlighted_15o6u_bg2ke_177",
9
- "selected": "awsui_selected_15o6u_bg2ke_177",
10
- "disabled": "awsui_disabled_15o6u_bg2ke_195",
11
- "next-item-selected": "awsui_next-item-selected_15o6u_bg2ke_205",
12
- "is-keyboard": "awsui_is-keyboard_15o6u_bg2ke_217",
13
- "parent": "awsui_parent_15o6u_bg2ke_221",
14
- "interactiveGroups": "awsui_interactiveGroups_15o6u_bg2ke_225",
15
- "child": "awsui_child_15o6u_bg2ke_241",
16
- "sticky": "awsui_sticky_15o6u_bg2ke_247",
17
- "with-scrollbar": "awsui_with-scrollbar_15o6u_bg2ke_259",
18
- "after-header": "awsui_after-header_15o6u_bg2ke_265",
19
- "measure-strut": "awsui_measure-strut_15o6u_bg2ke_300",
20
- "measure-strut-first": "awsui_measure-strut-first_15o6u_bg2ke_309",
21
- "screenreader-content": "awsui_screenreader-content_15o6u_bg2ke_313",
22
- "option-content": "awsui_option-content_15o6u_bg2ke_319"
4
+ "selectable-item": "awsui_selectable-item_15o6u_vdd35_145",
5
+ "pad-bottom": "awsui_pad-bottom_15o6u_vdd35_167",
6
+ "virtual": "awsui_virtual_15o6u_vdd35_171",
7
+ "has-background": "awsui_has-background_15o6u_vdd35_174",
8
+ "highlighted": "awsui_highlighted_15o6u_vdd35_177",
9
+ "selected": "awsui_selected_15o6u_vdd35_177",
10
+ "disabled": "awsui_disabled_15o6u_vdd35_195",
11
+ "next-item-selected": "awsui_next-item-selected_15o6u_vdd35_205",
12
+ "is-keyboard": "awsui_is-keyboard_15o6u_vdd35_217",
13
+ "parent": "awsui_parent_15o6u_vdd35_221",
14
+ "interactiveGroups": "awsui_interactiveGroups_15o6u_vdd35_225",
15
+ "child": "awsui_child_15o6u_vdd35_241",
16
+ "sticky": "awsui_sticky_15o6u_vdd35_247",
17
+ "with-scrollbar": "awsui_with-scrollbar_15o6u_vdd35_259",
18
+ "after-header": "awsui_after-header_15o6u_vdd35_265",
19
+ "measure-strut": "awsui_measure-strut_15o6u_vdd35_300",
20
+ "measure-strut-first": "awsui_measure-strut-first_15o6u_vdd35_309",
21
+ "screenreader-content": "awsui_screenreader-content_15o6u_vdd35_313",
22
+ "option-content": "awsui_option-content_15o6u_vdd35_319",
23
+ "select-all": "awsui_select-all_15o6u_vdd35_323"
23
24
  };
24
25
 
@@ -142,7 +142,7 @@
142
142
  */
143
143
  /* Style used for links in slots/components that are text heavy, to help links stand out among
144
144
  surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F73#description */
145
- .awsui_selectable-item_15o6u_bg2ke_145:not(#\9) {
145
+ .awsui_selectable-item_15o6u_vdd35_145:not(#\9) {
146
146
  font-size: var(--font-size-body-m-x4okxb, 14px);
147
147
  line-height: var(--line-height-body-m-30ar75, 20px);
148
148
  color: var(--color-text-body-default-7v1jfn, #0f141a);
@@ -164,17 +164,17 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
164
164
  padding-block: calc(var(--space-xxs-p8yyaw, 4px) + var(--border-item-width-yel47s, 2px) - var(--border-divider-list-width-27y3k5, 1px));
165
165
  padding-inline: calc(var(--space-field-horizontal-gg19kw, 12px) + var(--border-item-width-yel47s, 2px));
166
166
  }
167
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_pad-bottom_15o6u_bg2ke_167:not(#\9) {
167
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_pad-bottom_15o6u_vdd35_167:not(#\9) {
168
168
  padding-block-end: calc(calc(var(--space-xxs-p8yyaw, 4px) + var(--border-item-width-yel47s, 2px) - var(--border-divider-list-width-27y3k5, 1px)) + var(--space-xxxs-zbmxqb, 2px));
169
169
  border-block-end-color: transparent;
170
170
  }
171
- .awsui_selectable-item_15o6u_bg2ke_145:not(#\9):not(:first-child), .awsui_selectable-item_15o6u_bg2ke_145.awsui_virtual_15o6u_bg2ke_171:not(#\9) {
171
+ .awsui_selectable-item_15o6u_vdd35_145:not(#\9):not(:first-child), .awsui_selectable-item_15o6u_vdd35_145.awsui_virtual_15o6u_vdd35_171:not(#\9) {
172
172
  margin-block-start: calc(-1 * var(--border-item-width-yel47s, 2px));
173
173
  }
174
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_has-background_15o6u_bg2ke_174:not(#\9) {
174
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_has-background_15o6u_vdd35_174:not(#\9) {
175
175
  background-color: var(--color-background-dropdown-item-hover-zhzc84, #f3f3f7);
176
176
  }
177
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_highlighted_15o6u_bg2ke_177:not(#\9), .awsui_selectable-item_15o6u_bg2ke_145.awsui_selected_15o6u_bg2ke_177:not(#\9) {
177
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_highlighted_15o6u_vdd35_177:not(#\9), .awsui_selectable-item_15o6u_vdd35_145.awsui_selected_15o6u_vdd35_177:not(#\9) {
178
178
  color: var(--color-text-dropdown-item-highlighted-rnfxxj, #0f141a);
179
179
  border-width: var(--border-item-width-yel47s, 2px);
180
180
  border-start-start-radius: var(--border-radius-item-05df9h, 8px);
@@ -184,120 +184,120 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
184
184
  padding-block: var(--space-xxs-p8yyaw, 4px);
185
185
  padding-inline: var(--space-field-horizontal-gg19kw, 12px);
186
186
  }
187
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_highlighted_15o6u_bg2ke_177.awsui_pad-bottom_15o6u_bg2ke_167:not(#\9), .awsui_selectable-item_15o6u_bg2ke_145.awsui_selected_15o6u_bg2ke_177.awsui_pad-bottom_15o6u_bg2ke_167:not(#\9) {
187
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_highlighted_15o6u_vdd35_177.awsui_pad-bottom_15o6u_vdd35_167:not(#\9), .awsui_selectable-item_15o6u_vdd35_145.awsui_selected_15o6u_vdd35_177.awsui_pad-bottom_15o6u_vdd35_167:not(#\9) {
188
188
  padding-block-end: calc(var(--space-xxs-p8yyaw, 4px) + var(--space-xxxs-zbmxqb, 2px));
189
189
  }
190
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_highlighted_15o6u_bg2ke_177:not(#\9) {
190
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_highlighted_15o6u_vdd35_177:not(#\9) {
191
191
  z-index: 3;
192
192
  background-color: var(--color-background-dropdown-item-hover-zhzc84, #f3f3f7);
193
193
  border-color: var(--color-border-dropdown-item-hover-4p0gsi, #8c8c94);
194
194
  }
195
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_highlighted_15o6u_bg2ke_177.awsui_disabled_15o6u_bg2ke_195:not(#\9) {
195
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_highlighted_15o6u_vdd35_177.awsui_disabled_15o6u_vdd35_195:not(#\9) {
196
196
  color: var(--color-text-dropdown-item-dimmed-7c5xo0, #b4b4bb);
197
197
  border-color: var(--color-border-dropdown-item-dimmed-hover-6qayyi, #8c8c94);
198
198
  background-color: var(--color-background-dropdown-item-dimmed-dlm6wk, transparent);
199
199
  }
200
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_selected_15o6u_bg2ke_177:not(#\9) {
200
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_selected_15o6u_vdd35_177:not(#\9) {
201
201
  z-index: 2;
202
202
  background-color: var(--color-background-dropdown-item-selected-idfej7, #f0fbff);
203
203
  border-color: var(--color-border-dropdown-item-selected-rtthnt, #006ce0);
204
204
  }
205
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_selected_15o6u_bg2ke_177.awsui_next-item-selected_15o6u_bg2ke_205:not(#\9) {
205
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_selected_15o6u_vdd35_177.awsui_next-item-selected_15o6u_vdd35_205:not(#\9) {
206
206
  border-end-start-radius: 0;
207
207
  border-end-end-radius: 0;
208
208
  }
209
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_selected_15o6u_bg2ke_177.awsui_highlighted_15o6u_bg2ke_177:not(#\9) {
209
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_selected_15o6u_vdd35_177.awsui_highlighted_15o6u_vdd35_177:not(#\9) {
210
210
  border-color: var(--color-border-dropdown-item-hover-4p0gsi, #8c8c94);
211
211
  z-index: 3;
212
212
  }
213
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_selected_15o6u_bg2ke_177 + .awsui_selectable-item_15o6u_bg2ke_145.awsui_selected_15o6u_bg2ke_177:not(#\9) {
213
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_selected_15o6u_vdd35_177 + .awsui_selectable-item_15o6u_vdd35_145.awsui_selected_15o6u_vdd35_177:not(#\9) {
214
214
  border-start-start-radius: 0;
215
215
  border-start-end-radius: 0;
216
216
  }
217
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_highlighted_15o6u_bg2ke_177.awsui_is-keyboard_15o6u_bg2ke_217:not(#\9) {
217
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_highlighted_15o6u_vdd35_177.awsui_is-keyboard_15o6u_vdd35_217:not(#\9) {
218
218
  border-color: var(--color-border-dropdown-item-focused-5afjvu, #424650);
219
219
  box-shadow: inset 0 0 0 var(--border-control-focus-ring-shadow-spread-0ctpjf, 0px) var(--color-border-item-focused-nv6mhz, #006ce0);
220
220
  }
221
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_parent_15o6u_bg2ke_221:not(#\9) {
221
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_parent_15o6u_vdd35_221:not(#\9) {
222
222
  font-weight: bold;
223
223
  color: var(--color-text-dropdown-group-label-iy2p4t, #424650);
224
224
  }
225
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_parent_15o6u_bg2ke_221:not(#\9):not(.awsui_interactiveGroups_15o6u_bg2ke_225) {
225
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_parent_15o6u_vdd35_221:not(#\9):not(.awsui_interactiveGroups_15o6u_vdd35_225) {
226
226
  border-block-start-color: var(--color-border-dropdown-group-2xoluv, #c6c6cd);
227
227
  padding-block: var(--space-xs-zb16t3, 8px);
228
228
  padding-inline: var(--space-xs-zb16t3, 8px);
229
229
  }
230
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_parent_15o6u_bg2ke_221.awsui_interactiveGroups_15o6u_bg2ke_225:not(#\9) {
230
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_parent_15o6u_vdd35_221.awsui_interactiveGroups_15o6u_vdd35_225:not(#\9) {
231
231
  padding-block: calc(var(--space-xs-zb16t3, 8px) + var(--border-item-width-yel47s, 2px) - var(--border-divider-list-width-27y3k5, 1px));
232
232
  padding-inline: calc(var(--space-field-horizontal-gg19kw, 12px) + var(--border-item-width-yel47s, 2px));
233
233
  }
234
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_parent_15o6u_bg2ke_221.awsui_interactiveGroups_15o6u_bg2ke_225.awsui_highlighted_15o6u_bg2ke_177:not(#\9) {
234
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_parent_15o6u_vdd35_221.awsui_interactiveGroups_15o6u_vdd35_225.awsui_highlighted_15o6u_vdd35_177:not(#\9) {
235
235
  color: var(--color-text-dropdown-item-highlighted-rnfxxj, #0f141a);
236
236
  }
237
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_parent_15o6u_bg2ke_221.awsui_interactiveGroups_15o6u_bg2ke_225.awsui_highlighted_15o6u_bg2ke_177:not(#\9), .awsui_selectable-item_15o6u_bg2ke_145.awsui_parent_15o6u_bg2ke_221.awsui_interactiveGroups_15o6u_bg2ke_225.awsui_selected_15o6u_bg2ke_177:not(#\9) {
237
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_parent_15o6u_vdd35_221.awsui_interactiveGroups_15o6u_vdd35_225.awsui_highlighted_15o6u_vdd35_177:not(#\9), .awsui_selectable-item_15o6u_vdd35_145.awsui_parent_15o6u_vdd35_221.awsui_interactiveGroups_15o6u_vdd35_225.awsui_selected_15o6u_vdd35_177:not(#\9) {
238
238
  padding-block: var(--space-xs-zb16t3, 8px);
239
239
  padding-inline: var(--space-field-horizontal-gg19kw, 12px);
240
240
  }
241
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_child_15o6u_bg2ke_241:not(#\9) {
241
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_child_15o6u_vdd35_241:not(#\9) {
242
242
  padding-inline-start: calc(var(--space-xxl-cu2m1r, 32px) + var(--border-item-width-yel47s, 2px));
243
243
  }
244
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_child_15o6u_bg2ke_241.awsui_highlighted_15o6u_bg2ke_177:not(#\9), .awsui_selectable-item_15o6u_bg2ke_145.awsui_child_15o6u_bg2ke_241.awsui_selected_15o6u_bg2ke_177:not(#\9) {
244
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_child_15o6u_vdd35_241.awsui_highlighted_15o6u_vdd35_177:not(#\9), .awsui_selectable-item_15o6u_vdd35_145.awsui_child_15o6u_vdd35_241.awsui_selected_15o6u_vdd35_177:not(#\9) {
245
245
  padding-inline-start: var(--space-xxl-cu2m1r, 32px);
246
246
  }
247
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(#\9) {
247
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(#\9) {
248
248
  position: sticky;
249
249
  inset-block-start: 0;
250
250
  margin-block-end: calc(var(--border-item-width-yel47s, 2px) - var(--border-divider-list-width-27y3k5, 1px));
251
251
  z-index: 4;
252
252
  }
253
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(#\9):not(.awsui_highlighted_15o6u_bg2ke_177):not(.awsui_selected_15o6u_bg2ke_177) {
253
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(#\9):not(.awsui_highlighted_15o6u_vdd35_177):not(.awsui_selected_15o6u_vdd35_177) {
254
254
  border-inline-start-width: var(--border-item-width-yel47s, 2px);
255
255
  border-inline-start-color: var(--color-border-dropdown-container-fo7aoz, #b4b4bb);
256
256
  border-inline-end-color: var(--color-border-dropdown-container-fo7aoz, #b4b4bb);
257
257
  padding-inline: var(--space-field-horizontal-gg19kw, 12px);
258
258
  }
259
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(#\9):not(.awsui_highlighted_15o6u_bg2ke_177):not(.awsui_selected_15o6u_bg2ke_177):not(.awsui_with-scrollbar_15o6u_bg2ke_259) {
259
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(#\9):not(.awsui_highlighted_15o6u_vdd35_177):not(.awsui_selected_15o6u_vdd35_177):not(.awsui_with-scrollbar_15o6u_vdd35_259) {
260
260
  border-inline-end-width: var(--border-item-width-yel47s, 2px);
261
261
  }
262
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(#\9):not(.awsui_highlighted_15o6u_bg2ke_177):not(.awsui_selected_15o6u_bg2ke_177).awsui_with-scrollbar_15o6u_bg2ke_259 {
262
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(#\9):not(.awsui_highlighted_15o6u_vdd35_177):not(.awsui_selected_15o6u_vdd35_177).awsui_with-scrollbar_15o6u_vdd35_259 {
263
263
  border-inline-end-width: 0;
264
264
  }
265
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(#\9):not(.awsui_highlighted_15o6u_bg2ke_177):not(.awsui_selected_15o6u_bg2ke_177):not(.awsui_after-header_15o6u_bg2ke_265) {
265
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(#\9):not(.awsui_highlighted_15o6u_vdd35_177):not(.awsui_selected_15o6u_vdd35_177):not(.awsui_after-header_15o6u_vdd35_265) {
266
266
  border-start-start-radius: var(--border-radius-item-05df9h, 8px);
267
267
  }
268
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(#\9):not(.awsui_highlighted_15o6u_bg2ke_177):not(.awsui_selected_15o6u_bg2ke_177):not(.awsui_after-header_15o6u_bg2ke_265):not(.awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(.awsui_highlighted_15o6u_bg2ke_177):not(.awsui_selected_15o6u_bg2ke_177):not(.awsui_after-header_15o6u_bg2ke_265).awsui_with-scrollbar_15o6u_bg2ke_259) {
268
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(#\9):not(.awsui_highlighted_15o6u_vdd35_177):not(.awsui_selected_15o6u_vdd35_177):not(.awsui_after-header_15o6u_vdd35_265):not(.awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(.awsui_highlighted_15o6u_vdd35_177):not(.awsui_selected_15o6u_vdd35_177):not(.awsui_after-header_15o6u_vdd35_265).awsui_with-scrollbar_15o6u_vdd35_259) {
269
269
  border-start-end-radius: var(--border-radius-item-05df9h, 8px);
270
270
  }
271
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247:not(#\9):not(.awsui_highlighted_15o6u_bg2ke_177):not(.awsui_selected_15o6u_bg2ke_177).awsui_after-header_15o6u_bg2ke_265 {
271
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247:not(#\9):not(.awsui_highlighted_15o6u_vdd35_177):not(.awsui_selected_15o6u_vdd35_177).awsui_after-header_15o6u_vdd35_265 {
272
272
  border-block-start-color: var(--color-background-dropdown-item-default-u8emhk, #ffffff);
273
273
  }
274
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247.awsui_disabled_15o6u_bg2ke_195.awsui_highlighted_15o6u_bg2ke_177:not(#\9), .awsui_selectable-item_15o6u_bg2ke_145.awsui_sticky_15o6u_bg2ke_247.awsui_disabled_15o6u_bg2ke_195.awsui_selected_15o6u_bg2ke_177:not(#\9) {
274
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247.awsui_disabled_15o6u_vdd35_195.awsui_highlighted_15o6u_vdd35_177:not(#\9), .awsui_selectable-item_15o6u_vdd35_145.awsui_sticky_15o6u_vdd35_247.awsui_disabled_15o6u_vdd35_195.awsui_selected_15o6u_vdd35_177:not(#\9) {
275
275
  border-block-end-color: transparent;
276
276
  border-block-start-color: transparent;
277
277
  border-inline-start-color: transparent;
278
278
  border-inline-end-color: transparent;
279
279
  }
280
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_disabled_15o6u_bg2ke_195:not(#\9) {
280
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_disabled_15o6u_vdd35_195:not(#\9) {
281
281
  color: var(--color-text-dropdown-item-disabled-7fg5u8, #b4b4bb);
282
282
  }
283
- .awsui_selectable-item_15o6u_bg2ke_145:not(#\9):not(.awsui_disabled_15o6u_bg2ke_195):not(.awsui_parent_15o6u_bg2ke_221) {
283
+ .awsui_selectable-item_15o6u_vdd35_145:not(#\9):not(.awsui_disabled_15o6u_vdd35_195):not(.awsui_parent_15o6u_vdd35_221) {
284
284
  cursor: pointer;
285
285
  }
286
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_interactiveGroups_15o6u_bg2ke_225:not(#\9):not(.awsui_disabled_15o6u_bg2ke_195) {
286
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_interactiveGroups_15o6u_vdd35_225:not(#\9):not(.awsui_disabled_15o6u_vdd35_195) {
287
287
  cursor: pointer;
288
288
  }
289
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_virtual_15o6u_bg2ke_171:not(#\9) {
289
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_virtual_15o6u_vdd35_171:not(#\9) {
290
290
  position: absolute;
291
291
  inset-block-start: var(--border-dropdown-virtual-offset-width-kekgc0, 2px);
292
292
  inset-inline-start: 0;
293
293
  inline-size: 100%;
294
294
  box-sizing: border-box;
295
295
  }
296
- .awsui_selectable-item_15o6u_bg2ke_145.awsui_virtual_15o6u_bg2ke_171:not(#\9):first-of-type:not(.awsui_selected_15o6u_bg2ke_177, .awsui_highlighted_15o6u_bg2ke_177) {
296
+ .awsui_selectable-item_15o6u_vdd35_145.awsui_virtual_15o6u_vdd35_171:not(#\9):first-of-type:not(.awsui_selected_15o6u_vdd35_177, .awsui_highlighted_15o6u_vdd35_177) {
297
297
  border-block-start-color: var(--color-border-dropdown-item-top-ky64jq, transparent);
298
298
  }
299
299
 
300
- .awsui_measure-strut_15o6u_bg2ke_300:not(#\9) {
300
+ .awsui_measure-strut_15o6u_vdd35_300:not(#\9) {
301
301
  position: absolute;
302
302
  pointer-events: none;
303
303
  block-size: 100%;
@@ -306,16 +306,20 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
306
306
  inset-inline-start: 0;
307
307
  padding-block-start: var(--border-divider-list-width-27y3k5, 1px);
308
308
  }
309
- .awsui_measure-strut-first_15o6u_bg2ke_309:not(#\9) {
309
+ .awsui_measure-strut-first_15o6u_vdd35_309:not(#\9) {
310
310
  padding-block-end: var(--border-divider-list-width-27y3k5, 1px);
311
311
  }
312
312
 
313
- .awsui_screenreader-content_15o6u_bg2ke_313:not(#\9) {
313
+ .awsui_screenreader-content_15o6u_vdd35_313:not(#\9) {
314
314
  position: absolute !important;
315
315
  inset-block-start: -9999px !important;
316
316
  inset-inline-start: -9999px !important;
317
317
  }
318
318
 
319
- .awsui_option-content_15o6u_bg2ke_319:not(#\9) {
319
+ .awsui_option-content_15o6u_vdd35_319:not(#\9) {
320
+ /* used in test-utils */
321
+ }
322
+
323
+ .awsui_select-all_15o6u_vdd35_323:not(#\9) {
320
324
  /* used in test-utils */
321
325
  }
@@ -2,24 +2,25 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "selectable-item": "awsui_selectable-item_15o6u_bg2ke_145",
6
- "pad-bottom": "awsui_pad-bottom_15o6u_bg2ke_167",
7
- "virtual": "awsui_virtual_15o6u_bg2ke_171",
8
- "has-background": "awsui_has-background_15o6u_bg2ke_174",
9
- "highlighted": "awsui_highlighted_15o6u_bg2ke_177",
10
- "selected": "awsui_selected_15o6u_bg2ke_177",
11
- "disabled": "awsui_disabled_15o6u_bg2ke_195",
12
- "next-item-selected": "awsui_next-item-selected_15o6u_bg2ke_205",
13
- "is-keyboard": "awsui_is-keyboard_15o6u_bg2ke_217",
14
- "parent": "awsui_parent_15o6u_bg2ke_221",
15
- "interactiveGroups": "awsui_interactiveGroups_15o6u_bg2ke_225",
16
- "child": "awsui_child_15o6u_bg2ke_241",
17
- "sticky": "awsui_sticky_15o6u_bg2ke_247",
18
- "with-scrollbar": "awsui_with-scrollbar_15o6u_bg2ke_259",
19
- "after-header": "awsui_after-header_15o6u_bg2ke_265",
20
- "measure-strut": "awsui_measure-strut_15o6u_bg2ke_300",
21
- "measure-strut-first": "awsui_measure-strut-first_15o6u_bg2ke_309",
22
- "screenreader-content": "awsui_screenreader-content_15o6u_bg2ke_313",
23
- "option-content": "awsui_option-content_15o6u_bg2ke_319"
5
+ "selectable-item": "awsui_selectable-item_15o6u_vdd35_145",
6
+ "pad-bottom": "awsui_pad-bottom_15o6u_vdd35_167",
7
+ "virtual": "awsui_virtual_15o6u_vdd35_171",
8
+ "has-background": "awsui_has-background_15o6u_vdd35_174",
9
+ "highlighted": "awsui_highlighted_15o6u_vdd35_177",
10
+ "selected": "awsui_selected_15o6u_vdd35_177",
11
+ "disabled": "awsui_disabled_15o6u_vdd35_195",
12
+ "next-item-selected": "awsui_next-item-selected_15o6u_vdd35_205",
13
+ "is-keyboard": "awsui_is-keyboard_15o6u_vdd35_217",
14
+ "parent": "awsui_parent_15o6u_vdd35_221",
15
+ "interactiveGroups": "awsui_interactiveGroups_15o6u_vdd35_225",
16
+ "child": "awsui_child_15o6u_vdd35_241",
17
+ "sticky": "awsui_sticky_15o6u_vdd35_247",
18
+ "with-scrollbar": "awsui_with-scrollbar_15o6u_vdd35_259",
19
+ "after-header": "awsui_after-header_15o6u_vdd35_265",
20
+ "measure-strut": "awsui_measure-strut_15o6u_vdd35_300",
21
+ "measure-strut-first": "awsui_measure-strut-first_15o6u_vdd35_309",
22
+ "screenreader-content": "awsui_screenreader-content_15o6u_vdd35_313",
23
+ "option-content": "awsui_option-content_15o6u_vdd35_319",
24
+ "select-all": "awsui_select-all_15o6u_vdd35_323"
24
25
  };
25
26
 
@@ -1,4 +1,4 @@
1
1
  export var PACKAGE_SOURCE = "components";
2
- export var PACKAGE_VERSION = "3.0.0 (bb0af357)";
2
+ export var PACKAGE_VERSION = "3.0.0 (1ec4cef1)";
3
3
  export var THEME = "open-source-visual-refresh";
4
4
  export var ALWAYS_VISUAL_REFRESH = true;
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "PACKAGE_SOURCE": "components",
3
- "PACKAGE_VERSION": "3.0.0 (bb0af357)",
3
+ "PACKAGE_VERSION": "3.0.0 (1ec4cef1)",
4
4
  "THEME": "open-source-visual-refresh",
5
5
  "ALWAYS_VISUAL_REFRESH": true
6
6
  }
@@ -1,3 +1,3 @@
1
1
  {
2
- "commit": "bb0af3579810142745eba31e28b234c075dd878a"
2
+ "commit": "1ec4cef12ef2e0290a1d2dd4edfd4085c42c2053"
3
3
  }