@xplortech/apollo-core 2.10.0 → 2.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (724) hide show
  1. package/.typings/apollo-components.html-data.json +134 -12
  2. package/AGENTS.md +27 -3
  3. package/README.md +12 -0
  4. package/build/components/accordion.css +1 -0
  5. package/build/components/application-shell.css +1 -0
  6. package/build/components/avatar.css +1 -0
  7. package/build/components/backdrop.css +1 -0
  8. package/build/components/badge.css +1 -0
  9. package/build/components/banner.css +1 -0
  10. package/build/components/breadcrumbs.css +1 -0
  11. package/build/components/button-row.css +1 -0
  12. package/build/components/button.css +1 -0
  13. package/build/components/calendar.css +1 -0
  14. package/build/components/checkbox-radio.css +1 -0
  15. package/build/components/choicelist.css +1 -0
  16. package/build/components/content-area.css +1 -0
  17. package/build/components/dashboard.css +1 -0
  18. package/build/components/data-card.css +1 -0
  19. package/build/components/divider.css +1 -0
  20. package/build/components/dropdown.css +1 -0
  21. package/build/components/dynamic-table-cell.css +1 -0
  22. package/build/components/dynamic-table-row.css +1 -0
  23. package/build/components/dynamic-table.css +1 -0
  24. package/build/components/grid.css +1 -0
  25. package/build/components/header-accordion.css +1 -0
  26. package/build/components/icon.css +1 -0
  27. package/build/components/input-color.css +1 -0
  28. package/build/components/input-date.css +1 -0
  29. package/build/components/input-file.css +1 -0
  30. package/build/components/input-phone.css +1 -0
  31. package/build/components/input-search.css +1 -0
  32. package/build/components/input-time.css +1 -0
  33. package/build/components/input.css +1 -0
  34. package/build/components/label.css +1 -0
  35. package/build/components/large-card.css +1 -0
  36. package/build/components/list-action.css +1 -0
  37. package/build/components/list-item.css +1 -0
  38. package/build/components/list.css +1 -0
  39. package/build/components/main-nav.css +1 -0
  40. package/build/components/modal.css +1 -0
  41. package/build/components/nav-item.css +1 -0
  42. package/build/components/pagination.css +1 -0
  43. package/build/components/panel.css +1 -0
  44. package/build/components/popover.css +1 -0
  45. package/build/components/progress-bar.css +1 -0
  46. package/build/components/progress-indicator.css +1 -0
  47. package/build/components/secondary-nav.css +1 -0
  48. package/build/components/select.css +1 -0
  49. package/build/components/side-nav.css +1 -0
  50. package/build/components/skeleton.css +1 -0
  51. package/build/components/slideout.css +1 -0
  52. package/build/components/spotlight.css +1 -0
  53. package/build/components/table-header-cell.css +1 -0
  54. package/build/components/table-header.css +1 -0
  55. package/build/components/table.css +1 -0
  56. package/build/components/tabs.css +1 -0
  57. package/build/components/tag.css +1 -0
  58. package/build/components/toast.css +1 -0
  59. package/build/components/toggle.css +1 -0
  60. package/build/components/toolbar.css +1 -0
  61. package/build/components/tooltip.css +1 -0
  62. package/build/components/top-nav.css +1 -0
  63. package/build/components/utility-bar.css +1 -0
  64. package/build/components-manifest.json +220 -0
  65. package/build/core.css +2 -0
  66. package/build/reset.css +394 -0
  67. package/build/style.css +2 -13120
  68. package/build/tailwind-theme.css +2 -0
  69. package/build/typography.css +1 -0
  70. package/build/variables/apollo.css +779 -0
  71. package/build/variables/field-edge.css +554 -0
  72. package/build/vendor/flatpickr.css +1 -0
  73. package/dist/apollo-core/apollo-core.css +2 -55
  74. package/dist/apollo-core/apollo-core.esm.js +1 -1
  75. package/dist/apollo-core/p-0095174c.entry.js +1 -0
  76. package/dist/apollo-core/p-020ecd66.entry.js +1 -0
  77. package/dist/apollo-core/p-0463c29f.entry.js +1 -0
  78. package/dist/apollo-core/p-091411e3.entry.js +1 -0
  79. package/dist/apollo-core/p-0be4dbb8.entry.js +1 -0
  80. package/dist/apollo-core/p-1139fac0.entry.js +1 -0
  81. package/dist/apollo-core/p-121d1a4b.entry.js +1 -0
  82. package/dist/apollo-core/p-140a96c7.entry.js +1 -0
  83. package/dist/apollo-core/p-1M1pu0C2.js +1 -0
  84. package/dist/apollo-core/p-1a417191.entry.js +1 -0
  85. package/dist/apollo-core/p-256ece8b.entry.js +1 -0
  86. package/dist/apollo-core/p-26861d09.entry.js +1 -0
  87. package/dist/apollo-core/p-26b6a0ed.entry.js +1 -0
  88. package/dist/apollo-core/p-39e71d86.entry.js +1 -0
  89. package/dist/apollo-core/p-3d9c90ee.entry.js +1 -0
  90. package/dist/apollo-core/p-3dd1de49.entry.js +1 -0
  91. package/dist/apollo-core/p-4129d971.entry.js +1 -0
  92. package/dist/apollo-core/p-46d21684.entry.js +1 -0
  93. package/dist/apollo-core/p-4e61587f.entry.js +1 -0
  94. package/dist/apollo-core/p-5afc9831.entry.js +1 -0
  95. package/dist/apollo-core/p-5ca18bc1.entry.js +1 -0
  96. package/dist/apollo-core/p-5d25a84a.entry.js +1 -0
  97. package/dist/apollo-core/p-5e5c5016.entry.js +1 -0
  98. package/dist/apollo-core/p-601b3ab5.entry.js +1 -0
  99. package/dist/apollo-core/p-616c5a32.entry.js +1 -0
  100. package/dist/apollo-core/p-638fd9b1.entry.js +1 -0
  101. package/dist/apollo-core/p-643c8038.entry.js +1 -0
  102. package/dist/apollo-core/p-707b1918.entry.js +1 -0
  103. package/dist/apollo-core/p-724c5038.entry.js +1 -0
  104. package/dist/apollo-core/p-76f64d65.entry.js +1 -0
  105. package/dist/apollo-core/p-7976cd3b.entry.js +1 -0
  106. package/dist/apollo-core/p-7f105d63.entry.js +1 -0
  107. package/dist/apollo-core/p-80a11cad.entry.js +1 -0
  108. package/dist/apollo-core/p-853418be.entry.js +1 -0
  109. package/dist/apollo-core/p-875e0eaa.entry.js +1 -0
  110. package/dist/apollo-core/p-8845106f.entry.js +1 -0
  111. package/dist/apollo-core/p-8a81ef98.entry.js +1 -0
  112. package/dist/apollo-core/p-8a925e9d.entry.js +1 -0
  113. package/dist/apollo-core/p-8ddbf2e2.entry.js +1 -0
  114. package/dist/apollo-core/p-9747cf43.entry.js +1 -0
  115. package/dist/apollo-core/p-9b0174b1.entry.js +1 -0
  116. package/dist/apollo-core/p-9bf2ff9f.entry.js +1 -0
  117. package/dist/apollo-core/p-BFTU3MAI.js +1 -0
  118. package/dist/apollo-core/p-BQtbf88X.js +1 -0
  119. package/dist/apollo-core/p-CWdQxaaX.js +1 -0
  120. package/dist/apollo-core/p-C_PEOQWj.js +1 -0
  121. package/dist/apollo-core/p-CzwViN3U.js +1 -0
  122. package/dist/apollo-core/p-DkqlawVY.js +1 -0
  123. package/dist/apollo-core/p-Dqb1pIRo.js +1 -0
  124. package/dist/apollo-core/p-_r9-FML8.js +1 -0
  125. package/dist/apollo-core/p-a0d3b7f8.entry.js +1 -0
  126. package/dist/apollo-core/p-a33b0943.entry.js +1 -0
  127. package/dist/apollo-core/p-b537f72d.entry.js +1 -0
  128. package/dist/apollo-core/p-ba41bbd5.entry.js +1 -0
  129. package/dist/apollo-core/p-bb22ed2a.entry.js +1 -0
  130. package/dist/apollo-core/p-c25aebe5.entry.js +1 -0
  131. package/dist/apollo-core/p-c427a31d.entry.js +1 -0
  132. package/dist/apollo-core/p-cde21f72.entry.js +1 -0
  133. package/dist/apollo-core/p-d288c1d1.entry.js +1 -0
  134. package/dist/apollo-core/p-d37488d4.entry.js +1 -0
  135. package/dist/apollo-core/p-d3f2b8b8.entry.js +1 -0
  136. package/dist/apollo-core/p-dfaba114.entry.js +1 -0
  137. package/dist/apollo-core/p-e00ed4f4.entry.js +1 -0
  138. package/dist/apollo-core/p-e2a16242.entry.js +1 -0
  139. package/dist/apollo-core/p-e4ae3f60.entry.js +1 -0
  140. package/dist/apollo-core/p-ec488f9c.entry.js +1 -0
  141. package/dist/apollo-core/p-efa21ec0.entry.js +1 -0
  142. package/dist/apollo-core/p-f199ad66.entry.js +1 -0
  143. package/dist/apollo-core/p-f2bfe6a6.entry.js +1 -0
  144. package/dist/apollo-core/p-fd2756d8.entry.js +1 -0
  145. package/dist/apollo-core/p-fef6c256.entry.js +1 -0
  146. package/dist/apollo-core/p-ff8acf15.entry.js +1 -0
  147. package/dist/apollo-core/p-ukZKsqqq.js +2 -0
  148. package/dist/cjs/_commonjsHelpers-BJu3ubxk.js +10 -0
  149. package/dist/cjs/apollo-core.cjs.js +2 -2
  150. package/dist/cjs/floating-ui.dom-DuvGwvW-.js +1710 -0
  151. package/dist/cjs/{index-BaXVr8ux.js → index-3cBvw409.js} +760 -9
  152. package/dist/cjs/index-DP4JWqOH.js +456 -0
  153. package/dist/cjs/lifecycle-DeSsFfQZ.js +74 -0
  154. package/dist/cjs/light-dom-slots-CS8Q9rRZ.js +19 -0
  155. package/dist/cjs/loader.cjs.js +2 -2
  156. package/dist/cjs/side-nav-slot-utils-DMog5BVN.js +41 -0
  157. package/dist/cjs/slot-presence-HmQUW2Ba.js +10 -0
  158. package/dist/cjs/tab-a11y-ids--A4ZoXEj.js +27 -0
  159. package/dist/cjs/top-nav-constants-DckvgAo7.js +5 -0
  160. package/dist/cjs/xpl-accordion.cjs.entry.js +5 -3
  161. package/dist/cjs/xpl-application-shell.cjs.entry.js +2 -2
  162. package/dist/cjs/xpl-avatar_3.cjs.entry.js +210 -0
  163. package/dist/cjs/xpl-backdrop.cjs.entry.js +19 -0
  164. package/dist/cjs/xpl-badge.cjs.entry.js +37 -0
  165. package/dist/cjs/xpl-banner.cjs.entry.js +74 -0
  166. package/dist/cjs/xpl-breadcrumb-item.cjs.entry.js +18 -0
  167. package/dist/cjs/xpl-breadcrumbs.cjs.entry.js +14 -0
  168. package/dist/cjs/xpl-button-row.cjs.entry.js +2 -2
  169. package/dist/cjs/xpl-button.cjs.entry.js +81 -0
  170. package/dist/cjs/xpl-calendar.cjs.entry.js +10 -6
  171. package/dist/cjs/xpl-checkbox.cjs.entry.js +32 -0
  172. package/dist/cjs/xpl-choicelist.cjs.entry.js +68 -0
  173. package/dist/cjs/xpl-content-area.cjs.entry.js +15 -0
  174. package/dist/cjs/xpl-dashboard.cjs.entry.js +14 -0
  175. package/dist/cjs/xpl-data-card.cjs.entry.js +111 -0
  176. package/dist/cjs/xpl-dropdown_4.cjs.entry.js +577 -0
  177. package/dist/cjs/xpl-dynamic-table-cell.cjs.entry.js +8 -6
  178. package/dist/cjs/xpl-dynamic-table-row.cjs.entry.js +5 -5
  179. package/dist/cjs/xpl-dynamic-table.cjs.entry.js +11 -18
  180. package/dist/cjs/xpl-grid-item.cjs.entry.js +2 -2
  181. package/dist/cjs/xpl-grid.cjs.entry.js +6 -6
  182. package/dist/cjs/xpl-header-accordion.cjs.entry.js +69 -0
  183. package/dist/{esm/xpl-avatar_54.entry.js → cjs/xpl-icon.cjs.entry.js} +1293 -10607
  184. package/dist/cjs/xpl-input-color.cjs.entry.js +435 -0
  185. package/dist/cjs/xpl-input-phone.cjs.entry.js +509 -0
  186. package/dist/cjs/xpl-input-time.cjs.entry.js +196 -0
  187. package/dist/cjs/xpl-input_4.cjs.entry.js +524 -0
  188. package/dist/cjs/xpl-large-card.cjs.entry.js +63 -4
  189. package/dist/cjs/xpl-list-item.cjs.entry.js +460 -0
  190. package/dist/cjs/xpl-list.cjs.entry.js +396 -0
  191. package/dist/cjs/xpl-main-nav.cjs.entry.js +2 -2
  192. package/dist/cjs/xpl-modal.cjs.entry.js +78 -0
  193. package/dist/cjs/xpl-nav-header-menu.cjs.entry.js +86 -0
  194. package/dist/cjs/xpl-nav-item.cjs.entry.js +25 -0
  195. package/dist/cjs/xpl-pagination.cjs.entry.js +112 -0
  196. package/dist/cjs/xpl-panel.cjs.entry.js +21 -0
  197. package/dist/cjs/xpl-popover.cjs.entry.js +265 -0
  198. package/dist/cjs/xpl-progress-bar.cjs.entry.js +41 -0
  199. package/dist/cjs/xpl-progress-indicator.cjs.entry.js +74 -0
  200. package/dist/cjs/xpl-secondary-nav.cjs.entry.js +14 -0
  201. package/dist/cjs/xpl-select_2.cjs.entry.js +493 -0
  202. package/dist/cjs/xpl-side-nav-header-item.cjs.entry.js +101 -0
  203. package/dist/cjs/xpl-side-nav-item.cjs.entry.js +130 -0
  204. package/dist/cjs/xpl-side-nav-section.cjs.entry.js +105 -0
  205. package/dist/cjs/xpl-side-nav.cjs.entry.js +272 -0
  206. package/dist/cjs/xpl-skeleton.cjs.entry.js +26 -0
  207. package/dist/cjs/xpl-slideout.cjs.entry.js +47 -0
  208. package/dist/cjs/xpl-spotlight.cjs.entry.js +722 -0
  209. package/dist/cjs/xpl-tab-panel.cjs.entry.js +24 -0
  210. package/dist/cjs/xpl-tab.cjs.entry.js +87 -0
  211. package/dist/cjs/xpl-table-header-cell.cjs.entry.js +5 -3
  212. package/dist/cjs/xpl-table-header.cjs.entry.js +2 -2
  213. package/dist/cjs/xpl-table.cjs.entry.js +185 -0
  214. package/dist/cjs/xpl-tabs.cjs.entry.js +373 -0
  215. package/dist/cjs/xpl-toast.cjs.entry.js +91 -0
  216. package/dist/cjs/xpl-toggle.cjs.entry.js +6 -6
  217. package/dist/cjs/xpl-toolbar.cjs.entry.js +3 -3
  218. package/dist/cjs/xpl-tooltip.cjs.entry.js +18 -0
  219. package/dist/cjs/xpl-top-nav-item.cjs.entry.js +435 -0
  220. package/dist/cjs/xpl-top-nav-menu.cjs.entry.js +91 -0
  221. package/dist/cjs/xpl-top-nav.cjs.entry.js +342 -0
  222. package/dist/cjs/xpl-utility-bar.cjs.entry.js +23 -0
  223. package/dist/collection/collection-manifest.json +4 -1
  224. package/dist/collection/components/xpl-accordion/accordion.stories.js +6 -2
  225. package/dist/collection/components/xpl-accordion/xpl-accordion.js +4 -2
  226. package/dist/collection/components/xpl-application-shell/application-shell.stories.js +19 -1
  227. package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +1 -1
  228. package/dist/collection/components/xpl-avatar/avatar.stories.js +19 -9
  229. package/dist/collection/components/xpl-avatar/xpl-avatar.js +12 -16
  230. package/dist/collection/components/xpl-backdrop/backdrop.stories.js +17 -3
  231. package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +1 -1
  232. package/dist/collection/components/xpl-badge/badge.stories.js +21 -8
  233. package/dist/collection/components/xpl-badge/xpl-badge.js +4 -5
  234. package/dist/collection/components/xpl-banner/banner.stories.js +1 -1
  235. package/dist/collection/components/xpl-banner/xpl-banner.js +7 -9
  236. package/dist/collection/components/xpl-breadcrumbs/breadcrumbs.stories.js +5 -0
  237. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +1 -1
  238. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +1 -1
  239. package/dist/collection/components/xpl-button/button.stories.js +2 -0
  240. package/dist/collection/components/xpl-button/xpl-button.js +17 -14
  241. package/dist/collection/components/xpl-button-row/button-row.stories.js +9 -0
  242. package/dist/collection/components/xpl-button-row/xpl-button-row.js +1 -1
  243. package/dist/collection/components/xpl-calendar/calendar.stories.js +11 -3
  244. package/dist/collection/components/xpl-calendar/xpl-calendar.js +9 -5
  245. package/dist/collection/components/xpl-checkbox/checkbox.stories.js +11 -2
  246. package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +7 -8
  247. package/dist/collection/components/xpl-choicelist/choicelist.stories.js +24 -0
  248. package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +6 -6
  249. package/dist/collection/components/xpl-content-area/content-area.stories.js +13 -24
  250. package/dist/collection/components/xpl-content-area/xpl-content-area.js +1 -1
  251. package/dist/collection/components/xpl-dashboard/dashboard.stories.js +9 -0
  252. package/dist/collection/components/xpl-dashboard/xpl-dashboard.js +1 -1
  253. package/dist/collection/components/xpl-data-card/data-card.stories.js +55 -0
  254. package/dist/collection/components/xpl-data-card/xpl-data-card.js +69 -5
  255. package/dist/collection/components/xpl-divider/divider.stories.js +11 -0
  256. package/dist/collection/components/xpl-divider/xpl-divider.js +1 -1
  257. package/dist/collection/components/xpl-dropdown/dropdown.stories.js +13 -5
  258. package/dist/collection/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.js +2 -17
  259. package/dist/collection/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.js +1 -1
  260. package/dist/collection/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.js +9 -5
  261. package/dist/collection/components/xpl-dropdown/xpl-dropdown.js +108 -116
  262. package/dist/collection/components/xpl-dynamic-table/dynamic-table.stories.js +5 -1
  263. package/dist/collection/components/xpl-dynamic-table/xpl-dynamic-table.js +13 -19
  264. package/dist/collection/components/xpl-dynamic-table-cell/xpl-dynamic-table-cell.js +7 -5
  265. package/dist/collection/components/xpl-dynamic-table-row/xpl-dynamic-table-row.js +4 -4
  266. package/dist/collection/components/xpl-grid/grid.stories.js +9 -0
  267. package/dist/collection/components/xpl-grid/xpl-grid.js +5 -5
  268. package/dist/collection/components/xpl-grid-item/xpl-grid-item.js +1 -1
  269. package/dist/collection/components/xpl-header-accordion/header-accordion.stories.js +6 -2
  270. package/dist/collection/components/xpl-header-accordion/xpl-header-accordion.js +7 -23
  271. package/dist/collection/components/xpl-icon/icons.stories.js +21 -2
  272. package/dist/collection/components/xpl-icon/xpl-icon.js +2 -3
  273. package/dist/collection/components/xpl-input/input.stories.js +120 -104
  274. package/dist/collection/components/xpl-input/xpl-input-color/color-utils.js +12 -6
  275. package/dist/collection/components/xpl-input/xpl-input-color/xpl-input-color.js +47 -38
  276. package/dist/collection/components/xpl-input/xpl-input-date/xpl-input-date.js +31 -14
  277. package/dist/collection/components/xpl-input/xpl-input-file/xpl-input-file.js +11 -13
  278. package/dist/collection/components/xpl-input/xpl-input-phone/xpl-input-phone.js +38 -41
  279. package/dist/collection/components/xpl-input/xpl-input-search/xpl-input-search.js +5 -8
  280. package/dist/collection/components/xpl-input/xpl-input-time/xpl-input-time.js +11 -10
  281. package/dist/collection/components/xpl-input/xpl-input.js +69 -37
  282. package/dist/collection/components/xpl-large-card/large-card.stories.js +27 -3
  283. package/dist/collection/components/xpl-large-card/xpl-large-card.js +69 -3
  284. package/dist/collection/components/xpl-list/list.stories.js +11 -2
  285. package/dist/collection/components/xpl-list/xpl-list-item/xpl-list-item.js +29 -31
  286. package/dist/collection/components/xpl-list/xpl-list.js +21 -26
  287. package/dist/collection/components/xpl-main-nav/main-nav.stories.js +5 -0
  288. package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +1 -1
  289. package/dist/collection/components/xpl-modal/modal.stories.js +15 -6
  290. package/dist/collection/components/xpl-modal/xpl-modal.js +21 -8
  291. package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +2 -2
  292. package/dist/collection/components/xpl-pagination/pagination.stories.js +10 -2
  293. package/dist/collection/components/xpl-pagination/xpl-pagination.js +10 -12
  294. package/dist/collection/components/xpl-panel/panel.stories.js +9 -0
  295. package/dist/collection/components/xpl-panel/xpl-panel.js +2 -2
  296. package/dist/collection/components/xpl-popover/popover.stories.js +15 -5
  297. package/dist/collection/components/xpl-popover/xpl-popover.js +36 -8
  298. package/dist/collection/components/xpl-progress-bar/progress-bar.stories.js +10 -1
  299. package/dist/collection/components/xpl-progress-bar/xpl-progress-bar.js +2 -2
  300. package/dist/collection/components/xpl-progress-indicator/progress-indicator.stories.js +9 -1
  301. package/dist/collection/components/xpl-progress-indicator/xpl-progress-indicator.js +1 -1
  302. package/dist/collection/components/xpl-radio/radio.stories.js +9 -0
  303. package/dist/collection/components/xpl-radio/xpl-radio.js +7 -7
  304. package/dist/collection/components/xpl-secondary-nav/secondary-nav.stories.js +10 -5
  305. package/dist/collection/components/xpl-secondary-nav/xpl-secondary-nav.js +1 -1
  306. package/dist/collection/components/xpl-select/select.stories.js +11 -8
  307. package/dist/collection/components/xpl-select/xpl-select.js +91 -49
  308. package/dist/collection/components/xpl-side-nav/side-nav-slot-utils.js +35 -0
  309. package/dist/collection/components/xpl-side-nav/side-nav.stories.js +454 -18
  310. package/dist/collection/components/xpl-side-nav/xpl-side-nav-header-item/xpl-side-nav-header-item.js +201 -0
  311. package/dist/collection/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.js +10 -11
  312. package/dist/collection/components/xpl-side-nav/xpl-side-nav-section/xpl-side-nav-section.js +186 -0
  313. package/dist/collection/components/xpl-side-nav/xpl-side-nav.js +75 -12
  314. package/dist/collection/components/xpl-skeleton/skeleton.stories.js +10 -1
  315. package/dist/collection/components/xpl-skeleton/xpl-skeleton.js +3 -3
  316. package/dist/collection/components/xpl-slideout/slideout.stories.js +13 -0
  317. package/dist/collection/components/xpl-slideout/xpl-slideout.js +4 -1
  318. package/dist/collection/components/xpl-spotlight/spotlight.stories.js +22 -15
  319. package/dist/collection/components/xpl-spotlight/xpl-spotlight.js +44 -49
  320. package/dist/collection/components/xpl-tab/xpl-tab.js +63 -8
  321. package/dist/collection/components/xpl-tab-panel/xpl-tab-panel.js +3 -4
  322. package/dist/collection/components/xpl-table/table.stories.js +11 -2
  323. package/dist/collection/components/xpl-table/xpl-table.js +52 -36
  324. package/dist/collection/components/xpl-table-header/table-header.stories.js +9 -1
  325. package/dist/collection/components/xpl-table-header/xpl-table-header.js +1 -1
  326. package/dist/collection/components/xpl-table-header-cell/table-header-cell.stories.js +10 -2
  327. package/dist/collection/components/xpl-table-header-cell/xpl-table-header-cell.js +4 -2
  328. package/dist/collection/components/xpl-tabs/segment-control.stories.js +10 -1
  329. package/dist/collection/components/xpl-tabs/tabs.shared.js +77 -19
  330. package/dist/collection/components/xpl-tabs/tabs.stories.js +14 -2
  331. package/dist/collection/components/xpl-tabs/xpl-tabs.js +29 -25
  332. package/dist/collection/components/xpl-tag/tag.stories.js +15 -9
  333. package/dist/collection/components/xpl-tag/xpl-tag.js +5 -7
  334. package/dist/collection/components/xpl-toast/toast.stories.js +43 -17
  335. package/dist/collection/components/xpl-toast/xpl-toast.js +107 -56
  336. package/dist/collection/components/xpl-toggle/toggle.stories.js +8 -1
  337. package/dist/collection/components/xpl-toggle/xpl-toggle.js +5 -5
  338. package/dist/collection/components/xpl-toolbar/toolbar.stories.js +39 -0
  339. package/dist/collection/components/xpl-toolbar/xpl-toolbar.js +2 -2
  340. package/dist/collection/components/xpl-tooltip/tooltip.stories.js +9 -0
  341. package/dist/collection/components/xpl-tooltip/xpl-tooltip.js +1 -1
  342. package/dist/collection/components/xpl-top-nav/top-nav-constants.js +1 -0
  343. package/dist/collection/components/xpl-top-nav/top-nav.stories.js +160 -21
  344. package/dist/collection/components/xpl-top-nav/xpl-nav-header-menu/xpl-nav-header-menu.js +11 -5
  345. package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/top-nav-item-constants.js +2 -0
  346. package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.js +335 -97
  347. package/dist/collection/components/xpl-top-nav/xpl-top-nav-menu/xpl-top-nav-menu.js +114 -0
  348. package/dist/collection/components/xpl-top-nav/xpl-top-nav.js +101 -33
  349. package/dist/collection/components/xpl-utility-bar/utility-bar.stories.js +16 -9
  350. package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +1 -1
  351. package/dist/collection/utils/floating.js +69 -0
  352. package/dist/collection/utils/layout-ancestors.js +7 -0
  353. package/dist/collection/utils/lifecycle.js +31 -10
  354. package/dist/collection/utils/light-dom-slots.js +15 -0
  355. package/dist/collection/utils/slot-presence.js +6 -0
  356. package/dist/collection/utils/ssr-known-mismatches.js +50 -0
  357. package/dist/collection/utils/tab-a11y-ids.js +1 -2
  358. package/dist/components/index.d.ts +6 -0
  359. package/dist/components/index.js +1 -1
  360. package/dist/components/p-1M1pu0C2.js +1 -0
  361. package/dist/components/p-2jYZ7ACH.js +1 -0
  362. package/dist/components/p-BGqQbjLl.js +1 -0
  363. package/dist/components/p-BQtbf88X.js +1 -0
  364. package/dist/components/p-BSHdGbmH.js +1 -0
  365. package/dist/components/p-BnTsRbko.js +1 -0
  366. package/dist/components/p-Bseq_BgD.js +1 -0
  367. package/dist/components/p-CCgZCY_A.js +1 -0
  368. package/dist/components/p-CJzsLWeV.js +1 -0
  369. package/dist/components/p-CRKY79vL.js +1 -0
  370. package/dist/components/p-C_PEOQWj.js +1 -0
  371. package/dist/components/p-CjbPCnPP.js +1 -0
  372. package/dist/components/p-Cjxw-qOg.js +1 -0
  373. package/dist/components/p-D6JUVA1x.js +1 -0
  374. package/dist/components/p-DFGw0APN.js +1 -0
  375. package/dist/components/p-DLLQBDCb.js +1 -0
  376. package/dist/components/p-DS2Kv5fl.js +1 -0
  377. package/dist/components/p-DWUJ_jsx.js +1 -0
  378. package/dist/components/p-Di1NDy0w.js +1 -0
  379. package/dist/components/p-DkM7jyQB.js +1 -0
  380. package/dist/components/p-DkqlawVY.js +1 -0
  381. package/dist/components/p-Dqb1pIRo.js +1 -0
  382. package/dist/components/p-DsRsm61K.js +1 -0
  383. package/dist/components/p-DywQ3S73.js +1 -0
  384. package/dist/components/p-Dzp5p-eh.js +1 -0
  385. package/dist/components/p-Mehog36m.js +1 -0
  386. package/dist/components/p-RYnBuuDE.js +1 -0
  387. package/dist/components/p-_r9-FML8.js +1 -0
  388. package/dist/components/{p-B1PBAEzg.js → p-imCMp2Nl.js} +1 -1
  389. package/dist/components/xpl-accordion.js +1 -1
  390. package/dist/components/xpl-application-shell.js +1 -1
  391. package/dist/components/xpl-avatar.js +1 -1
  392. package/dist/components/xpl-backdrop.js +1 -1
  393. package/dist/components/xpl-badge.js +1 -1
  394. package/dist/components/xpl-banner.js +1 -1
  395. package/dist/components/xpl-breadcrumb-item.js +1 -1
  396. package/dist/components/xpl-breadcrumbs.js +1 -1
  397. package/dist/components/xpl-button-row.js +1 -1
  398. package/dist/components/xpl-button.js +1 -1
  399. package/dist/components/xpl-calendar.js +1 -1
  400. package/dist/components/xpl-checkbox.js +1 -1
  401. package/dist/components/xpl-choicelist.js +1 -1
  402. package/dist/components/xpl-content-area.js +1 -1
  403. package/dist/components/xpl-dashboard.js +1 -1
  404. package/dist/components/xpl-data-card.js +1 -1
  405. package/dist/components/xpl-divider.js +1 -1
  406. package/dist/components/xpl-dropdown-group.js +1 -1
  407. package/dist/components/xpl-dropdown-heading.js +1 -1
  408. package/dist/components/xpl-dropdown-option.js +1 -1
  409. package/dist/components/xpl-dropdown.js +1 -1
  410. package/dist/components/xpl-dynamic-table-cell.js +1 -1
  411. package/dist/components/xpl-dynamic-table-row.js +1 -1
  412. package/dist/components/xpl-dynamic-table.js +1 -1
  413. package/dist/components/xpl-grid-item.js +1 -1
  414. package/dist/components/xpl-grid.js +1 -1
  415. package/dist/components/xpl-header-accordion.js +1 -1
  416. package/dist/components/xpl-icon.js +1 -1
  417. package/dist/components/xpl-input-color.js +1 -1
  418. package/dist/components/xpl-input-date.js +1 -1
  419. package/dist/components/xpl-input-file.js +1 -1
  420. package/dist/components/xpl-input-phone.js +1 -1
  421. package/dist/components/xpl-input-search.js +1 -1
  422. package/dist/components/xpl-input-time.js +1 -1
  423. package/dist/components/xpl-input.js +1 -1
  424. package/dist/components/xpl-large-card.js +1 -1
  425. package/dist/components/xpl-list-item.js +1 -1
  426. package/dist/components/xpl-list.js +1 -1
  427. package/dist/components/xpl-main-nav.js +1 -1
  428. package/dist/components/xpl-modal.js +1 -1
  429. package/dist/components/xpl-nav-header-menu.js +1 -1
  430. package/dist/components/xpl-nav-item.js +1 -1
  431. package/dist/components/xpl-pagination.js +1 -1
  432. package/dist/components/xpl-panel.js +1 -1
  433. package/dist/components/xpl-popover.js +1 -1
  434. package/dist/components/xpl-progress-bar.js +1 -1
  435. package/dist/components/xpl-progress-indicator.js +1 -1
  436. package/dist/components/xpl-radio.js +1 -1
  437. package/dist/components/xpl-secondary-nav.js +1 -1
  438. package/dist/components/xpl-select.js +1 -1
  439. package/dist/components/xpl-side-nav-header-item.d.ts +11 -0
  440. package/dist/components/xpl-side-nav-header-item.js +1 -0
  441. package/dist/components/xpl-side-nav-item.js +1 -1
  442. package/dist/components/xpl-side-nav-section.d.ts +11 -0
  443. package/dist/components/xpl-side-nav-section.js +1 -0
  444. package/dist/components/xpl-side-nav.js +1 -1
  445. package/dist/components/xpl-skeleton.js +1 -1
  446. package/dist/components/xpl-slideout.js +1 -1
  447. package/dist/components/xpl-spotlight.js +1 -1
  448. package/dist/components/xpl-tab-panel.js +1 -1
  449. package/dist/components/xpl-tab.js +1 -1
  450. package/dist/components/xpl-table-header-cell.js +1 -1
  451. package/dist/components/xpl-table-header.js +1 -1
  452. package/dist/components/xpl-table.js +1 -1
  453. package/dist/components/xpl-tabs.js +1 -1
  454. package/dist/components/xpl-tag.js +1 -1
  455. package/dist/components/xpl-toast.js +1 -1
  456. package/dist/components/xpl-toggle.js +1 -1
  457. package/dist/components/xpl-toolbar.js +1 -1
  458. package/dist/components/xpl-tooltip.js +1 -1
  459. package/dist/components/xpl-top-nav-item.js +1 -1
  460. package/dist/components/xpl-top-nav-menu.d.ts +11 -0
  461. package/dist/components/xpl-top-nav-menu.js +1 -0
  462. package/dist/components/xpl-top-nav.js +1 -1
  463. package/dist/components/xpl-utility-bar.js +1 -1
  464. package/dist/css/typography.stories.js +9 -0
  465. package/dist/docs/xpl-application-shell/readme.md +33 -0
  466. package/dist/docs/xpl-backdrop/readme.md +7 -0
  467. package/dist/docs/xpl-badge/readme.md +2 -0
  468. package/dist/docs/xpl-breadcrumbs/xpl-breadcrumbs/readme.md +9 -0
  469. package/dist/docs/xpl-button/readme.md +4 -2
  470. package/dist/docs/xpl-checkbox/readme.md +12 -0
  471. package/dist/docs/xpl-choicelist/readme.md +21 -0
  472. package/dist/docs/xpl-content-area/readme.md +8 -0
  473. package/dist/docs/xpl-data-card/readme.md +26 -0
  474. package/dist/docs/xpl-dropdown/readme.md +32 -6
  475. package/dist/docs/xpl-dynamic-table/readme.md +35 -0
  476. package/dist/docs/xpl-header-accordion/readme.md +18 -0
  477. package/dist/docs/xpl-icon/readme.md +23 -0
  478. package/dist/docs/xpl-input/xpl-input-color/readme.md +18 -0
  479. package/dist/docs/xpl-input/xpl-input-file/readme.md +13 -0
  480. package/dist/docs/xpl-input/xpl-input-time/readme.md +9 -0
  481. package/dist/docs/xpl-large-card/readme.md +18 -0
  482. package/dist/docs/xpl-list/readme.md +2 -2
  483. package/dist/docs/xpl-list/xpl-list-item/readme.md +3 -3
  484. package/dist/docs/xpl-main-nav/readme.md +16 -0
  485. package/dist/docs/xpl-modal/readme.md +20 -0
  486. package/dist/docs/xpl-nav-item/readme.md +14 -0
  487. package/dist/docs/xpl-pagination/readme.md +29 -0
  488. package/dist/docs/xpl-radio/readme.md +12 -0
  489. package/dist/docs/xpl-secondary-nav/readme.md +25 -0
  490. package/dist/docs/xpl-select/readme.md +13 -0
  491. package/dist/docs/xpl-side-nav/readme.md +12 -7
  492. package/dist/docs/xpl-side-nav/xpl-side-nav-header-item/readme.md +155 -0
  493. package/dist/docs/xpl-side-nav/xpl-side-nav-item/readme.md +16 -6
  494. package/dist/docs/xpl-side-nav/xpl-side-nav-section/readme.md +126 -0
  495. package/dist/docs/xpl-slideout/readme.md +23 -0
  496. package/dist/docs/xpl-tab/readme.md +14 -8
  497. package/dist/docs/xpl-table/readme.md +4 -4
  498. package/dist/docs/xpl-toast/readme.md +90 -7
  499. package/dist/docs/xpl-toggle/readme.md +46 -0
  500. package/dist/docs/xpl-toolbar/readme.md +19 -0
  501. package/dist/docs/xpl-top-nav/readme.md +5 -1
  502. package/dist/docs/xpl-top-nav/xpl-top-nav-item/readme.md +79 -20
  503. package/dist/docs/xpl-top-nav/xpl-top-nav-menu/readme.md +96 -0
  504. package/dist/docs/xpl-utility-bar/readme.md +12 -0
  505. package/dist/docs.d.ts +480 -0
  506. package/dist/docs.json +16441 -0
  507. package/dist/esm/_commonjsHelpers-BFTU3MAI.js +7 -0
  508. package/dist/esm/apollo-core.js +3 -3
  509. package/dist/esm/floating-ui.dom-1M1pu0C2.js +1702 -0
  510. package/dist/esm/index-BhYfWG18.js +454 -0
  511. package/dist/esm/{index-CXkZUm1c.js → index-ukZKsqqq.js} +760 -9
  512. package/dist/esm/lifecycle-Dqb1pIRo.js +71 -0
  513. package/dist/esm/light-dom-slots-DkqlawVY.js +17 -0
  514. package/dist/esm/loader.js +3 -3
  515. package/dist/esm/side-nav-slot-utils-C_PEOQWj.js +37 -0
  516. package/dist/esm/slot-presence-_r9-FML8.js +8 -0
  517. package/dist/esm/tab-a11y-ids-BQtbf88X.js +23 -0
  518. package/dist/esm/top-nav-constants-CWdQxaaX.js +3 -0
  519. package/dist/esm/xpl-accordion.entry.js +5 -3
  520. package/dist/esm/xpl-application-shell.entry.js +2 -2
  521. package/dist/esm/xpl-avatar_3.entry.js +206 -0
  522. package/dist/esm/xpl-backdrop.entry.js +17 -0
  523. package/dist/esm/xpl-badge.entry.js +35 -0
  524. package/dist/esm/xpl-banner.entry.js +72 -0
  525. package/dist/esm/xpl-breadcrumb-item.entry.js +16 -0
  526. package/dist/esm/xpl-breadcrumbs.entry.js +12 -0
  527. package/dist/esm/xpl-button-row.entry.js +2 -2
  528. package/dist/esm/xpl-button.entry.js +79 -0
  529. package/dist/esm/xpl-calendar.entry.js +10 -6
  530. package/dist/esm/xpl-checkbox.entry.js +30 -0
  531. package/dist/esm/xpl-choicelist.entry.js +66 -0
  532. package/dist/esm/xpl-content-area.entry.js +13 -0
  533. package/dist/esm/xpl-dashboard.entry.js +12 -0
  534. package/dist/esm/xpl-data-card.entry.js +109 -0
  535. package/dist/esm/xpl-dropdown_4.entry.js +572 -0
  536. package/dist/esm/xpl-dynamic-table-cell.entry.js +8 -6
  537. package/dist/esm/xpl-dynamic-table-row.entry.js +5 -5
  538. package/dist/esm/xpl-dynamic-table.entry.js +11 -18
  539. package/dist/esm/xpl-grid-item.entry.js +2 -2
  540. package/dist/esm/xpl-grid.entry.js +6 -6
  541. package/dist/esm/xpl-header-accordion.entry.js +67 -0
  542. package/dist/{cjs/xpl-avatar_54.cjs.entry.js → esm/xpl-icon.entry.js} +1290 -10661
  543. package/dist/esm/xpl-input-color.entry.js +433 -0
  544. package/dist/esm/xpl-input-phone.entry.js +507 -0
  545. package/dist/esm/xpl-input-time.entry.js +194 -0
  546. package/dist/esm/xpl-input_4.entry.js +519 -0
  547. package/dist/esm/xpl-large-card.entry.js +63 -4
  548. package/dist/esm/xpl-list-item.entry.js +458 -0
  549. package/dist/esm/xpl-list.entry.js +394 -0
  550. package/dist/esm/xpl-main-nav.entry.js +2 -2
  551. package/dist/esm/xpl-modal.entry.js +76 -0
  552. package/dist/esm/xpl-nav-header-menu.entry.js +84 -0
  553. package/dist/esm/xpl-nav-item.entry.js +23 -0
  554. package/dist/esm/xpl-pagination.entry.js +110 -0
  555. package/dist/esm/xpl-panel.entry.js +19 -0
  556. package/dist/esm/xpl-popover.entry.js +263 -0
  557. package/dist/esm/xpl-progress-bar.entry.js +39 -0
  558. package/dist/esm/xpl-progress-indicator.entry.js +72 -0
  559. package/dist/esm/xpl-secondary-nav.entry.js +12 -0
  560. package/dist/esm/xpl-select_2.entry.js +490 -0
  561. package/dist/esm/xpl-side-nav-header-item.entry.js +99 -0
  562. package/dist/esm/xpl-side-nav-item.entry.js +128 -0
  563. package/dist/esm/xpl-side-nav-section.entry.js +103 -0
  564. package/dist/esm/xpl-side-nav.entry.js +270 -0
  565. package/dist/esm/xpl-skeleton.entry.js +24 -0
  566. package/dist/esm/xpl-slideout.entry.js +45 -0
  567. package/dist/esm/xpl-spotlight.entry.js +720 -0
  568. package/dist/esm/xpl-tab-panel.entry.js +22 -0
  569. package/dist/esm/xpl-tab.entry.js +85 -0
  570. package/dist/esm/xpl-table-header-cell.entry.js +5 -3
  571. package/dist/esm/xpl-table-header.entry.js +2 -2
  572. package/dist/esm/xpl-table.entry.js +183 -0
  573. package/dist/esm/xpl-tabs.entry.js +371 -0
  574. package/dist/esm/xpl-toast.entry.js +89 -0
  575. package/dist/esm/xpl-toggle.entry.js +6 -6
  576. package/dist/esm/xpl-toolbar.entry.js +3 -3
  577. package/dist/esm/xpl-tooltip.entry.js +16 -0
  578. package/dist/esm/xpl-top-nav-item.entry.js +433 -0
  579. package/dist/esm/xpl-top-nav-menu.entry.js +89 -0
  580. package/dist/esm/xpl-top-nav.entry.js +340 -0
  581. package/dist/esm/xpl-utility-bar.entry.js +21 -0
  582. package/dist/types/components/xpl-accordion/accordion.stories.d.ts +11 -2
  583. package/dist/types/components/xpl-application-shell/application-shell.stories.d.ts +5 -23
  584. package/dist/types/components/xpl-application-shell/xpl-application-shell.d.ts +1 -1
  585. package/dist/types/components/xpl-avatar/avatar.stories.d.ts +17 -116
  586. package/dist/types/components/xpl-backdrop/backdrop.stories.d.ts +2 -0
  587. package/dist/types/components/xpl-badge/badge.stories.d.ts +7 -0
  588. package/dist/types/components/xpl-breadcrumbs/breadcrumbs.stories.d.ts +10 -27
  589. package/dist/types/components/xpl-button/button.stories.d.ts +4 -0
  590. package/dist/types/components/xpl-button-row/button-row.stories.d.ts +10 -21
  591. package/dist/types/components/xpl-calendar/calendar.stories.d.ts +11 -28
  592. package/dist/types/components/xpl-checkbox/checkbox.stories.d.ts +13 -31
  593. package/dist/types/components/xpl-choicelist/choicelist.stories.d.ts +9 -23
  594. package/dist/types/components/xpl-content-area/content-area.stories.d.ts +7 -1
  595. package/dist/types/components/xpl-dashboard/dashboard.stories.d.ts +8 -17
  596. package/dist/types/components/xpl-data-card/data-card.stories.d.ts +32 -37
  597. package/dist/types/components/xpl-data-card/xpl-data-card.d.ts +12 -0
  598. package/dist/types/components/xpl-divider/divider.stories.d.ts +10 -23
  599. package/dist/types/components/xpl-dropdown/dropdown.stories.d.ts +160 -8
  600. package/dist/types/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.d.ts +1 -1
  601. package/dist/types/components/xpl-dropdown/xpl-dropdown.d.ts +7 -9
  602. package/dist/types/components/xpl-dynamic-table/dynamic-table.stories.d.ts +7 -22
  603. package/dist/types/components/xpl-dynamic-table/xpl-dynamic-table.d.ts +2 -1
  604. package/dist/types/components/xpl-grid/grid.stories.d.ts +23 -47
  605. package/dist/types/components/xpl-header-accordion/header-accordion.stories.d.ts +8 -24
  606. package/dist/types/components/xpl-header-accordion/xpl-header-accordion.d.ts +0 -2
  607. package/dist/types/components/xpl-icon/icons.stories.d.ts +16 -39
  608. package/dist/types/components/xpl-input/input.stories.d.ts +255 -54
  609. package/dist/types/components/xpl-input/xpl-input-date/xpl-input-date.d.ts +1 -1
  610. package/dist/types/components/xpl-input/xpl-input-file/xpl-input-file.d.ts +1 -1
  611. package/dist/types/components/xpl-input/xpl-input-phone/xpl-input-phone.d.ts +2 -2
  612. package/dist/types/components/xpl-input/xpl-input-time/time-utils.d.ts +1 -1
  613. package/dist/types/components/xpl-input/xpl-input-time/xpl-input-time.d.ts +1 -1
  614. package/dist/types/components/xpl-input/xpl-input.d.ts +11 -6
  615. package/dist/types/components/xpl-large-card/large-card.stories.d.ts +12 -30
  616. package/dist/types/components/xpl-large-card/xpl-large-card.d.ts +12 -0
  617. package/dist/types/components/xpl-list/list.stories.d.ts +33 -1
  618. package/dist/types/components/xpl-list/listitem.d.ts +5 -0
  619. package/dist/types/components/xpl-list/xpl-list-item/xpl-list-item.d.ts +0 -1
  620. package/dist/types/components/xpl-main-nav/main-nav.stories.d.ts +7 -1
  621. package/dist/types/components/xpl-modal/modal.stories.d.ts +16 -16
  622. package/dist/types/components/xpl-modal/xpl-modal.d.ts +3 -1
  623. package/dist/types/components/xpl-pagination/pagination.stories.d.ts +9 -30
  624. package/dist/types/components/xpl-panel/panel.stories.d.ts +9 -1
  625. package/dist/types/components/xpl-popover/popover.stories.d.ts +12 -3
  626. package/dist/types/components/xpl-popover/xpl-popover.d.ts +4 -2
  627. package/dist/types/components/xpl-progress-bar/progress-bar.stories.d.ts +13 -24
  628. package/dist/types/components/xpl-progress-indicator/progress-indicator.stories.d.ts +2 -0
  629. package/dist/types/components/xpl-radio/radio.stories.d.ts +3 -0
  630. package/dist/types/components/xpl-secondary-nav/secondary-nav.stories.d.ts +4 -1
  631. package/dist/types/components/xpl-select/select.stories.d.ts +35 -45
  632. package/dist/types/components/xpl-select/xpl-select.d.ts +1 -0
  633. package/dist/types/components/xpl-side-nav/side-nav-slot-utils.d.ts +3 -0
  634. package/dist/types/components/xpl-side-nav/side-nav.stories.d.ts +73 -1
  635. package/dist/types/components/xpl-side-nav/xpl-side-nav-header-item/xpl-side-nav-header-item.d.ts +24 -0
  636. package/dist/types/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.d.ts +1 -1
  637. package/dist/types/components/xpl-side-nav/xpl-side-nav-section/xpl-side-nav-section.d.ts +24 -0
  638. package/dist/types/components/xpl-side-nav/xpl-side-nav.d.ts +10 -0
  639. package/dist/types/components/xpl-skeleton/skeleton.stories.d.ts +11 -1
  640. package/dist/types/components/xpl-slideout/slideout.stories.d.ts +20 -16
  641. package/dist/types/components/xpl-spotlight/spotlight.stories.d.ts +7 -1
  642. package/dist/types/components/xpl-spotlight/xpl-spotlight.d.ts +1 -0
  643. package/dist/types/components/xpl-tab/xpl-tab.d.ts +5 -0
  644. package/dist/types/components/xpl-table/table.stories.d.ts +16 -37
  645. package/dist/types/components/xpl-table/xpl-table.d.ts +8 -8
  646. package/dist/types/components/xpl-table-header/table-header.stories.d.ts +21 -48
  647. package/dist/types/components/xpl-table-header-cell/table-header-cell.stories.d.ts +11 -34
  648. package/dist/types/components/xpl-tabs/segment-control.stories.d.ts +22 -0
  649. package/dist/types/components/xpl-tabs/tabs.shared.d.ts +35 -1
  650. package/dist/types/components/xpl-tabs/tabs.stories.d.ts +29 -19
  651. package/dist/types/components/xpl-tag/tag.stories.d.ts +3 -0
  652. package/dist/types/components/xpl-toast/toast.stories.d.ts +17 -13
  653. package/dist/types/components/xpl-toast/xpl-toast.d.ts +13 -4
  654. package/dist/types/components/xpl-toggle/toggle.stories.d.ts +13 -31
  655. package/dist/types/components/xpl-toolbar/toolbar.stories.d.ts +35 -0
  656. package/dist/types/components/xpl-tooltip/tooltip.stories.d.ts +10 -24
  657. package/dist/types/components/xpl-top-nav/top-nav-constants.d.ts +1 -0
  658. package/dist/types/components/xpl-top-nav/top-nav.stories.d.ts +79 -1
  659. package/dist/types/components/xpl-top-nav/xpl-top-nav-item/top-nav-item-constants.d.ts +2 -0
  660. package/dist/types/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.d.ts +26 -4
  661. package/dist/types/components/xpl-top-nav/xpl-top-nav-menu/xpl-top-nav-menu.d.ts +18 -0
  662. package/dist/types/components/xpl-top-nav/xpl-top-nav.d.ts +8 -2
  663. package/dist/types/components/xpl-utility-bar/utility-bar.stories.d.ts +9 -2
  664. package/dist/types/components.d.ts +1186 -66
  665. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/.storybook/utils/story-function.d.ts +11 -0
  666. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/.storybook/utils/wait-for-hydration.d.ts +1 -0
  667. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/src/css/typography.stories.d.ts +76 -0
  668. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/src/utils/form-bindings.d.ts +4 -0
  669. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/src/utils/story-vrt.d.ts +1 -0
  670. package/dist/types/third-party.d.ts +20 -0
  671. package/dist/types/utils/floating.d.ts +26 -0
  672. package/dist/types/utils/lifecycle.d.ts +4 -1
  673. package/dist/types/utils/light-dom-slots.d.ts +6 -0
  674. package/dist/types/utils/slot-presence.d.ts +1 -0
  675. package/dist/types/utils/ssr-known-mismatches.d.ts +16 -0
  676. package/dist/utils/form-bindings.js +64 -0
  677. package/dist/utils/story-vrt.js +48 -0
  678. package/hydrate/index.d.ts +287 -0
  679. package/hydrate/index.js +51669 -0
  680. package/hydrate/index.mjs +51659 -0
  681. package/hydrate/package.json +12 -0
  682. package/package.json +111 -44
  683. package/dist/apollo-core/p-0e45f332.entry.js +0 -1
  684. package/dist/apollo-core/p-0f251f98.entry.js +0 -1
  685. package/dist/apollo-core/p-1691c4f3.entry.js +0 -1
  686. package/dist/apollo-core/p-172ac720.entry.js +0 -1
  687. package/dist/apollo-core/p-23870463.entry.js +0 -1
  688. package/dist/apollo-core/p-3b8639b7.entry.js +0 -1
  689. package/dist/apollo-core/p-44a16751.entry.js +0 -1
  690. package/dist/apollo-core/p-4efecab2.entry.js +0 -1
  691. package/dist/apollo-core/p-5094dd97.entry.js +0 -1
  692. package/dist/apollo-core/p-70e7facc.entry.js +0 -1
  693. package/dist/apollo-core/p-728341d2.entry.js +0 -1
  694. package/dist/apollo-core/p-910be81f.entry.js +0 -1
  695. package/dist/apollo-core/p-9adf3694.entry.js +0 -1
  696. package/dist/apollo-core/p-CXkZUm1c.js +0 -2
  697. package/dist/apollo-core/p-c17b6351.entry.js +0 -1
  698. package/dist/apollo-core/p-e08b434c.entry.js +0 -1
  699. package/dist/apollo-core/p-e9e7577f.entry.js +0 -1
  700. package/dist/components/p-3qMYyqTe.js +0 -1
  701. package/dist/components/p-BG0-6Xek.js +0 -1
  702. package/dist/components/p-BT_Lq3Vd.js +0 -1
  703. package/dist/components/p-BWyAzrwu.js +0 -1
  704. package/dist/components/p-B_Wi--Ov.js +0 -1
  705. package/dist/components/p-Bd6JweBt.js +0 -1
  706. package/dist/components/p-Bn-27-xj.js +0 -1
  707. package/dist/components/p-Bs6vq0C6.js +0 -1
  708. package/dist/components/p-C9BO2vL-.js +0 -1
  709. package/dist/components/p-CFW_w5Wj.js +0 -1
  710. package/dist/components/p-CFpsSZyr.js +0 -1
  711. package/dist/components/p-CGNq3DyC.js +0 -1
  712. package/dist/components/p-CVqbA9op.js +0 -1
  713. package/dist/components/p-CtIUusUL.js +0 -1
  714. package/dist/components/p-D97c0GjM.js +0 -1
  715. package/dist/components/p-DBWV65V-.js +0 -1
  716. package/dist/components/p-DEl4Rvzs.js +0 -1
  717. package/dist/components/p-DPTHmitJ.js +0 -1
  718. package/dist/components/p-DllC7F-H.js +0 -1
  719. package/dist/components/p-Ds28UyUR.js +0 -1
  720. package/dist/components/p-U5dPMCXE.js +0 -1
  721. package/dist/components/p-Yj_QFaRn.js +0 -1
  722. package/dist/components/p-hPUzON4O.js +0 -1
  723. package/dist/components/p-kPHfCq1d.js +0 -1
  724. package/dist/types/home/runner/work/apollo/apollo/packages/apollo-core/.stencil/css/typography.stories.d.ts +0 -90
@@ -0,0 +1,722 @@
1
+ 'use strict';
2
+
3
+ var index = require('./index-3cBvw409.js');
4
+ var lifecycle = require('./lifecycle-DeSsFfQZ.js');
5
+ var floatingUi_dom = require('./floating-ui.dom-DuvGwvW-.js');
6
+
7
+ const SPOTLIGHT_FOCUS_BUTTON_SELECTOR = '.xpl-spotlight__dismiss button, .xpl-spotlight__actions button';
8
+ const SPOTLIGHT_FOCUS_FALLBACK_MAX_TICKS = 120;
9
+ const SPOTLIGHT_FOCUS_OBSERVER_MAX_MS = 2500;
10
+ function waitForSpotlightFocusButtonWithoutMutationObserver(root, options) {
11
+ return new Promise((resolve) => {
12
+ if (options?.signal?.aborted) {
13
+ resolve(null);
14
+ return;
15
+ }
16
+ let ticks = 0;
17
+ let rafId;
18
+ let timeoutId;
19
+ const finish = (value) => {
20
+ if (rafId !== undefined && typeof cancelAnimationFrame !== 'undefined') {
21
+ cancelAnimationFrame(rafId);
22
+ }
23
+ if (timeoutId !== undefined) {
24
+ clearTimeout(timeoutId);
25
+ }
26
+ resolve(value);
27
+ };
28
+ const onAbort = () => finish(null);
29
+ options?.signal?.addEventListener('abort', onAbort, { once: true });
30
+ const schedule = (fn) => {
31
+ if (typeof requestAnimationFrame !== 'undefined') {
32
+ rafId = requestAnimationFrame(() => {
33
+ rafId = undefined;
34
+ fn();
35
+ });
36
+ }
37
+ else {
38
+ timeoutId = setTimeout(() => {
39
+ timeoutId = undefined;
40
+ fn();
41
+ }, 0);
42
+ }
43
+ };
44
+ const tick = () => {
45
+ if (options?.signal?.aborted) {
46
+ finish(null);
47
+ return;
48
+ }
49
+ const el = root.querySelector(SPOTLIGHT_FOCUS_BUTTON_SELECTOR);
50
+ if (el) {
51
+ options?.signal?.removeEventListener('abort', onAbort);
52
+ finish(el);
53
+ return;
54
+ }
55
+ ticks += 1;
56
+ if (ticks >= SPOTLIGHT_FOCUS_FALLBACK_MAX_TICKS) {
57
+ options?.signal?.removeEventListener('abort', onAbort);
58
+ finish(null);
59
+ return;
60
+ }
61
+ schedule(tick);
62
+ };
63
+ schedule(tick);
64
+ });
65
+ }
66
+ function waitForSpotlightFocusButton(root, options) {
67
+ const existing = root.querySelector(SPOTLIGHT_FOCUS_BUTTON_SELECTOR);
68
+ if (existing) {
69
+ return Promise.resolve(existing);
70
+ }
71
+ if (options?.signal?.aborted) {
72
+ return Promise.resolve(null);
73
+ }
74
+ if (typeof MutationObserver === 'undefined') {
75
+ return waitForSpotlightFocusButtonWithoutMutationObserver(root, options);
76
+ }
77
+ return new Promise((resolve) => {
78
+ let settled = false;
79
+ let timeoutId;
80
+ let observer;
81
+ function finish(value) {
82
+ if (settled) {
83
+ return;
84
+ }
85
+ settled = true;
86
+ observer.disconnect();
87
+ if (timeoutId !== undefined) {
88
+ clearTimeout(timeoutId);
89
+ }
90
+ resolve(value);
91
+ }
92
+ observer = new MutationObserver(() => {
93
+ const el = root.querySelector(SPOTLIGHT_FOCUS_BUTTON_SELECTOR);
94
+ if (el) {
95
+ finish(el);
96
+ }
97
+ });
98
+ observer.observe(root instanceof Node ? root : document, {
99
+ childList: true,
100
+ subtree: true,
101
+ });
102
+ timeoutId = setTimeout(() => finish(null), SPOTLIGHT_FOCUS_OBSERVER_MAX_MS);
103
+ options?.signal?.addEventListener('abort', () => {
104
+ finish(null);
105
+ }, { once: true });
106
+ });
107
+ }
108
+ let spotlightHeadingSeq = 0;
109
+ const ANCHOR_TO_PLACEMENT = {
110
+ 'top-left': 'top-start',
111
+ 'top-right': 'top-end',
112
+ 'bottom-left': 'bottom-start',
113
+ 'bottom-right': 'bottom-end',
114
+ };
115
+ const PLACEMENT_TO_CORNER = {
116
+ top: 'bottom-left',
117
+ 'top-start': 'bottom-left',
118
+ 'top-end': 'bottom-right',
119
+ bottom: 'top-left',
120
+ 'bottom-start': 'top-left',
121
+ 'bottom-end': 'top-right',
122
+ left: 'top-right',
123
+ 'left-start': 'top-right',
124
+ 'left-end': 'bottom-right',
125
+ right: 'top-left',
126
+ 'right-start': 'top-left',
127
+ 'right-end': 'bottom-left',
128
+ };
129
+ const FLOATING_UI_OFFSET_PX = 12;
130
+ const FLOATING_UI_SHIFT_PADDING_PX = 8;
131
+ const Spotlight = class {
132
+ constructor(hostRef) {
133
+ index.registerInstance(this, hostRef);
134
+ this.dismiss = index.createEvent(this, "dismiss", 7);
135
+ this.primaryAction = index.createEvent(this, "primaryAction", 7);
136
+ this.secondaryAction = index.createEvent(this, "secondaryAction", 7);
137
+ this.targetClick = index.createEvent(this, "targetClick", 7);
138
+ this.cleanupAutoUpdate = null;
139
+ this.enterVisibleFrameId = null;
140
+ this.focusFrameId = null;
141
+ this.hasCompletedInitialLoad = false;
142
+ this.headingId = (() => {
143
+ spotlightHeadingSeq += 1;
144
+ return `xpl-spotlight-heading-${spotlightHeadingSeq}`;
145
+ })();
146
+ this.pendingEnterTransitionAfterAnchor = false;
147
+ this.pendingEnterVisible = false;
148
+ this.positioningGeneration = 0;
149
+ this.previousFocus = null;
150
+ this.referenceEl = null;
151
+ this.shouldMoveFocusOnRender = false;
152
+ this.shouldReinitializeAfterReconnect = false;
153
+ this.slotContentObserver = null;
154
+ this.hasBodySlotContent = false;
155
+ this.hasFloatingPosition = false;
156
+ this.hasImageSlotContent = false;
157
+ this.hasTitleSlotContent = false;
158
+ this.dialogLabelId = undefined;
159
+ this.isVisible = false;
160
+ this.resolvedAnchorPosition = 'top-left';
161
+ this.actionLayout = 'default';
162
+ this.anchorPosition = 'top-left';
163
+ this.currentStep = 1;
164
+ this.isDismissible = true;
165
+ this.isOpen = true;
166
+ this.primaryActionLabel = 'Next';
167
+ this.secondaryActionLabel = 'Back';
168
+ this.showActions = true;
169
+ this.showImage = true;
170
+ this.showSteps = true;
171
+ this.totalSteps = 1;
172
+ this.emitDismiss = () => {
173
+ this.dismiss.emit();
174
+ };
175
+ this.handleDismissClick = () => {
176
+ this.emitDismiss();
177
+ };
178
+ this.handlePrimaryClick = () => {
179
+ this.primaryAction.emit();
180
+ };
181
+ this.handleSecondaryClick = () => {
182
+ this.secondaryAction.emit();
183
+ };
184
+ this.handleTargetClick = () => {
185
+ this.targetClick.emit();
186
+ };
187
+ this.syncTitleSlotIds = () => {
188
+ const first = this.getFirstTitleSlottedElement();
189
+ if (first && !first.id) {
190
+ first.id = this.headingId;
191
+ }
192
+ };
193
+ this.handleBodySlotChange = () => {
194
+ this.refreshBodySlotState();
195
+ };
196
+ this.handleTitleSlotChange = () => {
197
+ this.refreshTitleSlotState();
198
+ this.syncTitleSlotIds();
199
+ };
200
+ this.handleImageSlotChange = () => {
201
+ this.refreshImageSlotState();
202
+ };
203
+ this.handleSlotContentMutation = () => {
204
+ this.refreshBodySlotState();
205
+ this.refreshImageSlotState();
206
+ this.refreshTitleSlotState();
207
+ this.syncTitleSlotIds();
208
+ };
209
+ this.updatePosition = async (referenceEl) => {
210
+ if (!lifecycle.isBrowser()) {
211
+ return;
212
+ }
213
+ const generation = this.positioningGeneration;
214
+ try {
215
+ const initialPlacement = ANCHOR_TO_PLACEMENT[this.anchorPosition];
216
+ const { x, y, placement, middlewareData } = await floatingUi_dom.computePosition(referenceEl, this.el, {
217
+ strategy: 'fixed',
218
+ placement: initialPlacement,
219
+ middleware: [
220
+ floatingUi_dom.offset(FLOATING_UI_OFFSET_PX),
221
+ floatingUi_dom.flip({ crossAxis: false }),
222
+ floatingUi_dom.shift({ padding: FLOATING_UI_SHIFT_PADDING_PX }),
223
+ ],
224
+ });
225
+ if (generation !== this.positioningGeneration) {
226
+ return;
227
+ }
228
+ this.el.style.left = `${x}px`;
229
+ this.el.style.top = `${y}px`;
230
+ const shiftX = middlewareData.shift?.x ?? 0;
231
+ const shiftY = middlewareData.shift?.y ?? 0;
232
+ this.el.style.setProperty('--xpl-spotlight-shift-x', `${-shiftX}px`);
233
+ this.el.style.setProperty('--xpl-spotlight-shift-y', `${-shiftY}px`);
234
+ this.hasFloatingPosition = true;
235
+ const corner = PLACEMENT_TO_CORNER[placement] ??
236
+ PLACEMENT_TO_CORNER[placement.split('-')[0] ?? ''];
237
+ this.resolvedAnchorPosition = corner ?? this.anchorPosition;
238
+ if (this.pendingEnterTransitionAfterAnchor) {
239
+ this.scheduleEnterTransition();
240
+ }
241
+ }
242
+ catch {
243
+ if (generation !== this.positioningGeneration) {
244
+ return;
245
+ }
246
+ this.clearFloatingHostCoordinates();
247
+ if (this.isOpenEnabled) {
248
+ this.scheduleEnterTransition({ skipAnchorWait: true });
249
+ await index.forceUpdate(this);
250
+ }
251
+ }
252
+ };
253
+ }
254
+ onAnchorPositionChange() {
255
+ if (!this.target) {
256
+ this.resolvedAnchorPosition = this.anchorPosition;
257
+ }
258
+ else if (this.referenceEl) {
259
+ this.updatePosition(this.referenceEl).catch(() => { });
260
+ }
261
+ else {
262
+ this.resolvedAnchorPosition = this.anchorPosition;
263
+ }
264
+ }
265
+ onIsOpenChange(isOpen) {
266
+ if (Spotlight.coerceBoolean(isOpen)) {
267
+ this.capturePreviousFocus();
268
+ this.shouldMoveFocusOnRender = true;
269
+ this.isVisible = false;
270
+ this.refreshBodySlotState();
271
+ this.refreshTitleSlotState();
272
+ this.refreshImageSlotState();
273
+ if (this.target) {
274
+ if (this.cleanupAutoUpdate &&
275
+ this.referenceEl &&
276
+ this.el.ownerDocument.contains(this.referenceEl)) {
277
+ this.hasFloatingPosition = false;
278
+ }
279
+ else {
280
+ this.startPositioning();
281
+ }
282
+ }
283
+ this.scheduleEnterTransition();
284
+ return;
285
+ }
286
+ this.cancelEnterTransition();
287
+ this.cancelPendingFocusWait();
288
+ this.isVisible = false;
289
+ if (!this.target) {
290
+ this.stopPositioning();
291
+ }
292
+ this.restoreFocus();
293
+ }
294
+ onTargetChange() {
295
+ if (!this.target) {
296
+ this.stopPositioning();
297
+ this.resolvedAnchorPosition = this.anchorPosition;
298
+ return;
299
+ }
300
+ this.startPositioning();
301
+ }
302
+ connectedCallback() {
303
+ if (!this.shouldReinitializeAfterReconnect) {
304
+ return;
305
+ }
306
+ this.shouldReinitializeAfterReconnect = false;
307
+ this.startSlotContentObserver();
308
+ if (this.target) {
309
+ this.startPositioning();
310
+ }
311
+ if (!this.isOpenEnabled) {
312
+ this.isVisible = false;
313
+ return;
314
+ }
315
+ this.capturePreviousFocus();
316
+ this.shouldMoveFocusOnRender = true;
317
+ this.scheduleEnterTransition();
318
+ if (this.pendingEnterVisible) {
319
+ Promise.resolve(index.forceUpdate(this)).catch(() => { });
320
+ }
321
+ }
322
+ disconnectedCallback() {
323
+ this.cancelEnterTransition();
324
+ this.cancelPendingFocusWait();
325
+ this.stopSlotContentObserver();
326
+ this.stopPositioning();
327
+ if (this.hasCompletedInitialLoad) {
328
+ this.shouldReinitializeAfterReconnect = true;
329
+ }
330
+ }
331
+ componentWillLoad() {
332
+ this.resolvedAnchorPosition = this.anchorPosition;
333
+ this.hasBodySlotContent = this.hasSlottedContent('body');
334
+ this.hasImageSlotContent = this.hasSlottedContent('image');
335
+ this.hasTitleSlotContent = this.hasSlottedContent('title');
336
+ this.dialogLabelId = this.getDialogLabelId();
337
+ if (this.isOpenEnabled && !this.target) {
338
+ this.pendingEnterVisible = true;
339
+ }
340
+ this.shouldMoveFocusOnRender = this.isOpenEnabled;
341
+ }
342
+ componentDidLoad() {
343
+ this.hasCompletedInitialLoad = true;
344
+ this.startSlotContentObserver();
345
+ if (this.target) {
346
+ this.startPositioning();
347
+ }
348
+ if (!this.isOpenEnabled) {
349
+ this.isVisible = false;
350
+ return;
351
+ }
352
+ if (this.target) {
353
+ this.scheduleEnterTransition();
354
+ if (this.pendingEnterVisible) {
355
+ Promise.resolve(index.forceUpdate(this)).catch(() => { });
356
+ }
357
+ }
358
+ }
359
+ componentDidRender() {
360
+ if (this.isOpenEnabled) {
361
+ this.syncTitleSlotIds();
362
+ }
363
+ const nextLabelId = this.getDialogLabelId();
364
+ if (this.dialogLabelId !== nextLabelId) {
365
+ this.dialogLabelId = nextLabelId;
366
+ }
367
+ if (this.pendingEnterVisible && this.isOpenEnabled) {
368
+ this.pendingEnterVisible = false;
369
+ this.enterVisibleFrameId = requestAnimationFrame(() => {
370
+ this.enterVisibleFrameId = null;
371
+ if (this.isOpenEnabled) {
372
+ this.isVisible = true;
373
+ }
374
+ });
375
+ }
376
+ if (!this.shouldMoveFocusOnRender || !this.isOpenEnabled) {
377
+ return;
378
+ }
379
+ this.shouldMoveFocusOnRender = false;
380
+ this.capturePreviousFocus();
381
+ this.focusInitial();
382
+ }
383
+ handleKeyDown(ev) {
384
+ if (ev.key === 'Escape' && this.shouldHandleDismissKeyboardEvent()) {
385
+ ev.preventDefault();
386
+ this.emitDismiss();
387
+ }
388
+ }
389
+ get effectiveTotalSteps() {
390
+ return Math.max(1, this.totalSteps);
391
+ }
392
+ get effectiveCurrentStep() {
393
+ return Math.min(this.effectiveTotalSteps, Math.max(1, this.currentStep));
394
+ }
395
+ get isDismissibleEnabled() {
396
+ return Spotlight.coerceBoolean(this.isDismissible);
397
+ }
398
+ get isOpenEnabled() {
399
+ return Spotlight.coerceBoolean(this.isOpen);
400
+ }
401
+ get isSingleActionLayout() {
402
+ return this.actionLayout === 'single';
403
+ }
404
+ get usesHiddenEdgeActions() {
405
+ return this.actionLayout === 'dual';
406
+ }
407
+ get isPrimaryStepActionDisabled() {
408
+ return (!this.usesHiddenEdgeActions &&
409
+ this.showStepsEnabled &&
410
+ this.effectiveCurrentStep >= this.effectiveTotalSteps);
411
+ }
412
+ get isSecondaryStepActionDisabled() {
413
+ return (!this.usesHiddenEdgeActions && this.showStepsEnabled && this.effectiveCurrentStep <= 1);
414
+ }
415
+ get shouldShowPrimaryAction() {
416
+ if (this.isSingleActionLayout) {
417
+ return true;
418
+ }
419
+ if (!this.usesHiddenEdgeActions) {
420
+ return true;
421
+ }
422
+ if (!this.showStepsEnabled) {
423
+ return true;
424
+ }
425
+ return this.effectiveCurrentStep < this.effectiveTotalSteps;
426
+ }
427
+ get shouldShowSecondaryAction() {
428
+ if (this.isSingleActionLayout) {
429
+ return false;
430
+ }
431
+ if (!this.usesHiddenEdgeActions) {
432
+ return true;
433
+ }
434
+ if (!this.showStepsEnabled) {
435
+ return true;
436
+ }
437
+ return this.effectiveCurrentStep > 1;
438
+ }
439
+ get hasRenderableFocusChrome() {
440
+ if (this.isDismissibleEnabled) {
441
+ return true;
442
+ }
443
+ if (!this.showActionsEnabled) {
444
+ return false;
445
+ }
446
+ return this.shouldShowPrimaryAction || this.shouldShowSecondaryAction;
447
+ }
448
+ get showActionsEnabled() {
449
+ return Spotlight.coerceBoolean(this.showActions);
450
+ }
451
+ get showImageEnabled() {
452
+ return Spotlight.coerceBoolean(this.showImage);
453
+ }
454
+ get showStepsEnabled() {
455
+ return Spotlight.coerceBoolean(this.showSteps);
456
+ }
457
+ get headingPropHasText() {
458
+ return Boolean(this.heading?.trim());
459
+ }
460
+ get bodyPropHasText() {
461
+ return Boolean(this.body?.trim());
462
+ }
463
+ async focusInitial() {
464
+ this.focusAbort?.abort();
465
+ this.focusAbort = new AbortController();
466
+ if (!this.hasRenderableFocusChrome && this.isOpenEnabled) {
467
+ this.focusFrameId = requestAnimationFrame(() => {
468
+ this.focusFrameId = null;
469
+ if (!this.isOpenEnabled) {
470
+ return;
471
+ }
472
+ this.el.focus();
473
+ });
474
+ return;
475
+ }
476
+ const target = await waitForSpotlightFocusButton(this.el, {
477
+ signal: this.focusAbort.signal,
478
+ });
479
+ if (target) {
480
+ target.focus();
481
+ }
482
+ else if (this.isOpenEnabled) {
483
+ this.el.focus();
484
+ }
485
+ }
486
+ shouldHandleDismissKeyboardEvent() {
487
+ if (!this.isDismissibleEnabled || !this.isOpenEnabled || !this.isVisible) {
488
+ return false;
489
+ }
490
+ const { activeElement } = document;
491
+ return (Boolean(activeElement) && (activeElement === this.el || this.el.contains(activeElement)));
492
+ }
493
+ capturePreviousFocus() {
494
+ if (!lifecycle.isBrowser()) {
495
+ return;
496
+ }
497
+ this.previousFocus =
498
+ document.activeElement instanceof HTMLElement ? document.activeElement : null;
499
+ }
500
+ restoreFocus() {
501
+ if (this.previousFocus?.isConnected) {
502
+ this.previousFocus.focus();
503
+ }
504
+ }
505
+ cancelPendingFocusWait() {
506
+ this.focusAbort?.abort();
507
+ if (this.focusFrameId != null) {
508
+ cancelAnimationFrame(this.focusFrameId);
509
+ this.focusFrameId = null;
510
+ }
511
+ }
512
+ cancelEnterTransition() {
513
+ if (this.enterVisibleFrameId !== null) {
514
+ cancelAnimationFrame(this.enterVisibleFrameId);
515
+ this.enterVisibleFrameId = null;
516
+ }
517
+ this.pendingEnterVisible = false;
518
+ }
519
+ scheduleEnterTransition(options) {
520
+ this.cancelEnterTransition();
521
+ const shouldDeferUntilAnchored = !options?.skipAnchorWait &&
522
+ Boolean(this.target && this.referenceEl) &&
523
+ !this.hasFloatingPosition;
524
+ if (shouldDeferUntilAnchored) {
525
+ this.pendingEnterTransitionAfterAnchor = true;
526
+ return;
527
+ }
528
+ this.pendingEnterTransitionAfterAnchor = false;
529
+ this.pendingEnterVisible = true;
530
+ }
531
+ getFirstTitleSlottedElement() {
532
+ const fromHost = Array.from(this.el.children).find((node) => node.nodeType === Node.ELEMENT_NODE && node.getAttribute('slot') === 'title');
533
+ if (fromHost) {
534
+ return fromHost;
535
+ }
536
+ const slot = this.el.querySelector('slot[name="title"]');
537
+ if (slot && typeof slot.assignedNodes === 'function') {
538
+ const assigned = Array.from(slot.assignedNodes({ flatten: true })).find((node) => node.nodeType === Node.ELEMENT_NODE);
539
+ if (assigned) {
540
+ return assigned;
541
+ }
542
+ }
543
+ return this.el.querySelector('[slot="title"]') ?? null;
544
+ }
545
+ getDialogLabelId() {
546
+ if (this.hasTitleSlotContent) {
547
+ const first = this.getFirstTitleSlottedElement();
548
+ if (first?.id) {
549
+ return first.id;
550
+ }
551
+ return this.headingId;
552
+ }
553
+ if (this.headingPropHasText) {
554
+ return this.headingId;
555
+ }
556
+ return undefined;
557
+ }
558
+ refreshBodySlotState() {
559
+ const next = this.hasSlottedContent('body');
560
+ if (this.hasBodySlotContent === next) {
561
+ return;
562
+ }
563
+ this.hasBodySlotContent = next;
564
+ }
565
+ refreshTitleSlotState() {
566
+ const next = this.hasSlottedContent('title');
567
+ if (this.hasTitleSlotContent === next) {
568
+ return;
569
+ }
570
+ this.hasTitleSlotContent = next;
571
+ }
572
+ static coerceBoolean(value) {
573
+ if (typeof value === 'string') {
574
+ const normalized = value.trim().toLowerCase();
575
+ return normalized !== 'false';
576
+ }
577
+ return Boolean(value);
578
+ }
579
+ refreshImageSlotState() {
580
+ const next = this.hasSlottedContent('image');
581
+ if (this.hasImageSlotContent === next) {
582
+ return;
583
+ }
584
+ this.hasImageSlotContent = next;
585
+ }
586
+ startSlotContentObserver() {
587
+ if (typeof MutationObserver === 'undefined' || this.slotContentObserver) {
588
+ return;
589
+ }
590
+ this.slotContentObserver = new MutationObserver(this.handleSlotContentMutation);
591
+ this.slotContentObserver.observe(this.el, {
592
+ attributes: true,
593
+ attributeFilter: ['slot'],
594
+ childList: true,
595
+ subtree: true,
596
+ });
597
+ }
598
+ stopSlotContentObserver() {
599
+ this.slotContentObserver?.disconnect();
600
+ this.slotContentObserver = null;
601
+ }
602
+ hasSlottedContent(slotName) {
603
+ const slot = this.el.querySelector(`slot[name="${slotName}"]`);
604
+ const fromQuery = this.el.querySelector(`[slot="${slotName}"]`);
605
+ const fromHostChildren = Array.from(this.el.children).some((el) => el.getAttribute('slot') === slotName);
606
+ const hasAssigned = slot
607
+ ? slot
608
+ .assignedNodes({ flatten: true })
609
+ .some((n) => n.nodeType === Node.ELEMENT_NODE ||
610
+ (n.nodeType === Node.TEXT_NODE && n.textContent?.trim()))
611
+ : false;
612
+ return Boolean(fromQuery || fromHostChildren) || hasAssigned;
613
+ }
614
+ startPositioning() {
615
+ if (!lifecycle.isBrowser()) {
616
+ return;
617
+ }
618
+ if (!this.target) {
619
+ return;
620
+ }
621
+ let el = null;
622
+ try {
623
+ el = this.el.ownerDocument.querySelector(this.target);
624
+ }
625
+ catch {
626
+ this.stopPositioning();
627
+ this.resolvedAnchorPosition = this.anchorPosition;
628
+ return;
629
+ }
630
+ if (!el) {
631
+ this.stopPositioning();
632
+ this.resolvedAnchorPosition = this.anchorPosition;
633
+ return;
634
+ }
635
+ this.detachFloatingUiListeners();
636
+ this.referenceEl = el;
637
+ this.cleanupAutoUpdate = floatingUi_dom.autoUpdate(el, this.el, () => {
638
+ this.updatePosition(el).catch(() => { });
639
+ });
640
+ }
641
+ detachFloatingUiListeners() {
642
+ this.positioningGeneration += 1;
643
+ if (this.cleanupAutoUpdate) {
644
+ this.cleanupAutoUpdate();
645
+ this.cleanupAutoUpdate = null;
646
+ }
647
+ }
648
+ resetFloatingHostPosition() {
649
+ this.el.style.left = '';
650
+ this.el.style.top = '';
651
+ this.el.style.removeProperty('--xpl-spotlight-shift-x');
652
+ this.el.style.removeProperty('--xpl-spotlight-shift-y');
653
+ this.hasFloatingPosition = false;
654
+ this.pendingEnterTransitionAfterAnchor = false;
655
+ this.referenceEl = null;
656
+ }
657
+ clearFloatingHostCoordinates() {
658
+ this.el.style.left = '';
659
+ this.el.style.top = '';
660
+ this.el.style.removeProperty('--xpl-spotlight-shift-x');
661
+ this.el.style.removeProperty('--xpl-spotlight-shift-y');
662
+ this.hasFloatingPosition = false;
663
+ this.pendingEnterTransitionAfterAnchor = false;
664
+ this.resolvedAnchorPosition = this.anchorPosition;
665
+ }
666
+ stopPositioning() {
667
+ this.detachFloatingUiListeners();
668
+ this.resetFloatingHostPosition();
669
+ }
670
+ render() {
671
+ if (!this.isOpenEnabled) {
672
+ if (this.target) {
673
+ return (index.h(index.Host, { class: {
674
+ 'xpl-spotlight': true,
675
+ 'xpl-spotlight--target-only': true,
676
+ [`xpl-spotlight--${this.resolvedAnchorPosition}`]: true,
677
+ 'xpl-spotlight--anchored': this.hasFloatingPosition,
678
+ } }, index.h("button", { type: "button", class: "xpl-spotlight__target", "aria-label": "Spotlight indicator", onClick: this.handleTargetClick }, index.h("div", { class: "xpl-spotlight__target-outer" }), index.h("div", { class: "xpl-spotlight__target-inner" }))));
679
+ }
680
+ return (index.h(index.Host, { "aria-hidden": "true", class: {
681
+ 'xpl-spotlight': true,
682
+ 'xpl-spotlight--closed': true,
683
+ } }));
684
+ }
685
+ const { isSingleActionLayout, shouldShowPrimaryAction: showPrimaryAction, shouldShowSecondaryAction: showSecondaryAction, showActionsEnabled: showActions, showImageEnabled: showImage, showStepsEnabled: showSteps, } = this;
686
+ return (index.h(index.Host, { class: {
687
+ [`xpl-spotlight--action-layout-${this.actionLayout}`]: showActions,
688
+ 'xpl-spotlight': true,
689
+ [`xpl-spotlight--${this.resolvedAnchorPosition}`]: true,
690
+ 'xpl-spotlight--anchored': this.hasFloatingPosition,
691
+ 'xpl-spotlight--no-image': !showImage,
692
+ 'xpl-spotlight--only-primary-action': showActions && showPrimaryAction && !showSecondaryAction,
693
+ 'xpl-spotlight--only-secondary-action': showActions && showSecondaryAction && !showPrimaryAction,
694
+ 'xpl-spotlight--visible': this.isVisible,
695
+ }, role: "dialog", "aria-modal": "false", "aria-label": this.dialogLabelId ? undefined : 'Tour step', "aria-labelledby": this.dialogLabelId, tabindex: -1 }, index.h("button", { type: "button", class: "xpl-spotlight__target", "aria-label": "Spotlight indicator", onClick: this.handleTargetClick }, index.h("div", { class: "xpl-spotlight__target-outer" }), index.h("div", { class: "xpl-spotlight__target-inner" })), this.isDismissibleEnabled && (index.h("div", { class: "xpl-spotlight__dismiss" }, index.h("xpl-button", { variant: "secondary", size: "sm", iconOnly: true, "aria-label": "Dismiss tour step", onClick: this.handleDismissClick }, index.h("xpl-icon", { icon: "xmark", size: 16 })))), index.h("div", { class: "xpl-spotlight__frame" }, index.h("div", { class: {
696
+ 'xpl-spotlight__image-container': true,
697
+ 'xpl-spotlight__image-container--empty': !this.hasImageSlotContent,
698
+ 'xpl-spotlight__image-container--hidden': !showImage,
699
+ } }, !this.hasImageSlotContent && showImage && (index.h("div", { class: "xpl-spotlight__image-placeholder", "aria-hidden": "true" }, index.h("xpl-icon", { icon: "photo", size: 24 }), index.h("xpl-icon", { icon: "video", size: 24 }))), index.h("slot", { name: "image", onSlotchange: this.handleImageSlotChange })), index.h("div", { class: "xpl-spotlight__content" }, index.h("div", { class: "xpl-spotlight__header" }, index.h("slot", { name: "title", onSlotchange: this.handleTitleSlotChange }, !this.hasTitleSlotContent && this.headingPropHasText && (index.h("span", { class: "xpl-spotlight__title", id: this.headingId }, this.heading))), index.h("slot", { name: "body", onSlotchange: this.handleBodySlotChange }, !this.hasBodySlotContent && this.bodyPropHasText && (index.h("p", { class: "xpl-spotlight__body" }, this.body)))), showActions && (index.h("div", { class: {
700
+ 'xpl-spotlight__actions': true,
701
+ 'xpl-spotlight__actions--dual': !isSingleActionLayout,
702
+ 'xpl-spotlight__actions--single': isSingleActionLayout,
703
+ 'xpl-spotlight__actions--with-steps': showSteps,
704
+ 'xpl-spotlight__actions--only-primary': showPrimaryAction && !showSecondaryAction,
705
+ 'xpl-spotlight__actions--only-secondary': showSecondaryAction && !showPrimaryAction,
706
+ } }, index.h("div", { class: "xpl-spotlight__action-slot xpl-spotlight__action-slot--secondary" }, showSecondaryAction && (index.h("xpl-button", { class: "xpl-spotlight__secondary-action", variant: "secondary", size: "default", disabled: this.isSecondaryStepActionDisabled, onClick: this.handleSecondaryClick }, this.secondaryActionLabel))), showSteps && (index.h("span", { class: "xpl-spotlight__step-text" }, this.effectiveCurrentStep, " of ", this.effectiveTotalSteps)), index.h("div", { class: "xpl-spotlight__action-slot xpl-spotlight__action-slot--primary" }, showPrimaryAction && (index.h("xpl-button", { class: "xpl-spotlight__primary-action", variant: "primary", size: "default", disabled: this.isPrimaryStepActionDisabled, onClick: this.handlePrimaryClick }, this.primaryActionLabel)))))))));
707
+ }
708
+ get el() { return index.getElement(this); }
709
+ static get watchers() { return {
710
+ "anchorPosition": [{
711
+ "onAnchorPositionChange": 0
712
+ }],
713
+ "isOpen": [{
714
+ "onIsOpenChange": 0
715
+ }],
716
+ "target": [{
717
+ "onTargetChange": 0
718
+ }]
719
+ }; }
720
+ };
721
+
722
+ exports.xpl_spotlight = Spotlight;