@cloudscape-design/components 3.0.839 → 3.0.841

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 (865) hide show
  1. package/alert/styles.css.js +28 -28
  2. package/alert/styles.scoped.css +43 -49
  3. package/alert/styles.selectors.js +28 -28
  4. package/anchor-navigation/styles.css.js +8 -8
  5. package/anchor-navigation/styles.scoped.css +18 -21
  6. package/anchor-navigation/styles.selectors.js +8 -8
  7. package/annotation-context/annotation/annotation-icon.d.ts +2 -1
  8. package/annotation-context/annotation/annotation-icon.d.ts.map +1 -1
  9. package/annotation-context/annotation/annotation-icon.js.map +1 -1
  10. package/annotation-context/annotation/annotation-popover.d.ts +2 -1
  11. package/annotation-context/annotation/annotation-popover.d.ts.map +1 -1
  12. package/annotation-context/annotation/annotation-popover.js.map +1 -1
  13. package/annotation-context/annotation/annotation-trigger.d.ts +1 -1
  14. package/annotation-context/annotation/annotation-trigger.d.ts.map +1 -1
  15. package/annotation-context/annotation/annotation-trigger.js.map +1 -1
  16. package/annotation-context/annotation/closed-annotation.d.ts +2 -1
  17. package/annotation-context/annotation/closed-annotation.d.ts.map +1 -1
  18. package/annotation-context/annotation/closed-annotation.js.map +1 -1
  19. package/annotation-context/annotation/open-annotation.d.ts +2 -1
  20. package/annotation-context/annotation/open-annotation.d.ts.map +1 -1
  21. package/annotation-context/annotation/open-annotation.js.map +1 -1
  22. package/annotation-context/annotation/styles.css.js +24 -24
  23. package/annotation-context/annotation/styles.scoped.css +30 -33
  24. package/annotation-context/annotation/styles.selectors.js +24 -24
  25. package/app-layout/classic.d.ts.map +1 -1
  26. package/app-layout/classic.js +6 -3
  27. package/app-layout/classic.js.map +1 -1
  28. package/app-layout/defaults.d.ts +2 -1
  29. package/app-layout/defaults.d.ts.map +1 -1
  30. package/app-layout/defaults.js.map +1 -1
  31. package/app-layout/split-panel/constants.d.ts +0 -1
  32. package/app-layout/split-panel/constants.d.ts.map +1 -1
  33. package/app-layout/split-panel/constants.js +0 -1
  34. package/app-layout/split-panel/constants.js.map +1 -1
  35. package/app-layout/split-panel/split-panel-forced-position.d.ts +5 -0
  36. package/app-layout/split-panel/split-panel-forced-position.d.ts.map +1 -0
  37. package/app-layout/split-panel/split-panel-forced-position.js +30 -0
  38. package/app-layout/split-panel/split-panel-forced-position.js.map +1 -0
  39. package/app-layout/utils/use-pointer-events.d.ts.map +1 -1
  40. package/app-layout/utils/use-pointer-events.js +19 -10
  41. package/app-layout/utils/use-pointer-events.js.map +1 -1
  42. package/app-layout/utils/use-resize.d.ts +1 -1
  43. package/app-layout/utils/use-resize.d.ts.map +1 -1
  44. package/app-layout/utils/use-resize.js.map +1 -1
  45. package/app-layout/utils/use-split-panel-focus-control.d.ts +2 -1
  46. package/app-layout/utils/use-split-panel-focus-control.d.ts.map +1 -1
  47. package/app-layout/utils/use-split-panel-focus-control.js.map +1 -1
  48. package/app-layout/visual-refresh/context.d.ts.map +1 -1
  49. package/app-layout/visual-refresh/context.js +5 -2
  50. package/app-layout/visual-refresh/context.js.map +1 -1
  51. package/app-layout/visual-refresh/drawers.d.ts +0 -8
  52. package/app-layout/visual-refresh/drawers.d.ts.map +1 -1
  53. package/app-layout/visual-refresh/drawers.js +1 -1
  54. package/app-layout/visual-refresh/drawers.js.map +1 -1
  55. package/app-layout/visual-refresh/styles.css.js +86 -86
  56. package/app-layout/visual-refresh/styles.scoped.css +163 -169
  57. package/app-layout/visual-refresh/styles.selectors.js +86 -86
  58. package/app-layout/visual-refresh-toolbar/compute-layout.d.ts.map +1 -1
  59. package/app-layout/visual-refresh-toolbar/compute-layout.js +6 -3
  60. package/app-layout/visual-refresh-toolbar/compute-layout.js.map +1 -1
  61. package/app-layout/visual-refresh-toolbar/drawer/local-drawer.js +1 -1
  62. package/app-layout/visual-refresh-toolbar/drawer/local-drawer.js.map +1 -1
  63. package/app-layout/visual-refresh-toolbar/index.d.ts.map +1 -1
  64. package/app-layout/visual-refresh-toolbar/index.js +32 -2
  65. package/app-layout/visual-refresh-toolbar/index.js.map +1 -1
  66. package/app-layout/visual-refresh-toolbar/skeleton/styles.css.js +19 -19
  67. package/app-layout/visual-refresh-toolbar/skeleton/styles.scoped.css +35 -50
  68. package/app-layout/visual-refresh-toolbar/skeleton/styles.selectors.js +19 -19
  69. package/app-layout/visual-refresh-toolbar/split-panel/index.d.ts +1 -1
  70. package/app-layout/visual-refresh-toolbar/split-panel/index.d.ts.map +1 -1
  71. package/app-layout/visual-refresh-toolbar/split-panel/index.js +3 -1
  72. package/app-layout/visual-refresh-toolbar/split-panel/index.js.map +1 -1
  73. package/app-layout/visual-refresh-toolbar/toolbar/drawer-triggers.d.ts.map +1 -1
  74. package/app-layout/visual-refresh-toolbar/toolbar/drawer-triggers.js +3 -5
  75. package/app-layout/visual-refresh-toolbar/toolbar/drawer-triggers.js.map +1 -1
  76. package/app-layout/visual-refresh-toolbar/toolbar/index.d.ts.map +1 -1
  77. package/app-layout/visual-refresh-toolbar/toolbar/index.js +4 -1
  78. package/app-layout/visual-refresh-toolbar/toolbar/index.js.map +1 -1
  79. package/app-layout/visual-refresh-toolbar/toolbar/styles.css.js +13 -13
  80. package/app-layout/visual-refresh-toolbar/toolbar/styles.scoped.css +15 -18
  81. package/app-layout/visual-refresh-toolbar/toolbar/styles.selectors.js +13 -13
  82. package/area-chart/elements/area-series.d.ts +1 -1
  83. package/area-chart/elements/area-series.d.ts.map +1 -1
  84. package/area-chart/elements/area-series.js.map +1 -1
  85. package/area-chart/elements/threshold-series.d.ts +1 -1
  86. package/area-chart/elements/threshold-series.d.ts.map +1 -1
  87. package/area-chart/elements/threshold-series.js.map +1 -1
  88. package/attribute-editor/internal.d.ts.map +1 -1
  89. package/attribute-editor/internal.js +5 -1
  90. package/attribute-editor/internal.js.map +1 -1
  91. package/attribute-editor/row.d.ts +2 -1
  92. package/attribute-editor/row.d.ts.map +1 -1
  93. package/attribute-editor/row.js.map +1 -1
  94. package/attribute-editor/styles.css.js +14 -14
  95. package/attribute-editor/styles.scoped.css +24 -27
  96. package/attribute-editor/styles.selectors.js +14 -14
  97. package/autosuggest/analytics-metadata/interfaces.d.ts +0 -4
  98. package/autosuggest/analytics-metadata/interfaces.d.ts.map +1 -1
  99. package/autosuggest/analytics-metadata/interfaces.js.map +1 -1
  100. package/autosuggest/autosuggest-option.d.ts +1 -1
  101. package/autosuggest/autosuggest-option.d.ts.map +1 -1
  102. package/autosuggest/autosuggest-option.js.map +1 -1
  103. package/autosuggest/internal.d.ts +1 -1
  104. package/autosuggest/internal.d.ts.map +1 -1
  105. package/autosuggest/internal.js.map +1 -1
  106. package/autosuggest/load-more-controller.d.ts +3 -2
  107. package/autosuggest/load-more-controller.d.ts.map +1 -1
  108. package/autosuggest/load-more-controller.js.map +1 -1
  109. package/autosuggest/options-list.d.ts +2 -1
  110. package/autosuggest/options-list.d.ts.map +1 -1
  111. package/autosuggest/options-list.js.map +1 -1
  112. package/badge/styles.css.js +10 -10
  113. package/badge/styles.scoped.css +10 -13
  114. package/badge/styles.selectors.js +10 -10
  115. package/breadcrumb-group/analytics-metadata/interfaces.d.ts +0 -7
  116. package/breadcrumb-group/analytics-metadata/interfaces.d.ts.map +1 -1
  117. package/breadcrumb-group/analytics-metadata/interfaces.js.map +1 -1
  118. package/breadcrumb-group/styles.css.js +10 -10
  119. package/breadcrumb-group/styles.scoped.css +11 -14
  120. package/breadcrumb-group/styles.selectors.js +10 -10
  121. package/button/styles.css.js +21 -21
  122. package/button/styles.scoped.css +154 -157
  123. package/button/styles.selectors.js +21 -21
  124. package/button-dropdown/interfaces.d.ts +4 -3
  125. package/button-dropdown/interfaces.d.ts.map +1 -1
  126. package/button-dropdown/interfaces.js.map +1 -1
  127. package/button-dropdown/item-element/index.d.ts +0 -7
  128. package/button-dropdown/item-element/index.d.ts.map +1 -1
  129. package/button-dropdown/item-element/index.js.map +1 -1
  130. package/button-dropdown/mobile-expandable-group/mobile-expandable-group.d.ts +1 -1
  131. package/button-dropdown/mobile-expandable-group/mobile-expandable-group.d.ts.map +1 -1
  132. package/button-dropdown/mobile-expandable-group/mobile-expandable-group.js.map +1 -1
  133. package/button-dropdown/mobile-expandable-group/styles.css.js +5 -5
  134. package/button-dropdown/mobile-expandable-group/styles.scoped.css +5 -8
  135. package/button-dropdown/mobile-expandable-group/styles.selectors.js +5 -5
  136. package/button-dropdown/tooltip.d.ts +2 -1
  137. package/button-dropdown/tooltip.d.ts.map +1 -1
  138. package/button-dropdown/tooltip.js.map +1 -1
  139. package/button-dropdown/utils/menu-item.d.ts +3 -2
  140. package/button-dropdown/utils/menu-item.d.ts.map +1 -1
  141. package/button-dropdown/utils/menu-item.js.map +1 -1
  142. package/button-group/styles.css.js +4 -4
  143. package/button-group/styles.scoped.css +4 -7
  144. package/button-group/styles.selectors.js +4 -4
  145. package/calendar/grid/index.d.ts +2 -1
  146. package/calendar/grid/index.d.ts.map +1 -1
  147. package/calendar/grid/index.js.map +1 -1
  148. package/calendar/styles.css.js +21 -21
  149. package/calendar/styles.scoped.css +43 -46
  150. package/calendar/styles.selectors.js +21 -21
  151. package/cards/styles.css.js +39 -39
  152. package/cards/styles.scoped.css +50 -53
  153. package/cards/styles.selectors.js +39 -39
  154. package/checkbox/styles.css.js +3 -3
  155. package/checkbox/styles.scoped.css +5 -8
  156. package/checkbox/styles.selectors.js +3 -3
  157. package/code-editor/pane.d.ts +2 -1
  158. package/code-editor/pane.d.ts.map +1 -1
  159. package/code-editor/pane.js.map +1 -1
  160. package/code-editor/styles.css.js +33 -33
  161. package/code-editor/styles.scoped.css +135 -138
  162. package/code-editor/styles.selectors.js +33 -33
  163. package/collection-preferences/analytics-metadata/interfaces.d.ts +0 -24
  164. package/collection-preferences/analytics-metadata/interfaces.d.ts.map +1 -1
  165. package/collection-preferences/analytics-metadata/interfaces.js.map +1 -1
  166. package/collection-preferences/content-display/content-display-option.d.ts +1 -1
  167. package/collection-preferences/content-display/content-display-option.d.ts.map +1 -1
  168. package/collection-preferences/content-display/content-display-option.js.map +1 -1
  169. package/collection-preferences/content-display/index.d.ts.map +1 -1
  170. package/collection-preferences/content-display/index.js +18 -42
  171. package/collection-preferences/content-display/index.js.map +1 -1
  172. package/collection-preferences/content-display/styles.css.js +12 -13
  173. package/collection-preferences/content-display/styles.scoped.css +15 -47
  174. package/collection-preferences/content-display/styles.selectors.js +12 -13
  175. package/collection-preferences/styles.css.js +38 -39
  176. package/collection-preferences/styles.scoped.css +42 -74
  177. package/collection-preferences/styles.selectors.js +38 -39
  178. package/column-layout/flexible-column-layout/styles.css.js +5 -5
  179. package/column-layout/flexible-column-layout/styles.scoped.css +22 -7
  180. package/column-layout/flexible-column-layout/styles.selectors.js +5 -5
  181. package/column-layout/styles.css.js +13 -13
  182. package/column-layout/styles.scoped.css +43 -46
  183. package/column-layout/styles.selectors.js +13 -13
  184. package/container/styles.css.js +31 -31
  185. package/container/styles.scoped.css +54 -57
  186. package/container/styles.selectors.js +31 -31
  187. package/copy-to-clipboard/internal.d.ts +2 -1
  188. package/copy-to-clipboard/internal.d.ts.map +1 -1
  189. package/copy-to-clipboard/internal.js +2 -2
  190. package/copy-to-clipboard/internal.js.map +1 -1
  191. package/copy-to-clipboard/styles.css.js +3 -4
  192. package/copy-to-clipboard/styles.scoped.css +3 -7
  193. package/copy-to-clipboard/styles.selectors.js +3 -4
  194. package/date-picker/index.js +1 -1
  195. package/date-picker/index.js.map +1 -1
  196. package/date-picker/styles.css.js +7 -7
  197. package/date-picker/styles.scoped.css +9 -12
  198. package/date-picker/styles.selectors.js +7 -7
  199. package/date-range-picker/calendar/grids/index.d.ts +2 -1
  200. package/date-range-picker/calendar/grids/index.d.ts.map +1 -1
  201. package/date-range-picker/calendar/grids/index.js.map +1 -1
  202. package/date-range-picker/calendar/grids/monthly-grid.d.ts +2 -1
  203. package/date-range-picker/calendar/grids/monthly-grid.d.ts.map +1 -1
  204. package/date-range-picker/calendar/grids/monthly-grid.js.map +1 -1
  205. package/date-range-picker/calendar/range-inputs.d.ts +1 -1
  206. package/date-range-picker/calendar/range-inputs.d.ts.map +1 -1
  207. package/date-range-picker/calendar/range-inputs.js.map +1 -1
  208. package/date-range-picker/dropdown.d.ts +2 -2
  209. package/date-range-picker/dropdown.d.ts.map +1 -1
  210. package/date-range-picker/dropdown.js +2 -2
  211. package/date-range-picker/dropdown.js.map +1 -1
  212. package/date-range-picker/interfaces.d.ts +2 -1
  213. package/date-range-picker/interfaces.d.ts.map +1 -1
  214. package/date-range-picker/interfaces.js.map +1 -1
  215. package/date-range-picker/relative-range/index.d.ts +2 -1
  216. package/date-range-picker/relative-range/index.d.ts.map +1 -1
  217. package/date-range-picker/relative-range/index.js.map +1 -1
  218. package/date-range-picker/styles.css.js +38 -38
  219. package/date-range-picker/styles.scoped.css +47 -50
  220. package/date-range-picker/styles.selectors.js +38 -38
  221. package/drawer/implementation.d.ts +2 -1
  222. package/drawer/implementation.d.ts.map +1 -1
  223. package/drawer/implementation.js.map +1 -1
  224. package/drawer/interfaces.d.ts +2 -1
  225. package/drawer/interfaces.d.ts.map +1 -1
  226. package/drawer/interfaces.js.map +1 -1
  227. package/drawer/styles.css.js +5 -5
  228. package/drawer/styles.scoped.css +10 -13
  229. package/drawer/styles.selectors.js +5 -5
  230. package/expandable-section/expandable-section-container.d.ts +2 -1
  231. package/expandable-section/expandable-section-container.d.ts.map +1 -1
  232. package/expandable-section/expandable-section-container.js.map +1 -1
  233. package/expandable-section/expandable-section-header.d.ts +0 -1
  234. package/expandable-section/expandable-section-header.d.ts.map +1 -1
  235. package/expandable-section/expandable-section-header.js +1 -1
  236. package/expandable-section/expandable-section-header.js.map +1 -1
  237. package/expandable-section/internal.d.ts +2 -1
  238. package/expandable-section/internal.d.ts.map +1 -1
  239. package/expandable-section/internal.js.map +1 -1
  240. package/expandable-section/styles.css.js +34 -34
  241. package/expandable-section/styles.scoped.css +65 -68
  242. package/expandable-section/styles.selectors.js +34 -34
  243. package/file-token-group/file-token.d.ts +1 -1
  244. package/file-token-group/file-token.d.ts.map +1 -1
  245. package/file-token-group/file-token.js.map +1 -1
  246. package/file-token-group/styles.css.js +22 -22
  247. package/file-token-group/styles.scoped.css +29 -32
  248. package/file-token-group/styles.selectors.js +22 -22
  249. package/file-upload/interfaces.d.ts +0 -5
  250. package/file-upload/interfaces.d.ts.map +1 -1
  251. package/file-upload/interfaces.js.map +1 -1
  252. package/flashbar/analytics-metadata/interfaces.d.ts +0 -6
  253. package/flashbar/analytics-metadata/interfaces.d.ts.map +1 -1
  254. package/flashbar/analytics-metadata/interfaces.js.map +1 -1
  255. package/flashbar/collapsible-flashbar.d.ts +0 -1
  256. package/flashbar/collapsible-flashbar.d.ts.map +1 -1
  257. package/flashbar/collapsible-flashbar.js.map +1 -1
  258. package/flashbar/flash.d.ts +2 -1
  259. package/flashbar/flash.d.ts.map +1 -1
  260. package/flashbar/flash.js.map +1 -1
  261. package/flashbar/non-collapsible-flashbar.d.ts +0 -1
  262. package/flashbar/non-collapsible-flashbar.d.ts.map +1 -1
  263. package/flashbar/non-collapsible-flashbar.js.map +1 -1
  264. package/flashbar/styles.css.js +50 -50
  265. package/flashbar/styles.scoped.css +148 -151
  266. package/flashbar/styles.selectors.js +50 -50
  267. package/flashbar/utils.d.ts +2 -1
  268. package/flashbar/utils.d.ts.map +1 -1
  269. package/flashbar/utils.js.map +1 -1
  270. package/form/styles.css.js +8 -8
  271. package/form/styles.scoped.css +8 -11
  272. package/form/styles.selectors.js +8 -8
  273. package/form-field/styles.css.js +24 -24
  274. package/form-field/styles.scoped.css +38 -41
  275. package/form-field/styles.selectors.js +24 -24
  276. package/grid/internal.d.ts +1 -1
  277. package/grid/internal.d.ts.map +1 -1
  278. package/grid/internal.js.map +1 -1
  279. package/grid/styles.css.js +53 -53
  280. package/grid/styles.scoped.css +54 -57
  281. package/grid/styles.selectors.js +53 -53
  282. package/header/styles.css.js +34 -34
  283. package/header/styles.scoped.css +50 -53
  284. package/header/styles.selectors.js +34 -34
  285. package/help-panel/implementation.d.ts +2 -1
  286. package/help-panel/implementation.d.ts.map +1 -1
  287. package/help-panel/implementation.js.map +1 -1
  288. package/help-panel/styles.css.js +6 -6
  289. package/help-panel/styles.scoped.css +67 -70
  290. package/help-panel/styles.selectors.js +6 -6
  291. package/i18n/context.d.ts +1 -1
  292. package/i18n/context.d.ts.map +1 -1
  293. package/i18n/context.js.map +1 -1
  294. package/i18n/testing.d.ts +2 -1
  295. package/i18n/testing.d.ts.map +1 -1
  296. package/i18n/testing.js.map +1 -1
  297. package/input/styles.css.js +13 -13
  298. package/input/styles.scoped.css +32 -35
  299. package/input/styles.selectors.js +13 -13
  300. package/internal/analytics/components/analytics-funnel.d.ts +0 -1
  301. package/internal/analytics/components/analytics-funnel.d.ts.map +1 -1
  302. package/internal/analytics/components/analytics-funnel.js +1 -1
  303. package/internal/analytics/components/analytics-funnel.js.map +1 -1
  304. package/internal/analytics/interfaces.d.ts +17 -24
  305. package/internal/analytics/interfaces.d.ts.map +1 -1
  306. package/internal/analytics/interfaces.js.map +1 -1
  307. package/internal/analytics/selectors.d.ts +1 -1
  308. package/internal/analytics/selectors.d.ts.map +1 -1
  309. package/internal/analytics/selectors.js +2 -1
  310. package/internal/analytics/selectors.js.map +1 -1
  311. package/internal/components/autosuggest-input/index.d.ts +2 -2
  312. package/internal/components/autosuggest-input/index.d.ts.map +1 -1
  313. package/internal/components/autosuggest-input/index.js.map +1 -1
  314. package/internal/components/button-trigger/styles.css.js +13 -13
  315. package/internal/components/button-trigger/styles.scoped.css +27 -30
  316. package/internal/components/button-trigger/styles.selectors.js +13 -13
  317. package/internal/components/cartesian-chart/highlighted-point.d.ts +1 -1
  318. package/internal/components/cartesian-chart/highlighted-point.d.ts.map +1 -1
  319. package/internal/components/cartesian-chart/highlighted-point.js.map +1 -1
  320. package/internal/components/cartesian-chart/scales.d.ts +4 -5
  321. package/internal/components/cartesian-chart/scales.d.ts.map +1 -1
  322. package/internal/components/cartesian-chart/scales.js +1 -1
  323. package/internal/components/cartesian-chart/scales.js.map +1 -1
  324. package/internal/components/cartesian-chart/vertical-marker.d.ts +1 -1
  325. package/internal/components/cartesian-chart/vertical-marker.d.ts.map +1 -1
  326. package/internal/components/cartesian-chart/vertical-marker.js.map +1 -1
  327. package/internal/components/chart-filter/index.d.ts +1 -1
  328. package/internal/components/chart-filter/index.d.ts.map +1 -1
  329. package/internal/components/chart-filter/index.js.map +1 -1
  330. package/internal/components/chart-filter/styles.css.js +3 -3
  331. package/internal/components/chart-filter/styles.scoped.css +3 -6
  332. package/internal/components/chart-filter/styles.selectors.js +3 -3
  333. package/internal/components/chart-legend/index.d.ts +1 -1
  334. package/internal/components/chart-legend/index.d.ts.map +1 -1
  335. package/internal/components/chart-legend/index.js.map +1 -1
  336. package/internal/components/chart-legend/styles.css.js +6 -6
  337. package/internal/components/chart-legend/styles.scoped.css +15 -18
  338. package/internal/components/chart-legend/styles.selectors.js +6 -6
  339. package/internal/components/chart-plot/application-controller.d.ts +1 -1
  340. package/internal/components/chart-plot/application-controller.d.ts.map +1 -1
  341. package/internal/components/chart-plot/application-controller.js.map +1 -1
  342. package/internal/components/chart-plot/focus-outline.d.ts +2 -1
  343. package/internal/components/chart-plot/focus-outline.d.ts.map +1 -1
  344. package/internal/components/chart-plot/focus-outline.js.map +1 -1
  345. package/internal/components/chart-plot/index.d.ts +1 -1
  346. package/internal/components/chart-plot/index.d.ts.map +1 -1
  347. package/internal/components/chart-plot/index.js.map +1 -1
  348. package/internal/components/chart-popover/index.d.ts +1 -1
  349. package/internal/components/chart-popover/index.d.ts.map +1 -1
  350. package/internal/components/chart-popover/index.js.map +1 -1
  351. package/internal/components/chart-popover/styles.css.js +3 -3
  352. package/internal/components/chart-popover/styles.scoped.css +3 -6
  353. package/internal/components/chart-popover/styles.selectors.js +3 -3
  354. package/internal/components/chart-series-details/index.d.ts +1 -1
  355. package/internal/components/chart-series-details/index.d.ts.map +1 -1
  356. package/internal/components/chart-series-details/index.js.map +1 -1
  357. package/internal/components/chart-series-details/styles.css.js +20 -20
  358. package/internal/components/chart-series-details/styles.scoped.css +33 -42
  359. package/internal/components/chart-series-details/styles.selectors.js +20 -20
  360. package/internal/components/chart-series-marker/styles.css.js +5 -5
  361. package/internal/components/chart-series-marker/styles.scoped.css +7 -10
  362. package/internal/components/chart-series-marker/styles.selectors.js +5 -5
  363. package/internal/components/chart-wrapper/styles.css.js +9 -9
  364. package/internal/components/chart-wrapper/styles.scoped.css +9 -12
  365. package/internal/components/chart-wrapper/styles.selectors.js +9 -9
  366. package/internal/components/checkbox-icon/index.d.ts +1 -10
  367. package/internal/components/checkbox-icon/index.d.ts.map +1 -1
  368. package/internal/components/checkbox-icon/index.js +1 -1
  369. package/internal/components/checkbox-icon/index.js.map +1 -1
  370. package/internal/components/dnd-container/index.d.ts +28 -0
  371. package/internal/components/dnd-container/index.d.ts.map +1 -0
  372. package/internal/components/dnd-container/index.js +67 -0
  373. package/internal/components/dnd-container/index.js.map +1 -0
  374. package/internal/components/dnd-container/interfaces.d.ts +13 -0
  375. package/internal/components/dnd-container/interfaces.d.ts.map +1 -0
  376. package/internal/components/dnd-container/interfaces.js +4 -0
  377. package/internal/components/dnd-container/interfaces.js.map +1 -0
  378. package/internal/components/dnd-container/keyboard-sensor/defaults.d.ts.map +1 -0
  379. package/internal/components/dnd-container/keyboard-sensor/defaults.js.map +1 -0
  380. package/internal/components/dnd-container/keyboard-sensor/index.d.ts.map +1 -0
  381. package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/index.js +1 -1
  382. package/internal/components/dnd-container/keyboard-sensor/index.js.map +1 -0
  383. package/internal/components/dnd-container/keyboard-sensor/utilities/events.d.ts +7 -0
  384. package/internal/components/dnd-container/keyboard-sensor/utilities/events.d.ts.map +1 -0
  385. package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/utilities/events.js +0 -4
  386. package/internal/components/dnd-container/keyboard-sensor/utilities/events.js.map +1 -0
  387. package/internal/components/dnd-container/keyboard-sensor/utilities/listeners.d.ts.map +1 -0
  388. package/internal/components/dnd-container/keyboard-sensor/utilities/listeners.js.map +1 -0
  389. package/internal/components/dnd-container/keyboard-sensor/utilities/scroll.d.ts +8 -0
  390. package/internal/components/dnd-container/keyboard-sensor/utilities/scroll.d.ts.map +1 -0
  391. package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/utilities/scroll.js +2 -2
  392. package/internal/components/dnd-container/keyboard-sensor/utilities/scroll.js.map +1 -0
  393. package/internal/components/dnd-container/styles.css.js +6 -0
  394. package/internal/components/dnd-container/styles.scoped.css +168 -0
  395. package/internal/components/dnd-container/styles.selectors.js +7 -0
  396. package/{collection-preferences/content-display → internal/components/dnd-container}/use-drag-and-drop-reorder.d.ts +2 -4
  397. package/internal/components/dnd-container/use-drag-and-drop-reorder.d.ts.map +1 -0
  398. package/{collection-preferences/content-display → internal/components/dnd-container}/use-drag-and-drop-reorder.js +4 -4
  399. package/internal/components/dnd-container/use-drag-and-drop-reorder.js.map +1 -0
  400. package/internal/components/dnd-container/use-live-announcements.d.ts +11 -0
  401. package/internal/components/dnd-container/use-live-announcements.d.ts.map +1 -0
  402. package/{collection-preferences/content-display → internal/components/dnd-container}/use-live-announcements.js +6 -6
  403. package/internal/components/dnd-container/use-live-announcements.js.map +1 -0
  404. package/internal/components/dropdown/dropdown-fit-handler.d.ts +0 -30
  405. package/internal/components/dropdown/dropdown-fit-handler.d.ts.map +1 -1
  406. package/internal/components/dropdown/dropdown-fit-handler.js +4 -4
  407. package/internal/components/dropdown/dropdown-fit-handler.js.map +1 -1
  408. package/internal/components/dropdown/styles.css.js +20 -20
  409. package/internal/components/dropdown/styles.scoped.css +37 -40
  410. package/internal/components/dropdown/styles.selectors.js +20 -20
  411. package/internal/components/dropdown-footer/styles.css.js +3 -3
  412. package/internal/components/dropdown-footer/styles.scoped.css +3 -6
  413. package/internal/components/dropdown-footer/styles.selectors.js +3 -3
  414. package/internal/components/dropdown-status/styles.css.js +2 -2
  415. package/internal/components/dropdown-status/styles.scoped.css +2 -5
  416. package/internal/components/dropdown-status/styles.selectors.js +2 -2
  417. package/internal/components/focus-lock/utils.d.ts +0 -1
  418. package/internal/components/focus-lock/utils.d.ts.map +1 -1
  419. package/internal/components/focus-lock/utils.js +1 -1
  420. package/internal/components/focus-lock/utils.js.map +1 -1
  421. package/internal/components/masked-input/index.d.ts +1 -2
  422. package/internal/components/masked-input/index.d.ts.map +1 -1
  423. package/internal/components/masked-input/index.js +0 -1
  424. package/internal/components/masked-input/index.js.map +1 -1
  425. package/internal/components/masked-input/utils/mask-format.d.ts +1 -1
  426. package/internal/components/masked-input/utils/mask-format.d.ts.map +1 -1
  427. package/internal/components/masked-input/utils/mask-format.js.map +1 -1
  428. package/internal/components/menu-dropdown/styles.css.js +7 -7
  429. package/internal/components/menu-dropdown/styles.scoped.css +13 -16
  430. package/internal/components/menu-dropdown/styles.selectors.js +7 -7
  431. package/internal/components/option/highlight-match.d.ts +2 -1
  432. package/internal/components/option/highlight-match.d.ts.map +1 -1
  433. package/internal/components/option/highlight-match.js.map +1 -1
  434. package/internal/components/option/interfaces.d.ts +3 -2
  435. package/internal/components/option/interfaces.d.ts.map +1 -1
  436. package/internal/components/option/interfaces.js.map +1 -1
  437. package/internal/components/option/styles.css.js +17 -17
  438. package/internal/components/option/styles.scoped.css +29 -32
  439. package/internal/components/option/styles.selectors.js +17 -17
  440. package/internal/components/options-list/styles.css.js +3 -3
  441. package/internal/components/options-list/styles.scoped.css +3 -6
  442. package/internal/components/options-list/styles.selectors.js +3 -3
  443. package/internal/components/options-list/utils/use-highlight-option.d.ts +2 -1
  444. package/internal/components/options-list/utils/use-highlight-option.d.ts.map +1 -1
  445. package/internal/components/options-list/utils/use-highlight-option.js +2 -2
  446. package/internal/components/options-list/utils/use-highlight-option.js.map +1 -1
  447. package/internal/components/screenreader-only/index.d.ts +2 -1
  448. package/internal/components/screenreader-only/index.d.ts.map +1 -1
  449. package/internal/components/screenreader-only/index.js.map +1 -1
  450. package/internal/components/tab-trap/index.d.ts +2 -1
  451. package/internal/components/tab-trap/index.d.ts.map +1 -1
  452. package/internal/components/tab-trap/index.js.map +1 -1
  453. package/internal/components/token-list/styles.css.js +10 -10
  454. package/internal/components/token-list/styles.scoped.css +22 -25
  455. package/internal/components/token-list/styles.selectors.js +10 -10
  456. package/internal/components/transition/index.d.ts +2 -1
  457. package/internal/components/transition/index.d.ts.map +1 -1
  458. package/internal/components/transition/index.js.map +1 -1
  459. package/internal/context/single-tab-stop-navigation-context.d.ts +2 -4
  460. package/internal/context/single-tab-stop-navigation-context.d.ts.map +1 -1
  461. package/internal/context/single-tab-stop-navigation-context.js.map +1 -1
  462. package/internal/context/table-component-context.d.ts +2 -2
  463. package/internal/context/table-component-context.d.ts.map +1 -1
  464. package/internal/context/table-component-context.js +1 -1
  465. package/internal/context/table-component-context.js.map +1 -1
  466. package/internal/environment.js +1 -1
  467. package/internal/environment.json +1 -1
  468. package/internal/events/index.d.ts +1 -0
  469. package/internal/events/index.d.ts.map +1 -1
  470. package/internal/events/index.js +1 -0
  471. package/internal/events/index.js.map +1 -1
  472. package/internal/hooks/forward-focus/radio-group.d.ts +2 -1
  473. package/internal/hooks/forward-focus/radio-group.d.ts.map +1 -1
  474. package/internal/hooks/forward-focus/radio-group.js.map +1 -1
  475. package/internal/hooks/use-dynamic-overlap/index.d.ts +2 -1
  476. package/internal/hooks/use-dynamic-overlap/index.d.ts.map +1 -1
  477. package/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
  478. package/internal/keycode.d.ts +1 -5
  479. package/internal/keycode.d.ts.map +1 -1
  480. package/internal/keycode.js +0 -4
  481. package/internal/keycode.js.map +1 -1
  482. package/internal/manifest.json +1 -1
  483. package/internal/plugins/controllers/action-buttons.d.ts +1 -1
  484. package/internal/plugins/controllers/action-buttons.d.ts.map +1 -1
  485. package/internal/plugins/controllers/action-buttons.js.map +1 -1
  486. package/internal/plugins/controllers/alert-flash-content.d.ts +3 -3
  487. package/internal/plugins/controllers/alert-flash-content.d.ts.map +1 -1
  488. package/internal/plugins/controllers/alert-flash-content.js.map +1 -1
  489. package/internal/plugins/controllers/app-layout-widget.d.ts +1 -1
  490. package/internal/plugins/controllers/app-layout-widget.d.ts.map +1 -1
  491. package/internal/plugins/controllers/app-layout-widget.js.map +1 -1
  492. package/internal/plugins/controllers/drawers.d.ts +4 -4
  493. package/internal/plugins/controllers/drawers.d.ts.map +1 -1
  494. package/internal/plugins/controllers/drawers.js.map +1 -1
  495. package/internal/utils/handle-key.d.ts +2 -1
  496. package/internal/utils/handle-key.d.ts.map +1 -1
  497. package/internal/utils/handle-key.js.map +1 -1
  498. package/internal/utils/throttle.d.ts +2 -1
  499. package/internal/utils/throttle.d.ts.map +1 -1
  500. package/internal/utils/throttle.js.map +1 -1
  501. package/key-value-pairs/styles.css.js +8 -8
  502. package/key-value-pairs/styles.scoped.css +9 -15
  503. package/key-value-pairs/styles.selectors.js +8 -8
  504. package/link/styles.css.js +20 -20
  505. package/link/styles.scoped.css +71 -74
  506. package/link/styles.selectors.js +20 -20
  507. package/live-region/internal.d.ts +1 -1
  508. package/live-region/internal.d.ts.map +1 -1
  509. package/live-region/internal.js.map +1 -1
  510. package/mixed-line-bar-chart/bar-groups.d.ts +2 -1
  511. package/mixed-line-bar-chart/bar-groups.d.ts.map +1 -1
  512. package/mixed-line-bar-chart/bar-groups.js.map +1 -1
  513. package/mixed-line-bar-chart/bar-series.d.ts +2 -1
  514. package/mixed-line-bar-chart/bar-series.d.ts.map +1 -1
  515. package/mixed-line-bar-chart/bar-series.js.map +1 -1
  516. package/mixed-line-bar-chart/data-series.d.ts +2 -1
  517. package/mixed-line-bar-chart/data-series.d.ts.map +1 -1
  518. package/mixed-line-bar-chart/data-series.js.map +1 -1
  519. package/mixed-line-bar-chart/interfaces.d.ts +0 -2
  520. package/mixed-line-bar-chart/interfaces.d.ts.map +1 -1
  521. package/mixed-line-bar-chart/interfaces.js.map +1 -1
  522. package/mixed-line-bar-chart/line-series.d.ts +2 -1
  523. package/mixed-line-bar-chart/line-series.d.ts.map +1 -1
  524. package/mixed-line-bar-chart/line-series.js.map +1 -1
  525. package/modal/index.d.ts.map +1 -1
  526. package/modal/index.js +8 -2
  527. package/modal/index.js.map +1 -1
  528. package/modal/internal.js +1 -1
  529. package/modal/internal.js.map +1 -1
  530. package/modal/styles.css.js +23 -23
  531. package/modal/styles.scoped.css +38 -44
  532. package/modal/styles.selectors.js +23 -23
  533. package/multiselect/analytics-metadata/interfaces.d.ts +0 -4
  534. package/multiselect/analytics-metadata/interfaces.d.ts.map +1 -1
  535. package/multiselect/analytics-metadata/interfaces.js.map +1 -1
  536. package/multiselect/styles.css.js +3 -3
  537. package/multiselect/styles.scoped.css +3 -9
  538. package/multiselect/styles.selectors.js +3 -3
  539. package/package.json +1 -1
  540. package/pagination/styles.css.js +9 -9
  541. package/pagination/styles.scoped.css +23 -26
  542. package/pagination/styles.selectors.js +9 -9
  543. package/pie-chart/interfaces.d.ts +2 -1
  544. package/pie-chart/interfaces.d.ts.map +1 -1
  545. package/pie-chart/interfaces.js.map +1 -1
  546. package/pie-chart/labels.d.ts +1 -1
  547. package/pie-chart/labels.d.ts.map +1 -1
  548. package/pie-chart/labels.js.map +1 -1
  549. package/pie-chart/pie-chart.d.ts +2 -7
  550. package/pie-chart/pie-chart.d.ts.map +1 -1
  551. package/pie-chart/pie-chart.js.map +1 -1
  552. package/popover/arrow.d.ts +1 -1
  553. package/popover/arrow.d.ts.map +1 -1
  554. package/popover/arrow.js.map +1 -1
  555. package/popover/body.d.ts.map +1 -1
  556. package/popover/body.js +0 -1
  557. package/popover/body.js.map +1 -1
  558. package/popover/container.d.ts +2 -1
  559. package/popover/container.d.ts.map +1 -1
  560. package/popover/container.js.map +1 -1
  561. package/popover/internal.d.ts +1 -0
  562. package/popover/internal.d.ts.map +1 -1
  563. package/popover/internal.js +2 -2
  564. package/popover/internal.js.map +1 -1
  565. package/popover/styles.css.js +53 -52
  566. package/popover/styles.scoped.css +71 -77
  567. package/popover/styles.selectors.js +53 -52
  568. package/progress-bar/styles.css.js +19 -19
  569. package/progress-bar/styles.scoped.css +30 -33
  570. package/progress-bar/styles.selectors.js +19 -19
  571. package/prompt-input/internal.d.ts +1 -1
  572. package/prompt-input/internal.d.ts.map +1 -1
  573. package/prompt-input/internal.js.map +1 -1
  574. package/prompt-input/styles.css.js +14 -14
  575. package/prompt-input/styles.scoped.css +39 -51
  576. package/prompt-input/styles.selectors.js +14 -14
  577. package/property-filter/analytics-metadata/interfaces.d.ts +0 -15
  578. package/property-filter/analytics-metadata/interfaces.d.ts.map +1 -1
  579. package/property-filter/analytics-metadata/interfaces.js.map +1 -1
  580. package/property-filter/controller.d.ts +0 -1
  581. package/property-filter/controller.d.ts.map +1 -1
  582. package/property-filter/controller.js +1 -1
  583. package/property-filter/controller.js.map +1 -1
  584. package/property-filter/filtering-token/styles.css.js +18 -18
  585. package/property-filter/filtering-token/styles.scoped.css +41 -44
  586. package/property-filter/filtering-token/styles.selectors.js +18 -18
  587. package/property-filter/interfaces.d.ts +1 -6
  588. package/property-filter/interfaces.d.ts.map +1 -1
  589. package/property-filter/interfaces.js.map +1 -1
  590. package/property-filter/internal.d.ts +0 -2
  591. package/property-filter/internal.d.ts.map +1 -1
  592. package/property-filter/internal.js.map +1 -1
  593. package/property-filter/styles.css.js +39 -39
  594. package/property-filter/styles.scoped.css +41 -47
  595. package/property-filter/styles.selectors.js +39 -39
  596. package/property-filter/utils.d.ts +0 -1
  597. package/property-filter/utils.d.ts.map +1 -1
  598. package/property-filter/utils.js +1 -1
  599. package/property-filter/utils.js.map +1 -1
  600. package/radio-group/styles.css.js +10 -10
  601. package/radio-group/styles.scoped.css +16 -19
  602. package/radio-group/styles.selectors.js +10 -10
  603. package/s3-resource-selector/s3-modal/basic-table.d.ts +0 -6
  604. package/s3-resource-selector/s3-modal/basic-table.d.ts.map +1 -1
  605. package/s3-resource-selector/s3-modal/basic-table.js +1 -1
  606. package/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
  607. package/segmented-control/segment.d.ts +2 -1
  608. package/segmented-control/segment.d.ts.map +1 -1
  609. package/segmented-control/segment.js.map +1 -1
  610. package/segmented-control/styles.css.js +15 -15
  611. package/segmented-control/styles.scoped.css +34 -37
  612. package/segmented-control/styles.selectors.js +15 -15
  613. package/select/analytics-metadata/interfaces.d.ts +0 -4
  614. package/select/analytics-metadata/interfaces.d.ts.map +1 -1
  615. package/select/analytics-metadata/interfaces.js.map +1 -1
  616. package/select/styles.css.js +1 -1
  617. package/select/styles.scoped.css +1 -4
  618. package/select/styles.selectors.js +1 -1
  619. package/select/utils/render-options.d.ts +2 -1
  620. package/select/utils/render-options.d.ts.map +1 -1
  621. package/select/utils/render-options.js.map +1 -1
  622. package/select/utils/use-native-search.d.ts +0 -1
  623. package/select/utils/use-native-search.d.ts.map +1 -1
  624. package/select/utils/use-native-search.js +1 -1
  625. package/select/utils/use-native-search.js.map +1 -1
  626. package/side-navigation/analytics-metadata/interfaces.d.ts +0 -2
  627. package/side-navigation/analytics-metadata/interfaces.d.ts.map +1 -1
  628. package/side-navigation/analytics-metadata/interfaces.js.map +1 -1
  629. package/side-navigation/implementation.d.ts +2 -1
  630. package/side-navigation/implementation.d.ts.map +1 -1
  631. package/side-navigation/implementation.js.map +1 -1
  632. package/side-navigation/parts.d.ts +2 -2
  633. package/side-navigation/parts.d.ts.map +1 -1
  634. package/side-navigation/parts.js.map +1 -1
  635. package/side-navigation/styles.css.js +30 -30
  636. package/side-navigation/styles.scoped.css +46 -49
  637. package/side-navigation/styles.selectors.js +30 -30
  638. package/slider/internal.d.ts +2 -1
  639. package/slider/internal.d.ts.map +1 -1
  640. package/slider/internal.js.map +1 -1
  641. package/slider/slider-labels.d.ts +2 -1
  642. package/slider/slider-labels.d.ts.map +1 -1
  643. package/slider/slider-labels.js.map +1 -1
  644. package/slider/styles.css.js +26 -26
  645. package/slider/styles.scoped.css +76 -79
  646. package/slider/styles.selectors.js +26 -26
  647. package/slider/tick-marks.d.ts +2 -4
  648. package/slider/tick-marks.d.ts.map +1 -1
  649. package/slider/tick-marks.js.map +1 -1
  650. package/split-panel/bottom.d.ts.map +1 -1
  651. package/split-panel/bottom.js +13 -3
  652. package/split-panel/bottom.js.map +1 -1
  653. package/split-panel/implementation.js +1 -1
  654. package/split-panel/implementation.js.map +1 -1
  655. package/split-panel/styles.css.js +26 -26
  656. package/split-panel/styles.scoped.css +43 -51
  657. package/split-panel/styles.selectors.js +26 -26
  658. package/steps/internal.d.ts +1 -1
  659. package/steps/internal.d.ts.map +1 -1
  660. package/steps/internal.js +1 -1
  661. package/steps/internal.js.map +1 -1
  662. package/steps/styles.css.js +6 -6
  663. package/steps/styles.scoped.css +7 -10
  664. package/steps/styles.selectors.js +6 -6
  665. package/table/expandable-rows/styles.css.js +3 -3
  666. package/table/expandable-rows/styles.scoped.css +13 -16
  667. package/table/expandable-rows/styles.selectors.js +3 -3
  668. package/table/interfaces.d.ts +3 -2
  669. package/table/interfaces.d.ts.map +1 -1
  670. package/table/interfaces.js.map +1 -1
  671. package/table/internal.js +2 -2
  672. package/table/internal.js.map +1 -1
  673. package/table/progressive-loading/loader-cell.d.ts +2 -1
  674. package/table/progressive-loading/loader-cell.d.ts.map +1 -1
  675. package/table/progressive-loading/loader-cell.js.map +1 -1
  676. package/table/resizer/styles.css.js +8 -8
  677. package/table/resizer/styles.scoped.css +15 -18
  678. package/table/resizer/styles.selectors.js +8 -8
  679. package/table/selection/utils.d.ts +0 -1
  680. package/table/selection/utils.d.ts.map +1 -1
  681. package/table/selection/utils.js +1 -1
  682. package/table/selection/utils.js.map +1 -1
  683. package/table/sticky-columns/use-sticky-columns.d.ts +1 -21
  684. package/table/sticky-columns/use-sticky-columns.d.ts.map +1 -1
  685. package/table/sticky-columns/use-sticky-columns.js +1 -1
  686. package/table/sticky-columns/use-sticky-columns.js.map +1 -1
  687. package/table/sticky-scrollbar/sticky-scrollbar.d.ts.map +1 -1
  688. package/table/sticky-scrollbar/sticky-scrollbar.js +6 -2
  689. package/table/sticky-scrollbar/sticky-scrollbar.js.map +1 -1
  690. package/table/sticky-scrollbar/styles.css.js +6 -6
  691. package/table/sticky-scrollbar/styles.scoped.css +10 -7
  692. package/table/sticky-scrollbar/styles.selectors.js +6 -6
  693. package/table/table-role/grid-navigation.js +10 -0
  694. package/table/table-role/grid-navigation.js.map +1 -1
  695. package/table/table-role/index.d.ts +1 -1
  696. package/table/table-role/index.d.ts.map +1 -1
  697. package/table/table-role/index.js.map +1 -1
  698. package/table/use-cell-editing.d.ts +1 -1
  699. package/table/use-cell-editing.d.ts.map +1 -1
  700. package/table/use-cell-editing.js.map +1 -1
  701. package/tabs/styles.css.js +28 -28
  702. package/tabs/styles.scoped.css +49 -52
  703. package/tabs/styles.selectors.js +28 -28
  704. package/tabs/tab-header-bar.d.ts +2 -1
  705. package/tabs/tab-header-bar.d.ts.map +1 -1
  706. package/tabs/tab-header-bar.js.map +1 -1
  707. package/tag-editor/internal.d.ts +2 -1
  708. package/tag-editor/internal.d.ts.map +1 -1
  709. package/tag-editor/internal.js.map +1 -1
  710. package/test-utils/dom/anchor-navigation/index.d.ts +2 -1
  711. package/test-utils/dom/anchor-navigation/index.js +0 -2
  712. package/test-utils/dom/anchor-navigation/index.js.map +1 -1
  713. package/test-utils/dom/autosuggest/index.d.ts +0 -3
  714. package/test-utils/dom/autosuggest/index.js +1 -2
  715. package/test-utils/dom/autosuggest/index.js.map +1 -1
  716. package/test-utils/dom/cards/index.d.ts +3 -2
  717. package/test-utils/dom/cards/index.js +0 -3
  718. package/test-utils/dom/cards/index.js.map +1 -1
  719. package/test-utils/dom/key-value-pairs/index.d.ts +3 -2
  720. package/test-utils/dom/key-value-pairs/index.js +0 -3
  721. package/test-utils/dom/key-value-pairs/index.js.map +1 -1
  722. package/test-utils/dom/steps/index.d.ts +2 -1
  723. package/test-utils/dom/steps/index.js +0 -2
  724. package/test-utils/dom/steps/index.js.map +1 -1
  725. package/test-utils/dom/tabs/index.d.ts +2 -1
  726. package/test-utils/dom/tabs/index.js +0 -2
  727. package/test-utils/dom/tabs/index.js.map +1 -1
  728. package/test-utils/dom/tag-editor/index.d.ts +2 -1
  729. package/test-utils/dom/tag-editor/index.js +0 -2
  730. package/test-utils/dom/tag-editor/index.js.map +1 -1
  731. package/test-utils/selectors/anchor-navigation/index.d.ts +2 -1
  732. package/test-utils/selectors/anchor-navigation/index.js +0 -2
  733. package/test-utils/selectors/anchor-navigation/index.js.map +1 -1
  734. package/test-utils/selectors/autosuggest/index.d.ts +0 -3
  735. package/test-utils/selectors/autosuggest/index.js +1 -2
  736. package/test-utils/selectors/autosuggest/index.js.map +1 -1
  737. package/test-utils/selectors/cards/index.d.ts +3 -2
  738. package/test-utils/selectors/cards/index.js +0 -3
  739. package/test-utils/selectors/cards/index.js.map +1 -1
  740. package/test-utils/selectors/key-value-pairs/index.d.ts +3 -2
  741. package/test-utils/selectors/key-value-pairs/index.js +0 -3
  742. package/test-utils/selectors/key-value-pairs/index.js.map +1 -1
  743. package/test-utils/selectors/steps/index.d.ts +2 -1
  744. package/test-utils/selectors/steps/index.js +0 -2
  745. package/test-utils/selectors/steps/index.js.map +1 -1
  746. package/test-utils/selectors/tabs/index.d.ts +2 -1
  747. package/test-utils/selectors/tabs/index.js +0 -2
  748. package/test-utils/selectors/tabs/index.js.map +1 -1
  749. package/test-utils/selectors/tag-editor/index.d.ts +2 -1
  750. package/test-utils/selectors/tag-editor/index.js +0 -2
  751. package/test-utils/selectors/tag-editor/index.js.map +1 -1
  752. package/test-utils/tsconfig.tsbuildinfo +1 -1
  753. package/text-content/styles.css.js +1 -1
  754. package/text-content/styles.scoped.css +60 -63
  755. package/text-content/styles.selectors.js +1 -1
  756. package/text-filter/analytics-metadata/interfaces.d.ts +0 -2
  757. package/text-filter/analytics-metadata/interfaces.d.ts.map +1 -1
  758. package/text-filter/analytics-metadata/interfaces.js.map +1 -1
  759. package/text-filter/styles.css.js +3 -3
  760. package/text-filter/styles.scoped.css +3 -6
  761. package/text-filter/styles.selectors.js +3 -3
  762. package/textarea/styles.css.js +5 -5
  763. package/textarea/styles.scoped.css +14 -17
  764. package/textarea/styles.selectors.js +5 -5
  765. package/tiles/styles.css.js +30 -30
  766. package/tiles/styles.scoped.css +71 -77
  767. package/tiles/styles.selectors.js +30 -30
  768. package/toggle/styles.css.js +10 -10
  769. package/toggle/styles.scoped.css +17 -20
  770. package/toggle/styles.selectors.js +10 -10
  771. package/toggle-button/internal.d.ts +0 -1
  772. package/toggle-button/internal.d.ts.map +1 -1
  773. package/toggle-button/internal.js +0 -1
  774. package/toggle-button/internal.js.map +1 -1
  775. package/token-group/analytics-metadata/interfaces.d.ts +0 -2
  776. package/token-group/analytics-metadata/interfaces.d.ts.map +1 -1
  777. package/token-group/analytics-metadata/interfaces.js.map +1 -1
  778. package/token-group/styles.css.js +8 -8
  779. package/token-group/styles.scoped.css +16 -19
  780. package/token-group/styles.selectors.js +8 -8
  781. package/top-navigation/1.0-beta/internal.d.ts +2 -1
  782. package/top-navigation/1.0-beta/internal.d.ts.map +1 -1
  783. package/top-navigation/1.0-beta/internal.js.map +1 -1
  784. package/top-navigation/1.0-beta/parts/overflow-menu.d.ts +2 -1
  785. package/top-navigation/1.0-beta/parts/overflow-menu.d.ts.map +1 -1
  786. package/top-navigation/1.0-beta/parts/overflow-menu.js.map +1 -1
  787. package/top-navigation/1.0-beta/styles.css.js +25 -25
  788. package/top-navigation/1.0-beta/styles.scoped.css +42 -45
  789. package/top-navigation/1.0-beta/styles.selectors.js +25 -25
  790. package/top-navigation/1.0-beta/use-top-navigation.d.ts +4 -24
  791. package/top-navigation/1.0-beta/use-top-navigation.d.ts.map +1 -1
  792. package/top-navigation/1.0-beta/use-top-navigation.js +2 -2
  793. package/top-navigation/1.0-beta/use-top-navigation.js.map +1 -1
  794. package/top-navigation/internal.d.ts +2 -1
  795. package/top-navigation/internal.d.ts.map +1 -1
  796. package/top-navigation/internal.js.map +1 -1
  797. package/top-navigation/parts/overflow-menu/router.d.ts +1 -10
  798. package/top-navigation/parts/overflow-menu/router.d.ts.map +1 -1
  799. package/top-navigation/parts/overflow-menu/router.js +1 -1
  800. package/top-navigation/parts/overflow-menu/router.js.map +1 -1
  801. package/top-navigation/styles.css.js +47 -47
  802. package/top-navigation/styles.scoped.css +66 -75
  803. package/top-navigation/styles.selectors.js +47 -47
  804. package/top-navigation/use-top-navigation.d.ts +4 -3
  805. package/top-navigation/use-top-navigation.d.ts.map +1 -1
  806. package/top-navigation/use-top-navigation.js.map +1 -1
  807. package/tutorial-panel/components/tutorial-detail-view/styles.css.js +20 -20
  808. package/tutorial-panel/components/tutorial-detail-view/styles.scoped.css +21 -24
  809. package/tutorial-panel/components/tutorial-detail-view/styles.selectors.js +20 -20
  810. package/tutorial-panel/components/tutorial-detail-view/task-list.d.ts +2 -1
  811. package/tutorial-panel/components/tutorial-detail-view/task-list.d.ts.map +1 -1
  812. package/tutorial-panel/components/tutorial-detail-view/task-list.js.map +1 -1
  813. package/tutorial-panel/components/tutorial-list/index.d.ts +2 -1
  814. package/tutorial-panel/components/tutorial-list/index.d.ts.map +1 -1
  815. package/tutorial-panel/components/tutorial-list/index.js.map +1 -1
  816. package/tutorial-panel/components/tutorial-list/styles.css.js +18 -18
  817. package/tutorial-panel/components/tutorial-list/styles.scoped.css +27 -36
  818. package/tutorial-panel/components/tutorial-list/styles.selectors.js +18 -18
  819. package/tutorial-panel/styles.css.js +1 -1
  820. package/tutorial-panel/styles.scoped.css +1 -4
  821. package/tutorial-panel/styles.selectors.js +1 -1
  822. package/wizard/analytics-metadata/interfaces.d.ts +0 -21
  823. package/wizard/analytics-metadata/interfaces.d.ts.map +1 -1
  824. package/wizard/analytics-metadata/interfaces.js.map +1 -1
  825. package/wizard/styles.css.js +30 -30
  826. package/wizard/styles.scoped.css +58 -61
  827. package/wizard/styles.selectors.js +30 -30
  828. package/wizard/wizard-form.d.ts +1 -4
  829. package/wizard/wizard-form.d.ts.map +1 -1
  830. package/wizard/wizard-form.js +1 -1
  831. package/wizard/wizard-form.js.map +1 -1
  832. package/app-layout/split-panel/split-panel-utils.d.ts +0 -12
  833. package/app-layout/split-panel/split-panel-utils.d.ts.map +0 -1
  834. package/app-layout/split-panel/split-panel-utils.js +0 -28
  835. package/app-layout/split-panel/split-panel-utils.js.map +0 -1
  836. package/collection-preferences/content-display/draggable-option.d.ts +0 -9
  837. package/collection-preferences/content-display/draggable-option.d.ts.map +0 -1
  838. package/collection-preferences/content-display/draggable-option.js +0 -27
  839. package/collection-preferences/content-display/draggable-option.js.map +0 -1
  840. package/collection-preferences/content-display/keyboard-sensor/defaults.d.ts.map +0 -1
  841. package/collection-preferences/content-display/keyboard-sensor/defaults.js.map +0 -1
  842. package/collection-preferences/content-display/keyboard-sensor/index.d.ts.map +0 -1
  843. package/collection-preferences/content-display/keyboard-sensor/index.js.map +0 -1
  844. package/collection-preferences/content-display/keyboard-sensor/utilities/events.d.ts +0 -11
  845. package/collection-preferences/content-display/keyboard-sensor/utilities/events.d.ts.map +0 -1
  846. package/collection-preferences/content-display/keyboard-sensor/utilities/events.js.map +0 -1
  847. package/collection-preferences/content-display/keyboard-sensor/utilities/listeners.d.ts.map +0 -1
  848. package/collection-preferences/content-display/keyboard-sensor/utilities/listeners.js.map +0 -1
  849. package/collection-preferences/content-display/keyboard-sensor/utilities/scroll.d.ts +0 -30
  850. package/collection-preferences/content-display/keyboard-sensor/utilities/scroll.d.ts.map +0 -1
  851. package/collection-preferences/content-display/keyboard-sensor/utilities/scroll.js.map +0 -1
  852. package/collection-preferences/content-display/use-drag-and-drop-reorder.d.ts.map +0 -1
  853. package/collection-preferences/content-display/use-drag-and-drop-reorder.js.map +0 -1
  854. package/collection-preferences/content-display/use-live-announcements.d.ts +0 -12
  855. package/collection-preferences/content-display/use-live-announcements.d.ts.map +0 -1
  856. package/collection-preferences/content-display/use-live-announcements.js.map +0 -1
  857. package/internal/hooks/use-mutation-observer/index.d.ts +0 -8
  858. package/internal/hooks/use-mutation-observer/index.d.ts.map +0 -1
  859. package/internal/hooks/use-mutation-observer/index.js +0 -26
  860. package/internal/hooks/use-mutation-observer/index.js.map +0 -1
  861. /package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/defaults.d.ts +0 -0
  862. /package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/defaults.js +0 -0
  863. /package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/index.d.ts +0 -0
  864. /package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/utilities/listeners.d.ts +0 -0
  865. /package/{collection-preferences/content-display → internal/components/dnd-container}/keyboard-sensor/utilities/listeners.js +0 -0
@@ -2,52 +2,52 @@
2
2
  // es-module interop with Babel and Typescript
3
3
  Object.defineProperty(exports, "__esModule", { value: true });
4
4
  module.exports.default = {
5
- "icon": "awsui_icon_k5dlb_31br2_149",
6
- "top-navigation": "awsui_top-navigation_k5dlb_31br2_163",
7
- "padding-box": "awsui_padding-box_k5dlb_31br2_198",
8
- "medium": "awsui_medium_k5dlb_31br2_208",
9
- "narrow": "awsui_narrow_k5dlb_31br2_208",
10
- "virtual": "awsui_virtual_k5dlb_31br2_219",
11
- "hidden": "awsui_hidden_k5dlb_31br2_223",
12
- "\t": "awsui_\t_k5dlb_31br2_1",
13
- "identity": "awsui_identity_k5dlb_31br2_235",
14
- "identity-link": "awsui_identity-link_k5dlb_31br2_238",
15
- "no-logo": "awsui_no-logo_k5dlb_31br2_258",
16
- "logo": "awsui_logo_k5dlb_31br2_262",
17
- "title": "awsui_title_k5dlb_31br2_274",
18
- "inputs": "awsui_inputs_k5dlb_31br2_289",
19
- "search": "awsui_search_k5dlb_31br2_297",
20
- "search-expanded": "awsui_search-expanded_k5dlb_31br2_301",
21
- "utilities": "awsui_utilities_k5dlb_31br2_305",
22
- "utility-wrapper": "awsui_utility-wrapper_k5dlb_31br2_316",
23
- "utility-type-button-link": "awsui_utility-type-button-link_k5dlb_31br2_337",
24
- "utility-type-menu-dropdown": "awsui_utility-type-menu-dropdown_k5dlb_31br2_342",
25
- "utility-type-button-primary-button": "awsui_utility-type-button-primary-button_k5dlb_31br2_351",
26
- "utility-link-icon": "awsui_utility-link-icon_k5dlb_31br2_359",
27
- "utility-button-external-icon": "awsui_utility-button-external-icon_k5dlb_31br2_363",
28
- "offset-right-none": "awsui_offset-right-none_k5dlb_31br2_367",
29
- "offset-right-l": "awsui_offset-right-l_k5dlb_31br2_371",
30
- "offset-right-xxl": "awsui_offset-right-xxl_k5dlb_31br2_375",
31
- "overflow-menu-drawer": "awsui_overflow-menu-drawer_k5dlb_31br2_380",
32
- "overflow-menu": "awsui_overflow-menu_k5dlb_31br2_380",
33
- "overflow-menu-header": "awsui_overflow-menu-header_k5dlb_31br2_424",
34
- "overflow-menu-header-text": "awsui_overflow-menu-header-text_k5dlb_31br2_432",
35
- "overflow-menu-header-text--secondary": "awsui_overflow-menu-header-text--secondary_k5dlb_31br2_444",
36
- "overflow-menu-header-text--title": "awsui_overflow-menu-header-text--title_k5dlb_31br2_450",
37
- "overflow-menu-back-button": "awsui_overflow-menu-back-button_k5dlb_31br2_454",
38
- "overflow-menu-dismiss-button": "awsui_overflow-menu-dismiss-button_k5dlb_31br2_458",
39
- "overflow-menu-control": "awsui_overflow-menu-control_k5dlb_31br2_462",
40
- "overflow-menu-list-item-utility": "awsui_overflow-menu-list-item-utility_k5dlb_31br2_503",
41
- "overflow-menu-control-link": "awsui_overflow-menu-control-link_k5dlb_31br2_511",
42
- "overflow-menu-control-expandable-menu-trigger": "awsui_overflow-menu-control-expandable-menu-trigger_k5dlb_31br2_514",
43
- "overflow-menu-list": "awsui_overflow-menu-list_k5dlb_31br2_503",
44
- "overflow-menu-list-submenu": "awsui_overflow-menu-list-submenu_k5dlb_31br2_550",
45
- "overflow-menu-list-item": "awsui_overflow-menu-list-item_k5dlb_31br2_503",
46
- "overflow-menu-list-item-icon": "awsui_overflow-menu-list-item-icon_k5dlb_31br2_559",
47
- "overflow-menu-list-item-text": "awsui_overflow-menu-list-item-text_k5dlb_31br2_562",
48
- "overflow-menu-list-item-submenu": "awsui_overflow-menu-list-item-submenu_k5dlb_31br2_571",
49
- "overflow-menu-list-item-dropdown-menu": "awsui_overflow-menu-list-item-dropdown-menu_k5dlb_31br2_577",
50
- "overflow-menu-list-item-expandable": "awsui_overflow-menu-list-item-expandable_k5dlb_31br2_581",
51
- "expanded": "awsui_expanded_k5dlb_31br2_589"
5
+ "icon": "awsui_icon_k5dlb_1ulj1_149",
6
+ "top-navigation": "awsui_top-navigation_k5dlb_1ulj1_163",
7
+ "padding-box": "awsui_padding-box_k5dlb_1ulj1_195",
8
+ "medium": "awsui_medium_k5dlb_1ulj1_205",
9
+ "narrow": "awsui_narrow_k5dlb_1ulj1_205",
10
+ "virtual": "awsui_virtual_k5dlb_1ulj1_216",
11
+ "hidden": "awsui_hidden_k5dlb_1ulj1_220",
12
+ "\t": "awsui_\t_k5dlb_1ulj1_1",
13
+ "identity": "awsui_identity_k5dlb_1ulj1_232",
14
+ "identity-link": "awsui_identity-link_k5dlb_1ulj1_235",
15
+ "no-logo": "awsui_no-logo_k5dlb_1ulj1_255",
16
+ "logo": "awsui_logo_k5dlb_1ulj1_259",
17
+ "title": "awsui_title_k5dlb_1ulj1_271",
18
+ "inputs": "awsui_inputs_k5dlb_1ulj1_286",
19
+ "search": "awsui_search_k5dlb_1ulj1_294",
20
+ "search-expanded": "awsui_search-expanded_k5dlb_1ulj1_298",
21
+ "utilities": "awsui_utilities_k5dlb_1ulj1_302",
22
+ "utility-wrapper": "awsui_utility-wrapper_k5dlb_1ulj1_313",
23
+ "utility-type-button-link": "awsui_utility-type-button-link_k5dlb_1ulj1_334",
24
+ "utility-type-menu-dropdown": "awsui_utility-type-menu-dropdown_k5dlb_1ulj1_339",
25
+ "utility-type-button-primary-button": "awsui_utility-type-button-primary-button_k5dlb_1ulj1_348",
26
+ "utility-link-icon": "awsui_utility-link-icon_k5dlb_1ulj1_356",
27
+ "utility-button-external-icon": "awsui_utility-button-external-icon_k5dlb_1ulj1_360",
28
+ "offset-right-none": "awsui_offset-right-none_k5dlb_1ulj1_364",
29
+ "offset-right-l": "awsui_offset-right-l_k5dlb_1ulj1_368",
30
+ "offset-right-xxl": "awsui_offset-right-xxl_k5dlb_1ulj1_372",
31
+ "overflow-menu-drawer": "awsui_overflow-menu-drawer_k5dlb_1ulj1_377",
32
+ "overflow-menu": "awsui_overflow-menu_k5dlb_1ulj1_377",
33
+ "overflow-menu-header": "awsui_overflow-menu-header_k5dlb_1ulj1_418",
34
+ "overflow-menu-header-text": "awsui_overflow-menu-header-text_k5dlb_1ulj1_426",
35
+ "overflow-menu-header-text--secondary": "awsui_overflow-menu-header-text--secondary_k5dlb_1ulj1_438",
36
+ "overflow-menu-header-text--title": "awsui_overflow-menu-header-text--title_k5dlb_1ulj1_444",
37
+ "overflow-menu-back-button": "awsui_overflow-menu-back-button_k5dlb_1ulj1_448",
38
+ "overflow-menu-dismiss-button": "awsui_overflow-menu-dismiss-button_k5dlb_1ulj1_452",
39
+ "overflow-menu-control": "awsui_overflow-menu-control_k5dlb_1ulj1_456",
40
+ "overflow-menu-list-item-utility": "awsui_overflow-menu-list-item-utility_k5dlb_1ulj1_494",
41
+ "overflow-menu-control-link": "awsui_overflow-menu-control-link_k5dlb_1ulj1_502",
42
+ "overflow-menu-control-expandable-menu-trigger": "awsui_overflow-menu-control-expandable-menu-trigger_k5dlb_1ulj1_505",
43
+ "overflow-menu-list": "awsui_overflow-menu-list_k5dlb_1ulj1_494",
44
+ "overflow-menu-list-submenu": "awsui_overflow-menu-list-submenu_k5dlb_1ulj1_541",
45
+ "overflow-menu-list-item": "awsui_overflow-menu-list-item_k5dlb_1ulj1_494",
46
+ "overflow-menu-list-item-icon": "awsui_overflow-menu-list-item-icon_k5dlb_1ulj1_550",
47
+ "overflow-menu-list-item-text": "awsui_overflow-menu-list-item-text_k5dlb_1ulj1_553",
48
+ "overflow-menu-list-item-submenu": "awsui_overflow-menu-list-item-submenu_k5dlb_1ulj1_562",
49
+ "overflow-menu-list-item-dropdown-menu": "awsui_overflow-menu-list-item-dropdown-menu_k5dlb_1ulj1_568",
50
+ "overflow-menu-list-item-expandable": "awsui_overflow-menu-list-item-expandable_k5dlb_1ulj1_572",
51
+ "expanded": "awsui_expanded_k5dlb_1ulj1_580"
52
52
  };
53
53
 
@@ -1,11 +1,11 @@
1
1
  import React from 'react';
2
2
  import { TopNavigationProps } from './interfaces';
3
- export interface UseTopNavigationParams {
3
+ interface UseTopNavigationParams {
4
4
  identity: TopNavigationProps['identity'];
5
5
  search: TopNavigationProps['search'];
6
6
  utilities: NonNullable<TopNavigationProps['utilities']>;
7
7
  }
8
- export interface ResponsiveState {
8
+ interface ResponsiveState {
9
9
  hideUtilityText?: boolean;
10
10
  hideSearch?: boolean;
11
11
  hideUtilities?: number[];
@@ -23,7 +23,7 @@ export interface TopNavigationSizeConfiguration {
23
23
  utilityWithoutLabelWidths: number[];
24
24
  menuTriggerUtilityWidth: number;
25
25
  }
26
- export interface UseTopNavigation {
26
+ interface UseTopNavigation {
27
27
  mainRef: React.Ref<HTMLDivElement>;
28
28
  virtualRef: React.Ref<HTMLDivElement>;
29
29
  responsiveState: ResponsiveState;
@@ -41,4 +41,5 @@ export declare function generateResponsiveStateKeys(utilities: ReadonlyArray<Top
41
41
  * and the current sizes of all elements inside the navigation bar.
42
42
  */
43
43
  export declare function determineBestResponsiveState(possibleStates: ReadonlyArray<ResponsiveState>, sizes: TopNavigationSizeConfiguration): ResponsiveState;
44
+ export {};
44
45
  //# sourceMappingURL=use-top-navigation.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"use-top-navigation.d.ts","sourceRoot":"","sources":["../../../src/top-navigation/use-top-navigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAMjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAIlD,MAAM,WAAW,sBAAsB;IACrC,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACzC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACrC,SAAS,EAAE,WAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;CACzD;AAED,MAAM,WAAW,eAAe;IAC9B,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,8BAA8B;IAC7C,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACnC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEtC,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,SAAS,GAAG,KAAK,GAAG,GAAG,CAAC;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC;AAKD,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,sBAAsB,GAAG,gBAAgB,CA8G1G;AAYD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,aAAa,CAAC,kBAAkB,CAAC,OAAO,CAAC,EACpD,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,OAAO,GACpB,aAAa,CAAC,eAAe,CAAC,CA+BhC;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,cAAc,EAAE,aAAa,CAAC,eAAe,CAAC,EAC9C,KAAK,EAAE,8BAA8B,GACpC,eAAe,CA6BjB"}
1
+ {"version":3,"file":"use-top-navigation.d.ts","sourceRoot":"","sources":["../../../src/top-navigation/use-top-navigation.ts"],"names":[],"mappings":"AAEA,OAAO,KAA4D,MAAM,OAAO,CAAC;AAMjF,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAIlD,UAAU,sBAAsB;IAC9B,QAAQ,EAAE,kBAAkB,CAAC,UAAU,CAAC,CAAC;IACzC,MAAM,EAAE,kBAAkB,CAAC,QAAQ,CAAC,CAAC;IACrC,SAAS,EAAE,WAAW,CAAC,kBAAkB,CAAC,WAAW,CAAC,CAAC,CAAC;CACzD;AAED,UAAU,eAAe;IACvB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;IACzB,SAAS,CAAC,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,8BAA8B;IAC7C,SAAS,EAAE,OAAO,CAAC;IACnB,cAAc,EAAE,MAAM,CAAC;IACvB,oBAAoB,EAAE,MAAM,CAAC;IAC7B,iBAAiB,EAAE,MAAM,CAAC;IAC1B,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,sBAAsB,EAAE,MAAM,EAAE,CAAC;IACjC,yBAAyB,EAAE,MAAM,EAAE,CAAC;IACpC,uBAAuB,EAAE,MAAM,CAAC;CACjC;AAED,UAAU,gBAAgB;IACxB,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACnC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IAEtC,eAAe,EAAE,eAAe,CAAC;IACjC,UAAU,EAAE,SAAS,GAAG,KAAK,GAAG,GAAG,CAAC;IACpC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,oBAAoB,EAAE,MAAM,IAAI,CAAC;CAClC;AAKD,wBAAgB,gBAAgB,CAAC,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,EAAE,sBAAsB,GAAG,gBAAgB,CA8G1G;AAYD;;GAEG;AACH,wBAAgB,2BAA2B,CACzC,SAAS,EAAE,aAAa,CAAC,kBAAkB,CAAC,OAAO,CAAC,EACpD,aAAa,EAAE,OAAO,EACtB,YAAY,EAAE,OAAO,GACpB,aAAa,CAAC,eAAe,CAAC,CA+BhC;AAED;;;GAGG;AACH,wBAAgB,4BAA4B,CAC1C,cAAc,EAAE,aAAa,CAAC,eAAe,CAAC,EAC9C,KAAK,EAAE,8BAA8B,GACpC,eAAe,CA6BjB"}
@@ -1 +1 @@
1
- {"version":3,"file":"use-top-navigation.js","sourceRoot":"","sources":["../../../src/top-navigation/use-top-navigation.ts"],"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, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\n\nimport { useContainerBreakpoints } from '../internal/hooks/container-queries';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport { TopNavigationProps } from './interfaces';\n\nimport styles from './styles.css.js';\n\nexport interface UseTopNavigationParams {\n identity: TopNavigationProps['identity'];\n search: TopNavigationProps['search'];\n utilities: NonNullable<TopNavigationProps['utilities']>;\n}\n\nexport interface ResponsiveState {\n hideUtilityText?: boolean;\n hideSearch?: boolean;\n hideUtilities?: number[];\n hideTitle?: boolean;\n}\n\nexport interface TopNavigationSizeConfiguration {\n hasSearch: boolean;\n availableWidth: number;\n utilitiesLeftPadding: number;\n fullIdentityWidth: number;\n titleWidth: number;\n searchSlotWidth: number;\n searchUtilityWidth: number;\n utilityWithLabelWidths: number[];\n utilityWithoutLabelWidths: number[];\n menuTriggerUtilityWidth: number;\n}\n\nexport interface UseTopNavigation {\n mainRef: React.Ref<HTMLDivElement>;\n virtualRef: React.Ref<HTMLDivElement>;\n\n responsiveState: ResponsiveState;\n breakpoint: 'default' | 'xxs' | 's';\n isSearchExpanded: boolean;\n onSearchUtilityClick: () => void;\n}\n\n// A small buffer to make calculations more lenient against browser lag or padding adjustments.\nconst RESPONSIVENESS_BUFFER = 20;\n\nexport function useTopNavigation({ identity, search, utilities }: UseTopNavigationParams): UseTopNavigation {\n // Refs and breakpoints\n const mainRef = useRef<HTMLElement | null>(null);\n const virtualRef = useRef<HTMLDivElement | null>(null);\n const [breakpoint, breakpointRef] = useContainerBreakpoints(['xxs', 's']);\n\n // Responsiveness state\n // The component works by calculating the possible resize states that it can\n // be in, and having a state variable to track which state we're currently in.\n const hasSearch = !!search;\n const hasTitleWithLogo = identity && !!identity.logo && !!identity.title;\n const responsiveStates = useMemo<ReadonlyArray<ResponsiveState>>(() => {\n return generateResponsiveStateKeys(utilities, hasSearch, hasTitleWithLogo);\n }, [utilities, hasSearch, hasTitleWithLogo]);\n\n // To hide/show elements dynamically, we need to know how much space they take up,\n // even if they're not being rendered. The top navigation elements are hidden/resized\n // based on the available size or if a search bar is open, and they need to be available\n // for calculations so we know where to toggle them. So we render a second, more stable\n // top-nav off screen to do these calculations against.\n //\n // We can't \"affix\" these values to pixels because they can depend on spacing tokens.\n // It's easier to render all of these utilities separately rather than figuring out\n // spacing token values, icon sizes, text widths, etc.\n const [responsiveState, setResponsiveState] = useState<ResponsiveState | undefined>();\n const recalculateFit = useCallback(() => {\n if (!mainRef?.current || !virtualRef.current) {\n setResponsiveState(responsiveStates[0]);\n return;\n }\n\n // Get available width from the visible top navigation.\n const availableWidth = getContentBoxWidth(mainRef.current.querySelector(`.${styles['padding-box']}`)!);\n if (availableWidth === 0) {\n // Likely in an SSR or Jest situation.\n setResponsiveState(responsiveStates[0]);\n return;\n }\n\n const sizeConfiguration = {\n hasSearch,\n availableWidth,\n\n // Get widths from the hidden top navigation\n fullIdentityWidth: virtualRef.current.querySelector(`.${styles.identity}`)!.getBoundingClientRect().width,\n titleWidth: virtualRef.current.querySelector(`.${styles.title}`)?.getBoundingClientRect().width ?? 0,\n searchSlotWidth: virtualRef.current.querySelector(`.${styles.search}`)?.getBoundingClientRect().width ?? 0,\n searchUtilityWidth: virtualRef.current.querySelector('[data-utility-special=\"search\"]')!.getBoundingClientRect()\n .width,\n utilitiesLeftPadding: parseFloat(\n getComputedStyle(virtualRef.current.querySelector(`.${styles.utilities}`)!).paddingLeft || '0px'\n ),\n utilityWithLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"false\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n utilityWithoutLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"true\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n menuTriggerUtilityWidth: virtualRef.current\n .querySelector('[data-utility-special=\"menu-trigger\"]')!\n .getBoundingClientRect().width,\n };\n setResponsiveState(determineBestResponsiveState(responsiveStates, sizeConfiguration));\n }, [responsiveStates, hasSearch]);\n\n const [, containerQueryRef] = useContainerQuery(() => {\n recalculateFit();\n }, [recalculateFit]);\n\n // Due to being rendered in a portal, the virtual navigation isn't rendered\n // at the same time as the main one.\n const onVirtualMount = useCallback(\n (element: HTMLDivElement | null) => {\n virtualRef.current = element;\n recalculateFit();\n },\n [recalculateFit]\n );\n\n // Search slot expansion on small screens\n const [isSearchMinimized, setSearchMinimized] = useState(true);\n const isSearchExpanded = !isSearchMinimized && hasSearch && responsiveState?.hideSearch;\n\n // If the search was expanded, and then the screen resized so that the\n // expansion is no longer necessary. So we implicitly minimize it.\n useEffect(() => {\n if (!responsiveState?.hideSearch) {\n setSearchMinimized(true);\n }\n }, [responsiveState]);\n\n // If the search is expanded after clicking on the search utility, move\n // the focus to the input. Since this is a user-controlled slot, we're just\n // assuming that it contains an input, though it's a pretty safe guess.\n useEffect(() => {\n if (isSearchExpanded) {\n mainRef?.current?.querySelector<HTMLInputElement>(`.${styles.search} input`)?.focus();\n }\n }, [isSearchExpanded, mainRef]);\n\n const mergedMainRef = useMergeRefs(mainRef, containerQueryRef, breakpointRef);\n\n return {\n mainRef: mergedMainRef,\n virtualRef: onVirtualMount,\n responsiveState: responsiveState ?? responsiveStates[0],\n breakpoint: breakpoint ?? 'default',\n isSearchExpanded: !!isSearchExpanded,\n onSearchUtilityClick: () => setSearchMinimized(isSearchMinimized => !isSearchMinimized),\n };\n}\n\n/**\n * Get the width of the content box (assuming the element's box-sizing is border-box).\n */\nfunction getContentBoxWidth(element: Element): number {\n const style = getComputedStyle(element);\n return (\n parseFloat(style.width || '0px') - parseFloat(style.paddingLeft || '0px') - parseFloat(style.paddingRight || '0px')\n );\n}\n\n/**\n * Generates the series of responsive steps that can be performed on the header in order.\n */\nexport function generateResponsiveStateKeys(\n utilities: ReadonlyArray<TopNavigationProps.Utility>,\n canHideSearch: boolean,\n canHideTitle: boolean\n): ReadonlyArray<ResponsiveState> {\n const states: ResponsiveState[] = [{}];\n if (utilities.some(utility => utility.text)) {\n states.push({ hideUtilityText: true });\n }\n if (canHideSearch) {\n states.push({\n hideUtilityText: true,\n hideSearch: true,\n });\n }\n const hiddenUtilties = [];\n for (let i = 0; i < utilities.length; i++) {\n if (!utilities[i].disableUtilityCollapse) {\n hiddenUtilties.push(i);\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n });\n }\n }\n if (canHideTitle) {\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n hideTitle: true,\n });\n }\n return states;\n}\n\n/**\n * Determines the best responsive state configuration of the top navigation, based on the given list of possible responsive states\n * and the current sizes of all elements inside the navigation bar.\n */\nexport function determineBestResponsiveState(\n possibleStates: ReadonlyArray<ResponsiveState>,\n sizes: TopNavigationSizeConfiguration\n): ResponsiveState {\n const {\n hasSearch,\n availableWidth,\n utilitiesLeftPadding,\n fullIdentityWidth,\n titleWidth,\n searchSlotWidth,\n searchUtilityWidth,\n utilityWithLabelWidths,\n utilityWithoutLabelWidths,\n menuTriggerUtilityWidth,\n } = sizes;\n // Iterate through each state and calculate its expected required width.\n for (const state of possibleStates) {\n const searchWidth = hasSearch ? (state.hideSearch ? searchUtilityWidth : searchSlotWidth) : 0;\n const utilitiesWidth: number = (state.hideUtilityText ? utilityWithoutLabelWidths : utilityWithLabelWidths)\n .filter((_width, i) => !state.hideUtilities || state.hideUtilities.indexOf(i) === -1)\n .reduce((sum, width) => sum + width, 0);\n const menuTriggerWidth = state.hideUtilities ? menuTriggerUtilityWidth : 0;\n const identityWidth = state.hideTitle ? fullIdentityWidth - titleWidth : fullIdentityWidth;\n const expectedInnerWidth = identityWidth + searchWidth + utilitiesLeftPadding + utilitiesWidth + menuTriggerWidth;\n if (expectedInnerWidth <= availableWidth - RESPONSIVENESS_BUFFER) {\n return state;\n }\n }\n\n // If nothing matches, pick the smallest possible state.\n return possibleStates[possibleStates.length - 1];\n}\n"]}
1
+ {"version":3,"file":"use-top-navigation.js","sourceRoot":"","sources":["../../../src/top-navigation/use-top-navigation.ts"],"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, { useCallback, useEffect, useMemo, useRef, useState } from 'react';\n\nimport { useContainerQuery } from '@cloudscape-design/component-toolkit';\n\nimport { useContainerBreakpoints } from '../internal/hooks/container-queries';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport { TopNavigationProps } from './interfaces';\n\nimport styles from './styles.css.js';\n\ninterface UseTopNavigationParams {\n identity: TopNavigationProps['identity'];\n search: TopNavigationProps['search'];\n utilities: NonNullable<TopNavigationProps['utilities']>;\n}\n\ninterface ResponsiveState {\n hideUtilityText?: boolean;\n hideSearch?: boolean;\n hideUtilities?: number[];\n hideTitle?: boolean;\n}\n\nexport interface TopNavigationSizeConfiguration {\n hasSearch: boolean;\n availableWidth: number;\n utilitiesLeftPadding: number;\n fullIdentityWidth: number;\n titleWidth: number;\n searchSlotWidth: number;\n searchUtilityWidth: number;\n utilityWithLabelWidths: number[];\n utilityWithoutLabelWidths: number[];\n menuTriggerUtilityWidth: number;\n}\n\ninterface UseTopNavigation {\n mainRef: React.Ref<HTMLDivElement>;\n virtualRef: React.Ref<HTMLDivElement>;\n\n responsiveState: ResponsiveState;\n breakpoint: 'default' | 'xxs' | 's';\n isSearchExpanded: boolean;\n onSearchUtilityClick: () => void;\n}\n\n// A small buffer to make calculations more lenient against browser lag or padding adjustments.\nconst RESPONSIVENESS_BUFFER = 20;\n\nexport function useTopNavigation({ identity, search, utilities }: UseTopNavigationParams): UseTopNavigation {\n // Refs and breakpoints\n const mainRef = useRef<HTMLElement | null>(null);\n const virtualRef = useRef<HTMLDivElement | null>(null);\n const [breakpoint, breakpointRef] = useContainerBreakpoints(['xxs', 's']);\n\n // Responsiveness state\n // The component works by calculating the possible resize states that it can\n // be in, and having a state variable to track which state we're currently in.\n const hasSearch = !!search;\n const hasTitleWithLogo = identity && !!identity.logo && !!identity.title;\n const responsiveStates = useMemo<ReadonlyArray<ResponsiveState>>(() => {\n return generateResponsiveStateKeys(utilities, hasSearch, hasTitleWithLogo);\n }, [utilities, hasSearch, hasTitleWithLogo]);\n\n // To hide/show elements dynamically, we need to know how much space they take up,\n // even if they're not being rendered. The top navigation elements are hidden/resized\n // based on the available size or if a search bar is open, and they need to be available\n // for calculations so we know where to toggle them. So we render a second, more stable\n // top-nav off screen to do these calculations against.\n //\n // We can't \"affix\" these values to pixels because they can depend on spacing tokens.\n // It's easier to render all of these utilities separately rather than figuring out\n // spacing token values, icon sizes, text widths, etc.\n const [responsiveState, setResponsiveState] = useState<ResponsiveState | undefined>();\n const recalculateFit = useCallback(() => {\n if (!mainRef?.current || !virtualRef.current) {\n setResponsiveState(responsiveStates[0]);\n return;\n }\n\n // Get available width from the visible top navigation.\n const availableWidth = getContentBoxWidth(mainRef.current.querySelector(`.${styles['padding-box']}`)!);\n if (availableWidth === 0) {\n // Likely in an SSR or Jest situation.\n setResponsiveState(responsiveStates[0]);\n return;\n }\n\n const sizeConfiguration = {\n hasSearch,\n availableWidth,\n\n // Get widths from the hidden top navigation\n fullIdentityWidth: virtualRef.current.querySelector(`.${styles.identity}`)!.getBoundingClientRect().width,\n titleWidth: virtualRef.current.querySelector(`.${styles.title}`)?.getBoundingClientRect().width ?? 0,\n searchSlotWidth: virtualRef.current.querySelector(`.${styles.search}`)?.getBoundingClientRect().width ?? 0,\n searchUtilityWidth: virtualRef.current.querySelector('[data-utility-special=\"search\"]')!.getBoundingClientRect()\n .width,\n utilitiesLeftPadding: parseFloat(\n getComputedStyle(virtualRef.current.querySelector(`.${styles.utilities}`)!).paddingLeft || '0px'\n ),\n utilityWithLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"false\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n utilityWithoutLabelWidths: Array.prototype.slice\n .call(virtualRef.current.querySelectorAll(`[data-utility-hide=\"true\"]`))\n .map((element: Element) => element.getBoundingClientRect().width),\n menuTriggerUtilityWidth: virtualRef.current\n .querySelector('[data-utility-special=\"menu-trigger\"]')!\n .getBoundingClientRect().width,\n };\n setResponsiveState(determineBestResponsiveState(responsiveStates, sizeConfiguration));\n }, [responsiveStates, hasSearch]);\n\n const [, containerQueryRef] = useContainerQuery(() => {\n recalculateFit();\n }, [recalculateFit]);\n\n // Due to being rendered in a portal, the virtual navigation isn't rendered\n // at the same time as the main one.\n const onVirtualMount = useCallback(\n (element: HTMLDivElement | null) => {\n virtualRef.current = element;\n recalculateFit();\n },\n [recalculateFit]\n );\n\n // Search slot expansion on small screens\n const [isSearchMinimized, setSearchMinimized] = useState(true);\n const isSearchExpanded = !isSearchMinimized && hasSearch && responsiveState?.hideSearch;\n\n // If the search was expanded, and then the screen resized so that the\n // expansion is no longer necessary. So we implicitly minimize it.\n useEffect(() => {\n if (!responsiveState?.hideSearch) {\n setSearchMinimized(true);\n }\n }, [responsiveState]);\n\n // If the search is expanded after clicking on the search utility, move\n // the focus to the input. Since this is a user-controlled slot, we're just\n // assuming that it contains an input, though it's a pretty safe guess.\n useEffect(() => {\n if (isSearchExpanded) {\n mainRef?.current?.querySelector<HTMLInputElement>(`.${styles.search} input`)?.focus();\n }\n }, [isSearchExpanded, mainRef]);\n\n const mergedMainRef = useMergeRefs(mainRef, containerQueryRef, breakpointRef);\n\n return {\n mainRef: mergedMainRef,\n virtualRef: onVirtualMount,\n responsiveState: responsiveState ?? responsiveStates[0],\n breakpoint: breakpoint ?? 'default',\n isSearchExpanded: !!isSearchExpanded,\n onSearchUtilityClick: () => setSearchMinimized(isSearchMinimized => !isSearchMinimized),\n };\n}\n\n/**\n * Get the width of the content box (assuming the element's box-sizing is border-box).\n */\nfunction getContentBoxWidth(element: Element): number {\n const style = getComputedStyle(element);\n return (\n parseFloat(style.width || '0px') - parseFloat(style.paddingLeft || '0px') - parseFloat(style.paddingRight || '0px')\n );\n}\n\n/**\n * Generates the series of responsive steps that can be performed on the header in order.\n */\nexport function generateResponsiveStateKeys(\n utilities: ReadonlyArray<TopNavigationProps.Utility>,\n canHideSearch: boolean,\n canHideTitle: boolean\n): ReadonlyArray<ResponsiveState> {\n const states: ResponsiveState[] = [{}];\n if (utilities.some(utility => utility.text)) {\n states.push({ hideUtilityText: true });\n }\n if (canHideSearch) {\n states.push({\n hideUtilityText: true,\n hideSearch: true,\n });\n }\n const hiddenUtilties = [];\n for (let i = 0; i < utilities.length; i++) {\n if (!utilities[i].disableUtilityCollapse) {\n hiddenUtilties.push(i);\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n });\n }\n }\n if (canHideTitle) {\n states.push({\n hideUtilityText: true,\n hideSearch: canHideSearch || undefined,\n hideUtilities: hiddenUtilties.length > 0 ? hiddenUtilties.slice() : undefined,\n hideTitle: true,\n });\n }\n return states;\n}\n\n/**\n * Determines the best responsive state configuration of the top navigation, based on the given list of possible responsive states\n * and the current sizes of all elements inside the navigation bar.\n */\nexport function determineBestResponsiveState(\n possibleStates: ReadonlyArray<ResponsiveState>,\n sizes: TopNavigationSizeConfiguration\n): ResponsiveState {\n const {\n hasSearch,\n availableWidth,\n utilitiesLeftPadding,\n fullIdentityWidth,\n titleWidth,\n searchSlotWidth,\n searchUtilityWidth,\n utilityWithLabelWidths,\n utilityWithoutLabelWidths,\n menuTriggerUtilityWidth,\n } = sizes;\n // Iterate through each state and calculate its expected required width.\n for (const state of possibleStates) {\n const searchWidth = hasSearch ? (state.hideSearch ? searchUtilityWidth : searchSlotWidth) : 0;\n const utilitiesWidth: number = (state.hideUtilityText ? utilityWithoutLabelWidths : utilityWithLabelWidths)\n .filter((_width, i) => !state.hideUtilities || state.hideUtilities.indexOf(i) === -1)\n .reduce((sum, width) => sum + width, 0);\n const menuTriggerWidth = state.hideUtilities ? menuTriggerUtilityWidth : 0;\n const identityWidth = state.hideTitle ? fullIdentityWidth - titleWidth : fullIdentityWidth;\n const expectedInnerWidth = identityWidth + searchWidth + utilitiesLeftPadding + utilitiesWidth + menuTriggerWidth;\n if (expectedInnerWidth <= availableWidth - RESPONSIVENESS_BUFFER) {\n return state;\n }\n }\n\n // If nothing matches, pick the smallest possible state.\n return possibleStates[possibleStates.length - 1];\n}\n"]}
@@ -1,25 +1,25 @@
1
1
 
2
2
  import './styles.scoped.css';
3
3
  export default {
4
- "tutorial-list": "awsui_tutorial-list_1u70p_uow6c_177",
5
- "tutorial-title": "awsui_tutorial-title_1u70p_uow6c_216",
6
- "task": "awsui_task_1u70p_uow6c_223",
7
- "task-title": "awsui_task-title_1u70p_uow6c_231",
8
- "task-title--status": "awsui_task-title--status_1u70p_uow6c_239",
9
- "current-task": "awsui_current-task_1u70p_uow6c_243",
10
- "successful-task": "awsui_successful-task_1u70p_uow6c_247",
11
- "congratulation-message": "awsui_congratulation-message_1u70p_uow6c_251",
12
- "congratulation-message--status": "awsui_congratulation-message--status_1u70p_uow6c_259",
13
- "plaintext-congratulation-description": "awsui_plaintext-congratulation-description_1u70p_uow6c_264",
14
- "divider": "awsui_divider_1u70p_uow6c_268",
15
- "step-list": "awsui_step-list_1u70p_uow6c_272",
16
- "step": "awsui_step_1u70p_uow6c_272",
17
- "expandable-section-wrapper": "awsui_expandable-section-wrapper_1u70p_uow6c_283",
18
- "expandable-section-header": "awsui_expandable-section-header_1u70p_uow6c_287",
19
- "step-title": "awsui_step-title_1u70p_uow6c_292",
20
- "feedback-link": "awsui_feedback-link_1u70p_uow6c_293",
21
- "dismiss-button": "awsui_dismiss-button_1u70p_uow6c_294",
22
- "completion-screen-title": "awsui_completion-screen-title_1u70p_uow6c_295",
23
- "completion-screen-description": "awsui_completion-screen-description_1u70p_uow6c_296"
4
+ "tutorial-list": "awsui_tutorial-list_1u70p_udcdc_177",
5
+ "tutorial-title": "awsui_tutorial-title_1u70p_udcdc_213",
6
+ "task": "awsui_task_1u70p_udcdc_220",
7
+ "task-title": "awsui_task-title_1u70p_udcdc_228",
8
+ "task-title--status": "awsui_task-title--status_1u70p_udcdc_236",
9
+ "current-task": "awsui_current-task_1u70p_udcdc_240",
10
+ "successful-task": "awsui_successful-task_1u70p_udcdc_244",
11
+ "congratulation-message": "awsui_congratulation-message_1u70p_udcdc_248",
12
+ "congratulation-message--status": "awsui_congratulation-message--status_1u70p_udcdc_256",
13
+ "plaintext-congratulation-description": "awsui_plaintext-congratulation-description_1u70p_udcdc_261",
14
+ "divider": "awsui_divider_1u70p_udcdc_265",
15
+ "step-list": "awsui_step-list_1u70p_udcdc_269",
16
+ "step": "awsui_step_1u70p_udcdc_269",
17
+ "expandable-section-wrapper": "awsui_expandable-section-wrapper_1u70p_udcdc_280",
18
+ "expandable-section-header": "awsui_expandable-section-header_1u70p_udcdc_284",
19
+ "step-title": "awsui_step-title_1u70p_udcdc_289",
20
+ "feedback-link": "awsui_feedback-link_1u70p_udcdc_290",
21
+ "dismiss-button": "awsui_dismiss-button_1u70p_udcdc_291",
22
+ "completion-screen-title": "awsui_completion-screen-title_1u70p_udcdc_292",
23
+ "completion-screen-description": "awsui_completion-screen-description_1u70p_udcdc_293"
24
24
  };
25
25
 
@@ -174,7 +174,7 @@
174
174
  */
175
175
  /* Style used for links in slots/components that are text heavy, to help links stand out among
176
176
  surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F73#description */
177
- .awsui_tutorial-list_1u70p_uow6c_177:not(#\9) {
177
+ .awsui_tutorial-list_1u70p_udcdc_177:not(#\9) {
178
178
  border-collapse: separate;
179
179
  border-spacing: 0;
180
180
  box-sizing: border-box;
@@ -183,12 +183,9 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
183
183
  direction: inherit;
184
184
  empty-cells: show;
185
185
  font-family: serif;
186
- font-size: medium;
187
186
  font-style: normal;
188
187
  font-variant: normal;
189
- font-weight: 400;
190
188
  font-stretch: normal;
191
- line-height: normal;
192
189
  -webkit-hyphens: none;
193
190
  hyphens: none;
194
191
  letter-spacing: normal;
@@ -214,22 +211,22 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
214
211
  margin-inline: 0;
215
212
  }
216
213
 
217
- .awsui_tutorial-title_1u70p_uow6c_216:not(#\9) {
214
+ .awsui_tutorial-title_1u70p_udcdc_213:not(#\9) {
218
215
  display: flex;
219
216
  align-items: flex-start;
220
217
  margin-inline-start: calc(-1 * var(--space-xxs-p8yyaw, 4px));
221
218
  padding-block-end: var(--space-xxxs-zbmxqb, 2px);
222
219
  }
223
220
 
224
- .awsui_task_1u70p_uow6c_223:not(#\9) {
221
+ .awsui_task_1u70p_udcdc_220:not(#\9) {
225
222
  list-style: none;
226
223
  padding-block-start: 0;
227
224
  }
228
- .awsui_task_1u70p_uow6c_223:not(#\9):not(:first-child) {
225
+ .awsui_task_1u70p_udcdc_220:not(#\9):not(:first-child) {
229
226
  margin-block-start: var(--space-xl-lmui9r, 24px);
230
227
  }
231
228
 
232
- .awsui_task-title_1u70p_uow6c_231:not(#\9) {
229
+ .awsui_task-title_1u70p_udcdc_228:not(#\9) {
233
230
  display: flex;
234
231
  align-items: flex-start;
235
232
  padding-inline-start: var(--border-divider-section-width-1061zr, 1px);
@@ -237,19 +234,19 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
237
234
  line-height: var(--line-height-heading-s-4i6ewn, 20px);
238
235
  letter-spacing: var(--letter-spacing-heading-s-jr3mor, -0.005em);
239
236
  }
240
- .awsui_task-title--status_1u70p_uow6c_239:not(#\9) {
237
+ .awsui_task-title--status_1u70p_udcdc_236:not(#\9) {
241
238
  line-height: inherit;
242
239
  }
243
240
 
244
- .awsui_current-task_1u70p_uow6c_243:not(#\9) {
241
+ .awsui_current-task_1u70p_udcdc_240:not(#\9) {
245
242
  font-weight: 700;
246
243
  }
247
244
 
248
- .awsui_successful-task_1u70p_uow6c_247:not(#\9) {
245
+ .awsui_successful-task_1u70p_udcdc_244:not(#\9) {
249
246
  color: var(--color-text-status-success-gqp5xk, #00802f);
250
247
  }
251
248
 
252
- .awsui_congratulation-message_1u70p_uow6c_251:not(#\9) {
249
+ .awsui_congratulation-message_1u70p_udcdc_248:not(#\9) {
253
250
  display: flex;
254
251
  font-size: var(--font-size-heading-s-yykzif, 16px);
255
252
  line-height: var(--line-height-heading-s-4i6ewn, 20px);
@@ -257,43 +254,43 @@ surrounding text. (WCAG F73) https://www.w3.org/WAI/WCAG21/Techniques/failures/F
257
254
  font-weight: var(--font-weight-heading-xs-l7rqme, 700);
258
255
  color: var(--color-text-status-success-gqp5xk, #00802f);
259
256
  }
260
- .awsui_congratulation-message--status_1u70p_uow6c_259:not(#\9) {
257
+ .awsui_congratulation-message--status_1u70p_udcdc_256:not(#\9) {
261
258
  line-height: inherit;
262
259
  flex-shrink: 0;
263
260
  }
264
261
 
265
- .awsui_plaintext-congratulation-description_1u70p_uow6c_264:not(#\9) {
262
+ .awsui_plaintext-congratulation-description_1u70p_udcdc_261:not(#\9) {
266
263
  white-space: pre-line;
267
264
  }
268
265
 
269
- .awsui_divider_1u70p_uow6c_268:not(#\9) {
266
+ .awsui_divider_1u70p_udcdc_265:not(#\9) {
270
267
  border-block-end: var(--border-divider-section-width-1061zr, 1px) solid var(--color-border-divider-default-cx07f2, #c6c6cd);
271
268
  }
272
269
 
273
- .awsui_step-list_1u70p_uow6c_272:not(#\9) {
270
+ .awsui_step-list_1u70p_udcdc_269:not(#\9) {
274
271
  list-style: none;
275
272
  padding-block: 0;
276
273
  padding-inline-start: var(--space-xxxs-zbmxqb, 2px);
277
274
  padding-inline-end: 0;
278
275
  }
279
276
 
280
- .awsui_step_1u70p_uow6c_272:not(#\9):not(:first-child) {
277
+ .awsui_step_1u70p_udcdc_269:not(#\9):not(:first-child) {
281
278
  padding-block-start: var(--space-xxs-p8yyaw, 4px);
282
279
  }
283
280
 
284
- .awsui_expandable-section-wrapper_1u70p_uow6c_283:not(#\9) {
281
+ .awsui_expandable-section-wrapper_1u70p_udcdc_280:not(#\9) {
285
282
  inline-size: 100%;
286
283
  }
287
284
 
288
- .awsui_expandable-section-header_1u70p_uow6c_287:not(#\9) {
285
+ .awsui_expandable-section-header_1u70p_udcdc_284:not(#\9) {
289
286
  font-size: var(--font-size-body-m-x4okxb, 14px);
290
287
  line-height: var(--line-height-body-m-30ar75, 20px);
291
288
  }
292
289
 
293
- .awsui_step-title_1u70p_uow6c_292:not(#\9),
294
- .awsui_feedback-link_1u70p_uow6c_293:not(#\9),
295
- .awsui_dismiss-button_1u70p_uow6c_294:not(#\9),
296
- .awsui_completion-screen-title_1u70p_uow6c_295:not(#\9),
297
- .awsui_completion-screen-description_1u70p_uow6c_296:not(#\9) {
290
+ .awsui_step-title_1u70p_udcdc_289:not(#\9),
291
+ .awsui_feedback-link_1u70p_udcdc_290:not(#\9),
292
+ .awsui_dismiss-button_1u70p_udcdc_291:not(#\9),
293
+ .awsui_completion-screen-title_1u70p_udcdc_292:not(#\9),
294
+ .awsui_completion-screen-description_1u70p_udcdc_293:not(#\9) {
298
295
  /* used in test-utils */
299
296
  }
@@ -2,25 +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
- "tutorial-list": "awsui_tutorial-list_1u70p_uow6c_177",
6
- "tutorial-title": "awsui_tutorial-title_1u70p_uow6c_216",
7
- "task": "awsui_task_1u70p_uow6c_223",
8
- "task-title": "awsui_task-title_1u70p_uow6c_231",
9
- "task-title--status": "awsui_task-title--status_1u70p_uow6c_239",
10
- "current-task": "awsui_current-task_1u70p_uow6c_243",
11
- "successful-task": "awsui_successful-task_1u70p_uow6c_247",
12
- "congratulation-message": "awsui_congratulation-message_1u70p_uow6c_251",
13
- "congratulation-message--status": "awsui_congratulation-message--status_1u70p_uow6c_259",
14
- "plaintext-congratulation-description": "awsui_plaintext-congratulation-description_1u70p_uow6c_264",
15
- "divider": "awsui_divider_1u70p_uow6c_268",
16
- "step-list": "awsui_step-list_1u70p_uow6c_272",
17
- "step": "awsui_step_1u70p_uow6c_272",
18
- "expandable-section-wrapper": "awsui_expandable-section-wrapper_1u70p_uow6c_283",
19
- "expandable-section-header": "awsui_expandable-section-header_1u70p_uow6c_287",
20
- "step-title": "awsui_step-title_1u70p_uow6c_292",
21
- "feedback-link": "awsui_feedback-link_1u70p_uow6c_293",
22
- "dismiss-button": "awsui_dismiss-button_1u70p_uow6c_294",
23
- "completion-screen-title": "awsui_completion-screen-title_1u70p_uow6c_295",
24
- "completion-screen-description": "awsui_completion-screen-description_1u70p_uow6c_296"
5
+ "tutorial-list": "awsui_tutorial-list_1u70p_udcdc_177",
6
+ "tutorial-title": "awsui_tutorial-title_1u70p_udcdc_213",
7
+ "task": "awsui_task_1u70p_udcdc_220",
8
+ "task-title": "awsui_task-title_1u70p_udcdc_228",
9
+ "task-title--status": "awsui_task-title--status_1u70p_udcdc_236",
10
+ "current-task": "awsui_current-task_1u70p_udcdc_240",
11
+ "successful-task": "awsui_successful-task_1u70p_udcdc_244",
12
+ "congratulation-message": "awsui_congratulation-message_1u70p_udcdc_248",
13
+ "congratulation-message--status": "awsui_congratulation-message--status_1u70p_udcdc_256",
14
+ "plaintext-congratulation-description": "awsui_plaintext-congratulation-description_1u70p_udcdc_261",
15
+ "divider": "awsui_divider_1u70p_udcdc_265",
16
+ "step-list": "awsui_step-list_1u70p_udcdc_269",
17
+ "step": "awsui_step_1u70p_udcdc_269",
18
+ "expandable-section-wrapper": "awsui_expandable-section-wrapper_1u70p_udcdc_280",
19
+ "expandable-section-header": "awsui_expandable-section-header_1u70p_udcdc_284",
20
+ "step-title": "awsui_step-title_1u70p_udcdc_289",
21
+ "feedback-link": "awsui_feedback-link_1u70p_udcdc_290",
22
+ "dismiss-button": "awsui_dismiss-button_1u70p_udcdc_291",
23
+ "completion-screen-title": "awsui_completion-screen-title_1u70p_udcdc_292",
24
+ "completion-screen-description": "awsui_completion-screen-description_1u70p_udcdc_293"
25
25
  };
26
26
 
@@ -1,11 +1,12 @@
1
1
  /// <reference types="react" />
2
2
  import { HotspotContext } from '../../../annotation-context/context';
3
3
  import { TutorialPanelProps } from '../../interfaces';
4
- export interface TaskListProps {
4
+ interface TaskListProps {
5
5
  tasks: ReadonlyArray<TutorialPanelProps.Task>;
6
6
  onExitTutorial: () => void;
7
7
  currentGlobalStepIndex: HotspotContext['currentStepIndex'];
8
8
  i18nStrings: TutorialPanelProps['i18nStrings'];
9
9
  }
10
10
  export declare function TaskList({ tasks, onExitTutorial, currentGlobalStepIndex, i18nStrings }: TaskListProps): JSX.Element;
11
+ export {};
11
12
  //# sourceMappingURL=task-list.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"task-list.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/task-list.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAKrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAKtD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC9C,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,sBAAsB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAC3D,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,WAAW,EAAE,EAAE,aAAa,eAmCrG"}
1
+ {"version":3,"file":"task-list.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/task-list.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAKrE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAKtD,UAAU,aAAa;IACrB,KAAK,EAAE,aAAa,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IAC9C,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,sBAAsB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;IAC3D,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,wBAAgB,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,WAAW,EAAE,EAAE,aAAa,eAmCrG"}
@@ -1 +1 @@
1
- {"version":3,"file":"task-list.js","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/task-list.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGhE,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AASrC,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,WAAW,EAAiB;IACpG,MAAM,gBAAgB,GAAG,WAAW,CAAC,KAAK,EAAE,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAEjF,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,SAAiB,EAAE,EAAE;QACvD,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,iCAAM,SAAS,KAAE,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,IAAG,CAAC,CAAC;IACxF,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,yFAAyF;IACzF,SAAS,CAAC,GAAG,EAAE;QACb,gBAAgB,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,OAAO,CACL,oBAAC,oBAAoB,IAAC,IAAI,EAAC,KAAK;QAC9B,4BAAI,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,IACnC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;;YAAC,OAAA,CAC1B,oBAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,KAAK,EACV,SAAS,EAAE,KAAK,EAChB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,MAAA,aAAa,CAAC,KAAK,CAAC,mCAAI,KAAK,EACvC,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,WAAW,GACxB,CACH,CAAA;SAAA,CAAC,CACC;QACL,oBAAC,WAAW,IAAC,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;YAClC,oBAAC,cAAc,IAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAC,MAAM,EAAC,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC,IAC3F,WAAW,CAAC,yBAAyB,CACvB,CACL,CACO,CACxB,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useCallback, useEffect, useState } from 'react';\n\nimport { HotspotContext } from '../../../annotation-context/context';\nimport { getStepInfo } from '../../../annotation-context/utils';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { TutorialPanelProps } from '../../interfaces';\nimport { Task } from './task';\n\nimport styles from './styles.css.js';\n\nexport interface TaskListProps {\n tasks: ReadonlyArray<TutorialPanelProps.Task>;\n onExitTutorial: () => void;\n currentGlobalStepIndex: HotspotContext['currentStepIndex'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}\n\nexport function TaskList({ tasks, onExitTutorial, currentGlobalStepIndex, i18nStrings }: TaskListProps) {\n const currentTaskIndex = getStepInfo(tasks, currentGlobalStepIndex ?? 0).taskIndex;\n const [expandedTasks, setExpandedTasks] = useState({ [currentTaskIndex]: true });\n\n const onToggleExpand = useCallback((stepIndex: number) => {\n setExpandedTasks(prevTasks => ({ ...prevTasks, [stepIndex]: !prevTasks[stepIndex] }));\n }, []);\n\n // When the user progresses to a different task, all tasks except this one are collapsed.\n useEffect(() => {\n setExpandedTasks({ [currentTaskIndex]: true });\n }, [currentTaskIndex]);\n\n return (\n <InternalSpaceBetween size=\"xxl\">\n <ol className={styles['tutorial-list']}>\n {tasks.map((task, index) => (\n <Task\n task={task}\n key={index}\n taskIndex={index}\n currentTaskIndex={currentTaskIndex}\n expanded={expandedTasks[index] ?? false}\n onToggleExpand={onToggleExpand}\n i18nStrings={i18nStrings}\n />\n ))}\n </ol>\n <InternalBox margin={{ top: 'xxxs' }}>\n <InternalButton onClick={onExitTutorial} formAction=\"none\" className={styles['dismiss-button']}>\n {i18nStrings.dismissTutorialButtonText}\n </InternalButton>\n </InternalBox>\n </InternalSpaceBetween>\n );\n}\n"]}
1
+ {"version":3,"file":"task-list.js","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/task-list.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,SAAS,EAAE,QAAQ,EAAE,MAAM,OAAO,CAAC;AAGhE,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAChE,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAE9B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AASrC,MAAM,UAAU,QAAQ,CAAC,EAAE,KAAK,EAAE,cAAc,EAAE,sBAAsB,EAAE,WAAW,EAAiB;IACpG,MAAM,gBAAgB,GAAG,WAAW,CAAC,KAAK,EAAE,sBAAsB,aAAtB,sBAAsB,cAAtB,sBAAsB,GAAI,CAAC,CAAC,CAAC,SAAS,CAAC;IACnF,MAAM,CAAC,aAAa,EAAE,gBAAgB,CAAC,GAAG,QAAQ,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IAEjF,MAAM,cAAc,GAAG,WAAW,CAAC,CAAC,SAAiB,EAAE,EAAE;QACvD,gBAAgB,CAAC,SAAS,CAAC,EAAE,CAAC,iCAAM,SAAS,KAAE,CAAC,SAAS,CAAC,EAAE,CAAC,SAAS,CAAC,SAAS,CAAC,IAAG,CAAC,CAAC;IACxF,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,yFAAyF;IACzF,SAAS,CAAC,GAAG,EAAE;QACb,gBAAgB,CAAC,EAAE,CAAC,gBAAgB,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;IACjD,CAAC,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,OAAO,CACL,oBAAC,oBAAoB,IAAC,IAAI,EAAC,KAAK;QAC9B,4BAAI,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,IACnC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;;YAAC,OAAA,CAC1B,oBAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,GAAG,EAAE,KAAK,EACV,SAAS,EAAE,KAAK,EAChB,gBAAgB,EAAE,gBAAgB,EAClC,QAAQ,EAAE,MAAA,aAAa,CAAC,KAAK,CAAC,mCAAI,KAAK,EACvC,cAAc,EAAE,cAAc,EAC9B,WAAW,EAAE,WAAW,GACxB,CACH,CAAA;SAAA,CAAC,CACC;QACL,oBAAC,WAAW,IAAC,MAAM,EAAE,EAAE,GAAG,EAAE,MAAM,EAAE;YAClC,oBAAC,cAAc,IAAC,OAAO,EAAE,cAAc,EAAE,UAAU,EAAC,MAAM,EAAC,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC,IAC3F,WAAW,CAAC,yBAAyB,CACvB,CACL,CACO,CACxB,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useCallback, useEffect, useState } from 'react';\n\nimport { HotspotContext } from '../../../annotation-context/context';\nimport { getStepInfo } from '../../../annotation-context/utils';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { TutorialPanelProps } from '../../interfaces';\nimport { Task } from './task';\n\nimport styles from './styles.css.js';\n\ninterface TaskListProps {\n tasks: ReadonlyArray<TutorialPanelProps.Task>;\n onExitTutorial: () => void;\n currentGlobalStepIndex: HotspotContext['currentStepIndex'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}\n\nexport function TaskList({ tasks, onExitTutorial, currentGlobalStepIndex, i18nStrings }: TaskListProps) {\n const currentTaskIndex = getStepInfo(tasks, currentGlobalStepIndex ?? 0).taskIndex;\n const [expandedTasks, setExpandedTasks] = useState({ [currentTaskIndex]: true });\n\n const onToggleExpand = useCallback((stepIndex: number) => {\n setExpandedTasks(prevTasks => ({ ...prevTasks, [stepIndex]: !prevTasks[stepIndex] }));\n }, []);\n\n // When the user progresses to a different task, all tasks except this one are collapsed.\n useEffect(() => {\n setExpandedTasks({ [currentTaskIndex]: true });\n }, [currentTaskIndex]);\n\n return (\n <InternalSpaceBetween size=\"xxl\">\n <ol className={styles['tutorial-list']}>\n {tasks.map((task, index) => (\n <Task\n task={task}\n key={index}\n taskIndex={index}\n currentTaskIndex={currentTaskIndex}\n expanded={expandedTasks[index] ?? false}\n onToggleExpand={onToggleExpand}\n i18nStrings={i18nStrings}\n />\n ))}\n </ol>\n <InternalBox margin={{ top: 'xxxs' }}>\n <InternalButton onClick={onExitTutorial} formAction=\"none\" className={styles['dismiss-button']}>\n {i18nStrings.dismissTutorialButtonText}\n </InternalButton>\n </InternalBox>\n </InternalSpaceBetween>\n );\n}\n"]}
@@ -1,7 +1,7 @@
1
1
  /// <reference types="react" />
2
2
  import { HotspotContext } from '../../../annotation-context/context.js';
3
3
  import { TutorialPanelProps } from '../../interfaces';
4
- export interface TutorialListProps {
4
+ interface TutorialListProps {
5
5
  loading?: boolean;
6
6
  tutorials: TutorialPanelProps['tutorials'];
7
7
  onStartTutorial: HotspotContext['onStartTutorial'];
@@ -9,4 +9,5 @@ export interface TutorialListProps {
9
9
  downloadUrl: TutorialPanelProps['downloadUrl'];
10
10
  }
11
11
  export default function TutorialList({ i18nStrings, tutorials, loading, onStartTutorial, downloadUrl, }: TutorialListProps): JSX.Element;
12
+ export {};
12
13
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-list/index.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAYxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAItD,MAAM,WAAW,iBAAiB;IAChC,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC3C,eAAe,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACnD,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,WAAW,EACX,SAAS,EACT,OAAe,EACf,eAAe,EACf,WAAW,GACZ,EAAE,iBAAiB,eA8CnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-list/index.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAYxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAItD,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,SAAS,EAAE,kBAAkB,CAAC,WAAW,CAAC,CAAC;IAC3C,eAAe,EAAE,cAAc,CAAC,iBAAiB,CAAC,CAAC;IACnD,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;IAC/C,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,MAAM,CAAC,OAAO,UAAU,YAAY,CAAC,EACnC,WAAW,EACX,SAAS,EACT,OAAe,EACf,eAAe,EACf,WAAW,GACZ,EAAE,iBAAiB,eA8CnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-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, { useCallback, useState } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport clsx from 'clsx';\n\nimport InternalAlert from '../../../alert/internal';\nimport { HotspotContext } from '../../../annotation-context/context.js';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalIcon from '../../../icon/internal';\nimport { fireNonCancelableEvent } from '../../../internal/events/index.js';\nimport { useUniqueId } from '../../../internal/hooks/use-unique-id/index.js';\nimport { useVisualRefresh } from '../../../internal/hooks/use-visual-mode';\nimport { checkSafeUrl } from '../../../internal/utils/check-safe-url';\nimport InternalLink from '../../../link/internal';\nimport InternalLiveRegion from '../../../live-region/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport { TutorialPanelProps } from '../../interfaces';\n\nimport styles from './styles.css.js';\n\nexport interface TutorialListProps {\n loading?: boolean;\n tutorials: TutorialPanelProps['tutorials'];\n onStartTutorial: HotspotContext['onStartTutorial'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n downloadUrl: TutorialPanelProps['downloadUrl'];\n}\n\nexport default function TutorialList({\n i18nStrings,\n tutorials,\n loading = false,\n onStartTutorial,\n downloadUrl,\n}: TutorialListProps) {\n checkSafeUrl('TutorialPanel', downloadUrl);\n\n const isRefresh = useVisualRefresh();\n\n return (\n <>\n <InternalSpaceBetween size=\"s\">\n <InternalSpaceBetween size=\"m\">\n <InternalBox variant=\"h2\" fontSize={isRefresh ? 'heading-m' : 'heading-l'} padding={{ bottom: 'n' }}>\n {i18nStrings.tutorialListTitle}\n </InternalBox>\n <InternalBox variant=\"p\" color=\"text-body-secondary\" padding=\"n\">\n {i18nStrings.tutorialListDescription}\n </InternalBox>\n </InternalSpaceBetween>\n <InternalSpaceBetween size=\"l\">\n {downloadUrl && (\n <a\n href={downloadUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={styles['download-link']}\n aria-label={i18nStrings.labelTutorialListDownloadLink}\n >\n <InternalIcon name=\"download\" />\n <InternalBox padding={{ left: 'xs' }} color=\"inherit\" fontWeight=\"bold\" display=\"inline\">\n {i18nStrings.tutorialListDownloadLinkText}\n </InternalBox>\n </a>\n )}\n {loading ? (\n <InternalStatusIndicator type=\"loading\">\n <InternalLiveRegion tagName=\"span\">{i18nStrings.loadingText}</InternalLiveRegion>\n </InternalStatusIndicator>\n ) : (\n <ul className={styles['tutorial-list']} role=\"list\">\n {tutorials.map((tutorial, index) => (\n <Tutorial tutorial={tutorial} key={index} onStartTutorial={onStartTutorial} i18nStrings={i18nStrings} />\n ))}\n </ul>\n )}\n </InternalSpaceBetween>\n </InternalSpaceBetween>\n </>\n );\n}\n\nfunction Tutorial({\n tutorial,\n onStartTutorial: onStartTutorialEventHandler,\n i18nStrings,\n}: {\n tutorial: TutorialPanelProps.Tutorial;\n onStartTutorial: HotspotContext['onStartTutorial'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}) {\n checkSafeUrl('TutorialPanel', tutorial.learnMoreUrl);\n const controlId = useUniqueId();\n const triggerControldId = useUniqueId();\n const headerId = useUniqueId();\n\n const isRefresh = useVisualRefresh();\n\n const onStartTutorial = useCallback(() => {\n fireNonCancelableEvent(onStartTutorialEventHandler, { tutorial });\n }, [onStartTutorialEventHandler, tutorial]);\n\n const [expanded, setExpanded] = useState(!tutorial.prerequisitesNeeded && !tutorial.completed);\n\n const onClick = useCallback(() => {\n setExpanded(expanded => !expanded);\n }, []);\n\n return (\n <li className={styles['tutorial-box']} role=\"listitem\">\n <InternalSpaceBetween size=\"xs\">\n <div className={styles['tutorial-box-title']}>\n <InternalBox\n variant=\"h3\"\n fontSize={isRefresh ? 'heading-s' : 'heading-m'}\n id={headerId}\n margin={{ right: 'xs' }}\n padding=\"n\"\n className={styles.title}\n >\n {tutorial.title}\n </InternalBox>\n <div className={styles['button-wrapper']}>\n <InternalButton\n id={triggerControldId}\n variant=\"icon\"\n ariaExpanded={expanded}\n __nativeAttributes={{\n 'aria-controls': controlId,\n 'aria-labelledby': headerId,\n }}\n formAction=\"none\"\n onClick={onClick}\n className={expanded ? styles['collapse-button'] : styles['expand-button']}\n iconName={expanded ? 'angle-up' : 'angle-down'}\n />\n </div>\n </div>\n\n {tutorial.completed ? (\n <InternalStatusIndicator __size=\"inherit\" type=\"success\" className={styles.completed} wrapText={true}>\n {i18nStrings.tutorialCompletedText}\n </InternalStatusIndicator>\n ) : null}\n </InternalSpaceBetween>\n\n <div aria-live=\"polite\">\n <CSSTransition in={expanded} timeout={30} classNames={{ enter: styles['content-enter'] }}>\n <div className={clsx(styles['expandable-section'], expanded && styles.expanded)} id={controlId}>\n <InternalSpaceBetween size=\"l\">\n <InternalSpaceBetween size=\"m\">\n {tutorial.prerequisitesNeeded && tutorial.prerequisitesAlert && (\n <InternalAlert type=\"info\" className={styles['prerequisites-alert']}>\n {tutorial.prerequisitesAlert}\n </InternalAlert>\n )}\n <InternalSpaceBetween size=\"s\">\n <InternalBox color=\"text-body-secondary\">\n <div\n className={clsx(\n styles['tutorial-description'],\n typeof tutorial.description === 'string' && styles['tutorial-description-plaintext']\n )}\n >\n {tutorial.description}\n </div>\n </InternalBox>\n {tutorial.learnMoreUrl && (\n <InternalLink\n href={tutorial.learnMoreUrl}\n className={styles['learn-more-link']}\n externalIconAriaLabel={i18nStrings.labelLearnMoreExternalIcon}\n ariaLabel={i18nStrings.labelLearnMoreLink}\n external={true}\n variant=\"primary\"\n >\n {i18nStrings.learnMoreLinkText}\n </InternalLink>\n )}\n </InternalSpaceBetween>\n </InternalSpaceBetween>\n\n <InternalBox margin={{ bottom: 'xxs' }}>\n <InternalButton\n onClick={onStartTutorial}\n disabled={tutorial.prerequisitesNeeded ?? false}\n formAction=\"none\"\n className={styles.start}\n >\n {tutorial.completed ? i18nStrings.restartTutorialButtonText : i18nStrings.startTutorialButtonText}\n </InternalButton>\n </InternalBox>\n </InternalSpaceBetween>\n </div>\n </CSSTransition>\n </div>\n </li>\n );\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-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, { useCallback, useState } from 'react';\nimport { CSSTransition } from 'react-transition-group';\nimport clsx from 'clsx';\n\nimport InternalAlert from '../../../alert/internal';\nimport { HotspotContext } from '../../../annotation-context/context.js';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalIcon from '../../../icon/internal';\nimport { fireNonCancelableEvent } from '../../../internal/events/index.js';\nimport { useUniqueId } from '../../../internal/hooks/use-unique-id/index.js';\nimport { useVisualRefresh } from '../../../internal/hooks/use-visual-mode';\nimport { checkSafeUrl } from '../../../internal/utils/check-safe-url';\nimport InternalLink from '../../../link/internal';\nimport InternalLiveRegion from '../../../live-region/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport { TutorialPanelProps } from '../../interfaces';\n\nimport styles from './styles.css.js';\n\ninterface TutorialListProps {\n loading?: boolean;\n tutorials: TutorialPanelProps['tutorials'];\n onStartTutorial: HotspotContext['onStartTutorial'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n downloadUrl: TutorialPanelProps['downloadUrl'];\n}\n\nexport default function TutorialList({\n i18nStrings,\n tutorials,\n loading = false,\n onStartTutorial,\n downloadUrl,\n}: TutorialListProps) {\n checkSafeUrl('TutorialPanel', downloadUrl);\n\n const isRefresh = useVisualRefresh();\n\n return (\n <>\n <InternalSpaceBetween size=\"s\">\n <InternalSpaceBetween size=\"m\">\n <InternalBox variant=\"h2\" fontSize={isRefresh ? 'heading-m' : 'heading-l'} padding={{ bottom: 'n' }}>\n {i18nStrings.tutorialListTitle}\n </InternalBox>\n <InternalBox variant=\"p\" color=\"text-body-secondary\" padding=\"n\">\n {i18nStrings.tutorialListDescription}\n </InternalBox>\n </InternalSpaceBetween>\n <InternalSpaceBetween size=\"l\">\n {downloadUrl && (\n <a\n href={downloadUrl}\n target=\"_blank\"\n rel=\"noopener noreferrer\"\n className={styles['download-link']}\n aria-label={i18nStrings.labelTutorialListDownloadLink}\n >\n <InternalIcon name=\"download\" />\n <InternalBox padding={{ left: 'xs' }} color=\"inherit\" fontWeight=\"bold\" display=\"inline\">\n {i18nStrings.tutorialListDownloadLinkText}\n </InternalBox>\n </a>\n )}\n {loading ? (\n <InternalStatusIndicator type=\"loading\">\n <InternalLiveRegion tagName=\"span\">{i18nStrings.loadingText}</InternalLiveRegion>\n </InternalStatusIndicator>\n ) : (\n <ul className={styles['tutorial-list']} role=\"list\">\n {tutorials.map((tutorial, index) => (\n <Tutorial tutorial={tutorial} key={index} onStartTutorial={onStartTutorial} i18nStrings={i18nStrings} />\n ))}\n </ul>\n )}\n </InternalSpaceBetween>\n </InternalSpaceBetween>\n </>\n );\n}\n\nfunction Tutorial({\n tutorial,\n onStartTutorial: onStartTutorialEventHandler,\n i18nStrings,\n}: {\n tutorial: TutorialPanelProps.Tutorial;\n onStartTutorial: HotspotContext['onStartTutorial'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}) {\n checkSafeUrl('TutorialPanel', tutorial.learnMoreUrl);\n const controlId = useUniqueId();\n const triggerControldId = useUniqueId();\n const headerId = useUniqueId();\n\n const isRefresh = useVisualRefresh();\n\n const onStartTutorial = useCallback(() => {\n fireNonCancelableEvent(onStartTutorialEventHandler, { tutorial });\n }, [onStartTutorialEventHandler, tutorial]);\n\n const [expanded, setExpanded] = useState(!tutorial.prerequisitesNeeded && !tutorial.completed);\n\n const onClick = useCallback(() => {\n setExpanded(expanded => !expanded);\n }, []);\n\n return (\n <li className={styles['tutorial-box']} role=\"listitem\">\n <InternalSpaceBetween size=\"xs\">\n <div className={styles['tutorial-box-title']}>\n <InternalBox\n variant=\"h3\"\n fontSize={isRefresh ? 'heading-s' : 'heading-m'}\n id={headerId}\n margin={{ right: 'xs' }}\n padding=\"n\"\n className={styles.title}\n >\n {tutorial.title}\n </InternalBox>\n <div className={styles['button-wrapper']}>\n <InternalButton\n id={triggerControldId}\n variant=\"icon\"\n ariaExpanded={expanded}\n __nativeAttributes={{\n 'aria-controls': controlId,\n 'aria-labelledby': headerId,\n }}\n formAction=\"none\"\n onClick={onClick}\n className={expanded ? styles['collapse-button'] : styles['expand-button']}\n iconName={expanded ? 'angle-up' : 'angle-down'}\n />\n </div>\n </div>\n\n {tutorial.completed ? (\n <InternalStatusIndicator __size=\"inherit\" type=\"success\" className={styles.completed} wrapText={true}>\n {i18nStrings.tutorialCompletedText}\n </InternalStatusIndicator>\n ) : null}\n </InternalSpaceBetween>\n\n <div aria-live=\"polite\">\n <CSSTransition in={expanded} timeout={30} classNames={{ enter: styles['content-enter'] }}>\n <div className={clsx(styles['expandable-section'], expanded && styles.expanded)} id={controlId}>\n <InternalSpaceBetween size=\"l\">\n <InternalSpaceBetween size=\"m\">\n {tutorial.prerequisitesNeeded && tutorial.prerequisitesAlert && (\n <InternalAlert type=\"info\" className={styles['prerequisites-alert']}>\n {tutorial.prerequisitesAlert}\n </InternalAlert>\n )}\n <InternalSpaceBetween size=\"s\">\n <InternalBox color=\"text-body-secondary\">\n <div\n className={clsx(\n styles['tutorial-description'],\n typeof tutorial.description === 'string' && styles['tutorial-description-plaintext']\n )}\n >\n {tutorial.description}\n </div>\n </InternalBox>\n {tutorial.learnMoreUrl && (\n <InternalLink\n href={tutorial.learnMoreUrl}\n className={styles['learn-more-link']}\n externalIconAriaLabel={i18nStrings.labelLearnMoreExternalIcon}\n ariaLabel={i18nStrings.labelLearnMoreLink}\n external={true}\n variant=\"primary\"\n >\n {i18nStrings.learnMoreLinkText}\n </InternalLink>\n )}\n </InternalSpaceBetween>\n </InternalSpaceBetween>\n\n <InternalBox margin={{ bottom: 'xxs' }}>\n <InternalButton\n onClick={onStartTutorial}\n disabled={tutorial.prerequisitesNeeded ?? false}\n formAction=\"none\"\n className={styles.start}\n >\n {tutorial.completed ? i18nStrings.restartTutorialButtonText : i18nStrings.startTutorialButtonText}\n </InternalButton>\n </InternalBox>\n </InternalSpaceBetween>\n </div>\n </CSSTransition>\n </div>\n </li>\n );\n}\n"]}