@cloudscape-design/components 3.0.237 → 3.0.239

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 (1264) hide show
  1. package/alert/index.d.ts.map +1 -1
  2. package/alert/index.js.map +1 -1
  3. package/alert/interfaces.d.ts.map +1 -1
  4. package/alert/interfaces.js.map +1 -1
  5. package/alert/internal.d.ts.map +1 -1
  6. package/alert/internal.js.map +1 -1
  7. package/annotation-context/annotation/annotation-icon.d.ts.map +1 -1
  8. package/annotation-context/annotation/annotation-icon.js.map +1 -1
  9. package/annotation-context/annotation/annotation-popover.d.ts.map +1 -1
  10. package/annotation-context/annotation/annotation-popover.js.map +1 -1
  11. package/annotation-context/annotation/annotation-trigger.d.ts.map +1 -1
  12. package/annotation-context/annotation/annotation-trigger.js.map +1 -1
  13. package/annotation-context/annotation/closed-annotation.d.ts.map +1 -1
  14. package/annotation-context/annotation/closed-annotation.js.map +1 -1
  15. package/annotation-context/annotation/open-annotation.d.ts.map +1 -1
  16. package/annotation-context/annotation/open-annotation.js.map +1 -1
  17. package/annotation-context/context.d.ts.map +1 -1
  18. package/annotation-context/context.js.map +1 -1
  19. package/annotation-context/index.d.ts.map +1 -1
  20. package/annotation-context/index.js.map +1 -1
  21. package/annotation-context/interfaces.d.ts.map +1 -1
  22. package/annotation-context/interfaces.js.map +1 -1
  23. package/annotation-context/utils.d.ts.map +1 -1
  24. package/annotation-context/utils.js.map +1 -1
  25. package/app-layout/content-wrapper/index.d.ts.map +1 -1
  26. package/app-layout/content-wrapper/index.js.map +1 -1
  27. package/app-layout/defaults.d.ts.map +1 -1
  28. package/app-layout/defaults.js.map +1 -1
  29. package/app-layout/drawer/index.d.ts.map +1 -1
  30. package/app-layout/drawer/index.js.map +1 -1
  31. package/app-layout/index.d.ts.map +1 -1
  32. package/app-layout/index.js.map +1 -1
  33. package/app-layout/interfaces.d.ts.map +1 -1
  34. package/app-layout/interfaces.js.map +1 -1
  35. package/app-layout/mobile-toolbar/index.d.ts.map +1 -1
  36. package/app-layout/mobile-toolbar/index.js.map +1 -1
  37. package/app-layout/notifications/index.d.ts.map +1 -1
  38. package/app-layout/notifications/index.js.map +1 -1
  39. package/app-layout/split-panel-drawer/index.d.ts.map +1 -1
  40. package/app-layout/split-panel-drawer/index.js.map +1 -1
  41. package/app-layout/toggles/index.d.ts.map +1 -1
  42. package/app-layout/toggles/index.js.map +1 -1
  43. package/app-layout/toggles/interfaces.d.ts.map +1 -1
  44. package/app-layout/toggles/interfaces.js.map +1 -1
  45. package/app-layout/utils/use-content-height.d.ts.map +1 -1
  46. package/app-layout/utils/use-content-height.js.map +1 -1
  47. package/app-layout/utils/use-content-width.d.ts.map +1 -1
  48. package/app-layout/utils/use-content-width.js.map +1 -1
  49. package/app-layout/utils/use-focus-control.d.ts.map +1 -1
  50. package/app-layout/utils/use-focus-control.js.map +1 -1
  51. package/app-layout/utils/use-observed-element.d.ts.map +1 -1
  52. package/app-layout/utils/use-observed-element.js.map +1 -1
  53. package/app-layout/utils/use-split-panel-focus-control.d.ts.map +1 -1
  54. package/app-layout/utils/use-split-panel-focus-control.js.map +1 -1
  55. package/app-layout/utils/use-window-width.d.ts.map +1 -1
  56. package/app-layout/utils/use-window-width.js.map +1 -1
  57. package/app-layout/visual-refresh/app-bar.d.ts.map +1 -1
  58. package/app-layout/visual-refresh/app-bar.js.map +1 -1
  59. package/app-layout/visual-refresh/background.d.ts.map +1 -1
  60. package/app-layout/visual-refresh/background.js.map +1 -1
  61. package/app-layout/visual-refresh/context.d.ts.map +1 -1
  62. package/app-layout/visual-refresh/context.js.map +1 -1
  63. package/app-layout/visual-refresh/header.d.ts.map +1 -1
  64. package/app-layout/visual-refresh/header.js.map +1 -1
  65. package/app-layout/visual-refresh/index.d.ts.map +1 -1
  66. package/app-layout/visual-refresh/index.js.map +1 -1
  67. package/app-layout/visual-refresh/layout.d.ts.map +1 -1
  68. package/app-layout/visual-refresh/layout.js.map +1 -1
  69. package/app-layout/visual-refresh/main.d.ts.map +1 -1
  70. package/app-layout/visual-refresh/main.js.map +1 -1
  71. package/app-layout/visual-refresh/navigation.d.ts.map +1 -1
  72. package/app-layout/visual-refresh/navigation.js.map +1 -1
  73. package/app-layout/visual-refresh/notifications.d.ts.map +1 -1
  74. package/app-layout/visual-refresh/notifications.js.map +1 -1
  75. package/app-layout/visual-refresh/split-panel.d.ts.map +1 -1
  76. package/app-layout/visual-refresh/split-panel.js.map +1 -1
  77. package/app-layout/visual-refresh/tools.d.ts.map +1 -1
  78. package/app-layout/visual-refresh/tools.js.map +1 -1
  79. package/app-layout/visual-refresh/trigger-button.d.ts.map +1 -1
  80. package/app-layout/visual-refresh/trigger-button.js.map +1 -1
  81. package/area-chart/chart-container.d.ts.map +1 -1
  82. package/area-chart/chart-container.js.map +1 -1
  83. package/area-chart/elements/area-chart-filter.d.ts.map +1 -1
  84. package/area-chart/elements/area-chart-filter.js.map +1 -1
  85. package/area-chart/elements/area-chart-legend.d.ts.map +1 -1
  86. package/area-chart/elements/area-chart-legend.js.map +1 -1
  87. package/area-chart/elements/area-series.d.ts.map +1 -1
  88. package/area-chart/elements/area-series.js.map +1 -1
  89. package/area-chart/elements/chart-popover.d.ts.map +1 -1
  90. package/area-chart/elements/chart-popover.js.map +1 -1
  91. package/area-chart/elements/data-series.d.ts.map +1 -1
  92. package/area-chart/elements/data-series.js.map +1 -1
  93. package/area-chart/elements/highlighted-point.d.ts.map +1 -1
  94. package/area-chart/elements/highlighted-point.js.map +1 -1
  95. package/area-chart/elements/threshold-series.d.ts.map +1 -1
  96. package/area-chart/elements/threshold-series.js.map +1 -1
  97. package/area-chart/elements/use-highlight-details.d.ts.map +1 -1
  98. package/area-chart/elements/use-highlight-details.js.map +1 -1
  99. package/area-chart/elements/vertical-marker.d.ts.map +1 -1
  100. package/area-chart/elements/vertical-marker.js.map +1 -1
  101. package/area-chart/index.d.ts.map +1 -1
  102. package/area-chart/index.js.map +1 -1
  103. package/area-chart/interfaces.d.ts.map +1 -1
  104. package/area-chart/interfaces.js.map +1 -1
  105. package/area-chart/internal.d.ts.map +1 -1
  106. package/area-chart/internal.js.map +1 -1
  107. package/area-chart/model/async-store.d.ts.map +1 -1
  108. package/area-chart/model/async-store.js.map +1 -1
  109. package/area-chart/model/compute-chart-props.d.ts.map +1 -1
  110. package/area-chart/model/compute-chart-props.js.map +1 -1
  111. package/area-chart/model/create-series-decorator.d.ts.map +1 -1
  112. package/area-chart/model/create-series-decorator.js.map +1 -1
  113. package/area-chart/model/index.d.ts.map +1 -1
  114. package/area-chart/model/index.js.map +1 -1
  115. package/area-chart/model/interactions-store.d.ts.map +1 -1
  116. package/area-chart/model/interactions-store.js.map +1 -1
  117. package/area-chart/model/use-chart-model.d.ts.map +1 -1
  118. package/area-chart/model/use-chart-model.js.map +1 -1
  119. package/area-chart/model/use-filter-props.d.ts.map +1 -1
  120. package/area-chart/model/use-filter-props.js.map +1 -1
  121. package/area-chart/model/use-highlight-props.d.ts.map +1 -1
  122. package/area-chart/model/use-highlight-props.js.map +1 -1
  123. package/area-chart/model/utils.d.ts.map +1 -1
  124. package/area-chart/model/utils.js.map +1 -1
  125. package/attribute-editor/additional-info.d.ts.map +1 -1
  126. package/attribute-editor/additional-info.js.map +1 -1
  127. package/attribute-editor/index.d.ts.map +1 -1
  128. package/attribute-editor/index.js.map +1 -1
  129. package/attribute-editor/interfaces.d.ts +7 -0
  130. package/attribute-editor/interfaces.d.ts.map +1 -1
  131. package/attribute-editor/interfaces.js.map +1 -1
  132. package/attribute-editor/internal.d.ts.map +1 -1
  133. package/attribute-editor/internal.js +6 -1
  134. package/attribute-editor/internal.js.map +1 -1
  135. package/attribute-editor/row.d.ts.map +1 -1
  136. package/attribute-editor/row.js.map +1 -1
  137. package/autosuggest/autosuggest-option.d.ts.map +1 -1
  138. package/autosuggest/autosuggest-option.js.map +1 -1
  139. package/autosuggest/index.d.ts.map +1 -1
  140. package/autosuggest/index.js.map +1 -1
  141. package/autosuggest/interfaces.d.ts +2 -2
  142. package/autosuggest/interfaces.d.ts.map +1 -1
  143. package/autosuggest/interfaces.js.map +1 -1
  144. package/autosuggest/internal.d.ts.map +1 -1
  145. package/autosuggest/internal.js.map +1 -1
  146. package/autosuggest/load-more-controller.d.ts.map +1 -1
  147. package/autosuggest/load-more-controller.js.map +1 -1
  148. package/autosuggest/options-controller.d.ts.map +1 -1
  149. package/autosuggest/options-controller.js.map +1 -1
  150. package/autosuggest/options-list.d.ts.map +1 -1
  151. package/autosuggest/options-list.js.map +1 -1
  152. package/autosuggest/plain-list.d.ts.map +1 -1
  153. package/autosuggest/plain-list.js.map +1 -1
  154. package/autosuggest/utils/utils.d.ts.map +1 -1
  155. package/autosuggest/utils/utils.js.map +1 -1
  156. package/autosuggest/virtual-list.d.ts.map +1 -1
  157. package/autosuggest/virtual-list.js.map +1 -1
  158. package/badge/index.d.ts.map +1 -1
  159. package/badge/index.js.map +1 -1
  160. package/badge/interfaces.d.ts.map +1 -1
  161. package/badge/interfaces.js.map +1 -1
  162. package/bar-chart/index.d.ts.map +1 -1
  163. package/bar-chart/index.js.map +1 -1
  164. package/bar-chart/interfaces.d.ts.map +1 -1
  165. package/bar-chart/interfaces.js.map +1 -1
  166. package/box/index.d.ts.map +1 -1
  167. package/box/index.js.map +1 -1
  168. package/box/interfaces.d.ts.map +1 -1
  169. package/box/interfaces.js.map +1 -1
  170. package/box/internal.d.ts.map +1 -1
  171. package/box/internal.js.map +1 -1
  172. package/breadcrumb-group/index.d.ts.map +1 -1
  173. package/breadcrumb-group/index.js.map +1 -1
  174. package/breadcrumb-group/interfaces.d.ts.map +1 -1
  175. package/breadcrumb-group/interfaces.js.map +1 -1
  176. package/breadcrumb-group/internal.d.ts.map +1 -1
  177. package/breadcrumb-group/internal.js.map +1 -1
  178. package/breadcrumb-group/item/item.d.ts.map +1 -1
  179. package/breadcrumb-group/item/item.js.map +1 -1
  180. package/button/icon-helper.d.ts.map +1 -1
  181. package/button/icon-helper.js.map +1 -1
  182. package/button/index.d.ts.map +1 -1
  183. package/button/index.js.map +1 -1
  184. package/button/interfaces.d.ts.map +1 -1
  185. package/button/interfaces.js.map +1 -1
  186. package/button/internal.d.ts.map +1 -1
  187. package/button/internal.js.map +1 -1
  188. package/button-dropdown/category-elements/category-element.d.ts.map +1 -1
  189. package/button-dropdown/category-elements/category-element.js.map +1 -1
  190. package/button-dropdown/category-elements/expandable-category-element.d.ts.map +1 -1
  191. package/button-dropdown/category-elements/expandable-category-element.js.map +1 -1
  192. package/button-dropdown/category-elements/mobile-expandable-category-element.d.ts.map +1 -1
  193. package/button-dropdown/category-elements/mobile-expandable-category-element.js.map +1 -1
  194. package/button-dropdown/index.d.ts.map +1 -1
  195. package/button-dropdown/index.js.map +1 -1
  196. package/button-dropdown/interfaces.d.ts.map +1 -1
  197. package/button-dropdown/interfaces.js.map +1 -1
  198. package/button-dropdown/internal.d.ts.map +1 -1
  199. package/button-dropdown/internal.js.map +1 -1
  200. package/button-dropdown/item-element/index.d.ts.map +1 -1
  201. package/button-dropdown/item-element/index.js.map +1 -1
  202. package/button-dropdown/items-list.d.ts.map +1 -1
  203. package/button-dropdown/items-list.js.map +1 -1
  204. package/button-dropdown/mobile-expandable-group/mobile-expandable-group.d.ts.map +1 -1
  205. package/button-dropdown/mobile-expandable-group/mobile-expandable-group.js.map +1 -1
  206. package/button-dropdown/tooltip.d.ts.map +1 -1
  207. package/button-dropdown/tooltip.js.map +1 -1
  208. package/button-dropdown/utils/create-items-tree.d.ts.map +1 -1
  209. package/button-dropdown/utils/create-items-tree.js.map +1 -1
  210. package/button-dropdown/utils/menu-item.d.ts.map +1 -1
  211. package/button-dropdown/utils/menu-item.js.map +1 -1
  212. package/button-dropdown/utils/move-highlight.d.ts.map +1 -1
  213. package/button-dropdown/utils/move-highlight.js.map +1 -1
  214. package/button-dropdown/utils/use-button-dropdown.d.ts.map +1 -1
  215. package/button-dropdown/utils/use-button-dropdown.js.map +1 -1
  216. package/button-dropdown/utils/use-hidden-description.d.ts.map +1 -1
  217. package/button-dropdown/utils/use-hidden-description.js.map +1 -1
  218. package/button-dropdown/utils/use-highlighted-menu.d.ts.map +1 -1
  219. package/button-dropdown/utils/use-highlighted-menu.js.map +1 -1
  220. package/button-dropdown/utils/utils.d.ts.map +1 -1
  221. package/button-dropdown/utils/utils.js.map +1 -1
  222. package/calendar/grid/index.d.ts.map +1 -1
  223. package/calendar/grid/index.js.map +1 -1
  224. package/calendar/header/header-button.d.ts.map +1 -1
  225. package/calendar/header/header-button.js.map +1 -1
  226. package/calendar/header/index.d.ts.map +1 -1
  227. package/calendar/header/index.js.map +1 -1
  228. package/calendar/index.d.ts.map +1 -1
  229. package/calendar/index.js.map +1 -1
  230. package/calendar/interfaces.d.ts.map +1 -1
  231. package/calendar/interfaces.js.map +1 -1
  232. package/calendar/internal.d.ts.map +1 -1
  233. package/calendar/internal.js.map +1 -1
  234. package/calendar/utils/intl.d.ts.map +1 -1
  235. package/calendar/utils/intl.js.map +1 -1
  236. package/calendar/utils/navigation.d.ts.map +1 -1
  237. package/calendar/utils/navigation.js.map +1 -1
  238. package/cards/cards-layout-helper.d.ts.map +1 -1
  239. package/cards/cards-layout-helper.js.map +1 -1
  240. package/cards/index.d.ts.map +1 -1
  241. package/cards/index.js.map +1 -1
  242. package/cards/interfaces.d.ts.map +1 -1
  243. package/cards/interfaces.js.map +1 -1
  244. package/checkbox/base-checkbox.d.ts.map +1 -1
  245. package/checkbox/base-checkbox.js.map +1 -1
  246. package/checkbox/index.d.ts.map +1 -1
  247. package/checkbox/index.js.map +1 -1
  248. package/checkbox/interfaces.d.ts.map +1 -1
  249. package/checkbox/interfaces.js.map +1 -1
  250. package/checkbox/internal.d.ts.map +1 -1
  251. package/checkbox/internal.js.map +1 -1
  252. package/code-editor/ace-modes.d.ts.map +1 -1
  253. package/code-editor/ace-modes.js.map +1 -1
  254. package/code-editor/ace-themes.d.ts.map +1 -1
  255. package/code-editor/ace-themes.js.map +1 -1
  256. package/code-editor/error-screen.d.ts.map +1 -1
  257. package/code-editor/error-screen.js.map +1 -1
  258. package/code-editor/index.d.ts.map +1 -1
  259. package/code-editor/index.js.map +1 -1
  260. package/code-editor/interfaces.d.ts.map +1 -1
  261. package/code-editor/interfaces.js.map +1 -1
  262. package/code-editor/listeners.d.ts.map +1 -1
  263. package/code-editor/listeners.js.map +1 -1
  264. package/code-editor/loading-screen.d.ts.map +1 -1
  265. package/code-editor/loading-screen.js.map +1 -1
  266. package/code-editor/pane.d.ts.map +1 -1
  267. package/code-editor/pane.js.map +1 -1
  268. package/code-editor/preferences-modal.d.ts.map +1 -1
  269. package/code-editor/preferences-modal.js.map +1 -1
  270. package/code-editor/resizable-box/index.d.ts.map +1 -1
  271. package/code-editor/resizable-box/index.js.map +1 -1
  272. package/code-editor/setup-editor.d.ts.map +1 -1
  273. package/code-editor/setup-editor.js.map +1 -1
  274. package/code-editor/status-bar.d.ts.map +1 -1
  275. package/code-editor/status-bar.js.map +1 -1
  276. package/code-editor/tab-button.d.ts.map +1 -1
  277. package/code-editor/tab-button.js.map +1 -1
  278. package/code-editor/util.d.ts.map +1 -1
  279. package/code-editor/util.js.map +1 -1
  280. package/collection-preferences/index.d.ts.map +1 -1
  281. package/collection-preferences/index.js.map +1 -1
  282. package/collection-preferences/interfaces.d.ts.map +1 -1
  283. package/collection-preferences/interfaces.js.map +1 -1
  284. package/collection-preferences/utils.d.ts.map +1 -1
  285. package/collection-preferences/utils.js.map +1 -1
  286. package/collection-preferences/visible-content.d.ts.map +1 -1
  287. package/collection-preferences/visible-content.js.map +1 -1
  288. package/column-layout/index.d.ts.map +1 -1
  289. package/column-layout/index.js.map +1 -1
  290. package/column-layout/interfaces.d.ts.map +1 -1
  291. package/column-layout/interfaces.js.map +1 -1
  292. package/column-layout/internal.d.ts.map +1 -1
  293. package/column-layout/internal.js.map +1 -1
  294. package/column-layout/util.d.ts.map +1 -1
  295. package/column-layout/util.js.map +1 -1
  296. package/container/index.d.ts.map +1 -1
  297. package/container/index.js.map +1 -1
  298. package/container/interfaces.d.ts.map +1 -1
  299. package/container/interfaces.js.map +1 -1
  300. package/container/internal.d.ts.map +1 -1
  301. package/container/internal.js +4 -2
  302. package/container/internal.js.map +1 -1
  303. package/container/styles.css.js +18 -20
  304. package/container/styles.scoped.css +36 -43
  305. package/container/styles.selectors.js +18 -20
  306. package/container/use-sticky-header.d.ts.map +1 -1
  307. package/container/use-sticky-header.js.map +1 -1
  308. package/content-layout/index.d.ts.map +1 -1
  309. package/content-layout/index.js.map +1 -1
  310. package/content-layout/interfaces.d.ts.map +1 -1
  311. package/content-layout/interfaces.js.map +1 -1
  312. package/content-layout/internal.d.ts.map +1 -1
  313. package/content-layout/internal.js.map +1 -1
  314. package/contexts/form-field.d.ts.map +1 -1
  315. package/contexts/form-field.js.map +1 -1
  316. package/date-input/index.d.ts.map +1 -1
  317. package/date-input/index.js.map +1 -1
  318. package/date-input/interfaces.d.ts.map +1 -1
  319. package/date-input/interfaces.js.map +1 -1
  320. package/date-input/internal.d.ts.map +1 -1
  321. package/date-input/internal.js.map +1 -1
  322. package/date-picker/index.d.ts.map +1 -1
  323. package/date-picker/index.js.map +1 -1
  324. package/date-picker/interfaces.d.ts.map +1 -1
  325. package/date-picker/interfaces.js.map +1 -1
  326. package/date-range-picker/calendar/grids/grid.d.ts.map +1 -1
  327. package/date-range-picker/calendar/grids/grid.js.map +1 -1
  328. package/date-range-picker/calendar/grids/index.d.ts.map +1 -1
  329. package/date-range-picker/calendar/grids/index.js.map +1 -1
  330. package/date-range-picker/calendar/header/header-button.d.ts.map +1 -1
  331. package/date-range-picker/calendar/header/header-button.js.map +1 -1
  332. package/date-range-picker/calendar/header/index.d.ts.map +1 -1
  333. package/date-range-picker/calendar/header/index.js.map +1 -1
  334. package/date-range-picker/calendar/index.d.ts.map +1 -1
  335. package/date-range-picker/calendar/index.js.map +1 -1
  336. package/date-range-picker/calendar/range-inputs.d.ts.map +1 -1
  337. package/date-range-picker/calendar/range-inputs.js.map +1 -1
  338. package/date-range-picker/calendar/utils.d.ts.map +1 -1
  339. package/date-range-picker/calendar/utils.js.map +1 -1
  340. package/date-range-picker/dropdown.d.ts.map +1 -1
  341. package/date-range-picker/dropdown.js.map +1 -1
  342. package/date-range-picker/index.d.ts.map +1 -1
  343. package/date-range-picker/index.js.map +1 -1
  344. package/date-range-picker/interfaces.d.ts.map +1 -1
  345. package/date-range-picker/interfaces.js.map +1 -1
  346. package/date-range-picker/mode-switcher.d.ts.map +1 -1
  347. package/date-range-picker/mode-switcher.js.map +1 -1
  348. package/date-range-picker/relative-range/index.d.ts.map +1 -1
  349. package/date-range-picker/relative-range/index.js.map +1 -1
  350. package/date-range-picker/time-offset.d.ts.map +1 -1
  351. package/date-range-picker/time-offset.js.map +1 -1
  352. package/date-range-picker/utils.d.ts.map +1 -1
  353. package/date-range-picker/utils.js.map +1 -1
  354. package/expandable-section/expandable-section-container.d.ts.map +1 -1
  355. package/expandable-section/expandable-section-container.js.map +1 -1
  356. package/expandable-section/expandable-section-header.d.ts.map +1 -1
  357. package/expandable-section/expandable-section-header.js.map +1 -1
  358. package/expandable-section/index.d.ts.map +1 -1
  359. package/expandable-section/index.js.map +1 -1
  360. package/expandable-section/interfaces.d.ts.map +1 -1
  361. package/expandable-section/interfaces.js.map +1 -1
  362. package/expandable-section/internal.d.ts.map +1 -1
  363. package/expandable-section/internal.js.map +1 -1
  364. package/flashbar/collapsible-flashbar.d.ts.map +1 -1
  365. package/flashbar/collapsible-flashbar.js.map +1 -1
  366. package/flashbar/common.d.ts.map +1 -1
  367. package/flashbar/common.js.map +1 -1
  368. package/flashbar/constant.d.ts.map +1 -1
  369. package/flashbar/constant.js.map +1 -1
  370. package/flashbar/flash.d.ts.map +1 -1
  371. package/flashbar/flash.js.map +1 -1
  372. package/flashbar/index.d.ts.map +1 -1
  373. package/flashbar/index.js.map +1 -1
  374. package/flashbar/interfaces.d.ts.map +1 -1
  375. package/flashbar/interfaces.js.map +1 -1
  376. package/flashbar/internal/analytics.d.ts.map +1 -1
  377. package/flashbar/internal/analytics.js.map +1 -1
  378. package/flashbar/non-collapsible-flashbar.d.ts.map +1 -1
  379. package/flashbar/non-collapsible-flashbar.js.map +1 -1
  380. package/flashbar/utils.d.ts.map +1 -1
  381. package/flashbar/utils.js.map +1 -1
  382. package/form/index.d.ts.map +1 -1
  383. package/form/index.js.map +1 -1
  384. package/form/interfaces.d.ts.map +1 -1
  385. package/form/interfaces.js.map +1 -1
  386. package/form/internal.d.ts.map +1 -1
  387. package/form/internal.js.map +1 -1
  388. package/form-field/index.d.ts.map +1 -1
  389. package/form-field/index.js.map +1 -1
  390. package/form-field/interfaces.d.ts +0 -6
  391. package/form-field/interfaces.d.ts.map +1 -1
  392. package/form-field/interfaces.js.map +1 -1
  393. package/form-field/internal.d.ts +1 -1
  394. package/form-field/internal.d.ts.map +1 -1
  395. package/form-field/internal.js +1 -2
  396. package/form-field/internal.js.map +1 -1
  397. package/form-field/util.d.ts.map +1 -1
  398. package/form-field/util.js.map +1 -1
  399. package/grid/index.d.ts.map +1 -1
  400. package/grid/index.js.map +1 -1
  401. package/grid/interfaces.d.ts.map +1 -1
  402. package/grid/interfaces.js.map +1 -1
  403. package/grid/internal.d.ts.map +1 -1
  404. package/grid/internal.js.map +1 -1
  405. package/header/index.d.ts.map +1 -1
  406. package/header/index.js.map +1 -1
  407. package/header/interfaces.d.ts.map +1 -1
  408. package/header/interfaces.js.map +1 -1
  409. package/header/internal.d.ts.map +1 -1
  410. package/header/internal.js.map +1 -1
  411. package/help-panel/index.d.ts.map +1 -1
  412. package/help-panel/index.js.map +1 -1
  413. package/help-panel/interfaces.d.ts.map +1 -1
  414. package/help-panel/interfaces.js.map +1 -1
  415. package/hotspot/index.d.ts.map +1 -1
  416. package/hotspot/index.js.map +1 -1
  417. package/hotspot/interfaces.d.ts.map +1 -1
  418. package/hotspot/interfaces.js.map +1 -1
  419. package/icon/icons.js +1 -1
  420. package/icon/index.d.ts.map +1 -1
  421. package/icon/index.js.map +1 -1
  422. package/icon/interfaces.d.ts +1 -1
  423. package/icon/interfaces.d.ts.map +1 -1
  424. package/icon/interfaces.js.map +1 -1
  425. package/icon/internal.d.ts.map +1 -1
  426. package/icon/internal.js.map +1 -1
  427. package/index.d.ts.map +1 -1
  428. package/index.js.map +1 -1
  429. package/input/index.d.ts.map +1 -1
  430. package/input/index.js.map +1 -1
  431. package/input/interfaces.d.ts +7 -5
  432. package/input/interfaces.d.ts.map +1 -1
  433. package/input/interfaces.js.map +1 -1
  434. package/input/internal.d.ts.map +1 -1
  435. package/input/internal.js +4 -16
  436. package/input/internal.js.map +1 -1
  437. package/input/utils.d.ts.map +1 -1
  438. package/input/utils.js.map +1 -1
  439. package/interfaces.d.ts.map +1 -1
  440. package/interfaces.js.map +1 -1
  441. package/internal/animate.d.ts.map +1 -1
  442. package/internal/animate.js.map +1 -1
  443. package/internal/base-component/index.d.ts.map +1 -1
  444. package/internal/base-component/index.js.map +1 -1
  445. package/internal/breakpoints.d.ts.map +1 -1
  446. package/internal/breakpoints.js.map +1 -1
  447. package/internal/components/abstract-switch/index.d.ts.map +1 -1
  448. package/internal/components/abstract-switch/index.js.map +1 -1
  449. package/internal/components/autosuggest-input/index.d.ts +2 -3
  450. package/internal/components/autosuggest-input/index.d.ts.map +1 -1
  451. package/internal/components/autosuggest-input/index.js.map +1 -1
  452. package/internal/components/button-trigger/index.d.ts.map +1 -1
  453. package/internal/components/button-trigger/index.js.map +1 -1
  454. package/internal/components/cartesian-chart/axis-label.d.ts.map +1 -1
  455. package/internal/components/cartesian-chart/axis-label.js.map +1 -1
  456. package/internal/components/cartesian-chart/bottom-labels.d.ts.map +1 -1
  457. package/internal/components/cartesian-chart/bottom-labels.js.map +1 -1
  458. package/internal/components/cartesian-chart/constants.d.ts.map +1 -1
  459. package/internal/components/cartesian-chart/constants.js.map +1 -1
  460. package/internal/components/cartesian-chart/emphasized-baseline.d.ts.map +1 -1
  461. package/internal/components/cartesian-chart/emphasized-baseline.js.map +1 -1
  462. package/internal/components/cartesian-chart/highlighted-point.d.ts.map +1 -1
  463. package/internal/components/cartesian-chart/highlighted-point.js.map +1 -1
  464. package/internal/components/cartesian-chart/interfaces.d.ts.map +1 -1
  465. package/internal/components/cartesian-chart/interfaces.js.map +1 -1
  466. package/internal/components/cartesian-chart/label-utils.d.ts.map +1 -1
  467. package/internal/components/cartesian-chart/label-utils.js.map +1 -1
  468. package/internal/components/cartesian-chart/labels-measure.d.ts.map +1 -1
  469. package/internal/components/cartesian-chart/labels-measure.js.map +1 -1
  470. package/internal/components/cartesian-chart/left-labels.d.ts.map +1 -1
  471. package/internal/components/cartesian-chart/left-labels.js.map +1 -1
  472. package/internal/components/cartesian-chart/scales.d.ts.map +1 -1
  473. package/internal/components/cartesian-chart/scales.js.map +1 -1
  474. package/internal/components/cartesian-chart/ticks.d.ts.map +1 -1
  475. package/internal/components/cartesian-chart/ticks.js.map +1 -1
  476. package/internal/components/cartesian-chart/vertical-grid-lines.d.ts.map +1 -1
  477. package/internal/components/cartesian-chart/vertical-grid-lines.js.map +1 -1
  478. package/internal/components/cartesian-chart/vertical-marker.d.ts.map +1 -1
  479. package/internal/components/cartesian-chart/vertical-marker.js.map +1 -1
  480. package/internal/components/chart-filter/index.d.ts.map +1 -1
  481. package/internal/components/chart-filter/index.js.map +1 -1
  482. package/internal/components/chart-legend/index.d.ts.map +1 -1
  483. package/internal/components/chart-legend/index.js.map +1 -1
  484. package/internal/components/chart-plot/application-controller.d.ts.map +1 -1
  485. package/internal/components/chart-plot/application-controller.js.map +1 -1
  486. package/internal/components/chart-plot/focus-outline.d.ts.map +1 -1
  487. package/internal/components/chart-plot/focus-outline.js.map +1 -1
  488. package/internal/components/chart-plot/index.d.ts.map +1 -1
  489. package/internal/components/chart-plot/index.js.map +1 -1
  490. package/internal/components/chart-plot/interfaces.d.ts.map +1 -1
  491. package/internal/components/chart-plot/interfaces.js.map +1 -1
  492. package/internal/components/chart-popover/index.d.ts.map +1 -1
  493. package/internal/components/chart-popover/index.js.map +1 -1
  494. package/internal/components/chart-series-details/index.d.ts.map +1 -1
  495. package/internal/components/chart-series-details/index.js.map +1 -1
  496. package/internal/components/chart-series-marker/index.d.ts.map +1 -1
  497. package/internal/components/chart-series-marker/index.js.map +1 -1
  498. package/internal/components/chart-status-container/index.d.ts.map +1 -1
  499. package/internal/components/chart-status-container/index.js.map +1 -1
  500. package/internal/components/checkbox-icon/index.d.ts.map +1 -1
  501. package/internal/components/checkbox-icon/index.js.map +1 -1
  502. package/internal/components/dark-ribbon/index.d.ts.map +1 -1
  503. package/internal/components/dark-ribbon/index.js.map +1 -1
  504. package/internal/components/dropdown/context.d.ts.map +1 -1
  505. package/internal/components/dropdown/context.js.map +1 -1
  506. package/internal/components/dropdown/dropdown-fit-handler.d.ts.map +1 -1
  507. package/internal/components/dropdown/dropdown-fit-handler.js.map +1 -1
  508. package/internal/components/dropdown/index.d.ts.map +1 -1
  509. package/internal/components/dropdown/index.js.map +1 -1
  510. package/internal/components/dropdown/interfaces.d.ts.map +1 -1
  511. package/internal/components/dropdown/interfaces.js.map +1 -1
  512. package/internal/components/dropdown-footer/index.d.ts.map +1 -1
  513. package/internal/components/dropdown-footer/index.js.map +1 -1
  514. package/internal/components/dropdown-status/index.d.ts.map +1 -1
  515. package/internal/components/dropdown-status/index.js.map +1 -1
  516. package/internal/components/dropdown-status/interfaces.d.ts.map +1 -1
  517. package/internal/components/dropdown-status/interfaces.js.map +1 -1
  518. package/internal/components/filtering-token/index.d.ts.map +1 -1
  519. package/internal/components/filtering-token/index.js.map +1 -1
  520. package/internal/components/focus-lock/index.d.ts.map +1 -1
  521. package/internal/components/focus-lock/index.js.map +1 -1
  522. package/internal/components/focus-lock/utils.d.ts +2 -2
  523. package/internal/components/focus-lock/utils.d.ts.map +1 -1
  524. package/internal/components/focus-lock/utils.js.map +1 -1
  525. package/internal/components/interfaces.d.ts.map +1 -1
  526. package/internal/components/interfaces.js.map +1 -1
  527. package/internal/components/live-region/index.d.ts.map +1 -1
  528. package/internal/components/live-region/index.js.map +1 -1
  529. package/internal/components/masked-input/index.d.ts.map +1 -1
  530. package/internal/components/masked-input/index.js.map +1 -1
  531. package/internal/components/masked-input/interfaces.d.ts.map +1 -1
  532. package/internal/components/masked-input/interfaces.js.map +1 -1
  533. package/internal/components/masked-input/keyboard-handler.d.ts.map +1 -1
  534. package/internal/components/masked-input/keyboard-handler.js.map +1 -1
  535. package/internal/components/masked-input/use-mask.d.ts.map +1 -1
  536. package/internal/components/masked-input/use-mask.js.map +1 -1
  537. package/internal/components/masked-input/utils/keys.d.ts.map +1 -1
  538. package/internal/components/masked-input/utils/keys.js.map +1 -1
  539. package/internal/components/masked-input/utils/mask-format.d.ts.map +1 -1
  540. package/internal/components/masked-input/utils/mask-format.js.map +1 -1
  541. package/internal/components/masked-input/utils/strings.d.ts.map +1 -1
  542. package/internal/components/masked-input/utils/strings.js.map +1 -1
  543. package/internal/components/menu-dropdown/index.d.ts.map +1 -1
  544. package/internal/components/menu-dropdown/index.js.map +1 -1
  545. package/internal/components/menu-dropdown/interfaces.d.ts.map +1 -1
  546. package/internal/components/menu-dropdown/interfaces.js.map +1 -1
  547. package/internal/components/option/highlight-match.d.ts.map +1 -1
  548. package/internal/components/option/highlight-match.js.map +1 -1
  549. package/internal/components/option/index.d.ts +1 -1
  550. package/internal/components/option/index.d.ts.map +1 -1
  551. package/internal/components/option/index.js +11 -2
  552. package/internal/components/option/index.js.map +1 -1
  553. package/internal/components/option/interfaces.d.ts +1 -0
  554. package/internal/components/option/interfaces.d.ts.map +1 -1
  555. package/internal/components/option/interfaces.js.map +1 -1
  556. package/internal/components/option/option-announcer.d.ts.map +1 -1
  557. package/internal/components/option/option-announcer.js.map +1 -1
  558. package/internal/components/option/option-parts.d.ts.map +1 -1
  559. package/internal/components/option/option-parts.js.map +1 -1
  560. package/internal/components/option/utils/filter-options.d.ts.map +1 -1
  561. package/internal/components/option/utils/filter-options.js.map +1 -1
  562. package/internal/components/option/utils/flatten-options.d.ts.map +1 -1
  563. package/internal/components/option/utils/flatten-options.js.map +1 -1
  564. package/internal/components/option/utils/prepare-options.d.ts.map +1 -1
  565. package/internal/components/option/utils/prepare-options.js.map +1 -1
  566. package/internal/components/options-list/index.d.ts.map +1 -1
  567. package/internal/components/options-list/index.js.map +1 -1
  568. package/internal/components/options-list/utils/test-indexes.d.ts.map +1 -1
  569. package/internal/components/options-list/utils/test-indexes.js.map +1 -1
  570. package/internal/components/options-list/utils/use-highlight-option.d.ts.map +1 -1
  571. package/internal/components/options-list/utils/use-highlight-option.js.map +1 -1
  572. package/internal/components/options-list/utils/use-ids.d.ts.map +1 -1
  573. package/internal/components/options-list/utils/use-ids.js.map +1 -1
  574. package/internal/components/options-list/utils/use-keyboard.d.ts.map +1 -1
  575. package/internal/components/options-list/utils/use-keyboard.js.map +1 -1
  576. package/internal/components/options-list/utils/use-open-state.d.ts.map +1 -1
  577. package/internal/components/options-list/utils/use-open-state.js.map +1 -1
  578. package/internal/components/portal/index.d.ts.map +1 -1
  579. package/internal/components/portal/index.js.map +1 -1
  580. package/internal/components/screenreader-only/index.d.ts.map +1 -1
  581. package/internal/components/screenreader-only/index.js.map +1 -1
  582. package/internal/components/selectable-item/index.d.ts.map +1 -1
  583. package/internal/components/selectable-item/index.js.map +1 -1
  584. package/internal/components/tab-trap/index.d.ts.map +1 -1
  585. package/internal/components/tab-trap/index.js.map +1 -1
  586. package/internal/components/token-list/index.d.ts +4 -0
  587. package/internal/components/token-list/index.d.ts.map +1 -0
  588. package/internal/components/token-list/index.js +31 -0
  589. package/internal/components/token-list/index.js.map +1 -0
  590. package/internal/components/token-list/interfaces.d.ts +16 -0
  591. package/internal/components/token-list/interfaces.d.ts.map +1 -0
  592. package/internal/components/token-list/interfaces.js +4 -0
  593. package/internal/components/token-list/interfaces.js.map +1 -0
  594. package/internal/components/token-list/styles.css.js +14 -0
  595. package/internal/components/token-list/styles.scoped.css +232 -0
  596. package/internal/components/token-list/styles.selectors.js +15 -0
  597. package/internal/components/token-list/token-focus-controller.d.ts +5 -0
  598. package/internal/components/token-list/token-focus-controller.d.ts.map +1 -0
  599. package/internal/components/token-list/token-focus-controller.js +49 -0
  600. package/internal/components/token-list/token-focus-controller.js.map +1 -0
  601. package/internal/components/token-list/token-limit-toggle.d.ts +14 -0
  602. package/internal/components/token-list/token-limit-toggle.d.ts.map +1 -0
  603. package/{token-group/toggle.js → internal/components/token-list/token-limit-toggle.js} +6 -7
  604. package/internal/components/token-list/token-limit-toggle.js.map +1 -0
  605. package/internal/components/transition/index.d.ts.map +1 -1
  606. package/internal/components/transition/index.js.map +1 -1
  607. package/internal/components/visual-context/index.d.ts.map +1 -1
  608. package/internal/components/visual-context/index.js.map +1 -1
  609. package/internal/context/app-layout-context.d.ts.map +1 -1
  610. package/internal/context/app-layout-context.js.map +1 -1
  611. package/internal/context/form-field-context.d.ts +2 -6
  612. package/internal/context/form-field-context.d.ts.map +1 -1
  613. package/internal/context/form-field-context.js +1 -7
  614. package/internal/context/form-field-context.js.map +1 -1
  615. package/internal/context/split-panel-context.d.ts.map +1 -1
  616. package/internal/context/split-panel-context.js.map +1 -1
  617. package/internal/debounce.d.ts.map +1 -1
  618. package/internal/debounce.js.map +1 -1
  619. package/internal/environment.js +1 -1
  620. package/internal/events/index.d.ts.map +1 -1
  621. package/internal/events/index.js.map +1 -1
  622. package/internal/focus-tracker.d.ts.map +1 -1
  623. package/internal/focus-tracker.js.map +1 -1
  624. package/internal/generated/custom-css-properties/index.d.ts.map +1 -1
  625. package/internal/generated/custom-css-properties/index.js.map +1 -1
  626. package/internal/hooks/check-controlled/index.d.ts.map +1 -1
  627. package/internal/hooks/check-controlled/index.js.map +1 -1
  628. package/internal/hooks/container-queries/index.d.ts.map +1 -1
  629. package/internal/hooks/container-queries/index.js.map +1 -1
  630. package/internal/hooks/container-queries/interfaces.d.ts.map +1 -1
  631. package/internal/hooks/container-queries/interfaces.js.map +1 -1
  632. package/internal/hooks/container-queries/use-container-breakpoints.d.ts.map +1 -1
  633. package/internal/hooks/container-queries/use-container-breakpoints.js.map +1 -1
  634. package/internal/hooks/container-queries/use-container-query.d.ts.map +1 -1
  635. package/internal/hooks/container-queries/use-container-query.js.map +1 -1
  636. package/internal/hooks/container-queries/use-resize-observer.d.ts.map +1 -1
  637. package/internal/hooks/container-queries/use-resize-observer.js.map +1 -1
  638. package/internal/hooks/focus-visible/index.d.ts.map +1 -1
  639. package/internal/hooks/focus-visible/index.js.map +1 -1
  640. package/internal/hooks/forward-focus/index.d.ts.map +1 -1
  641. package/internal/hooks/forward-focus/index.js.map +1 -1
  642. package/internal/hooks/forward-focus/radio-group.d.ts.map +1 -1
  643. package/internal/hooks/forward-focus/radio-group.js.map +1 -1
  644. package/internal/hooks/use-base-component/index.d.ts.map +1 -1
  645. package/internal/hooks/use-base-component/index.js.map +1 -1
  646. package/internal/hooks/use-controllable/index.d.ts.map +1 -1
  647. package/internal/hooks/use-controllable/index.js.map +1 -1
  648. package/internal/hooks/use-date-cache/index.d.ts.map +1 -1
  649. package/internal/hooks/use-date-cache/index.js.map +1 -1
  650. package/internal/hooks/use-debounce-callback/index.d.ts.map +1 -1
  651. package/internal/hooks/use-debounce-callback/index.js.map +1 -1
  652. package/internal/hooks/use-dynamic-overlap/index.d.ts.map +1 -1
  653. package/internal/hooks/use-dynamic-overlap/index.js.map +1 -1
  654. package/internal/hooks/use-effect-on-update.d.ts.map +1 -1
  655. package/internal/hooks/use-effect-on-update.js.map +1 -1
  656. package/internal/hooks/use-focus-tracker.d.ts.map +1 -1
  657. package/internal/hooks/use-focus-tracker.js.map +1 -1
  658. package/internal/hooks/use-has-rendered/index.d.ts.map +1 -1
  659. package/internal/hooks/use-has-rendered/index.js.map +1 -1
  660. package/internal/hooks/use-intersection-observer/index.d.ts +9 -0
  661. package/internal/hooks/use-intersection-observer/index.d.ts.map +1 -0
  662. package/internal/hooks/use-intersection-observer/index.js +28 -0
  663. package/internal/hooks/use-intersection-observer/index.js.map +1 -0
  664. package/internal/hooks/use-merge-refs/index.d.ts.map +1 -1
  665. package/internal/hooks/use-merge-refs/index.js.map +1 -1
  666. package/internal/hooks/use-mobile/index.d.ts.map +1 -1
  667. package/internal/hooks/use-mobile/index.js.map +1 -1
  668. package/internal/hooks/use-mouse-down-target.d.ts.map +1 -1
  669. package/internal/hooks/use-mouse-down-target.js.map +1 -1
  670. package/internal/hooks/use-mutation-observer/index.d.ts.map +1 -1
  671. package/internal/hooks/use-mutation-observer/index.js.map +1 -1
  672. package/internal/hooks/use-portal-mode-classes/index.d.ts.map +1 -1
  673. package/internal/hooks/use-portal-mode-classes/index.js.map +1 -1
  674. package/internal/hooks/use-previous/index.d.ts.map +1 -1
  675. package/internal/hooks/use-previous/index.js.map +1 -1
  676. package/internal/hooks/use-scroll-sync/index.d.ts.map +1 -1
  677. package/internal/hooks/use-scroll-sync/index.js.map +1 -1
  678. package/internal/hooks/use-singleton-handler/index.d.ts.map +1 -1
  679. package/internal/hooks/use-singleton-handler/index.js.map +1 -1
  680. package/internal/hooks/use-stable-event-handler/index.d.ts.map +1 -1
  681. package/internal/hooks/use-stable-event-handler/index.js.map +1 -1
  682. package/internal/hooks/use-telemetry/index.d.ts.map +1 -1
  683. package/internal/hooks/use-telemetry/index.js.map +1 -1
  684. package/internal/hooks/use-unique-id/index.d.ts.map +1 -1
  685. package/internal/hooks/use-unique-id/index.js.map +1 -1
  686. package/internal/hooks/use-visual-mode/index.d.ts.map +1 -1
  687. package/internal/hooks/use-visual-mode/index.js.map +1 -1
  688. package/internal/i18n/context.d.ts.map +1 -1
  689. package/internal/i18n/context.js.map +1 -1
  690. package/internal/i18n/index.d.ts.map +1 -1
  691. package/internal/i18n/index.js.map +1 -1
  692. package/internal/i18n/provider.d.ts.map +1 -1
  693. package/internal/i18n/provider.js.map +1 -1
  694. package/internal/is-development.d.ts.map +1 -1
  695. package/internal/is-development.js.map +1 -1
  696. package/internal/keycode.d.ts.map +1 -1
  697. package/internal/keycode.js.map +1 -1
  698. package/internal/logging.d.ts.map +1 -1
  699. package/internal/logging.js.map +1 -1
  700. package/internal/manifest.json +1 -1
  701. package/internal/motion.d.ts.map +1 -1
  702. package/internal/motion.js.map +1 -1
  703. package/internal/styles/colors.d.ts.map +1 -1
  704. package/internal/styles/colors.js.map +1 -1
  705. package/internal/types.d.ts.map +1 -1
  706. package/internal/types.js.map +1 -1
  707. package/internal/utils/apply-display-name.d.ts.map +1 -1
  708. package/internal/utils/apply-display-name.js.map +1 -1
  709. package/internal/utils/browser-scrollbar-size.d.ts.map +1 -1
  710. package/internal/utils/browser-scrollbar-size.js.map +1 -1
  711. package/internal/utils/calculate-once.d.ts.map +1 -1
  712. package/internal/utils/calculate-once.js.map +1 -1
  713. package/internal/utils/check-safe-url.d.ts.map +1 -1
  714. package/internal/utils/check-safe-url.js.map +1 -1
  715. package/internal/utils/create-category-color-scale.d.ts.map +1 -1
  716. package/internal/utils/create-category-color-scale.js.map +1 -1
  717. package/internal/utils/date-time/display-format.d.ts.map +1 -1
  718. package/internal/utils/date-time/display-format.js.map +1 -1
  719. package/internal/utils/date-time/format-date-range.d.ts.map +1 -1
  720. package/internal/utils/date-time/format-date-range.js.map +1 -1
  721. package/internal/utils/date-time/format-date-time.d.ts.map +1 -1
  722. package/internal/utils/date-time/format-date-time.js.map +1 -1
  723. package/internal/utils/date-time/format-date.d.ts.map +1 -1
  724. package/internal/utils/date-time/format-date.js.map +1 -1
  725. package/internal/utils/date-time/format-time.d.ts.map +1 -1
  726. package/internal/utils/date-time/format-time.js.map +1 -1
  727. package/internal/utils/date-time/format-timezone-offset.d.ts.map +1 -1
  728. package/internal/utils/date-time/format-timezone-offset.js.map +1 -1
  729. package/internal/utils/date-time/index.d.ts.map +1 -1
  730. package/internal/utils/date-time/index.js.map +1 -1
  731. package/internal/utils/date-time/is-iso-date-only.d.ts.map +1 -1
  732. package/internal/utils/date-time/is-iso-date-only.js.map +1 -1
  733. package/internal/utils/date-time/join-date-time.d.ts.map +1 -1
  734. package/internal/utils/date-time/join-date-time.js.map +1 -1
  735. package/internal/utils/date-time/parse-date.d.ts.map +1 -1
  736. package/internal/utils/date-time/parse-date.js.map +1 -1
  737. package/internal/utils/date-time/parse-timezone-offset.d.ts.map +1 -1
  738. package/internal/utils/date-time/parse-timezone-offset.js.map +1 -1
  739. package/internal/utils/date-time/shift-timezone-offset.d.ts.map +1 -1
  740. package/internal/utils/date-time/shift-timezone-offset.js.map +1 -1
  741. package/internal/utils/dom.d.ts.map +1 -1
  742. package/internal/utils/dom.js.map +1 -1
  743. package/internal/utils/external-props.d.ts.map +1 -1
  744. package/internal/utils/external-props.js.map +1 -1
  745. package/internal/utils/focus-svg-element.d.ts.map +1 -1
  746. package/internal/utils/focus-svg-element.js.map +1 -1
  747. package/internal/utils/has-value.d.ts.map +1 -1
  748. package/internal/utils/has-value.js.map +1 -1
  749. package/internal/utils/locale/index.d.ts.map +1 -1
  750. package/internal/utils/locale/index.js.map +1 -1
  751. package/internal/utils/locale/merge-locales.d.ts.map +1 -1
  752. package/internal/utils/locale/merge-locales.js.map +1 -1
  753. package/internal/utils/locale/normalize-locale.d.ts.map +1 -1
  754. package/internal/utils/locale/normalize-locale.js.map +1 -1
  755. package/internal/utils/locale/normalize-start-of-week.d.ts.map +1 -1
  756. package/internal/utils/locale/normalize-start-of-week.js.map +1 -1
  757. package/internal/utils/promises.d.ts.map +1 -1
  758. package/internal/utils/promises.js.map +1 -1
  759. package/internal/utils/scrollable-containers.d.ts.map +1 -1
  760. package/internal/utils/scrollable-containers.js.map +1 -1
  761. package/internal/utils/strings/index.d.ts.map +1 -1
  762. package/internal/utils/strings/index.js.map +1 -1
  763. package/internal/utils/strings/join-strings.d.ts.map +1 -1
  764. package/internal/utils/strings/join-strings.js.map +1 -1
  765. package/internal/utils/strings/pad-left-zeros.d.ts.map +1 -1
  766. package/internal/utils/strings/pad-left-zeros.js.map +1 -1
  767. package/internal/utils/throttle.d.ts.map +1 -1
  768. package/internal/utils/throttle.js.map +1 -1
  769. package/internal/utils/use-container-width.d.ts.map +1 -1
  770. package/internal/utils/use-container-width.js.map +1 -1
  771. package/line-chart/index.d.ts.map +1 -1
  772. package/line-chart/index.js.map +1 -1
  773. package/line-chart/interfaces.d.ts.map +1 -1
  774. package/line-chart/interfaces.js.map +1 -1
  775. package/link/index.d.ts.map +1 -1
  776. package/link/index.js.map +1 -1
  777. package/link/interfaces.d.ts.map +1 -1
  778. package/link/interfaces.js.map +1 -1
  779. package/link/internal.d.ts.map +1 -1
  780. package/link/internal.js.map +1 -1
  781. package/mixed-line-bar-chart/bar-groups.d.ts.map +1 -1
  782. package/mixed-line-bar-chart/bar-groups.js.map +1 -1
  783. package/mixed-line-bar-chart/bar-series.d.ts.map +1 -1
  784. package/mixed-line-bar-chart/bar-series.js.map +1 -1
  785. package/mixed-line-bar-chart/chart-container.d.ts.map +1 -1
  786. package/mixed-line-bar-chart/chart-container.js.map +1 -1
  787. package/mixed-line-bar-chart/chart-filters.d.ts.map +1 -1
  788. package/mixed-line-bar-chart/chart-filters.js.map +1 -1
  789. package/mixed-line-bar-chart/chart-legend.d.ts.map +1 -1
  790. package/mixed-line-bar-chart/chart-legend.js.map +1 -1
  791. package/mixed-line-bar-chart/chart-popover.d.ts.map +1 -1
  792. package/mixed-line-bar-chart/chart-popover.js.map +1 -1
  793. package/mixed-line-bar-chart/data-series.d.ts.map +1 -1
  794. package/mixed-line-bar-chart/data-series.js.map +1 -1
  795. package/mixed-line-bar-chart/domain.d.ts.map +1 -1
  796. package/mixed-line-bar-chart/domain.js.map +1 -1
  797. package/mixed-line-bar-chart/format-highlighted.d.ts.map +1 -1
  798. package/mixed-line-bar-chart/format-highlighted.js.map +1 -1
  799. package/mixed-line-bar-chart/hooks/use-mouse-hover.d.ts.map +1 -1
  800. package/mixed-line-bar-chart/hooks/use-mouse-hover.js.map +1 -1
  801. package/mixed-line-bar-chart/hooks/use-navigation.d.ts.map +1 -1
  802. package/mixed-line-bar-chart/hooks/use-navigation.js.map +1 -1
  803. package/mixed-line-bar-chart/hooks/use-popover.d.ts.map +1 -1
  804. package/mixed-line-bar-chart/hooks/use-popover.js.map +1 -1
  805. package/mixed-line-bar-chart/index.d.ts.map +1 -1
  806. package/mixed-line-bar-chart/index.js.map +1 -1
  807. package/mixed-line-bar-chart/interfaces.d.ts.map +1 -1
  808. package/mixed-line-bar-chart/interfaces.js.map +1 -1
  809. package/mixed-line-bar-chart/internal.d.ts.map +1 -1
  810. package/mixed-line-bar-chart/internal.js.map +1 -1
  811. package/mixed-line-bar-chart/line-series.d.ts.map +1 -1
  812. package/mixed-line-bar-chart/line-series.js.map +1 -1
  813. package/mixed-line-bar-chart/make-scaled-bar-groups.d.ts.map +1 -1
  814. package/mixed-line-bar-chart/make-scaled-bar-groups.js.map +1 -1
  815. package/mixed-line-bar-chart/make-scaled-series.d.ts.map +1 -1
  816. package/mixed-line-bar-chart/make-scaled-series.js.map +1 -1
  817. package/mixed-line-bar-chart/utils.d.ts.map +1 -1
  818. package/mixed-line-bar-chart/utils.js.map +1 -1
  819. package/modal/body-scroll.d.ts.map +1 -1
  820. package/modal/body-scroll.js.map +1 -1
  821. package/modal/index.d.ts.map +1 -1
  822. package/modal/index.js.map +1 -1
  823. package/modal/interfaces.d.ts.map +1 -1
  824. package/modal/interfaces.js.map +1 -1
  825. package/modal/internal.d.ts.map +1 -1
  826. package/modal/internal.js +8 -2
  827. package/modal/internal.js.map +1 -1
  828. package/modal/styles.css.js +23 -22
  829. package/modal/styles.scoped.css +43 -37
  830. package/modal/styles.selectors.js +23 -22
  831. package/multiselect/index.d.ts.map +1 -1
  832. package/multiselect/index.js.map +1 -1
  833. package/multiselect/interfaces.d.ts.map +1 -1
  834. package/multiselect/interfaces.js.map +1 -1
  835. package/multiselect/internal.d.ts.map +1 -1
  836. package/multiselect/internal.js.map +1 -1
  837. package/package.json +1 -1
  838. package/pagination/index.d.ts.map +1 -1
  839. package/pagination/index.js.map +1 -1
  840. package/pagination/interfaces.d.ts.map +1 -1
  841. package/pagination/interfaces.js.map +1 -1
  842. package/pagination/internal.d.ts.map +1 -1
  843. package/pagination/internal.js.map +1 -1
  844. package/pagination/utils.d.ts.map +1 -1
  845. package/pagination/utils.js.map +1 -1
  846. package/pie-chart/index.d.ts.map +1 -1
  847. package/pie-chart/index.js.map +1 -1
  848. package/pie-chart/interfaces.d.ts.map +1 -1
  849. package/pie-chart/interfaces.js.map +1 -1
  850. package/pie-chart/labels.d.ts.map +1 -1
  851. package/pie-chart/labels.js.map +1 -1
  852. package/pie-chart/pie-chart.d.ts.map +1 -1
  853. package/pie-chart/pie-chart.js.map +1 -1
  854. package/pie-chart/responsive-text.d.ts.map +1 -1
  855. package/pie-chart/responsive-text.js.map +1 -1
  856. package/pie-chart/segments.d.ts.map +1 -1
  857. package/pie-chart/segments.js.map +1 -1
  858. package/pie-chart/utils.d.ts.map +1 -1
  859. package/pie-chart/utils.js.map +1 -1
  860. package/popover/arrow.d.ts.map +1 -1
  861. package/popover/arrow.js.map +1 -1
  862. package/popover/body.d.ts.map +1 -1
  863. package/popover/body.js.map +1 -1
  864. package/popover/container.d.ts.map +1 -1
  865. package/popover/container.js.map +1 -1
  866. package/popover/index.d.ts.map +1 -1
  867. package/popover/index.js.map +1 -1
  868. package/popover/interfaces.d.ts.map +1 -1
  869. package/popover/interfaces.js.map +1 -1
  870. package/popover/internal.d.ts.map +1 -1
  871. package/popover/internal.js.map +1 -1
  872. package/popover/utils/positions.d.ts.map +1 -1
  873. package/popover/utils/positions.js.map +1 -1
  874. package/progress-bar/index.d.ts.map +1 -1
  875. package/progress-bar/index.js.map +1 -1
  876. package/progress-bar/interfaces.d.ts.map +1 -1
  877. package/progress-bar/interfaces.js.map +1 -1
  878. package/progress-bar/internal.d.ts.map +1 -1
  879. package/progress-bar/internal.js.map +1 -1
  880. package/property-filter/controller.d.ts +6 -0
  881. package/property-filter/controller.d.ts.map +1 -1
  882. package/property-filter/controller.js +9 -0
  883. package/property-filter/controller.js.map +1 -1
  884. package/property-filter/filter-options.d.ts.map +1 -1
  885. package/property-filter/filter-options.js.map +1 -1
  886. package/property-filter/index.d.ts.map +1 -1
  887. package/property-filter/index.js +18 -21
  888. package/property-filter/index.js.map +1 -1
  889. package/property-filter/interfaces.d.ts.map +1 -1
  890. package/property-filter/interfaces.js.map +1 -1
  891. package/property-filter/property-editor.d.ts.map +1 -1
  892. package/property-filter/property-editor.js.map +1 -1
  893. package/property-filter/property-filter-autosuggest.d.ts +1 -0
  894. package/property-filter/property-filter-autosuggest.d.ts.map +1 -1
  895. package/property-filter/property-filter-autosuggest.js +2 -2
  896. package/property-filter/property-filter-autosuggest.js.map +1 -1
  897. package/property-filter/styles.css.js +29 -33
  898. package/property-filter/styles.scoped.css +31 -53
  899. package/property-filter/styles.selectors.js +29 -33
  900. package/property-filter/token-editor.d.ts.map +1 -1
  901. package/property-filter/token-editor.js.map +1 -1
  902. package/property-filter/token.d.ts.map +1 -1
  903. package/property-filter/token.js +5 -8
  904. package/property-filter/token.js.map +1 -1
  905. package/property-filter/use-load-items.d.ts.map +1 -1
  906. package/property-filter/use-load-items.js.map +1 -1
  907. package/property-filter/utils.d.ts.map +1 -1
  908. package/property-filter/utils.js.map +1 -1
  909. package/radio-group/index.d.ts.map +1 -1
  910. package/radio-group/index.js.map +1 -1
  911. package/radio-group/interfaces.d.ts.map +1 -1
  912. package/radio-group/interfaces.js.map +1 -1
  913. package/radio-group/internal.d.ts.map +1 -1
  914. package/radio-group/internal.js.map +1 -1
  915. package/radio-group/radio-button.d.ts.map +1 -1
  916. package/radio-group/radio-button.js.map +1 -1
  917. package/s3-resource-selector/index.d.ts.map +1 -1
  918. package/s3-resource-selector/index.js.map +1 -1
  919. package/s3-resource-selector/interfaces.d.ts.map +1 -1
  920. package/s3-resource-selector/interfaces.js.map +1 -1
  921. package/s3-resource-selector/s3-in-context/index.d.ts.map +1 -1
  922. package/s3-resource-selector/s3-in-context/index.js.map +1 -1
  923. package/s3-resource-selector/s3-in-context/search-input.d.ts.map +1 -1
  924. package/s3-resource-selector/s3-in-context/search-input.js.map +1 -1
  925. package/s3-resource-selector/s3-in-context/use-versions-fetch.d.ts.map +1 -1
  926. package/s3-resource-selector/s3-in-context/use-versions-fetch.js.map +1 -1
  927. package/s3-resource-selector/s3-in-context/validation.d.ts.map +1 -1
  928. package/s3-resource-selector/s3-in-context/validation.js.map +1 -1
  929. package/s3-resource-selector/s3-modal/basic-table.d.ts.map +1 -1
  930. package/s3-resource-selector/s3-modal/basic-table.js.map +1 -1
  931. package/s3-resource-selector/s3-modal/buckets-table.d.ts.map +1 -1
  932. package/s3-resource-selector/s3-modal/buckets-table.js.map +1 -1
  933. package/s3-resource-selector/s3-modal/column-formats.d.ts.map +1 -1
  934. package/s3-resource-selector/s3-modal/column-formats.js.map +1 -1
  935. package/s3-resource-selector/s3-modal/empty-state.d.ts.map +1 -1
  936. package/s3-resource-selector/s3-modal/empty-state.js.map +1 -1
  937. package/s3-resource-selector/s3-modal/index.d.ts.map +1 -1
  938. package/s3-resource-selector/s3-modal/index.js.map +1 -1
  939. package/s3-resource-selector/s3-modal/objects-table.d.ts.map +1 -1
  940. package/s3-resource-selector/s3-modal/objects-table.js.map +1 -1
  941. package/s3-resource-selector/s3-modal/table-utils.d.ts.map +1 -1
  942. package/s3-resource-selector/s3-modal/table-utils.js.map +1 -1
  943. package/s3-resource-selector/s3-modal/versions-table.d.ts.map +1 -1
  944. package/s3-resource-selector/s3-modal/versions-table.js.map +1 -1
  945. package/s3-resource-selector/utils.d.ts.map +1 -1
  946. package/s3-resource-selector/utils.js.map +1 -1
  947. package/segmented-control/index.d.ts.map +1 -1
  948. package/segmented-control/index.js.map +1 -1
  949. package/segmented-control/interfaces.d.ts.map +1 -1
  950. package/segmented-control/interfaces.js.map +1 -1
  951. package/segmented-control/internal-segmented-control.d.ts.map +1 -1
  952. package/segmented-control/internal-segmented-control.js.map +1 -1
  953. package/segmented-control/internal.d.ts.map +1 -1
  954. package/segmented-control/internal.js.map +1 -1
  955. package/segmented-control/segment.d.ts.map +1 -1
  956. package/segmented-control/segment.js.map +1 -1
  957. package/select/index.d.ts.map +1 -1
  958. package/select/index.js.map +1 -1
  959. package/select/interfaces.d.ts.map +1 -1
  960. package/select/interfaces.js.map +1 -1
  961. package/select/internal.d.ts.map +1 -1
  962. package/select/internal.js.map +1 -1
  963. package/select/parts/filter.d.ts +1 -1
  964. package/select/parts/filter.d.ts.map +1 -1
  965. package/select/parts/filter.js.map +1 -1
  966. package/select/parts/item.d.ts.map +1 -1
  967. package/select/parts/item.js.map +1 -1
  968. package/select/parts/multiselect-item.d.ts.map +1 -1
  969. package/select/parts/multiselect-item.js.map +1 -1
  970. package/select/parts/plain-list.d.ts.map +1 -1
  971. package/select/parts/plain-list.js.map +1 -1
  972. package/select/parts/trigger.d.ts.map +1 -1
  973. package/select/parts/trigger.js.map +1 -1
  974. package/select/parts/virtual-list.d.ts.map +1 -1
  975. package/select/parts/virtual-list.js.map +1 -1
  976. package/select/utils/check-option-value-field.d.ts.map +1 -1
  977. package/select/utils/check-option-value-field.js.map +1 -1
  978. package/select/utils/connect-options.d.ts.map +1 -1
  979. package/select/utils/connect-options.js.map +1 -1
  980. package/select/utils/get-item-props.d.ts.map +1 -1
  981. package/select/utils/get-item-props.js.map +1 -1
  982. package/select/utils/render-options.d.ts.map +1 -1
  983. package/select/utils/render-options.js.map +1 -1
  984. package/select/utils/use-announcement.d.ts.map +1 -1
  985. package/select/utils/use-announcement.js.map +1 -1
  986. package/select/utils/use-load-items.d.ts.map +1 -1
  987. package/select/utils/use-load-items.js.map +1 -1
  988. package/select/utils/use-native-search.d.ts.map +1 -1
  989. package/select/utils/use-native-search.js.map +1 -1
  990. package/select/utils/use-select.d.ts.map +1 -1
  991. package/select/utils/use-select.js.map +1 -1
  992. package/side-navigation/index.d.ts.map +1 -1
  993. package/side-navigation/index.js.map +1 -1
  994. package/side-navigation/interfaces.d.ts.map +1 -1
  995. package/side-navigation/interfaces.js.map +1 -1
  996. package/side-navigation/internal.d.ts.map +1 -1
  997. package/side-navigation/internal.js.map +1 -1
  998. package/side-navigation/util.d.ts.map +1 -1
  999. package/side-navigation/util.js.map +1 -1
  1000. package/space-between/index.d.ts.map +1 -1
  1001. package/space-between/index.js.map +1 -1
  1002. package/space-between/interfaces.d.ts.map +1 -1
  1003. package/space-between/interfaces.js.map +1 -1
  1004. package/space-between/internal.d.ts.map +1 -1
  1005. package/space-between/internal.js +1 -3
  1006. package/space-between/internal.js.map +1 -1
  1007. package/spinner/index.d.ts.map +1 -1
  1008. package/spinner/index.js.map +1 -1
  1009. package/spinner/interfaces.d.ts.map +1 -1
  1010. package/spinner/interfaces.js.map +1 -1
  1011. package/spinner/internal.d.ts.map +1 -1
  1012. package/spinner/internal.js.map +1 -1
  1013. package/split-panel/bottom.d.ts.map +1 -1
  1014. package/split-panel/bottom.js.map +1 -1
  1015. package/split-panel/icons/bottom-icon-refresh.d.ts.map +1 -1
  1016. package/split-panel/icons/bottom-icon-refresh.js.map +1 -1
  1017. package/split-panel/icons/bottom-icon.d.ts.map +1 -1
  1018. package/split-panel/icons/bottom-icon.js.map +1 -1
  1019. package/split-panel/icons/resize-handler.d.ts.map +1 -1
  1020. package/split-panel/icons/resize-handler.js.map +1 -1
  1021. package/split-panel/icons/side-position-refresh.d.ts.map +1 -1
  1022. package/split-panel/icons/side-position-refresh.js.map +1 -1
  1023. package/split-panel/icons/side-position.d.ts.map +1 -1
  1024. package/split-panel/icons/side-position.js.map +1 -1
  1025. package/split-panel/index.d.ts.map +1 -1
  1026. package/split-panel/index.js.map +1 -1
  1027. package/split-panel/interfaces.d.ts.map +1 -1
  1028. package/split-panel/interfaces.js.map +1 -1
  1029. package/split-panel/preferences-modal.d.ts.map +1 -1
  1030. package/split-panel/preferences-modal.js.map +1 -1
  1031. package/split-panel/side.d.ts.map +1 -1
  1032. package/split-panel/side.js.map +1 -1
  1033. package/split-panel/utils/size-utils.d.ts.map +1 -1
  1034. package/split-panel/utils/size-utils.js.map +1 -1
  1035. package/split-panel/utils/use-keyboard-events.d.ts.map +1 -1
  1036. package/split-panel/utils/use-keyboard-events.js.map +1 -1
  1037. package/split-panel/utils/use-pointer-events.d.ts.map +1 -1
  1038. package/split-panel/utils/use-pointer-events.js.map +1 -1
  1039. package/status-indicator/index.d.ts.map +1 -1
  1040. package/status-indicator/index.js.map +1 -1
  1041. package/status-indicator/internal.d.ts.map +1 -1
  1042. package/status-indicator/internal.js.map +1 -1
  1043. package/table/body-cell/click-away.d.ts.map +1 -1
  1044. package/table/body-cell/click-away.js.map +1 -1
  1045. package/table/body-cell/index.d.ts.map +1 -1
  1046. package/table/body-cell/index.js +5 -17
  1047. package/table/body-cell/index.js.map +1 -1
  1048. package/table/body-cell/inline-editor.d.ts.map +1 -1
  1049. package/table/body-cell/inline-editor.js +1 -1
  1050. package/table/body-cell/inline-editor.js.map +1 -1
  1051. package/table/body-cell/styles.css.js +18 -18
  1052. package/table/body-cell/styles.scoped.css +50 -50
  1053. package/table/body-cell/styles.selectors.js +18 -18
  1054. package/table/body-cell/td-element.d.ts.map +1 -1
  1055. package/table/body-cell/td-element.js.map +1 -1
  1056. package/table/header-cell/index.d.ts.map +1 -1
  1057. package/table/header-cell/index.js.map +1 -1
  1058. package/table/header-cell/utils.d.ts.map +1 -1
  1059. package/table/header-cell/utils.js.map +1 -1
  1060. package/table/index.d.ts.map +1 -1
  1061. package/table/index.js.map +1 -1
  1062. package/table/interfaces.d.ts.map +1 -1
  1063. package/table/interfaces.js.map +1 -1
  1064. package/table/internal.d.ts.map +1 -1
  1065. package/table/internal.js.map +1 -1
  1066. package/table/resizer/index.d.ts.map +1 -1
  1067. package/table/resizer/index.js.map +1 -1
  1068. package/table/selection-control/index.d.ts.map +1 -1
  1069. package/table/selection-control/index.js.map +1 -1
  1070. package/table/sticky-header.d.ts.map +1 -1
  1071. package/table/sticky-header.js.map +1 -1
  1072. package/table/sticky-scrollbar.d.ts.map +1 -1
  1073. package/table/sticky-scrollbar.js.map +1 -1
  1074. package/table/sticky-scrolling.d.ts.map +1 -1
  1075. package/table/sticky-scrolling.js.map +1 -1
  1076. package/table/thead.d.ts.map +1 -1
  1077. package/table/thead.js.map +1 -1
  1078. package/table/tools-header.d.ts.map +1 -1
  1079. package/table/tools-header.js.map +1 -1
  1080. package/table/use-column-widths.d.ts.map +1 -1
  1081. package/table/use-column-widths.js.map +1 -1
  1082. package/table/use-row-events.d.ts.map +1 -1
  1083. package/table/use-row-events.js.map +1 -1
  1084. package/table/use-selection.d.ts.map +1 -1
  1085. package/table/use-selection.js.map +1 -1
  1086. package/table/use-sticky-header.d.ts.map +1 -1
  1087. package/table/use-sticky-header.js.map +1 -1
  1088. package/table/use-sticky-scrollbar.d.ts.map +1 -1
  1089. package/table/use-sticky-scrollbar.js.map +1 -1
  1090. package/table/use-table-focus-navigation.d.ts.map +1 -1
  1091. package/table/use-table-focus-navigation.js +5 -1
  1092. package/table/use-table-focus-navigation.js.map +1 -1
  1093. package/table/utils.d.ts.map +1 -1
  1094. package/table/utils.js.map +1 -1
  1095. package/tabs/index.d.ts.map +1 -1
  1096. package/tabs/index.js.map +1 -1
  1097. package/tabs/interfaces.d.ts.map +1 -1
  1098. package/tabs/interfaces.js.map +1 -1
  1099. package/tabs/native-smooth-scroll-supported.d.ts.map +1 -1
  1100. package/tabs/native-smooth-scroll-supported.js.map +1 -1
  1101. package/tabs/scroll-utils.d.ts.map +1 -1
  1102. package/tabs/scroll-utils.js.map +1 -1
  1103. package/tabs/smooth-scroll.d.ts.map +1 -1
  1104. package/tabs/smooth-scroll.js.map +1 -1
  1105. package/tabs/tab-header-bar.d.ts.map +1 -1
  1106. package/tabs/tab-header-bar.js.map +1 -1
  1107. package/tag-editor/index.d.ts.map +1 -1
  1108. package/tag-editor/index.js +25 -2
  1109. package/tag-editor/index.js.map +1 -1
  1110. package/tag-editor/interfaces.d.ts.map +1 -1
  1111. package/tag-editor/interfaces.js.map +1 -1
  1112. package/tag-editor/internal.d.ts.map +1 -1
  1113. package/tag-editor/internal.js.map +1 -1
  1114. package/tag-editor/utils.d.ts.map +1 -1
  1115. package/tag-editor/utils.js.map +1 -1
  1116. package/tag-editor/validation.d.ts.map +1 -1
  1117. package/tag-editor/validation.js.map +1 -1
  1118. package/test-utils/dom/property-filter/index.js +4 -2
  1119. package/test-utils/dom/property-filter/index.js.map +1 -1
  1120. package/test-utils/dom/token-group/index.js +3 -3
  1121. package/test-utils/dom/token-group/index.js.map +1 -1
  1122. package/test-utils/selectors/property-filter/index.js +4 -2
  1123. package/test-utils/selectors/property-filter/index.js.map +1 -1
  1124. package/test-utils/selectors/token-group/index.js +3 -3
  1125. package/test-utils/selectors/token-group/index.js.map +1 -1
  1126. package/test-utils/tsconfig.tsbuildinfo +1 -1
  1127. package/text-content/index.d.ts.map +1 -1
  1128. package/text-content/index.js.map +1 -1
  1129. package/text-content/interfaces.d.ts.map +1 -1
  1130. package/text-content/interfaces.js.map +1 -1
  1131. package/text-filter/index.d.ts.map +1 -1
  1132. package/text-filter/index.js.map +1 -1
  1133. package/text-filter/interfaces.d.ts.map +1 -1
  1134. package/text-filter/interfaces.js.map +1 -1
  1135. package/text-filter/internal.d.ts.map +1 -1
  1136. package/text-filter/internal.js +4 -8
  1137. package/text-filter/internal.js.map +1 -1
  1138. package/text-filter/search-results.d.ts +8 -0
  1139. package/text-filter/search-results.d.ts.map +1 -0
  1140. package/text-filter/search-results.js +13 -0
  1141. package/text-filter/search-results.js.map +1 -0
  1142. package/text-filter/styles.css.js +3 -4
  1143. package/text-filter/styles.scoped.css +3 -5
  1144. package/text-filter/styles.selectors.js +3 -4
  1145. package/textarea/index.d.ts.map +1 -1
  1146. package/textarea/index.js.map +1 -1
  1147. package/textarea/interfaces.d.ts.map +1 -1
  1148. package/textarea/interfaces.js.map +1 -1
  1149. package/theming/index.d.ts.map +1 -1
  1150. package/theming/index.js.map +1 -1
  1151. package/tiles/index.d.ts.map +1 -1
  1152. package/tiles/index.js.map +1 -1
  1153. package/tiles/interfaces.d.ts.map +1 -1
  1154. package/tiles/interfaces.js.map +1 -1
  1155. package/tiles/internal.d.ts.map +1 -1
  1156. package/tiles/internal.js.map +1 -1
  1157. package/tiles/tile.d.ts.map +1 -1
  1158. package/tiles/tile.js.map +1 -1
  1159. package/time-input/index.d.ts.map +1 -1
  1160. package/time-input/index.js.map +1 -1
  1161. package/time-input/interfaces.d.ts.map +1 -1
  1162. package/time-input/interfaces.js.map +1 -1
  1163. package/time-input/internal.d.ts.map +1 -1
  1164. package/time-input/internal.js.map +1 -1
  1165. package/toggle/index.d.ts.map +1 -1
  1166. package/toggle/index.js.map +1 -1
  1167. package/toggle/interfaces.d.ts.map +1 -1
  1168. package/toggle/interfaces.js.map +1 -1
  1169. package/toggle/internal.d.ts.map +1 -1
  1170. package/toggle/internal.js.map +1 -1
  1171. package/token-group/dismiss-button.d.ts +3 -3
  1172. package/token-group/dismiss-button.d.ts.map +1 -1
  1173. package/token-group/dismiss-button.js +4 -13
  1174. package/token-group/dismiss-button.js.map +1 -1
  1175. package/token-group/index.d.ts.map +1 -1
  1176. package/token-group/index.js.map +1 -1
  1177. package/token-group/interfaces.d.ts.map +1 -1
  1178. package/token-group/interfaces.js.map +1 -1
  1179. package/token-group/internal.d.ts +1 -1
  1180. package/token-group/internal.d.ts.map +1 -1
  1181. package/token-group/internal.js +16 -10
  1182. package/token-group/internal.js.map +1 -1
  1183. package/token-group/styles.css.js +5 -7
  1184. package/token-group/styles.scoped.css +13 -108
  1185. package/token-group/styles.selectors.js +5 -7
  1186. package/token-group/token.d.ts +13 -0
  1187. package/token-group/token.d.ts.map +1 -0
  1188. package/token-group/token.js +12 -0
  1189. package/token-group/token.js.map +1 -0
  1190. package/top-navigation/1.0-beta/index.d.ts.map +1 -1
  1191. package/top-navigation/1.0-beta/index.js.map +1 -1
  1192. package/top-navigation/1.0-beta/interfaces.d.ts.map +1 -1
  1193. package/top-navigation/1.0-beta/interfaces.js.map +1 -1
  1194. package/top-navigation/1.0-beta/internal.d.ts.map +1 -1
  1195. package/top-navigation/1.0-beta/internal.js.map +1 -1
  1196. package/top-navigation/1.0-beta/parts/overflow-menu.d.ts.map +1 -1
  1197. package/top-navigation/1.0-beta/parts/overflow-menu.js.map +1 -1
  1198. package/top-navigation/1.0-beta/parts/utility.d.ts.map +1 -1
  1199. package/top-navigation/1.0-beta/parts/utility.js.map +1 -1
  1200. package/top-navigation/1.0-beta/use-top-navigation.d.ts.map +1 -1
  1201. package/top-navigation/1.0-beta/use-top-navigation.js.map +1 -1
  1202. package/top-navigation/index.d.ts.map +1 -1
  1203. package/top-navigation/index.js.map +1 -1
  1204. package/top-navigation/interfaces.d.ts.map +1 -1
  1205. package/top-navigation/interfaces.js.map +1 -1
  1206. package/top-navigation/internal.d.ts.map +1 -1
  1207. package/top-navigation/internal.js.map +1 -1
  1208. package/top-navigation/parts/overflow-menu/header.d.ts.map +1 -1
  1209. package/top-navigation/parts/overflow-menu/header.js.map +1 -1
  1210. package/top-navigation/parts/overflow-menu/index.d.ts.map +1 -1
  1211. package/top-navigation/parts/overflow-menu/index.js.map +1 -1
  1212. package/top-navigation/parts/overflow-menu/menu-item.d.ts.map +1 -1
  1213. package/top-navigation/parts/overflow-menu/menu-item.js.map +1 -1
  1214. package/top-navigation/parts/overflow-menu/router.d.ts.map +1 -1
  1215. package/top-navigation/parts/overflow-menu/router.js.map +1 -1
  1216. package/top-navigation/parts/overflow-menu/views/submenu.d.ts.map +1 -1
  1217. package/top-navigation/parts/overflow-menu/views/submenu.js.map +1 -1
  1218. package/top-navigation/parts/overflow-menu/views/utilities.d.ts.map +1 -1
  1219. package/top-navigation/parts/overflow-menu/views/utilities.js.map +1 -1
  1220. package/top-navigation/parts/utility.d.ts.map +1 -1
  1221. package/top-navigation/parts/utility.js.map +1 -1
  1222. package/top-navigation/use-top-navigation.d.ts.map +1 -1
  1223. package/top-navigation/use-top-navigation.js.map +1 -1
  1224. package/tutorial-panel/components/tutorial-detail-view/congratulation-screen.d.ts.map +1 -1
  1225. package/tutorial-panel/components/tutorial-detail-view/congratulation-screen.js.map +1 -1
  1226. package/tutorial-panel/components/tutorial-detail-view/index.d.ts.map +1 -1
  1227. package/tutorial-panel/components/tutorial-detail-view/index.js.map +1 -1
  1228. package/tutorial-panel/components/tutorial-detail-view/task-list.d.ts.map +1 -1
  1229. package/tutorial-panel/components/tutorial-detail-view/task-list.js.map +1 -1
  1230. package/tutorial-panel/components/tutorial-detail-view/task.d.ts.map +1 -1
  1231. package/tutorial-panel/components/tutorial-detail-view/task.js.map +1 -1
  1232. package/tutorial-panel/components/tutorial-list/index.d.ts.map +1 -1
  1233. package/tutorial-panel/components/tutorial-list/index.js.map +1 -1
  1234. package/tutorial-panel/index.d.ts.map +1 -1
  1235. package/tutorial-panel/index.js.map +1 -1
  1236. package/tutorial-panel/interfaces.d.ts.map +1 -1
  1237. package/tutorial-panel/interfaces.js.map +1 -1
  1238. package/wizard/index.d.ts.map +1 -1
  1239. package/wizard/index.js.map +1 -1
  1240. package/wizard/interfaces.d.ts.map +1 -1
  1241. package/wizard/interfaces.js.map +1 -1
  1242. package/wizard/internal/analytics.d.ts.map +1 -1
  1243. package/wizard/internal/analytics.js.map +1 -1
  1244. package/wizard/unmount.d.ts.map +1 -1
  1245. package/wizard/unmount.js.map +1 -1
  1246. package/wizard/wizard-actions.d.ts.map +1 -1
  1247. package/wizard/wizard-actions.js.map +1 -1
  1248. package/wizard/wizard-form-header.d.ts.map +1 -1
  1249. package/wizard/wizard-form-header.js.map +1 -1
  1250. package/wizard/wizard-form.d.ts.map +1 -1
  1251. package/wizard/wizard-form.js.map +1 -1
  1252. package/wizard/wizard-navigation.d.ts.map +1 -1
  1253. package/wizard/wizard-navigation.js.map +1 -1
  1254. package/table/body-cell/use-stable-scroll-position.d.ts +0 -17
  1255. package/table/body-cell/use-stable-scroll-position.d.ts.map +0 -1
  1256. package/table/body-cell/use-stable-scroll-position.js +0 -51
  1257. package/table/body-cell/use-stable-scroll-position.js.map +0 -1
  1258. package/token-group/generic-token-group.d.ts +0 -24
  1259. package/token-group/generic-token-group.d.ts.map +0 -1
  1260. package/token-group/generic-token-group.js +0 -31
  1261. package/token-group/generic-token-group.js.map +0 -1
  1262. package/token-group/toggle.d.ts +0 -14
  1263. package/token-group/toggle.d.ts.map +0 -1
  1264. package/token-group/toggle.js.map +0 -1
@@ -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';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\n\nimport { useContainerBreakpoints, useContainerQuery } from '../internal/hooks/container-queries';\nimport { TopNavigationProps } from './interfaces';\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":"lib/default/","sources":["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';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\n\nimport { useContainerBreakpoints, useContainerQuery } from '../internal/hooks/container-queries';\nimport { TopNavigationProps } from './interfaces';\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 +1 @@
1
- {"version":3,"file":"congratulation-screen.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/congratulation-screen.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAOtD,UAAU,yBAAyB;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,yBAAyB,eA+BzG"}
1
+ {"version":3,"file":"congratulation-screen.d.ts","sourceRoot":"lib/default/","sources":["tutorial-panel/components/tutorial-detail-view/congratulation-screen.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAOtD,UAAU,yBAAyB;IACjC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAC;IAC1B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,wBAAgB,oBAAoB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAAE,EAAE,yBAAyB,eA+BzG"}
@@ -1 +1 @@
1
- {"version":3,"file":"congratulation-screen.js","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/congratulation-screen.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AACzE,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AACnE,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAQhD,MAAM,UAAU,oBAAoB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAA6B;IACxG,OAAO,CACL,oBAAC,oBAAoB,IAAC,IAAI,EAAC,KAAK;QAC9B,oBAAC,oBAAoB,IAAC,IAAI,EAAC,IAAI;YAC7B,6BAAK,SAAS,EAAE,MAAM,CAAC,wBAAwB,CAAC;gBAC9C,oBAAC,uBAAuB,IACtB,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,EACd,SAAS,EAAE,MAAM,CAAC,gCAAgC,CAAC,GACnD;gBACF,6BAAK,SAAS,EAAE,MAAM,CAAC,yBAAyB,CAAC,IAAG,WAAW,CAAC,qBAAqB,CAAO,CACxF;YACN,oBAAC,WAAW,IAAC,KAAK,EAAC,qBAAqB;gBACtC,6BACE,SAAS,EAAE,IAAI,CAAC;wBACd,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,EAAE,IAAI;wBAC/C,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC,EAAE,OAAO,QAAQ,KAAK,QAAQ;qBAC/E,CAAC,IAED,QAAQ,CACL,CACM,CACO;QAEvB,6BAAK,SAAS,EAAE,MAAM,CAAC,OAAO,GAAI;QAElC,oBAAC,YAAY,IAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,IACxE,WAAW,CAAC,gBAAgB,CAChB,CACM,CACxB,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\nimport styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport InternalLink from '../../../link/internal';\nimport clsx from 'clsx';\nimport InternalBox from '../../../box/internal';\n\ninterface CongratulationScreenProps {\n children: React.ReactNode;\n onFeedbackClick: () => void;\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}\n\nexport function CongratulationScreen({ children, onFeedbackClick, i18nStrings }: CongratulationScreenProps) {\n return (\n <InternalSpaceBetween size=\"xxl\">\n <InternalSpaceBetween size=\"xl\">\n <div className={styles['congratulation-message']}>\n <InternalStatusIndicator\n __size=\"inherit\"\n type=\"success\"\n className={styles['congratulation-message--status']}\n />\n <div className={styles['completion-screen-title']}>{i18nStrings.completionScreenTitle}</div>\n </div>\n <InternalBox color=\"text-body-secondary\">\n <div\n className={clsx({\n [styles['completion-screen-description']]: true,\n [styles['plaintext-congratulation-description']]: typeof children === 'string',\n })}\n >\n {children}\n </div>\n </InternalBox>\n </InternalSpaceBetween>\n\n <div className={styles.divider} />\n\n <InternalLink onFollow={onFeedbackClick} className={styles['feedback-link']}>\n {i18nStrings.feedbackLinkText}\n </InternalLink>\n </InternalSpaceBetween>\n );\n}\n"]}
1
+ {"version":3,"file":"congratulation-screen.js","sourceRoot":"lib/default/","sources":["tutorial-panel/components/tutorial-detail-view/congratulation-screen.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,OAAO,uBAAuB,MAAM,oCAAoC,CAAC;AACzE,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AACnE,OAAO,YAAY,MAAM,wBAAwB,CAAC;AAClD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAQhD,MAAM,UAAU,oBAAoB,CAAC,EAAE,QAAQ,EAAE,eAAe,EAAE,WAAW,EAA6B;IACxG,OAAO,CACL,oBAAC,oBAAoB,IAAC,IAAI,EAAC,KAAK;QAC9B,oBAAC,oBAAoB,IAAC,IAAI,EAAC,IAAI;YAC7B,6BAAK,SAAS,EAAE,MAAM,CAAC,wBAAwB,CAAC;gBAC9C,oBAAC,uBAAuB,IACtB,MAAM,EAAC,SAAS,EAChB,IAAI,EAAC,SAAS,EACd,SAAS,EAAE,MAAM,CAAC,gCAAgC,CAAC,GACnD;gBACF,6BAAK,SAAS,EAAE,MAAM,CAAC,yBAAyB,CAAC,IAAG,WAAW,CAAC,qBAAqB,CAAO,CACxF;YACN,oBAAC,WAAW,IAAC,KAAK,EAAC,qBAAqB;gBACtC,6BACE,SAAS,EAAE,IAAI,CAAC;wBACd,CAAC,MAAM,CAAC,+BAA+B,CAAC,CAAC,EAAE,IAAI;wBAC/C,CAAC,MAAM,CAAC,sCAAsC,CAAC,CAAC,EAAE,OAAO,QAAQ,KAAK,QAAQ;qBAC/E,CAAC,IAED,QAAQ,CACL,CACM,CACO;QAEvB,6BAAK,SAAS,EAAE,MAAM,CAAC,OAAO,GAAI;QAElC,oBAAC,YAAY,IAAC,QAAQ,EAAE,eAAe,EAAE,SAAS,EAAE,MAAM,CAAC,eAAe,CAAC,IACxE,WAAW,CAAC,gBAAgB,CAChB,CACM,CACxB,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\nimport styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport InternalLink from '../../../link/internal';\nimport clsx from 'clsx';\nimport InternalBox from '../../../box/internal';\n\ninterface CongratulationScreenProps {\n children: React.ReactNode;\n onFeedbackClick: () => void;\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}\n\nexport function CongratulationScreen({ children, onFeedbackClick, i18nStrings }: CongratulationScreenProps) {\n return (\n <InternalSpaceBetween size=\"xxl\">\n <InternalSpaceBetween size=\"xl\">\n <div className={styles['congratulation-message']}>\n <InternalStatusIndicator\n __size=\"inherit\"\n type=\"success\"\n className={styles['congratulation-message--status']}\n />\n <div className={styles['completion-screen-title']}>{i18nStrings.completionScreenTitle}</div>\n </div>\n <InternalBox color=\"text-body-secondary\">\n <div\n className={clsx({\n [styles['completion-screen-description']]: true,\n [styles['plaintext-congratulation-description']]: typeof children === 'string',\n })}\n >\n {children}\n </div>\n </InternalBox>\n </InternalSpaceBetween>\n\n <div className={styles.divider} />\n\n <InternalLink onFollow={onFeedbackClick} className={styles['feedback-link']}>\n {i18nStrings.feedbackLinkText}\n </InternalLink>\n </InternalSpaceBetween>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/index.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAMtD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAKrE,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,cAAc,EAAE,qBAAqB,EACrC,gBAAoB,EACpB,eAAe,EAAE,sBAAsB,EACvC,WAAW,GACZ,EAAE;IACD,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC;IACtC,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAC;IACjD,gBAAgB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;IACrD,eAAe,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IACvD,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD,eAoDA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["tutorial-panel/components/tutorial-detail-view/index.tsx"],"names":[],"mappings":";AAGA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAMtD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAKrE,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,cAAc,EAAE,qBAAqB,EACrC,gBAAoB,EACpB,eAAe,EAAE,sBAAsB,EACvC,WAAW,GACZ,EAAE;IACD,QAAQ,EAAE,kBAAkB,CAAC,QAAQ,CAAC;IACtC,cAAc,EAAE,cAAc,CAAC,gBAAgB,CAAC,CAAC;IACjD,gBAAgB,EAAE,cAAc,CAAC,kBAAkB,CAAC,CAAC;IACrD,eAAe,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,CAAC;IACvD,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD,eAoDA"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AACnE,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAE3E,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,cAAc,EAAE,qBAAqB,EACrC,gBAAgB,GAAG,CAAC,EACpB,eAAe,EAAE,sBAAsB,EACvC,WAAW,GAOZ;IACC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IAErC,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,sBAAsB,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEtC,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,sBAAsB,CAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/D,CAAC,EAAE,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvC,OAAO,CACL;QACE,oBAAC,oBAAoB,IAAC,IAAI,EAAC,IAAI;YAC7B,6BAAK,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC;gBACtC,oBAAC,cAAc,IACb,OAAO,EAAC,MAAM,EACd,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,WAAW,CAAC,iBAAiB,EACxC,UAAU,EAAC,MAAM,EACjB,QAAQ,EAAC,YAAY,GACrB;gBAEF,oBAAC,WAAW,IACV,OAAO,EAAC,IAAI,EACZ,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAC/C,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EACvB,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAEpB,QAAQ,CAAC,KAAK,CACH,CACV;YACN;gBACE,6BAAK,IAAI,EAAC,QAAQ,IACf,QAAQ,CAAC,SAAS,IAAI,CACrB,oBAAC,oBAAoB,IAAC,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,IAC7E,QAAQ,CAAC,0BAA0B,CACf,CACxB,CACG;gBACL,CAAC,QAAQ,CAAC,SAAS,IAAI,CACtB,oBAAC,QAAQ,IACP,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,cAAc,EAAE,cAAc,EAC9B,sBAAsB,EAAE,gBAAgB,EACxC,WAAW,EAAE,WAAW,GACxB,CACH,CACG,CACe,CACtB,CACJ,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useCallback } from 'react';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport styles from './styles.css.js';\nimport { fireNonCancelableEvent } from '../../../internal/events/index';\nimport { HotspotContext } from '../../../annotation-context/context';\nimport { CongratulationScreen } from './congratulation-screen';\nimport { TaskList } from './task-list';\nimport { useVisualRefresh } from '../../../internal/hooks/use-visual-mode';\n\nexport default function TutorialDetailView({\n tutorial,\n onExitTutorial: onExitTutorialHandler,\n currentStepIndex = 0,\n onFeedbackClick: onFeedbackClickHandler,\n i18nStrings,\n}: {\n tutorial: TutorialPanelProps.Tutorial;\n onExitTutorial: HotspotContext['onExitTutorial'];\n currentStepIndex: HotspotContext['currentStepIndex'];\n onFeedbackClick: TutorialPanelProps['onFeedbackClick'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}) {\n const isRefresh = useVisualRefresh();\n\n const onExitTutorial = useCallback(() => {\n fireNonCancelableEvent(onExitTutorialHandler, { tutorial });\n }, [onExitTutorialHandler, tutorial]);\n\n const onFeedbackClick = useCallback(() => {\n fireNonCancelableEvent(onFeedbackClickHandler, { tutorial });\n }, [onFeedbackClickHandler, tutorial]);\n\n return (\n <>\n <InternalSpaceBetween size=\"xl\">\n <div className={styles['tutorial-title']}>\n <InternalButton\n variant=\"icon\"\n onClick={onExitTutorial}\n ariaLabel={i18nStrings.labelExitTutorial}\n formAction=\"none\"\n iconName=\"arrow-left\"\n />\n\n <InternalBox\n variant=\"h2\"\n fontSize={isRefresh ? 'heading-m' : 'heading-l'}\n padding={{ top: 'xxs' }}\n margin={{ left: 's' }}\n >\n {tutorial.title}\n </InternalBox>\n </div>\n <div>\n <div role=\"status\">\n {tutorial.completed && (\n <CongratulationScreen onFeedbackClick={onFeedbackClick} i18nStrings={i18nStrings}>\n {tutorial.completedScreenDescription}\n </CongratulationScreen>\n )}\n </div>\n {!tutorial.completed && (\n <TaskList\n tasks={tutorial.tasks}\n onExitTutorial={onExitTutorial}\n currentGlobalStepIndex={currentStepIndex}\n i18nStrings={i18nStrings}\n />\n )}\n </div>\n </InternalSpaceBetween>\n </>\n );\n}\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["tutorial-panel/components/tutorial-detail-view/index.tsx"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAE3C,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AACnE,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,sBAAsB,EAAE,MAAM,gCAAgC,CAAC;AAExE,OAAO,EAAE,oBAAoB,EAAE,MAAM,yBAAyB,CAAC;AAC/D,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,gBAAgB,EAAE,MAAM,yCAAyC,CAAC;AAE3E,MAAM,CAAC,OAAO,UAAU,kBAAkB,CAAC,EACzC,QAAQ,EACR,cAAc,EAAE,qBAAqB,EACrC,gBAAgB,GAAG,CAAC,EACpB,eAAe,EAAE,sBAAsB,EACvC,WAAW,GAOZ;IACC,MAAM,SAAS,GAAG,gBAAgB,EAAE,CAAC;IAErC,MAAM,cAAc,GAAG,WAAW,CAAC,GAAG,EAAE;QACtC,sBAAsB,CAAC,qBAAqB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9D,CAAC,EAAE,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEtC,MAAM,eAAe,GAAG,WAAW,CAAC,GAAG,EAAE;QACvC,sBAAsB,CAAC,sBAAsB,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC/D,CAAC,EAAE,CAAC,sBAAsB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEvC,OAAO,CACL;QACE,oBAAC,oBAAoB,IAAC,IAAI,EAAC,IAAI;YAC7B,6BAAK,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC;gBACtC,oBAAC,cAAc,IACb,OAAO,EAAC,MAAM,EACd,OAAO,EAAE,cAAc,EACvB,SAAS,EAAE,WAAW,CAAC,iBAAiB,EACxC,UAAU,EAAC,MAAM,EACjB,QAAQ,EAAC,YAAY,GACrB;gBAEF,oBAAC,WAAW,IACV,OAAO,EAAC,IAAI,EACZ,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,EAC/C,OAAO,EAAE,EAAE,GAAG,EAAE,KAAK,EAAE,EACvB,MAAM,EAAE,EAAE,IAAI,EAAE,GAAG,EAAE,IAEpB,QAAQ,CAAC,KAAK,CACH,CACV;YACN;gBACE,6BAAK,IAAI,EAAC,QAAQ,IACf,QAAQ,CAAC,SAAS,IAAI,CACrB,oBAAC,oBAAoB,IAAC,eAAe,EAAE,eAAe,EAAE,WAAW,EAAE,WAAW,IAC7E,QAAQ,CAAC,0BAA0B,CACf,CACxB,CACG;gBACL,CAAC,QAAQ,CAAC,SAAS,IAAI,CACtB,oBAAC,QAAQ,IACP,KAAK,EAAE,QAAQ,CAAC,KAAK,EACrB,cAAc,EAAE,cAAc,EAC9B,sBAAsB,EAAE,gBAAgB,EACxC,WAAW,EAAE,WAAW,GACxB,CACH,CACG,CACe,CACtB,CACJ,CAAC;AACJ,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useCallback } from 'react';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport styles from './styles.css.js';\nimport { fireNonCancelableEvent } from '../../../internal/events/index';\nimport { HotspotContext } from '../../../annotation-context/context';\nimport { CongratulationScreen } from './congratulation-screen';\nimport { TaskList } from './task-list';\nimport { useVisualRefresh } from '../../../internal/hooks/use-visual-mode';\n\nexport default function TutorialDetailView({\n tutorial,\n onExitTutorial: onExitTutorialHandler,\n currentStepIndex = 0,\n onFeedbackClick: onFeedbackClickHandler,\n i18nStrings,\n}: {\n tutorial: TutorialPanelProps.Tutorial;\n onExitTutorial: HotspotContext['onExitTutorial'];\n currentStepIndex: HotspotContext['currentStepIndex'];\n onFeedbackClick: TutorialPanelProps['onFeedbackClick'];\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}) {\n const isRefresh = useVisualRefresh();\n\n const onExitTutorial = useCallback(() => {\n fireNonCancelableEvent(onExitTutorialHandler, { tutorial });\n }, [onExitTutorialHandler, tutorial]);\n\n const onFeedbackClick = useCallback(() => {\n fireNonCancelableEvent(onFeedbackClickHandler, { tutorial });\n }, [onFeedbackClickHandler, tutorial]);\n\n return (\n <>\n <InternalSpaceBetween size=\"xl\">\n <div className={styles['tutorial-title']}>\n <InternalButton\n variant=\"icon\"\n onClick={onExitTutorial}\n ariaLabel={i18nStrings.labelExitTutorial}\n formAction=\"none\"\n iconName=\"arrow-left\"\n />\n\n <InternalBox\n variant=\"h2\"\n fontSize={isRefresh ? 'heading-m' : 'heading-l'}\n padding={{ top: 'xxs' }}\n margin={{ left: 's' }}\n >\n {tutorial.title}\n </InternalBox>\n </div>\n <div>\n <div role=\"status\">\n {tutorial.completed && (\n <CongratulationScreen onFeedbackClick={onFeedbackClick} i18nStrings={i18nStrings}>\n {tutorial.completedScreenDescription}\n </CongratulationScreen>\n )}\n </div>\n {!tutorial.completed && (\n <TaskList\n tasks={tutorial.tasks}\n onExitTutorial={onExitTutorial}\n currentGlobalStepIndex={currentStepIndex}\n i18nStrings={i18nStrings}\n />\n )}\n </div>\n </InternalSpaceBetween>\n </>\n );\n}\n"]}
@@ -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,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAItD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAIrE,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":"lib/default/","sources":["tutorial-panel/components/tutorial-detail-view/task-list.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAItD,OAAO,EAAE,cAAc,EAAE,MAAM,qCAAqC,CAAC;AAIrE,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 +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;AAChE,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAShE,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';\nimport styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport { InternalButton } from '../../../button/internal';\nimport InternalBox from '../../../box/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { HotspotContext } from '../../../annotation-context/context';\nimport { Task } from './task';\nimport { getStepInfo } from '../../../annotation-context/utils';\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":"lib/default/","sources":["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;AAChE,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,OAAO,EAAE,cAAc,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,WAAW,MAAM,uBAAuB,CAAC;AAChD,OAAO,oBAAoB,MAAM,iCAAiC,CAAC;AAEnE,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,mCAAmC,CAAC;AAShE,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';\nimport styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport { InternalButton } from '../../../button/internal';\nimport InternalBox from '../../../box/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { HotspotContext } from '../../../annotation-context/context';\nimport { Task } from './task';\nimport { getStepInfo } from '../../../annotation-context/utils';\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 +1 @@
1
- {"version":3,"file":"task.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/task.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAiBtD,UAAU,SAAS;IACjB,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,wBAAgB,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,SAAS,eA6D3G"}
1
+ {"version":3,"file":"task.d.ts","sourceRoot":"lib/default/","sources":["tutorial-panel/components/tutorial-detail-view/task.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAiBtD,UAAU,SAAS;IACjB,IAAI,EAAE,kBAAkB,CAAC,IAAI,CAAC;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,gBAAgB,EAAE,MAAM,CAAC;IACzB,QAAQ,EAAE,OAAO,CAAC;IAClB,cAAc,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;IACvC,WAAW,EAAE,kBAAkB,CAAC,aAAa,CAAC,CAAC;CAChD;AAED,wBAAgB,IAAI,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,QAAQ,EAAE,cAAc,EAAE,WAAW,EAAE,EAAE,SAAS,eA6D3G"}
@@ -1 +1 @@
1
- {"version":3,"file":"task.js","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-detail-view/task.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 } from 'react';\nimport styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalBox from '../../../box/internal';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport InternalExpandableSection from '../../../expandable-section/internal';\nimport { joinStrings } from '../../../internal/utils/strings/join-strings.js';\n\nfunction getStatusIndicatorType(taskIndex: number, currentTaskIndex: number) {\n if (taskIndex < currentTaskIndex) {\n return 'success';\n }\n if (taskIndex === currentTaskIndex) {\n return 'in-progress';\n }\n return 'pending';\n}\n\ninterface TaskProps {\n task: TutorialPanelProps.Task;\n taskIndex: number;\n currentTaskIndex: number;\n expanded: boolean;\n onToggleExpand: (step: number) => void;\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}\n\nexport function Task({ task, taskIndex, currentTaskIndex, expanded, onToggleExpand, i18nStrings }: TaskProps) {\n const statusIndicatorType = getStatusIndicatorType(taskIndex, currentTaskIndex);\n\n const onExpandChange = useCallback(() => {\n onToggleExpand(taskIndex);\n }, [onToggleExpand, taskIndex]);\n\n return (\n <li className={styles.task}>\n <InternalSpaceBetween size=\"xxs\">\n <div className={styles['task-title']}>\n <InternalStatusIndicator\n __size=\"inherit\"\n type={statusIndicatorType}\n iconAriaLabel={i18nStrings.labelsTaskStatus[statusIndicatorType]}\n className={styles['task-title--status']}\n />\n\n <InternalBox\n variant=\"h3\"\n padding={{ left: 'xxxs', vertical: 'n' }}\n fontSize=\"heading-s\"\n color={taskIndex < currentTaskIndex ? 'text-status-success' : 'text-status-inactive'}\n >\n {i18nStrings.taskTitle(taskIndex, task.title)}\n </InternalBox>\n </div>\n\n <div className={styles['expandable-section-wrapper']}>\n <InternalExpandableSection\n headerText={\n <span className={styles['expandable-section-header']}>\n {i18nStrings.labelTotalSteps(task.steps.length)}\n </span>\n }\n expanded={expanded}\n onChange={onExpandChange}\n headerAriaLabel={joinStrings(\n i18nStrings.taskTitle(taskIndex, task.title),\n i18nStrings.labelTotalSteps(task.steps.length)\n )}\n >\n <ol className={styles['step-list']}>\n {task.steps.map((step, stepIndex) => (\n <li key={stepIndex} className={styles.step}>\n <InternalBox\n color=\"text-body-secondary\"\n fontSize=\"body-m\"\n padding={{ left: 'l' }}\n className={styles['step-title']}\n >\n {i18nStrings.stepTitle(stepIndex, step.title)}\n </InternalBox>\n </li>\n ))}\n </ol>\n </InternalExpandableSection>\n </div>\n </InternalSpaceBetween>\n </li>\n );\n}\n"]}
1
+ {"version":3,"file":"task.js","sourceRoot":"lib/default/","sources":["tutorial-panel/components/tutorial-detail-view/task.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 } from 'react';\nimport styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalBox from '../../../box/internal';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport InternalExpandableSection from '../../../expandable-section/internal';\nimport { joinStrings } from '../../../internal/utils/strings/join-strings.js';\n\nfunction getStatusIndicatorType(taskIndex: number, currentTaskIndex: number) {\n if (taskIndex < currentTaskIndex) {\n return 'success';\n }\n if (taskIndex === currentTaskIndex) {\n return 'in-progress';\n }\n return 'pending';\n}\n\ninterface TaskProps {\n task: TutorialPanelProps.Task;\n taskIndex: number;\n currentTaskIndex: number;\n expanded: boolean;\n onToggleExpand: (step: number) => void;\n i18nStrings: TutorialPanelProps['i18nStrings'];\n}\n\nexport function Task({ task, taskIndex, currentTaskIndex, expanded, onToggleExpand, i18nStrings }: TaskProps) {\n const statusIndicatorType = getStatusIndicatorType(taskIndex, currentTaskIndex);\n\n const onExpandChange = useCallback(() => {\n onToggleExpand(taskIndex);\n }, [onToggleExpand, taskIndex]);\n\n return (\n <li className={styles.task}>\n <InternalSpaceBetween size=\"xxs\">\n <div className={styles['task-title']}>\n <InternalStatusIndicator\n __size=\"inherit\"\n type={statusIndicatorType}\n iconAriaLabel={i18nStrings.labelsTaskStatus[statusIndicatorType]}\n className={styles['task-title--status']}\n />\n\n <InternalBox\n variant=\"h3\"\n padding={{ left: 'xxxs', vertical: 'n' }}\n fontSize=\"heading-s\"\n color={taskIndex < currentTaskIndex ? 'text-status-success' : 'text-status-inactive'}\n >\n {i18nStrings.taskTitle(taskIndex, task.title)}\n </InternalBox>\n </div>\n\n <div className={styles['expandable-section-wrapper']}>\n <InternalExpandableSection\n headerText={\n <span className={styles['expandable-section-header']}>\n {i18nStrings.labelTotalSteps(task.steps.length)}\n </span>\n }\n expanded={expanded}\n onChange={onExpandChange}\n headerAriaLabel={joinStrings(\n i18nStrings.taskTitle(taskIndex, task.title),\n i18nStrings.labelTotalSteps(task.steps.length)\n )}\n >\n <ol className={styles['step-list']}>\n {task.steps.map((step, stepIndex) => (\n <li key={stepIndex} className={styles.step}>\n <InternalBox\n color=\"text-body-secondary\"\n fontSize=\"body-m\"\n padding={{ left: 'l' }}\n className={styles['step-title']}\n >\n {i18nStrings.stepTitle(stepIndex, step.title)}\n </InternalBox>\n </li>\n ))}\n </ol>\n </InternalExpandableSection>\n </div>\n </InternalSpaceBetween>\n </li>\n );\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/tutorial-panel/components/tutorial-list/index.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAWtD,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAOxE,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,eAgDnB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["tutorial-panel/components/tutorial-list/index.tsx"],"names":[],"mappings":";AAIA,OAAO,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAWtD,OAAO,EAAE,cAAc,EAAE,MAAM,wCAAwC,CAAC;AAOxE,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,eAgDnB"}
@@ -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 styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { fireNonCancelableEvent } from '../../../internal/events/index.js';\nimport clsx from 'clsx';\nimport InternalAlert from '../../../alert/internal';\nimport InternalLink from '../../../link/internal';\nimport { useUniqueId } from '../../../internal/hooks/use-unique-id/index.js';\nimport { CSSTransition } from 'react-transition-group';\nimport { HotspotContext } from '../../../annotation-context/context.js';\nimport InternalIcon from '../../../icon/internal';\nimport useFocusVisible from '../../../internal/hooks/focus-visible/index.js';\nimport { useVisualRefresh } from '../../../internal/hooks/use-visual-mode';\nimport { checkSafeUrl } from '../../../internal/utils/check-safe-url';\nimport LiveRegion from '../../../internal/components/live-region/index.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 focusVisible = useFocusVisible();\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 {...focusVisible}\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 <LiveRegion visible={true}>{i18nStrings.loadingText}</LiveRegion>\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 >\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":"lib/default/","sources":["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 styles from './styles.css.js';\nimport { TutorialPanelProps } from '../../interfaces';\nimport InternalBox from '../../../box/internal';\nimport { InternalButton } from '../../../button/internal';\nimport InternalStatusIndicator from '../../../status-indicator/internal';\nimport InternalSpaceBetween from '../../../space-between/internal';\nimport { fireNonCancelableEvent } from '../../../internal/events/index.js';\nimport clsx from 'clsx';\nimport InternalAlert from '../../../alert/internal';\nimport InternalLink from '../../../link/internal';\nimport { useUniqueId } from '../../../internal/hooks/use-unique-id/index.js';\nimport { CSSTransition } from 'react-transition-group';\nimport { HotspotContext } from '../../../annotation-context/context.js';\nimport InternalIcon from '../../../icon/internal';\nimport useFocusVisible from '../../../internal/hooks/focus-visible/index.js';\nimport { useVisualRefresh } from '../../../internal/hooks/use-visual-mode';\nimport { checkSafeUrl } from '../../../internal/utils/check-safe-url';\nimport LiveRegion from '../../../internal/components/live-region/index.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 focusVisible = useFocusVisible();\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 {...focusVisible}\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 <LiveRegion visible={true}>{i18nStrings.loadingText}</LiveRegion>\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 >\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 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/tutorial-panel/index.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAOlD,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,WAAW,EACX,OAAO,EACP,SAAS,EACT,eAAe,EACf,WAAW,EACX,GAAG,SAAS,EACb,EAAE,kBAAkB,eA6BpB"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["tutorial-panel/index.tsx"],"names":[],"mappings":";AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAOlD,OAAO,EAAE,kBAAkB,EAAE,CAAC;AAE9B,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,WAAW,EACX,OAAO,EACP,SAAS,EACT,eAAe,EACf,WAAW,EACX,GAAG,SAAS,EACb,EAAE,kBAAkB,eA6BpB"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/tutorial-panel/index.tsx"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,kBAAkB,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AAIpE,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAOjB;QAPiB,EACpC,WAAW,EACX,OAAO,EACP,SAAS,EACT,eAAe,EACf,WAAW,OAEQ,EADhB,SAAS,cANwB,yEAOrC,CADa;IAEZ,MAAM,EAAE,iBAAiB,EAAE,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAEhE,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAE3C,OAAO,CACL;QACE,6CAAS,SAAS,IAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,GAAG,EAAE,iBAAiB,KACvG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CACzB,oBAAC,kBAAkB,IACjB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,OAAO,CAAC,eAAe,EACjC,cAAc,EAAE,OAAO,CAAC,cAAc,EACtC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAC1C,eAAe,EAAE,eAAe,GAChC,CACH,CAAC,CAAC,CAAC,CACF,oBAAC,YAAY,IACX,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,OAAO,CAAC,eAAe,EACxC,WAAW,EAAE,WAAW,GACxB,CACH,CACG,CACL,CACJ,CAAC;AACJ,CAAC;AAED,gBAAgB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React, { useContext } from 'react';\nimport { getBaseProps } from '../internal/base-component';\nimport styles from './styles.css.js';\n\nimport { TutorialPanelProps } from './interfaces';\nimport TutorialList from './components/tutorial-list';\nimport TutorialDetailView from './components/tutorial-detail-view';\nimport { hotspotContext } from '../annotation-context/context';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport useBaseComponent from '../internal/hooks/use-base-component';\n\nexport { TutorialPanelProps };\n\nexport default function TutorialPanel({\n i18nStrings,\n loading,\n tutorials,\n onFeedbackClick,\n downloadUrl,\n ...restProps\n}: TutorialPanelProps) {\n const { __internalRootRef } = useBaseComponent('TutorialPanel');\n\n const baseProps = getBaseProps(restProps);\n const context = useContext(hotspotContext);\n\n return (\n <>\n <div {...baseProps} className={clsx(baseProps.className, styles['tutorial-panel'])} ref={__internalRootRef}>\n {context.currentTutorial ? (\n <TutorialDetailView\n i18nStrings={i18nStrings}\n tutorial={context.currentTutorial}\n onExitTutorial={context.onExitTutorial}\n currentStepIndex={context.currentStepIndex}\n onFeedbackClick={onFeedbackClick}\n />\n ) : (\n <TutorialList\n i18nStrings={i18nStrings}\n tutorials={tutorials}\n loading={loading}\n onStartTutorial={context.onStartTutorial}\n downloadUrl={downloadUrl}\n />\n )}\n </div>\n </>\n );\n}\n\napplyDisplayName(TutorialPanel, 'TutorialPanel');\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["tutorial-panel/index.tsx"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,KAAK,EAAE,EAAE,UAAU,EAAE,MAAM,OAAO,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAGrC,OAAO,YAAY,MAAM,4BAA4B,CAAC;AACtD,OAAO,kBAAkB,MAAM,mCAAmC,CAAC;AACnE,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAC/D,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AAIpE,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EAOjB;QAPiB,EACpC,WAAW,EACX,OAAO,EACP,SAAS,EACT,eAAe,EACf,WAAW,OAEQ,EADhB,SAAS,cANwB,yEAOrC,CADa;IAEZ,MAAM,EAAE,iBAAiB,EAAE,GAAG,gBAAgB,CAAC,eAAe,CAAC,CAAC;IAEhE,MAAM,SAAS,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,UAAU,CAAC,cAAc,CAAC,CAAC;IAE3C,OAAO,CACL;QACE,6CAAS,SAAS,IAAE,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,SAAS,EAAE,MAAM,CAAC,gBAAgB,CAAC,CAAC,EAAE,GAAG,EAAE,iBAAiB,KACvG,OAAO,CAAC,eAAe,CAAC,CAAC,CAAC,CACzB,oBAAC,kBAAkB,IACjB,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,OAAO,CAAC,eAAe,EACjC,cAAc,EAAE,OAAO,CAAC,cAAc,EACtC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,EAC1C,eAAe,EAAE,eAAe,GAChC,CACH,CAAC,CAAC,CAAC,CACF,oBAAC,YAAY,IACX,WAAW,EAAE,WAAW,EACxB,SAAS,EAAE,SAAS,EACpB,OAAO,EAAE,OAAO,EAChB,eAAe,EAAE,OAAO,CAAC,eAAe,EACxC,WAAW,EAAE,WAAW,GACxB,CACH,CACG,CACL,CACJ,CAAC;AACJ,CAAC;AAED,gBAAgB,CAAC,aAAa,EAAE,eAAe,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport clsx from 'clsx';\nimport React, { useContext } from 'react';\nimport { getBaseProps } from '../internal/base-component';\nimport styles from './styles.css.js';\n\nimport { TutorialPanelProps } from './interfaces';\nimport TutorialList from './components/tutorial-list';\nimport TutorialDetailView from './components/tutorial-detail-view';\nimport { hotspotContext } from '../annotation-context/context';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport useBaseComponent from '../internal/hooks/use-base-component';\n\nexport { TutorialPanelProps };\n\nexport default function TutorialPanel({\n i18nStrings,\n loading,\n tutorials,\n onFeedbackClick,\n downloadUrl,\n ...restProps\n}: TutorialPanelProps) {\n const { __internalRootRef } = useBaseComponent('TutorialPanel');\n\n const baseProps = getBaseProps(restProps);\n const context = useContext(hotspotContext);\n\n return (\n <>\n <div {...baseProps} className={clsx(baseProps.className, styles['tutorial-panel'])} ref={__internalRootRef}>\n {context.currentTutorial ? (\n <TutorialDetailView\n i18nStrings={i18nStrings}\n tutorial={context.currentTutorial}\n onExitTutorial={context.onExitTutorial}\n currentStepIndex={context.currentStepIndex}\n onFeedbackClick={onFeedbackClick}\n />\n ) : (\n <TutorialList\n i18nStrings={i18nStrings}\n tutorials={tutorials}\n loading={loading}\n onStartTutorial={context.onStartTutorial}\n downloadUrl={downloadUrl}\n />\n )}\n </div>\n </>\n );\n}\n\napplyDisplayName(TutorialPanel, 'TutorialPanel');\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/tutorial-panel/interfaces.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"lib/default/","sources":["tutorial-panel/interfaces.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/tutorial-panel/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\nimport { BaseComponentProps } from '../internal/base-component';\nimport { NonCancelableEventHandler } from '../internal/events';\n\nexport interface TutorialPanelProps extends BaseComponentProps {\n /**\n * Whether the content of the panel is currently loading. If this property\n * is set to `true`, the panel displays a spinner and the loadingText that is\n * specified in the `i18nStrings` property.\n */\n loading?: boolean;\n\n /**\n * List of all available tutorials. An array of objects with the following properties:\n *\n * * `title` (string) - Name of the tutorial\n *\n * * `description` (ReactNode) - Short description of the tutorial's content.\n *\n * * `tasks` - Array of tasks (in intended order). Each Task has the following properties:\n * * `title` (string) - Name of this task. This is shown in the task list overview of the tutorial's detail view.\n * * `steps` - Array of steps in this task (in intended order). Each step has the following properties:\n * * `title` (string) - Title of this step. This is shown in the step list in the tutorial's detail view.\n * * `content` (ReactNode) - Content to be shown in the popover of this step. Can be JSX or plain text.\n * * `warningAlert` (ReactNode) - (Optional) If this field is present, a warning alert will be displayed\n * inside the step's popover, showing this field's content. Can be JSX or plain text.\n * * `hotspotId` (string) - ID of the hotspot that this tutorial step points to.\n *\n * A hotspot with this ID needs to be added manually to the code of the application and represents a location\n * in the application that a tutorial step can be attached to. It can be re-used by multiple tutorials. Hotspot\n * IDs need to be unique in the scope of the whole application that uses this tutorial.\n *\n * * `completedScreenDescription` (ReactNode) - Description to be shown on the last page of the tutorial, when the\n * user has successfully completed the tutorial.\n *\n * * `prerequisitesAlert` (ReactNode) - (Optional) If the application determines that the user cannot start the tutorial\n * yet (by specifying the property `prerequisitesNeeded` on the tutorial object), the content of `prerequisitesAlert`\n * will be shown in the tutorial list underneath the tutorial title.\n *\n * Example: `<><Link>Create a bucket first</Link> to complete this tutorial.</>`\n *\n * * `prerequisitesNeeded` (boolean) - (Optional) If this property is set to `true`, the tutorial list will disable the\n * `Start tutorial` button for this tutorial, and it will show the contents of the tutorial's `prerequisitesAlert` field\n * in an alert underneath the tutorial title.\n *\n * * `learnMoreUrl` (string | null) - (Optional) If present, the tutorial list will show a \"Learn More\" link pointing to\n * this URL underneath the tutorial's description.\n *\n * * `completed` (boolean) - Whether the user has already completed this tutorial.\n *\n * If this property is set to `true`, the tutorial list will show a status indicator underneath the tutorial title with\n * a message that indicates that this tutorial has already been completed by the user (e.g. \"Tutorial completed\"), and\n * the \"Start tutorial\" button will be replaced by a \"Restart tutorial\" button.\n */\n tutorials: ReadonlyArray<TutorialPanelProps.Tutorial>;\n\n /**\n * The link to a file documenting all tutorials (usually a PDF).\n */\n downloadUrl?: string;\n\n /**\n * An object containing all the necessary localized strings required by the component.\n */\n i18nStrings: TutorialPanelProps.I18nStrings;\n\n /**\n * Fired when the user clicks on the feedback link at the end of a tutorial.\n */\n onFeedbackClick: NonCancelableEventHandler<TutorialPanelProps.TutorialDetail>;\n}\n\nexport namespace TutorialPanelProps {\n export interface TutorialDetail {\n tutorial: Tutorial;\n }\n\n export interface Tutorial {\n /**\n * Title of the tutorial\n * */\n title: string;\n\n /**\n * Short description of the tutorial's content. This is displayed in the tutorial list.\n */\n description: React.ReactNode;\n\n /**\n * List of tasks (in intended order)\n */\n tasks: ReadonlyArray<Task>;\n\n /**\n * Description to be shown on the last page of the tutorial, when the user has\n * successfully completed the tutorial.\n */\n completedScreenDescription: React.ReactNode;\n\n /**\n * If the application determines that the user cannot start\n * the tutorial yet (by specifying the property `prerequisitesNeeded` on the\n * tutorial object), the content of `prerequisitesAlert` will be shown in the\n * tutorial list underneath the tutorial title.\n *\n * @deprecated Use alert component inside description property directly.\n */\n prerequisitesAlert?: React.ReactNode;\n\n /**\n * If this property is set to `true`, the tutorial list\n * will disable the `Start tutorial` button for this\n * tutorial, and it will show the contents of the\n * tutorial's `prerequisitesAlert` field in an alert underneath\n * the tutorial title.\n */\n prerequisitesNeeded?: boolean;\n\n /**\n * If present, the tutorial list will show a \"Learn More\" link pointing to\n * this URL underneath the tutorial's description.\n */\n learnMoreUrl?: string | null;\n\n /**\n * Whether the user has already completed this tutorial.\n *\n * If this property is set to `true`, the tutorial list\n * will show a status indicator underneath the tutorial\n * title with a message that indicates that this tutorial\n * has already been completed by the user (e.g.\n * \"Tutorial completed\"), and the \"Start tutorial\" button\n * will be replaced by a \"Restart tutorial\" button.\n *\n */\n completed: boolean;\n }\n\n export interface Task {\n /**\n * Title of this task. This is shown in the task list overview of the tutorial's\n * detail view.\n */\n title: string;\n\n /**\n * Steps in this task (in intended order)\n */\n steps: ReadonlyArray<Step>;\n }\n\n export interface Step {\n /**\n * Title of this step. This is shown in the step list in the tutorial's\n * detail view.\n */\n title: string;\n\n /**\n * Content to be shown in the popover of this step. Can be JSX or plain text.\n */\n content: React.ReactNode;\n\n /**\n * If this field is present, a warning alert will be displayed inside\n * the step's popover, showing this field's content. Can be JSX or plain text.\n * @deprecated Use alert component inside content property directly.\n */\n warningAlert?: React.ReactNode;\n\n /**\n * ID of the hotspot that this tutorial step points to.\n *\n * A hotspot with this ID needs to be added manually to the code of the application\n * and represents a location in the application that a tutorial step can be\n * attached to. It can be re-used by multiple tutorials. Hotspot IDs need\n * to be unique in the scope of the whole application that uses this tutorial.\n */\n hotspotId: string;\n }\n\n export interface I18nStrings {\n loadingText: string;\n\n tutorialListTitle: string;\n tutorialListDescription: React.ReactNode;\n tutorialListDownloadLinkText: string;\n\n tutorialCompletedText: string;\n learnMoreLinkText: string;\n\n startTutorialButtonText: string;\n restartTutorialButtonText: string;\n\n completionScreenTitle: string;\n\n feedbackLinkText: string;\n dismissTutorialButtonText: string;\n\n taskTitle: (taskIndex: number, taskTitle: string) => string;\n stepTitle: (stepIndex: number, stepTitle: string) => string;\n\n labelExitTutorial: string;\n labelTotalSteps: (totalStepCount: number) => string;\n labelLearnMoreExternalIcon: string;\n\n labelsTaskStatus: {\n pending: string;\n 'in-progress': string;\n success: string;\n };\n\n labelTutorialListDownloadLink?: string;\n labelLearnMoreLink?: string;\n }\n}\n"]}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"lib/default/","sources":["tutorial-panel/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\nimport { BaseComponentProps } from '../internal/base-component';\nimport { NonCancelableEventHandler } from '../internal/events';\n\nexport interface TutorialPanelProps extends BaseComponentProps {\n /**\n * Whether the content of the panel is currently loading. If this property\n * is set to `true`, the panel displays a spinner and the loadingText that is\n * specified in the `i18nStrings` property.\n */\n loading?: boolean;\n\n /**\n * List of all available tutorials. An array of objects with the following properties:\n *\n * * `title` (string) - Name of the tutorial\n *\n * * `description` (ReactNode) - Short description of the tutorial's content.\n *\n * * `tasks` - Array of tasks (in intended order). Each Task has the following properties:\n * * `title` (string) - Name of this task. This is shown in the task list overview of the tutorial's detail view.\n * * `steps` - Array of steps in this task (in intended order). Each step has the following properties:\n * * `title` (string) - Title of this step. This is shown in the step list in the tutorial's detail view.\n * * `content` (ReactNode) - Content to be shown in the popover of this step. Can be JSX or plain text.\n * * `warningAlert` (ReactNode) - (Optional) If this field is present, a warning alert will be displayed\n * inside the step's popover, showing this field's content. Can be JSX or plain text.\n * * `hotspotId` (string) - ID of the hotspot that this tutorial step points to.\n *\n * A hotspot with this ID needs to be added manually to the code of the application and represents a location\n * in the application that a tutorial step can be attached to. It can be re-used by multiple tutorials. Hotspot\n * IDs need to be unique in the scope of the whole application that uses this tutorial.\n *\n * * `completedScreenDescription` (ReactNode) - Description to be shown on the last page of the tutorial, when the\n * user has successfully completed the tutorial.\n *\n * * `prerequisitesAlert` (ReactNode) - (Optional) If the application determines that the user cannot start the tutorial\n * yet (by specifying the property `prerequisitesNeeded` on the tutorial object), the content of `prerequisitesAlert`\n * will be shown in the tutorial list underneath the tutorial title.\n *\n * Example: `<><Link>Create a bucket first</Link> to complete this tutorial.</>`\n *\n * * `prerequisitesNeeded` (boolean) - (Optional) If this property is set to `true`, the tutorial list will disable the\n * `Start tutorial` button for this tutorial, and it will show the contents of the tutorial's `prerequisitesAlert` field\n * in an alert underneath the tutorial title.\n *\n * * `learnMoreUrl` (string | null) - (Optional) If present, the tutorial list will show a \"Learn More\" link pointing to\n * this URL underneath the tutorial's description.\n *\n * * `completed` (boolean) - Whether the user has already completed this tutorial.\n *\n * If this property is set to `true`, the tutorial list will show a status indicator underneath the tutorial title with\n * a message that indicates that this tutorial has already been completed by the user (e.g. \"Tutorial completed\"), and\n * the \"Start tutorial\" button will be replaced by a \"Restart tutorial\" button.\n */\n tutorials: ReadonlyArray<TutorialPanelProps.Tutorial>;\n\n /**\n * The link to a file documenting all tutorials (usually a PDF).\n */\n downloadUrl?: string;\n\n /**\n * An object containing all the necessary localized strings required by the component.\n */\n i18nStrings: TutorialPanelProps.I18nStrings;\n\n /**\n * Fired when the user clicks on the feedback link at the end of a tutorial.\n */\n onFeedbackClick: NonCancelableEventHandler<TutorialPanelProps.TutorialDetail>;\n}\n\nexport namespace TutorialPanelProps {\n export interface TutorialDetail {\n tutorial: Tutorial;\n }\n\n export interface Tutorial {\n /**\n * Title of the tutorial\n * */\n title: string;\n\n /**\n * Short description of the tutorial's content. This is displayed in the tutorial list.\n */\n description: React.ReactNode;\n\n /**\n * List of tasks (in intended order)\n */\n tasks: ReadonlyArray<Task>;\n\n /**\n * Description to be shown on the last page of the tutorial, when the user has\n * successfully completed the tutorial.\n */\n completedScreenDescription: React.ReactNode;\n\n /**\n * If the application determines that the user cannot start\n * the tutorial yet (by specifying the property `prerequisitesNeeded` on the\n * tutorial object), the content of `prerequisitesAlert` will be shown in the\n * tutorial list underneath the tutorial title.\n *\n * @deprecated Use alert component inside description property directly.\n */\n prerequisitesAlert?: React.ReactNode;\n\n /**\n * If this property is set to `true`, the tutorial list\n * will disable the `Start tutorial` button for this\n * tutorial, and it will show the contents of the\n * tutorial's `prerequisitesAlert` field in an alert underneath\n * the tutorial title.\n */\n prerequisitesNeeded?: boolean;\n\n /**\n * If present, the tutorial list will show a \"Learn More\" link pointing to\n * this URL underneath the tutorial's description.\n */\n learnMoreUrl?: string | null;\n\n /**\n * Whether the user has already completed this tutorial.\n *\n * If this property is set to `true`, the tutorial list\n * will show a status indicator underneath the tutorial\n * title with a message that indicates that this tutorial\n * has already been completed by the user (e.g.\n * \"Tutorial completed\"), and the \"Start tutorial\" button\n * will be replaced by a \"Restart tutorial\" button.\n *\n */\n completed: boolean;\n }\n\n export interface Task {\n /**\n * Title of this task. This is shown in the task list overview of the tutorial's\n * detail view.\n */\n title: string;\n\n /**\n * Steps in this task (in intended order)\n */\n steps: ReadonlyArray<Step>;\n }\n\n export interface Step {\n /**\n * Title of this step. This is shown in the step list in the tutorial's\n * detail view.\n */\n title: string;\n\n /**\n * Content to be shown in the popover of this step. Can be JSX or plain text.\n */\n content: React.ReactNode;\n\n /**\n * If this field is present, a warning alert will be displayed inside\n * the step's popover, showing this field's content. Can be JSX or plain text.\n * @deprecated Use alert component inside content property directly.\n */\n warningAlert?: React.ReactNode;\n\n /**\n * ID of the hotspot that this tutorial step points to.\n *\n * A hotspot with this ID needs to be added manually to the code of the application\n * and represents a location in the application that a tutorial step can be\n * attached to. It can be re-used by multiple tutorials. Hotspot IDs need\n * to be unique in the scope of the whole application that uses this tutorial.\n */\n hotspotId: string;\n }\n\n export interface I18nStrings {\n loadingText: string;\n\n tutorialListTitle: string;\n tutorialListDescription: React.ReactNode;\n tutorialListDownloadLinkText: string;\n\n tutorialCompletedText: string;\n learnMoreLinkText: string;\n\n startTutorialButtonText: string;\n restartTutorialButtonText: string;\n\n completionScreenTitle: string;\n\n feedbackLinkText: string;\n dismissTutorialButtonText: string;\n\n taskTitle: (taskIndex: number, taskTitle: string) => string;\n stepTitle: (stepIndex: number, stepTitle: string) => string;\n\n labelExitTutorial: string;\n labelTotalSteps: (totalStepCount: number) => string;\n labelLearnMoreExternalIcon: string;\n\n labelsTaskStatus: {\n pending: string;\n 'in-progress': string;\n success: string;\n };\n\n labelTutorialListDownloadLink?: string;\n labelLearnMoreLink?: string;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/wizard/index.tsx"],"names":[],"mappings":";AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAiB3C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,KAAK,EACL,eAAe,EAAE,yBAAyB,EAC1C,iBAAyB,EACzB,WAAmB,EACnB,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,GAAG,IAAI,EACR,EAAE,WAAW,eA4Hb"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"lib/default/","sources":["wizard/index.tsx"],"names":[],"mappings":";AAWA,OAAO,EAAE,WAAW,EAAE,MAAM,cAAc,CAAC;AAiB3C,OAAO,EAAE,WAAW,EAAE,CAAC;AAEvB,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAC7B,KAAK,EACL,eAAe,EAAE,yBAAyB,EAC1C,iBAAyB,EACzB,WAAmB,EACnB,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,UAAU,EACV,GAAG,IAAI,EACR,EAAE,WAAW,eA4Hb"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/wizard/index.tsx"],"names":[],"mappings":";AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,EAAE,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACjD,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAC1D,OAAO,EAAE,sBAAsB,EAAE,MAAM,oBAAoB,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AAC/C,OAAO,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AAC9E,OAAO,EAAE,eAAe,EAAE,MAAM,oCAAoC,CAAC;AACrE,OAAO,UAAU,MAAM,eAAe,CAAC;AACvC,OAAO,gBAAgB,MAAM,qBAAqB,CAAC;AAEnD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,EAAE,gBAAgB,EAAE,MAAM,sCAAsC,CAAC;AACxE,OAAO,gBAAgB,MAAM,sCAAsC,CAAC;AACpE,OAAO,EAAE,YAAY,EAAE,MAAM,kCAAkC,CAAC;AAChE,OAAO,EAAE,gBAAgB,EAAE,MAAM,mCAAmC,CAAC;AAErE,OAAO,EACL,cAAc,EACd,aAAa,EACb,WAAW,EACX,gBAAgB,EAChB,cAAc,EACd,WAAW,GACZ,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAI3D,MAAM,CAAC,OAAO,UAAU,MAAM,CAAC,EAUjB;QAViB,EAC7B,KAAK,EACL,eAAe,EAAE,yBAAyB,EAC1C,iBAAiB,GAAG,KAAK,EACzB,WAAW,GAAG,KAAK,EACnB,gBAAgB,EAChB,QAAQ,EACR,QAAQ,EACR,UAAU,OAEE,EADT,IAAI,cATsB,0HAU9B,CADQ;IAEP,MAAM,EAAE,iBAAiB,EAAE,GAAG,gBAAgB,CAAC,QAAQ,CAAC,CAAC;IACzD,MAAM,SAAS,GAAG,YAAY,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,QAAQ,GAAG,SAAS,CAAC,EAAE,CAAC;IAE9B,MAAM,CAAC,UAAU,EAAE,cAAc,CAAC,GAAG,uBAAuB,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC;IACrE,MAAM,GAAG,GAAG,YAAY,CAAC,cAAc,EAAE,iBAAiB,CAAC,CAAC;IAE5D,MAAM,cAAc,GAAG,UAAU,KAAK,SAAS,CAAC;IAEhD,MAAM,CAAC,eAAe,EAAE,kBAAkB,CAAC,GAAG,eAAe,CAAC,yBAAyB,EAAE,UAAU,EAAE,CAAC,EAAE;QACtG,aAAa,EAAE,QAAQ;QACvB,cAAc,EAAE,iBAAiB;QACjC,aAAa,EAAE,YAAY;KAC5B,CAAC,CAAC;IACH,MAAM,qBAAqB,GAAG,eAAe,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,eAAe,EAAE,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAEhG,MAAM,iBAAiB,GAAG,MAAM,CAAS,qBAAqB,CAAC,CAAC;IAChE,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,OAAO,EAAE,qBAAqB,CAAC,CAAC;IAEvF,MAAM,eAAe,GAAG,gBAAgB,EAAE,CAAC;IAC3C,MAAM,UAAU,GAAG,qBAAqB,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7D,MAAM,eAAe,GAAG,CAAC,kBAA0B,EAAE,MAAoC,EAAE,EAAE;QAC3F,aAAa,CAAC,qBAAqB,EAAE,kBAAkB,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;QAC3E,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;QACvC,sBAAsB,CAAC,UAAU,EAAE,EAAE,kBAAkB,EAAE,MAAM,EAAE,CAAC,CAAC;IACrE,CAAC,CAAC;IACF,MAAM,WAAW,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAC9E,MAAM,aAAa,GAAG,CAAC,SAAiB,EAAE,EAAE,CAAC,eAAe,CAAC,SAAS,EAAE,MAAM,CAAC,CAAC;IAChF,MAAM,aAAa,GAAG,GAAG,EAAE;QACzB,WAAW,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;QAC7C,sBAAsB,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC,CAAC;IACF,MAAM,eAAe,GAAG,GAAG,EAAE,CAAC,eAAe,CAAC,qBAAqB,GAAG,CAAC,EAAE,UAAU,CAAC,CAAC;IACrF,MAAM,cAAc,GAAG,GAAG,EAAE;QAC1B,IAAI,UAAU,EAAE;YACd,WAAW,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;YAC7C,sBAAsB,CAAC,QAAQ,CAAC,CAAC;SAClC;aAAM;YACL,eAAe,CAAC,qBAAqB,GAAG,CAAC,EAAE,MAAM,CAAC,CAAC;SACpD;IACH,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IACvC,MAAM,WAAW,mCACZ,IAAI,CAAC,WAAW,KACnB,eAAe,EAAE,IAAI,CAAC,6BAA6B,EAAE,IAAI,CAAC,WAAW,CAAC,eAAe,CAAC,EACtF,mBAAmB,EAAE,IAAI,CAAC,iCAAiC,EAAE,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,EAClG,YAAY,EAAE,IAAI,CAAC,0BAA0B,EAAE,IAAI,CAAC,WAAW,CAAC,YAAY,CAAC,EAC7E,cAAc,EAAE,IAAI,CAAC,4BAA4B,EAAE,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,EACnF,UAAU,EAAE,IAAI,CAAC,wBAAwB,EAAE,IAAI,CAAC,WAAW,CAAC,UAAU,CAAC,EACvE,QAAQ,EAAE,IAAI,CAAC,sBAAsB,EAAE,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,GAClE,CAAC;IAEF,IAAI,eAAe,IAAI,eAAe,IAAI,KAAK,CAAC,MAAM,EAAE;QACtD,QAAQ,CACN,QAAQ,EACR,uCAAuC,eAAe,+BACpD,KAAK,CAAC,MACR,uDAAuD,KAAK,CAAC,MAAM,GAAG,CAAC,WAAW,CACnF,CAAC;KACH;IAED,IAAI,WAAW,IAAI,CAAC,WAAW,CAAC,iBAAiB,EAAE;QACjD,QAAQ,CACN,QAAQ,EACR,oIAAoI,CACrI,CAAC;KACH;IAED,SAAS,CAAC,GAAG,EAAE;QACb,gBAAgB,EAAE,CAAC;QAEnB,OAAO,GAAG,EAAE;YACV,cAAc,CAAC,QAAQ,CAAC,CAAC;QAC3B,CAAC,CAAC;QACF,8EAA8E;IAChF,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,SAAS,CAAC,GAAG,EAAE;QACb,cAAc,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC;IAClD,CAAC,EAAE,CAAC,qBAAqB,EAAE,QAAQ,CAAC,CAAC,CAAC;IAEtC,OAAO,CACL,6CAAS,SAAS,IAAE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG;QAC7E,6BACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,eAAe,IAAI,MAAM,CAAC,OAAO,EAAE,cAAc,IAAI,MAAM,CAAC,iBAAiB,CAAC,CAAC;YAE9G,oBAAC,gBAAgB,IACf,eAAe,EAAE,qBAAqB,EACtC,iBAAiB,EAAE,iBAAiB,CAAC,OAAO,EAC5C,WAAW,EAAE,WAAW,EACxB,MAAM,EAAE,cAAc,EACtB,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,eAAe,EAChC,iBAAiB,EAAE,iBAAiB,EACpC,WAAW,EAAE,WAAW,EACxB,aAAa,EAAE,aAAa,EAC5B,KAAK,EAAE,KAAK,GACZ;YACF,6BACE,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,eAAe,IAAI,MAAM,CAAC,OAAO,EAAE,cAAc,IAAI,MAAM,CAAC,iBAAiB,CAAC,CAAC;gBAE3G,eAAe,IAAI,6BAAK,SAAS,EAAE,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,8BAA8B,CAAC,GAAI;gBAE/F,oBAAC,UAAU,IACT,KAAK,EAAE,KAAK,EACZ,eAAe,EAAE,eAAe,EAChC,kBAAkB,EAAE,cAAc,EAClC,WAAW,EAAE,WAAW,EACxB,eAAe,EAAE,qBAAqB,EACtC,gBAAgB,EAAE,iBAAiB,EACnC,WAAW,EAAE,WAAW,EACxB,gBAAgB,EAAE,gBAAgB,EAClC,aAAa,EAAE,aAAa,EAC5B,eAAe,EAAE,eAAe,EAChC,aAAa,EAAE,aAAa,EAC5B,cAAc,EAAE,cAAc,GAC9B,CACE,CACF,CACF,CACP,CAAC;AACJ,CAAC;AAED,gBAAgB,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef } from 'react';\nimport clsx from 'clsx';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { warnOnce } from '../internal/logging';\nimport { useContainerBreakpoints } from '../internal/hooks/container-queries';\nimport { useControllable } from '../internal/hooks/use-controllable';\nimport WizardForm from './wizard-form';\nimport WizardNavigation from './wizard-navigation';\nimport { WizardProps } from './interfaces';\nimport styles from './styles.css.js';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\n\nimport {\n trackStartStep,\n trackNavigate,\n trackSubmit,\n trackStartWizard,\n trackEndWizard,\n trackCancel,\n} from './internal/analytics';\nimport { useInternalI18n } from '../internal/i18n/context';\n\nexport { WizardProps };\n\nexport default function Wizard({\n steps,\n activeStepIndex: controlledActiveStepIndex,\n isLoadingNextStep = false,\n allowSkipTo = false,\n secondaryActions,\n onCancel,\n onSubmit,\n onNavigate,\n ...rest\n}: WizardProps) {\n const { __internalRootRef } = useBaseComponent('Wizard');\n const baseProps = getBaseProps(rest);\n const funnelId = baseProps.id;\n\n const [breakpoint, breakpointsRef] = useContainerBreakpoints(['xs']);\n const ref = useMergeRefs(breakpointsRef, __internalRootRef);\n\n const smallContainer = breakpoint === 'default';\n\n const [activeStepIndex, setActiveStepIndex] = useControllable(controlledActiveStepIndex, onNavigate, 0, {\n componentName: 'Wizard',\n controlledProp: 'activeStepIndex',\n changeHandler: 'onNavigate',\n });\n const actualActiveStepIndex = activeStepIndex ? Math.min(activeStepIndex, steps.length - 1) : 0;\n\n const farthestStepIndex = useRef<number>(actualActiveStepIndex);\n farthestStepIndex.current = Math.max(farthestStepIndex.current, actualActiveStepIndex);\n\n const isVisualRefresh = useVisualRefresh();\n const isLastStep = actualActiveStepIndex >= steps.length - 1;\n\n const navigationEvent = (requestedStepIndex: number, reason: WizardProps.NavigationReason) => {\n trackNavigate(actualActiveStepIndex, requestedStepIndex, reason, funnelId);\n setActiveStepIndex(requestedStepIndex);\n fireNonCancelableEvent(onNavigate, { requestedStepIndex, reason });\n };\n const onStepClick = (stepIndex: number) => navigationEvent(stepIndex, 'step');\n const onSkipToClick = (stepIndex: number) => navigationEvent(stepIndex, 'skip');\n const onCancelClick = () => {\n trackCancel(actualActiveStepIndex, funnelId);\n fireNonCancelableEvent(onCancel);\n };\n const onPreviousClick = () => navigationEvent(actualActiveStepIndex - 1, 'previous');\n const onPrimaryClick = () => {\n if (isLastStep) {\n trackSubmit(actualActiveStepIndex, funnelId);\n fireNonCancelableEvent(onSubmit);\n } else {\n navigationEvent(actualActiveStepIndex + 1, 'next');\n }\n };\n\n const i18n = useInternalI18n('wizard');\n const i18nStrings: WizardProps.I18nStrings = {\n ...rest.i18nStrings,\n stepNumberLabel: i18n('i18nStrings.stepNumberLabel', rest.i18nStrings.stepNumberLabel),\n collapsedStepsLabel: i18n('i18nStrings.collapsedStepsLabel', rest.i18nStrings.collapsedStepsLabel),\n cancelButton: i18n('i18nStrings.cancelButton', rest.i18nStrings.cancelButton),\n previousButton: i18n('i18nStrings.previousButton', rest.i18nStrings.previousButton),\n nextButton: i18n('i18nStrings.nextButton', rest.i18nStrings.nextButton),\n optional: i18n('i18nStrings.optional', rest.i18nStrings.optional),\n };\n\n if (activeStepIndex && activeStepIndex >= steps.length) {\n warnOnce(\n 'Wizard',\n `You have set \\`activeStepIndex\\` to ${activeStepIndex} but you have provided only ${\n steps.length\n } steps. Its value is ignored and the component uses ${steps.length - 1} instead.`\n );\n }\n\n if (allowSkipTo && !i18nStrings.skipToButtonLabel) {\n warnOnce(\n 'Wizard',\n `You have set \\`allowSkipTo\\` but you have not provided \\`i18nStrings.skipToButtonLabel\\`. The skip-to button will not be rendered.`\n );\n }\n\n useEffect(() => {\n trackStartWizard();\n\n return () => {\n trackEndWizard(funnelId);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- this is intentional\n }, []);\n\n useEffect(() => {\n trackStartStep(actualActiveStepIndex, funnelId);\n }, [actualActiveStepIndex, funnelId]);\n\n return (\n <div {...baseProps} className={clsx(styles.root, baseProps.className)} ref={ref}>\n <div\n className={clsx(styles.wizard, isVisualRefresh && styles.refresh, smallContainer && styles['small-container'])}\n >\n <WizardNavigation\n activeStepIndex={actualActiveStepIndex}\n farthestStepIndex={farthestStepIndex.current}\n allowSkipTo={allowSkipTo}\n hidden={smallContainer}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n isLoadingNextStep={isLoadingNextStep}\n onStepClick={onStepClick}\n onSkipToClick={onSkipToClick}\n steps={steps}\n />\n <div\n className={clsx(styles.form, isVisualRefresh && styles.refresh, smallContainer && styles['small-container'])}\n >\n {isVisualRefresh && <div className={clsx(styles.background, 'awsui-context-content-header')} />}\n\n <WizardForm\n steps={steps}\n isVisualRefresh={isVisualRefresh}\n showCollapsedSteps={smallContainer}\n i18nStrings={i18nStrings}\n activeStepIndex={actualActiveStepIndex}\n isPrimaryLoading={isLoadingNextStep}\n allowSkipTo={allowSkipTo}\n secondaryActions={secondaryActions}\n onCancelClick={onCancelClick}\n onPreviousClick={onPreviousClick}\n onSkipToClick={onSkipToClick}\n onPrimaryClick={onPrimaryClick}\n />\n </div>\n </div>\n </div>\n );\n}\n\napplyDisplayName(Wizard, 'Wizard');\n"]}
1
+ {"version":3,"file":"index.js","sourceRoot":"lib/default/","sources":["wizard/index.tsx"],"names":[],"mappings":"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","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React, { useEffect, useRef } from 'react';\nimport clsx from 'clsx';\nimport { getBaseProps } from '../internal/base-component';\nimport { fireNonCancelableEvent } from '../internal/events';\nimport { warnOnce } from '../internal/logging';\nimport { useContainerBreakpoints } from '../internal/hooks/container-queries';\nimport { useControllable } from '../internal/hooks/use-controllable';\nimport WizardForm from './wizard-form';\nimport WizardNavigation from './wizard-navigation';\nimport { WizardProps } from './interfaces';\nimport styles from './styles.css.js';\nimport { applyDisplayName } from '../internal/utils/apply-display-name';\nimport useBaseComponent from '../internal/hooks/use-base-component';\nimport { useMergeRefs } from '../internal/hooks/use-merge-refs';\nimport { useVisualRefresh } from '../internal/hooks/use-visual-mode';\n\nimport {\n trackStartStep,\n trackNavigate,\n trackSubmit,\n trackStartWizard,\n trackEndWizard,\n trackCancel,\n} from './internal/analytics';\nimport { useInternalI18n } from '../internal/i18n/context';\n\nexport { WizardProps };\n\nexport default function Wizard({\n steps,\n activeStepIndex: controlledActiveStepIndex,\n isLoadingNextStep = false,\n allowSkipTo = false,\n secondaryActions,\n onCancel,\n onSubmit,\n onNavigate,\n ...rest\n}: WizardProps) {\n const { __internalRootRef } = useBaseComponent('Wizard');\n const baseProps = getBaseProps(rest);\n const funnelId = baseProps.id;\n\n const [breakpoint, breakpointsRef] = useContainerBreakpoints(['xs']);\n const ref = useMergeRefs(breakpointsRef, __internalRootRef);\n\n const smallContainer = breakpoint === 'default';\n\n const [activeStepIndex, setActiveStepIndex] = useControllable(controlledActiveStepIndex, onNavigate, 0, {\n componentName: 'Wizard',\n controlledProp: 'activeStepIndex',\n changeHandler: 'onNavigate',\n });\n const actualActiveStepIndex = activeStepIndex ? Math.min(activeStepIndex, steps.length - 1) : 0;\n\n const farthestStepIndex = useRef<number>(actualActiveStepIndex);\n farthestStepIndex.current = Math.max(farthestStepIndex.current, actualActiveStepIndex);\n\n const isVisualRefresh = useVisualRefresh();\n const isLastStep = actualActiveStepIndex >= steps.length - 1;\n\n const navigationEvent = (requestedStepIndex: number, reason: WizardProps.NavigationReason) => {\n trackNavigate(actualActiveStepIndex, requestedStepIndex, reason, funnelId);\n setActiveStepIndex(requestedStepIndex);\n fireNonCancelableEvent(onNavigate, { requestedStepIndex, reason });\n };\n const onStepClick = (stepIndex: number) => navigationEvent(stepIndex, 'step');\n const onSkipToClick = (stepIndex: number) => navigationEvent(stepIndex, 'skip');\n const onCancelClick = () => {\n trackCancel(actualActiveStepIndex, funnelId);\n fireNonCancelableEvent(onCancel);\n };\n const onPreviousClick = () => navigationEvent(actualActiveStepIndex - 1, 'previous');\n const onPrimaryClick = () => {\n if (isLastStep) {\n trackSubmit(actualActiveStepIndex, funnelId);\n fireNonCancelableEvent(onSubmit);\n } else {\n navigationEvent(actualActiveStepIndex + 1, 'next');\n }\n };\n\n const i18n = useInternalI18n('wizard');\n const i18nStrings: WizardProps.I18nStrings = {\n ...rest.i18nStrings,\n stepNumberLabel: i18n('i18nStrings.stepNumberLabel', rest.i18nStrings.stepNumberLabel),\n collapsedStepsLabel: i18n('i18nStrings.collapsedStepsLabel', rest.i18nStrings.collapsedStepsLabel),\n cancelButton: i18n('i18nStrings.cancelButton', rest.i18nStrings.cancelButton),\n previousButton: i18n('i18nStrings.previousButton', rest.i18nStrings.previousButton),\n nextButton: i18n('i18nStrings.nextButton', rest.i18nStrings.nextButton),\n optional: i18n('i18nStrings.optional', rest.i18nStrings.optional),\n };\n\n if (activeStepIndex && activeStepIndex >= steps.length) {\n warnOnce(\n 'Wizard',\n `You have set \\`activeStepIndex\\` to ${activeStepIndex} but you have provided only ${\n steps.length\n } steps. Its value is ignored and the component uses ${steps.length - 1} instead.`\n );\n }\n\n if (allowSkipTo && !i18nStrings.skipToButtonLabel) {\n warnOnce(\n 'Wizard',\n `You have set \\`allowSkipTo\\` but you have not provided \\`i18nStrings.skipToButtonLabel\\`. The skip-to button will not be rendered.`\n );\n }\n\n useEffect(() => {\n trackStartWizard();\n\n return () => {\n trackEndWizard(funnelId);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps -- this is intentional\n }, []);\n\n useEffect(() => {\n trackStartStep(actualActiveStepIndex, funnelId);\n }, [actualActiveStepIndex, funnelId]);\n\n return (\n <div {...baseProps} className={clsx(styles.root, baseProps.className)} ref={ref}>\n <div\n className={clsx(styles.wizard, isVisualRefresh && styles.refresh, smallContainer && styles['small-container'])}\n >\n <WizardNavigation\n activeStepIndex={actualActiveStepIndex}\n farthestStepIndex={farthestStepIndex.current}\n allowSkipTo={allowSkipTo}\n hidden={smallContainer}\n i18nStrings={i18nStrings}\n isVisualRefresh={isVisualRefresh}\n isLoadingNextStep={isLoadingNextStep}\n onStepClick={onStepClick}\n onSkipToClick={onSkipToClick}\n steps={steps}\n />\n <div\n className={clsx(styles.form, isVisualRefresh && styles.refresh, smallContainer && styles['small-container'])}\n >\n {isVisualRefresh && <div className={clsx(styles.background, 'awsui-context-content-header')} />}\n\n <WizardForm\n steps={steps}\n isVisualRefresh={isVisualRefresh}\n showCollapsedSteps={smallContainer}\n i18nStrings={i18nStrings}\n activeStepIndex={actualActiveStepIndex}\n isPrimaryLoading={isLoadingNextStep}\n allowSkipTo={allowSkipTo}\n secondaryActions={secondaryActions}\n onCancelClick={onCancelClick}\n onPreviousClick={onPreviousClick}\n onSkipToClick={onSkipToClick}\n onPrimaryClick={onPrimaryClick}\n />\n </div>\n </div>\n </div>\n );\n}\n\napplyDisplayName(Wizard, 'Wizard');\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.d.ts","sourceRoot":"","sources":["../../../src/wizard/interfaces.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvC;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC;IAErC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEnC;;;OAGG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,yBAAyB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;CACpE;AAED,yBAAiB,WAAW,CAAC;IAC3B,UAAiB,IAAI;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QAC9B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;QACzB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB;IAED,UAAiB,WAAW;QAC1B,eAAe,CAAC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;QAC7C,mBAAmB,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;QACrE,iBAAiB,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAAC;QACnF,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,cAAc;QAC7B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,MAAM,EAAE,WAAW,CAAC,gBAAgB,CAAC;KACtC;IAED,KAAY,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;CACtE"}
1
+ {"version":3,"file":"interfaces.d.ts","sourceRoot":"lib/default/","sources":["wizard/interfaces.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,kBAAkB,EAAE,MAAM,4BAA4B,CAAC;AAChE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oBAAoB,CAAC;AAE/D,MAAM,WAAW,WAAY,SAAQ,kBAAkB;IACrD;;;;;;;;;;;;OAYG;IACH,KAAK,EAAE,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEvC;;;;;;;;;;OAUG;IACH,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB;;;;;;;;;;;;;;;;;OAiBG;IACH,WAAW,EAAE,WAAW,CAAC,WAAW,CAAC;IAErC;;;;OAIG;IACH,iBAAiB,CAAC,EAAE,OAAO,CAAC;IAE5B;;;;;;;;;;OAUG;IACH,WAAW,CAAC,EAAE,OAAO,CAAC;IAEtB;;OAEG;IACH,gBAAgB,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAEnC;;;OAGG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;OAEG;IACH,QAAQ,CAAC,EAAE,yBAAyB,CAAC;IAErC;;;;;;;;OAQG;IACH,UAAU,CAAC,EAAE,yBAAyB,CAAC,WAAW,CAAC,cAAc,CAAC,CAAC;CACpE;AAED,yBAAiB,WAAW,CAAC;IAC3B,UAAiB,IAAI;QACnB,KAAK,EAAE,MAAM,CAAC;QACd,IAAI,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QACvB,WAAW,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QAC9B,OAAO,EAAE,KAAK,CAAC,SAAS,CAAC;QACzB,SAAS,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;QAC5B,UAAU,CAAC,EAAE,OAAO,CAAC;KACtB;IAED,UAAiB,WAAW;QAC1B,eAAe,CAAC,CAAC,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;QAC7C,mBAAmB,CAAC,CAAC,UAAU,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,CAAC;QACrE,iBAAiB,CAAC,CAAC,UAAU,EAAE,WAAW,CAAC,IAAI,EAAE,gBAAgB,EAAE,MAAM,GAAG,MAAM,CAAC;QACnF,mBAAmB,CAAC,EAAE,MAAM,CAAC;QAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;QAC5B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,cAAc,CAAC,EAAE,MAAM,CAAC;QACxB,UAAU,CAAC,EAAE,MAAM,CAAC;QACpB,YAAY,EAAE,MAAM,CAAC;QACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;KACnB;IAED,UAAiB,cAAc;QAC7B,kBAAkB,EAAE,MAAM,CAAC;QAC3B,MAAM,EAAE,WAAW,CAAC,gBAAgB,CAAC;KACtC;IAED,KAAY,gBAAgB,GAAG,MAAM,GAAG,UAAU,GAAG,MAAM,GAAG,MAAM,CAAC;CACtE"}
@@ -1 +1 @@
1
- {"version":3,"file":"interfaces.js","sourceRoot":"","sources":["../../../src/wizard/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\nimport { BaseComponentProps } from '../internal/base-component';\nimport { NonCancelableEventHandler } from '../internal/events';\n\nexport interface WizardProps extends BaseComponentProps {\n /**\n * Array of step objects. Each object represents a step in the wizard with the following properties:\n *\n * - `title` (string) - Text that's displayed as the title in the navigation pane and form header.\n * - `info` (ReactNode) - (Optional) Area for a page level info link that's displayed in the form header.\n * The page level info link should trigger the default help panel content for the step. Use the [link component](/components/link/) to display the link.\n * - `description` (ReactNode) - (Optional) Area below the form header for a page level description text to further explain the purpose, goal, or main actions of the step.\n * - `content` (ReactNode) - Main content area to display form sections, form fields, and controls.\n * - `errorText` (ReactNode) - (Optional) Error text that's displayed in a page level error alert.\n * Use this for rendering actionable server-side validation failure messages.\n * - `isOptional` (boolean) - Specifies whether the step is optional or required. If set to `true`, the text from `i18nStrings.optional`\n * is rendered next to the `title` in the navigation step label and the form header title.\n */\n steps: ReadonlyArray<WizardProps.Step>;\n\n /**\n * Index of the step that's currently displayed. The first step has an index of zero (0).\n *\n * If you don't set this property, the component starts on the first step and switches step automatically\n * when a user navigates using the buttons or an enabled step link in the navigation pane (that is, uncontrolled behavior).\n *\n * If you provide a value for this property, you must also set an `onNavigate` listener to update the property when\n * a user navigates (that is, controlled behavior).\n *\n * If you set it to a value that exceeds the maximum value (that is, the number of steps minus 1), its value is ignored and the component uses the maximum value.\n */\n activeStepIndex?: number;\n\n /**\n * An object containing all the necessary localized strings required by the component.\n *\n * - `stepNumberLabel` ((stepNumber: number) => string) - A function that accepts a number (1-based indexing),\n * and returns a human-readable, localized string displaying the step number in the navigation pane. For example, \"Step 1\" or \"Step 2\".\n * - `collapsedStepsLabel` ((stepNumber: number, stepsCount: number) => string) - A function that accepts two number parameters (1-based indexing),\n * and returns a string responsible for the navigation summary on smaller screens. For example, \"Step 1 of 3\". The parameters are as follows:\n * - `stepNumber` (number) - The step number that the user is currently on.\n * - `stepsCount` (number) - The total number of steps in the wizard.\n * - `skipToButtonLabel`: ((targetStep: WizardProps.Step, targetStepNumber: number) => string) - An optional function that accepts the target step object\n * and the target step number (1-based indexing), and returns a string to be used as the *skip-to* button label. For example, \"Skip to Step 2\" or \"Skip to end\".\n * - `navigationAriaLabel` (string) - The aria label for the navigation pane.\n * - `cancelButton` (string) - The text of the button that enables the user to exit the flow.\n * - `previousButton` (string) - The text of the button that enables the user to return to the previous step.\n * - `nextButton` (string) - The text of the button that enables the user to move to the next step.\n * - `submitButton` (string) - The text of the button that enables the user to submit the form.\n * - `optional` (string) - The text displayed next to the step title and form header title when a step is declared optional.\n */\n i18nStrings: WizardProps.I18nStrings;\n\n /**\n * Renders the *next* or *submit* button in a loading state.\n *\n * Use this if you need to wait for a response from the server before the user can proceed to the next step, such as during server-side validation or retrieving the next step's information.\n */\n isLoadingNextStep?: boolean;\n\n /**\n * When set to `false`, the *skip-to* button is never shown.\n * When set to `true`, the *skip-to* button may appear to offer faster navigation for the user.\n *\n * The *skip-to* button only allows to skip optional steps. It is shown when there is one or more optional\n * steps ahead having no required steps in-between.\n *\n * Note: the *skip-to* button requires the function i18nStrings.skipToButtonLabel to be defined.\n *\n * Defaults to `false`.\n */\n allowSkipTo?: boolean;\n\n /**\n * Specifies left-aligned secondary actions for the wizard. Use a button dropdown if multiple actions are required.\n */\n secondaryActions?: React.ReactNode;\n\n /**\n * Called when a user clicks the *cancel* button.\n * If a user has entered data in the form, you should prompt the user with a modal before exiting the wizard flow.\n */\n onCancel?: NonCancelableEventHandler;\n\n /**\n * Called when a user clicks the *submit* button.\n */\n onSubmit?: NonCancelableEventHandler;\n\n /**\n * Called when a user clicks the *next* button, the *previous* button, or an enabled step link in the navigation pane.\n *\n * The event `detail` includes the following:\n * - `requestedStepIndex` - The index of the requested step.\n * - `reason` - The user action that triggered the navigation event. It can be `next` (when the user clicks the *next* button),\n * `previous` (when the user clicks the *previous* button), `step` (an enabled step link in the navigation pane),\n * or `skip` (when navigated using navigation pane or the *skip-to* button to the previously unvisited step).\n */\n onNavigate?: NonCancelableEventHandler<WizardProps.NavigateDetail>;\n}\n\nexport namespace WizardProps {\n export interface Step {\n title: string;\n info?: React.ReactNode;\n description?: React.ReactNode;\n content: React.ReactNode;\n errorText?: React.ReactNode;\n isOptional?: boolean;\n }\n\n export interface I18nStrings {\n stepNumberLabel?(stepNumber: number): string;\n collapsedStepsLabel?(stepNumber: number, stepsCount: number): string;\n skipToButtonLabel?(targetStep: WizardProps.Step, targetStepNumber: number): string;\n navigationAriaLabel?: string;\n errorIconAriaLabel?: string;\n cancelButton?: string;\n previousButton?: string;\n nextButton?: string;\n submitButton: string;\n optional?: string;\n }\n\n export interface NavigateDetail {\n requestedStepIndex: number;\n reason: WizardProps.NavigationReason;\n }\n\n export type NavigationReason = 'next' | 'previous' | 'step' | 'skip';\n}\n"]}
1
+ {"version":3,"file":"interfaces.js","sourceRoot":"lib/default/","sources":["wizard/interfaces.ts"],"names":[],"mappings":"","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\nimport { BaseComponentProps } from '../internal/base-component';\nimport { NonCancelableEventHandler } from '../internal/events';\n\nexport interface WizardProps extends BaseComponentProps {\n /**\n * Array of step objects. Each object represents a step in the wizard with the following properties:\n *\n * - `title` (string) - Text that's displayed as the title in the navigation pane and form header.\n * - `info` (ReactNode) - (Optional) Area for a page level info link that's displayed in the form header.\n * The page level info link should trigger the default help panel content for the step. Use the [link component](/components/link/) to display the link.\n * - `description` (ReactNode) - (Optional) Area below the form header for a page level description text to further explain the purpose, goal, or main actions of the step.\n * - `content` (ReactNode) - Main content area to display form sections, form fields, and controls.\n * - `errorText` (ReactNode) - (Optional) Error text that's displayed in a page level error alert.\n * Use this for rendering actionable server-side validation failure messages.\n * - `isOptional` (boolean) - Specifies whether the step is optional or required. If set to `true`, the text from `i18nStrings.optional`\n * is rendered next to the `title` in the navigation step label and the form header title.\n */\n steps: ReadonlyArray<WizardProps.Step>;\n\n /**\n * Index of the step that's currently displayed. The first step has an index of zero (0).\n *\n * If you don't set this property, the component starts on the first step and switches step automatically\n * when a user navigates using the buttons or an enabled step link in the navigation pane (that is, uncontrolled behavior).\n *\n * If you provide a value for this property, you must also set an `onNavigate` listener to update the property when\n * a user navigates (that is, controlled behavior).\n *\n * If you set it to a value that exceeds the maximum value (that is, the number of steps minus 1), its value is ignored and the component uses the maximum value.\n */\n activeStepIndex?: number;\n\n /**\n * An object containing all the necessary localized strings required by the component.\n *\n * - `stepNumberLabel` ((stepNumber: number) => string) - A function that accepts a number (1-based indexing),\n * and returns a human-readable, localized string displaying the step number in the navigation pane. For example, \"Step 1\" or \"Step 2\".\n * - `collapsedStepsLabel` ((stepNumber: number, stepsCount: number) => string) - A function that accepts two number parameters (1-based indexing),\n * and returns a string responsible for the navigation summary on smaller screens. For example, \"Step 1 of 3\". The parameters are as follows:\n * - `stepNumber` (number) - The step number that the user is currently on.\n * - `stepsCount` (number) - The total number of steps in the wizard.\n * - `skipToButtonLabel`: ((targetStep: WizardProps.Step, targetStepNumber: number) => string) - An optional function that accepts the target step object\n * and the target step number (1-based indexing), and returns a string to be used as the *skip-to* button label. For example, \"Skip to Step 2\" or \"Skip to end\".\n * - `navigationAriaLabel` (string) - The aria label for the navigation pane.\n * - `cancelButton` (string) - The text of the button that enables the user to exit the flow.\n * - `previousButton` (string) - The text of the button that enables the user to return to the previous step.\n * - `nextButton` (string) - The text of the button that enables the user to move to the next step.\n * - `submitButton` (string) - The text of the button that enables the user to submit the form.\n * - `optional` (string) - The text displayed next to the step title and form header title when a step is declared optional.\n */\n i18nStrings: WizardProps.I18nStrings;\n\n /**\n * Renders the *next* or *submit* button in a loading state.\n *\n * Use this if you need to wait for a response from the server before the user can proceed to the next step, such as during server-side validation or retrieving the next step's information.\n */\n isLoadingNextStep?: boolean;\n\n /**\n * When set to `false`, the *skip-to* button is never shown.\n * When set to `true`, the *skip-to* button may appear to offer faster navigation for the user.\n *\n * The *skip-to* button only allows to skip optional steps. It is shown when there is one or more optional\n * steps ahead having no required steps in-between.\n *\n * Note: the *skip-to* button requires the function i18nStrings.skipToButtonLabel to be defined.\n *\n * Defaults to `false`.\n */\n allowSkipTo?: boolean;\n\n /**\n * Specifies left-aligned secondary actions for the wizard. Use a button dropdown if multiple actions are required.\n */\n secondaryActions?: React.ReactNode;\n\n /**\n * Called when a user clicks the *cancel* button.\n * If a user has entered data in the form, you should prompt the user with a modal before exiting the wizard flow.\n */\n onCancel?: NonCancelableEventHandler;\n\n /**\n * Called when a user clicks the *submit* button.\n */\n onSubmit?: NonCancelableEventHandler;\n\n /**\n * Called when a user clicks the *next* button, the *previous* button, or an enabled step link in the navigation pane.\n *\n * The event `detail` includes the following:\n * - `requestedStepIndex` - The index of the requested step.\n * - `reason` - The user action that triggered the navigation event. It can be `next` (when the user clicks the *next* button),\n * `previous` (when the user clicks the *previous* button), `step` (an enabled step link in the navigation pane),\n * or `skip` (when navigated using navigation pane or the *skip-to* button to the previously unvisited step).\n */\n onNavigate?: NonCancelableEventHandler<WizardProps.NavigateDetail>;\n}\n\nexport namespace WizardProps {\n export interface Step {\n title: string;\n info?: React.ReactNode;\n description?: React.ReactNode;\n content: React.ReactNode;\n errorText?: React.ReactNode;\n isOptional?: boolean;\n }\n\n export interface I18nStrings {\n stepNumberLabel?(stepNumber: number): string;\n collapsedStepsLabel?(stepNumber: number, stepsCount: number): string;\n skipToButtonLabel?(targetStep: WizardProps.Step, targetStepNumber: number): string;\n navigationAriaLabel?: string;\n errorIconAriaLabel?: string;\n cancelButton?: string;\n previousButton?: string;\n nextButton?: string;\n submitButton: string;\n optional?: string;\n }\n\n export interface NavigateDetail {\n requestedStepIndex: number;\n reason: WizardProps.NavigationReason;\n }\n\n export type NavigationReason = 'next' | 'previous' | 'step' | 'skip';\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.d.ts","sourceRoot":"","sources":["../../../../src/wizard/internal/analytics.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAmC5C,eAAO,MAAM,gBAAgB,YAM5B,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,MAAM,GAAG,SAAS,SAY1D,CAAC;AAEF,eAAO,MAAM,cAAc,cAAe,MAAM,aAAa,MAAM,SAiBlE,CAAC;AAEF,eAAO,MAAM,aAAa,oBACP,MAAM,sBACH,MAAM,UAClB,YAAY,gBAAgB,aACzB,MAAM,SAYlB,CAAC;AAEF,eAAO,MAAM,WAAW,cAAe,MAAM,aAAa,MAAM,SAY/D,CAAC;AAEF,eAAO,MAAM,WAAW,cAAe,MAAM,aAAa,MAAM,SAY/D,CAAC"}
1
+ {"version":3,"file":"analytics.d.ts","sourceRoot":"lib/default/","sources":["wizard/internal/analytics.tsx"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAmC5C,eAAO,MAAM,gBAAgB,YAM5B,CAAC;AAEF,eAAO,MAAM,cAAc,aAAc,MAAM,GAAG,SAAS,SAY1D,CAAC;AAEF,eAAO,MAAM,cAAc,cAAe,MAAM,aAAa,MAAM,SAiBlE,CAAC;AAEF,eAAO,MAAM,aAAa,oBACP,MAAM,sBACH,MAAM,UAClB,YAAY,gBAAgB,aACzB,MAAM,SAYlB,CAAC;AAEF,eAAO,MAAM,WAAW,cAAe,MAAM,aAAa,MAAM,SAY/D,CAAC;AAEF,eAAO,MAAM,WAAW,cAAe,MAAM,aAAa,MAAM,SAY/D,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"analytics.js","sourceRoot":"","sources":["../../../../src/wizard/internal/analytics.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\n\nimport { PACKAGE_SOURCE, PACKAGE_VERSION } from '../../internal/environment';\nimport { Metrics } from '@cloudscape-design/component-toolkit/internal';\nimport { WizardProps } from '../interfaces';\n\nconst metrics = new Metrics(PACKAGE_SOURCE, PACKAGE_VERSION);\n\nconst prefix = 'csa_wizard';\n\nconst createEventType = (eventType: string) => `${prefix}_${eventType}`;\nconst createEventContext = (stepIndex = 0) => `${prefix}_step${stepIndex + 1}`;\nconst createEventDetail = (stepIndex = 0) => `step${stepIndex + 1}`;\n\n// A custom time cache is used to not clear the timer between navigation attempts\n// This allows us the ability to track time to attempt each step as well as the time to complete\n// each step\nlet timeCache: Record<string, number>;\nlet currentStepIndex: number;\nlet success: boolean;\n\nconst timeStart = (key = 'current') => {\n timeCache[key] = Date.now();\n};\n\nconst timeEnd = (key = 'current', clear = false) => {\n const start = timeCache[key];\n // No start time is available when starting the first step\n if (!start) {\n return undefined;\n }\n\n if (clear) {\n delete timeCache[key];\n }\n\n return (Date.now() - start) / 1000; // Convert to seconds\n};\n\nexport const trackStartWizard = () => {\n timeCache = {};\n currentStepIndex = 0;\n success = false;\n\n timeStart(prefix);\n};\n\nexport const trackEndWizard = (funnelId: string | undefined) => {\n // End the timer of the wizard\n const time = timeEnd(prefix, true);\n\n const eventContext = createEventContext(currentStepIndex);\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: `${success}`,\n eventType: createEventType('end'),\n ...(time !== undefined && { eventValue: time.toString() }),\n ...(funnelId && { funnel: funnelId }),\n });\n};\n\nexport const trackStartStep = (stepIndex: number, funnelId?: string) => {\n currentStepIndex = stepIndex;\n const eventContext = createEventContext(stepIndex);\n\n // End the timer of the previous step\n const time = timeEnd();\n\n // Start a new timer of the current step\n timeStart();\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(stepIndex),\n eventType: createEventType('step'),\n ...(funnelId && { funnel: funnelId }),\n ...(time !== undefined && { eventValue: time.toString() }),\n });\n};\n\nexport const trackNavigate = (\n activeStepIndex: number,\n requestedStepIndex: number,\n reason: WizardProps.NavigationReason,\n funnelId?: string\n) => {\n const eventContext = createEventContext(activeStepIndex);\n const time = timeEnd();\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(requestedStepIndex),\n eventType: createEventType('navigate'),\n eventValue: { reason, ...(time !== undefined && { time }) },\n ...(funnelId && { funnel: funnelId }),\n });\n};\n\nexport const trackSubmit = (stepIndex: number, funnelId?: string) => {\n success = true;\n const time = timeEnd(prefix);\n const eventContext = createEventContext(stepIndex);\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(stepIndex),\n eventType: createEventType('submit'),\n ...(time !== undefined && { eventValue: time.toString() }),\n ...(funnelId && { funnel: funnelId }),\n });\n};\n\nexport const trackCancel = (stepIndex: number, funnelId?: string) => {\n success = false;\n const time = timeEnd(prefix);\n const eventContext = createEventContext(stepIndex);\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(stepIndex),\n eventType: createEventType('cancel'),\n ...(time !== undefined && { eventValue: time.toString() }),\n ...(funnelId && { funnel: funnelId }),\n });\n};\n"]}
1
+ {"version":3,"file":"analytics.js","sourceRoot":"lib/default/","sources":["wizard/internal/analytics.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\n\nimport { PACKAGE_SOURCE, PACKAGE_VERSION } from '../../internal/environment';\nimport { Metrics } from '@cloudscape-design/component-toolkit/internal';\nimport { WizardProps } from '../interfaces';\n\nconst metrics = new Metrics(PACKAGE_SOURCE, PACKAGE_VERSION);\n\nconst prefix = 'csa_wizard';\n\nconst createEventType = (eventType: string) => `${prefix}_${eventType}`;\nconst createEventContext = (stepIndex = 0) => `${prefix}_step${stepIndex + 1}`;\nconst createEventDetail = (stepIndex = 0) => `step${stepIndex + 1}`;\n\n// A custom time cache is used to not clear the timer between navigation attempts\n// This allows us the ability to track time to attempt each step as well as the time to complete\n// each step\nlet timeCache: Record<string, number>;\nlet currentStepIndex: number;\nlet success: boolean;\n\nconst timeStart = (key = 'current') => {\n timeCache[key] = Date.now();\n};\n\nconst timeEnd = (key = 'current', clear = false) => {\n const start = timeCache[key];\n // No start time is available when starting the first step\n if (!start) {\n return undefined;\n }\n\n if (clear) {\n delete timeCache[key];\n }\n\n return (Date.now() - start) / 1000; // Convert to seconds\n};\n\nexport const trackStartWizard = () => {\n timeCache = {};\n currentStepIndex = 0;\n success = false;\n\n timeStart(prefix);\n};\n\nexport const trackEndWizard = (funnelId: string | undefined) => {\n // End the timer of the wizard\n const time = timeEnd(prefix, true);\n\n const eventContext = createEventContext(currentStepIndex);\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: `${success}`,\n eventType: createEventType('end'),\n ...(time !== undefined && { eventValue: time.toString() }),\n ...(funnelId && { funnel: funnelId }),\n });\n};\n\nexport const trackStartStep = (stepIndex: number, funnelId?: string) => {\n currentStepIndex = stepIndex;\n const eventContext = createEventContext(stepIndex);\n\n // End the timer of the previous step\n const time = timeEnd();\n\n // Start a new timer of the current step\n timeStart();\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(stepIndex),\n eventType: createEventType('step'),\n ...(funnelId && { funnel: funnelId }),\n ...(time !== undefined && { eventValue: time.toString() }),\n });\n};\n\nexport const trackNavigate = (\n activeStepIndex: number,\n requestedStepIndex: number,\n reason: WizardProps.NavigationReason,\n funnelId?: string\n) => {\n const eventContext = createEventContext(activeStepIndex);\n const time = timeEnd();\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(requestedStepIndex),\n eventType: createEventType('navigate'),\n eventValue: { reason, ...(time !== undefined && { time }) },\n ...(funnelId && { funnel: funnelId }),\n });\n};\n\nexport const trackSubmit = (stepIndex: number, funnelId?: string) => {\n success = true;\n const time = timeEnd(prefix);\n const eventContext = createEventContext(stepIndex);\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(stepIndex),\n eventType: createEventType('submit'),\n ...(time !== undefined && { eventValue: time.toString() }),\n ...(funnelId && { funnel: funnelId }),\n });\n};\n\nexport const trackCancel = (stepIndex: number, funnelId?: string) => {\n success = false;\n const time = timeEnd(prefix);\n const eventContext = createEventContext(stepIndex);\n\n metrics.sendPanoramaMetric({\n eventContext,\n eventDetail: createEventDetail(stepIndex),\n eventType: createEventType('cancel'),\n ...(time !== undefined && { eventValue: time.toString() }),\n ...(funnelId && { funnel: funnelId }),\n });\n};\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"unmount.d.ts","sourceRoot":"","sources":["../../../src/wizard/unmount.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,SAAS,EAAE,MAAM,IAAI,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAAC;IACxG,oBAAoB;IAIpB,MAAM;CAGP"}
1
+ {"version":3,"file":"unmount.d.ts","sourceRoot":"lib/default/","sources":["wizard/unmount.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,KAAK,CAAC,SAAS,CAAC;IAAE,SAAS,EAAE,MAAM,IAAI,CAAC;IAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CAAE,CAAC;IACxG,oBAAoB;IAIpB,MAAM;CAGP"}
@@ -1 +1 @@
1
- {"version":3,"file":"unmount.js","sourceRoot":"","sources":["../../../src/wizard/unmount.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,KAAK,CAAC,SAA+D;IACxG,oBAAoB;QAClB,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACF","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nexport default class Unmount extends React.Component<{ onUnmount: () => void; children: React.ReactNode }> {\n componentWillUnmount() {\n this.props.onUnmount();\n }\n\n render() {\n return this.props.children;\n }\n}\n"]}
1
+ {"version":3,"file":"unmount.js","sourceRoot":"lib/default/","sources":["wizard/unmount.ts"],"names":[],"mappings":"AAAA,qEAAqE;AACrE,sCAAsC;AACtC,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,KAAK,CAAC,SAA+D;IACxG,oBAAoB;QAClB,IAAI,CAAC,KAAK,CAAC,SAAS,EAAE,CAAC;IACzB,CAAC;IAED,MAAM;QACJ,OAAO,IAAI,CAAC,KAAK,CAAC,QAAQ,CAAC;IAC7B,CAAC;CACF","sourcesContent":["// Copyright Amazon.com, Inc. or its affiliates. All Rights Reserved.\n// SPDX-License-Identifier: Apache-2.0\nimport React from 'react';\n\nexport default class Unmount extends React.Component<{ onUnmount: () => void; children: React.ReactNode }> {\n componentWillUnmount() {\n this.props.onUnmount();\n }\n\n render() {\n return this.props.children;\n }\n}\n"]}
@@ -1 +1 @@
1
- {"version":3,"file":"wizard-actions.d.ts","sourceRoot":"","sources":["../../../src/wizard/wizard-actions.tsx"],"names":[],"mappings":";AASA,UAAU,kBAAkB;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,aAAa,GACd,EAAE,kBAAkB,eA2DpB"}
1
+ {"version":3,"file":"wizard-actions.d.ts","sourceRoot":"lib/default/","sources":["wizard/wizard-actions.tsx"],"names":[],"mappings":";AASA,UAAU,kBAAkB;IAC1B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;IAC1B,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,YAAY,EAAE,OAAO,CAAC;IACtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,eAAe,EAAE,MAAM,IAAI,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,IAAI,CAAC;CAC3B;AAED,MAAM,CAAC,OAAO,UAAU,aAAa,CAAC,EACpC,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,YAAY,EACZ,kBAAkB,EAClB,eAAe,EACf,UAAU,EACV,gBAAgB,EAChB,aAAa,GACd,EAAE,kBAAkB,eA2DpB"}