@cloudscape-design/components-themeable 3.0.1308 → 3.0.1310

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 (195) hide show
  1. package/lib/internal/manifest.json +1 -1
  2. package/lib/internal/scss/badge/styles.scss +19 -6
  3. package/lib/internal/scss/collection-preferences/content-display/content-display-list.scss +10 -0
  4. package/lib/internal/scss/collection-preferences/content-display/content-display-option.scss +12 -0
  5. package/lib/internal/scss/expandable-section/styles.scss +2 -2
  6. package/lib/internal/scss/icon/mixins.scss +7 -0
  7. package/lib/internal/scss/internal/generated/custom-css-properties/index.scss +1 -1
  8. package/lib/internal/scss/table/header-cell/styles.scss +42 -5
  9. package/lib/internal/scss/table/resizer/styles.scss +26 -13
  10. package/lib/internal/scss/table/styles.scss +9 -0
  11. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-ai-drawer.d.ts.map +1 -1
  12. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-ai-drawer.js +4 -2
  13. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-ai-drawer.js.map +1 -1
  14. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-bottom-drawer.d.ts.map +1 -1
  15. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-bottom-drawer.js +4 -2
  16. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-bottom-drawer.js.map +1 -1
  17. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-drawer.d.ts.map +1 -1
  18. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-drawer.js +3 -2
  19. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/global-drawer.js.map +1 -1
  20. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/local-drawer.d.ts.map +1 -1
  21. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/local-drawer.js +2 -2
  22. package/lib/internal/template/app-layout/visual-refresh-toolbar/drawer/local-drawer.js.map +1 -1
  23. package/lib/internal/template/app-layout/visual-refresh-toolbar/interfaces.d.ts +1 -0
  24. package/lib/internal/template/app-layout/visual-refresh-toolbar/interfaces.d.ts.map +1 -1
  25. package/lib/internal/template/app-layout/visual-refresh-toolbar/interfaces.js.map +1 -1
  26. package/lib/internal/template/app-layout/visual-refresh-toolbar/state/use-app-layout.d.ts.map +1 -1
  27. package/lib/internal/template/app-layout/visual-refresh-toolbar/state/use-app-layout.js +12 -1
  28. package/lib/internal/template/app-layout/visual-refresh-toolbar/state/use-app-layout.js.map +1 -1
  29. package/lib/internal/template/badge/styles.css.js +10 -10
  30. package/lib/internal/template/badge/styles.scoped.css +29 -16
  31. package/lib/internal/template/badge/styles.selectors.js +10 -10
  32. package/lib/internal/template/collection-preferences/content-display/content-display-option.js +1 -1
  33. package/lib/internal/template/collection-preferences/content-display/content-display-option.js.map +1 -1
  34. package/lib/internal/template/collection-preferences/content-display/index.d.ts +1 -1
  35. package/lib/internal/template/collection-preferences/content-display/index.d.ts.map +1 -1
  36. package/lib/internal/template/collection-preferences/content-display/index.js +63 -27
  37. package/lib/internal/template/collection-preferences/content-display/index.js.map +1 -1
  38. package/lib/internal/template/collection-preferences/content-display/utils.d.ts +40 -1
  39. package/lib/internal/template/collection-preferences/content-display/utils.d.ts.map +1 -1
  40. package/lib/internal/template/collection-preferences/content-display/utils.js +107 -13
  41. package/lib/internal/template/collection-preferences/content-display/utils.js.map +1 -1
  42. package/lib/internal/template/collection-preferences/index.d.ts.map +1 -1
  43. package/lib/internal/template/collection-preferences/index.js +2 -2
  44. package/lib/internal/template/collection-preferences/index.js.map +1 -1
  45. package/lib/internal/template/collection-preferences/interfaces.d.ts +30 -2
  46. package/lib/internal/template/collection-preferences/interfaces.d.ts.map +1 -1
  47. package/lib/internal/template/collection-preferences/interfaces.js.map +1 -1
  48. package/lib/internal/template/collection-preferences/styles.css.js +38 -36
  49. package/lib/internal/template/collection-preferences/styles.scoped.css +81 -37
  50. package/lib/internal/template/collection-preferences/styles.selectors.js +38 -36
  51. package/lib/internal/template/collection-preferences/utils.d.ts +1 -0
  52. package/lib/internal/template/collection-preferences/utils.d.ts.map +1 -1
  53. package/lib/internal/template/collection-preferences/utils.js +14 -0
  54. package/lib/internal/template/collection-preferences/utils.js.map +1 -1
  55. package/lib/internal/template/expandable-section/styles.css.js +35 -35
  56. package/lib/internal/template/expandable-section/styles.scoped.css +68 -68
  57. package/lib/internal/template/expandable-section/styles.selectors.js +35 -35
  58. package/lib/internal/template/i18n/messages/all.all.js +1 -1
  59. package/lib/internal/template/i18n/messages/all.all.json +1 -1
  60. package/lib/internal/template/i18n/messages/all.en.js +1 -1
  61. package/lib/internal/template/i18n/messages/all.en.json +1 -1
  62. package/lib/internal/template/i18n/messages-types.d.ts +4 -0
  63. package/lib/internal/template/i18n/messages-types.d.ts.map +1 -1
  64. package/lib/internal/template/i18n/messages-types.js.map +1 -1
  65. package/lib/internal/template/icon/interfaces.d.ts +1 -1
  66. package/lib/internal/template/icon/interfaces.d.ts.map +1 -1
  67. package/lib/internal/template/icon/interfaces.js.map +1 -1
  68. package/lib/internal/template/icon/internal.js +2 -2
  69. package/lib/internal/template/icon/internal.js.map +1 -1
  70. package/lib/internal/template/icon/styles.css.js +41 -39
  71. package/lib/internal/template/icon/styles.scoped.css +104 -85
  72. package/lib/internal/template/icon/styles.selectors.js +41 -39
  73. package/lib/internal/template/internal/base-component/styles.scoped.css +57 -5
  74. package/lib/internal/template/internal/environment.js +2 -2
  75. package/lib/internal/template/internal/environment.json +2 -2
  76. package/lib/internal/template/internal/generated/styles/tokens.d.ts +23 -1
  77. package/lib/internal/template/internal/generated/styles/tokens.js +23 -1
  78. package/lib/internal/template/internal/generated/theming/index.cjs +476 -4
  79. package/lib/internal/template/internal/generated/theming/index.cjs.d.ts +216 -0
  80. package/lib/internal/template/internal/generated/theming/index.d.ts +216 -0
  81. package/lib/internal/template/internal/generated/theming/index.js +476 -4
  82. package/lib/internal/template/internal/hooks/use-width-change/index.d.ts +13 -0
  83. package/lib/internal/template/internal/hooks/use-width-change/index.d.ts.map +1 -0
  84. package/lib/internal/template/internal/hooks/use-width-change/index.js +33 -0
  85. package/lib/internal/template/internal/hooks/use-width-change/index.js.map +1 -0
  86. package/lib/internal/template/pagination/internal.d.ts.map +1 -1
  87. package/lib/internal/template/pagination/internal.js +4 -1
  88. package/lib/internal/template/pagination/internal.js.map +1 -1
  89. package/lib/internal/template/prompt-input/internal.d.ts.map +1 -1
  90. package/lib/internal/template/prompt-input/internal.js +9 -2
  91. package/lib/internal/template/prompt-input/internal.js.map +1 -1
  92. package/lib/internal/template/prompt-input/tokens/use-token-mode.d.ts.map +1 -1
  93. package/lib/internal/template/prompt-input/tokens/use-token-mode.js +0 -9
  94. package/lib/internal/template/prompt-input/tokens/use-token-mode.js.map +1 -1
  95. package/lib/internal/template/table/column-groups/col-group.d.ts +8 -0
  96. package/lib/internal/template/table/column-groups/col-group.d.ts.map +1 -0
  97. package/lib/internal/template/table/column-groups/col-group.js +24 -0
  98. package/lib/internal/template/table/column-groups/col-group.js.map +1 -0
  99. package/lib/internal/template/table/column-groups/split-utils.d.ts +27 -0
  100. package/lib/internal/template/table/column-groups/split-utils.d.ts.map +1 -0
  101. package/lib/internal/template/table/column-groups/split-utils.js +43 -0
  102. package/lib/internal/template/table/column-groups/split-utils.js.map +1 -0
  103. package/lib/internal/template/table/column-groups/use-column-groups.d.ts +8 -0
  104. package/lib/internal/template/table/column-groups/use-column-groups.d.ts.map +1 -0
  105. package/lib/internal/template/table/column-groups/use-column-groups.js +23 -0
  106. package/lib/internal/template/table/column-groups/use-column-groups.js.map +1 -0
  107. package/lib/internal/template/table/column-groups/utils.d.ts +55 -0
  108. package/lib/internal/template/table/column-groups/utils.d.ts.map +1 -0
  109. package/lib/internal/template/table/column-groups/utils.js +204 -0
  110. package/lib/internal/template/table/column-groups/utils.js.map +1 -0
  111. package/lib/internal/template/table/header-cell/common-props.d.ts +24 -0
  112. package/lib/internal/template/table/header-cell/common-props.d.ts.map +1 -0
  113. package/lib/internal/template/table/header-cell/common-props.js +4 -0
  114. package/lib/internal/template/table/header-cell/common-props.js.map +1 -0
  115. package/lib/internal/template/table/header-cell/group-header-cell.d.ts +18 -0
  116. package/lib/internal/template/table/header-cell/group-header-cell.d.ts.map +1 -0
  117. package/lib/internal/template/table/header-cell/group-header-cell.js +44 -0
  118. package/lib/internal/template/table/header-cell/group-header-cell.js.map +1 -0
  119. package/lib/internal/template/table/header-cell/index.d.ts +8 -23
  120. package/lib/internal/template/table/header-cell/index.d.ts.map +1 -1
  121. package/lib/internal/template/table/header-cell/index.js +3 -3
  122. package/lib/internal/template/table/header-cell/index.js.map +1 -1
  123. package/lib/internal/template/table/header-cell/styles.css.js +33 -30
  124. package/lib/internal/template/table/header-cell/styles.scoped.css +92 -68
  125. package/lib/internal/template/table/header-cell/styles.selectors.js +33 -30
  126. package/lib/internal/template/table/header-cell/th-element.d.ts +10 -1
  127. package/lib/internal/template/table/header-cell/th-element.d.ts.map +1 -1
  128. package/lib/internal/template/table/header-cell/th-element.js +6 -4
  129. package/lib/internal/template/table/header-cell/th-element.js.map +1 -1
  130. package/lib/internal/template/table/index.d.ts.map +1 -1
  131. package/lib/internal/template/table/index.js +5 -2
  132. package/lib/internal/template/table/index.js.map +1 -1
  133. package/lib/internal/template/table/interfaces.d.ts +37 -1
  134. package/lib/internal/template/table/interfaces.d.ts.map +1 -1
  135. package/lib/internal/template/table/interfaces.js.map +1 -1
  136. package/lib/internal/template/table/internal.d.ts.map +1 -1
  137. package/lib/internal/template/table/internal.js +17 -5
  138. package/lib/internal/template/table/internal.js.map +1 -1
  139. package/lib/internal/template/table/resizer/index.d.ts +6 -2
  140. package/lib/internal/template/table/resizer/index.d.ts.map +1 -1
  141. package/lib/internal/template/table/resizer/index.js +5 -5
  142. package/lib/internal/template/table/resizer/index.js.map +1 -1
  143. package/lib/internal/template/table/resizer/styles.css.js +16 -13
  144. package/lib/internal/template/table/resizer/styles.scoped.css +36 -26
  145. package/lib/internal/template/table/resizer/styles.selectors.js +16 -13
  146. package/lib/internal/template/table/sticky-header.d.ts +3 -0
  147. package/lib/internal/template/table/sticky-header.d.ts.map +1 -1
  148. package/lib/internal/template/table/sticky-header.js +7 -2
  149. package/lib/internal/template/table/sticky-header.js.map +1 -1
  150. package/lib/internal/template/table/sticky-scrolling.d.ts.map +1 -1
  151. package/lib/internal/template/table/sticky-scrolling.js +6 -1
  152. package/lib/internal/template/table/sticky-scrolling.js.map +1 -1
  153. package/lib/internal/template/table/styles.css.js +35 -34
  154. package/lib/internal/template/table/styles.scoped.css +47 -41
  155. package/lib/internal/template/table/styles.selectors.js +35 -34
  156. package/lib/internal/template/table/table-role/grid-navigation.d.ts.map +1 -1
  157. package/lib/internal/template/table/table-role/grid-navigation.js +5 -7
  158. package/lib/internal/template/table/table-role/grid-navigation.js.map +1 -1
  159. package/lib/internal/template/table/table-role/table-role-helper.d.ts +3 -0
  160. package/lib/internal/template/table/table-role/table-role-helper.d.ts.map +1 -1
  161. package/lib/internal/template/table/table-role/table-role-helper.js +9 -4
  162. package/lib/internal/template/table/table-role/table-role-helper.js.map +1 -1
  163. package/lib/internal/template/table/table-role/utils.d.ts +19 -0
  164. package/lib/internal/template/table/table-role/utils.d.ts.map +1 -1
  165. package/lib/internal/template/table/table-role/utils.js +86 -7
  166. package/lib/internal/template/table/table-role/utils.js.map +1 -1
  167. package/lib/internal/template/table/thead.d.ts +5 -0
  168. package/lib/internal/template/table/thead.d.ts.map +1 -1
  169. package/lib/internal/template/table/thead.js +145 -18
  170. package/lib/internal/template/table/thead.js.map +1 -1
  171. package/lib/internal/template/table/use-column-widths.d.ts +4 -1
  172. package/lib/internal/template/table/use-column-widths.d.ts.map +1 -1
  173. package/lib/internal/template/table/use-column-widths.js +68 -18
  174. package/lib/internal/template/table/use-column-widths.js.map +1 -1
  175. package/lib/internal/template/table/use-sticky-header.d.ts.map +1 -1
  176. package/lib/internal/template/table/use-sticky-header.js +4 -1
  177. package/lib/internal/template/table/use-sticky-header.js.map +1 -1
  178. package/lib/internal/template/table/utils.d.ts.map +1 -1
  179. package/lib/internal/template/table/utils.js +14 -4
  180. package/lib/internal/template/table/utils.js.map +1 -1
  181. package/lib/internal/template/test-utils/dom/collection-preferences/content-display-preference.d.ts +28 -2
  182. package/lib/internal/template/test-utils/dom/collection-preferences/content-display-preference.js +60 -2
  183. package/lib/internal/template/test-utils/dom/collection-preferences/content-display-preference.js.map +1 -1
  184. package/lib/internal/template/test-utils/dom/table/index.d.ts +18 -1
  185. package/lib/internal/template/test-utils/dom/table/index.js +22 -3
  186. package/lib/internal/template/test-utils/dom/table/index.js.map +1 -1
  187. package/lib/internal/template/test-utils/selectors/collection-preferences/content-display-preference.d.ts +28 -2
  188. package/lib/internal/template/test-utils/selectors/collection-preferences/content-display-preference.js +52 -2
  189. package/lib/internal/template/test-utils/selectors/collection-preferences/content-display-preference.js.map +1 -1
  190. package/lib/internal/template/test-utils/selectors/table/index.d.ts +18 -1
  191. package/lib/internal/template/test-utils/selectors/table/index.js +22 -3
  192. package/lib/internal/template/test-utils/selectors/table/index.js.map +1 -1
  193. package/lib/internal/template/wizard/wizard-step-list.js +4 -4
  194. package/lib/internal/template/wizard/wizard-step-list.js.map +1 -1
  195. package/package.json +1 -1
@@ -2,41 +2,43 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "visible-content": "awsui_visible-content_tc96w_cfz4e_153",
6
- "visible-content-toggle": "awsui_visible-content-toggle_tc96w_cfz4e_154",
7
- "visible-content-groups": "awsui_visible-content-groups_tc96w_cfz4e_155",
8
- "visible-content-group": "awsui_visible-content-group_tc96w_cfz4e_155",
9
- "visible-content-title": "awsui_visible-content-title_tc96w_cfz4e_160",
10
- "visible-content-group-label": "awsui_visible-content-group-label_tc96w_cfz4e_170",
11
- "visible-content-option": "awsui_visible-content-option_tc96w_cfz4e_176",
12
- "visible-content-option-label": "awsui_visible-content-option-label_tc96w_cfz4e_189",
13
- "content-display-option-toggle": "awsui_content-display-option-toggle_tc96w_cfz4e_212",
14
- "content-display-option-content": "awsui_content-display-option-content_tc96w_cfz4e_216",
15
- "content-display-option-label": "awsui_content-display-option-label_tc96w_cfz4e_256",
16
- "content-display": "awsui_content-display_tc96w_cfz4e_212",
17
- "content-display-text-filter": "awsui_content-display-text-filter_tc96w_cfz4e_264",
18
- "content-display-no-match": "awsui_content-display-no-match_tc96w_cfz4e_265",
19
- "content-display-title": "awsui_content-display-title_tc96w_cfz4e_269",
20
- "content-display-description": "awsui_content-display-description_tc96w_cfz4e_278",
21
- "content-display-option-list": "awsui_content-display-option-list_tc96w_cfz4e_286",
22
- "root": "awsui_root_tc96w_cfz4e_293",
23
- "modal-root": "awsui_modal-root_tc96w_cfz4e_294",
24
- "trigger-button": "awsui_trigger-button_tc96w_cfz4e_295",
25
- "cancel-button": "awsui_cancel-button_tc96w_cfz4e_296",
26
- "confirm-button": "awsui_confirm-button_tc96w_cfz4e_297",
27
- "custom": "awsui_custom_tc96w_cfz4e_298",
28
- "content-before": "awsui_content-before_tc96w_cfz4e_299",
29
- "second-column-small": "awsui_second-column-small_tc96w_cfz4e_303",
30
- "wrap-lines": "awsui_wrap-lines_tc96w_cfz4e_307",
31
- "striped-rows": "awsui_striped-rows_tc96w_cfz4e_308",
32
- "content-density": "awsui_content-density_tc96w_cfz4e_309",
33
- "page-size": "awsui_page-size_tc96w_cfz4e_310",
34
- "page-size-form-field": "awsui_page-size-form-field_tc96w_cfz4e_311",
35
- "page-size-radio-group": "awsui_page-size-radio-group_tc96w_cfz4e_312",
36
- "sticky-columns": "awsui_sticky-columns_tc96w_cfz4e_313",
37
- "sticky-columns-form-field": "awsui_sticky-columns-form-field_tc96w_cfz4e_314",
38
- "sticky-columns-radio-group": "awsui_sticky-columns-radio-group_tc96w_cfz4e_315",
39
- "sticky-columns-first": "awsui_sticky-columns-first_tc96w_cfz4e_316",
40
- "sticky-columns-last": "awsui_sticky-columns-last_tc96w_cfz4e_317"
5
+ "visible-content": "awsui_visible-content_tc96w_1r78p_153",
6
+ "visible-content-toggle": "awsui_visible-content-toggle_tc96w_1r78p_154",
7
+ "visible-content-groups": "awsui_visible-content-groups_tc96w_1r78p_155",
8
+ "visible-content-group": "awsui_visible-content-group_tc96w_1r78p_155",
9
+ "visible-content-title": "awsui_visible-content-title_tc96w_1r78p_160",
10
+ "visible-content-group-label": "awsui_visible-content-group-label_tc96w_1r78p_170",
11
+ "visible-content-option": "awsui_visible-content-option_tc96w_1r78p_176",
12
+ "visible-content-option-label": "awsui_visible-content-option-label_tc96w_1r78p_189",
13
+ "content-display-option-toggle": "awsui_content-display-option-toggle_tc96w_1r78p_212",
14
+ "content-display-option-content": "awsui_content-display-option-content_tc96w_1r78p_216",
15
+ "content-display-option-label": "awsui_content-display-option-label_tc96w_1r78p_256",
16
+ "content-display-group-header": "awsui_content-display-group-header_tc96w_1r78p_263",
17
+ "content-display": "awsui_content-display_tc96w_1r78p_212",
18
+ "content-display-text-filter": "awsui_content-display-text-filter_tc96w_1r78p_304",
19
+ "content-display-no-match": "awsui_content-display-no-match_tc96w_1r78p_305",
20
+ "content-display-title": "awsui_content-display-title_tc96w_1r78p_309",
21
+ "content-display-description": "awsui_content-display-description_tc96w_1r78p_318",
22
+ "content-display-option-list": "awsui_content-display-option-list_tc96w_1r78p_326",
23
+ "content-display-group-children": "awsui_content-display-group-children_tc96w_1r78p_333",
24
+ "root": "awsui_root_tc96w_1r78p_337",
25
+ "modal-root": "awsui_modal-root_tc96w_1r78p_338",
26
+ "trigger-button": "awsui_trigger-button_tc96w_1r78p_339",
27
+ "cancel-button": "awsui_cancel-button_tc96w_1r78p_340",
28
+ "confirm-button": "awsui_confirm-button_tc96w_1r78p_341",
29
+ "custom": "awsui_custom_tc96w_1r78p_342",
30
+ "content-before": "awsui_content-before_tc96w_1r78p_343",
31
+ "second-column-small": "awsui_second-column-small_tc96w_1r78p_347",
32
+ "wrap-lines": "awsui_wrap-lines_tc96w_1r78p_351",
33
+ "striped-rows": "awsui_striped-rows_tc96w_1r78p_352",
34
+ "content-density": "awsui_content-density_tc96w_1r78p_353",
35
+ "page-size": "awsui_page-size_tc96w_1r78p_354",
36
+ "page-size-form-field": "awsui_page-size-form-field_tc96w_1r78p_355",
37
+ "page-size-radio-group": "awsui_page-size-radio-group_tc96w_1r78p_356",
38
+ "sticky-columns": "awsui_sticky-columns_tc96w_1r78p_357",
39
+ "sticky-columns-form-field": "awsui_sticky-columns-form-field_tc96w_1r78p_358",
40
+ "sticky-columns-radio-group": "awsui_sticky-columns-radio-group_tc96w_1r78p_359",
41
+ "sticky-columns-first": "awsui_sticky-columns-first_tc96w_1r78p_360",
42
+ "sticky-columns-last": "awsui_sticky-columns-last_tc96w_1r78p_361"
41
43
  };
42
44
 
@@ -38,6 +38,7 @@ interface StickyColumnsPreferenceProps extends CollectionPreferencesProps.Sticky
38
38
  };
39
39
  }
40
40
  export declare const StickyColumnsPreference: ({ firstColumns, lastColumns, onChange, value, }: StickyColumnsPreferenceProps) => JSX.Element;
41
+ export declare const collectVisibleIds: (items: ReadonlyArray<CollectionPreferencesProps.ContentDisplayItem>, ancestorVisible: boolean) => string[];
41
42
  interface CustomPreferenceProps<T = any> extends Pick<CollectionPreferencesProps<T>, 'customPreference'> {
42
43
  onChange: (value: T) => void;
43
44
  value: T;
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/collection-preferences/utils.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAWxC,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAI1D,eAAO,MAAM,eAAe,GAAI,8GAS7B,0BAA0B,CAAC,WAAW,KAAG,0BAA0B,CAAC,WASrE,CAAC;AAIH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,0BAA0B,CAAC,WAAW,EAC/C,SAAS,0BAA0B,CAAC,WAAW,KAC9C,0BAA0B,CAAC,WAkB7B,CAAC;AAEF,UAAU,uBAAuB;IAC/B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,eAAO,MAAM,kBAAkB,GAAI,iBAAiB,uBAAuB,gBAa1E,CAAC;AAEF,UAAU,uBAAwB,SAAQ,0BAA0B,CAAC,kBAAkB;IACrF,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,kBAAkB,GAAI,qCAAqC,uBAAuB,gBAkB9F,CAAC;AAEF,UAAU,wBAAyB,SAAQ,0BAA0B,CAAC,mBAAmB;IACvF,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,mBAAmB,GAAI,yCAAyC,wBAAwB,gBAcpG,CAAC;AAEF,UAAU,0BAA2B,SAAQ,0BAA0B,CAAC,qBAAqB;IAC3F,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,qBAAqB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,0BAA0B,eAcxG;AAED,UAAU,6BAA8B,SAAQ,0BAA0B,CAAC,wBAAwB;IACjG,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,KAAK,IAAI,CAAC;IACrD,KAAK,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,wBAAwB,GAAI,yCAAyC,6BAA6B,gBAc9G,CAAC;AAEF,UAAU,4BAA6B,SAAQ,0BAA0B,CAAC,uBAAuB;IAC/F,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AA+BD,eAAO,MAAM,uBAAuB,GAAI,iDAKrC,4BAA4B,gBAqB9B,CAAC;AAEF,UAAU,qBAAqB,CAAC,CAAC,GAAG,GAAG,CAAE,SAAQ,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC;IACtG,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,CAAC,CAAC;CACV;AACD,eAAO,MAAM,gBAAgB,GAAI,uCAAuC,qBAAqB,uBAc5F,CAAC"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../../src/collection-preferences/utils.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAmB,MAAM,OAAO,CAAC;AAWxC,OAAO,EAAE,0BAA0B,EAAE,MAAM,cAAc,CAAC;AAI1D,eAAO,MAAM,eAAe,GAAI,8GAS7B,0BAA0B,CAAC,WAAW,KAAG,0BAA0B,CAAC,WASrE,CAAC;AAIH,eAAO,MAAM,gBAAgB,GAC3B,SAAS,0BAA0B,CAAC,WAAW,EAC/C,SAAS,0BAA0B,CAAC,WAAW,KAC9C,0BAA0B,CAAC,WAkB7B,CAAC;AAEF,UAAU,uBAAuB;IAC/B,IAAI,EAAE,KAAK,CAAC,SAAS,CAAC;IACtB,KAAK,EAAE,KAAK,CAAC,SAAS,CAAC;CACxB;AAED,eAAO,MAAM,kBAAkB,GAAI,iBAAiB,uBAAuB,gBAa1E,CAAC;AAEF,UAAU,uBAAwB,SAAQ,0BAA0B,CAAC,kBAAkB;IACrF,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IAClC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,eAAO,MAAM,kBAAkB,GAAI,qCAAqC,uBAAuB,gBAkB9F,CAAC;AAEF,UAAU,wBAAyB,SAAQ,0BAA0B,CAAC,mBAAmB;IACvF,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,eAAO,MAAM,mBAAmB,GAAI,yCAAyC,wBAAwB,gBAcpG,CAAC;AAEF,UAAU,0BAA2B,SAAQ,0BAA0B,CAAC,qBAAqB;IAC3F,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;IACnC,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,qBAAqB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAE,EAAE,0BAA0B,eAcxG;AAED,UAAU,6BAA8B,SAAQ,0BAA0B,CAAC,wBAAwB;IACjG,QAAQ,EAAE,CAAC,KAAK,EAAE,aAAa,GAAG,SAAS,KAAK,IAAI,CAAC;IACrD,KAAK,CAAC,EAAE,aAAa,GAAG,SAAS,CAAC;CACnC;AAED,eAAO,MAAM,wBAAwB,GAAI,yCAAyC,6BAA6B,gBAc9G,CAAC;AAEF,UAAU,4BAA6B,SAAQ,0BAA0B,CAAC,uBAAuB;IAC/F,QAAQ,EAAE,CAAC,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,KAAK,IAAI,CAAC;IAC9D,KAAK,CAAC,EAAE;QAAE,KAAK,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3C;AA+BD,eAAO,MAAM,uBAAuB,GAAI,iDAKrC,4BAA4B,gBAqB9B,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,OAAO,aAAa,CAAC,0BAA0B,CAAC,kBAAkB,CAAC,EACnE,iBAAiB,OAAO,KACvB,MAAM,EAYR,CAAC;AAEF,UAAU,qBAAqB,CAAC,CAAC,GAAG,GAAG,CAAE,SAAQ,IAAI,CAAC,0BAA0B,CAAC,CAAC,CAAC,EAAE,kBAAkB,CAAC;IACtG,QAAQ,EAAE,CAAC,KAAK,EAAE,CAAC,KAAK,IAAI,CAAC;IAC7B,KAAK,EAAE,CAAC,CAAC;CACV;AACD,eAAO,MAAM,gBAAgB,GAAI,uCAAuC,qBAAqB,uBAc5F,CAAC"}
@@ -81,6 +81,20 @@ export const StickyColumnsPreference = ({ firstColumns, lastColumns, onChange, v
81
81
  firstColumns && (React.createElement(StickyPreference, { firstOrLast: "first", preference: firstColumns, value: value === null || value === void 0 ? void 0 : value.first, onChange: newValue => onChange({ ...value, first: newValue }) })),
82
82
  lastColumns && (React.createElement(StickyPreference, { firstOrLast: "last", preference: lastColumns, value: value === null || value === void 0 ? void 0 : value.last, onChange: newValue => onChange({ ...value, last: newValue }) }))));
83
83
  };
84
+ export const collectVisibleIds = (items, ancestorVisible) => {
85
+ const result = [];
86
+ for (const item of items) {
87
+ if (item.type === 'group') {
88
+ if (ancestorVisible && item.visible) {
89
+ result.push(...collectVisibleIds(item.children, true));
90
+ }
91
+ }
92
+ else if (ancestorVisible && item.visible) {
93
+ result.push(item.id);
94
+ }
95
+ }
96
+ return result;
97
+ };
84
98
  export const CustomPreference = ({ value, customPreference, onChange }) => {
85
99
  const [customState, setCustomState] = useState(value);
86
100
  if (customPreference) {
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/collection-preferences/utils.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, { useState } from 'react';\nimport clsx from 'clsx';\n\nimport InternalCheckbox from '../checkbox/internal';\nimport InternalColumnLayout from '../column-layout/internal';\nimport InternalFormField from '../form-field/internal';\nimport { useInternalI18n } from '../i18n/context';\nimport { useContainerBreakpoints } from '../internal/hooks/container-queries';\nimport InternalRadioGroup from '../radio-group/internal';\nimport InternalSpaceBetween from '../space-between/internal';\nimport { getAnalyticsInnerContextAttribute } from './analytics-metadata/utils';\nimport { CollectionPreferencesProps } from './interfaces';\n\nimport styles from './styles.css.js';\n\nexport const copyPreferences = ({\n pageSize,\n wrapLines,\n stripedRows,\n contentDensity,\n visibleContent,\n contentDisplay,\n stickyColumns,\n custom,\n}: CollectionPreferencesProps.Preferences): CollectionPreferencesProps.Preferences => ({\n pageSize,\n wrapLines,\n stripedRows,\n contentDensity,\n visibleContent,\n contentDisplay,\n stickyColumns,\n custom,\n});\n\ntype CopyPreferenceName = keyof CollectionPreferencesProps.Preferences;\n\nexport const mergePreferences = (\n newPref: CollectionPreferencesProps.Preferences,\n oldPref: CollectionPreferencesProps.Preferences\n): CollectionPreferencesProps.Preferences => {\n const newObj = { ...oldPref };\n const prefNames: CopyPreferenceName[] = [\n 'pageSize',\n 'wrapLines',\n 'stripedRows',\n 'contentDensity',\n 'visibleContent',\n 'custom',\n 'contentDisplay',\n 'stickyColumns',\n ];\n for (const prefName of prefNames) {\n if (newPref[prefName] !== undefined) {\n newObj[prefName] = newPref[prefName];\n }\n }\n return newObj;\n};\n\ninterface ModalContentLayoutProps {\n left: React.ReactNode;\n right: React.ReactNode;\n}\n\nexport const ModalContentLayout = ({ left, right }: ModalContentLayoutProps) => {\n const [breakpoint, ref] = useContainerBreakpoints(['xs']);\n const smallContainer = breakpoint === 'default';\n\n const columns = left && right ? 2 : 1;\n return (\n <div ref={ref}>\n <InternalColumnLayout columns={smallContainer ? 1 : columns} variant=\"text-grid\">\n {left && <div>{left}</div>}\n {right && <div className={clsx(left && smallContainer && styles['second-column-small'])}>{right}</div>}\n </InternalColumnLayout>\n </div>\n );\n};\n\ninterface PageSizePreferenceProps extends CollectionPreferencesProps.PageSizePreference {\n onChange: (value: number) => void;\n value?: number;\n}\n\nexport const PageSizePreference = ({ title, options, value, onChange }: PageSizePreferenceProps) => {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div className={styles['page-size']} {...getAnalyticsInnerContextAttribute('pageSize')}>\n <InternalFormField\n label={i18n('pageSizePreference.title', title)}\n stretch={true}\n className={styles['page-size-form-field']}\n >\n <InternalRadioGroup\n className={styles['page-size-radio-group']}\n value={`${value}`}\n items={options.map(({ label, value }) => ({ label, value: `${value}` }))}\n onChange={({ detail }) => onChange(parseInt(detail.value, 10))}\n />\n </InternalFormField>\n </div>\n );\n};\n\ninterface WrapLinesPreferenceProps extends CollectionPreferencesProps.WrapLinesPreference {\n onChange: (value: boolean) => void;\n value?: boolean;\n}\n\nexport const WrapLinesPreference = ({ label, description, value, onChange }: WrapLinesPreferenceProps) => {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div {...getAnalyticsInnerContextAttribute('wrapLines')}>\n <InternalCheckbox\n checked={!!value}\n description={i18n('wrapLinesPreference.description', description)}\n onChange={({ detail }) => onChange(detail.checked)}\n className={styles['wrap-lines']}\n >\n {i18n('wrapLinesPreference.label', label)}\n </InternalCheckbox>\n </div>\n );\n};\n\ninterface StripedRowsPreferenceProps extends CollectionPreferencesProps.StripedRowsPreference {\n onChange: (value: boolean) => void;\n value?: boolean;\n}\n\nexport function StripedRowsPreference({ label, description, value, onChange }: StripedRowsPreferenceProps) {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div {...getAnalyticsInnerContextAttribute('stripedRows')}>\n <InternalCheckbox\n checked={!!value}\n description={i18n('stripedRowsPreference.description', description)}\n onChange={({ detail }) => onChange(detail.checked)}\n className={styles['striped-rows']}\n >\n {i18n('stripedRowsPreference.label', label)}\n </InternalCheckbox>\n </div>\n );\n}\n\ninterface ContentDensityPreferenceProps extends CollectionPreferencesProps.ContentDensityPreference {\n onChange: (value: 'comfortable' | 'compact') => void;\n value?: 'comfortable' | 'compact';\n}\n\nexport const ContentDensityPreference = ({ label, description, value, onChange }: ContentDensityPreferenceProps) => {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div {...getAnalyticsInnerContextAttribute('contentDensity')}>\n <InternalCheckbox\n checked={value === 'compact'}\n description={i18n('contentDensityPreference.description', description)}\n onChange={({ detail }) => onChange(detail.checked ? 'compact' : 'comfortable')}\n className={styles['content-density']}\n >\n {i18n('contentDensityPreference.label', label)}\n </InternalCheckbox>\n </div>\n );\n};\n\ninterface StickyColumnsPreferenceProps extends CollectionPreferencesProps.StickyColumnsPreference {\n onChange: (value?: { first?: number; last?: number }) => void;\n value?: { first?: number; last?: number };\n}\ninterface StickyPreference extends CollectionPreferencesProps.StickyColumnsPreference {\n onChange: (value: number) => void;\n preference: {\n title: string;\n description: string;\n options: ReadonlyArray<{\n label: string;\n value: number;\n }>;\n };\n value?: number;\n firstOrLast: 'first' | 'last';\n}\n\nconst StickyPreference = ({ firstOrLast, preference, value, onChange }: StickyPreference) => {\n const { title, description, options } = preference;\n return (\n <div className={styles[`sticky-columns-${firstOrLast}`]} {...getAnalyticsInnerContextAttribute('stickyColumns')}>\n <InternalFormField className={styles['sticky-columns-form-field']} label={title} description={description}>\n <InternalRadioGroup\n className={styles['sticky-columns-radio-group']}\n value={typeof value !== 'undefined' ? `${value}` : null}\n items={options.map(({ label, value }) => ({ label, value: `${value}` }))}\n onChange={({ detail }) => onChange(Number(detail.value))}\n />\n </InternalFormField>\n </div>\n );\n};\n\nexport const StickyColumnsPreference = ({\n firstColumns,\n lastColumns,\n onChange,\n value,\n}: StickyColumnsPreferenceProps) => {\n return (\n <InternalSpaceBetween className={styles['sticky-columns']} size=\"l\">\n {firstColumns && (\n <StickyPreference\n firstOrLast=\"first\"\n preference={firstColumns}\n value={value?.first}\n onChange={newValue => onChange({ ...value, first: newValue })}\n />\n )}\n {lastColumns && (\n <StickyPreference\n firstOrLast=\"last\"\n preference={lastColumns}\n value={value?.last}\n onChange={newValue => onChange({ ...value, last: newValue })}\n />\n )}\n </InternalSpaceBetween>\n );\n};\n\ninterface CustomPreferenceProps<T = any> extends Pick<CollectionPreferencesProps<T>, 'customPreference'> {\n onChange: (value: T) => void;\n value: T;\n}\nexport const CustomPreference = ({ value, customPreference, onChange }: CustomPreferenceProps) => {\n const [customState, setCustomState] = useState(value);\n if (customPreference) {\n return (\n <div className={styles.custom} {...getAnalyticsInnerContextAttribute('custom')}>\n {customPreference(customState, value => {\n // prevent value to be treated as a functional callback\n setCustomState(() => value);\n onChange(value);\n })}\n </div>\n );\n }\n return null;\n};\n"]}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../../src/collection-preferences/utils.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AACxC,OAAO,IAAI,MAAM,MAAM,CAAC;AAExB,OAAO,gBAAgB,MAAM,sBAAsB,CAAC;AACpD,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,iBAAiB,MAAM,wBAAwB,CAAC;AACvD,OAAO,EAAE,eAAe,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,kBAAkB,MAAM,yBAAyB,CAAC;AACzD,OAAO,oBAAoB,MAAM,2BAA2B,CAAC;AAC7D,OAAO,EAAE,iCAAiC,EAAE,MAAM,4BAA4B,CAAC;AAG/E,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,CAAC,MAAM,eAAe,GAAG,CAAC,EAC9B,QAAQ,EACR,SAAS,EACT,WAAW,EACX,cAAc,EACd,cAAc,EACd,cAAc,EACd,aAAa,EACb,MAAM,GACiC,EAA0C,EAAE,CAAC,CAAC;IACrF,QAAQ;IACR,SAAS;IACT,WAAW;IACX,cAAc;IACd,cAAc;IACd,cAAc;IACd,aAAa;IACb,MAAM;CACP,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAC9B,OAA+C,EAC/C,OAA+C,EACP,EAAE;IAC1C,MAAM,MAAM,GAAG,EAAE,GAAG,OAAO,EAAE,CAAC;IAC9B,MAAM,SAAS,GAAyB;QACtC,UAAU;QACV,WAAW;QACX,aAAa;QACb,gBAAgB;QAChB,gBAAgB;QAChB,QAAQ;QACR,gBAAgB;QAChB,eAAe;KAChB,CAAC;IACF,KAAK,MAAM,QAAQ,IAAI,SAAS,EAAE,CAAC;QACjC,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,CAAC,QAAQ,CAAC,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvC,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAE,IAAI,EAAE,KAAK,EAA2B,EAAE,EAAE;IAC7E,MAAM,CAAC,UAAU,EAAE,GAAG,CAAC,GAAG,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IAC1D,MAAM,cAAc,GAAG,UAAU,KAAK,SAAS,CAAC;IAEhD,MAAM,OAAO,GAAG,IAAI,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IACtC,OAAO,CACL,6BAAK,GAAG,EAAE,GAAG;QACX,oBAAC,oBAAoB,IAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,OAAO,EAAC,WAAW;YAC7E,IAAI,IAAI,iCAAM,IAAI,CAAO;YACzB,KAAK,IAAI,6BAAK,SAAS,EAAE,IAAI,CAAC,IAAI,IAAI,cAAc,IAAI,MAAM,CAAC,qBAAqB,CAAC,CAAC,IAAG,KAAK,CAAO,CACjF,CACnB,CACP,CAAC;AACJ,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAA2B,EAAE,EAAE;IACjG,MAAM,IAAI,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;IACvD,OAAO,CACL,6BAAK,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,KAAM,iCAAiC,CAAC,UAAU,CAAC;QACpF,oBAAC,iBAAiB,IAChB,KAAK,EAAE,IAAI,CAAC,0BAA0B,EAAE,KAAK,CAAC,EAC9C,OAAO,EAAE,IAAI,EACb,SAAS,EAAE,MAAM,CAAC,sBAAsB,CAAC;YAEzC,oBAAC,kBAAkB,IACjB,SAAS,EAAE,MAAM,CAAC,uBAAuB,CAAC,EAC1C,KAAK,EAAE,GAAG,KAAK,EAAE,EACjB,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,EACxE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC,GAC9D,CACgB,CAChB,CACP,CAAC;AACJ,CAAC,CAAC;AAOF,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAA4B,EAAE,EAAE;IACvG,MAAM,IAAI,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;IACvD,OAAO,CACL,gCAAS,iCAAiC,CAAC,WAAW,CAAC;QACrD,oBAAC,gBAAgB,IACf,OAAO,EAAE,CAAC,CAAC,KAAK,EAChB,WAAW,EAAE,IAAI,CAAC,iCAAiC,EAAE,WAAW,CAAC,EACjE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAClD,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,IAE9B,IAAI,CAAC,2BAA2B,EAAE,KAAK,CAAC,CACxB,CACf,CACP,CAAC;AACJ,CAAC,CAAC;AAOF,MAAM,UAAU,qBAAqB,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAA8B;IACvG,MAAM,IAAI,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;IACvD,OAAO,CACL,gCAAS,iCAAiC,CAAC,aAAa,CAAC;QACvD,oBAAC,gBAAgB,IACf,OAAO,EAAE,CAAC,CAAC,KAAK,EAChB,WAAW,EAAE,IAAI,CAAC,mCAAmC,EAAE,WAAW,CAAC,EACnE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,EAClD,SAAS,EAAE,MAAM,CAAC,cAAc,CAAC,IAEhC,IAAI,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAC1B,CACf,CACP,CAAC;AACJ,CAAC;AAOD,MAAM,CAAC,MAAM,wBAAwB,GAAG,CAAC,EAAE,KAAK,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ,EAAiC,EAAE,EAAE;IACjH,MAAM,IAAI,GAAG,eAAe,CAAC,wBAAwB,CAAC,CAAC;IACvD,OAAO,CACL,gCAAS,iCAAiC,CAAC,gBAAgB,CAAC;QAC1D,oBAAC,gBAAgB,IACf,OAAO,EAAE,KAAK,KAAK,SAAS,EAC5B,WAAW,EAAE,IAAI,CAAC,sCAAsC,EAAE,WAAW,CAAC,EACtE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,aAAa,CAAC,EAC9E,SAAS,EAAE,MAAM,CAAC,iBAAiB,CAAC,IAEnC,IAAI,CAAC,gCAAgC,EAAE,KAAK,CAAC,CAC7B,CACf,CACP,CAAC;AACJ,CAAC,CAAC;AAoBF,MAAM,gBAAgB,GAAG,CAAC,EAAE,WAAW,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAoB,EAAE,EAAE;IAC1F,MAAM,EAAE,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,GAAG,UAAU,CAAC;IACnD,OAAO,CACL,6BAAK,SAAS,EAAE,MAAM,CAAC,kBAAkB,WAAW,EAAE,CAAC,KAAM,iCAAiC,CAAC,eAAe,CAAC;QAC7G,oBAAC,iBAAiB,IAAC,SAAS,EAAE,MAAM,CAAC,2BAA2B,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,WAAW,EAAE,WAAW;YACvG,oBAAC,kBAAkB,IACjB,SAAS,EAAE,MAAM,CAAC,4BAA4B,CAAC,EAC/C,KAAK,EAAE,OAAO,KAAK,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EACvD,KAAK,EAAE,OAAO,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,KAAK,EAAE,EAAE,CAAC,CAAC,EACxE,QAAQ,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GACxD,CACgB,CAChB,CACP,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,uBAAuB,GAAG,CAAC,EACtC,YAAY,EACZ,WAAW,EACX,QAAQ,EACR,KAAK,GACwB,EAAE,EAAE;IACjC,OAAO,CACL,oBAAC,oBAAoB,IAAC,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAC,GAAG;QAChE,YAAY,IAAI,CACf,oBAAC,gBAAgB,IACf,WAAW,EAAC,OAAO,EACnB,UAAU,EAAE,YAAY,EACxB,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,KAAK,EACnB,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,CAAC,GAC7D,CACH;QACA,WAAW,IAAI,CACd,oBAAC,gBAAgB,IACf,WAAW,EAAC,MAAM,EAClB,UAAU,EAAE,WAAW,EACvB,KAAK,EAAE,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,IAAI,EAClB,QAAQ,EAAE,QAAQ,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,GAAG,KAAK,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC,GAC5D,CACH,CACoB,CACxB,CAAC;AACJ,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAC/B,KAAmE,EACnE,eAAwB,EACd,EAAE;IACZ,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;YAC1B,IAAI,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;gBACpC,MAAM,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC,CAAC;YACzD,CAAC;QACH,CAAC;aAAM,IAAI,eAAe,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YAC3C,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QACvB,CAAC;IACH,CAAC;IACD,OAAO,MAAM,CAAC;AAChB,CAAC,CAAC;AAMF,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,EAAE,KAAK,EAAE,gBAAgB,EAAE,QAAQ,EAAyB,EAAE,EAAE;IAC/F,MAAM,CAAC,WAAW,EAAE,cAAc,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtD,IAAI,gBAAgB,EAAE,CAAC;QACrB,OAAO,CACL,6BAAK,SAAS,EAAE,MAAM,CAAC,MAAM,KAAM,iCAAiC,CAAC,QAAQ,CAAC,IAC3E,gBAAgB,CAAC,WAAW,EAAE,KAAK,CAAC,EAAE;YACrC,uDAAuD;YACvD,cAAc,CAAC,GAAG,EAAE,CAAC,KAAK,CAAC,CAAC;YAC5B,QAAQ,CAAC,KAAK,CAAC,CAAC;QAClB,CAAC,CAAC,CACE,CACP,CAAC;IACJ,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useState } from 'react';\nimport clsx from 'clsx';\n\nimport InternalCheckbox from '../checkbox/internal';\nimport InternalColumnLayout from '../column-layout/internal';\nimport InternalFormField from '../form-field/internal';\nimport { useInternalI18n } from '../i18n/context';\nimport { useContainerBreakpoints } from '../internal/hooks/container-queries';\nimport InternalRadioGroup from '../radio-group/internal';\nimport InternalSpaceBetween from '../space-between/internal';\nimport { getAnalyticsInnerContextAttribute } from './analytics-metadata/utils';\nimport { CollectionPreferencesProps } from './interfaces';\n\nimport styles from './styles.css.js';\n\nexport const copyPreferences = ({\n pageSize,\n wrapLines,\n stripedRows,\n contentDensity,\n visibleContent,\n contentDisplay,\n stickyColumns,\n custom,\n}: CollectionPreferencesProps.Preferences): CollectionPreferencesProps.Preferences => ({\n pageSize,\n wrapLines,\n stripedRows,\n contentDensity,\n visibleContent,\n contentDisplay,\n stickyColumns,\n custom,\n});\n\ntype CopyPreferenceName = keyof CollectionPreferencesProps.Preferences;\n\nexport const mergePreferences = (\n newPref: CollectionPreferencesProps.Preferences,\n oldPref: CollectionPreferencesProps.Preferences\n): CollectionPreferencesProps.Preferences => {\n const newObj = { ...oldPref };\n const prefNames: CopyPreferenceName[] = [\n 'pageSize',\n 'wrapLines',\n 'stripedRows',\n 'contentDensity',\n 'visibleContent',\n 'custom',\n 'contentDisplay',\n 'stickyColumns',\n ];\n for (const prefName of prefNames) {\n if (newPref[prefName] !== undefined) {\n newObj[prefName] = newPref[prefName];\n }\n }\n return newObj;\n};\n\ninterface ModalContentLayoutProps {\n left: React.ReactNode;\n right: React.ReactNode;\n}\n\nexport const ModalContentLayout = ({ left, right }: ModalContentLayoutProps) => {\n const [breakpoint, ref] = useContainerBreakpoints(['xs']);\n const smallContainer = breakpoint === 'default';\n\n const columns = left && right ? 2 : 1;\n return (\n <div ref={ref}>\n <InternalColumnLayout columns={smallContainer ? 1 : columns} variant=\"text-grid\">\n {left && <div>{left}</div>}\n {right && <div className={clsx(left && smallContainer && styles['second-column-small'])}>{right}</div>}\n </InternalColumnLayout>\n </div>\n );\n};\n\ninterface PageSizePreferenceProps extends CollectionPreferencesProps.PageSizePreference {\n onChange: (value: number) => void;\n value?: number;\n}\n\nexport const PageSizePreference = ({ title, options, value, onChange }: PageSizePreferenceProps) => {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div className={styles['page-size']} {...getAnalyticsInnerContextAttribute('pageSize')}>\n <InternalFormField\n label={i18n('pageSizePreference.title', title)}\n stretch={true}\n className={styles['page-size-form-field']}\n >\n <InternalRadioGroup\n className={styles['page-size-radio-group']}\n value={`${value}`}\n items={options.map(({ label, value }) => ({ label, value: `${value}` }))}\n onChange={({ detail }) => onChange(parseInt(detail.value, 10))}\n />\n </InternalFormField>\n </div>\n );\n};\n\ninterface WrapLinesPreferenceProps extends CollectionPreferencesProps.WrapLinesPreference {\n onChange: (value: boolean) => void;\n value?: boolean;\n}\n\nexport const WrapLinesPreference = ({ label, description, value, onChange }: WrapLinesPreferenceProps) => {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div {...getAnalyticsInnerContextAttribute('wrapLines')}>\n <InternalCheckbox\n checked={!!value}\n description={i18n('wrapLinesPreference.description', description)}\n onChange={({ detail }) => onChange(detail.checked)}\n className={styles['wrap-lines']}\n >\n {i18n('wrapLinesPreference.label', label)}\n </InternalCheckbox>\n </div>\n );\n};\n\ninterface StripedRowsPreferenceProps extends CollectionPreferencesProps.StripedRowsPreference {\n onChange: (value: boolean) => void;\n value?: boolean;\n}\n\nexport function StripedRowsPreference({ label, description, value, onChange }: StripedRowsPreferenceProps) {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div {...getAnalyticsInnerContextAttribute('stripedRows')}>\n <InternalCheckbox\n checked={!!value}\n description={i18n('stripedRowsPreference.description', description)}\n onChange={({ detail }) => onChange(detail.checked)}\n className={styles['striped-rows']}\n >\n {i18n('stripedRowsPreference.label', label)}\n </InternalCheckbox>\n </div>\n );\n}\n\ninterface ContentDensityPreferenceProps extends CollectionPreferencesProps.ContentDensityPreference {\n onChange: (value: 'comfortable' | 'compact') => void;\n value?: 'comfortable' | 'compact';\n}\n\nexport const ContentDensityPreference = ({ label, description, value, onChange }: ContentDensityPreferenceProps) => {\n const i18n = useInternalI18n('collection-preferences');\n return (\n <div {...getAnalyticsInnerContextAttribute('contentDensity')}>\n <InternalCheckbox\n checked={value === 'compact'}\n description={i18n('contentDensityPreference.description', description)}\n onChange={({ detail }) => onChange(detail.checked ? 'compact' : 'comfortable')}\n className={styles['content-density']}\n >\n {i18n('contentDensityPreference.label', label)}\n </InternalCheckbox>\n </div>\n );\n};\n\ninterface StickyColumnsPreferenceProps extends CollectionPreferencesProps.StickyColumnsPreference {\n onChange: (value?: { first?: number; last?: number }) => void;\n value?: { first?: number; last?: number };\n}\ninterface StickyPreference extends CollectionPreferencesProps.StickyColumnsPreference {\n onChange: (value: number) => void;\n preference: {\n title: string;\n description: string;\n options: ReadonlyArray<{\n label: string;\n value: number;\n }>;\n };\n value?: number;\n firstOrLast: 'first' | 'last';\n}\n\nconst StickyPreference = ({ firstOrLast, preference, value, onChange }: StickyPreference) => {\n const { title, description, options } = preference;\n return (\n <div className={styles[`sticky-columns-${firstOrLast}`]} {...getAnalyticsInnerContextAttribute('stickyColumns')}>\n <InternalFormField className={styles['sticky-columns-form-field']} label={title} description={description}>\n <InternalRadioGroup\n className={styles['sticky-columns-radio-group']}\n value={typeof value !== 'undefined' ? `${value}` : null}\n items={options.map(({ label, value }) => ({ label, value: `${value}` }))}\n onChange={({ detail }) => onChange(Number(detail.value))}\n />\n </InternalFormField>\n </div>\n );\n};\n\nexport const StickyColumnsPreference = ({\n firstColumns,\n lastColumns,\n onChange,\n value,\n}: StickyColumnsPreferenceProps) => {\n return (\n <InternalSpaceBetween className={styles['sticky-columns']} size=\"l\">\n {firstColumns && (\n <StickyPreference\n firstOrLast=\"first\"\n preference={firstColumns}\n value={value?.first}\n onChange={newValue => onChange({ ...value, first: newValue })}\n />\n )}\n {lastColumns && (\n <StickyPreference\n firstOrLast=\"last\"\n preference={lastColumns}\n value={value?.last}\n onChange={newValue => onChange({ ...value, last: newValue })}\n />\n )}\n </InternalSpaceBetween>\n );\n};\n\nexport const collectVisibleIds = (\n items: ReadonlyArray<CollectionPreferencesProps.ContentDisplayItem>,\n ancestorVisible: boolean\n): string[] => {\n const result: string[] = [];\n for (const item of items) {\n if (item.type === 'group') {\n if (ancestorVisible && item.visible) {\n result.push(...collectVisibleIds(item.children, true));\n }\n } else if (ancestorVisible && item.visible) {\n result.push(item.id);\n }\n }\n return result;\n};\n\ninterface CustomPreferenceProps<T = any> extends Pick<CollectionPreferencesProps<T>, 'customPreference'> {\n onChange: (value: T) => void;\n value: T;\n}\nexport const CustomPreference = ({ value, customPreference, onChange }: CustomPreferenceProps) => {\n const [customState, setCustomState] = useState(value);\n if (customPreference) {\n return (\n <div className={styles.custom} {...getAnalyticsInnerContextAttribute('custom')}>\n {customPreference(customState, value => {\n // prevent value to be treated as a functional callback\n setCustomState(() => value);\n onChange(value);\n })}\n </div>\n );\n }\n return null;\n};\n"]}
@@ -1,40 +1,40 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "content-enter": "awsui_content-enter_gwq0h_2efi7_161",
5
- "awsui-motion-fade-in": "awsui_awsui-motion-fade-in_gwq0h_2efi7_1",
6
- "trigger-expanded": "awsui_trigger-expanded_gwq0h_2efi7_183",
7
- "icon": "awsui_icon_gwq0h_2efi7_197",
8
- "root": "awsui_root_gwq0h_2efi7_211",
9
- "expand-button": "awsui_expand-button_gwq0h_2efi7_246",
10
- "expanded": "awsui_expanded_gwq0h_2efi7_254",
11
- "icon-container": "awsui_icon-container_gwq0h_2efi7_264",
12
- "icon-container-container": "awsui_icon-container-container_gwq0h_2efi7_268",
13
- "wrapper": "awsui_wrapper_gwq0h_2efi7_272",
14
- "wrapper-default": "awsui_wrapper-default_gwq0h_2efi7_280",
15
- "wrapper-inline": "awsui_wrapper-inline_gwq0h_2efi7_280",
16
- "wrapper-footer": "awsui_wrapper-footer_gwq0h_2efi7_280",
17
- "wrapper-navigation": "awsui_wrapper-navigation_gwq0h_2efi7_284",
18
- "wrapper-container": "awsui_wrapper-container_gwq0h_2efi7_287",
19
- "wrapper-compact": "awsui_wrapper-compact_gwq0h_2efi7_291",
20
- "header-deprecated": "awsui_header-deprecated_gwq0h_2efi7_304",
21
- "wrapper-expanded": "awsui_wrapper-expanded_gwq0h_2efi7_310",
22
- "wrapper-not-expanded-without-actions": "awsui_wrapper-not-expanded-without-actions_gwq0h_2efi7_333",
23
- "header": "awsui_header_gwq0h_2efi7_304",
24
- "header-wrapper": "awsui_header-wrapper_gwq0h_2efi7_350",
25
- "header-actions-wrapper": "awsui_header-actions-wrapper_gwq0h_2efi7_362",
26
- "header-button": "awsui_header-button_gwq0h_2efi7_368",
27
- "header-container-button": "awsui_header-container-button_gwq0h_2efi7_368",
28
- "header-container": "awsui_header-container_gwq0h_2efi7_368",
29
- "header-navigation": "awsui_header-navigation_gwq0h_2efi7_403",
30
- "header-text": "awsui_header-text_gwq0h_2efi7_440",
31
- "content": "awsui_content_gwq0h_2efi7_161",
32
- "content-default": "awsui_content-default_gwq0h_2efi7_453",
33
- "content-inline": "awsui_content-inline_gwq0h_2efi7_453",
34
- "content-footer": "awsui_content-footer_gwq0h_2efi7_457",
35
- "content-expanded": "awsui_content-expanded_gwq0h_2efi7_461",
36
- "content-compact": "awsui_content-compact_gwq0h_2efi7_464",
37
- "focusable": "awsui_focusable_gwq0h_2efi7_468",
38
- "click-target": "awsui_click-target_gwq0h_2efi7_483"
4
+ "content-enter": "awsui_content-enter_gwq0h_1hfyc_161",
5
+ "awsui-motion-fade-in": "awsui_awsui-motion-fade-in_gwq0h_1hfyc_1",
6
+ "trigger-expanded": "awsui_trigger-expanded_gwq0h_1hfyc_183",
7
+ "icon": "awsui_icon_gwq0h_1hfyc_197",
8
+ "root": "awsui_root_gwq0h_1hfyc_211",
9
+ "expand-button": "awsui_expand-button_gwq0h_1hfyc_246",
10
+ "expanded": "awsui_expanded_gwq0h_1hfyc_254",
11
+ "icon-container": "awsui_icon-container_gwq0h_1hfyc_264",
12
+ "icon-container-container": "awsui_icon-container-container_gwq0h_1hfyc_268",
13
+ "wrapper": "awsui_wrapper_gwq0h_1hfyc_272",
14
+ "wrapper-default": "awsui_wrapper-default_gwq0h_1hfyc_280",
15
+ "wrapper-inline": "awsui_wrapper-inline_gwq0h_1hfyc_280",
16
+ "wrapper-footer": "awsui_wrapper-footer_gwq0h_1hfyc_280",
17
+ "wrapper-navigation": "awsui_wrapper-navigation_gwq0h_1hfyc_284",
18
+ "wrapper-container": "awsui_wrapper-container_gwq0h_1hfyc_287",
19
+ "wrapper-compact": "awsui_wrapper-compact_gwq0h_1hfyc_291",
20
+ "header-deprecated": "awsui_header-deprecated_gwq0h_1hfyc_304",
21
+ "wrapper-expanded": "awsui_wrapper-expanded_gwq0h_1hfyc_310",
22
+ "wrapper-not-expanded-without-actions": "awsui_wrapper-not-expanded-without-actions_gwq0h_1hfyc_333",
23
+ "header": "awsui_header_gwq0h_1hfyc_304",
24
+ "header-wrapper": "awsui_header-wrapper_gwq0h_1hfyc_350",
25
+ "header-actions-wrapper": "awsui_header-actions-wrapper_gwq0h_1hfyc_362",
26
+ "header-button": "awsui_header-button_gwq0h_1hfyc_368",
27
+ "header-container-button": "awsui_header-container-button_gwq0h_1hfyc_368",
28
+ "header-container": "awsui_header-container_gwq0h_1hfyc_368",
29
+ "header-navigation": "awsui_header-navigation_gwq0h_1hfyc_403",
30
+ "header-text": "awsui_header-text_gwq0h_1hfyc_440",
31
+ "content": "awsui_content_gwq0h_1hfyc_161",
32
+ "content-default": "awsui_content-default_gwq0h_1hfyc_453",
33
+ "content-inline": "awsui_content-inline_gwq0h_1hfyc_453",
34
+ "content-footer": "awsui_content-footer_gwq0h_1hfyc_457",
35
+ "content-expanded": "awsui_content-expanded_gwq0h_1hfyc_461",
36
+ "content-compact": "awsui_content-compact_gwq0h_1hfyc_464",
37
+ "focusable": "awsui_focusable_gwq0h_1hfyc_468",
38
+ "click-target": "awsui_click-target_gwq0h_1hfyc_483"
39
39
  };
40
40