@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
@@ -1,402 +0,0 @@
1
- import { Host, h } from "@stencil/core";
2
- import { XPL_TABLE_COLUMN_WIDTHS_CHANGE_EVENT, cycleSortDirection, getSortAffordanceIconName, } from "../utils/table-internal";
3
- export class TableHeaderCell {
4
- constructor() {
5
- this.align = 'left';
6
- this.checked = false;
7
- this.indeterminate = false;
8
- this.label = '';
9
- this.sortable = false;
10
- this.type = 'label';
11
- this.onHeaderInnerCheckboxChange = (ev) => {
12
- const { detail } = ev;
13
- const checked = typeof detail === 'boolean' ? detail : Boolean(detail);
14
- this.headerCheckboxChange.emit(checked);
15
- };
16
- this.onSortActivate = (event) => {
17
- event.preventDefault();
18
- event.stopPropagation();
19
- if (!this.sortable || this.type !== 'label')
20
- return;
21
- const columnIndex = this.getColumnIndex0();
22
- const sortKey = this.getSortKeySlug();
23
- if (!this.el.closest('xpl-table')) {
24
- this.sortDirection = cycleSortDirection(this.sortDirection);
25
- }
26
- this.headerSortChange.emit({
27
- columnIndex,
28
- sortKey,
29
- });
30
- };
31
- }
32
- watchColumnWidth() {
33
- this.notifyColumnWidthsChange();
34
- }
35
- watchWidth() {
36
- this.notifyColumnWidthsChange();
37
- }
38
- componentDidLoad() {
39
- this.notifyColumnWidthsChange();
40
- }
41
- notifyColumnWidthsChange() {
42
- this.el.dispatchEvent(new CustomEvent(XPL_TABLE_COLUMN_WIDTHS_CHANGE_EVENT, {
43
- bubbles: true,
44
- composed: true,
45
- }));
46
- }
47
- getColumnIndex0() {
48
- var _a, _b;
49
- return Array.from((_b = (_a = this.el.parentElement) === null || _a === void 0 ? void 0 : _a.children) !== null && _b !== void 0 ? _b : []).indexOf(this.el);
50
- }
51
- getSortKeySlug() {
52
- var _a, _b;
53
- const raw = ((_b = (_a = this.sortKey) !== null && _a !== void 0 ? _a : this.label) !== null && _b !== void 0 ? _b : '').trim();
54
- if (raw.length > 0) {
55
- return raw.replace(/ /g, '-').toLowerCase();
56
- }
57
- return `column-${this.getColumnIndex0()}`;
58
- }
59
- renderLabelContent() {
60
- if (this.sortable) {
61
- const iconName = getSortAffordanceIconName(this.sortDirection);
62
- const sortActive = this.sortDirection === 'asc' || this.sortDirection === 'desc';
63
- return (h("button", { type: "button", class: "xpl-table-header-cell__sort", onClick: this.onSortActivate }, h("span", { class: "xpl-table-header-cell__text" }, h("slot", null, this.label)), h("xpl-icon", { class: {
64
- 'xpl-table-header-cell__sort-icon': true,
65
- 'xpl-table-header-cell__sort-icon--active': sortActive,
66
- 'xpl-table-header-cell__sort-icon--default': !sortActive,
67
- }, icon: iconName, size: 16 })));
68
- }
69
- return (h("span", { class: "xpl-table-header-cell__text" }, h("slot", null, this.label)));
70
- }
71
- render() {
72
- const colIndex = this.getColumnIndex0() + 1;
73
- const renderContent = () => {
74
- var _a;
75
- switch (this.type) {
76
- case 'label':
77
- return this.renderLabelContent();
78
- case 'checkbox':
79
- return (h("xpl-checkbox", { ariaLabel: (_a = this.checkboxAriaLabel) !== null && _a !== void 0 ? _a : 'Select all rows', checked: this.checked, indeterminate: this.indeterminate, onCheckboxChange: this.onHeaderInnerCheckboxChange }));
80
- case 'icon':
81
- return h("xpl-icon", { icon: this.icon, size: 20 });
82
- case 'empty':
83
- return null;
84
- default:
85
- return '';
86
- }
87
- };
88
- const effectiveAlign = (this.type === 'checkbox' || this.type === 'icon') && this.align === 'left'
89
- ? 'center'
90
- : this.align;
91
- const alignClass = `xpl-table-header-cell--align-${effectiveAlign}`;
92
- const ariaSort = this.type === 'label' && this.sortable
93
- ? this.sortDirection === 'asc'
94
- ? 'ascending'
95
- : this.sortDirection === 'desc'
96
- ? 'descending'
97
- : 'none'
98
- : undefined;
99
- return (h(Host, { role: "columnheader", "aria-colindex": colIndex, class: {
100
- 'xpl-table-header-cell': true,
101
- [alignClass]: true,
102
- 'xpl-table-header-cell--checkbox': this.type === 'checkbox',
103
- 'xpl-table-header-cell--icon': this.type === 'icon',
104
- 'xpl-table-header-cell--empty': this.type === 'empty',
105
- 'xpl-table-header-cell--sortable': this.sortable && this.type === 'label',
106
- }, "aria-checked": this.type === 'checkbox'
107
- ? this.indeterminate
108
- ? 'mixed'
109
- : this.checked
110
- ? 'true'
111
- : 'false'
112
- : undefined, "aria-sort": ariaSort }, this.type === 'empty' ? null : renderContent()));
113
- }
114
- static get is() { return "xpl-table-header-cell"; }
115
- static get properties() {
116
- return {
117
- "align": {
118
- "type": "string",
119
- "mutable": false,
120
- "complexType": {
121
- "original": "'left' | 'right' | 'center'",
122
- "resolved": "\"center\" | \"left\" | \"right\"",
123
- "references": {}
124
- },
125
- "required": false,
126
- "optional": false,
127
- "docs": {
128
- "tags": [],
129
- "text": "Horizontal text alignment within the header cell."
130
- },
131
- "getter": false,
132
- "setter": false,
133
- "reflect": false,
134
- "attribute": "align",
135
- "defaultValue": "'left'"
136
- },
137
- "checkboxAriaLabel": {
138
- "type": "string",
139
- "mutable": false,
140
- "complexType": {
141
- "original": "string",
142
- "resolved": "string",
143
- "references": {}
144
- },
145
- "required": false,
146
- "optional": true,
147
- "docs": {
148
- "tags": [],
149
- "text": "Accessible name for the header checkbox (native `aria-label`).\nDefaults to \u201CSelect all rows\u201D when `type` is `checkbox`."
150
- },
151
- "getter": false,
152
- "setter": false,
153
- "reflect": false,
154
- "attribute": "checkbox-aria-label"
155
- },
156
- "checked": {
157
- "type": "boolean",
158
- "mutable": false,
159
- "complexType": {
160
- "original": "boolean",
161
- "resolved": "boolean",
162
- "references": {}
163
- },
164
- "required": false,
165
- "optional": false,
166
- "docs": {
167
- "tags": [],
168
- "text": "Whether the header checkbox is checked"
169
- },
170
- "getter": false,
171
- "setter": false,
172
- "reflect": false,
173
- "attribute": "checked",
174
- "defaultValue": "false"
175
- },
176
- "columnWidth": {
177
- "type": "string",
178
- "mutable": false,
179
- "complexType": {
180
- "original": "string",
181
- "resolved": "string",
182
- "references": {}
183
- },
184
- "required": false,
185
- "optional": true,
186
- "docs": {
187
- "tags": [],
188
- "text": "CSS grid track size for this column (e.g. `1fr`, `minmax(120px, 1fr)`, `auto`). When set, overrides `width`.\nUse this when you need flexible columns; default layout uses `auto` per column unless you set a track here."
189
- },
190
- "getter": false,
191
- "setter": false,
192
- "reflect": true,
193
- "attribute": "column-width"
194
- },
195
- "icon": {
196
- "type": "string",
197
- "mutable": false,
198
- "complexType": {
199
- "original": "string",
200
- "resolved": "string",
201
- "references": {}
202
- },
203
- "required": false,
204
- "optional": true,
205
- "docs": {
206
- "tags": [],
207
- "text": "Icon to display in the cell.\n\nSee [xpl-icon available icons](../xpl-icon/ICONS.md) for valid icon names."
208
- },
209
- "getter": false,
210
- "setter": false,
211
- "reflect": false,
212
- "attribute": "icon"
213
- },
214
- "indeterminate": {
215
- "type": "boolean",
216
- "mutable": false,
217
- "complexType": {
218
- "original": "boolean",
219
- "resolved": "boolean",
220
- "references": {}
221
- },
222
- "required": false,
223
- "optional": false,
224
- "docs": {
225
- "tags": [],
226
- "text": "Whether the checkbox is in indeterminate (partially selected) state"
227
- },
228
- "getter": false,
229
- "setter": false,
230
- "reflect": false,
231
- "attribute": "indeterminate",
232
- "defaultValue": "false"
233
- },
234
- "label": {
235
- "type": "string",
236
- "mutable": false,
237
- "complexType": {
238
- "original": "string",
239
- "resolved": "string",
240
- "references": {}
241
- },
242
- "required": false,
243
- "optional": true,
244
- "docs": {
245
- "tags": [],
246
- "text": "Text to display in the cell."
247
- },
248
- "getter": false,
249
- "setter": false,
250
- "reflect": false,
251
- "attribute": "label",
252
- "defaultValue": "''"
253
- },
254
- "sortable": {
255
- "type": "boolean",
256
- "mutable": false,
257
- "complexType": {
258
- "original": "boolean",
259
- "resolved": "boolean",
260
- "references": {}
261
- },
262
- "required": false,
263
- "optional": false,
264
- "docs": {
265
- "tags": [],
266
- "text": "When true (and `type` is `label`), renders a sort control (button + affordance icon)."
267
- },
268
- "getter": false,
269
- "setter": false,
270
- "reflect": false,
271
- "attribute": "sortable",
272
- "defaultValue": "false"
273
- },
274
- "sortDirection": {
275
- "type": "string",
276
- "mutable": true,
277
- "complexType": {
278
- "original": "'asc' | 'desc' | null",
279
- "resolved": "\"asc\" | \"desc\"",
280
- "references": {}
281
- },
282
- "required": false,
283
- "optional": true,
284
- "docs": {
285
- "tags": [],
286
- "text": "Active sort direction for this column when `sortable`. Set by `xpl-table` when used inside\na compositional table; may be set by the app for controlled updates."
287
- },
288
- "getter": false,
289
- "setter": false,
290
- "reflect": true,
291
- "attribute": "sort-direction"
292
- },
293
- "sortKey": {
294
- "type": "string",
295
- "mutable": false,
296
- "complexType": {
297
- "original": "string",
298
- "resolved": "string",
299
- "references": {}
300
- },
301
- "required": false,
302
- "optional": true,
303
- "docs": {
304
- "tags": [],
305
- "text": "When `sortable` is true, optional stable id used as the key in `sortChanged`\u2019s detail object.\nFalls back to a slug of `label` when omitted."
306
- },
307
- "getter": false,
308
- "setter": false,
309
- "reflect": false,
310
- "attribute": "sort-key"
311
- },
312
- "type": {
313
- "type": "string",
314
- "mutable": false,
315
- "complexType": {
316
- "original": "'label' | 'checkbox' | 'icon' | 'empty'",
317
- "resolved": "\"checkbox\" | \"empty\" | \"icon\" | \"label\"",
318
- "references": {}
319
- },
320
- "required": false,
321
- "optional": false,
322
- "docs": {
323
- "tags": [],
324
- "text": "The type of cell to render."
325
- },
326
- "getter": false,
327
- "setter": false,
328
- "reflect": false,
329
- "attribute": "type",
330
- "defaultValue": "'label'"
331
- },
332
- "width": {
333
- "type": "number",
334
- "mutable": false,
335
- "complexType": {
336
- "original": "number",
337
- "resolved": "number",
338
- "references": {}
339
- },
340
- "required": false,
341
- "optional": true,
342
- "docs": {
343
- "tags": [],
344
- "text": "Fixed width for this column in pixels (minimum 48px). Sets the grid track to `Npx`.\nIgnored when `columnWidth` is set. When omitted, the column track defaults to `auto` (content-sized)."
345
- },
346
- "getter": false,
347
- "setter": false,
348
- "reflect": true,
349
- "attribute": "width"
350
- }
351
- };
352
- }
353
- static get events() {
354
- return [{
355
- "method": "headerCheckboxChange",
356
- "name": "headerCheckboxChange",
357
- "bubbles": true,
358
- "cancelable": true,
359
- "composed": true,
360
- "docs": {
361
- "tags": [],
362
- "text": "Emitted when header checkbox changes"
363
- },
364
- "complexType": {
365
- "original": "boolean",
366
- "resolved": "boolean",
367
- "references": {}
368
- }
369
- }, {
370
- "method": "headerSortChange",
371
- "name": "headerSortChange",
372
- "bubbles": true,
373
- "cancelable": true,
374
- "composed": true,
375
- "docs": {
376
- "tags": [],
377
- "text": "Emitted when a sortable label header is activated. Parent `xpl-table` coordinates columns and emits `sortChanged`."
378
- },
379
- "complexType": {
380
- "original": "HeaderSortChangeDetail",
381
- "resolved": "HeaderSortChangeDetail",
382
- "references": {
383
- "HeaderSortChangeDetail": {
384
- "location": "local",
385
- "path": "/home/runner/work/apollo/apollo/packages/apollo-core/src/components/components/xpl-table/xpl-table-header-cell/xpl-table-header-cell.tsx",
386
- "id": "src/components/components/xpl-table/xpl-table-header-cell/xpl-table-header-cell.tsx::HeaderSortChangeDetail"
387
- }
388
- }
389
- }
390
- }];
391
- }
392
- static get elementRef() { return "el"; }
393
- static get watchers() {
394
- return [{
395
- "propName": "columnWidth",
396
- "methodName": "watchColumnWidth"
397
- }, {
398
- "propName": "width",
399
- "methodName": "watchWidth"
400
- }];
401
- }
402
- }
@@ -1,121 +0,0 @@
1
- import { Host, h } from "@stencil/core";
2
- function isTableCell(node) {
3
- return node.nodeName === 'XPL-TABLE-CELL';
4
- }
5
- export class XplTableRow {
6
- constructor() {
7
- this.disabled = false;
8
- this.selected = false;
9
- }
10
- onDisabledChange() {
11
- this.propagateDisabledToCells();
12
- }
13
- connectedCallback() {
14
- if (typeof MutationObserver === 'undefined')
15
- return;
16
- this.cellObserver = new MutationObserver((mutations) => {
17
- mutations.forEach((mutation) => {
18
- if (mutation.type !== 'childList')
19
- return;
20
- mutation.addedNodes.forEach((node) => {
21
- if (isTableCell(node)) {
22
- node.disabled = this.disabled;
23
- }
24
- });
25
- });
26
- });
27
- this.cellObserver.observe(this.el, { childList: true });
28
- }
29
- disconnectedCallback() {
30
- var _a;
31
- (_a = this.cellObserver) === null || _a === void 0 ? void 0 : _a.disconnect();
32
- this.cellObserver = undefined;
33
- }
34
- componentDidLoad() {
35
- this.propagateDisabledToCells();
36
- }
37
- propagateDisabledToCells() {
38
- const cells = Array.from(this.el.children).filter(isTableCell);
39
- cells.forEach((cell) => {
40
- cell.disabled = this.disabled;
41
- });
42
- }
43
- render() {
44
- return (h(Host, { key: '4abcdcd80a317aec5d2a131d9e8d0331f434e989', role: "row", class: {
45
- 'xpl-table-row': true,
46
- 'xpl-table-row--disabled': this.disabled,
47
- 'xpl-table-row--selected': this.selected,
48
- } }, h("slot", { key: 'b2530a240b2e4c7eb4fb4a7691a86242eb9aee16' })));
49
- }
50
- static get is() { return "xpl-table-row"; }
51
- static get properties() {
52
- return {
53
- "disabled": {
54
- "type": "boolean",
55
- "mutable": false,
56
- "complexType": {
57
- "original": "boolean",
58
- "resolved": "boolean",
59
- "references": {}
60
- },
61
- "required": false,
62
- "optional": false,
63
- "docs": {
64
- "tags": [],
65
- "text": "Whether the row and its cells are disabled."
66
- },
67
- "getter": false,
68
- "setter": false,
69
- "reflect": false,
70
- "attribute": "disabled",
71
- "defaultValue": "false"
72
- },
73
- "rowId": {
74
- "type": "string",
75
- "mutable": false,
76
- "complexType": {
77
- "original": "string",
78
- "resolved": "string",
79
- "references": {}
80
- },
81
- "required": false,
82
- "optional": true,
83
- "docs": {
84
- "tags": [],
85
- "text": "Stable identifier for this row when used with a selectable compositional\n`xpl-table`. If omitted, the parent table assigns a unique id."
86
- },
87
- "getter": false,
88
- "setter": false,
89
- "reflect": true,
90
- "attribute": "row-id"
91
- },
92
- "selected": {
93
- "type": "boolean",
94
- "mutable": false,
95
- "complexType": {
96
- "original": "boolean",
97
- "resolved": "boolean",
98
- "references": {}
99
- },
100
- "required": false,
101
- "optional": false,
102
- "docs": {
103
- "tags": [],
104
- "text": "Whether the row is visually selected."
105
- },
106
- "getter": false,
107
- "setter": false,
108
- "reflect": false,
109
- "attribute": "selected",
110
- "defaultValue": "false"
111
- }
112
- };
113
- }
114
- static get elementRef() { return "el"; }
115
- static get watchers() {
116
- return [{
117
- "propName": "disabled",
118
- "methodName": "onDisabledChange"
119
- }];
120
- }
121
- }
@@ -1 +0,0 @@
1
- class t{constructor(){this.timeouts=new Set,this.intervals=new Set,this.rafs=new Set}setTimeout(t,e){const i=setTimeout((()=>{this.timeouts.delete(i),t()}),e);return this.timeouts.add(i),i}clearTimeout(t){clearTimeout(t),this.timeouts.delete(t)}setInterval(t,e){const i=setInterval(t,e);return this.intervals.add(i),i}clearInterval(t){clearInterval(t),this.intervals.delete(t)}requestAnimationFrame(t){const e=requestAnimationFrame((i=>{this.rafs.delete(e),t(i)}));return this.rafs.add(e),e}cancelAnimationFrame(t){cancelAnimationFrame(t),this.rafs.delete(t)}dispose(){this.timeouts.forEach((t=>clearTimeout(t))),this.timeouts.clear(),this.intervals.forEach((t=>clearInterval(t))),this.intervals.clear(),this.rafs.forEach((t=>cancelAnimationFrame(t))),this.rafs.clear()}}export{t as T}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface XplTableBody extends Components.XplTableBody, HTMLElement {}
4
- export const XplTableBody: {
5
- prototype: XplTableBody;
6
- new (): XplTableBody;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1 +0,0 @@
1
- import{proxyCustomElement as e,HTMLElement as t,h as c,Host as o,transformTag as l}from"@stencil/core/internal/client";const s=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost()}render(){return c(o,{key:"7320d9e105bbd49c3ce38b8c199b965a3863440c",role:"rowgroup",class:"xpl-table-body"},c("slot",{key:"3df8f5a49bca0c8b50126cb41e59e1209e57fc6b"}))}},[260,"xpl-table-body"]),b=s,n=function(){"undefined"!=typeof customElements&&["xpl-table-body"].forEach((e=>{"xpl-table-body"===e&&(customElements.get(l(e))||customElements.define(l(e),s))}))};export{b as XplTableBody,n as defineCustomElement}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface XplTableCell extends Components.XplTableCell, HTMLElement {}
4
- export const XplTableCell: {
5
- prototype: XplTableCell;
6
- new (): XplTableCell;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1 +0,0 @@
1
- import{X as l,d as o}from"./xpl-table-cell2.js";const s=l,t=o;export{s as XplTableCell,t as defineCustomElement}
@@ -1 +0,0 @@
1
- import{proxyCustomElement as e,HTMLElement as l,h as t,Host as s,transformTag as a}from"@stencil/core/internal/client";const i=e(class extends l{constructor(e){super(),!1!==e&&this.__registerHost(),this.align="left",this.bold=!1,this.disabled=!1,this.underline=!1}onDisabledChange(){this.propagateDisabledToSlotted()}componentDidLoad(){this.propagateDisabledToSlotted()}propagateDisabledToSlotted(){const e=e=>{if(!function(e){switch(e.tagName){case"BUTTON":case"INPUT":case"SELECT":case"TEXTAREA":case"FIELDSET":case"OPTGROUP":case"OPTION":return!0;default:return!1}}(e))return;const l=e;l.disabled=this.disabled,this.disabled?l.setAttribute("disabled",""):l.removeAttribute("disabled")},l=t=>{Array.from(t.children).forEach((t=>{"XPL-TABLE"!==t.tagName&&(e(t),l(t))}))};l(this.el)}render(){return t(s,{key:"91700fc89eff07fc5c54474c12e3a02eb602c6c3",role:"gridcell",class:{"xpl-table-cell":!0,[`xpl-table-cell--align-${this.align}`]:!0,"xpl-table-cell--bold":this.bold,"xpl-table-cell--underline":this.underline,"xpl-table-cell--disabled":this.disabled}},t("slot",{key:"5e956de9f694db16d9f5ea89bda1ff05a15e9efa"}))}get el(){return this}static get watchers(){return{disabled:[{onDisabledChange:0}]}}},[260,"xpl-table-cell",{align:[1],bold:[4],disabled:[4],underline:[4]},void 0,{disabled:[{onDisabledChange:0}]}]);function c(){"undefined"!=typeof customElements&&["xpl-table-cell"].forEach((e=>{"xpl-table-cell"===e&&(customElements.get(a(e))||customElements.define(a(e),i))}))}export{i as X,c as d}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface XplTableFooterCell extends Components.XplTableFooterCell, HTMLElement {}
4
- export const XplTableFooterCell: {
5
- prototype: XplTableFooterCell;
6
- new (): XplTableFooterCell;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1 +0,0 @@
1
- import{X as o,d as t}from"./xpl-table-footer-cell2.js";const e=o,l=t;export{e as XplTableFooterCell,l as defineCustomElement}
@@ -1 +0,0 @@
1
- import{proxyCustomElement as e,HTMLElement as l,h as t,Host as c,transformTag as o}from"@stencil/core/internal/client";const s=e(class extends l{constructor(e){super(),!1!==e&&this.__registerHost(),this.align="left"}render(){return t(c,{key:"452cb6ac0333ca57329341404343c290c63fc508",role:"gridcell",class:{"xpl-table-footer-cell":!0,[`xpl-table-footer-cell--align-${this.align}`]:!0}},t("slot",{key:"db6d5848f2aa009437317b9e71a47f0ca9245161"}))}},[260,"xpl-table-footer-cell",{align:[1]}]);function r(){"undefined"!=typeof customElements&&["xpl-table-footer-cell"].forEach((e=>{"xpl-table-footer-cell"===e&&(customElements.get(o(e))||customElements.define(o(e),s))}))}export{s as X,r as d}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface XplTableFooter extends Components.XplTableFooter, HTMLElement {}
4
- export const XplTableFooter: {
5
- prototype: XplTableFooter;
6
- new (): XplTableFooter;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1 +0,0 @@
1
- import{proxyCustomElement as e,HTMLElement as t,h as o,Host as r,transformTag as l}from"@stencil/core/internal/client";const c=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost()}render(){return o(r,{key:"891052963f727f283783138363c9a925cb59140b",role:"rowgroup",class:"xpl-table-footer"},o("slot",{key:"df01f64a46ecd29380df26e053c2a6c246a22556"}))}},[260,"xpl-table-footer"]),s=c,n=function(){"undefined"!=typeof customElements&&["xpl-table-footer"].forEach((e=>{"xpl-table-footer"===e&&(customElements.get(l(e))||customElements.define(l(e),c))}))};export{s as XplTableFooter,n as defineCustomElement}
@@ -1 +0,0 @@
1
- import{proxyCustomElement as e,HTMLElement as t,createEvent as l,h as s,Host as i,transformTag as a}from"@stencil/core/internal/client";import{d as c}from"./xpl-checkbox2.js";import{d as n}from"./xpl-icon2.js";const r=e=>{var t,l;if("xpl-table-header-cell"!==e.tagName.toLowerCase())return"auto";const s=e,i="string"==typeof s.columnWidth?s.columnWidth.trim():"",a=null!==(l=null===(t=e.getAttribute("column-width"))||void 0===t?void 0:t.trim())&&void 0!==l?l:"",c=i||a;if(c.length>0)return c;const n=s.width;if("number"==typeof n&&Number.isFinite(n)&&n>0)return`${Math.max(48,n)}px`;const r=e.getAttribute("width");if(null===r||""===r)return"auto";if(/^\s*\d+(\.\d+)?\s*$/.test(r)){const e=Number.parseFloat(r);return Number.isFinite(e)&&e>0?`${Math.max(48,e)}px`:"auto"}return r.trim()},h="data-xpl-selection-managed",o="data-xpl-row-reorder-managed",d=e=>{switch(e){case"asc":return"desc";case"desc":return null;default:return"asc"}},u=e=>{switch(e){case"asc":return"arrow-up";case"desc":return"arrow-down";default:return"dash"}},b=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.headerCheckboxChange=l(this,"headerCheckboxChange",7),this.headerSortChange=l(this,"headerSortChange",7),this.align="left",this.checked=!1,this.indeterminate=!1,this.label="",this.sortable=!1,this.type="label",this.onHeaderInnerCheckboxChange=e=>{const{detail:t}=e,l="boolean"==typeof t?t:Boolean(t);this.headerCheckboxChange.emit(l)},this.onSortActivate=e=>{if(e.preventDefault(),e.stopPropagation(),!this.sortable||"label"!==this.type)return;const t=this.getColumnIndex0(),l=this.getSortKeySlug();this.el.closest("xpl-table")||(this.sortDirection=d(this.sortDirection)),this.headerSortChange.emit({columnIndex:t,sortKey:l})}}watchColumnWidth(){this.notifyColumnWidthsChange()}watchWidth(){this.notifyColumnWidthsChange()}componentDidLoad(){this.notifyColumnWidthsChange()}notifyColumnWidthsChange(){this.el.dispatchEvent(new CustomEvent("xplTableColumnWidthsChange",{bubbles:!0,composed:!0}))}getColumnIndex0(){var e,t;return Array.from(null!==(t=null===(e=this.el.parentElement)||void 0===e?void 0:e.children)&&void 0!==t?t:[]).indexOf(this.el)}getSortKeySlug(){var e,t;const l=(null!==(t=null!==(e=this.sortKey)&&void 0!==e?e:this.label)&&void 0!==t?t:"").trim();return l.length>0?l.replace(/ /g,"-").toLowerCase():`column-${this.getColumnIndex0()}`}renderLabelContent(){if(this.sortable){const e="asc"===this.sortDirection?"arrow-up":"arrow-down",t="asc"===this.sortDirection||"desc"===this.sortDirection;return s("button",{type:"button",class:"xpl-table-header-cell__sort",onClick:this.onSortActivate},s("span",{class:"xpl-table-header-cell__text"},s("slot",null,this.label)),s("xpl-icon",{class:{"xpl-table-header-cell__sort-icon":!0,"xpl-table-header-cell__sort-icon--active":t,"xpl-table-header-cell__sort-icon--default":!t},icon:e,size:16}))}return s("span",{class:"xpl-table-header-cell__text"},s("slot",null,this.label))}render(){const e=this.getColumnIndex0()+1,t=`xpl-table-header-cell--align-${"checkbox"!==this.type&&"icon"!==this.type||"left"!==this.align?this.align:"center"}`,l="label"===this.type&&this.sortable?"asc"===this.sortDirection?"ascending":"desc"===this.sortDirection?"descending":"none":void 0;return s(i,{role:"columnheader","aria-colindex":e,class:{"xpl-table-header-cell":!0,[t]:!0,"xpl-table-header-cell--checkbox":"checkbox"===this.type,"xpl-table-header-cell--icon":"icon"===this.type,"xpl-table-header-cell--empty":"empty"===this.type,"xpl-table-header-cell--sortable":this.sortable&&"label"===this.type},"aria-checked":"checkbox"===this.type?this.indeterminate?"mixed":this.checked?"true":"false":void 0,"aria-sort":l},"empty"===this.type?null:(()=>{var e;switch(this.type){case"label":return this.renderLabelContent();case"checkbox":return s("xpl-checkbox",{ariaLabel:null!==(e=this.checkboxAriaLabel)&&void 0!==e?e:"Select all rows",checked:this.checked,indeterminate:this.indeterminate,onCheckboxChange:this.onHeaderInnerCheckboxChange});case"icon":return s("xpl-icon",{icon:this.icon,size:20});case"empty":return null;default:return""}})())}get el(){return this}static get watchers(){return{columnWidth:[{watchColumnWidth:0}],width:[{watchWidth:0}]}}},[260,"xpl-table-header-cell",{align:[1],checkboxAriaLabel:[1,"checkbox-aria-label"],checked:[4],columnWidth:[513,"column-width"],icon:[1],indeterminate:[4],label:[1],sortable:[4],sortDirection:[1537,"sort-direction"],sortKey:[1,"sort-key"],type:[1],width:[514]},void 0,{columnWidth:[{watchColumnWidth:0}],width:[{watchWidth:0}]}]);function p(){"undefined"!=typeof customElements&&["xpl-table-header-cell","xpl-checkbox","xpl-icon"].forEach((e=>{switch(e){case"xpl-table-header-cell":customElements.get(a(e))||customElements.define(a(e),b);break;case"xpl-checkbox":customElements.get(a(e))||c();break;case"xpl-icon":customElements.get(a(e))||n()}}))}export{o as R,h as S,b as T,u as a,d as c,p as d,r as g}
@@ -1,11 +0,0 @@
1
- import type { Components, JSX } from "../types/components";
2
-
3
- interface XplTableRow extends Components.XplTableRow, HTMLElement {}
4
- export const XplTableRow: {
5
- prototype: XplTableRow;
6
- new (): XplTableRow;
7
- };
8
- /**
9
- * Used to define this component and all nested components recursively.
10
- */
11
- export const defineCustomElement: () => void;
@@ -1 +0,0 @@
1
- import{proxyCustomElement as e,HTMLElement as t,h as s,Host as i,transformTag as l}from"@stencil/core/internal/client";function a(e){return"XPL-TABLE-CELL"===e.nodeName}const o=e(class extends t{constructor(e){super(),!1!==e&&this.__registerHost(),this.disabled=!1,this.selected=!1}onDisabledChange(){this.propagateDisabledToCells()}connectedCallback(){"undefined"!=typeof MutationObserver&&(this.cellObserver=new MutationObserver((e=>{e.forEach((e=>{"childList"===e.type&&e.addedNodes.forEach((e=>{a(e)&&(e.disabled=this.disabled)}))}))})),this.cellObserver.observe(this.el,{childList:!0}))}disconnectedCallback(){var e;null===(e=this.cellObserver)||void 0===e||e.disconnect(),this.cellObserver=void 0}componentDidLoad(){this.propagateDisabledToCells()}propagateDisabledToCells(){Array.from(this.el.children).filter(a).forEach((e=>{e.disabled=this.disabled}))}render(){return s(i,{key:"4abcdcd80a317aec5d2a131d9e8d0331f434e989",role:"row",class:{"xpl-table-row":!0,"xpl-table-row--disabled":this.disabled,"xpl-table-row--selected":this.selected}},s("slot",{key:"b2530a240b2e4c7eb4fb4a7691a86242eb9aee16"}))}get el(){return this}static get watchers(){return{disabled:[{onDisabledChange:0}]}}},[260,"xpl-table-row",{disabled:[4],rowId:[513,"row-id"],selected:[4]},void 0,{disabled:[{onDisabledChange:0}]}]),n=o,d=function(){"undefined"!=typeof customElements&&["xpl-table-row"].forEach((e=>{"xpl-table-row"===e&&(customElements.get(l(e))||customElements.define(l(e),o))}))};export{n as XplTableRow,d as defineCustomElement}
@@ -1,10 +0,0 @@
1
- # xpl-table-body
2
-
3
-
4
-
5
- <!-- Auto Generated Below -->
6
-
7
-
8
- ----------------------------------------------
9
-
10
- *Built with [StencilJS](https://stenciljs.com/)*