@xplortech/apollo-core 2.6.0 → 2.7.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 (362) hide show
  1. package/.typings/apollo-components.html-data.json +737 -63
  2. package/build/style.css +5415 -1805
  3. package/dist/apollo-core/apollo-core.css +62 -22
  4. package/dist/apollo-core/apollo-core.esm.js +1 -1
  5. package/dist/apollo-core/{p-8a1affce.entry.js → p-084d26ed.entry.js} +1 -1
  6. package/dist/apollo-core/p-146d5d55.entry.js +1 -0
  7. package/dist/apollo-core/p-16742606.entry.js +1 -0
  8. package/dist/apollo-core/{p-42016063.entry.js → p-28d12fd3.entry.js} +1 -1
  9. package/dist/apollo-core/p-3eb5eb7c.entry.js +1 -0
  10. package/dist/apollo-core/p-4882f0bd.entry.js +1 -0
  11. package/dist/apollo-core/p-64b34268.entry.js +1 -0
  12. package/dist/apollo-core/p-6c956d4e.entry.js +1 -0
  13. package/dist/apollo-core/p-71b75f36.entry.js +1 -0
  14. package/dist/apollo-core/{p-02167464.entry.js → p-7eb86c63.entry.js} +1 -1
  15. package/dist/apollo-core/{p-1fd3dc87.entry.js → p-84254a24.entry.js} +1 -1
  16. package/dist/apollo-core/p-9f2a0321.entry.js +1 -0
  17. package/dist/apollo-core/{p-C_Z2nG0p.js → p-C7bgJs6C.js} +2 -2
  18. package/dist/apollo-core/p-cde83ab0.entry.js +1 -0
  19. package/dist/apollo-core/p-e7363036.entry.js +1 -0
  20. package/dist/cjs/apollo-core.cjs.js +3 -3
  21. package/dist/cjs/{index-DH6pgWru.js → index-BQ97-AWw.js} +18 -15
  22. package/dist/cjs/loader.cjs.js +2 -2
  23. package/dist/cjs/xpl-accordion.cjs.entry.js +3 -3
  24. package/dist/cjs/xpl-application-shell.cjs.entry.js +2 -2
  25. package/dist/cjs/{xpl-avatar_47.cjs.entry.js → xpl-avatar_61.cjs.entry.js} +6096 -1461
  26. package/dist/cjs/xpl-button-row.cjs.entry.js +2 -2
  27. package/dist/cjs/xpl-calendar.cjs.entry.js +2 -2
  28. package/dist/cjs/xpl-dynamic-table-cell.cjs.entry.js +3 -3
  29. package/dist/cjs/xpl-dynamic-table-row.cjs.entry.js +3 -3
  30. package/dist/cjs/xpl-dynamic-table.cjs.entry.js +2 -2
  31. package/dist/cjs/xpl-grid-item.cjs.entry.js +2 -2
  32. package/dist/cjs/xpl-grid.cjs.entry.js +2 -2
  33. package/dist/cjs/xpl-large-card.cjs.entry.js +2 -2
  34. package/dist/cjs/xpl-main-nav.cjs.entry.js +2 -2
  35. package/dist/cjs/xpl-toggle.cjs.entry.js +4 -4
  36. package/dist/cjs/xpl-toolbar.cjs.entry.js +3 -3
  37. package/dist/collection/collection-manifest.json +18 -7
  38. package/dist/collection/components/xpl-accordion/xpl-accordion.js +2 -2
  39. package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +1 -1
  40. package/dist/collection/components/xpl-avatar/avatar.stories.js +122 -107
  41. package/dist/collection/components/xpl-avatar/xpl-avatar.js +249 -15
  42. package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +1 -1
  43. package/dist/collection/components/xpl-badge/badge.stories.js +1 -33
  44. package/dist/collection/components/xpl-badge/xpl-badge.js +1 -1
  45. package/dist/collection/components/xpl-banner/xpl-banner.js +4 -3
  46. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +1 -1
  47. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +1 -1
  48. package/dist/collection/components/xpl-button/xpl-button.js +21 -3
  49. package/dist/collection/components/xpl-button-row/xpl-button-row.js +1 -1
  50. package/dist/collection/components/xpl-calendar/xpl-calendar.js +1 -1
  51. package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +47 -25
  52. package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +1 -1
  53. package/dist/collection/components/xpl-content-area/xpl-content-area.js +1 -1
  54. package/dist/collection/components/xpl-dashboard/xpl-dashboard.js +1 -1
  55. package/dist/collection/components/xpl-data-card/xpl-data-card.js +2 -2
  56. package/dist/collection/components/xpl-divider/xpl-divider.js +1 -1
  57. package/dist/collection/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.js +1 -1
  58. package/dist/collection/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.js +1 -1
  59. package/dist/collection/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.js +2 -2
  60. package/dist/collection/components/xpl-dropdown/xpl-dropdown.js +2 -2
  61. package/dist/collection/components/xpl-dynamic-table/xpl-dynamic-table.js +1 -1
  62. package/dist/collection/components/xpl-dynamic-table-cell/xpl-dynamic-table-cell.js +2 -2
  63. package/dist/collection/components/xpl-dynamic-table-row/xpl-dynamic-table-row.js +2 -2
  64. package/dist/collection/components/xpl-grid/xpl-grid.js +1 -1
  65. package/dist/collection/components/xpl-grid-item/xpl-grid-item.js +1 -1
  66. package/dist/collection/components/xpl-header-accordion/xpl-header-accordion.js +46 -53
  67. package/dist/collection/components/xpl-icon/xpl-icon.js +2 -2
  68. package/dist/collection/components/xpl-input/input.stories.js +96 -1
  69. package/dist/collection/components/xpl-input/xpl-input-color/xpl-input-color.js +8 -8
  70. package/dist/collection/components/xpl-input/xpl-input-date/xpl-input-date.js +3 -3
  71. package/dist/collection/components/xpl-input/xpl-input-file/xpl-input-file.js +4 -4
  72. package/dist/collection/components/xpl-input/xpl-input-phone/xpl-input-phone.js +5 -5
  73. package/dist/collection/components/xpl-input/xpl-input-search/xpl-input-search.js +485 -0
  74. package/dist/collection/components/xpl-input/xpl-input-time/xpl-input-time.js +2 -2
  75. package/dist/collection/components/xpl-input/xpl-input.js +130 -18
  76. package/dist/collection/components/xpl-large-card/xpl-large-card.js +1 -1
  77. package/dist/collection/components/xpl-list/list.stories.js +300 -63
  78. package/dist/collection/components/xpl-list/xpl-list-item/xpl-list-item.js +818 -0
  79. package/dist/collection/components/xpl-list/xpl-list.js +579 -21
  80. package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +1 -1
  81. package/dist/collection/components/xpl-modal/xpl-modal.js +1 -1
  82. package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +2 -2
  83. package/dist/collection/components/xpl-pagination/xpl-pagination.js +3 -3
  84. package/dist/collection/components/xpl-panel/panel.stories.js +5 -3
  85. package/dist/collection/components/xpl-panel/xpl-panel.js +3 -3
  86. package/dist/collection/components/xpl-popover/xpl-popover.js +4 -4
  87. package/dist/collection/components/xpl-progress-bar/xpl-progress-bar.js +2 -2
  88. package/dist/collection/components/xpl-progress-indicator/progress-indicator.stories.js +118 -0
  89. package/dist/collection/components/xpl-progress-indicator/xpl-progress-indicator.js +171 -0
  90. package/dist/collection/components/xpl-radio/xpl-radio.js +3 -3
  91. package/dist/collection/components/xpl-secondary-nav/xpl-secondary-nav.js +1 -1
  92. package/dist/collection/components/xpl-select/xpl-select.js +6 -6
  93. package/dist/collection/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.js +2 -2
  94. package/dist/collection/components/xpl-side-nav/xpl-side-nav.js +2 -2
  95. package/dist/collection/components/xpl-skeleton/xpl-skeleton.js +1 -1
  96. package/dist/collection/components/xpl-slideout/xpl-slideout.js +1 -1
  97. package/dist/collection/components/xpl-spotlight/spotlight.stories.js +385 -0
  98. package/dist/collection/components/xpl-spotlight/xpl-spotlight.js +1085 -0
  99. package/dist/collection/components/xpl-tab/xpl-tab.js +261 -8
  100. package/dist/collection/components/xpl-tab-panel/xpl-tab-panel.js +22 -15
  101. package/dist/collection/components/xpl-table/table.stories.js +319 -67
  102. package/dist/collection/components/xpl-table/utils/move-row-dom.js +50 -0
  103. package/dist/collection/components/xpl-table/utils/table-internal.js +58 -0
  104. package/dist/collection/components/xpl-table/xpl-table-body/xpl-table-body.js +7 -0
  105. package/dist/collection/components/xpl-table/xpl-table-cell/xpl-table-cell.js +155 -0
  106. package/dist/collection/components/xpl-table/xpl-table-footer/xpl-table-footer.js +7 -0
  107. package/dist/collection/components/xpl-table/xpl-table-footer-cell/xpl-table-footer-cell.js +37 -0
  108. package/dist/collection/components/xpl-table/xpl-table-header/table-header.stories.js +131 -0
  109. package/dist/collection/components/xpl-table/xpl-table-header/xpl-table-header.js +7 -0
  110. package/dist/collection/components/xpl-table/xpl-table-header-cell/table-header-cell.stories.js +105 -0
  111. package/dist/collection/components/xpl-table/xpl-table-header-cell/xpl-table-header-cell.js +402 -0
  112. package/dist/collection/components/xpl-table/xpl-table-row/xpl-table-row.js +121 -0
  113. package/dist/collection/components/xpl-table/xpl-table.js +1448 -143
  114. package/dist/collection/components/xpl-tabs/segment-control.stories.js +31 -0
  115. package/dist/collection/components/xpl-tabs/tabs.shared.js +156 -0
  116. package/dist/collection/components/xpl-tabs/tabs.stories.js +10 -60
  117. package/dist/collection/components/xpl-tabs/xpl-tabs.js +338 -62
  118. package/dist/collection/components/xpl-tag/tag.stories.js +153 -0
  119. package/dist/collection/components/xpl-tag/xpl-tag.js +312 -9
  120. package/dist/collection/components/xpl-toast/xpl-toast.js +2 -2
  121. package/dist/collection/components/xpl-toggle/xpl-toggle.js +3 -3
  122. package/dist/collection/components/xpl-toolbar/xpl-toolbar.js +2 -2
  123. package/dist/collection/components/xpl-tooltip/xpl-tooltip.js +1 -1
  124. package/dist/collection/components/xpl-top-nav/top-nav.stories.js +625 -0
  125. package/dist/collection/components/xpl-top-nav/xpl-nav-header-menu/xpl-nav-header-menu.js +122 -0
  126. package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.js +481 -0
  127. package/dist/collection/components/xpl-top-nav/xpl-top-nav.js +433 -0
  128. package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +1 -1
  129. package/dist/collection/utils/lifecycle.js +79 -0
  130. package/dist/collection/utils/tab-a11y-ids.js +22 -0
  131. package/dist/components/floating-ui.dom.js +1 -0
  132. package/dist/components/index.js +1 -1
  133. package/dist/components/lifecycle.js +1 -0
  134. package/dist/components/tab-a11y-ids.js +1 -0
  135. package/dist/components/xpl-accordion.js +1 -1
  136. package/dist/components/xpl-application-shell.js +1 -1
  137. package/dist/components/xpl-avatar2.js +1 -1
  138. package/dist/components/xpl-backdrop2.js +1 -1
  139. package/dist/components/xpl-badge2.js +1 -1
  140. package/dist/components/xpl-banner.js +1 -1
  141. package/dist/components/xpl-breadcrumb-item.js +1 -1
  142. package/dist/components/xpl-breadcrumbs.js +1 -1
  143. package/dist/components/xpl-button-row.js +1 -1
  144. package/dist/components/xpl-button2.js +1 -1
  145. package/dist/components/xpl-calendar.js +1 -1
  146. package/dist/components/xpl-checkbox2.js +1 -1
  147. package/dist/components/xpl-choicelist.js +1 -1
  148. package/dist/components/xpl-content-area.js +1 -1
  149. package/dist/components/xpl-dashboard.js +1 -1
  150. package/dist/components/xpl-data-card.js +1 -1
  151. package/dist/components/xpl-divider2.js +1 -1
  152. package/dist/components/xpl-dropdown-group2.js +1 -1
  153. package/dist/components/xpl-dropdown-heading2.js +1 -1
  154. package/dist/components/xpl-dropdown-option2.js +1 -1
  155. package/dist/components/xpl-dropdown2.js +1 -1
  156. package/dist/components/xpl-dynamic-table-cell.js +1 -1
  157. package/dist/components/xpl-dynamic-table-row.js +1 -1
  158. package/dist/components/xpl-dynamic-table.js +1 -1
  159. package/dist/components/xpl-grid-item.js +1 -1
  160. package/dist/components/xpl-grid.js +1 -1
  161. package/dist/components/xpl-header-accordion.js +1 -1
  162. package/dist/components/xpl-icon2.js +1 -1
  163. package/dist/components/xpl-input-date2.js +1 -1
  164. package/dist/components/xpl-input-file2.js +1 -1
  165. package/dist/components/xpl-input-search.d.ts +11 -0
  166. package/dist/components/xpl-input-search.js +1 -0
  167. package/dist/components/xpl-input-search2.js +1 -0
  168. package/dist/components/xpl-input2.js +1 -1
  169. package/dist/components/xpl-large-card.js +1 -1
  170. package/dist/components/{xpl-progress.d.ts → xpl-list-item.d.ts} +4 -4
  171. package/dist/components/xpl-list-item.js +1 -0
  172. package/dist/components/xpl-list-item2.js +1 -0
  173. package/dist/components/xpl-list.js +1 -1
  174. package/dist/components/xpl-main-nav.js +1 -1
  175. package/dist/components/xpl-modal.js +1 -1
  176. package/dist/components/xpl-nav-header-menu.d.ts +11 -0
  177. package/dist/components/xpl-nav-header-menu.js +1 -0
  178. package/dist/components/xpl-nav-item.js +1 -1
  179. package/dist/components/xpl-pagination.js +1 -1
  180. package/dist/components/xpl-panel.js +1 -1
  181. package/dist/components/xpl-popover2.js +1 -1
  182. package/dist/components/xpl-progress-bar.js +1 -1
  183. package/dist/components/xpl-progress-indicator.d.ts +11 -0
  184. package/dist/components/xpl-progress-indicator.js +1 -0
  185. package/dist/components/xpl-radio2.js +1 -1
  186. package/dist/components/xpl-secondary-nav.js +1 -1
  187. package/dist/components/xpl-select2.js +1 -1
  188. package/dist/components/xpl-side-nav-item.js +1 -1
  189. package/dist/components/xpl-side-nav.js +1 -1
  190. package/dist/components/xpl-skeleton.js +1 -1
  191. package/dist/components/xpl-slideout.js +1 -1
  192. package/dist/components/xpl-spotlight.d.ts +11 -0
  193. package/dist/components/xpl-spotlight.js +1 -0
  194. package/dist/components/xpl-tab-panel.js +1 -1
  195. package/dist/components/xpl-tab.js +1 -1
  196. package/dist/components/xpl-table-body.d.ts +11 -0
  197. package/dist/components/xpl-table-body.js +1 -0
  198. package/dist/components/xpl-table-cell.d.ts +11 -0
  199. package/dist/components/xpl-table-cell.js +1 -0
  200. package/dist/components/xpl-table-cell2.js +1 -0
  201. package/dist/components/xpl-table-footer-cell.d.ts +11 -0
  202. package/dist/components/xpl-table-footer-cell.js +1 -0
  203. package/dist/components/xpl-table-footer-cell2.js +1 -0
  204. package/dist/components/xpl-table-footer.d.ts +11 -0
  205. package/dist/components/xpl-table-footer.js +1 -0
  206. package/dist/components/xpl-table-header-cell.js +1 -1
  207. package/dist/components/xpl-table-header-cell2.js +1 -0
  208. package/dist/components/xpl-table-header.js +1 -1
  209. package/dist/components/xpl-table-row.d.ts +11 -0
  210. package/dist/components/xpl-table-row.js +1 -0
  211. package/dist/components/xpl-table.js +1 -1
  212. package/dist/components/xpl-tabs.js +1 -1
  213. package/dist/components/xpl-tag2.js +1 -1
  214. package/dist/components/xpl-toast.js +1 -1
  215. package/dist/components/xpl-toggle.js +1 -1
  216. package/dist/components/xpl-toolbar.js +1 -1
  217. package/dist/components/xpl-tooltip2.js +1 -1
  218. package/dist/components/xpl-top-nav-item.d.ts +11 -0
  219. package/dist/components/xpl-top-nav-item.js +1 -0
  220. package/dist/components/xpl-top-nav-item2.js +1 -0
  221. package/dist/components/xpl-top-nav.d.ts +11 -0
  222. package/dist/components/xpl-top-nav.js +1 -0
  223. package/dist/components/xpl-utility-bar.js +1 -1
  224. package/dist/docs/xpl-avatar/readme.md +289 -15
  225. package/dist/docs/xpl-badge/readme.md +14 -9
  226. package/dist/docs/xpl-banner/readme.md +48 -11
  227. package/dist/docs/xpl-button/readme.md +28 -18
  228. package/dist/docs/xpl-calendar/readme.md +1 -1
  229. package/dist/docs/xpl-checkbox/readme.md +19 -16
  230. package/dist/docs/xpl-divider/readme.md +6 -4
  231. package/dist/docs/xpl-dropdown/readme.md +1 -1
  232. package/dist/docs/xpl-dynamic-table/readme.md +22 -19
  233. package/dist/docs/xpl-dynamic-table-cell/readme.md +20 -18
  234. package/dist/docs/xpl-dynamic-table-row/readme.md +21 -19
  235. package/dist/docs/xpl-icon/readme.md +15 -3
  236. package/dist/docs/xpl-input/readme.md +66 -41
  237. package/dist/docs/xpl-input/xpl-input-color/readme.md +1 -0
  238. package/dist/docs/xpl-input/xpl-input-phone/readme.md +1 -0
  239. package/dist/docs/xpl-input/xpl-input-search/readme.md +175 -0
  240. package/dist/docs/xpl-input/xpl-input-time/readme.md +1 -0
  241. package/dist/docs/xpl-list/readme.md +320 -10
  242. package/dist/docs/xpl-list/xpl-list-item/readme.md +99 -0
  243. package/dist/docs/xpl-pagination/readme.md +1 -0
  244. package/dist/docs/xpl-panel/readme.md +108 -17
  245. package/dist/docs/xpl-popover/readme.md +2 -0
  246. package/dist/docs/xpl-progress-indicator/readme.md +234 -0
  247. package/dist/docs/xpl-radio/readme.md +6 -4
  248. package/dist/docs/xpl-select/readme.md +2 -1
  249. package/dist/docs/xpl-side-nav/readme.md +2 -2
  250. package/dist/docs/xpl-slideout/readme.md +1 -1
  251. package/dist/docs/xpl-spotlight/readme.md +235 -0
  252. package/dist/docs/xpl-tab/readme.md +43 -7
  253. package/dist/docs/xpl-tab-panel/readme.md +42 -0
  254. package/dist/docs/xpl-table/readme.md +110 -46
  255. package/dist/docs/xpl-table/xpl-table-body/readme.md +10 -0
  256. package/dist/docs/xpl-table/xpl-table-cell/readme.md +33 -0
  257. package/dist/docs/xpl-table/xpl-table-footer/readme.md +10 -0
  258. package/dist/docs/xpl-table/xpl-table-footer-cell/readme.md +30 -0
  259. package/dist/docs/{xpl-table-header → xpl-table/xpl-table-header}/readme.md +13 -13
  260. package/dist/docs/xpl-table/xpl-table-header-cell/readme.md +66 -0
  261. package/dist/docs/xpl-table/xpl-table-row/readme.md +19 -0
  262. package/dist/docs/xpl-tabs/readme.md +62 -8
  263. package/dist/docs/xpl-tag/readme.md +379 -4
  264. package/dist/docs/xpl-toast/readme.md +1 -1
  265. package/dist/docs/xpl-top-nav/readme.md +179 -0
  266. package/dist/docs/xpl-top-nav/xpl-nav-header-menu/readme.md +81 -0
  267. package/dist/docs/xpl-top-nav/xpl-top-nav-item/readme.md +87 -0
  268. package/dist/esm/apollo-core.js +4 -4
  269. package/dist/esm/{index-C_Z2nG0p.js → index-C7bgJs6C.js} +18 -16
  270. package/dist/esm/loader.js +3 -3
  271. package/dist/esm/xpl-accordion.entry.js +3 -3
  272. package/dist/esm/xpl-application-shell.entry.js +2 -2
  273. package/dist/esm/{xpl-avatar_47.entry.js → xpl-avatar_61.entry.js} +6082 -1461
  274. package/dist/esm/xpl-button-row.entry.js +2 -2
  275. package/dist/esm/xpl-calendar.entry.js +2 -2
  276. package/dist/esm/xpl-dynamic-table-cell.entry.js +3 -3
  277. package/dist/esm/xpl-dynamic-table-row.entry.js +3 -3
  278. package/dist/esm/xpl-dynamic-table.entry.js +2 -2
  279. package/dist/esm/xpl-grid-item.entry.js +2 -2
  280. package/dist/esm/xpl-grid.entry.js +2 -2
  281. package/dist/esm/xpl-large-card.entry.js +2 -2
  282. package/dist/esm/xpl-main-nav.entry.js +2 -2
  283. package/dist/esm/xpl-toggle.entry.js +4 -4
  284. package/dist/esm/xpl-toolbar.entry.js +3 -3
  285. package/dist/types/components/xpl-avatar/avatar.stories.d.ts +88 -29
  286. package/dist/types/components/xpl-avatar/xpl-avatar.d.ts +29 -2
  287. package/dist/types/components/xpl-badge/badge.stories.d.ts +0 -19
  288. package/dist/types/components/xpl-button/xpl-button.d.ts +7 -0
  289. package/dist/types/components/xpl-checkbox/xpl-checkbox.d.ts +4 -3
  290. package/dist/types/components/xpl-header-accordion/xpl-header-accordion.d.ts +9 -10
  291. package/dist/types/components/xpl-input/input.stories.d.ts +1 -0
  292. package/dist/types/components/xpl-input/xpl-input-search/xpl-input-search.d.ts +39 -0
  293. package/dist/types/components/xpl-input/xpl-input.d.ts +13 -5
  294. package/dist/types/components/xpl-list/list.stories.d.ts +299 -13
  295. package/dist/types/components/xpl-list/listitem.d.ts +13 -0
  296. package/dist/types/components/xpl-list/xpl-list-item/xpl-list-item.d.ts +71 -0
  297. package/dist/types/components/xpl-list/xpl-list.d.ts +55 -2
  298. package/dist/types/components/xpl-panel/panel.stories.d.ts +2 -0
  299. package/dist/types/components/xpl-progress-indicator/progress-indicator.stories.d.ts +62 -0
  300. package/dist/types/components/xpl-progress-indicator/xpl-progress-indicator.d.ts +11 -0
  301. package/dist/types/components/xpl-spotlight/spotlight.stories.d.ts +197 -0
  302. package/dist/types/components/xpl-spotlight/xpl-spotlight.d.ts +101 -0
  303. package/dist/types/components/xpl-tab/xpl-tab.d.ts +14 -1
  304. package/dist/types/components/xpl-tab-panel/xpl-tab-panel.d.ts +2 -1
  305. package/dist/types/components/xpl-table/table.stories.d.ts +161 -19
  306. package/dist/types/components/xpl-table/utils/move-row-dom.d.ts +3 -0
  307. package/dist/types/components/xpl-table/utils/table-internal.d.ts +8 -0
  308. package/dist/types/components/xpl-table/xpl-table-body/xpl-table-body.d.ts +3 -0
  309. package/dist/types/components/xpl-table/xpl-table-cell/xpl-table-cell.d.ts +11 -0
  310. package/dist/types/components/xpl-table/xpl-table-footer/xpl-table-footer.d.ts +3 -0
  311. package/dist/types/components/xpl-table/xpl-table-footer-cell/xpl-table-footer-cell.d.ts +4 -0
  312. package/dist/types/components/{xpl-table-header → xpl-table/xpl-table-header}/table-header.stories.d.ts +13 -16
  313. package/dist/types/components/{xpl-table-header-cell → xpl-table/xpl-table-header-cell}/table-header-cell.stories.d.ts +24 -20
  314. package/dist/types/components/xpl-table/xpl-table-header-cell/xpl-table-header-cell.d.ts +32 -0
  315. package/dist/types/components/xpl-table/xpl-table-row/xpl-table-row.d.ts +13 -0
  316. package/dist/types/components/xpl-table/xpl-table.d.ts +123 -21
  317. package/dist/types/components/xpl-tabs/segment-control.stories.d.ts +112 -0
  318. package/dist/types/components/xpl-tabs/tabs.shared.d.ts +156 -0
  319. package/dist/types/components/xpl-tabs/tabs.stories.d.ts +65 -12
  320. package/dist/types/components/xpl-tabs/xpl-tabs.d.ts +37 -18
  321. package/dist/types/components/xpl-tag/tag.stories.d.ts +65 -0
  322. package/dist/types/components/xpl-tag/xpl-tag.d.ts +36 -1
  323. package/dist/types/components/xpl-top-nav/top-nav.stories.d.ts +471 -0
  324. package/dist/types/components/xpl-top-nav/xpl-nav-header-menu/xpl-nav-header-menu.d.ts +18 -0
  325. package/dist/types/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.d.ts +48 -0
  326. package/dist/types/components/xpl-top-nav/xpl-top-nav.d.ts +51 -0
  327. package/dist/types/components.d.ts +1888 -148
  328. package/dist/types/utils/lifecycle.d.ts +16 -0
  329. package/dist/types/utils/tab-a11y-ids.d.ts +4 -0
  330. package/package.json +3 -3
  331. package/dist/apollo-core/p-0bce3874.entry.js +0 -1
  332. package/dist/apollo-core/p-5549756c.entry.js +0 -1
  333. package/dist/apollo-core/p-56fa4941.entry.js +0 -1
  334. package/dist/apollo-core/p-76c324da.entry.js +0 -1
  335. package/dist/apollo-core/p-7a3224b4.entry.js +0 -1
  336. package/dist/apollo-core/p-7e924697.entry.js +0 -1
  337. package/dist/apollo-core/p-9efca9e1.entry.js +0 -1
  338. package/dist/apollo-core/p-b252b380.entry.js +0 -1
  339. package/dist/apollo-core/p-c91daac1.entry.js +0 -1
  340. package/dist/apollo-core/p-d9b62508.entry.js +0 -1
  341. package/dist/apollo-core/p-eaea16d1.entry.js +0 -1
  342. package/dist/apollo-core/p-eed13bca.entry.js +0 -1
  343. package/dist/apollo-core/p-f5af9539.entry.js +0 -1
  344. package/dist/cjs/xpl-list.cjs.entry.js +0 -32
  345. package/dist/cjs/xpl-table-header-cell.cjs.entry.js +0 -57
  346. package/dist/cjs/xpl-table-header.cjs.entry.js +0 -14
  347. package/dist/collection/components/xpl-progress/progress.stories.js +0 -106
  348. package/dist/collection/components/xpl-progress/xpl-progress.js +0 -60
  349. package/dist/collection/components/xpl-table-header/table-header.stories.js +0 -126
  350. package/dist/collection/components/xpl-table-header/xpl-table-header.js +0 -7
  351. package/dist/collection/components/xpl-table-header-cell/table-header-cell.stories.js +0 -75
  352. package/dist/collection/components/xpl-table-header-cell/xpl-table-header-cell.js +0 -188
  353. package/dist/components/xpl-progress.js +0 -1
  354. package/dist/docs/xpl-progress/readme.md +0 -22
  355. package/dist/docs/xpl-table-header-cell/readme.md +0 -47
  356. package/dist/esm/xpl-list.entry.js +0 -30
  357. package/dist/esm/xpl-table-header-cell.entry.js +0 -55
  358. package/dist/esm/xpl-table-header.entry.js +0 -12
  359. package/dist/types/components/xpl-progress/progress.stories.d.ts +0 -38
  360. package/dist/types/components/xpl-progress/xpl-progress.d.ts +0 -6
  361. package/dist/types/components/xpl-table-header-cell/xpl-table-header-cell.d.ts +0 -13
  362. /package/dist/types/components/{xpl-table-header → xpl-table/xpl-table-header}/xpl-table-header.d.ts +0 -0
@@ -59,19 +59,19 @@ export class Pagination {
59
59
  render() {
60
60
  const disablePrev = this.currentPage <= 1;
61
61
  const disableNext = this.currentPage >= this.totalPages;
62
- return (h(Host, { key: 'a4b8f4ddd9b29563f64282e5728119e1552e5358', class: `xpl-pagination xpl-pagination__${this.withPageControl ? 'with' : 'no'}-page-control` }, this.withPageControl && (h("div", { key: '00c0d20d2bc57eebd82105ebafe08a5696496b16', class: "xpl-pagination__rows-per-page" }, h("label", { key: '1b28a926bbaa4b888217941bb0bf2d897d79dfbc', class: "xpl-pagination__rows-label" }, "Rows per page:"), h("xpl-select", { key: 'f8265a8d87986cfc0afbfcd9d783d767748a8957', class: "xpl-pagination__rows-per-page-select", choices: this.rowsPerPageOptionsArray.map((option) => ({
62
+ return (h(Host, { key: 'cb9e0db1008dfadcfb48ae308d8e595dc751a6ee', class: `xpl-pagination xpl-pagination__${this.withPageControl ? 'with' : 'no'}-page-control` }, this.withPageControl && (h("div", { key: '30d272307c28e0b50d78b036ec63f4d2a120aaa0', class: "xpl-pagination__rows-per-page" }, h("label", { key: 'cc5969dbc2685aff198f03ef593dd714570225dd', class: "xpl-pagination__rows-label" }, "Rows per page:"), h("xpl-select", { key: '447ee86d134c70f51c4a756c499bb6766d10ed7f', class: "xpl-pagination__rows-per-page-select", choices: this.rowsPerPageOptionsArray.map((option) => ({
63
63
  label: option.toString(),
64
64
  value: option.toString(),
65
65
  isSelected: option === this.selectedRowsPerPage,
66
66
  })), ref: (el) => {
67
67
  this.rowsPerPageSelectRef = el;
68
- } }))), h("div", { key: '1444d9005878427c44a573d4f6dd1d674b677228', class: "xpl-pagination__pager" }, h("button", { key: '08b98f8c1983543dad93c53d7c71d1aa71b4a45a', class: "xpl-pagination__pager-button xpl-pagination__pager-button-prev", disabled: disablePrev, onClick: this.handlePrevPage, "aria-label": "Previous Page", tabindex: "0" }, h("xpl-icon", { key: 'dcc26fcb7be5f525b4767d0860766f3a216a93e4', icon: "arrow-left", size: 20 })), h("xpl-select", { key: '7ba55fb451e26b31aba360876d8ee3b2bb423e19', class: "xpl-pagination__page-select", choices: Array.from({ length: this.totalPages }, (_, index) => ({
68
+ } }))), h("div", { key: 'ac10b2efa235b3a065c7089bfb8674d6e015ee0c', class: "xpl-pagination__pager" }, h("button", { key: '83e9cc02336b94fe3cc8b16ba52d01ab70c50eb1', class: "xpl-pagination__pager-button xpl-pagination__pager-button-prev", disabled: disablePrev, onClick: this.handlePrevPage, "aria-label": "Previous Page", tabindex: "0" }, h("xpl-icon", { key: '12a92187d96ad9c2973fd73c2b61c1c04cce589b', icon: "arrow-left", size: 20 })), h("xpl-select", { key: '79324205919048c207044ca7916a276675463d25', class: "xpl-pagination__page-select", choices: Array.from({ length: this.totalPages }, (_, index) => ({
69
69
  label: `Page ${index + 1}`,
70
70
  value: (index + 1).toString(),
71
71
  isSelected: index + 1 === this.currentPage,
72
72
  })), "custom-display-value": true, ref: (el) => {
73
73
  this.pageSelectRef = el;
74
- } }, h("div", { key: '9c8adc967a098d954477d9032f6d22a0192948e0', slot: "custom-display-value" }, `${this.currentPage} of ${this.totalPages}`)), h("button", { key: '73b5bcbe7ce988c7f5f12ec4ea179bb879f39919', class: "xpl-pagination__pager-button xpl-pagination__pager-button-next", disabled: disableNext, onClick: this.handleNextPage, "aria-label": "Next Page", tabindex: "0" }, h("xpl-icon", { key: 'fb95a3807dc37c419195b2c88c2d8dc39b183880', icon: "arrow-right", size: 20 })))));
74
+ } }, h("div", { key: '73674015b0e1f8c9175c2af2a409cf1beb57fb9d', slot: "custom-display-value" }, `${this.currentPage} of ${this.totalPages}`)), h("button", { key: '6cecec44e8dfe62b9c6c94b33bad64473e0660a7', class: "xpl-pagination__pager-button xpl-pagination__pager-button-next", disabled: disableNext, onClick: this.handleNextPage, "aria-label": "Next Page", tabindex: "0" }, h("xpl-icon", { key: '9d21370837ee23434c94d790c7e300358d352e93', icon: "arrow-right", size: 20 })))));
75
75
  }
76
76
  static get is() { return "xpl-pagination"; }
77
77
  static get properties() {
@@ -3,12 +3,14 @@ export default {
3
3
  component: 'xpl-panel',
4
4
  argTypes: {
5
5
  accent: {
6
+ description: 'Top accent bar color. `none` hides the bar.',
6
7
  options: ['none', 'primary', 'secondary', 'positive', 'negative', 'highlight'],
7
8
  control: {
8
9
  type: 'select',
9
10
  },
10
11
  },
11
12
  padding: {
13
+ description: 'Content padding density; responsive steps for default/tight/loose (see readme).',
12
14
  options: ['default', 'tight', 'loose'],
13
15
  control: {
14
16
  type: 'select',
@@ -18,7 +20,7 @@ export default {
18
20
  };
19
21
  export const Panel = ({ accent, padding }) => `
20
22
  <xpl-panel accent="${accent}" padding="${padding}" style="max-width: 800px">
21
- <p style="margin: 0; color: var(--xpl-text-subdued); font-weight: var(--xpl-font-weight-normal); font-size: var(--xpl-font-size-body)">Panel content goes here. Compose other Apollo components within this slot.</p>
23
+ <p style="margin: 0" class="xpl-text-body">Panel content goes here. Compose other Apollo components within this slot.</p>
22
24
  </xpl-panel>
23
25
  `;
24
26
  Panel.args = {
@@ -33,12 +35,12 @@ Panel.parameters = {
33
35
  html: {
34
36
  render: (({ accent, padding }) => {
35
37
  const accentClass = accent !== 'none' ? ` xpl-panel--accent-${accent}` : '';
36
- const accentBar = accent !== 'none' ? '<div class="xpl-panel__accent"></div>' : '';
38
+ const accentBar = accent !== 'none' ? '<div aria-hidden="true" class="xpl-panel__accent"></div>' : '';
37
39
  return `
38
40
  <div class="xpl-panel${accentClass} xpl-panel--padding-${padding}" style="max-width: 800px">
39
41
  ${accentBar}
40
42
  <div class="xpl-panel__content">
41
- <p style="margin: 0; color: var(--xpl-text-subdued); font-weight: var(--xpl-font-weight-normal); font-size: var(--xpl-font-size-body)">Panel content goes here. Compose other Apollo components within this slot.</p>
43
+ <p class="xpl-text-body" style="margin: 0">Panel content goes here. Compose other Apollo components within this slot.</p>
42
44
  </div>
43
45
  </div>
44
46
  `;
@@ -6,11 +6,11 @@ export class XplPanel {
6
6
  }
7
7
  render() {
8
8
  const hasAccent = this.accent !== 'none';
9
- return (h(Host, { key: 'a247ab70a6b062022146b88d95b382f879cb8ee7', class: {
9
+ return (h(Host, { key: 'a9618f21b7aba5804881ec509d47909b87ad9aa5', class: {
10
10
  'xpl-panel': true,
11
11
  [`xpl-panel--accent-${this.accent}`]: hasAccent,
12
12
  [`xpl-panel--padding-${this.padding}`]: true,
13
- } }, hasAccent && h("div", { key: '100febab4991a83e7463198331253fe7c7425a1d', class: "xpl-panel__accent" }), h("div", { key: 'c0758ab1d25675236ab15f052f45a29432021019', class: "xpl-panel__content" }, h("slot", { key: '948ec6423935f7ae825f78a89b456f72a66819a8' }))));
13
+ } }, hasAccent && h("div", { key: '5b92aa4395658996de2736941d6c0d0262903013', "aria-hidden": "true", class: "xpl-panel__accent" }), h("div", { key: '5b22eb3d1911ce2d68876c0bc0bc61f947c830f9', class: "xpl-panel__content" }, h("slot", { key: 'b2f331aa8ea4328b0e50736d97361a7bfcde60ed' }))));
14
14
  }
15
15
  static get is() { return "xpl-panel"; }
16
16
  static get properties() {
@@ -47,7 +47,7 @@ export class XplPanel {
47
47
  "optional": false,
48
48
  "docs": {
49
49
  "tags": [],
50
- "text": "Padding density applied to the content area.\nResponsive: scales down at tablet and mobile breakpoints.\n\n- `default` \u2013 24 px desktop / 16 px tablet+mobile\n- `tight` \u2013 16 px desktop / 8 px tablet+mobile\n- `loose` \u2013 40 px desktop / 32 px tablet / 24 px mobile"
50
+ "text": "Padding density applied to the content area.\n(default and tight keep desktop padding through tablet; mobile \u2264480px).\n\n- `default` \u2013 24 px desktop & tablet / 16 px mobile\n- `tight` \u2013 16 px desktop & tablet / 8 px mobile\n- `loose` \u2013 40 px desktop / 32 px tablet / 24 px mobile"
51
51
  },
52
52
  "getter": false,
53
53
  "setter": false,
@@ -206,16 +206,16 @@ export class Popover {
206
206
  });
207
207
  }
208
208
  render() {
209
- return (h(Host, { key: '5ed2eca6cac15c5009d0a5440f4a1f1e4dce8260' }, h("div", { key: 'f396004504407a1215e76187be06a27e56bd4a49', class: {
209
+ return (h(Host, { key: '67ecd18580166f1582c29e33f1485bf67590b9f5' }, h("div", { key: 'bba42a3474432557bfc71705c2d5206493fed64b', class: {
210
210
  'xpl-popover': true,
211
211
  [`xpl-popover--${this.actualPosition}`]: true,
212
212
  'xpl-popover--is-open': this.isOpenState,
213
- } }, h("span", { key: '23ac1ebf38617b2a9bd91a1ccfe37d212191f76c', role: "button", tabindex: "0", "aria-haspopup": "dialog", "aria-expanded": this.isOpenState ? 'true' : 'false', onClick: this.togglePopover, ref: (el) => {
213
+ } }, h("span", { key: '7960b727b609da6b0e949e4889e217b0f3efb6c9', role: "button", tabindex: "0", "aria-haspopup": "dialog", "aria-expanded": this.isOpenState ? 'true' : 'false', onClick: this.togglePopover, ref: (el) => {
214
214
  this.triggerRef = el;
215
- } }, h("slot", { key: 'ee427ff33db360b11719a886ad724a2bceb64eed', name: "trigger" })), this.display === 'arrow' && (h("div", { key: '27fb57c24abdf3eecb6aae0a96f9b6256ee593a3', class: "xpl-popover__arrow" }, h("svg", { key: '3456fa0239edafe272047446d3aed0ebd4490275', width: "17", height: "14", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: 'e5de57c7cbf5301548af4eb5f79d14acc459d0a8', d: "M0 5h15l-7.5 7.5L0 5Z", fill: "white", stroke: "none", class: "arrow-fill" }), h("path", { key: '784f569c0baf0f6fdfad6bda1a36e6ee43293dce', d: "M0 5 L7.5 12.5 L15 5", fill: "none", stroke: "black", "stroke-width": "1", class: "arrow-stroke" })))), h("div", { key: '6ca95b76529ddfa681d4b11a30dceaaa4a3a10c4', class: {
215
+ } }, h("slot", { key: '08d2034f7559ce12f948252cf62bded94ab7666a', name: "trigger" })), this.display === 'arrow' && (h("div", { key: '1c51e2f96884da9828cf5d94fc1639a63580a0c7', class: "xpl-popover__arrow" }, h("svg", { key: 'bbf85fdaa6385724f8ce55001a5d9d2e2471dfc5', width: "17", height: "14", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '4ba2c4805e65b776af7bd313f575866f134fb778', d: "M0 5h15l-7.5 7.5L0 5Z", fill: "white", stroke: "none", class: "arrow-fill" }), h("path", { key: '21fab6334d8106940a3e5c49acc70b80a7d61326', d: "M0 5 L7.5 12.5 L15 5", fill: "none", stroke: "black", "stroke-width": "1", class: "arrow-stroke" })))), h("div", { key: 'fb0eeedab71c9d10fcab8f9277af919efd94f202', class: {
216
216
  'xpl-popover__content': true,
217
217
  [`xpl-popover__content--display-${this.display}`]: true,
218
- }, ref: (el) => (this.contentRef = el) }, h("slot", { key: '75c6768b7e10ac698d54bdc30d052a6c0e98bd75' })))));
218
+ }, ref: (el) => (this.contentRef = el) }, h("slot", { key: '4bd22aa19dedb6fb77355caafcd009413c8ad7d9' })))));
219
219
  }
220
220
  static get is() { return "xpl-popover"; }
221
221
  static get properties() {
@@ -25,12 +25,12 @@ export class ProgressBar {
25
25
  return this.variant === 'indeterminate';
26
26
  }
27
27
  render() {
28
- return (h(Host, { key: 'e07eee1ea1614d68190290be2ad16df663337215', class: {
28
+ return (h(Host, { key: '4161cfe080a629f1c69c14a0e0a553df950d57a8', class: {
29
29
  'xpl-progress-bar': true,
30
30
  [`xpl-progress-bar--${this.size}`]: true,
31
31
  [`xpl-progress-bar--${this.variant}`]: true,
32
32
  'xpl-progress-bar--complete': this.isComplete,
33
- } }, h("div", { key: 'e46025a05d42e0c275444f1057c8ee9827ce4d15', class: "xpl-progress-bar__wrapper" }, (this.label || this.showStatusIcon) && (h("div", { key: 'afc59b2fb32d9ac60afda9a40544121da045b237', class: "xpl-progress-bar__header" }, this.label && h("div", { key: '39d7add736c856c43bdecb61d083cf537e4da454', class: "xpl-progress-bar__label" }, this.label), this.showStatusIcon && (h("div", { key: '4e54b04a314136cdae066f7b48a8449b20a8daff', class: "xpl-progress-bar__icon" }, this.isError ? (h("xpl-icon", { icon: "circle-xmark-1" })) : (h("xpl-icon", { icon: "circle-check-1" })))))), h("div", { key: '6950cefcd5e90be2362201ae830bae73293b275a', class: "xpl-progress-bar__row" }, this.isIndeterminate ? (h("div", { class: "xpl-progress-bar__track xpl-progress-bar__track--indeterminate", role: "progressbar", "aria-label": this.label || 'Progress' }, h("div", { class: "xpl-progress-bar__indeterminate" }))) : (h("progress", { class: "xpl-progress-bar__progress", value: this.clampedValue, max: this.max, "aria-label": this.label || 'Progress' }))), this.helperText && (h("div", { key: 'e56af1b27ff6201a1eaa5cca7160c963a0fca529', class: "xpl-progress-bar__helper" }, this.helperText)))));
33
+ } }, h("div", { key: 'c3ec83eb50771a91c543da1c9ec204e03b402c98', class: "xpl-progress-bar__wrapper" }, (this.label || this.showStatusIcon) && (h("div", { key: '9bb66a54388c8d24d9c737d8736536fc47285bc9', class: "xpl-progress-bar__header" }, this.label && h("div", { key: 'fb8160645a4c2ad56a276d5b85c5384d85b75b7e', class: "xpl-progress-bar__label" }, this.label), this.showStatusIcon && (h("div", { key: 'fb3cf9019e4ad18b0016219d44f3aa916ee5b4b2', class: "xpl-progress-bar__icon" }, this.isError ? (h("xpl-icon", { icon: "circle-xmark-1" })) : (h("xpl-icon", { icon: "circle-check-1" })))))), h("div", { key: 'cef864deff983bae01b9871ec17d6f6edccc327d', class: "xpl-progress-bar__row" }, this.isIndeterminate ? (h("div", { class: "xpl-progress-bar__track xpl-progress-bar__track--indeterminate", role: "progressbar", "aria-label": this.label || 'Progress' }, h("div", { class: "xpl-progress-bar__indeterminate" }))) : (h("progress", { class: "xpl-progress-bar__progress", value: this.clampedValue, max: this.max, "aria-label": this.label || 'Progress' }))), this.helperText && (h("div", { key: '9f7a52c0527b0fccc2189f0485596fa2cf80d417', class: "xpl-progress-bar__helper" }, this.helperText)))));
34
34
  }
35
35
  static get is() { return "xpl-progress-bar"; }
36
36
  static get properties() {
@@ -0,0 +1,118 @@
1
+ export default {
2
+ title: 'Components/Progress Indicator',
3
+ component: 'xpl-progress-indicator',
4
+ argTypes: {
5
+ steps: { control: { type: 'object' } },
6
+ currentStep: { control: { type: 'number' } },
7
+ layout: { control: { type: 'select' }, options: ['horizontal', 'vertical'] },
8
+ showNumbers: { control: { type: 'boolean' } },
9
+ showLabels: { control: { type: 'boolean' } },
10
+ },
11
+ tags: ['beta'],
12
+ };
13
+ const defaultSteps = ['Details', 'Location', 'Instructor', 'Customers'];
14
+ export const ProgressIndicator = ({ steps = defaultSteps, currentStep = 1, layout = 'horizontal', showNumbers = true, showLabels = true, }) => {
15
+ const id = 'progress-indicator-stepper';
16
+ const stepsJson = JSON.stringify(steps);
17
+ let attrs = '';
18
+ attrs += ` current-step="${currentStep}"`;
19
+ if (layout !== 'horizontal')
20
+ attrs += ` layout="${layout}"`;
21
+ if (!showNumbers)
22
+ attrs += ` show-numbers="false"`;
23
+ if (!showLabels)
24
+ attrs += ` show-labels="false"`;
25
+ return `
26
+ <div class="h-96" style="padding: var(--xpl-space-24); width: 100%; height: 300px">
27
+ <xpl-progress-indicator id="${id}"${attrs}></xpl-progress-indicator>
28
+
29
+ <div style="margin-top: var(--xpl-space-32); display: flex; gap: var(--xpl-space-10);">
30
+ <xpl-button id="${id}-prev" variant="secondary">Previous</xpl-button>
31
+ <xpl-button id="${id}-next">Next</xpl-button>
32
+ </div>
33
+
34
+ <script>
35
+ (function() {
36
+ const progress = document.getElementById('${id}');
37
+ progress.steps = ${stepsJson};
38
+
39
+ const prevBtn = document.getElementById('${id}-prev');
40
+ const nextBtn = document.getElementById('${id}-next');
41
+ const totalSteps = ${steps.length};
42
+
43
+ let currentStep = ${currentStep};
44
+
45
+ const updateButtons = () => {
46
+ prevBtn.disabled = currentStep === 0;
47
+ nextBtn.disabled = currentStep === totalSteps;
48
+ };
49
+
50
+ updateButtons();
51
+
52
+ prevBtn.onclick = () => {
53
+ if (currentStep > 0) {
54
+ currentStep--;
55
+ progress.currentStep = currentStep;
56
+ updateButtons();
57
+ }
58
+ };
59
+
60
+ nextBtn.onclick = () => {
61
+ if (currentStep < totalSteps) {
62
+ currentStep++;
63
+ progress.currentStep = currentStep;
64
+ updateButtons();
65
+ }
66
+ };
67
+ })();
68
+ </script>
69
+ </div>
70
+ `;
71
+ };
72
+ ProgressIndicator.args = {
73
+ steps: defaultSteps,
74
+ currentStep: 1,
75
+ layout: 'horizontal',
76
+ showNumbers: true,
77
+ showLabels: true,
78
+ };
79
+ ProgressIndicator.parameters = {
80
+ 'web-component': {
81
+ render: ProgressIndicator(ProgressIndicator.args),
82
+ },
83
+ html: {
84
+ render: `
85
+ <div style="padding: var(--xpl-space-24);">
86
+ <div class="xpl-progress-indicator xpl-progress-indicator-horizontal">
87
+ <div class="xpl-progress-indicator-container">
88
+ ${defaultSteps
89
+ .map((step, index) => `
90
+ <div class="xpl-progress-indicator-step ${index === 1
91
+ ? 'xpl-progress-indicator-step-active'
92
+ : index < 1
93
+ ? 'xpl-progress-indicator-step-finished'
94
+ : ''}">
95
+ <div class="xpl-progress-indicator-step-content">
96
+ <div class="xpl-progress-indicator-step-circle">${index < 1
97
+ ? '<xpl-icon icon="check-2" size="20" class="xpl-progress-indicator-step-checkmark"></xpl-icon>'
98
+ : `<span class="xpl-progress-indicator-step-number">${index + 1}</span>`}</div>
99
+ <div class="xpl-progress-indicator-step-text">${step}</div>
100
+ </div>
101
+ </div>
102
+ `)
103
+ .join('')}
104
+ </div>
105
+ </div>
106
+
107
+ <div style="margin-top: var(--xpl-space-32); display: flex; gap: var(--xpl-space-10);">
108
+ <button class="xpl-button xpl-button--secondary">Previous</button>
109
+ <button class="xpl-button">Next</button>
110
+ </div>
111
+ </div>
112
+ `,
113
+ },
114
+ design: {
115
+ type: 'figma',
116
+ url: 'https://www.figma.com/design/MjjYek73MFnHmVNdm45Sd1/Apollo-Web?node-id=12762-3404',
117
+ },
118
+ };
@@ -0,0 +1,171 @@
1
+ import { Host, h } from "@stencil/core";
2
+ export class ProgressIndicator {
3
+ constructor() {
4
+ this.currentStep = 0;
5
+ this.layout = 'horizontal';
6
+ this.showLabels = true;
7
+ this.showNumbers = true;
8
+ }
9
+ validateCurrentStep() {
10
+ if (!this.steps || this.steps.length === 0)
11
+ return;
12
+ const max = this.steps.length;
13
+ if (this.currentStep < 0) {
14
+ this.currentStep = 0;
15
+ }
16
+ else if (this.currentStep > max) {
17
+ this.currentStep = max;
18
+ }
19
+ }
20
+ renderStepContent(index, isFinished) {
21
+ if (isFinished) {
22
+ return (h("xpl-icon", { icon: "check-2", size: 20, class: "xpl-progress-indicator-step-checkmark" }));
23
+ }
24
+ if (!this.showNumbers) {
25
+ return h("span", { class: "xpl-progress-indicator-step-dot" });
26
+ }
27
+ return h("span", { class: "xpl-progress-indicator-step-number" }, index + 1);
28
+ }
29
+ renderStep(step, index) {
30
+ const isFinished = this.currentStep > index;
31
+ const isActive = this.currentStep === index;
32
+ const isHorizontal = this.layout === 'horizontal';
33
+ const circle = (h("div", { class: "xpl-progress-indicator-step-circle" }, this.renderStepContent(index, isFinished)));
34
+ const label = this.showLabels && h("div", { class: "xpl-progress-indicator-step-text" }, step);
35
+ const content = isHorizontal ? (h("div", { class: "xpl-progress-indicator-step-content" }, circle, label)) : ([circle, label]);
36
+ return (h("div", { class: {
37
+ 'xpl-progress-indicator-step': true,
38
+ 'xpl-progress-indicator-step-active': isActive,
39
+ 'xpl-progress-indicator-step-finished': isFinished,
40
+ }, role: "listitem", "aria-label": `${step}, ${isFinished ? 'completed' : isActive ? 'current' : 'upcoming'}`, "aria-current": isActive ? 'step' : undefined }, content));
41
+ }
42
+ render() {
43
+ const steps = this.steps || [];
44
+ const hostClasses = {
45
+ 'xpl-progress-indicator': true,
46
+ 'xpl-progress-indicator-horizontal': this.layout === 'horizontal',
47
+ 'xpl-progress-indicator-vertical': this.layout === 'vertical',
48
+ 'xpl-progress-indicator-no-labels': !this.showLabels,
49
+ };
50
+ const totalSteps = steps.length;
51
+ const allComplete = this.currentStep >= totalSteps;
52
+ const currentStepNumber = Math.min(this.currentStep + 1, totalSteps);
53
+ const ariaLabel = totalSteps > 0
54
+ ? allComplete
55
+ ? `Progress: all ${totalSteps} ${totalSteps === 1 ? 'step' : 'steps'} complete`
56
+ : `Progress: step ${currentStepNumber} of ${totalSteps}`
57
+ : 'Progress';
58
+ return (h(Host, { key: '44ac526c3954f688007573bf53c771b30518b9c7', class: hostClasses, role: "group", "aria-label": ariaLabel }, h("div", { key: '1ab86e3777ded2737ed5dd3c5ec759211a1087a7', class: "xpl-progress-indicator-container", role: "list" }, steps.map((step, index) => this.renderStep(step, index)))));
59
+ }
60
+ static get is() { return "xpl-progress-indicator"; }
61
+ static get properties() {
62
+ return {
63
+ "currentStep": {
64
+ "type": "number",
65
+ "mutable": true,
66
+ "complexType": {
67
+ "original": "number",
68
+ "resolved": "number",
69
+ "references": {}
70
+ },
71
+ "required": false,
72
+ "optional": false,
73
+ "docs": {
74
+ "tags": [],
75
+ "text": "Current step index. Steps with index < currentStep are \"finished\",\nthe step at currentStep is \"active\", and steps beyond are \"waiting\".\nSet to steps.length to mark all steps as finished.\nAutomatically clamped to [0, steps.length]."
76
+ },
77
+ "getter": false,
78
+ "setter": false,
79
+ "reflect": false,
80
+ "attribute": "current-step",
81
+ "defaultValue": "0"
82
+ },
83
+ "layout": {
84
+ "type": "string",
85
+ "mutable": false,
86
+ "complexType": {
87
+ "original": "'horizontal' | 'vertical'",
88
+ "resolved": "\"horizontal\" | \"vertical\"",
89
+ "references": {}
90
+ },
91
+ "required": false,
92
+ "optional": false,
93
+ "docs": {
94
+ "tags": [],
95
+ "text": "Layout direction - 'horizontal' or 'vertical'"
96
+ },
97
+ "getter": false,
98
+ "setter": false,
99
+ "reflect": false,
100
+ "attribute": "layout",
101
+ "defaultValue": "'horizontal'"
102
+ },
103
+ "showLabels": {
104
+ "type": "boolean",
105
+ "mutable": false,
106
+ "complexType": {
107
+ "original": "boolean",
108
+ "resolved": "boolean",
109
+ "references": {}
110
+ },
111
+ "required": false,
112
+ "optional": false,
113
+ "docs": {
114
+ "tags": [],
115
+ "text": "Whether to show step labels"
116
+ },
117
+ "getter": false,
118
+ "setter": false,
119
+ "reflect": false,
120
+ "attribute": "show-labels",
121
+ "defaultValue": "true"
122
+ },
123
+ "showNumbers": {
124
+ "type": "boolean",
125
+ "mutable": false,
126
+ "complexType": {
127
+ "original": "boolean",
128
+ "resolved": "boolean",
129
+ "references": {}
130
+ },
131
+ "required": false,
132
+ "optional": false,
133
+ "docs": {
134
+ "tags": [],
135
+ "text": "Whether to show step numbers inside circles"
136
+ },
137
+ "getter": false,
138
+ "setter": false,
139
+ "reflect": false,
140
+ "attribute": "show-numbers",
141
+ "defaultValue": "true"
142
+ },
143
+ "steps": {
144
+ "type": "unknown",
145
+ "mutable": false,
146
+ "complexType": {
147
+ "original": "string[]",
148
+ "resolved": "string[]",
149
+ "references": {}
150
+ },
151
+ "required": false,
152
+ "optional": true,
153
+ "docs": {
154
+ "tags": [],
155
+ "text": "The steps is an array of the steps name."
156
+ },
157
+ "getter": false,
158
+ "setter": false
159
+ }
160
+ };
161
+ }
162
+ static get watchers() {
163
+ return [{
164
+ "propName": "steps",
165
+ "methodName": "validateCurrentStep"
166
+ }, {
167
+ "propName": "currentStep",
168
+ "methodName": "validateCurrentStep"
169
+ }];
170
+ }
171
+ }
@@ -14,14 +14,14 @@ export class Radio {
14
14
  };
15
15
  }
16
16
  render() {
17
- return (h(Host, { key: 'c5b11522a1b9b21adf40318ff7f74f2ff76aa3c2', class: {
17
+ return (h(Host, { key: 'a96ab55137fedbfe00d68b660bd2d935208dc6c6', class: {
18
18
  'xpl-checkbox-radio-container': true,
19
19
  styled: this.styled,
20
20
  disabled: this.disabled,
21
- } }, h("input", { key: '950a769704369e2084834876242cb44d1609a166', class: "xpl-radio", type: "radio", checked: this.checked, disabled: this.disabled, id: this.id, name: this.name, required: this.required, onChange: this.onChange, value: this.value }), h("label", { key: '09f34b6e4a60d2c63e94734599b46f2ce1fc9a90', class: {
21
+ } }, h("input", { key: 'ee385d0976d065fee4f72f75faea0ddbe33c0e81', class: "xpl-radio", type: "radio", checked: this.checked, disabled: this.disabled, id: this.id, name: this.name, required: this.required, onChange: this.onChange, value: this.value }), h("label", { key: '04e74e08a20b229f2d45b8fce80fa65ab3bf0954', class: {
22
22
  'xpl-label': true,
23
23
  'xpl-label--disabled': this.disabled,
24
- }, htmlFor: this.id }, h("slot", { key: '2552eb83722cdf2e4b9d1a691fe2712d16e0fb84' }), this.description && (h("small", { key: '3bc230b6c18922aee661033b1ea5a1bc72384aac', class: {
24
+ }, htmlFor: this.id }, h("slot", { key: 'b9fe3e13de64776a9cc1afcd8f7c10f84be8c8bb' }), this.description && (h("small", { key: '6ecd217342fbfa9bb5022bb1298683ff87af1713', class: {
25
25
  'xpl-description': true,
26
26
  'xpl-description--disabled': this.disabled,
27
27
  } }, this.description)))));
@@ -1,7 +1,7 @@
1
1
  import { Host, h } from "@stencil/core";
2
2
  export class SecondaryNav {
3
3
  render() {
4
- return (h(Host, { key: '3b015722c6fb8cf3cafb0c85054fab81a8362209', class: "xpl-secondary-nav" }, h("nav", { key: 'ffc4e57cc2ebdf792196477ff01d6b1f03da567f', "aria-label": "Secondary Nav" }, h("slot", { key: 'b15b8bcadf7faa41f155e11dcd9f2e11231efbc4' }))));
4
+ return (h(Host, { key: 'bf9cbd4351297a28d6d98d3bf1e0612fac1f5136', class: "xpl-secondary-nav" }, h("nav", { key: '764de50287c88f53f19005d50b177e85f71f7f43', "aria-label": "Secondary Nav" }, h("slot", { key: 'd7fe629382a06f62dde9f08db082854e986ba406' }))));
5
5
  }
6
6
  static get is() { return "xpl-secondary-nav"; }
7
7
  }
@@ -222,21 +222,21 @@ export class Select {
222
222
  this.truncate &&
223
223
  !this.customDisplayValue;
224
224
  const truncatedText = `+ ${Math.abs(this.choicesState.filter((a) => a.isSelected).length - this.visibleChoices)} more`;
225
- return (h(Host, { key: '5c6008a31abe121ac946c9c5fc23721d28df86eb', class: {
225
+ return (h(Host, { key: 'c02b59988eee5073103958a24061c46aa286ea50', class: {
226
226
  'xpl-select': true,
227
227
  'xpl-select--disabled': this.disabled,
228
228
  'xpl-select--no-truncate': !this.truncate,
229
229
  [(_c = this.classNames) !== null && _c !== void 0 ? _c : '']: !!this.classNames,
230
230
  }, onKeyDown: this.handleTabKeyDown, ref: (el) => {
231
231
  this.container = el;
232
- } }, this.renderLabel(), h("div", { key: 'f2de31e5b84fe2fdffa1e2b35ec611a4842a8323', class: {
232
+ } }, this.renderLabel(), h("div", { key: '189c9d2e3370876b6289ee16ee1b8927e5bfc0ee', class: {
233
233
  'xpl-input': true,
234
234
  'xpl-input--disabled': this.disabled,
235
235
  'xpl-input--error': ((_d = this.error) === null || _d === void 0 ? void 0 : _d.length) >= 0,
236
- } }, h("div", { key: '8a2192b28d75c56261f7a104ad02c76d49fb8787', class: "xpl-input-wrapper" }, h("button", { key: 'bb881153cd7cdbf4e43c40a96dfba8d95ca94aa6', class: "xpl-select__trigger", disabled: this.disabled, id: this.id, onKeyDown: this.handleTabKeyDown, onClick: (e) => {
236
+ } }, h("div", { key: 'a8df7de958be97becd2a9f6a2db761702e2066c3', class: "xpl-input-wrapper" }, h("button", { key: 'f00119d930d49b241d5160bfe7a70ee56ac598d8', class: "xpl-select__trigger", disabled: this.disabled, id: this.id, onKeyDown: this.handleTabKeyDown, onClick: (e) => {
237
237
  e.preventDefault();
238
238
  this.handleDropdownTrigger();
239
- }, type: "button" }, h("div", { key: '1518f2ef57c7eeaa0fedc1832222a0345c4c46ab', class: {
239
+ }, type: "button" }, h("div", { key: '141643ae007e8f5827d4aeb8fdd2a95b14b003ff', class: {
240
240
  'xpl-select-value': true,
241
241
  'xpl-select-value--active': this.mode === 'multi' && this.value.length > 0,
242
242
  'has-value': this.value.length > 0,
@@ -256,7 +256,7 @@ export class Select {
256
256
  return this.renderSelectedTags();
257
257
  }
258
258
  return this.placeholder;
259
- })(), isTextTruncated && truncatedText), h("xpl-icon", { key: 'f37a879df93e5078a4b1a4950291a3bf65d81f43', class: "xpl-select__chevron-down", icon: this.selectIcon }))), !this.disabled && (h("xpl-dropdown", { key: '920d7d4e1916613b0056e6da80e055e7cf94fba6', ref: (el) => {
259
+ })(), isTextTruncated && truncatedText), h("xpl-icon", { key: '05f6ba660e21584017715d3afc14d7bd8b8d536a', class: "xpl-select__chevron-down", icon: this.selectIcon }))), !this.disabled && (h("xpl-dropdown", { key: '9a452cf4c62cca5ba4279ddd8da09c9d24797dcf', ref: (el) => {
260
260
  this.dropdown = el;
261
261
  }, isOpen: this.dropdownOpenState, options: this.choicesState, selectedValues: this.selectedValues, mode: this.mode, triggerId: this.id, update: (_e, { component }) => {
262
262
  const { options } = component;
@@ -265,7 +265,7 @@ export class Select {
265
265
  }
266
266
  }, onIsOpenChange: (e) => {
267
267
  this.dropdownOpenState = e.detail;
268
- }, onWheel: this.handleDropdownScroll, anchorToTrigger: true })), this.renderError()), h("input", { key: '0137e17e78152e2ebc600156896df9a4c691f18a', type: "hidden", name: this.name, value: this.value })));
268
+ }, onWheel: this.handleDropdownScroll, anchorToTrigger: true })), this.renderError()), h("input", { key: 'd9d6cbc69fc5fc688b2dda6ea1ef99435d90fc94', type: "hidden", name: this.name, value: this.value })));
269
269
  }
270
270
  static get is() { return "xpl-select"; }
271
271
  static get properties() {
@@ -45,10 +45,10 @@ export class SideNavItem {
45
45
  expanded: this.expanded,
46
46
  selected: this.selected,
47
47
  };
48
- return (h(Host, { key: '10e32dc7b6e7e942ab11153a7311ee2401370a08', class: {
48
+ return (h(Host, { key: '10318a2c26c650f5c5e2143c2fe1bde6a372f933', class: {
49
49
  'xpl-side-nav-item': true,
50
50
  'xpl-side-nav-item--link-disabled': this.link && this.disabled,
51
- } }, this.link ? (h("slot", null)) : (h("button", { type: "button", class: linkClass, "aria-current": this.selected ? 'page' : undefined, "aria-expanded": this.hasChildren ? (this.expanded ? 'true' : 'false') : undefined, onClick: this.handleClick, disabled: this.disabled }, this.hasChildren && (h("span", { class: `xpl-side-nav-item__arrow ${this.expanded ? 'expanded' : ''}` }, h("xpl-icon", { icon: "chevron-down", size: 16 }))), !this.hasChildren && (h("span", { class: "xpl-side-nav-item__icon" }, h("slot", { name: "icon" }, this.icon ? (h("xpl-icon", { icon: this.icon, size: 16 })) : null))), h("span", { class: "xpl-side-nav-item__label" }, (_a = this.label) !== null && _a !== void 0 ? _a : ''))), this.hasChildren && !this.link && (h("div", { key: '32d07c601edd88297854bf88749411276e8cb51b', class: `xpl-side-nav-item__children ${this.expanded ? 'expanded' : ''}`, inert: !this.expanded ? true : undefined }, h("div", { key: 'bbaac77c9c89e7b494cf7693185f0c358f6a7136', class: "xpl-side-nav-item__children-inner" }, h("slot", { key: '811067dca2ee2a73d896d1b45b899b9a8b27e7d6' }))))));
51
+ } }, this.link ? (h("slot", null)) : (h("button", { type: "button", class: linkClass, "aria-current": this.selected ? 'page' : undefined, "aria-expanded": this.hasChildren ? (this.expanded ? 'true' : 'false') : undefined, onClick: this.handleClick, disabled: this.disabled }, this.hasChildren && (h("span", { class: `xpl-side-nav-item__arrow ${this.expanded ? 'expanded' : ''}` }, h("xpl-icon", { icon: "chevron-down", size: 16 }))), !this.hasChildren && (h("span", { class: "xpl-side-nav-item__icon" }, h("slot", { name: "icon" }, this.icon ? (h("xpl-icon", { icon: this.icon, size: 16 })) : null))), h("span", { class: "xpl-side-nav-item__label" }, (_a = this.label) !== null && _a !== void 0 ? _a : ''))), this.hasChildren && !this.link && (h("div", { key: 'ea6e431300ffe641e970c8cc49e7935858986685', class: `xpl-side-nav-item__children ${this.expanded ? 'expanded' : ''}`, inert: !this.expanded ? true : undefined }, h("div", { key: '378a00e24a61911ce69ef6a50e69d47b496b5557', class: "xpl-side-nav-item__children-inner" }, h("slot", { key: 'b3ece8c8ddbf58693a370824c40fe3811828889a' }))))));
52
52
  }
53
53
  static get is() { return "xpl-side-nav-item"; }
54
54
  static get properties() {
@@ -1,9 +1,9 @@
1
1
  import { Host, h } from "@stencil/core";
2
2
  export class SideNav {
3
3
  render() {
4
- return (h(Host, { key: '4c498e4a5ab9c93d2ba984fd973af77c871cb916', class: {
4
+ return (h(Host, { key: 'bfa4c94a1718583020da6a8b1e9104788ce78ef1', class: {
5
5
  'xpl-side-nav': true,
6
- } }, h("div", { key: 'ef7455c11a5dd27c7a8317f4b441fc3d29eea341', class: "xpl-side-nav__wrapper" }, h("nav", { key: '11752dfaacd360fd1c6e20f253967236f1032d68', class: "xpl-side-nav__content", "aria-label": this.label }, h("div", { key: '1a94c00b7cc8297707a11aca19a816769e98dbfc', class: "xpl-side-nav__section" }, h("slot", { key: 'a3aaa6c108806c68bcb8af692ad6fd0edcae7870', name: "section" })), h("div", { key: 'b6454f9ba4f795666b33c7eea70f3514cdf168b3', class: "xpl-side-nav__footer" }, h("slot", { key: 'f00b452ff6c732d95fa58962800d2d1f606c4c17', name: "nav-footer" }))))));
6
+ } }, h("div", { key: '1788f206ed3bea01be9cfa74fbc54a54e664945c', class: "xpl-side-nav__wrapper" }, h("nav", { key: 'ccbcbc45566a77a9134279b486148f3444bdb0ea', class: "xpl-side-nav__content", "aria-label": this.label }, h("div", { key: '6aef4d3f8e0c037aeedfc45d8471978c635b3293', class: "xpl-side-nav__section" }, h("slot", { key: 'e4384164f138cae0135472428079b62924afbcdf', name: "section" })), h("div", { key: '9794ea9a4b566713d0adb0787ae2ab1ae171fa6e', class: "xpl-side-nav__footer" }, h("slot", { key: 'e20ff6d3795784ea11470b7287550c29c0984a65', name: "nav-footer" }))))));
7
7
  }
8
8
  static get is() { return "xpl-side-nav"; }
9
9
  static get properties() {
@@ -5,7 +5,7 @@ export class Skeleton {
5
5
  this.size = 'custom';
6
6
  }
7
7
  render() {
8
- return (h(Host, { key: '86862cc926d5e915e303d274f0e837f364be6c08', class: {
8
+ return (h(Host, { key: '4c0962c3339b49f2f89d07e4827e826089419c70', class: {
9
9
  'xpl-skeleton': true,
10
10
  [`xpl-skeleton--shape-${this.shape}`]: true,
11
11
  [`xpl-skeleton--size-${this.size}`]: true,
@@ -26,7 +26,7 @@ export class Slideout {
26
26
  this.handleScroll();
27
27
  }
28
28
  render() {
29
- return (h(Host, { key: 'b2628014184ba329999545fe940adcb175b89dfd', class: "xpl-slideout" }, this.backdrop && this.isOpen && (h("xpl-backdrop", { key: '3f243b5af61aee13d375874ddb6a974608405e05', onClick: this.handleClose })), h("aside", { key: '781804a784efad6f6e9d9d0ee09dd46b99800707', class: `slideout slideout--${!this.isOpen && 'closed'}` }, h("header", { key: '35bf26acb7f45fc60d9447093d00c263c5c6a074', class: "header" }, h("div", { key: '939262fd0caf93059c022bc827cf1ebf31cf0505', class: "title" }, h("slot", { key: 'd0434f317394c1e6aca52de73cb1645605b70a2c', name: "title" }), h("xpl-button", { key: '091d2454db101c318a6c5b42a5650d698e318a46', class: "close-button", "icon-only": true, size: "sm", variant: "tertiary", onClick: this.handleClose }, h("xpl-icon", { key: '161a7bd05ce6864cd3b72a9a523c0f6e39d95cfb', icon: "x" }))), h("div", { key: '554153d17ba38df8b86534f4b59cb74c31553c0e', class: "subtitle" }, h("slot", { key: '649d87c4dea7e87c8c860d81b337c5c284d4aab1', name: "subtitle" })), h("div", { key: '2fe24ec6b15e48da8b61f0601342e52f83dd52d7', class: "search" }, h("slot", { key: '2ca9723ce317d1981485dcc923fff44c885eb814', name: "search" }))), h("xpl-divider", { key: 'c11b01177de43cafc6cf6f59c8807027dd202cfb', tier: 0, class: "divider top" }), h("article", { key: '12030211ebdfcc232e02e383d6ce9d64349882bc', class: "content", tabIndex: 0 }, h("slot", { key: 'b6af6c47722c8a1820ff94c052788b95736622b7', name: "content" })), this.showFooter && (h("footer", { key: '151c779df75a16947353701df695967686e9e07b' }, h("xpl-divider", { key: '773e0ce1051ac5a2f67864c5b4a6bd8120b3c270', tier: 0, class: "divider bottom" }), h("div", { key: 'e2ed12c38474a0102fdc24063bae95e4e36c43f7', class: "footer" }, h("slot", { key: '06f346214acfd3351adb9fca113466b1f95e5b9c', name: "tertiary" }), h("slot", { key: '1afb8a2250cd62a752a9bd60decade017a7ae58e', name: "secondary" }), h("slot", { key: '18f8b40b550b38eb44c765dd3cdbca44000032b8', name: "primary" })))))));
29
+ return (h(Host, { key: '01e702ef959cc596ae8fb140275d733c93c3b399', class: "xpl-slideout" }, this.backdrop && this.isOpen && (h("xpl-backdrop", { key: '4e82ee44b68eae102a4c4ef65e797ce23659d330', onClick: this.handleClose })), h("aside", { key: '1c718a30611bb6699f231a9e736c0521c248d65a', class: `slideout slideout--${!this.isOpen && 'closed'}` }, h("header", { key: 'c53419926fbe8ccc6616af39d021248b46f138a3', class: "header" }, h("div", { key: '36e02fe5b7ff8d6920759ab793ead2be0f0811ac', class: "title" }, h("slot", { key: '7932fd5e77edb89570ebd3fedc0346929582ec7b', name: "title" }), h("xpl-button", { key: '9772e880c9b132ba84ccf45c4793e0af70548866', class: "close-button", "icon-only": true, size: "sm", variant: "tertiary", onClick: this.handleClose }, h("xpl-icon", { key: '91922e8aa02c30aa73ae1ea3d2b47daffd954616', icon: "x" }))), h("div", { key: '2f7065ba1da7f0ad805e16b69f4a316d5a1f9285', class: "subtitle" }, h("slot", { key: '8edb8bdbdecd01abd2b7899d5c9897c91e625326', name: "subtitle" })), h("div", { key: '5945128002bb2103daac40d1f7457ebb97521002', class: "search" }, h("slot", { key: 'c4df975581beb16547a439a86f2a532c10fa4fa7', name: "search" }))), h("xpl-divider", { key: '3be4c74de14ca2380179798fe4ec0c9a758739af', tier: 0, class: "divider top" }), h("article", { key: '2012ae1197acc41f530af8920b19752a248e2b40', class: "content", tabIndex: 0 }, h("slot", { key: 'e8a1cedda6cd48bb62dc42f00c9bdc8510d4f603', name: "content" })), this.showFooter && (h("footer", { key: 'cfa5a41846485b879126a90f3a7346d6eb680776' }, h("xpl-divider", { key: 'bf05c9d85471b55dee25da790afb3cb642f1a86b', tier: 0, class: "divider bottom" }), h("div", { key: 'd109314ca745947f3337b06df73183ff277c89bb', class: "footer" }, h("slot", { key: 'cad183e788d3555a5366b19b4e01c3c90f7d9ae0', name: "tertiary" }), h("slot", { key: 'c12294440fe8544e51197dfddbc01aaea506575a', name: "secondary" }), h("slot", { key: '7accdf8dc3cc9b6a416cf784ec081d70c1d0f1e9', name: "primary" })))))));
30
30
  }
31
31
  static get is() { return "xpl-slideout"; }
32
32
  static get properties() {