@xplortech/apollo-core 2.7.0 → 2.8.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 (270) hide show
  1. package/.typings/apollo-components.html-data.json +104 -183
  2. package/build/style.css +220 -951
  3. package/dist/apollo-core/apollo-core.css +5 -35
  4. package/dist/apollo-core/apollo-core.esm.js +1 -1
  5. package/dist/apollo-core/{p-6c956d4e.entry.js → p-0bf50890.entry.js} +1 -1
  6. package/dist/apollo-core/p-1947e7a8.entry.js +1 -0
  7. package/dist/apollo-core/p-27928cb0.entry.js +1 -0
  8. package/dist/apollo-core/p-34438721.entry.js +1 -0
  9. package/dist/apollo-core/p-35c2f72d.entry.js +1 -0
  10. package/dist/apollo-core/p-368c81f1.entry.js +1 -0
  11. package/dist/apollo-core/p-36ba29da.entry.js +1 -0
  12. package/dist/apollo-core/p-406b27a8.entry.js +1 -0
  13. package/dist/apollo-core/p-5d63b4ce.entry.js +1 -0
  14. package/dist/apollo-core/p-689f1dae.entry.js +1 -0
  15. package/dist/apollo-core/{p-7eb86c63.entry.js → p-6a15f1e0.entry.js} +1 -1
  16. package/dist/apollo-core/p-8d692d05.entry.js +1 -0
  17. package/dist/apollo-core/{p-28d12fd3.entry.js → p-b61d7952.entry.js} +1 -1
  18. package/dist/apollo-core/{p-084d26ed.entry.js → p-ca127ee8.entry.js} +1 -1
  19. package/dist/apollo-core/p-cd56a3d5.entry.js +1 -0
  20. package/dist/apollo-core/p-dc205893.entry.js +1 -0
  21. package/dist/cjs/apollo-core.cjs.js +1 -1
  22. package/dist/cjs/index-BQ97-AWw.js +10 -2
  23. package/dist/cjs/loader.cjs.js +1 -1
  24. package/dist/cjs/xpl-accordion.cjs.entry.js +2 -2
  25. package/dist/cjs/xpl-application-shell.cjs.entry.js +1 -1
  26. package/dist/cjs/{xpl-avatar_61.cjs.entry.js → xpl-avatar_54.cjs.entry.js} +1311 -1725
  27. package/dist/cjs/xpl-button-row.cjs.entry.js +1 -1
  28. package/dist/cjs/xpl-calendar.cjs.entry.js +1 -1
  29. package/dist/cjs/xpl-dynamic-table-cell.cjs.entry.js +2 -2
  30. package/dist/cjs/xpl-dynamic-table-row.cjs.entry.js +2 -2
  31. package/dist/cjs/xpl-dynamic-table.cjs.entry.js +1 -1
  32. package/dist/cjs/xpl-grid-item.cjs.entry.js +1 -1
  33. package/dist/cjs/xpl-grid.cjs.entry.js +1 -1
  34. package/dist/cjs/xpl-large-card.cjs.entry.js +1 -1
  35. package/dist/cjs/xpl-main-nav.cjs.entry.js +1 -1
  36. package/dist/cjs/xpl-table-header-cell.cjs.entry.js +57 -0
  37. package/dist/cjs/xpl-table-header.cjs.entry.js +14 -0
  38. package/dist/cjs/xpl-toggle.cjs.entry.js +8 -3
  39. package/dist/cjs/xpl-toolbar.cjs.entry.js +2 -2
  40. package/dist/collection/collection-manifest.json +2 -7
  41. package/dist/collection/components/xpl-accordion/xpl-accordion.js +2 -2
  42. package/dist/collection/components/xpl-application-shell/xpl-application-shell.js +1 -1
  43. package/dist/collection/components/xpl-backdrop/xpl-backdrop.js +1 -1
  44. package/dist/collection/components/xpl-badge/xpl-badge.js +1 -1
  45. package/dist/collection/components/xpl-banner/xpl-banner.js +2 -2
  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 +1 -1
  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 +29 -34
  52. package/dist/collection/components/xpl-choicelist/xpl-choicelist.js +7 -6
  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 +77 -7
  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 +53 -46
  67. package/dist/collection/components/xpl-icon/xpl-icon.js +2 -2
  68. package/dist/collection/components/xpl-input/xpl-input-color/xpl-input-color.js +8 -8
  69. package/dist/collection/components/xpl-input/xpl-input-date/xpl-input-date.js +3 -3
  70. package/dist/collection/components/xpl-input/xpl-input-file/xpl-input-file.js +4 -4
  71. package/dist/collection/components/xpl-input/xpl-input-phone/xpl-input-phone.js +5 -5
  72. package/dist/collection/components/xpl-input/xpl-input-search/xpl-input-search.js +1 -1
  73. package/dist/collection/components/xpl-input/xpl-input-time/xpl-input-time.js +2 -2
  74. package/dist/collection/components/xpl-input/xpl-input.js +28 -24
  75. package/dist/collection/components/xpl-large-card/xpl-large-card.js +1 -1
  76. package/dist/collection/components/xpl-list/xpl-list.js +2 -2
  77. package/dist/collection/components/xpl-main-nav/xpl-main-nav.js +1 -1
  78. package/dist/collection/components/xpl-modal/xpl-modal.js +1 -1
  79. package/dist/collection/components/xpl-nav-item/xpl-nav-item.js +2 -2
  80. package/dist/collection/components/xpl-pagination/pagination.stories.js +18 -0
  81. package/dist/collection/components/xpl-pagination/xpl-pagination.js +7 -3
  82. package/dist/collection/components/xpl-panel/xpl-panel.js +2 -2
  83. package/dist/collection/components/xpl-popover/xpl-popover.js +4 -4
  84. package/dist/collection/components/xpl-progress-bar/xpl-progress-bar.js +2 -2
  85. package/dist/collection/components/xpl-progress-indicator/xpl-progress-indicator.js +1 -1
  86. package/dist/collection/components/xpl-radio/radio.stories.js +10 -1
  87. package/dist/collection/components/xpl-radio/xpl-radio.js +30 -5
  88. package/dist/collection/components/xpl-secondary-nav/xpl-secondary-nav.js +1 -1
  89. package/dist/collection/components/xpl-select/xpl-select.js +58 -6
  90. package/dist/collection/components/xpl-side-nav/xpl-side-nav-item/xpl-side-nav-item.js +2 -2
  91. package/dist/collection/components/xpl-side-nav/xpl-side-nav.js +2 -2
  92. package/dist/collection/components/xpl-skeleton/xpl-skeleton.js +1 -1
  93. package/dist/collection/components/xpl-slideout/xpl-slideout.js +1 -1
  94. package/dist/collection/components/xpl-tab-panel/xpl-tab-panel.js +2 -2
  95. package/dist/collection/components/xpl-table/table.stories.js +67 -319
  96. package/dist/collection/components/xpl-table/xpl-table.js +151 -1456
  97. package/dist/collection/components/xpl-table-header/table-header.stories.js +126 -0
  98. package/dist/collection/components/xpl-table-header/xpl-table-header.js +7 -0
  99. package/dist/collection/components/xpl-table-header-cell/table-header-cell.stories.js +75 -0
  100. package/dist/collection/components/xpl-table-header-cell/xpl-table-header-cell.js +188 -0
  101. package/dist/collection/components/xpl-tabs/xpl-tabs.js +5 -5
  102. package/dist/collection/components/xpl-tag/xpl-tag.js +2 -2
  103. package/dist/collection/components/xpl-toast/xpl-toast.js +2 -2
  104. package/dist/collection/components/xpl-toggle/xpl-toggle.js +26 -4
  105. package/dist/collection/components/xpl-toolbar/xpl-toolbar.js +2 -2
  106. package/dist/collection/components/xpl-tooltip/xpl-tooltip.js +1 -1
  107. package/dist/collection/components/xpl-top-nav/xpl-nav-header-menu/xpl-nav-header-menu.js +2 -2
  108. package/dist/collection/components/xpl-top-nav/xpl-top-nav-item/xpl-top-nav-item.js +2 -2
  109. package/dist/collection/components/xpl-top-nav/xpl-top-nav.js +5 -5
  110. package/dist/collection/components/xpl-utility-bar/xpl-utility-bar.js +1 -1
  111. package/dist/components/index.js +1 -1
  112. package/dist/components/xpl-accordion.js +1 -1
  113. package/dist/components/xpl-application-shell.js +1 -1
  114. package/dist/components/xpl-backdrop2.js +1 -1
  115. package/dist/components/xpl-badge2.js +1 -1
  116. package/dist/components/xpl-banner.js +1 -1
  117. package/dist/components/xpl-breadcrumb-item.js +1 -1
  118. package/dist/components/xpl-breadcrumbs.js +1 -1
  119. package/dist/components/xpl-button-row.js +1 -1
  120. package/dist/components/xpl-button2.js +1 -1
  121. package/dist/components/xpl-calendar.js +1 -1
  122. package/dist/components/xpl-checkbox2.js +1 -1
  123. package/dist/components/xpl-choicelist.js +1 -1
  124. package/dist/components/xpl-content-area.js +1 -1
  125. package/dist/components/xpl-dashboard.js +1 -1
  126. package/dist/components/xpl-data-card.js +1 -1
  127. package/dist/components/xpl-divider2.js +1 -1
  128. package/dist/components/xpl-dropdown-group2.js +1 -1
  129. package/dist/components/xpl-dropdown-heading2.js +1 -1
  130. package/dist/components/xpl-dropdown-option2.js +1 -1
  131. package/dist/components/xpl-dropdown2.js +1 -1
  132. package/dist/components/xpl-dynamic-table-cell.js +1 -1
  133. package/dist/components/xpl-dynamic-table-row.js +1 -1
  134. package/dist/components/xpl-dynamic-table.js +1 -1
  135. package/dist/components/xpl-grid-item.js +1 -1
  136. package/dist/components/xpl-grid.js +1 -1
  137. package/dist/components/xpl-header-accordion.js +1 -1
  138. package/dist/components/xpl-icon2.js +1 -1
  139. package/dist/components/xpl-input-date2.js +1 -1
  140. package/dist/components/xpl-input-file2.js +1 -1
  141. package/dist/components/xpl-input-search2.js +1 -1
  142. package/dist/components/xpl-input2.js +1 -1
  143. package/dist/components/xpl-large-card.js +1 -1
  144. package/dist/components/xpl-list.js +1 -1
  145. package/dist/components/xpl-main-nav.js +1 -1
  146. package/dist/components/xpl-modal.js +1 -1
  147. package/dist/components/xpl-nav-header-menu.js +1 -1
  148. package/dist/components/xpl-nav-item.js +1 -1
  149. package/dist/components/xpl-pagination.js +1 -1
  150. package/dist/components/xpl-panel.js +1 -1
  151. package/dist/components/xpl-popover2.js +1 -1
  152. package/dist/components/xpl-progress-bar.js +1 -1
  153. package/dist/components/xpl-progress-indicator.js +1 -1
  154. package/dist/components/xpl-radio2.js +1 -1
  155. package/dist/components/xpl-secondary-nav.js +1 -1
  156. package/dist/components/xpl-select2.js +1 -1
  157. package/dist/components/xpl-side-nav-item.js +1 -1
  158. package/dist/components/xpl-side-nav.js +1 -1
  159. package/dist/components/xpl-skeleton.js +1 -1
  160. package/dist/components/xpl-slideout.js +1 -1
  161. package/dist/components/xpl-tab-panel.js +1 -1
  162. package/dist/components/xpl-table-header-cell.js +1 -1
  163. package/dist/components/xpl-table-header.js +1 -1
  164. package/dist/components/xpl-table.js +1 -1
  165. package/dist/components/xpl-tabs.js +1 -1
  166. package/dist/components/xpl-tag2.js +1 -1
  167. package/dist/components/xpl-toast.js +1 -1
  168. package/dist/components/xpl-toggle.js +1 -1
  169. package/dist/components/xpl-toolbar.js +1 -1
  170. package/dist/components/xpl-tooltip2.js +1 -1
  171. package/dist/components/xpl-top-nav-item2.js +1 -1
  172. package/dist/components/xpl-top-nav.js +1 -1
  173. package/dist/components/xpl-utility-bar.js +1 -1
  174. package/dist/docs/xpl-checkbox/readme.md +10 -10
  175. package/dist/docs/xpl-dropdown/readme.md +13 -11
  176. package/dist/docs/xpl-dynamic-table/readme.md +19 -22
  177. package/dist/docs/xpl-dynamic-table-cell/readme.md +18 -20
  178. package/dist/docs/xpl-dynamic-table-row/readme.md +19 -21
  179. package/dist/docs/xpl-icon/readme.md +1 -1
  180. package/dist/docs/xpl-radio/readme.md +10 -9
  181. package/dist/docs/xpl-select/readme.md +17 -15
  182. package/dist/docs/xpl-table/readme.md +46 -110
  183. package/dist/docs/{xpl-table/xpl-table-header → xpl-table-header}/readme.md +13 -13
  184. package/dist/docs/xpl-table-header-cell/readme.md +47 -0
  185. package/dist/docs/xpl-toggle/readme.md +16 -9
  186. package/dist/esm/apollo-core.js +1 -1
  187. package/dist/esm/index-C7bgJs6C.js +10 -2
  188. package/dist/esm/loader.js +1 -1
  189. package/dist/esm/xpl-accordion.entry.js +2 -2
  190. package/dist/esm/xpl-application-shell.entry.js +1 -1
  191. package/dist/esm/{xpl-avatar_61.entry.js → xpl-avatar_54.entry.js} +1312 -1719
  192. package/dist/esm/xpl-button-row.entry.js +1 -1
  193. package/dist/esm/xpl-calendar.entry.js +1 -1
  194. package/dist/esm/xpl-dynamic-table-cell.entry.js +2 -2
  195. package/dist/esm/xpl-dynamic-table-row.entry.js +2 -2
  196. package/dist/esm/xpl-dynamic-table.entry.js +1 -1
  197. package/dist/esm/xpl-grid-item.entry.js +1 -1
  198. package/dist/esm/xpl-grid.entry.js +1 -1
  199. package/dist/esm/xpl-large-card.entry.js +1 -1
  200. package/dist/esm/xpl-main-nav.entry.js +1 -1
  201. package/dist/esm/xpl-table-header-cell.entry.js +55 -0
  202. package/dist/esm/xpl-table-header.entry.js +12 -0
  203. package/dist/esm/xpl-toggle.entry.js +9 -4
  204. package/dist/esm/xpl-toolbar.entry.js +2 -2
  205. package/dist/types/components/xpl-checkbox/xpl-checkbox.d.ts +3 -3
  206. package/dist/types/components/xpl-dropdown/xpl-dropdown.d.ts +5 -0
  207. package/dist/types/components/xpl-header-accordion/xpl-header-accordion.d.ts +10 -9
  208. package/dist/types/components/xpl-input/xpl-input.d.ts +3 -2
  209. package/dist/types/components/xpl-pagination/pagination.stories.d.ts +13 -0
  210. package/dist/types/components/xpl-radio/radio.stories.d.ts +10 -1
  211. package/dist/types/components/xpl-radio/xpl-radio.d.ts +2 -0
  212. package/dist/types/components/xpl-select/xpl-select.d.ts +3 -0
  213. package/dist/types/components/xpl-table/table.stories.d.ts +19 -161
  214. package/dist/types/components/xpl-table/xpl-table.d.ts +21 -123
  215. package/dist/types/components/{xpl-table/xpl-table-header → xpl-table-header}/table-header.stories.d.ts +16 -13
  216. package/dist/types/components/{xpl-table/xpl-table-header-cell → xpl-table-header-cell}/table-header-cell.stories.d.ts +20 -24
  217. package/dist/types/components/xpl-table-header-cell/xpl-table-header-cell.d.ts +13 -0
  218. package/dist/types/components/xpl-toggle/xpl-toggle.d.ts +3 -0
  219. package/dist/types/components.d.ts +128 -402
  220. package/package.json +37 -3
  221. package/dist/apollo-core/p-146d5d55.entry.js +0 -1
  222. package/dist/apollo-core/p-16742606.entry.js +0 -1
  223. package/dist/apollo-core/p-3eb5eb7c.entry.js +0 -1
  224. package/dist/apollo-core/p-4882f0bd.entry.js +0 -1
  225. package/dist/apollo-core/p-64b34268.entry.js +0 -1
  226. package/dist/apollo-core/p-71b75f36.entry.js +0 -1
  227. package/dist/apollo-core/p-84254a24.entry.js +0 -1
  228. package/dist/apollo-core/p-9f2a0321.entry.js +0 -1
  229. package/dist/apollo-core/p-cde83ab0.entry.js +0 -1
  230. package/dist/apollo-core/p-e7363036.entry.js +0 -1
  231. package/dist/collection/components/xpl-table/utils/move-row-dom.js +0 -50
  232. package/dist/collection/components/xpl-table/utils/table-internal.js +0 -58
  233. package/dist/collection/components/xpl-table/xpl-table-body/xpl-table-body.js +0 -7
  234. package/dist/collection/components/xpl-table/xpl-table-cell/xpl-table-cell.js +0 -155
  235. package/dist/collection/components/xpl-table/xpl-table-footer/xpl-table-footer.js +0 -7
  236. package/dist/collection/components/xpl-table/xpl-table-footer-cell/xpl-table-footer-cell.js +0 -37
  237. package/dist/collection/components/xpl-table/xpl-table-header/table-header.stories.js +0 -131
  238. package/dist/collection/components/xpl-table/xpl-table-header/xpl-table-header.js +0 -7
  239. package/dist/collection/components/xpl-table/xpl-table-header-cell/table-header-cell.stories.js +0 -105
  240. package/dist/collection/components/xpl-table/xpl-table-header-cell/xpl-table-header-cell.js +0 -402
  241. package/dist/collection/components/xpl-table/xpl-table-row/xpl-table-row.js +0 -121
  242. package/dist/components/lifecycle.js +0 -1
  243. package/dist/components/xpl-table-body.d.ts +0 -11
  244. package/dist/components/xpl-table-body.js +0 -1
  245. package/dist/components/xpl-table-cell.d.ts +0 -11
  246. package/dist/components/xpl-table-cell.js +0 -1
  247. package/dist/components/xpl-table-cell2.js +0 -1
  248. package/dist/components/xpl-table-footer-cell.d.ts +0 -11
  249. package/dist/components/xpl-table-footer-cell.js +0 -1
  250. package/dist/components/xpl-table-footer-cell2.js +0 -1
  251. package/dist/components/xpl-table-footer.d.ts +0 -11
  252. package/dist/components/xpl-table-footer.js +0 -1
  253. package/dist/components/xpl-table-header-cell2.js +0 -1
  254. package/dist/components/xpl-table-row.d.ts +0 -11
  255. package/dist/components/xpl-table-row.js +0 -1
  256. package/dist/docs/xpl-table/xpl-table-body/readme.md +0 -10
  257. package/dist/docs/xpl-table/xpl-table-cell/readme.md +0 -33
  258. package/dist/docs/xpl-table/xpl-table-footer/readme.md +0 -10
  259. package/dist/docs/xpl-table/xpl-table-footer-cell/readme.md +0 -30
  260. package/dist/docs/xpl-table/xpl-table-header-cell/readme.md +0 -66
  261. package/dist/docs/xpl-table/xpl-table-row/readme.md +0 -19
  262. package/dist/types/components/xpl-table/utils/move-row-dom.d.ts +0 -3
  263. package/dist/types/components/xpl-table/utils/table-internal.d.ts +0 -8
  264. package/dist/types/components/xpl-table/xpl-table-body/xpl-table-body.d.ts +0 -3
  265. package/dist/types/components/xpl-table/xpl-table-cell/xpl-table-cell.d.ts +0 -11
  266. package/dist/types/components/xpl-table/xpl-table-footer/xpl-table-footer.d.ts +0 -3
  267. package/dist/types/components/xpl-table/xpl-table-footer-cell/xpl-table-footer-cell.d.ts +0 -4
  268. package/dist/types/components/xpl-table/xpl-table-header-cell/xpl-table-header-cell.d.ts +0 -32
  269. package/dist/types/components/xpl-table/xpl-table-row/xpl-table-row.d.ts +0 -13
  270. /package/dist/types/components/{xpl-table/xpl-table-header → xpl-table-header}/xpl-table-header.d.ts +0 -0
@@ -105,11 +105,11 @@ export class InputTime {
105
105
  }));
106
106
  }
107
107
  render() {
108
- return (h(Host, { key: '6ed0e8da81a96e0e4e7078a7477c9a4ee92532ba', class: {
108
+ return (h(Host, { key: 'a48ebfd7cd0578b33bd11059f9bebb342bf954f7', class: {
109
109
  'xpl-input-time': true,
110
110
  [`xpl-input-time--mode-${this.mode}`]: true,
111
111
  'xpl-input-time--error': !!this.hasErrorState,
112
- } }, h("xpl-input", { key: 'bae0f7e9b9e3f14b5d780a0300ef672da9301596', pre: h("xpl-icon", { class: "xpl-input-time__clock-icon", icon: "clock", size: 24 }), post: this.timeFormat === '12h' ? this.amPm || 'AM' : null, type: "text", _id: this.inputId, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, placeholder: this.placeholder, max: this.max, min: this.min, onInput: this.handleInput, value: this.formattedValue, onFocusEvent: this.handleFocus, onBlurEvent: this.handleBlur, onClick: this.handleClick }), !this.readonly && !this.disabled && (h("xpl-dropdown", { key: 'cd8ae7e4c7d130bdbf44aeb2f806b3c9a490d8bb', options: this.options, isOpen: this.showOptions, ref: (el) => {
112
+ } }, h("xpl-input", { key: '68089e0bd5b0ed7d88917094eafe529637947380', pre: h("xpl-icon", { class: "xpl-input-time__clock-icon", icon: "clock", size: 24 }), post: this.timeFormat === '12h' ? this.amPm || 'AM' : null, type: "text", _id: this.inputId, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, placeholder: this.placeholder, max: this.max, min: this.min, onInput: this.handleInput, value: this.formattedValue, onFocusEvent: this.handleFocus, onBlurEvent: this.handleBlur, onClick: this.handleClick }), !this.readonly && !this.disabled && (h("xpl-dropdown", { key: '1bbe4a3a42c02ff985a26e7547c54f0bbdc92ce0', options: this.options, isOpen: this.showOptions, ref: (el) => {
113
113
  this.dropdown = el;
114
114
  }, class: "xpl-input-time__dropdown" }))));
115
115
  }
@@ -1,4 +1,4 @@
1
- import { Host, h, } from "@stencil/core";
1
+ import { h, Host, } from "@stencil/core";
2
2
  import { v4 as uuid } from "uuid";
3
3
  export class Input {
4
4
  constructor() {
@@ -16,6 +16,10 @@ export class Input {
16
16
  this.isInternational = true;
17
17
  this.ariaLabel = '';
18
18
  this.type = 'text';
19
+ this.handleChildValueChange = (event) => {
20
+ event.stopPropagation();
21
+ this.valueChange.emit(event.detail);
22
+ };
19
23
  this.valueChanged = (event) => {
20
24
  const target = event.target;
21
25
  this.valueChange.emit(target.value);
@@ -103,19 +107,19 @@ export class Input {
103
107
  var _a, _b, _c, _d, _e, _f;
104
108
  switch (this.type) {
105
109
  case 'file':
106
- return (h("xpl-input-file", { accept: this.accept, disabled: this.disabled, hideAcceptText: this.hideAcceptText, hideFileNames: this.hideFileNames, hideTriggerOnSelect: this.hideTriggerOnSelect, multiple: this.multiple, name: this.name, _id: this._id }, h("slot", { name: "trigger" })));
110
+ return (h("xpl-input-file", { accept: this.accept, disabled: this.disabled, hideAcceptText: this.hideAcceptText, hideFileNames: this.hideFileNames, hideTriggerOnSelect: this.hideTriggerOnSelect, multiple: this.multiple, name: this.name, onInputChange: this.handleChildValueChange, _id: this._id }, h("slot", { name: "trigger" })));
107
111
  case 'color':
108
- return (h("xpl-input-color", { disabled: this.disabled, value: this.value, placeholder: this.placeholder, required: this.required, hideEyeDropper: this.hideEyeDropper }));
112
+ return (h("xpl-input-color", { disabled: this.disabled, value: this.value, placeholder: this.placeholder, required: this.required, hideEyeDropper: this.hideEyeDropper, onInputChange: this.handleChildValueChange }));
109
113
  case 'date':
110
- return (h("xpl-input-date", { inputId: this._id, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, value: this.value, placeholder: this.placeholder, post: this.post, pre: this.pre, max: this.max, min: this.min, dateFormat: this.dateFormat, mode: this.mode }));
114
+ return (h("xpl-input-date", { inputId: this._id, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, value: this.value, placeholder: this.placeholder, post: this.post, pre: this.pre, max: this.max, min: this.min, dateFormat: this.dateFormat, mode: this.mode, onValueChange: this.handleChildValueChange }));
111
115
  case 'time':
112
- return (h("xpl-input-time", { inputId: this._id, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, value: this.value, placeholder: this.placeholder, max: this.max, min: this.min, step: this.step, mode: this.mode, timeFormat: this.timeFormat, allowCustomOption: this.allowCustomOption }));
116
+ return (h("xpl-input-time", { inputId: this._id, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, value: this.value, placeholder: this.placeholder, max: this.max, min: this.min, step: this.step, mode: this.mode, timeFormat: this.timeFormat, allowCustomOption: this.allowCustomOption, onValueChange: this.handleChildValueChange }));
113
117
  case 'phone':
114
- return (h("xpl-input-phone", { inputId: this._id, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, value: this.value, placeholder: this.placeholder, defaultCountry: this.defaultCountry, preferredCountries: this.preferredCountries, isInternational: this.isInternational }));
118
+ return (h("xpl-input-phone", { inputId: this._id, disabled: this.disabled, name: this.name, required: this.required, readonly: this.readonly, value: this.value, placeholder: this.placeholder, defaultCountry: this.defaultCountry, preferredCountries: this.preferredCountries, isInternational: this.isInternational, onValueChange: this.handleChildValueChange }));
115
119
  case 'search': {
116
120
  const hasVisibleLabel = Boolean(((_a = this.label) !== null && _a !== void 0 ? _a : '').trim());
117
121
  const hasErrorMessage = Boolean(this.error && this.error.length > 0);
118
- return (h("xpl-input-search", { ariaLabel: ((_b = this.ariaLabel) !== null && _b !== void 0 ? _b : '').trim() || 'Search', autocomplete: (_c = this.autocomplete) !== null && _c !== void 0 ? _c : 'off', disabled: this.disabled, errorMessageId: hasErrorMessage ? `${this._id}-error` : undefined, hasError: hasErrorMessage, hasVisibleLabel: hasVisibleLabel, inputId: this._id, name: this.name, onBlurEvent: this.handleSearchBlurForward, onFocusEvent: this.handleSearchFocusForward, onSearch: this.handleSearchCommit, placeholder: (_d = this.placeholder) !== null && _d !== void 0 ? _d : 'Search', readonly: this.readonly, ref: (el) => {
122
+ return (h("xpl-input-search", { ariaLabel: ((_b = this.ariaLabel) !== null && _b !== void 0 ? _b : '').trim() || 'Search', autocomplete: (_c = this.autocomplete) !== null && _c !== void 0 ? _c : 'off', disabled: this.disabled, errorMessageId: hasErrorMessage ? `${this._id}-error` : undefined, hasError: hasErrorMessage, hasVisibleLabel: hasVisibleLabel, inputId: this._id, name: this.name, onBlurEvent: this.handleSearchBlurForward, onFocusEvent: this.handleSearchFocusForward, onSearch: this.handleSearchCommit, onValueChange: this.handleChildValueChange, placeholder: (_d = this.placeholder) !== null && _d !== void 0 ? _d : 'Search', readonly: this.readonly, ref: (el) => {
119
123
  this.searchInputRef = el !== null && el !== void 0 ? el : undefined;
120
124
  }, required: this.required, shape: (_e = this.shape) !== null && _e !== void 0 ? _e : 'rounded', value: (_f = this.value) !== null && _f !== void 0 ? _f : '' }));
121
125
  }
@@ -147,13 +151,13 @@ export class Input {
147
151
  if (type === 'password' && this.passwordVisible) {
148
152
  type = 'text';
149
153
  }
150
- return (h(Host, { key: '21535bfebdb899ef3bf28ae4ac252ffcc8b03388', class: {
154
+ return (h(Host, { key: '406ab6d1b4d43ceb06cdb819cec8699d2d3322b3', class: {
151
155
  'xpl-input': true,
152
156
  'xpl-input--disabled': this.disabled,
153
157
  'xpl-input--error': hasError,
154
158
  'xpl-input--readonly': this.readonly,
155
159
  [`xpl-input--${this.type}`]: true,
156
- } }, this.label && (h("label", { key: 'f72b35d866295451cf74832dd191853e77190590', class: "xpl-input-label", htmlFor: this._id }, this.label, this.description && h("small", { key: '712910cd0e7a1db84add0f1483fdc0da6c38a07d' }, this.description))), this.renderInput(), ((_a = this.error) === null || _a === void 0 ? void 0 : _a.length) > 0 && (h("label", { key: 'd8fcab92ea7f4989e9d2db1117e689ad9a26ced8', class: "xpl-input-error", htmlFor: this._id, id: `${this._id}-error` }, h("xpl-icon", { key: 'cbe4f7792ea586c78b7bc0f34d277bfa5977d50e', icon: "alert-circle", size: 16 }), h("span", { key: '91f88da21c48f0bf069e4c20205a81cfbb30fb1e' }, this.error)))));
160
+ } }, this.label && (h("label", { key: 'ab7ea9eb5cb82e6b602ce93ab3da482c12f59078', class: "xpl-input-label", htmlFor: this._id }, this.label, this.description && h("small", { key: '37435c5f1d3d8a30acba7788a7d215921e679327' }, this.description))), this.renderInput(), ((_a = this.error) === null || _a === void 0 ? void 0 : _a.length) > 0 && (h("label", { key: '57b66daa234d93d9f6d7ad582380960013596919', class: "xpl-input-error", htmlFor: this._id, id: `${this._id}-error` }, h("xpl-icon", { key: '9a14b46934a8d7edc5f5e48c3fecf87441e741ca', icon: "alert-circle", size: 16 }), h("span", { key: 'badecb1aba3b3ff35cbcf6d7cb4d5355844951e6' }, this.error)))));
157
161
  }
158
162
  static get is() { return "xpl-input"; }
159
163
  static get properties() {
@@ -830,14 +834,14 @@ export class Input {
830
834
  }
831
835
  static get events() {
832
836
  return [{
833
- "method": "focusEvent",
834
- "name": "focusEvent",
837
+ "method": "blurEvent",
838
+ "name": "blurEvent",
835
839
  "bubbles": true,
836
840
  "cancelable": true,
837
841
  "composed": true,
838
842
  "docs": {
839
843
  "tags": [],
840
- "text": "The event handler for the focus event"
844
+ "text": "The event handler for the blur event"
841
845
  },
842
846
  "complexType": {
843
847
  "original": "FocusEvent",
@@ -850,14 +854,14 @@ export class Input {
850
854
  }
851
855
  }
852
856
  }, {
853
- "method": "blurEvent",
854
- "name": "blurEvent",
857
+ "method": "focusEvent",
858
+ "name": "focusEvent",
855
859
  "bubbles": true,
856
860
  "cancelable": true,
857
861
  "composed": true,
858
862
  "docs": {
859
863
  "tags": [],
860
- "text": "The event handler for the blur event"
864
+ "text": "The event handler for the focus event"
861
865
  },
862
866
  "complexType": {
863
867
  "original": "FocusEvent",
@@ -870,14 +874,14 @@ export class Input {
870
874
  }
871
875
  }
872
876
  }, {
873
- "method": "valueChange",
874
- "name": "valueChange",
877
+ "method": "inputEvent",
878
+ "name": "inputEvent",
875
879
  "bubbles": true,
876
880
  "cancelable": true,
877
881
  "composed": true,
878
882
  "docs": {
879
883
  "tags": [],
880
- "text": "Event that emits the current value of the input (including search fields)."
884
+ "text": "Event that emits the current value of the input\n\nApplies to text-like inputs and search inputs."
881
885
  },
882
886
  "complexType": {
883
887
  "original": "string",
@@ -885,14 +889,14 @@ export class Input {
885
889
  "references": {}
886
890
  }
887
891
  }, {
888
- "method": "inputEvent",
889
- "name": "inputEvent",
892
+ "method": "search",
893
+ "name": "search",
890
894
  "bubbles": true,
891
895
  "cancelable": true,
892
896
  "composed": true,
893
897
  "docs": {
894
898
  "tags": [],
895
- "text": "Event that emits the current value of the input\n\nApplies to text-like inputs and search inputs."
899
+ "text": "Emitted when the user commits a search (Enter with no enclosing form owner, or submit of the\ninternal search form). `event.detail` is the trimmed query string.\n\nApplies to search inputs (`type=\"search\"`)."
896
900
  },
897
901
  "complexType": {
898
902
  "original": "string",
@@ -900,14 +904,14 @@ export class Input {
900
904
  "references": {}
901
905
  }
902
906
  }, {
903
- "method": "search",
904
- "name": "search",
907
+ "method": "valueChange",
908
+ "name": "valueChange",
905
909
  "bubbles": true,
906
910
  "cancelable": true,
907
911
  "composed": true,
908
912
  "docs": {
909
913
  "tags": [],
910
- "text": "Emitted when the user commits a search (Enter with no enclosing form owner, or submit of the\ninternal search form). `event.detail` is the trimmed query string.\n\nApplies to search inputs (`type=\"search\"`)."
914
+ "text": "Event that emits the current value of the input (including search fields)."
911
915
  },
912
916
  "complexType": {
913
917
  "original": "string",
@@ -13,7 +13,7 @@ export class LargeCard {
13
13
  render() {
14
14
  const contentSlot = 'graph-content';
15
15
  const hasContentSlot = this.el.querySelector(`[slot="${contentSlot}"]`);
16
- return (h(Host, { key: '886078965cb1ca87fd9c4f45a8b06f089a4b2e04', role: "group", class: `xpl-large-card ${this.link ? 'xpl-large-card__link' : ''}`, tabindex: "0" }, h("dt", { key: '1c2006c9167b2d46262b222ace3c5e9135863783', class: "xpl-large-card__header" }, h("header", { key: '21ba4629c7e3d0d9dff98f9dde2ac4bc9f1f494e' }, h("slot", { key: 'd50991dc4fcca6c56c04c7cc9a401f0894035aa2', name: "title" }, this.name), this.link && (h("span", { key: '35b1b15786c1674f6d1797ec3b04da81b27d5d3a', class: "xpl-data-card__header-arrow" }, h("xpl-icon", { key: 'f52a7a39b3d044341296d88adb9d2bc07cdec9ab', icon: "chevron-right", size: 16 })))), this.description && (h("div", { key: 'bac9d6cec27272d277c991c81e651714603066a2', class: "xpl-large-card__description" }, this.description))), h("dd", { key: '9da3ca8ec575a6755f1f47065299ec3ab3e5169b', class: "xpl-large-card__body" }, hasContentSlot && h("slot", { key: '022da3c1e07c264441c58f7d42d6edca109a504d', name: contentSlot }))));
16
+ return (h(Host, { key: '9b45179112de8d1ac309520425a1a5c340493487', role: "group", class: `xpl-large-card ${this.link ? 'xpl-large-card__link' : ''}`, tabindex: "0" }, h("dt", { key: '4838c93a72df9ea794b3bbbd7f78f3e84a606109', class: "xpl-large-card__header" }, h("header", { key: 'eb4b2e8515be1e0763595e1cf646dc2b25bfb739' }, h("slot", { key: '62fdafe4b8ce03af5ff353c3ffa377fa547b572b', name: "title" }, this.name), this.link && (h("span", { key: 'ac0086a3402af5f12668a560ad418aaf40a56357', class: "xpl-data-card__header-arrow" }, h("xpl-icon", { key: '74eaffc571098a88d69d7248166889671ba441a2', icon: "chevron-right", size: 16 })))), this.description && (h("div", { key: 'd7d2499b7d8da9c09062ea5a456b588e52df2d82', class: "xpl-large-card__description" }, this.description))), h("dd", { key: '652e32e8b200e783f03608f97cbbcc70f59421e3', class: "xpl-large-card__body" }, hasContentSlot && h("slot", { key: '9d9f285d34bd8e2b6666577bd2023ae474636c4c', name: contentSlot }))));
17
17
  }
18
18
  static get is() { return "xpl-large-card"; }
19
19
  static get properties() {
@@ -368,12 +368,12 @@ export class List {
368
368
  var _a, _b, _c;
369
369
  const ariaLabelledBy = ((_a = this.labelledBy) === null || _a === void 0 ? void 0 : _a.trim()) ? this.labelledBy.trim() : undefined;
370
370
  const ariaLabel = !ariaLabelledBy && ((_b = this.label) === null || _b === void 0 ? void 0 : _b.trim()) ? this.label.trim() : undefined;
371
- return (h(Host, { key: '4290084c30b164abb653943a81783c35531d6316', role: "list", class: { 'xpl-list': true }, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy }, (_c = this.items) === null || _c === void 0 ? void 0 :
371
+ return (h(Host, { key: 'aaa6e1cfa2d87e61b239d9aa59c9e4647f05aade', role: "list", class: { 'xpl-list': true }, "aria-label": ariaLabel, "aria-labelledby": ariaLabelledBy }, (_c = this.items) === null || _c === void 0 ? void 0 :
372
372
  _c.map((item, index) => {
373
373
  var _a;
374
374
  const legacyRowId = (_a = item.id) !== null && _a !== void 0 ? _a : `item-${index}`;
375
375
  return (h("xpl-list-item", { key: `legacy-item-${legacyRowId}`, item: item, href: item.href, itemId: legacyRowId }));
376
- }), h("slot", { key: '55ce7202269eab851c0d753fd87ef2d5bf9f59a8' }), this.reorderable ? (h("div", { class: "xpl-list__reorder-live", "aria-live": "assertive", "aria-atomic": "true" }, this.reorderLiveMessage)) : null));
376
+ }), h("slot", { key: '89eb57b654baf9efbfd021e8c8db1fe074daa6d1' }), this.reorderable ? (h("div", { class: "xpl-list__reorder-live", "aria-live": "assertive", "aria-atomic": "true" }, this.reorderLiveMessage)) : null));
377
377
  }
378
378
  static get is() { return "xpl-list"; }
379
379
  static get properties() {
@@ -13,7 +13,7 @@ export class MainNav {
13
13
  this.navWidthHandler();
14
14
  }
15
15
  render() {
16
- return (h(Host, { key: '12ad41e2631d3cbab84b0bf536ffaf4fc31e7f8b', class: `xpl-main-nav xpl-main-nav--${this.width}`, "aria-label": "Sidebar" }, h("nav", { key: '54c0fcc49ddda8846279b8efc4afe0244e054211' }, h("header", { key: 'a1803d0c15541eb7d8b84d17d6e8c5613472dd7e', "aria-label": "Sidebar Header" }, h("slot", { key: 'cee7321f97dc59f7d7e844ecd8fab6ba656b92e9', name: "logo" }), h("slot", { key: 'f33cd91b4ad2e7dad79f89401477c7c2cc7636aa', name: "brand-name" })), h("div", { key: 'd7951aa7282d7be3107b15196679f2e55c76d847', class: "xpl-main-nav__main_section" }, h("slot", { key: '716d5be941f65ce57c2a9f12e4eeaedef83c0dd0', name: "navigation" })), h("footer", { key: '880b9fb98c5d0d2b4133cacb73a7c339590bf8bb', class: "xpl-main-nav__footer", "aria-label": "Sidebar Footer" }, h("slot", { key: '005c2efc4a3490e50a2b692d0e9dc7e2ce76d938', name: "footer" })))));
16
+ return (h(Host, { key: '122bf1f28c4fb1e460185989b2d517f1ddbfb22b', class: `xpl-main-nav xpl-main-nav--${this.width}`, "aria-label": "Sidebar" }, h("nav", { key: '4ed8ce484b394adee98ac16056ebbabcadd31625' }, h("header", { key: '829b7904323aeea21922a8d4a8fa33141cfa7913', "aria-label": "Sidebar Header" }, h("slot", { key: '8a6ea72fa4a1b26f9825a36b4ac7e64c9dbf476c', name: "logo" }), h("slot", { key: 'bf049e9ee7b83af1c4ebfef21681edcb35de9364', name: "brand-name" })), h("div", { key: 'a0ce70ccf5e4bac6346711127fba5278963910c1', class: "xpl-main-nav__main_section" }, h("slot", { key: 'bce360027342a1ef3e009bad6bc28e44c64dbd04', name: "navigation" })), h("footer", { key: '0b5f2e6cc890e4257f5e5503302492a236950f87', class: "xpl-main-nav__footer", "aria-label": "Sidebar Footer" }, h("slot", { key: '01dbe4d3834e1bc67b51108600688544e549ecde', name: "footer" })))));
17
17
  }
18
18
  static get is() { return "xpl-main-nav"; }
19
19
  static get properties() {
@@ -44,7 +44,7 @@ export class Modal {
44
44
  }
45
45
  }
46
46
  render() {
47
- return (h(Host, { key: '1014ca8cb29f3cfeb7f2cf580127b8fe61e7bcbd', class: "xpl-modal" }, this.isOpen && h("xpl-backdrop", { key: '0085b008fb42a998c2b27690102b8ae7f0e49c67' }), h("dialog", { key: '9e2d23304e10872ed3dc9a7520537e36bf8b8f5b', class: `xpl-modal__dialog xpl-modal-size--${this.size} xpl-modal--${this.isOpen ? 'is-open' : 'is-closed'}` }, h("div", { key: 'f55a9d85fc271183e0a6b7e60fb4ad5ed623b010', class: "xpl-modal__header" }, h("div", { key: 'ac105d7ee88148e4b10b26522f93fea70b8d6c06', class: "xpl-modal__title" }, this.variant === 'warning' && (h("xpl-icon", { key: '89ff5fda063dc98628c409ee51c124f17f9e7553', size: 20, icon: "alert-triangle", class: "xpl-modal__alert-icon" })), h("slot", { key: '03e05d28ca6449859ac58f0b0efaf3d8e24c1d62', name: "title" }), h("xpl-button", { key: 'ff132fcbaf91ab6922b12f667255594673e21bd5', type: "button", class: "xpl-modal__close-button", "icon-only": true, size: "sm", variant: "tertiary", onClick: this.handleDialogClose }, h("xpl-icon", { key: '6d712ffc1de66d43591ccf71b08ed5e823fc4c8f', icon: "x" }))), h("div", { key: 'ff5f20b209f6d704d0d20561818ca3ea5b353fce', class: "xpl-modal__subtitle" }, h("slot", { key: 'de25d1ab35729ad5ee0e279311285eab20fb7669', name: "subtitle" }))), h("div", { key: '286f34b54309527c836cb7cc06018ffc577c500f', class: "xpl-modal__body" }, h("slot", { key: '960036c7d3da774ad0f59ccf2c859d7ba3ec3a98', name: "body" })), h("div", { key: '24f7db0e4153d9f4105d787abdc1fe491ba6633c', class: "xpl-modal__footer" }, h("slot", { key: '4f096e57455b20caec555a008a14d411f40b53d7', name: "tertiary" }), h("slot", { key: '1fee8182d892c3460fe30c20456e1b9139bafaec', name: "secondary" }), h("slot", { key: 'e2b91a7af9f34c297d6c311823c91f9a0ab4059c', name: "primary" })))));
47
+ return (h(Host, { key: '310913d620acf72531ecb06aa6cd2180bb58d13b', class: "xpl-modal" }, this.isOpen && h("xpl-backdrop", { key: 'd95693fd09c2f0a8024f3cb69a021f0bd79f7916' }), h("dialog", { key: '5cffd3cfdcc6033baa1d9e3e5fdf56b8411a8975', class: `xpl-modal__dialog xpl-modal-size--${this.size} xpl-modal--${this.isOpen ? 'is-open' : 'is-closed'}` }, h("div", { key: '2d0be8e91065d464797d85cd1b98272292eacb09', class: "xpl-modal__header" }, h("div", { key: 'cb7d8594ed217599bcf0e2efa88d72afe0fff758', class: "xpl-modal__title" }, this.variant === 'warning' && (h("xpl-icon", { key: 'fb7dd69369accc0c98ef8762ca457b6368ca0036', size: 20, icon: "alert-triangle", class: "xpl-modal__alert-icon" })), h("slot", { key: '36a6d3d38d35064f81740504090fbbcdf2125097', name: "title" }), h("xpl-button", { key: 'db84ecf685afec8d0d783b433f8aa030acc436bb', type: "button", class: "xpl-modal__close-button", "icon-only": true, size: "sm", variant: "tertiary", onClick: this.handleDialogClose }, h("xpl-icon", { key: 'bf241c6636ace6e182bf259bd24754646dc7f151', icon: "x" }))), h("div", { key: '105fa1a5b9d927bda5ca5521bbb8211cb07ab8e8', class: "xpl-modal__subtitle" }, h("slot", { key: 'd25d6d8bb95cd51f075dd7f9b5e1e199dac3efb0', name: "subtitle" }))), h("div", { key: '3b194a36ad0f4446149027544c16a25ba27f2cec', class: "xpl-modal__body" }, h("slot", { key: '077e5b70115e3e906cd9ea7181c51615799c77e8', name: "body" })), h("div", { key: '687bd9ca45af20945ab5461ceb68ec099a30c50b', class: "xpl-modal__footer" }, h("slot", { key: '73d5884708efd296a701c37e02663668fcfd37d8', name: "tertiary" }), h("slot", { key: 'bad90d2355b8c015e19b1e450b5a2ce96e5ad55d', name: "secondary" }), h("slot", { key: 'c601b66edc9fb2c082ccc713d6df95f15bd604ef', name: "primary" })))));
48
48
  }
49
49
  static get is() { return "xpl-modal"; }
50
50
  static get properties() {
@@ -9,11 +9,11 @@ export class NavItem {
9
9
  }
10
10
  }
11
11
  render() {
12
- return (h(Host, { key: '5e0a171c719802e96d48f7d635c189563387fade', class: "xpl-nav-item", role: "listitem", onClick: () => {
12
+ return (h(Host, { key: 'b3a214a57ad57e9db1bbfd6a1809999ce0575a82', class: "xpl-nav-item", role: "listitem", onClick: () => {
13
13
  if (this.navControl) {
14
14
  this.onNavToggle();
15
15
  }
16
- } }, h("slot", { key: 'aff0155598a1b64d50168552ff251b824d00a86f', name: "link" }, h("slot", { key: '28da4593d2302b2867b0792562dc5b7b3ddd6983', name: "icon" }), h("slot", { key: '93e12751d2320608ee7a10d73eef67a1c1bb5443' }))));
16
+ } }, h("slot", { key: '0f2a74dc4fd6f419a01106d872a5f6b5066a21a8', name: "link" }, h("slot", { key: '234b41ca18d65ec3423ff580d983d24b483641cf', name: "icon" }), h("slot", { key: 'cdb0ac59997cd1c557b05c6c8d8f60ae78d28a4d' }))));
17
17
  }
18
18
  static get is() { return "xpl-nav-item"; }
19
19
  static get properties() {
@@ -37,3 +37,21 @@ Pagination.parameters = {
37
37
  url: 'https://www.figma.com/design/MjjYek73MFnHmVNdm45Sd1/Apollo-Web?node-id=9-1407&p=f&t=01tbTrRZyfvVafsA-11',
38
38
  },
39
39
  };
40
+ export const PaginationWithPageControl = (args) => {
41
+ const { totalPages, withPageControl } = args;
42
+ return `
43
+ <div style="min-height: 120vh; display: flex; align-items: flex-end; padding: 24px;">
44
+ <xpl-pagination total-pages="${totalPages}" with-page-control="${withPageControl}"></xpl-pagination>
45
+ </div>
46
+ `;
47
+ };
48
+ PaginationWithPageControl.args = {
49
+ totalPages: 5,
50
+ withPageControl: true,
51
+ };
52
+ PaginationWithPageControl.parameters = {
53
+ layout: 'fullscreen',
54
+ 'web-component': {
55
+ render: PaginationWithPageControl(PaginationWithPageControl.args),
56
+ },
57
+ };
@@ -59,19 +59,23 @@ 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: '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) => ({
62
+ return (h(Host, { key: 'fad9cdff4010b4b5ac842633bf7daf09b4dbd5d4', class: {
63
+ 'xpl-pagination': true,
64
+ 'xpl-pagination__with-page-control': this.withPageControl,
65
+ 'xpl-pagination__no-page-control': !this.withPageControl,
66
+ } }, this.withPageControl && (h("div", { key: 'eb125851b89aa1422ec3e5d5e336fcbecd07489e', class: "xpl-pagination__rows-per-page" }, h("label", { key: '5f2aa4c45d183827317a74cf4700981b6b0e7f2b', class: "xpl-pagination__rows-label" }, "Rows per page:"), h("xpl-select", { key: '7ba2987a24b3228d9b59320f29b22b5819f85546', class: "xpl-pagination__rows-per-page-select", dropdownFlipFallbackPlacements: ['bottom-start'], dropdownPlacement: "top-start", choices: this.rowsPerPageOptionsArray.map((option) => ({
63
67
  label: option.toString(),
64
68
  value: option.toString(),
65
69
  isSelected: option === this.selectedRowsPerPage,
66
70
  })), ref: (el) => {
67
71
  this.rowsPerPageSelectRef = el;
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) => ({
72
+ } }))), h("div", { key: '8bab9db1cecfdaeeb760b0e4e1afb393ff3a3fe7', class: "xpl-pagination__pager" }, h("button", { key: '19efd8a9aee2b05f875d2db34c7cdd174c845f60', 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: 'a77a15c649a6f2c86b100d1687b4a099acc18602', icon: "arrow-left", size: 20 })), h("xpl-select", { key: '5778cad67d3a4b930b1f89b0e49c30e941e23259', class: "xpl-pagination__page-select", dropdownFlipFallbackPlacements: ['bottom-start'], dropdownPlacement: "top-start", choices: Array.from({ length: this.totalPages }, (_, index) => ({
69
73
  label: `Page ${index + 1}`,
70
74
  value: (index + 1).toString(),
71
75
  isSelected: index + 1 === this.currentPage,
72
76
  })), "custom-display-value": true, ref: (el) => {
73
77
  this.pageSelectRef = el;
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 })))));
78
+ } }, h("div", { key: 'd0ae655a0100c2e81c8f7bdc2c8d3072f00cc7c9', slot: "custom-display-value" }, `${this.currentPage} of ${this.totalPages}`)), h("button", { key: 'ca6c7eb4fd277344f340b83673f1e43cb0c9fe99', 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: 'd18efdcb7e67ab908fbf79fc475993cf656b150c', icon: "arrow-right", size: 20 })))));
75
79
  }
76
80
  static get is() { return "xpl-pagination"; }
77
81
  static get properties() {
@@ -6,11 +6,11 @@ export class XplPanel {
6
6
  }
7
7
  render() {
8
8
  const hasAccent = this.accent !== 'none';
9
- return (h(Host, { key: 'a9618f21b7aba5804881ec509d47909b87ad9aa5', class: {
9
+ return (h(Host, { key: 'e9a747ba679f6f9f907d13217f329947bff93e31', 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: '5b92aa4395658996de2736941d6c0d0262903013', "aria-hidden": "true", class: "xpl-panel__accent" }), h("div", { key: '5b22eb3d1911ce2d68876c0bc0bc61f947c830f9', class: "xpl-panel__content" }, h("slot", { key: 'b2f331aa8ea4328b0e50736d97361a7bfcde60ed' }))));
13
+ } }, hasAccent && h("div", { key: 'b777fd4a81574ff9276582b256b673cccfc63a34', "aria-hidden": "true", class: "xpl-panel__accent" }), h("div", { key: '5fa5ba4c2bfa13d7dcaee603e96ec9b77d103b13', class: "xpl-panel__content" }, h("slot", { key: 'c99b797e076c2641ae205181479dabb38f9ea009' }))));
14
14
  }
15
15
  static get is() { return "xpl-panel"; }
16
16
  static get properties() {
@@ -206,16 +206,16 @@ export class Popover {
206
206
  });
207
207
  }
208
208
  render() {
209
- return (h(Host, { key: '67ecd18580166f1582c29e33f1485bf67590b9f5' }, h("div", { key: 'bba42a3474432557bfc71705c2d5206493fed64b', class: {
209
+ return (h(Host, { key: '6fe479a39ee565772785c7b540c4e0915c5403e4' }, h("div", { key: '350452ca097bab13e7f06b3d1aa5e2774d80104b', 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: '7960b727b609da6b0e949e4889e217b0f3efb6c9', role: "button", tabindex: "0", "aria-haspopup": "dialog", "aria-expanded": this.isOpenState ? 'true' : 'false', onClick: this.togglePopover, ref: (el) => {
213
+ } }, h("span", { key: '0a9365be21ef70855bd7d304a77fc80d19ba16d3', 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: '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: {
215
+ } }, h("slot", { key: 'df227b5bb7683599b4f82ef2a8c9d840b4920a61', name: "trigger" })), this.display === 'arrow' && (h("div", { key: 'dbf0b6998b3aa6ae40089e13bef86878037bbe24', class: "xpl-popover__arrow" }, h("svg", { key: '2bf57b69abc556ba9a86b59f6347a2c8d81a67c3', width: "17", height: "14", xmlns: "http://www.w3.org/2000/svg" }, h("path", { key: '36fef83ea3e2d3d4b388f5bdfe74d0bdc034be9d', d: "M0 5h15l-7.5 7.5L0 5Z", fill: "white", stroke: "none", class: "arrow-fill" }), h("path", { key: '1187a6ec22457ab6086753cf199398705541b1b4', d: "M0 5 L7.5 12.5 L15 5", fill: "none", stroke: "black", "stroke-width": "1", class: "arrow-stroke" })))), h("div", { key: '7c6f063094de1462629a0db380597374c4231855', 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: '4bd22aa19dedb6fb77355caafcd009413c8ad7d9' })))));
218
+ }, ref: (el) => (this.contentRef = el) }, h("slot", { key: '41062b776eed58b98452bb5a8d3b7099ac1138d2' })))));
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: '4161cfe080a629f1c69c14a0e0a553df950d57a8', class: {
28
+ return (h(Host, { key: 'e5cc7a2231ed74242241723c9f0a57444a8000bb', 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: '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)))));
33
+ } }, h("div", { key: '3212fdea66e2cd3edffc36f99c9edc197f15bcee', class: "xpl-progress-bar__wrapper" }, (this.label || this.showStatusIcon) && (h("div", { key: '004c0b9203df13c6818fdbb8c928a47d86e7388e', class: "xpl-progress-bar__header" }, this.label && h("div", { key: 'ce735edff19cc004f979a582618c968260cd23c3', class: "xpl-progress-bar__label" }, this.label), this.showStatusIcon && (h("div", { key: '3a9f143b79152aa3208593c9249a62d819c2967a', class: "xpl-progress-bar__icon" }, this.isError ? (h("xpl-icon", { icon: "circle-xmark-1" })) : (h("xpl-icon", { icon: "circle-check-1" })))))), h("div", { key: '517787d0ff39c082a3d4763b78b16a9ce9235b4b', 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: '488c5092b96a1e9a5a08f9b090f94fe66f6f1490', class: "xpl-progress-bar__helper" }, this.helperText)))));
34
34
  }
35
35
  static get is() { return "xpl-progress-bar"; }
36
36
  static get properties() {
@@ -55,7 +55,7 @@ export class ProgressIndicator {
55
55
  ? `Progress: all ${totalSteps} ${totalSteps === 1 ? 'step' : 'steps'} complete`
56
56
  : `Progress: step ${currentStepNumber} of ${totalSteps}`
57
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)))));
58
+ return (h(Host, { key: '3a6f253693fd47f982541099a1729ca36d0ce64a', class: hostClasses, role: "group", "aria-label": ariaLabel }, h("div", { key: 'c25b47994c43135ed3147ca579bdc3d8124d7c8a', class: "xpl-progress-indicator-container", role: "list" }, steps.map((step, index) => this.renderStep(step, index)))));
59
59
  }
60
60
  static get is() { return "xpl-progress-indicator"; }
61
61
  static get properties() {
@@ -28,6 +28,12 @@ export default {
28
28
  name: {
29
29
  type: { name: 'string', required: false },
30
30
  },
31
+ selectedValue: {
32
+ type: { name: 'string', required: false },
33
+ description: 'When set, the radio is checked when `selectedValue` equals its `value`. ' +
34
+ 'Use this to drive radio-group selection from a single source of truth ' +
35
+ '(e.g. Vue v-model on a shared `selectedValue`).',
36
+ },
31
37
  },
32
38
  parameters: {
33
39
  actions: {
@@ -35,7 +41,7 @@ export default {
35
41
  },
36
42
  },
37
43
  };
38
- export const Radio = ({ label, description, checked, disabled, styled, value, name }) => {
44
+ export const Radio = ({ label, description, checked, disabled, styled, value, name, selectedValue, }) => {
39
45
  let attrs = '';
40
46
  if (description)
41
47
  attrs += ` description="${description}"`;
@@ -49,6 +55,8 @@ export const Radio = ({ label, description, checked, disabled, styled, value, na
49
55
  attrs += ` value="${value}"`;
50
56
  if (name)
51
57
  attrs += ` name="${name}"`;
58
+ if (selectedValue)
59
+ attrs += ` selected-value="${selectedValue}"`;
52
60
  const demoAttr = attrs.replace('value', 'value="demo"');
53
61
  return `
54
62
  <form>
@@ -65,6 +73,7 @@ Radio.args = {
65
73
  styled: false,
66
74
  value: '',
67
75
  name: 'demo-name',
76
+ selectedValue: '',
68
77
  };
69
78
  Radio.parameters = {
70
79
  layout: 'centered',
@@ -13,15 +13,21 @@ export class Radio {
13
13
  }
14
14
  };
15
15
  }
16
+ get isChecked() {
17
+ if (this.selectedValue !== undefined && this.value !== undefined) {
18
+ return this.selectedValue === this.value;
19
+ }
20
+ return Boolean(this.checked);
21
+ }
16
22
  render() {
17
- return (h(Host, { key: 'a96ab55137fedbfe00d68b660bd2d935208dc6c6', class: {
23
+ return (h(Host, { key: '1cda65b10ee03e06c30b2c501d7f2ec4153619f6', class: {
18
24
  'xpl-checkbox-radio-container': true,
19
25
  styled: this.styled,
20
26
  disabled: this.disabled,
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: {
27
+ } }, h("input", { key: 'b19a87e42feb5953ace4b8bd049427959c40a7e6', class: "xpl-radio", type: "radio", checked: this.isChecked, disabled: this.disabled, id: this.id, name: this.name, required: this.required, onChange: this.onChange, value: this.value }), h("label", { key: 'd07051460f7503a182b969eeafcb8eba5d61bef2', class: {
22
28
  'xpl-label': true,
23
29
  'xpl-label--disabled': this.disabled,
24
- }, htmlFor: this.id }, h("slot", { key: 'b9fe3e13de64776a9cc1afcd8f7c10f84be8c8bb' }), this.description && (h("small", { key: '6ecd217342fbfa9bb5022bb1298683ff87af1713', class: {
30
+ }, htmlFor: this.id }, h("slot", { key: '06835704869d514a0d3eb01d671b6bec42524e89' }), this.description && (h("small", { key: '3e798a699fa53ca6c932e6466b438ed47aa46148', class: {
25
31
  'xpl-description': true,
26
32
  'xpl-description--disabled': this.disabled,
27
33
  } }, this.description)))));
@@ -98,7 +104,7 @@ export class Radio {
98
104
  "optional": true,
99
105
  "docs": {
100
106
  "tags": [],
101
- "text": "The name attribute for the html input.\n(submittted in form as name/value pair)"
107
+ "text": "The name attribute for the html input.\n(submitted in form as name/value pair)"
102
108
  },
103
109
  "getter": false,
104
110
  "setter": false,
@@ -117,7 +123,7 @@ export class Radio {
117
123
  "optional": true,
118
124
  "docs": {
119
125
  "tags": [],
120
- "text": "The value attribute for the radio input.\n(submittted in form as name/value pair)"
126
+ "text": "The value attribute for the radio input.\n(submitted in form as name/value pair)"
121
127
  },
122
128
  "getter": false,
123
129
  "setter": false,
@@ -143,6 +149,25 @@ export class Radio {
143
149
  "reflect": false,
144
150
  "attribute": "required"
145
151
  },
152
+ "selectedValue": {
153
+ "type": "string",
154
+ "mutable": false,
155
+ "complexType": {
156
+ "original": "string",
157
+ "resolved": "string",
158
+ "references": {}
159
+ },
160
+ "required": false,
161
+ "optional": true,
162
+ "docs": {
163
+ "tags": [],
164
+ "text": "The currently selected value for the radio group this radio belongs to.\n\nWhen set, the radio renders as checked when `selectedValue` equals its\nown `value` prop. Use this to drive radio-group selection from a single\nsource of truth \u2014 e.g. Vue `v-model` on a shared `selectedValue` across\nevery radio in a group, where each radio still declares its own `value`.\n\nFalls back to the boolean `checked` prop when not set."
165
+ },
166
+ "getter": false,
167
+ "setter": false,
168
+ "reflect": false,
169
+ "attribute": "selected-value"
170
+ },
146
171
  "styled": {
147
172
  "type": "boolean",
148
173
  "mutable": false,
@@ -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: 'bf9cbd4351297a28d6d98d3bf1e0612fac1f5136', class: "xpl-secondary-nav" }, h("nav", { key: '764de50287c88f53f19005d50b177e85f71f7f43', "aria-label": "Secondary Nav" }, h("slot", { key: 'd7fe629382a06f62dde9f08db082854e986ba406' }))));
4
+ return (h(Host, { key: 'f4fdd93b13c1dc779c84e8b00b12caeff58df960', class: "xpl-secondary-nav" }, h("nav", { key: '4092d23357761026ad5fddfbc32a221d957cce1e', "aria-label": "Secondary Nav" }, h("slot", { key: 'c3ae9f1821a6d22babece27971cc1faf15037cdb' }))));
5
5
  }
6
6
  static get is() { return "xpl-secondary-nav"; }
7
7
  }
@@ -16,6 +16,7 @@ export class Select {
16
16
  constructor() {
17
17
  this.choices = [];
18
18
  this.selectIcon = 'chevron-down';
19
+ this.dropdownPlacement = 'bottom-start';
19
20
  this.mode = 'single';
20
21
  this.truncate = true;
21
22
  this.active = false;
@@ -222,21 +223,21 @@ export class Select {
222
223
  this.truncate &&
223
224
  !this.customDisplayValue;
224
225
  const truncatedText = `+ ${Math.abs(this.choicesState.filter((a) => a.isSelected).length - this.visibleChoices)} more`;
225
- return (h(Host, { key: 'c02b59988eee5073103958a24061c46aa286ea50', class: {
226
+ return (h(Host, { key: '09d3587fa268cb0621ea293d246e23cde93d75df', class: {
226
227
  'xpl-select': true,
227
228
  'xpl-select--disabled': this.disabled,
228
229
  'xpl-select--no-truncate': !this.truncate,
229
230
  [(_c = this.classNames) !== null && _c !== void 0 ? _c : '']: !!this.classNames,
230
231
  }, onKeyDown: this.handleTabKeyDown, ref: (el) => {
231
232
  this.container = el;
232
- } }, this.renderLabel(), h("div", { key: '189c9d2e3370876b6289ee16ee1b8927e5bfc0ee', class: {
233
+ } }, this.renderLabel(), h("div", { key: '007a61cc60c948d0691d6983cb197652084e417d', class: {
233
234
  'xpl-input': true,
234
235
  'xpl-input--disabled': this.disabled,
235
236
  'xpl-input--error': ((_d = this.error) === null || _d === void 0 ? void 0 : _d.length) >= 0,
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
+ } }, h("div", { key: 'e1edfe6e4b205bd6332f07031ee51ef7f9f6ac91', class: "xpl-input-wrapper" }, h("button", { key: '53d079f28b8a1bcdd5498287dfd88bb7a3ba7b50', class: "xpl-select__trigger", disabled: this.disabled, id: this.id, onKeyDown: this.handleTabKeyDown, onClick: (e) => {
237
238
  e.preventDefault();
238
239
  this.handleDropdownTrigger();
239
- }, type: "button" }, h("div", { key: '141643ae007e8f5827d4aeb8fdd2a95b14b003ff', class: {
240
+ }, type: "button" }, h("div", { key: '5cfec98b2e829ea48e96b373e09e740d5bf02ef6', class: {
240
241
  'xpl-select-value': true,
241
242
  'xpl-select-value--active': this.mode === 'multi' && this.value.length > 0,
242
243
  'has-value': this.value.length > 0,
@@ -256,7 +257,7 @@ export class Select {
256
257
  return this.renderSelectedTags();
257
258
  }
258
259
  return this.placeholder;
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
+ })(), isTextTruncated && truncatedText), h("xpl-icon", { key: '8bb01d1e8b206fb3c1963cdebcd293eeb2277e05', class: "xpl-select__chevron-down", icon: this.selectIcon }))), !this.disabled && (h("xpl-dropdown", { key: 'f5e770c4b26449f3025d172d768d6df69bd0ae03', ref: (el) => {
260
261
  this.dropdown = el;
261
262
  }, isOpen: this.dropdownOpenState, options: this.choicesState, selectedValues: this.selectedValues, mode: this.mode, triggerId: this.id, update: (_e, { component }) => {
262
263
  const { options } = component;
@@ -265,7 +266,7 @@ export class Select {
265
266
  }
266
267
  }, onIsOpenChange: (e) => {
267
268
  this.dropdownOpenState = e.detail;
268
- }, onWheel: this.handleDropdownScroll, anchorToTrigger: true })), this.renderError()), h("input", { key: 'd9d6cbc69fc5fc688b2dda6ea1ef99435d90fc94', type: "hidden", name: this.name, value: this.value })));
269
+ }, onWheel: this.handleDropdownScroll, anchorToTrigger: true, flipFallbackPlacements: this.dropdownFlipFallbackPlacements, placement: this.dropdownPlacement })), this.renderError()), h("input", { key: 'fe84c16780622e730100a58a948fc4fe27f6ddb5', type: "hidden", name: this.name, value: this.value })));
269
270
  }
270
271
  static get is() { return "xpl-select"; }
271
272
  static get properties() {
@@ -353,6 +354,57 @@ export class Select {
353
354
  "reflect": false,
354
355
  "attribute": "disabled"
355
356
  },
357
+ "dropdownFlipFallbackPlacements": {
358
+ "type": "unknown",
359
+ "mutable": false,
360
+ "complexType": {
361
+ "original": "Placement[]",
362
+ "resolved": "Placement[]",
363
+ "references": {
364
+ "Placement": {
365
+ "location": "import",
366
+ "path": "@floating-ui/dom",
367
+ "id": "../../node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts::Placement",
368
+ "referenceLocation": "Placement"
369
+ }
370
+ }
371
+ },
372
+ "required": false,
373
+ "optional": true,
374
+ "docs": {
375
+ "tags": [],
376
+ "text": "Additional placements to try for the options panel when the default\n`dropdownPlacement` does not fit. Passed to `xpl-dropdown` / Floating UI `flip`."
377
+ },
378
+ "getter": false,
379
+ "setter": false
380
+ },
381
+ "dropdownPlacement": {
382
+ "type": "string",
383
+ "mutable": false,
384
+ "complexType": {
385
+ "original": "Placement",
386
+ "resolved": "\"bottom\" | \"bottom-end\" | \"bottom-start\" | \"left\" | \"left-end\" | \"left-start\" | \"right\" | \"right-end\" | \"right-start\" | \"top\" | \"top-end\" | \"top-start\"",
387
+ "references": {
388
+ "Placement": {
389
+ "location": "import",
390
+ "path": "@floating-ui/dom",
391
+ "id": "../../node_modules/@floating-ui/dom/dist/floating-ui.dom.d.mts::Placement",
392
+ "referenceLocation": "Placement"
393
+ }
394
+ }
395
+ },
396
+ "required": false,
397
+ "optional": false,
398
+ "docs": {
399
+ "tags": [],
400
+ "text": "Initial Floating UI placement for the options panel (e.g. `top-start`, `bottom-start`).\nForwarded to the inner `xpl-dropdown` when the menu is open."
401
+ },
402
+ "getter": false,
403
+ "setter": false,
404
+ "reflect": false,
405
+ "attribute": "dropdown-placement",
406
+ "defaultValue": "'bottom-start'"
407
+ },
356
408
  "error": {
357
409
  "type": "string",
358
410
  "mutable": false,