@xplortech/apollo-core 2.9.0 → 2.10.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 (307) hide show
  1. package/.typings/apollo-components.html-data.json +20 -12
  2. package/build/style.css +2086 -1875
  3. package/dist/apollo-core/apollo-core.css +20 -18
  4. package/dist/apollo-core/apollo-core.esm.js +1 -1
  5. package/dist/apollo-core/p-0e45f332.entry.js +1 -0
  6. package/dist/apollo-core/p-0f251f98.entry.js +1 -0
  7. package/dist/apollo-core/p-1691c4f3.entry.js +1 -0
  8. package/dist/apollo-core/p-172ac720.entry.js +1 -0
  9. package/dist/apollo-core/p-23870463.entry.js +1 -0
  10. package/dist/apollo-core/{p-36ba29da.entry.js → p-3b8639b7.entry.js} +1 -1
  11. package/dist/apollo-core/p-44a16751.entry.js +1 -0
  12. package/dist/apollo-core/p-4efecab2.entry.js +1 -0
  13. package/dist/apollo-core/p-5094dd97.entry.js +1 -0
  14. package/dist/apollo-core/p-70e7facc.entry.js +1 -0
  15. package/dist/apollo-core/{p-6a15f1e0.entry.js → p-728341d2.entry.js} +1 -1
  16. package/dist/apollo-core/p-910be81f.entry.js +1 -0
  17. package/dist/apollo-core/{p-b61d7952.entry.js → p-9adf3694.entry.js} +1 -1
  18. package/dist/apollo-core/p-CK3_k8jD.js +1 -0
  19. package/dist/apollo-core/p-CXkZUm1c.js +2 -0
  20. package/dist/apollo-core/p-c17b6351.entry.js +1 -0
  21. package/dist/apollo-core/p-e08b434c.entry.js +1 -0
  22. package/dist/apollo-core/{p-ca127ee8.entry.js → p-e9e7577f.entry.js} +1 -1
  23. package/dist/cjs/apollo-core.cjs.js +3 -3
  24. package/dist/cjs/{index-BQ97-AWw.js → index-BaXVr8ux.js} +36 -9
  25. package/dist/cjs/loader.cjs.js +2 -2
  26. package/dist/cjs/package.json +3 -0
  27. package/dist/cjs/v4-_2BfiRUa.js +52 -0
  28. package/dist/cjs/xpl-accordion.cjs.entry.js +3 -3
  29. package/dist/cjs/xpl-application-shell.cjs.entry.js +2 -2
  30. package/dist/cjs/xpl-avatar_54.cjs.entry.js +700 -176
  31. package/dist/cjs/xpl-button-row.cjs.entry.js +2 -2
  32. package/dist/cjs/xpl-calendar.cjs.entry.js +3 -3
  33. package/dist/cjs/xpl-dynamic-table-cell.cjs.entry.js +3 -3
  34. package/dist/cjs/xpl-dynamic-table-row.cjs.entry.js +3 -3
  35. package/dist/cjs/xpl-dynamic-table.cjs.entry.js +2 -2
  36. package/dist/cjs/xpl-grid-item.cjs.entry.js +2 -2
  37. package/dist/cjs/xpl-grid.cjs.entry.js +2 -2
  38. package/dist/cjs/xpl-large-card.cjs.entry.js +2 -2
  39. package/dist/cjs/xpl-main-nav.cjs.entry.js +2 -2
  40. package/dist/cjs/xpl-table-header-cell.cjs.entry.js +1 -1
  41. package/dist/cjs/xpl-table-header.cjs.entry.js +2 -2
  42. package/dist/cjs/xpl-toggle.cjs.entry.js +5 -5
  43. package/dist/cjs/xpl-toolbar.cjs.entry.js +3 -3
  44. package/dist/collection/collection-manifest.json +6 -6
  45. package/dist/collection/components/xpl-accordion/xpl-accordion.js +2 -2
  46. package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +1 -1
  47. package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +1 -1
  48. package/dist/collection/components/xpl-badge/xpl-badge.js +1 -1
  49. package/dist/collection/components/xpl-banner/banner.stories.js +5 -0
  50. package/dist/collection/components/xpl-banner/xpl-banner.js +2 -2
  51. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumb-item/xpl-breadcrumb-item.js +1 -1
  52. package/dist/collection/components/xpl-breadcrumbs/xpl-breadcrumbs/xpl-breadcrumbs.js +1 -1
  53. package/dist/collection/components/xpl-button/button.stories.js +5 -0
  54. package/dist/collection/components/xpl-button/xpl-button.js +1 -1
  55. package/dist/collection/components/xpl-button-row/button-row.stories.js +1 -11
  56. package/dist/collection/components/xpl-button-row/xpl-button-row.js +1 -1
  57. package/dist/collection/components/xpl-calendar/xpl-calendar.js +1 -1
  58. package/dist/collection/components/xpl-checkbox/xpl-checkbox.js +4 -4
  59. package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +1 -1
  60. package/dist/collection/components/xpl-content-area/xpl-content-area.js +1 -1
  61. package/dist/collection/components/xpl-dashboard/xpl-dashboard.js +1 -1
  62. package/dist/collection/components/xpl-data-card/xpl-data-card.js +2 -2
  63. package/dist/collection/components/xpl-divider/xpl-divider.js +1 -1
  64. package/dist/collection/components/xpl-dropdown/xpl-dropdown-group/xpl-dropdown-group.js +1 -1
  65. package/dist/collection/components/xpl-dropdown/xpl-dropdown-heading/xpl-dropdown-heading.js +1 -1
  66. package/dist/collection/components/xpl-dropdown/xpl-dropdown-option/xpl-dropdown-option.js +2 -2
  67. package/dist/collection/components/xpl-dropdown/xpl-dropdown.js +208 -31
  68. package/dist/collection/components/xpl-dynamic-table/xpl-dynamic-table.js +1 -1
  69. package/dist/collection/components/xpl-dynamic-table-cell/xpl-dynamic-table-cell.js +2 -2
  70. package/dist/collection/components/xpl-dynamic-table-row/xpl-dynamic-table-row.js +2 -2
  71. package/dist/collection/components/xpl-grid/xpl-grid.js +1 -1
  72. package/dist/collection/components/xpl-grid-item/xpl-grid-item.js +1 -1
  73. package/dist/collection/components/xpl-header-accordion/xpl-header-accordion.js +1 -1
  74. package/dist/collection/components/xpl-icon/xpl-icon.js +2 -2
  75. package/dist/collection/components/xpl-input/input.stories.js +1 -1
  76. package/dist/collection/components/xpl-input/xpl-input-color/xpl-input-color.js +8 -8
  77. package/dist/collection/components/xpl-input/xpl-input-date/xpl-input-date.js +3 -3
  78. package/dist/collection/components/xpl-input/xpl-input-file/xpl-input-file.js +4 -4
  79. package/dist/collection/components/xpl-input/xpl-input-phone/xpl-input-phone.js +25 -6
  80. package/dist/collection/components/xpl-input/xpl-input-search/xpl-input-search.js +1 -1
  81. package/dist/collection/components/xpl-input/xpl-input-time/xpl-input-time.js +2 -2
  82. package/dist/collection/components/xpl-input/xpl-input.js +3 -3
  83. package/dist/collection/components/xpl-large-card/xpl-large-card.js +1 -1
  84. package/dist/collection/components/xpl-list/xpl-list.js +2 -2
  85. package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +1 -1
  86. package/dist/collection/components/xpl-modal/xpl-modal.js +4 -1
  87. package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +2 -2
  88. package/dist/collection/components/xpl-pagination/xpl-pagination.js +26 -8
  89. package/dist/collection/components/xpl-panel/xpl-panel.js +2 -2
  90. package/dist/collection/components/xpl-popover/popover.stories.js +3 -7
  91. package/dist/collection/components/xpl-popover/xpl-popover.js +4 -4
  92. package/dist/collection/components/xpl-progress-bar/xpl-progress-bar.js +2 -2
  93. package/dist/collection/components/xpl-progress-indicator/xpl-progress-indicator.js +1 -1
  94. package/dist/collection/components/xpl-radio/radio.stories.js +19 -17
  95. package/dist/collection/components/xpl-radio/xpl-radio.js +3 -3
  96. package/dist/collection/components/xpl-secondary-nav/xpl-secondary-nav.js +1 -1
  97. package/dist/collection/components/xpl-select/xpl-select.js +16 -11
  98. package/dist/collection/components/xpl-side-nav/side-nav-constants.js +2 -0
  99. package/dist/collection/components/xpl-side-nav/side-nav.stories.js +301 -186
  100. package/dist/collection/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.js +80 -14
  101. package/dist/collection/components/xpl-side-nav/xpl-side-nav.js +284 -3
  102. package/dist/collection/components/xpl-skeleton/xpl-skeleton.js +1 -1
  103. package/dist/collection/components/xpl-slideout/xpl-slideout.js +1 -1
  104. package/dist/collection/components/xpl-spotlight/xpl-spotlight.js +14 -4
  105. package/dist/collection/components/xpl-tab-panel/xpl-tab-panel.js +2 -2
  106. package/dist/collection/components/xpl-table/xpl-table.js +13 -22
  107. package/dist/collection/components/xpl-table-header/xpl-table-header.js +1 -1
  108. package/dist/collection/components/xpl-tabs/xpl-tabs.js +5 -5
  109. package/dist/collection/components/xpl-tag/xpl-tag.js +2 -2
  110. package/dist/collection/components/xpl-toast/xpl-toast.js +2 -2
  111. package/dist/collection/components/xpl-toggle/xpl-toggle.js +3 -3
  112. package/dist/collection/components/xpl-toolbar/xpl-toolbar.js +2 -2
  113. package/dist/collection/components/xpl-tooltip/tooltip-arrow.js +1 -1
  114. package/dist/collection/components/xpl-tooltip/tooltip.stories.js +6 -37
  115. package/dist/collection/components/xpl-tooltip/xpl-tooltip.js +1 -1
  116. package/dist/collection/components/xpl-top-nav/xpl-nav-header-menu/xpl-nav-header-menu.js +2 -2
  117. package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.js +2 -2
  118. package/dist/collection/components/xpl-top-nav/xpl-top-nav.js +5 -5
  119. package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +1 -1
  120. package/dist/components/index.d.ts +141 -12
  121. package/dist/components/index.js +1 -1
  122. package/dist/components/p-3qMYyqTe.js +1 -0
  123. package/dist/components/p-B1PBAEzg.js +1 -0
  124. package/dist/components/p-BG0-6Xek.js +1 -0
  125. package/dist/components/p-BT_Lq3Vd.js +1 -0
  126. package/dist/components/p-BWyAzrwu.js +1 -0
  127. package/dist/components/p-B_Wi--Ov.js +1 -0
  128. package/dist/components/p-Bd6JweBt.js +1 -0
  129. package/dist/components/p-Bn-27-xj.js +1 -0
  130. package/dist/components/{xpl-top-nav-item2.js → p-Bs6vq0C6.js} +1 -1
  131. package/dist/components/{xpl-input-file2.js → p-C9BO2vL-.js} +1 -1
  132. package/dist/components/p-CFW_w5Wj.js +1 -0
  133. package/dist/components/{floating-ui.dom.js → p-CFpsSZyr.js} +1 -1
  134. package/dist/components/p-CGNq3DyC.js +1 -0
  135. package/dist/components/p-CK3_k8jD.js +1 -0
  136. package/dist/components/p-CVqbA9op.js +1 -0
  137. package/dist/components/p-CtIUusUL.js +1 -0
  138. package/dist/components/p-CzwViN3U.js +1 -0
  139. package/dist/components/p-D97c0GjM.js +1 -0
  140. package/dist/components/p-DBWV65V-.js +1 -0
  141. package/dist/components/{xpl-tag2.js → p-DEl4Rvzs.js} +1 -1
  142. package/dist/components/p-DPTHmitJ.js +1 -0
  143. package/dist/components/{xpl-input-search2.js → p-DllC7F-H.js} +1 -1
  144. package/dist/components/p-Ds28UyUR.js +1 -0
  145. package/dist/components/p-U5dPMCXE.js +1 -0
  146. package/dist/components/p-hPUzON4O.js +1 -0
  147. package/dist/components/p-kPHfCq1d.js +1 -0
  148. package/dist/components/xpl-accordion.js +1 -1
  149. package/dist/components/xpl-application-shell.js +1 -1
  150. package/dist/components/xpl-avatar.js +1 -1
  151. package/dist/components/xpl-backdrop.js +1 -1
  152. package/dist/components/xpl-badge.js +1 -1
  153. package/dist/components/xpl-banner.js +1 -1
  154. package/dist/components/xpl-breadcrumb-item.js +1 -1
  155. package/dist/components/xpl-breadcrumbs.js +1 -1
  156. package/dist/components/xpl-button-row.js +1 -1
  157. package/dist/components/xpl-button.js +1 -1
  158. package/dist/components/xpl-calendar.js +1 -1
  159. package/dist/components/xpl-checkbox.js +1 -1
  160. package/dist/components/xpl-choicelist.js +1 -1
  161. package/dist/components/xpl-content-area.js +1 -1
  162. package/dist/components/xpl-dashboard.js +1 -1
  163. package/dist/components/xpl-data-card.js +1 -1
  164. package/dist/components/xpl-divider.js +1 -1
  165. package/dist/components/xpl-dropdown-group.js +1 -1
  166. package/dist/components/xpl-dropdown-heading.js +1 -1
  167. package/dist/components/xpl-dropdown-option.js +1 -1
  168. package/dist/components/xpl-dropdown.js +1 -1
  169. package/dist/components/xpl-dynamic-table-cell.js +1 -1
  170. package/dist/components/xpl-dynamic-table-row.js +1 -1
  171. package/dist/components/xpl-dynamic-table.js +1 -1
  172. package/dist/components/xpl-grid-item.js +1 -1
  173. package/dist/components/xpl-grid.js +1 -1
  174. package/dist/components/xpl-header-accordion.js +1 -1
  175. package/dist/components/xpl-icon.js +1 -1
  176. package/dist/components/xpl-input-color.js +1 -1
  177. package/dist/components/xpl-input-date.js +1 -1
  178. package/dist/components/xpl-input-file.js +1 -1
  179. package/dist/components/xpl-input-phone.js +1 -1
  180. package/dist/components/xpl-input-search.js +1 -1
  181. package/dist/components/xpl-input-time.js +1 -1
  182. package/dist/components/xpl-input.js +1 -1
  183. package/dist/components/xpl-large-card.js +1 -1
  184. package/dist/components/xpl-list-item.js +1 -1
  185. package/dist/components/xpl-list.js +1 -1
  186. package/dist/components/xpl-main-nav.js +1 -1
  187. package/dist/components/xpl-modal.js +1 -1
  188. package/dist/components/xpl-nav-header-menu.js +1 -1
  189. package/dist/components/xpl-nav-item.js +1 -1
  190. package/dist/components/xpl-pagination.js +1 -1
  191. package/dist/components/xpl-panel.js +1 -1
  192. package/dist/components/xpl-popover.js +1 -1
  193. package/dist/components/xpl-progress-bar.js +1 -1
  194. package/dist/components/xpl-progress-indicator.js +1 -1
  195. package/dist/components/xpl-radio.js +1 -1
  196. package/dist/components/xpl-secondary-nav.js +1 -1
  197. package/dist/components/xpl-select.js +1 -1
  198. package/dist/components/xpl-side-nav-item.js +1 -1
  199. package/dist/components/xpl-side-nav.js +1 -1
  200. package/dist/components/xpl-skeleton.js +1 -1
  201. package/dist/components/xpl-slideout.js +1 -1
  202. package/dist/components/xpl-spotlight.js +1 -1
  203. package/dist/components/xpl-tab-panel.js +1 -1
  204. package/dist/components/xpl-tab.js +1 -1
  205. package/dist/components/xpl-table-header-cell.js +1 -1
  206. package/dist/components/xpl-table-header.js +1 -1
  207. package/dist/components/xpl-table.js +1 -1
  208. package/dist/components/xpl-tabs.js +1 -1
  209. package/dist/components/xpl-tag.js +1 -1
  210. package/dist/components/xpl-toast.js +1 -1
  211. package/dist/components/xpl-toggle.js +1 -1
  212. package/dist/components/xpl-toolbar.js +1 -1
  213. package/dist/components/xpl-tooltip.js +1 -1
  214. package/dist/components/xpl-top-nav-item.js +1 -1
  215. package/dist/components/xpl-top-nav.js +1 -1
  216. package/dist/components/xpl-utility-bar.js +1 -1
  217. package/dist/docs/xpl-backdrop/readme.md +2 -0
  218. package/dist/docs/xpl-badge/readme.md +34 -0
  219. package/dist/docs/xpl-button/readme.md +2 -0
  220. package/dist/docs/xpl-button-row/readme.md +13 -0
  221. package/dist/docs/xpl-checkbox/readme.md +23 -1
  222. package/dist/docs/xpl-divider/readme.md +22 -4
  223. package/dist/docs/xpl-input/readme.md +51 -0
  224. package/dist/docs/xpl-input/xpl-input-date/readme.md +7 -0
  225. package/dist/docs/xpl-input/xpl-input-phone/readme.md +21 -0
  226. package/dist/docs/xpl-popover/readme.md +24 -0
  227. package/dist/docs/xpl-radio/readme.md +21 -4
  228. package/dist/docs/xpl-side-nav/readme.md +153 -5
  229. package/dist/docs/xpl-side-nav/xpl-side-nav-item/readme.md +165 -32
  230. package/dist/docs/xpl-table/readme.md +2 -0
  231. package/dist/docs/xpl-tooltip/readme.md +29 -1
  232. package/dist/esm/apollo-core.js +4 -4
  233. package/dist/esm/{index-C7bgJs6C.js → index-CXkZUm1c.js} +36 -9
  234. package/dist/esm/loader.js +3 -3
  235. package/dist/esm/v4-CK3_k8jD.js +50 -0
  236. package/dist/esm/xpl-accordion.entry.js +3 -3
  237. package/dist/esm/xpl-application-shell.entry.js +2 -2
  238. package/dist/esm/xpl-avatar_54.entry.js +700 -176
  239. package/dist/esm/xpl-button-row.entry.js +2 -2
  240. package/dist/esm/xpl-calendar.entry.js +3 -3
  241. package/dist/esm/xpl-dynamic-table-cell.entry.js +3 -3
  242. package/dist/esm/xpl-dynamic-table-row.entry.js +3 -3
  243. package/dist/esm/xpl-dynamic-table.entry.js +2 -2
  244. package/dist/esm/xpl-grid-item.entry.js +2 -2
  245. package/dist/esm/xpl-grid.entry.js +2 -2
  246. package/dist/esm/xpl-large-card.entry.js +2 -2
  247. package/dist/esm/xpl-main-nav.entry.js +2 -2
  248. package/dist/esm/xpl-table-header-cell.entry.js +1 -1
  249. package/dist/esm/xpl-table-header.entry.js +2 -2
  250. package/dist/esm/xpl-toggle.entry.js +5 -5
  251. package/dist/esm/xpl-toolbar.entry.js +3 -3
  252. package/dist/types/components/xpl-banner/banner.stories.d.ts +2 -0
  253. package/dist/types/components/xpl-button/button.stories.d.ts +2 -0
  254. package/dist/types/components/xpl-dropdown/xpl-dropdown.d.ts +16 -0
  255. package/dist/types/components/xpl-input/xpl-input-phone/xpl-input-phone.d.ts +1 -0
  256. package/dist/types/components/xpl-pagination/xpl-pagination.d.ts +4 -0
  257. package/dist/types/components/xpl-radio/radio.stories.d.ts +11 -10
  258. package/dist/types/components/xpl-side-nav/side-nav-constants.d.ts +2 -0
  259. package/dist/types/components/xpl-side-nav/side-nav.stories.d.ts +53 -32
  260. package/dist/types/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.d.ts +10 -0
  261. package/dist/types/components/xpl-side-nav/xpl-side-nav.d.ts +31 -0
  262. package/dist/types/components/xpl-spotlight/xpl-spotlight.d.ts +1 -0
  263. package/dist/types/components.d.ts +223 -20
  264. package/dist/types/stencil-public-runtime.d.ts +1 -0
  265. package/package.json +33 -24
  266. package/dist/apollo-core/p-0bf50890.entry.js +0 -1
  267. package/dist/apollo-core/p-1947e7a8.entry.js +0 -1
  268. package/dist/apollo-core/p-27928cb0.entry.js +0 -1
  269. package/dist/apollo-core/p-34438721.entry.js +0 -1
  270. package/dist/apollo-core/p-35c2f72d.entry.js +0 -1
  271. package/dist/apollo-core/p-368c81f1.entry.js +0 -1
  272. package/dist/apollo-core/p-3bb14840.entry.js +0 -1
  273. package/dist/apollo-core/p-406b27a8.entry.js +0 -1
  274. package/dist/apollo-core/p-5d63b4ce.entry.js +0 -1
  275. package/dist/apollo-core/p-8d692d05.entry.js +0 -1
  276. package/dist/apollo-core/p-C7bgJs6C.js +0 -2
  277. package/dist/apollo-core/p-Cqlsd6nf.js +0 -1
  278. package/dist/apollo-core/p-cd56a3d5.entry.js +0 -1
  279. package/dist/apollo-core/p-dc205893.entry.js +0 -1
  280. package/dist/cjs/v4-D4KzFnn8.js +0 -67
  281. package/dist/components/index3.js +0 -1
  282. package/dist/components/v4.js +0 -1
  283. package/dist/components/xpl-avatar2.js +0 -1
  284. package/dist/components/xpl-backdrop2.js +0 -1
  285. package/dist/components/xpl-badge2.js +0 -1
  286. package/dist/components/xpl-button2.js +0 -1
  287. package/dist/components/xpl-checkbox2.js +0 -1
  288. package/dist/components/xpl-divider2.js +0 -1
  289. package/dist/components/xpl-dropdown-group2.js +0 -1
  290. package/dist/components/xpl-dropdown-heading2.js +0 -1
  291. package/dist/components/xpl-dropdown-option2.js +0 -1
  292. package/dist/components/xpl-dropdown2.js +0 -1
  293. package/dist/components/xpl-icon2.js +0 -1
  294. package/dist/components/xpl-input-date2.js +0 -1
  295. package/dist/components/xpl-input2.js +0 -1
  296. package/dist/components/xpl-list-item2.js +0 -1
  297. package/dist/components/xpl-popover2.js +0 -1
  298. package/dist/components/xpl-radio2.js +0 -1
  299. package/dist/components/xpl-select2.js +0 -1
  300. package/dist/components/xpl-tooltip2.js +0 -1
  301. package/dist/esm/v4-Cqlsd6nf.js +0 -65
  302. /package/dist/components/{_commonjsHelpers.js → p-BFTU3MAI.js} +0 -0
  303. /package/dist/components/{index2.js → p-CH4yJ6Qx.js} +0 -0
  304. /package/dist/components/{tab-a11y-ids.js → p-Yj_QFaRn.js} +0 -0
  305. /package/dist/{index.cjs.js → index.cjs} +0 -0
  306. /package/loader/{cdn.js → cdn.cjs} +0 -0
  307. /package/loader/{index.cjs.js → index.cjs} +0 -0
@@ -3,7 +3,7 @@ export class Divider {
3
3
  render() {
4
4
  let className = 'xpl-divider';
5
5
  className += ` xpl-divider--${this.tier}`;
6
- return (h(Host, { key: '213dc1893d64e06256ef2958b59b8377428d81d4', class: className }, h("span", { key: '2e03654076b9b76f2ce9e8475bb44068170c8a80' }, h("slot", { key: '5af40b6963beddbd0d1fe5fd05a9e62274ce3418' }))));
6
+ return (h(Host, { key: '8b6563d7c6c85814d5dc0527246c90eea82c0dbd', class: className }, h("span", { key: '2935de22e9c70183386b5f6e1e18ff6437a42a41' }, h("slot", { key: '10e4e4c5c861647302217f78af0a369ad330c410' }))));
7
7
  }
8
8
  static get is() { return "xpl-divider"; }
9
9
  static get properties() {
@@ -20,7 +20,7 @@ export class DropdownGroup {
20
20
  var { groupName: optsGroupName } = _a, properties = __rest(_a, ["groupName"]);
21
21
  return optsGroupName ? (h("xpl-dropdown-group", Object.assign({ label: optsGroupName }, properties))) : (h("xpl-dropdown-option", Object.assign({}, properties)));
22
22
  });
23
- return (h(Host, { key: 'b872cfc0a8eb2e3542f07f6ae17ebc15b6f965ab', role: "group", "aria-label": groupName }, h("li", { key: '8e475e45b5040bd78c7d37f8c58b0689a508f067', class: "xpl-dropdown-list-item" }, h("xpl-dropdown-heading", { key: '3b7b984646bdcc502aca2260a0b59494e0884f6c', label: groupName }), h("ul", { key: 'c75e710ebe06a23aacca57f34ce286516c98a8c5', class: "xpl-dropdown-list" }, mappedOptions || h("slot", { key: '6b72762b22f316561f7614e4841018c019a60681', name: "options" })))));
23
+ return (h(Host, { key: 'a33169d78e635bb53987322f02869ffc1f1a9908', role: "group", "aria-label": groupName }, h("li", { key: '58a1ff78bb923fec60eb51ef05a2026e03e3058b', class: "xpl-dropdown-list-item" }, h("xpl-dropdown-heading", { key: '6d8556e1d96cbfccd61038e5089e9669917b919e', label: groupName }), h("ul", { key: 'dd485e18b79920d9992e506fe83b36fcadb9e020', class: "xpl-dropdown-list" }, mappedOptions || h("slot", { key: '2eca2f6aa7c44aacdb67c3658029822b4ba1c0aa', name: "options" })))));
24
24
  }
25
25
  static get is() { return "xpl-dropdown-group"; }
26
26
  static get properties() {
@@ -1,7 +1,7 @@
1
1
  import { Host, h } from "@stencil/core";
2
2
  export class DropdownHeading {
3
3
  render() {
4
- return (h(Host, { key: '70e5556188bd87fe5842256e4e145c3585f73409', class: { 'xpl-dropdown-heading': true }, role: "presentation" }, h("span", { key: '2d45f0191d9b158641da794ee1b9f246f9659717' }, this.label || h("slot", { key: '21cc81673e6a37f4b7ff896d12bd94916c3a92e7', name: "heading" }))));
4
+ return (h(Host, { key: '9b05e54ae226524434ac8485c51e7fccd4e5fe9e', class: { 'xpl-dropdown-heading': true }, role: "presentation" }, h("span", { key: 'c5ada81fbed76834515cff75f1fd1ce87b2ccbe3' }, this.label || h("slot", { key: 'dfe135bf2499e858e75ab1e87793ae75eb0982c6', name: "heading" }))));
5
5
  }
6
6
  static get is() { return "xpl-dropdown-heading"; }
7
7
  static get properties() {
@@ -49,11 +49,11 @@ export class DropdownOptionCpnt {
49
49
  }
50
50
  render() {
51
51
  const { label, isSelected, isDisabled, value, subtitle, icon } = this;
52
- return (h(Host, { key: '838f64dba15bc8d6c2f65a8685365c5618c24d5f', class: {
52
+ return (h(Host, { key: '4ff7cc350e34059ad4df757b88112756c7f5b83e', class: {
53
53
  'xpl-dropdown-option': true,
54
54
  'xpl-dropdown-option--disabled': isDisabled,
55
55
  'xpl-dropdown-option--selected': isSelected,
56
- }, role: "option", "aria-checked": isSelected, "aria-disabled": isDisabled, "aria-selected": isSelected, value: value }, h("li", { key: 'bc4b23054cd73a95ff5cf167c4195563a9e318ec', class: "xpl-dropdown-list-item" }, icon && (h("xpl-icon", { key: '797d92d1d80cb8c33500d8dfe8b1bf9396c767ca', class: "xpl-dropdown-list-item__icon", icon: icon, size: 20 })), label || h("slot", { key: '7a590a3abae38e7934f703929895be152b01816d', name: "option" }), subtitle && h("span", { key: '465fb73335df17864cd21e067f26cdba85d8135c', class: "xpl-dropdown-list-item__subtitle" }, subtitle))));
56
+ }, role: "option", "aria-checked": isSelected, "aria-disabled": isDisabled, "aria-selected": isSelected, value: value }, h("li", { key: 'a014d09116703f5477a48cace194ba1beef602d5', class: "xpl-dropdown-list-item" }, icon && (h("xpl-icon", { key: 'af16591b7f1195351facaafa67c07368ce42d072', class: "xpl-dropdown-list-item__icon", icon: icon, size: 20 })), label || h("slot", { key: '72c0dbd67ab7930924cb1ef3ee9f0b4b53cf28a6', name: "option" }), subtitle && h("span", { key: '0893e031740ebdd8fc8ca7de2cb10d0b4d7c95ae', class: "xpl-dropdown-list-item__subtitle" }, subtitle))));
57
57
  }
58
58
  static get is() { return "xpl-dropdown-option"; }
59
59
  static get properties() {
@@ -12,8 +12,25 @@ var __rest = (this && this.__rest) || function (s, e) {
12
12
  };
13
13
  import { h, Host, } from "@stencil/core";
14
14
  import { autoUpdate, computePosition, flip, hide, offset, size, } from "@floating-ui/dom";
15
+ const VIRTUAL_LIST = {
16
+ rowHeight: 45,
17
+ overscan: 20,
18
+ virtualizeFrom: 200,
19
+ };
20
+ function renderOption(option, virtualIndex) {
21
+ const { groupName, options: opts, subtitle } = option, properties = __rest(option, ["groupName", "options", "subtitle"]);
22
+ if (groupName) {
23
+ return (h("xpl-dropdown-group", Object.assign({ groupName: groupName, options: opts }, properties)));
24
+ }
25
+ const isVirtual = virtualIndex !== undefined;
26
+ return (h("xpl-dropdown-option", Object.assign({ class: isVirtual ? 'xpl-dropdown-option--virtual' : undefined, style: isVirtual
27
+ ? { transform: `translateY(${virtualIndex * VIRTUAL_LIST.rowHeight}px)` }
28
+ : undefined, subtitle: subtitle }, properties)));
29
+ }
15
30
  export class Dropdown {
16
31
  constructor() {
32
+ this.virtualEnd = 0;
33
+ this.virtualStart = 0;
17
34
  this.isOpen = false;
18
35
  this.closeOnSelect = true;
19
36
  this.mode = 'single';
@@ -21,6 +38,9 @@ export class Dropdown {
21
38
  this.placement = 'bottom-start';
22
39
  this.selectOnFocus = false;
23
40
  this.cleanupAutoUpdate = null;
41
+ this.virtualScrollRaf = null;
42
+ this.openAlignmentRaf = null;
43
+ this.previousOptionCount = 0;
24
44
  this.updateDropdownPosition = async (triggerEl) => {
25
45
  var _a, _b;
26
46
  const { x, y, placement, middlewareData } = await computePosition(triggerEl, this.hostElement, {
@@ -92,6 +112,64 @@ export class Dropdown {
92
112
  this.isOpen = false;
93
113
  }
94
114
  };
115
+ this.handleVirtualScroll = () => {
116
+ if (this.virtualScrollRaf !== null)
117
+ return;
118
+ this.virtualScrollRaf = requestAnimationFrame(() => {
119
+ this.virtualScrollRaf = null;
120
+ this.updateVirtualRange();
121
+ });
122
+ };
123
+ this.setListEl = (el) => {
124
+ var _a, _b;
125
+ if (el === this.listEl)
126
+ return;
127
+ this.listEl = el;
128
+ (_a = this.listResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
129
+ if (el && typeof ResizeObserver !== 'undefined') {
130
+ (_b = this.listResizeObserver) !== null && _b !== void 0 ? _b : (this.listResizeObserver = new ResizeObserver(() => {
131
+ if (this.isVirtualized)
132
+ this.handleVirtualScroll();
133
+ }));
134
+ this.listResizeObserver.observe(el);
135
+ }
136
+ };
137
+ this.scheduleOpenAlignment = () => {
138
+ if (this.openAlignmentRaf !== null)
139
+ return;
140
+ this.openAlignmentRaf = requestAnimationFrame(() => {
141
+ this.openAlignmentRaf = null;
142
+ this.scrollSelectedIntoView();
143
+ this.updateVirtualRange();
144
+ });
145
+ };
146
+ }
147
+ onOptionsChanged() {
148
+ var _a, _b, _c, _d;
149
+ const total = (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
150
+ const listReplaced = total !== this.previousOptionCount;
151
+ this.previousOptionCount = total;
152
+ if (!this.isVirtualized) {
153
+ this.virtualStart = 0;
154
+ this.virtualEnd = 0;
155
+ return;
156
+ }
157
+ const list = this.listEl;
158
+ if (list) {
159
+ const maxScroll = Math.max(0, total * VIRTUAL_LIST.rowHeight - list.clientHeight);
160
+ if (list.scrollTop > maxScroll) {
161
+ list.scrollTop = maxScroll;
162
+ }
163
+ if (this.isOpen && listReplaced) {
164
+ const selectedIndex = (_d = (_c = this.options) === null || _c === void 0 ? void 0 : _c.findIndex((option) => option.isSelected)) !== null && _d !== void 0 ? _d : -1;
165
+ const outOfWindow = selectedIndex >= 0 &&
166
+ (selectedIndex < this.virtualStart || selectedIndex >= this.virtualEnd);
167
+ if (outOfWindow) {
168
+ this.scrollSelectedIntoView();
169
+ }
170
+ }
171
+ }
172
+ this.updateVirtualRange();
95
173
  }
96
174
  onAnchorToTriggerChanged() {
97
175
  if (this.isOpen) {
@@ -115,7 +193,7 @@ export class Dropdown {
115
193
  }
116
194
  onSelectedValuesChanged(newValues, initialRender = false) {
117
195
  if (this.options && this.options.length > 0) {
118
- const flatOptions = this.options.reduce((acc, curr) => [...acc, ...(curr.groupName ? curr.options : [curr])], []);
196
+ const flatOptions = this.options.flatMap((curr) => curr.groupName && curr.options ? curr.options : [curr]);
119
197
  flatOptions.forEach((option) => {
120
198
  const optionValue = option.value || option.label;
121
199
  if (this.mode === 'single') {
@@ -140,9 +218,13 @@ export class Dropdown {
140
218
  this.isOpenChange.emit(newValue);
141
219
  if (newValue) {
142
220
  this.startPositioning();
221
+ this.alignOnOpen();
143
222
  }
144
223
  else {
145
224
  this.stopPositioning();
225
+ this.cancelVirtualScroll();
226
+ this.virtualStart = 0;
227
+ this.virtualEnd = 0;
146
228
  }
147
229
  }
148
230
  connectedCallback() {
@@ -150,44 +232,68 @@ export class Dropdown {
150
232
  document.addEventListener('keydown', this.handleKeyDown);
151
233
  }
152
234
  disconnectedCallback() {
235
+ var _a;
153
236
  document.removeEventListener('mousedown', this.handleClickOutside);
154
237
  document.removeEventListener('keydown', this.handleKeyDown);
155
238
  this.stopPositioning();
239
+ this.cancelVirtualScroll();
240
+ (_a = this.listResizeObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
156
241
  }
157
242
  componentWillLoad() {
243
+ var _a, _b;
158
244
  this.handleSelect = this.handleSelect.bind(this);
159
245
  if (this.selectedValues) {
160
246
  this.onSelectedValuesChanged(this.selectedValues, true);
161
247
  }
248
+ this.previousOptionCount = (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
162
249
  }
163
250
  componentDidLoad() {
164
- if (this.isOpen)
251
+ if (this.isOpen) {
165
252
  this.startPositioning();
253
+ this.alignOnOpen();
254
+ }
166
255
  }
167
256
  async handleSelect(e, { component }) {
168
257
  const { hostElement, mode, options, update } = this;
169
258
  const isSingle = mode === 'single';
170
259
  const isMulti = mode === 'multi';
171
260
  if (options) {
172
- options
173
- .reduce((acc, curr) => [...acc, ...(curr.groupName ? curr.options : [curr])], [])
174
- .forEach((option) => {
175
- const isMatch = (option.value || option.label) ===
176
- (component.hostElement.value || component.hostElement.label);
177
- if (isSingle) {
178
- option.isSelected = isMatch;
179
- component.hostElement.isSelected = true;
180
- }
181
- else if (isMulti && isMatch) {
182
- option.isSelected = !option.isSelected;
183
- component.hostElement.isSelected = option.isSelected;
184
- }
185
- });
186
- const mapOptions = (option) => {
187
- option.options = option.groupName ? option.options.map(mapOptions) : undefined;
188
- return option;
189
- };
190
- this.options = options.map(mapOptions);
261
+ const targetValue = component.hostElement.value || component.hostElement.label;
262
+ const hasGroups = options.some((option) => option.groupName);
263
+ if (!hasGroups) {
264
+ options.forEach((option) => {
265
+ const isMatch = (option.value || option.label) === targetValue;
266
+ if (isSingle) {
267
+ option.isSelected = isMatch;
268
+ if (isMatch)
269
+ component.hostElement.isSelected = true;
270
+ }
271
+ else if (isMulti && isMatch) {
272
+ option.isSelected = !option.isSelected;
273
+ component.hostElement.isSelected = option.isSelected;
274
+ }
275
+ });
276
+ this.options = [...options];
277
+ }
278
+ else {
279
+ const flatOptions = options.flatMap((curr) => curr.groupName && curr.options ? curr.options : [curr]);
280
+ flatOptions.forEach((option) => {
281
+ const isMatch = (option.value || option.label) === targetValue;
282
+ if (isSingle) {
283
+ option.isSelected = isMatch;
284
+ component.hostElement.isSelected = true;
285
+ }
286
+ else if (isMulti && isMatch) {
287
+ option.isSelected = !option.isSelected;
288
+ component.hostElement.isSelected = option.isSelected;
289
+ }
290
+ });
291
+ const mapOptions = (option) => {
292
+ option.options = option.groupName ? option.options.map(mapOptions) : undefined;
293
+ return option;
294
+ };
295
+ this.options = options.map(mapOptions);
296
+ }
191
297
  }
192
298
  else if (isSingle) {
193
299
  const optionNodes = Array.from(hostElement.querySelectorAll('xpl-dropdown-option'));
@@ -226,21 +332,83 @@ export class Dropdown {
226
332
  .querySelector('.xpl-dropdown-list')) === null || _a === void 0 ? void 0 : _a.style.removeProperty('max-height');
227
333
  this.hostElement.classList.remove('xpl-dropdown--above', 'xpl-dropdown--below');
228
334
  }
335
+ cancelVirtualScroll() {
336
+ if (this.virtualScrollRaf !== null) {
337
+ cancelAnimationFrame(this.virtualScrollRaf);
338
+ this.virtualScrollRaf = null;
339
+ }
340
+ if (this.openAlignmentRaf !== null) {
341
+ cancelAnimationFrame(this.openAlignmentRaf);
342
+ this.openAlignmentRaf = null;
343
+ }
344
+ }
345
+ alignOnOpen() {
346
+ this.scrollSelectedIntoView();
347
+ this.updateVirtualRange();
348
+ this.scheduleOpenAlignment();
349
+ }
350
+ scrollSelectedIntoView() {
351
+ const { listEl: list, options } = this;
352
+ if (!list || !(options === null || options === void 0 ? void 0 : options.length) || !this.isVirtualized)
353
+ return;
354
+ const selectedIndex = options.findIndex((option) => option.isSelected);
355
+ if (selectedIndex < 0)
356
+ return;
357
+ const { rowHeight } = VIRTUAL_LIST;
358
+ const centered = selectedIndex * rowHeight - (list.clientHeight - rowHeight) / 2;
359
+ const maxScroll = Math.max(0, options.length * rowHeight - list.clientHeight);
360
+ list.scrollTop = Math.max(0, Math.min(centered, maxScroll));
361
+ }
362
+ updateVirtualRange() {
363
+ var _a, _b;
364
+ const list = this.listEl;
365
+ const total = (_b = (_a = this.options) === null || _a === void 0 ? void 0 : _a.length) !== null && _b !== void 0 ? _b : 0;
366
+ if (!list || !total)
367
+ return;
368
+ const { rowHeight, overscan } = VIRTUAL_LIST;
369
+ const firstVisible = Math.floor(list.scrollTop / rowHeight);
370
+ const visibleCount = Math.ceil(list.clientHeight / rowHeight) || 1;
371
+ const start = Math.max(0, firstVisible - overscan);
372
+ const end = Math.min(total, firstVisible + visibleCount + overscan);
373
+ if (start !== this.virtualStart || end !== this.virtualEnd) {
374
+ this.virtualStart = start;
375
+ this.virtualEnd = end;
376
+ }
377
+ }
378
+ get isVirtualized() {
379
+ const { options } = this;
380
+ return (!!options &&
381
+ options.length > VIRTUAL_LIST.virtualizeFrom &&
382
+ options.every((option) => !option.groupName && !option.subtitle));
383
+ }
229
384
  render() {
230
- const { isOpen } = this;
231
- const { mode, options } = this;
232
- const hasOptions = options && options.length;
233
- const mappedOptions = hasOptions &&
234
- options.map((_a) => {
235
- var { groupName, options: opts, subtitle } = _a, properties = __rest(_a, ["groupName", "options", "subtitle"]);
236
- return groupName ? (h("xpl-dropdown-group", Object.assign({ groupName: groupName, options: opts }, properties))) : (h("xpl-dropdown-option", Object.assign({ subtitle: subtitle }, properties)));
237
- });
238
- return (h(Host, { key: '1ef465611f9a8501af41c17523352714a7921f29', "aria-expanded": isOpen ? 'true' : 'false', class: {
385
+ const { isOpen, mode, options } = this;
386
+ const hasOptions = !!(options && options.length);
387
+ const shouldVirtualize = this.isVirtualized;
388
+ let listContent;
389
+ if (!hasOptions) {
390
+ listContent = h("slot", { key: '859e13193ab2db2f10197aaf8b9699a177d480c6', name: "options" });
391
+ }
392
+ else if (shouldVirtualize) {
393
+ const { rowHeight, overscan } = VIRTUAL_LIST;
394
+ const total = options.length;
395
+ const start = Math.min(this.virtualStart, total);
396
+ const fallbackEnd = Math.min(total, Math.ceil(300 / rowHeight) + overscan * 2);
397
+ const end = this.virtualEnd > start ? this.virtualEnd : fallbackEnd;
398
+ listContent = (h("li", { key: '2e197eebf453591ec714ebbc60a6c8ba57646cb9', class: "xpl-dropdown__virtual-sizer", style: { height: `${total * rowHeight}px` } }, options.slice(start, end).map((option, i) => renderOption(option, start + i))));
399
+ }
400
+ else {
401
+ listContent = options.map((option) => renderOption(option));
402
+ }
403
+ return (h(Host, { key: '0ffdb0e5d1dc13c83b692244f8e5e65f70c9c745', "aria-expanded": isOpen ? 'true' : 'false', class: {
239
404
  'xpl-dropdown': true,
240
405
  'xpl-dropdown--multi': mode === 'multi',
241
406
  'xpl-dropdown--open': isOpen,
242
407
  'xpl-dropdown--anchor-to-trigger': this.anchorToTrigger,
243
- }, role: "listbox" }, h("slot", { key: '118c8b34e72aa6ab018e6fa9ff29a18ae540b89e', name: "header" }), h("ul", { key: '01544e6aa8d785c48b4f677de102efe4ecc7b53a', class: "xpl-dropdown-list" }, mappedOptions || h("slot", { key: 'f70619995bed02540cef11deaeb6c3e5704165ff', name: "options" }))));
408
+ 'xpl-dropdown--virtualized': shouldVirtualize,
409
+ }, role: "listbox" }, h("slot", { key: 'ff204bc8c903a5d0a47b95521781df2467c9b4a7', name: "header" }), h("ul", { key: '2685e64254a9424f9da75787c3d18ff182e9f7a1', class: "xpl-dropdown-list", ref: (el) => {
410
+ this.setListEl(el);
411
+ }, onScroll: shouldVirtualize ? this.handleVirtualScroll : undefined }, listContent)));
244
412
  }
245
413
  static get is() { return "xpl-dropdown"; }
246
414
  static get properties() {
@@ -482,6 +650,12 @@ export class Dropdown {
482
650
  }
483
651
  };
484
652
  }
653
+ static get states() {
654
+ return {
655
+ "virtualEnd": {},
656
+ "virtualStart": {}
657
+ };
658
+ }
485
659
  static get events() {
486
660
  return [{
487
661
  "method": "isOpenChange",
@@ -542,6 +716,9 @@ export class Dropdown {
542
716
  static get elementRef() { return "hostElement"; }
543
717
  static get watchers() {
544
718
  return [{
719
+ "propName": "options",
720
+ "methodName": "onOptionsChanged"
721
+ }, {
545
722
  "propName": "anchorToTrigger",
546
723
  "methodName": "onAnchorToTriggerChanged"
547
724
  }, {
@@ -51,7 +51,7 @@ export class DynamicTable {
51
51
  this.updateColumnCount();
52
52
  }
53
53
  render() {
54
- return (h("div", { key: '8f33da5fa8815400447b1690172bdaddd1079c1a', role: "grid", class: "xpl-dynamic-table", "aria-colcount": this.colCount }, h("slot", { key: '221aced83acf1fc4c904533eaedb1cd79914c5d3', name: "header" }), h("slot", { key: '6087119ce1499e94a30d09a1917d9371331f6add', name: "body" })));
54
+ return (h("div", { key: '3d5c3e5aea065c98323fbdbf17392af63975c9dd', role: "grid", class: "xpl-dynamic-table", "aria-colcount": this.colCount }, h("slot", { key: 'f6076fef5e85fdf22b03e532e920396ce5f6ce63', name: "header" }), h("slot", { key: '3b94b04b8f6b7a1cca9277161c0c32b117ce315f', name: "body" })));
55
55
  }
56
56
  static get is() { return "xpl-dynamic-table"; }
57
57
  static get states() {
@@ -19,9 +19,9 @@ export class DynamicTableCell {
19
19
  }
20
20
  render() {
21
21
  const colIndex = Array.from(this.el.parentElement.children).indexOf(this.el) + 1;
22
- return (h(Host, { key: '7cfa2d58f634e41ccf1604a581fcc83a2b51676f', role: "gridcell", "aria-colindex": colIndex, class: "xpl-dynamic-table-cell", ref: (el) => {
22
+ return (h(Host, { key: 'e6e9a3695c9d8ca3743b188284bc8e69f50f3397', role: "gridcell", "aria-colindex": colIndex, class: "xpl-dynamic-table-cell", ref: (el) => {
23
23
  this.hostElement = el;
24
- } }, h("slot", { key: 'c6a04082cb8aa1089d9f6cb82f3db8d7f0addf6e' })));
24
+ } }, h("slot", { key: 'abfa632a3ac88d663acaaacbc431d07c9da4b375' })));
25
25
  }
26
26
  static get is() { return "xpl-dynamic-table-cell"; }
27
27
  static get properties() {
@@ -24,9 +24,9 @@ export class DynamicTableRow {
24
24
  const classList = `xpl-dynamic-table-row
25
25
  ${this.isDisabled ? 'disabled' : ''}
26
26
  ${this.selected ? 'selected' : ''}`;
27
- return (h(Host, { key: '0d099456d2016263a2bdcd42b46794e08adb64cf', role: "row", class: classList, ref: (el) => {
27
+ return (h(Host, { key: 'e070f32db6cee0bcbf0dd84e41e13e6d3b88e8a1', role: "row", class: classList, ref: (el) => {
28
28
  this.hostElement = el;
29
- } }, h("slot", { key: 'c923f7f8dc4bb8a4527693259d1a8b5932bb6c10' })));
29
+ } }, h("slot", { key: '78ea8e02e97e0017dc4aa35af4883446d4e4c4bf' })));
30
30
  }
31
31
  static get is() { return "xpl-dynamic-table-row"; }
32
32
  static get properties() {
@@ -22,7 +22,7 @@ export class Grid {
22
22
  });
23
23
  }
24
24
  render() {
25
- return h(Host, { key: 'aeee950fb242a14f50ceda1d199cf427597b70f6', class: "xpl-grid" });
25
+ return h(Host, { key: '0036b594c89e75a9b302e7a7d9c99d4703a8b729', class: "xpl-grid" });
26
26
  }
27
27
  static get is() { return "xpl-grid"; }
28
28
  static get elementRef() { return "container"; }
@@ -12,7 +12,7 @@ export class GridItem {
12
12
  className += ` xpl-grid-item-sm-${this.sm}`;
13
13
  className += ` xpl-grid-item-md-${this.md}`;
14
14
  className += ` xpl-grid-item-lg-${this.lg}`;
15
- return (h(Host, { key: '43cf6dd21d3d06e2d8012b716e5db5aeee676aac', class: className }, h("slot", { key: 'e08e03e4152007df7158d7122f883da1050dfde7' })));
15
+ return (h(Host, { key: 'bb28d83b6fd6ee92390ffcb5a505f5084f5624b9', class: className }, h("slot", { key: 'db3cf487db67044879425c830a14a44e06d19414' })));
16
16
  }
17
17
  static get is() { return "xpl-grid-item"; }
18
18
  static get properties() {
@@ -68,7 +68,7 @@ export class HeaderAccordion {
68
68
  this.applyBorderRadiusToLastRow();
69
69
  }
70
70
  render() {
71
- return (h(Host, { key: '33b59f238ef5eabce7a83dec5e189459038ac2e0', class: "xpl-header-accordion" }, h("div", { key: '1269fe93be898a0300a1c840ad8919608c86bbff', class: `header-accordion header-accordion--${this.expanded ? 'expanded' : 'collapsed'}` }, this.hasCheckbox && (h("xpl-checkbox", { key: '16a93cbaab64072990502ed7d1bc2a496ad31425', class: "xpl-header-accordion__parent-checkbox", checked: this.parentChecked, disabled: this.disabled, indeterminate: this.parentIndeterminate, onCheckboxChange: (event) => this.handleParentCheckboxChange(event.detail) })), h("button", { key: '00e7024adcd3c8cef52cc5d11be8e4dc6319c1a8', "aria-expanded": this.expanded, "aria-controls": this.contentId, class: "toggle-area", onClick: this.toggleAccordion, type: "button" }, h("slot", { key: '16fc847fff7d27f73c589bff9670fdbdec9f58cc', name: "title" }), h("xpl-icon", { key: '44e27d19feb130c0903949d24a9c71f19f8475b6', size: 16, icon: "chevron-down", class: this.expanded && 'rotate' }))), h("div", { key: 'aa8bd514da7666ed09c72c5b271ea0eeda729ef8', id: this.contentId, role: "region", class: !this.expanded ? 'content--hidden' : 'content--shown' }, h("slot", { key: 'b8adf0af8ea58edad1036fc45277ef6621bc8fbb', name: "content" }))));
71
+ return (h(Host, { key: 'ec426d05bbf030c8e782e7e74fda505bc8b9011a', class: "xpl-header-accordion" }, h("div", { key: 'b9da9063757f65ab682f542dd138f3f8f8dc471f', class: `header-accordion header-accordion--${this.expanded ? 'expanded' : 'collapsed'}` }, this.hasCheckbox && (h("xpl-checkbox", { key: '8b97b3e36f49549dcd18978628bfde93f75a084e', class: "xpl-header-accordion__parent-checkbox", checked: this.parentChecked, disabled: this.disabled, indeterminate: this.parentIndeterminate, onCheckboxChange: (event) => this.handleParentCheckboxChange(event.detail) })), h("button", { key: '7bdf4043d478bb1c04f44de14717ac3753236e1a', "aria-expanded": this.expanded, "aria-controls": this.contentId, class: "toggle-area", onClick: this.toggleAccordion, type: "button" }, h("slot", { key: '0a6197fd9b5dabff14f1da4137d8a99c7a4cbc93', name: "title" }), h("xpl-icon", { key: '5a74ba13feb88a46df377f255eb134d5b609be53', size: 16, icon: "chevron-down", class: this.expanded && 'rotate' }))), h("div", { key: '8d048d3480f0185ed34440c3e6d84befb3cf4dee', id: this.contentId, role: "region", class: !this.expanded ? 'content--hidden' : 'content--shown' }, h("slot", { key: 'fa374cd9feba5ef3eb72d50f027651dc84f80ec8', name: "content" }))));
72
72
  }
73
73
  static get is() { return "xpl-header-accordion"; }
74
74
  static get properties() {
@@ -16,10 +16,10 @@ export class Icon {
16
16
  let wrapperClasses = 'xpl-icon__wrapper ';
17
17
  if (this.backgroundColor)
18
18
  wrapperClasses += `xpl-icon__wrapper--with-background xpl-icon__wrapper--with-background--${this.backgroundColor}`;
19
- return (h(Host, { key: '07522771501e6e67b0ae91bbee9cc8699d79fb8b' }, h("figure", { key: '2acf41e3e20ff3998050c948fcae5d0990cb706a', class: wrapperClasses }, h("span", { key: '560b2e62366ee0842442c29280a7e37b53edf2be', "aria-label": this.icon, role: "img", class: "xpl-icon", style: {
19
+ return (h(Host, { key: 'cf84ae3e7ff4ae0b4ae8e1b1cf3b9331bc887c6c' }, h("figure", { key: '74e2727f9bf4ff8d710eff9b99632ffa669b84ae', class: wrapperClasses }, h("span", { key: '2d8be2bd318bd27e0bc4299cfe518668e424fffe', "aria-label": this.icon, role: "img", class: "xpl-icon", style: {
20
20
  width: `${options.width}px`,
21
21
  height: `${options.height}px`,
22
- }, innerHTML: (_a = apolloIcons.getIcon(this.icon)) === null || _a === void 0 ? void 0 : _a.toSVG(options) }), h("figcaption", { key: '256c0d05be8026b24a139f8bfff4f00c65112030' }, this.icon, " icon"))));
22
+ }, innerHTML: (_a = apolloIcons.getIcon(this.icon)) === null || _a === void 0 ? void 0 : _a.toSVG(options) }), h("figcaption", { key: '3c7a383da59ac0766500273799b203a28c7c7ff3' }, this.icon, " icon"))));
23
23
  }
24
24
  static get is() { return "xpl-icon"; }
25
25
  static get originalStyleUrls() {
@@ -244,7 +244,7 @@ Datepicker.args = {
244
244
  errorMessage: '',
245
245
  min: '01/01/2000',
246
246
  max: '12/31/2099',
247
- required: true,
247
+ required: false,
248
248
  type: 'date',
249
249
  };
250
250
  Datepicker.parameters = {
@@ -195,16 +195,16 @@ export class InputColor {
195
195
  top: `${y}px`,
196
196
  background: `rgb(${r}, ${g}, ${b})`,
197
197
  };
198
- return (h(Host, { key: '14fe9097b513719084fd3487b3a18f95c0eaf158', class: "xpl-input-color" }, h("xpl-popover", { key: '8b3d322c236115ab5b487b8ea6fde2227a69cc47', disabled: this.disabled, display: "menu" }, h("div", { key: '8309555df24767e7e3c4131a9d571a23b7b29cc6', slot: "trigger" }, h("div", { key: '8a9edf9c0e2c70f15fdd7add09571e3b0bfef89a', class: {
198
+ return (h(Host, { key: 'eb7a6f1f77a5d184c05a7825f9f20829b8112d49', class: "xpl-input-color" }, h("xpl-popover", { key: '5f1588d21649cbbdfcadb0ab2bd46f848c7fc2d8', disabled: this.disabled, display: "menu" }, h("div", { key: 'cecec4d250e2c3b26fc364436f2d16fb97162dff', slot: "trigger" }, h("div", { key: '02a4945abec58618cb116eb04bca1c4672f16a4f', class: {
199
199
  'xpl-input-color__display': true,
200
200
  'xpl-input-color__display--disabled': this.disabled,
201
201
  'xpl-input-color__display--error': !!this.hasErrorState,
202
- } }, h("span", { key: '0d1c39976d6b95e0ff25b46b00b9a3d6796c8f8e', class: "xpl-input-color__color", style: {
202
+ } }, h("span", { key: '622be07c8fe6de7c5d714a8961146ff53160247d', class: "xpl-input-color__color", style: {
203
203
  background: objectToStringColor(this.colorValues),
204
- } }), this.colorValues.hex ? (h("span", { class: "xpl-input-color__value" }, objectToStringColor(this.colorValues))) : (h("span", { class: "xpl-input-color__placeholder" }, this.placeholder)), this.eyeDropperSupported && !this.hideEyeDropper && (h("xpl-icon", { key: '2b5ab7d7927e9685652de5e5ea843b970465d568', size: 20, icon: "eye-dropper", class: "xpl-input-color__icon", onClick: (e) => {
204
+ } }), this.colorValues.hex ? (h("span", { class: "xpl-input-color__value" }, objectToStringColor(this.colorValues))) : (h("span", { class: "xpl-input-color__placeholder" }, this.placeholder)), this.eyeDropperSupported && !this.hideEyeDropper && (h("xpl-icon", { key: 'fd14c6b7aad4e33977008cf11b5cbff2352aab80', size: 20, icon: "eye-dropper", class: "xpl-input-color__icon", onClick: (e) => {
205
205
  e.stopPropagation();
206
206
  this.openEyeDropper();
207
- } })))), h("div", { key: 'd564121400cc8adde26658ad15f25403f2672988', class: "xpl-input-color__menu" }, h("div", { key: '896f8b010eb20a03c0c838467f7a8f7d7e6980e1', class: "xpl-input-color__sl-grid", ref: (el) => {
207
+ } })))), h("div", { key: 'ad85b32a641a3bf0face2efa81fe14de17777fdf', class: "xpl-input-color__menu" }, h("div", { key: 'caaee0b4bf18c0c3dbc72745167df475b0cc91cc', class: "xpl-input-color__sl-grid", ref: (el) => {
208
208
  this.colorInputElements.slGrid = el;
209
209
  }, style: {
210
210
  background: [
@@ -212,9 +212,9 @@ export class InputColor {
212
212
  `linear-gradient(to right, #fff, #fff0)`,
213
213
  `rgb(${hueBaseColor.r} ${hueBaseColor.g} ${hueBaseColor.b})`,
214
214
  ].join(', '),
215
- }, onMouseDown: this.startDrag, onTouchStart: this.startDrag }, h("div", { key: 'af50abd9fc235df8ed6c0e399d6b755078c86182', class: "xpl-input-color__sl-thumb", style: slThumbStyle })), h("div", { key: '8bdbdfee8d6c09534700744a420ac80b89330789', class: "xpl-input-color__grid" }, h("input", { key: '9e918ed41384861a55847709980d65751f1e8fbe', type: "range", min: "0", max: "360", value: this.hue, class: "xpl-input-color__slider xpl-input-color__hue", name: "color-hue-slider", ref: (el) => {
215
+ }, onMouseDown: this.startDrag, onTouchStart: this.startDrag }, h("div", { key: '34867bf1cbca3e4d56552e02ba99a112c061be64', class: "xpl-input-color__sl-thumb", style: slThumbStyle })), h("div", { key: '3070aa4d152d18944a7942dc7298538be432fb2c', class: "xpl-input-color__grid" }, h("input", { key: '557445a1167af6ebfb786fbe390b63167ac0c2bf', type: "range", min: "0", max: "360", value: this.hue, class: "xpl-input-color__slider xpl-input-color__hue", name: "color-hue-slider", ref: (el) => {
216
216
  this.colorInputElements.hue = el;
217
- } }), h("input", { key: 'a352b5ed96dff5fbc5e1dce6e241e34d2f847f5d', type: "range", min: "0", max: "1", step: "0.01", value: a, class: "xpl-input-color__slider xpl-input-color__alpha", name: "color-alpha-slider", ref: (el) => {
217
+ } }), h("input", { key: '86cabdd053207c6073592b46a85fe74ca74942fb', type: "range", min: "0", max: "1", step: "0.01", value: a, class: "xpl-input-color__slider xpl-input-color__alpha", name: "color-alpha-slider", ref: (el) => {
218
218
  this.colorInputElements.alpha = el;
219
219
  }, style: {
220
220
  backgroundImage: [
@@ -224,9 +224,9 @@ export class InputColor {
224
224
  `linear-gradient(45deg, transparent 75%, #ccc 75%)`,
225
225
  `linear-gradient(-45deg, transparent 75%, #ccc 75%)`,
226
226
  ].join(', '),
227
- } }), h("div", { key: 'df000dcb3466bc5be835d55381562c356ecc8c17', class: "xpl-input-color__preview", style: {
227
+ } }), h("div", { key: 'bb9ee49e36d78441380248bdb021443f9abbb250', class: "xpl-input-color__preview", style: {
228
228
  background: `rgba(${r}, ${g}, ${b}, ${a})`,
229
- } })), h("div", { key: 'fc79485821cc081e14007aefdfd4b14bbd875a1e', class: "xpl-input-color__inputs" }, Object.entries(this.colorInputElements)
229
+ } })), h("div", { key: '08bc820781d2de091036289b50f9f5f3810db61b', class: "xpl-input-color__inputs" }, Object.entries(this.colorInputElements)
230
230
  .filter(([key]) => ['hex', 'r', 'g', 'b', 'a'].includes(key))
231
231
  .map(([key]) => (h("xpl-input", { key: key, label: key.toLocaleUpperCase(), name: `color-${key}-input`, placeholder: key === 'hex' ? '793EF7' : '0', value: this.colorValues[key], ref: (elRef) => {
232
232
  this.colorInputElements[key] = elRef;
@@ -78,16 +78,16 @@ export class InputDate {
78
78
  parent.removeChild(wrapper);
79
79
  }
80
80
  render() {
81
- return (h(Host, { key: '35b39ed37afa33603772cdd0dce79cf7533d36ec', class: {
81
+ return (h(Host, { key: 'c2707549e3285693ce4c7e0449e047be90640504', class: {
82
82
  'xpl-input-date': true,
83
83
  [`xpl-input-date--mode-${this.mode}`]: true,
84
84
  'xpl-input-date--error': !!this.hasErrorState,
85
85
  'xpl-input-date--flatpickr-static': this.flatpickrStaticLayout,
86
- } }, h("div", { key: '14940421a3f9fb4e7a5acbd5abb222d927a701cf', class: "xpl-input-wrapper" }, this.pre && (h("label", { key: '108b33b4f0a87bacff90480633327dd221f6b1d4', class: "xpl-input-pre", htmlFor: this.inputId }, this.pre)), h("input", { key: '00633c5b69d25a94d7cd8501bde70459e8ebf2ce', type: "date", id: this.inputId, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, placeholder: this.placeholder, max: this.max, min: this.min, ref: (el) => {
86
+ } }, h("div", { key: 'e6ac05a6d58d92570331489b8a317d17c0726873', class: "xpl-input-wrapper" }, this.pre && (h("label", { key: 'ef746e91506c2bd2c2bc9986bfbb7f0b82a0f079', class: "xpl-input-pre", htmlFor: this.inputId }, this.pre)), h("input", { key: '125e566456a2de4d75fe38fee50a78de886b8009', type: "date", id: this.inputId, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, placeholder: this.placeholder, max: this.max, min: this.min, ref: (el) => {
87
87
  this.input = el;
88
88
  }, onChange: (event) => {
89
89
  this.valueChanged(event);
90
- } }), h("xpl-icon", { key: 'ba0d694b7ace1359d6901c0110dce40a78805f74', class: "xpl-input-calendar", icon: "calendar-month", size: 24 }), this.post && (h("label", { key: '5ca7564e2096b697a75ebfb573654c0c23125245', class: "xpl-input-post", htmlFor: this.inputId }, this.post)))));
90
+ } }), h("xpl-icon", { key: '34c346be1a3c66d4e5eab1882426ef0691c8b6cd', class: "xpl-input-calendar", icon: "calendar", size: 24 }), this.post && (h("label", { key: '1d2ab5b80daad9964e364a069f548d5250067f84', class: "xpl-input-post", htmlFor: this.inputId }, this.post)))));
91
91
  }
92
92
  static get is() { return "xpl-input-date"; }
93
93
  static get properties() {
@@ -33,18 +33,18 @@ export class InputFile {
33
33
  }
34
34
  render() {
35
35
  var _a, _b;
36
- return (h(Host, { key: 'ec1645e7d48cf2b146727a6c131dbd7572468f17', class: {
36
+ return (h(Host, { key: '579d1ec1094bc5b1aeec622996694728fb1facca', class: {
37
37
  'xpl-input-file': true,
38
38
  'xpl-input-file--hide-trigger-on-select': this.hideTriggerOnSelect,
39
39
  'xpl-input-file--disabled': this.disabled,
40
- } }, h("span", { key: '8dc3e290dcddba706316ec41443e2e87aa82f79f', class: {
40
+ } }, h("span", { key: '66b3cc31f1e2bfa4ee1896e64a667e2a26166b50', class: {
41
41
  'xpl-input-file__trigger-wrapper': true,
42
42
  'xpl-input-file__trigger-wrapper--hidden': this.hideTriggerOnSelect && ((_a = this.files) === null || _a === void 0 ? void 0 : _a.length) > 0,
43
- }, role: "button", tabIndex: 0, onClick: this.openFileDialog }, h("slot", { key: '2d2391a2ccca22170bfa0b9ace50a42fdba54284', name: "trigger" })), ((_b = this.files) === null || _b === void 0 ? void 0 : _b.length) > 0 && !this.hideFileNames && (h("ul", { key: 'c302bbbb5c1977c513dba82db70da1615f39a217', class: "xpl-input-file__file-list" }, this.files.map((file, fileIndex) => (h("li", { class: "xpl-input-file__file-item" }, h("span", { class: "xpl-text-callout" }, file.name), h("xpl-icon", { icon: "x-circle", size: 24, onClick: (e) => {
43
+ }, role: "button", tabIndex: 0, onClick: this.openFileDialog }, h("slot", { key: '53b23be4e2a5b0f920e650c14e591cb1de3b8bac', name: "trigger" })), ((_b = this.files) === null || _b === void 0 ? void 0 : _b.length) > 0 && !this.hideFileNames && (h("ul", { key: '53a294c3765d5b6229f5ed79023095538a1c5edf', class: "xpl-input-file__file-list" }, this.files.map((file, fileIndex) => (h("li", { class: "xpl-input-file__file-item" }, h("span", { class: "xpl-text-callout" }, file.name), h("xpl-icon", { icon: "x-circle", size: 24, onClick: (e) => {
44
44
  e.preventDefault();
45
45
  e.stopPropagation();
46
46
  this.onRemoveFileByIndex(fileIndex);
47
- }, class: "xpl-input-file__remove-icon" })))))), this.accept && !this.hideAcceptText && (h("span", { key: '9252c5450f32e8d2ed478af9f84eef4a26cee49f', class: "xpl-input-file__accept xpl-text-caption" }, "Accepted file types: ", this.accept)), h("input", { key: 'd44213b6fd075bfb12c7857d3a56e06f78ef0fdc', onChange: this.handleFileChange, type: "file", ref: (el) => {
47
+ }, class: "xpl-input-file__remove-icon" })))))), this.accept && !this.hideAcceptText && (h("span", { key: 'afcd0be79ed4ffa5696990eb76d8615f61c430f9', class: "xpl-input-file__accept xpl-text-caption" }, "Accepted file types: ", this.accept)), h("input", { key: '08ffdfed6e25b11363e664abe7bdb66ae6b96bb7', onChange: this.handleFileChange, type: "file", ref: (el) => {
48
48
  this.fileInput = el;
49
49
  }, hidden: true, accept: this.accept, multiple: this.multiple, name: this.name })));
50
50
  }