@db-ux/wc-core-components 4.5.4-mcp-e4cd7e6 → 4.5.4-table-c758ae7

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 (221) hide show
  1. package/README.md +30 -0
  2. package/dist/cjs/db-accordion-item.cjs.entry.js +3 -3
  3. package/dist/cjs/db-accordion.cjs.entry.js +2 -2
  4. package/dist/cjs/db-badge.cjs.entry.js +2 -2
  5. package/dist/cjs/db-brand.cjs.entry.js +2 -2
  6. package/dist/cjs/db-button.cjs.entry.js +2 -2
  7. package/dist/cjs/db-card.cjs.entry.js +3 -3
  8. package/dist/cjs/db-checkbox.cjs.entry.js +3 -3
  9. package/dist/cjs/db-custom-button.cjs.entry.js +3 -3
  10. package/dist/cjs/db-custom-select-dropdown_5.cjs.entry.js +10 -10
  11. package/dist/cjs/db-custom-select-form-field.cjs.entry.js +3 -3
  12. package/dist/cjs/db-custom-select.cjs.entry.js +6 -6
  13. package/dist/cjs/db-divider.cjs.entry.js +2 -2
  14. package/dist/cjs/db-drawer.cjs.entry.js +4 -4
  15. package/dist/cjs/db-header.cjs.entry.js +3 -3
  16. package/dist/cjs/db-icon.cjs.entry.js +2 -2
  17. package/dist/cjs/db-infotext.cjs.entry.js +2 -2
  18. package/dist/cjs/db-link_4.cjs.entry.js +220 -0
  19. package/dist/cjs/db-navigation-item.cjs.entry.js +2 -2
  20. package/dist/cjs/db-navigation.cjs.entry.js +3 -3
  21. package/dist/cjs/db-notification.cjs.entry.js +3 -3
  22. package/dist/cjs/db-page.cjs.entry.js +3 -3
  23. package/dist/cjs/db-popover.cjs.entry.js +3 -3
  24. package/dist/cjs/db-radio.cjs.entry.js +2 -2
  25. package/dist/cjs/db-section.cjs.entry.js +3 -3
  26. package/dist/cjs/db-select.cjs.entry.js +3 -3
  27. package/dist/cjs/db-stack.cjs.entry.js +3 -3
  28. package/dist/cjs/db-switch.cjs.entry.js +3 -3
  29. package/dist/cjs/db-tab-item_3.cjs.entry.js +7 -7
  30. package/dist/cjs/db-table-body_3.cjs.entry.js +173 -0
  31. package/dist/cjs/{db-link.cjs.entry.js → db-table-caption.cjs.entry.js} +6 -7
  32. package/dist/cjs/db-table.cjs.entry.js +136 -0
  33. package/dist/cjs/db-tabs.cjs.entry.js +3 -3
  34. package/dist/cjs/db-textarea.cjs.entry.js +3 -3
  35. package/dist/cjs/db-tooltip.cjs.entry.js +3 -3
  36. package/dist/cjs/db-ux.cjs.js +2 -2
  37. package/dist/cjs/{index-EqJP9Qyt.js → index-CSakRmZZ.js} +21 -0
  38. package/dist/cjs/index.cjs.js +20 -1
  39. package/dist/cjs/loader.cjs.js +2 -2
  40. package/dist/collection/collection-manifest.json +9 -1
  41. package/dist/collection/components/accordion/accordion.js +1 -1
  42. package/dist/collection/components/accordion-item/accordion-item.js +2 -2
  43. package/dist/collection/components/badge/badge.js +1 -1
  44. package/dist/collection/components/brand/brand.js +2 -2
  45. package/dist/collection/components/button/button.js +4 -4
  46. package/dist/collection/components/card/card.js +2 -2
  47. package/dist/collection/components/checkbox/checkbox.js +3 -3
  48. package/dist/collection/components/custom-button/custom-button.js +5 -5
  49. package/dist/collection/components/custom-select/custom-select.js +7 -7
  50. package/dist/collection/components/custom-select-dropdown/custom-select-dropdown.js +2 -2
  51. package/dist/collection/components/custom-select-form-field/custom-select-form-field.js +2 -2
  52. package/dist/collection/components/custom-select-list/custom-select-list.js +2 -2
  53. package/dist/collection/components/custom-select-list-item/custom-select-list-item.js +2 -2
  54. package/dist/collection/components/divider/divider.js +1 -1
  55. package/dist/collection/components/drawer/drawer.js +3 -3
  56. package/dist/collection/components/header/header.js +2 -2
  57. package/dist/collection/components/icon/icon.js +2 -2
  58. package/dist/collection/components/infotext/infotext.js +2 -2
  59. package/dist/collection/components/input/input.js +6 -6
  60. package/dist/collection/components/link/link.js +1 -1
  61. package/dist/collection/components/navigation/navigation.js +2 -2
  62. package/dist/collection/components/navigation-item/navigation-item.js +2 -2
  63. package/dist/collection/components/notification/notification.js +3 -3
  64. package/dist/collection/components/page/page.js +2 -2
  65. package/dist/collection/components/popover/popover.js +2 -2
  66. package/dist/collection/components/radio/radio.js +1 -1
  67. package/dist/collection/components/section/section.js +2 -2
  68. package/dist/collection/components/select/select.js +4 -4
  69. package/dist/collection/components/stack/stack.js +2 -2
  70. package/dist/collection/components/switch/switch.js +6 -6
  71. package/dist/collection/components/tab-item/tab-item.js +5 -5
  72. package/dist/collection/components/tab-list/tab-list.js +2 -2
  73. package/dist/collection/components/tab-panel/tab-panel.js +2 -2
  74. package/dist/collection/components/table/examples/data.js +258 -0
  75. package/dist/collection/components/table/index.js +2 -0
  76. package/dist/collection/components/table/model.js +6 -0
  77. package/dist/collection/components/table/table.js +456 -0
  78. package/dist/collection/components/table-body/index.js +2 -0
  79. package/dist/collection/components/table-body/model.js +1 -0
  80. package/dist/collection/components/table-body/table-body.js +137 -0
  81. package/dist/collection/components/table-caption/index.js +2 -0
  82. package/dist/collection/components/table-caption/model.js +1 -0
  83. package/dist/collection/components/table-caption/table-caption.js +109 -0
  84. package/dist/collection/components/table-data-cell/index.js +2 -0
  85. package/dist/collection/components/table-data-cell/model.js +1 -0
  86. package/dist/collection/components/table-data-cell/table-data-cell.js +291 -0
  87. package/dist/collection/components/table-footer/index.js +2 -0
  88. package/dist/collection/components/table-footer/model.js +1 -0
  89. package/dist/collection/components/table-footer/table-footer.js +137 -0
  90. package/dist/collection/components/table-head/index.js +2 -0
  91. package/dist/collection/components/table-head/model.js +1 -0
  92. package/dist/collection/components/table-head/table-head.js +140 -0
  93. package/dist/collection/components/table-header-cell/index.js +2 -0
  94. package/dist/collection/components/table-header-cell/model.js +1 -0
  95. package/dist/collection/components/table-header-cell/table-header-cell.js +369 -0
  96. package/dist/collection/components/table-row/index.js +2 -0
  97. package/dist/collection/components/table-row/model.js +1 -0
  98. package/dist/collection/components/table-row/table-row.js +195 -0
  99. package/dist/collection/components/tabs/tabs.js +2 -2
  100. package/dist/collection/components/tag/tag.js +3 -3
  101. package/dist/collection/components/textarea/textarea.js +3 -3
  102. package/dist/collection/components/tooltip/tooltip.js +2 -2
  103. package/dist/collection/index.js +16 -0
  104. package/dist/collection/shared/model.js +1 -1
  105. package/dist/custom-elements.json +5671 -2660
  106. package/dist/db-ux/db-ux.esm.js +1 -1
  107. package/dist/db-ux/index.esm.js +1 -1
  108. package/dist/db-ux/{p-cdef6789.entry.js → p-003f3468.entry.js} +1 -1
  109. package/dist/db-ux/{p-516c3f64.entry.js → p-0055d6ce.entry.js} +1 -1
  110. package/dist/db-ux/{p-c7d1bee4.entry.js → p-032487d0.entry.js} +1 -1
  111. package/dist/db-ux/{p-83e69c0e.entry.js → p-10acdb01.entry.js} +1 -1
  112. package/dist/db-ux/{p-3ca07f53.entry.js → p-150c4aeb.entry.js} +1 -1
  113. package/dist/db-ux/{p-72d1ea3b.entry.js → p-19fe0672.entry.js} +1 -1
  114. package/dist/db-ux/p-2cdc1311.entry.js +1 -0
  115. package/dist/db-ux/p-33ca6422.entry.js +1 -0
  116. package/dist/db-ux/p-42e61221.entry.js +1 -0
  117. package/dist/db-ux/{p-fdbf8d91.entry.js → p-47bd992d.entry.js} +1 -1
  118. package/dist/db-ux/{p-fc9fb7cd.entry.js → p-50a16969.entry.js} +1 -1
  119. package/dist/db-ux/{p-aad2d524.entry.js → p-54d2e18d.entry.js} +1 -1
  120. package/dist/db-ux/{p-b99e76fd.entry.js → p-5e4de899.entry.js} +1 -1
  121. package/dist/db-ux/p-68a1d35a.entry.js +1 -0
  122. package/dist/db-ux/{p-56da8875.entry.js → p-6b87f6f1.entry.js} +1 -1
  123. package/dist/db-ux/{p-19ae6336.entry.js → p-7387346c.entry.js} +1 -1
  124. package/dist/db-ux/p-75005663.entry.js +1 -0
  125. package/dist/db-ux/{p-7f6fae6f.entry.js → p-77ee580e.entry.js} +1 -1
  126. package/dist/db-ux/{p-669fe992.entry.js → p-7da51a4c.entry.js} +1 -1
  127. package/dist/db-ux/p-7f2eaa8b.entry.js +1 -0
  128. package/dist/db-ux/{p-bd1b0142.entry.js → p-823a7488.entry.js} +1 -1
  129. package/dist/db-ux/p-8826c7fc.entry.js +1 -0
  130. package/dist/db-ux/{p-a0f6fc10.entry.js → p-8baf5ea2.entry.js} +1 -1
  131. package/dist/db-ux/{p-4f519859.entry.js → p-8f76eea7.entry.js} +1 -1
  132. package/dist/db-ux/p-97f5d48e.entry.js +1 -0
  133. package/dist/db-ux/p-LpjjuLKB.js +2 -0
  134. package/dist/db-ux/p-a8368ed2.entry.js +1 -0
  135. package/dist/db-ux/p-c0b8571d.entry.js +1 -0
  136. package/dist/db-ux/p-d20bd873.entry.js +1 -0
  137. package/dist/db-ux/{p-4a0870fa.entry.js → p-d603dcc4.entry.js} +1 -1
  138. package/dist/db-ux/{p-2c30a356.entry.js → p-dbdfc04a.entry.js} +1 -1
  139. package/dist/db-ux/{p-df2b1979.entry.js → p-e3279b61.entry.js} +1 -1
  140. package/dist/db-ux/{p-a726cd18.entry.js → p-e367150f.entry.js} +1 -1
  141. package/dist/db-ux/{p-f49ed233.entry.js → p-e9058123.entry.js} +1 -1
  142. package/dist/db-ux/p-e9142fec.entry.js +1 -0
  143. package/dist/esm/db-accordion-item.entry.js +3 -3
  144. package/dist/esm/db-accordion.entry.js +2 -2
  145. package/dist/esm/db-badge.entry.js +2 -2
  146. package/dist/esm/db-brand.entry.js +2 -2
  147. package/dist/esm/db-button.entry.js +2 -2
  148. package/dist/esm/db-card.entry.js +3 -3
  149. package/dist/esm/db-checkbox.entry.js +3 -3
  150. package/dist/esm/db-custom-button.entry.js +3 -3
  151. package/dist/esm/db-custom-select-dropdown_5.entry.js +10 -10
  152. package/dist/esm/db-custom-select-form-field.entry.js +3 -3
  153. package/dist/esm/db-custom-select.entry.js +6 -6
  154. package/dist/esm/db-divider.entry.js +2 -2
  155. package/dist/esm/db-drawer.entry.js +4 -4
  156. package/dist/esm/db-header.entry.js +3 -3
  157. package/dist/esm/db-icon.entry.js +2 -2
  158. package/dist/esm/db-infotext.entry.js +2 -2
  159. package/dist/esm/db-link_4.entry.js +215 -0
  160. package/dist/esm/db-navigation-item.entry.js +2 -2
  161. package/dist/esm/db-navigation.entry.js +3 -3
  162. package/dist/esm/db-notification.entry.js +3 -3
  163. package/dist/esm/db-page.entry.js +3 -3
  164. package/dist/esm/db-popover.entry.js +3 -3
  165. package/dist/esm/db-radio.entry.js +2 -2
  166. package/dist/esm/db-section.entry.js +3 -3
  167. package/dist/esm/db-select.entry.js +3 -3
  168. package/dist/esm/db-stack.entry.js +3 -3
  169. package/dist/esm/db-switch.entry.js +3 -3
  170. package/dist/esm/db-tab-item_3.entry.js +7 -7
  171. package/dist/esm/db-table-body_3.entry.js +169 -0
  172. package/dist/esm/{db-link.entry.js → db-table-caption.entry.js} +7 -8
  173. package/dist/esm/db-table.entry.js +134 -0
  174. package/dist/esm/db-tabs.entry.js +3 -3
  175. package/dist/esm/db-textarea.entry.js +3 -3
  176. package/dist/esm/db-tooltip.entry.js +3 -3
  177. package/dist/esm/db-ux.js +3 -3
  178. package/dist/esm/{index-kHKR5QG5.js → index-LpjjuLKB.js} +21 -0
  179. package/dist/esm/index.js +13 -2
  180. package/dist/esm/loader.js +3 -3
  181. package/dist/types/components/table/examples/data.d.ts +9 -0
  182. package/dist/types/components/table/index.d.ts +2 -0
  183. package/dist/types/components/table/model.d.ts +74 -0
  184. package/dist/types/components/table/table.d.ts +37 -0
  185. package/dist/types/components/table-body/index.d.ts +2 -0
  186. package/dist/types/components/table-body/model.d.ts +8 -0
  187. package/dist/types/components/table-body/table-body.d.ts +19 -0
  188. package/dist/types/components/table-caption/index.d.ts +2 -0
  189. package/dist/types/components/table-caption/model.d.ts +5 -0
  190. package/dist/types/components/table-caption/table-caption.d.ts +18 -0
  191. package/dist/types/components/table-data-cell/index.d.ts +2 -0
  192. package/dist/types/components/table-data-cell/model.d.ts +5 -0
  193. package/dist/types/components/table-data-cell/table-data-cell.d.ts +25 -0
  194. package/dist/types/components/table-footer/index.d.ts +2 -0
  195. package/dist/types/components/table-footer/model.d.ts +8 -0
  196. package/dist/types/components/table-footer/table-footer.d.ts +19 -0
  197. package/dist/types/components/table-head/index.d.ts +2 -0
  198. package/dist/types/components/table-head/model.d.ts +10 -0
  199. package/dist/types/components/table-head/table-head.d.ts +58 -0
  200. package/dist/types/components/table-header-cell/index.d.ts +2 -0
  201. package/dist/types/components/table-header-cell/model.d.ts +24 -0
  202. package/dist/types/components/table-header-cell/table-header-cell.d.ts +28 -0
  203. package/dist/types/components/table-row/index.d.ts +2 -0
  204. package/dist/types/components/table-row/model.d.ts +30 -0
  205. package/dist/types/components/table-row/table-row.d.ts +23 -0
  206. package/dist/types/components.d.ts +278 -0
  207. package/dist/types/index.d.ts +16 -0
  208. package/dist/types/shared/model.d.ts +42 -2
  209. package/dist/vscode.html-custom-data.json +400 -2
  210. package/dist/web-types.json +692 -4
  211. package/package.json +3 -3
  212. package/dist/db-ux/p-05e9aa2e.entry.js +0 -1
  213. package/dist/db-ux/p-2ed98454.entry.js +0 -1
  214. package/dist/db-ux/p-33443732.entry.js +0 -1
  215. package/dist/db-ux/p-58c6c29d.entry.js +0 -1
  216. package/dist/db-ux/p-85897212.entry.js +0 -1
  217. package/dist/db-ux/p-8a521b05.entry.js +0 -1
  218. package/dist/db-ux/p-974fbc69.entry.js +0 -1
  219. package/dist/db-ux/p-a3aef74b.entry.js +0 -1
  220. package/dist/db-ux/p-cb093137.entry.js +0 -1
  221. package/dist/db-ux/p-kHKR5QG5.js +0 -2
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-LpjjuLKB.js';
2
2
  import { u as uuid, e as getBoolean, l as getHideProp, c as cls, d as delay } from './index-xkoBSP8R.js';
3
3
  import { b as addResetEventListener } from './form-components-D6LQfJvq.js';
4
4
 
@@ -125,7 +125,7 @@ const DBRadio = class {
125
125
  (_a = this.abortController) === null || _a === void 0 ? void 0 : _a.abort();
126
126
  }
127
127
  render() {
128
- return (h("label", { key: 'b77bbb3335c0b3f3813e11c7ac7228a84a40769a', class: cls("db-radio", this.className), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel), "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), htmlFor: this._id }, h("input", { key: '4fe82a7b57a6dd06e556e26d50df574a541129f9', type: "radio", "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
128
+ return (h("label", { key: '1450495bf8a887db244427529a5811c8aba388e9', class: cls("db-radio", this.className), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel), "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), htmlFor: this._id }, h("input", { key: 'f0d89d24058e1c77c64cc7f1a26fcc86392900c5', type: "radio", "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
129
129
  this._ref = el;
130
130
  }, id: this._id, name: this.name, checked: getBoolean(this.checked, "checked"), disabled: getBoolean(this.disabled, "disabled"), value: this.value, required: getBoolean(this.required, "required"), onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event) }), this.label ? this.label : h("slot", null)));
131
131
  }
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, h } from './index-LpjjuLKB.js';
2
2
  import { c as cls } from './index-xkoBSP8R.js';
3
3
 
4
4
  const DBSection = class {
@@ -46,9 +46,9 @@ const DBSection = class {
46
46
  }
47
47
  render() {
48
48
  var _a, _b;
49
- return (h("section", { key: 'd2cb50a43641ef50d901bd488c7d31911e0f5487', class: cls("db-section", this.className), ref: (el) => {
49
+ return (h("section", { key: '21276e8ff993a9db126db60f13ec9b61ee903d52', class: cls("db-section", this.className), ref: (el) => {
50
50
  this._ref = el;
51
- }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, "data-spacing": this.spacing || "medium", "data-width": this.width }, h("slot", { key: '90ce1533ea3392317c7e271ad6d2880d0434321e' })));
51
+ }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, "data-spacing": this.spacing || "medium", "data-width": this.width }, h("slot", { key: '5f239ac66f8caaf528db0e9af88ac7950894ff2a' })));
52
52
  }
53
53
  };
54
54
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-LpjjuLKB.js';
2
2
  import { l as DEFAULT_INVALID_MESSAGE, f as DEFAULT_MESSAGE_ID_SUFFIX, g as DEFAULT_VALID_MESSAGE_ID_SUFFIX, h as DEFAULT_INVALID_MESSAGE_ID_SUFFIX, i as DEFAULT_PLACEHOLDER_ID_SUFFIX, k as DEFAULT_VALID_MESSAGE, a as DEFAULT_LABEL } from './constants-BdL-nI5y.js';
3
3
  import { h as hasVoiceOver, d as delay, s as stringPropVisible, u as uuid, e as getBoolean, g as getBooleanAsString, l as getHideProp, c as cls } from './index-xkoBSP8R.js';
4
4
  import { c as addValueResetEventListener } from './form-components-D6LQfJvq.js';
@@ -236,14 +236,14 @@ const DBSelect = class {
236
236
  }
237
237
  render() {
238
238
  var _a, _b, _c, _d, _e;
239
- return (h("div", { key: 'e083b3de98c929310348ef084f614b6115cc79cb', class: cls("db-select", this.className), "data-variant": this.variant, "data-hide-label": getHideProp(this.showLabel), "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-icon": this.icon, "data-show-icon": getBooleanAsString(this.showIcon) }, h("label", { key: 'f2dab8efe5a3c299268da1f5c58d09752b6b8ca5', htmlFor: this._id }, (_a = this.label) !== null && _a !== void 0 ? _a : DEFAULT_LABEL), h("select", { key: '197c8e2861449bed151348411043d5acb9c7b57c', "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
239
+ return (h("div", { key: 'b5781f8679a45319dd04b45aad3a8da9f60b8f86', class: cls("db-select", this.className), "data-variant": this.variant, "data-hide-label": getHideProp(this.showLabel), "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-icon": this.icon, "data-show-icon": getBooleanAsString(this.showIcon) }, h("label", { key: 'cf6035ebd7f8906dd6d91eec96e225e11b5532d1', htmlFor: this._id }, (_a = this.label) !== null && _a !== void 0 ? _a : DEFAULT_LABEL), h("select", { key: '42c6d79acf18ef26bf6b3b56b457f777d845a324', "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, ref: (el) => {
240
240
  this._ref = el;
241
241
  }, required: getBoolean(this.required, "required"), disabled: getBoolean(this.disabled, "disabled"), id: this._id, name: this.name, size: this.size,
242
242
  /* @ts-ignore */
243
243
  value: (_b = this.value) !== null && _b !== void 0 ? _b : this._value, autocomplete: this.autocomplete, multiple: this.multiple, onInput: (event) => this.handleInput(event), onClick: (event) => this.handleClick(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), "aria-describedby": (_c = this.ariaDescribedBy) !== null && _c !== void 0 ? _c : this._descByIds }, this.variant === "floating" || !!this.placeholder ? (h("option", { class: "placeholder", value: "", "data-show-empty-option": getBooleanAsString(this.shouldShowEmptyOption()) })) : null, ((_d = this.options) === null || _d === void 0 ? void 0 : _d.length) ? ((_e = this.options) === null || _e === void 0 ? void 0 : _e.map((option) => {
244
244
  var _a;
245
245
  return (h(Fragment, null, option.options ? (h("optgroup", { label: this.getOptionLabel(option), key: undefined }, (_a = option.options) === null || _a === void 0 ? void 0 : _a.map((optgroupOption) => (h("option", { value: optgroupOption.value, selected: optgroupOption.selected, disabled: optgroupOption.disabled, key: undefined }, this.getOptionLabel(optgroupOption)))))) : (h("option", { value: option.value, disabled: option.disabled, selected: option.selected, key: undefined }, this.getOptionLabel(option)))));
246
- })) : (h("slot", null))), this.placeholder ? (h("span", { class: "db-select-placeholder", id: this._placeholderId }, this.placeholder)) : null, stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '613305a3087d33f6ce2e9a90f6709897067f4355', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '6f3d17afd859cd7f58c64f7d030509478a7fb438', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
246
+ })) : (h("slot", null))), this.placeholder ? (h("span", { class: "db-select-placeholder", id: this._placeholderId }, this.placeholder)) : null, stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '705a3194b49b644c53729a74277f2fb339fffdc7', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '201aea9cd882406033990555b71030d7b9899cde', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
247
247
  }
248
248
  static get watchers() { return {
249
249
  "id": [{
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, h } from './index-LpjjuLKB.js';
2
2
  import { g as getBooleanAsString, c as cls } from './index-xkoBSP8R.js';
3
3
 
4
4
  const DBStack = class {
@@ -46,9 +46,9 @@ const DBStack = class {
46
46
  }
47
47
  render() {
48
48
  var _a, _b;
49
- return (h("div", { key: 'e8a95918ab5412c03412b92adb3f2a2d5979d492', class: cls("db-stack", this.className), ref: (el) => {
49
+ return (h("div", { key: '4792ed6d6adf369b6b031e4545476b4461be0bde', class: cls("db-stack", this.className), ref: (el) => {
50
50
  this._ref = el;
51
- }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, "data-gap": this.gap, "data-variant": this.variant, "data-direction": this.direction, "data-alignment": this.alignment, "data-justify-content": this.justifyContent, "data-wrap": getBooleanAsString(this.wrap) }, h("slot", { key: 'b95b19d6ff1a61f416eadfb14d9e19647e4f6cb4' })));
51
+ }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, "data-gap": this.gap, "data-variant": this.variant, "data-direction": this.direction, "data-alignment": this.alignment, "data-justify-content": this.justifyContent, "data-wrap": getBooleanAsString(this.wrap) }, h("slot", { key: 'e4104abeed53330037edfc294fa9315e4d553783' })));
52
52
  }
53
53
  };
54
54
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-LpjjuLKB.js';
2
2
  import { l as DEFAULT_INVALID_MESSAGE, f as DEFAULT_MESSAGE_ID_SUFFIX, g as DEFAULT_VALID_MESSAGE_ID_SUFFIX, h as DEFAULT_INVALID_MESSAGE_ID_SUFFIX, k as DEFAULT_VALID_MESSAGE } from './constants-BdL-nI5y.js';
3
3
  import { h as hasVoiceOver, d as delay, s as stringPropVisible, u as uuid, e as getBoolean, l as getHideProp, g as getBooleanAsString, c as cls } from './index-xkoBSP8R.js';
4
4
  import { a as addCheckedResetEventListener } from './form-components-D6LQfJvq.js';
@@ -186,9 +186,9 @@ const DBSwitch = class {
186
186
  }
187
187
  render() {
188
188
  var _a, _b;
189
- return (h("div", { key: '66c2badcfc403e68d44d93cd1a79d087b212bbd6', class: cls("db-switch", this.className), "data-visual-aid": getBooleanAsString(this.visualAid), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel), "data-variant": this.variant, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-custom-validity": this.validation }, h("label", { key: 'c22fc86dd012f6de327f861cca3c1b4ab4f3605d', htmlFor: this._id }, h("input", { key: '3d1532eee9a137f2a1db1ba1574856ecc61833d8', type: "checkbox", role: "switch", id: this._id, ref: (el) => {
189
+ return (h("div", { key: '15af22a47433a33d2c9329ae58e61e0fe990618b', class: cls("db-switch", this.className), "data-visual-aid": getBooleanAsString(this.visualAid), "data-size": this.size, "data-hide-label": getHideProp(this.showLabel), "data-variant": this.variant, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-custom-validity": this.validation }, h("label", { key: '0b219e038aa70ce09b9369721b9441d7a302cfbc', htmlFor: this._id }, h("input", { key: '119c82316aabc99df99d5d1da5dc6b85803abd51', type: "checkbox", role: "switch", id: this._id, ref: (el) => {
190
190
  this._ref = el;
191
- }, checked: getBoolean(this.checked, "checked"), value: this.value, disabled: getBoolean(this.disabled, "disabled"), "aria-invalid": this.validation === "invalid" ? "true" : undefined, "aria-describedby": this._descByIds, name: this.name, required: getBoolean(this.required, "required"), "data-aid-icon": (_a = this.iconLeading) !== null && _a !== void 0 ? _a : this.icon, "data-aid-icon-trailing": this.iconTrailing, onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), onKeyDown: (event) => this.handleKeyDown(event) }), this.label ? this.label : h("slot", null)), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", semantic: "adaptive", id: this._messageId, icon: this.messageIcon }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, (_b = this.validMessage) !== null && _b !== void 0 ? _b : DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: 'd24f80874212a9a9669d5731d9e5b6f4f3be6001', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: 'cb3420bd986f1398094fbac151d27a5c2f392d7d', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
191
+ }, checked: getBoolean(this.checked, "checked"), value: this.value, disabled: getBoolean(this.disabled, "disabled"), "aria-invalid": this.validation === "invalid" ? "true" : undefined, "aria-describedby": this._descByIds, name: this.name, required: getBoolean(this.required, "required"), "data-aid-icon": (_a = this.iconLeading) !== null && _a !== void 0 ? _a : this.icon, "data-aid-icon-trailing": this.iconTrailing, onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), onKeyDown: (event) => this.handleKeyDown(event) }), this.label ? this.label : h("slot", null)), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", semantic: "adaptive", id: this._messageId, icon: this.messageIcon }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, (_b = this.validMessage) !== null && _b !== void 0 ? _b : DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '895a6b540bc1e23d9d928aa6321776075afef39a', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '6439487fcbda2df868b233dfca151f8f678b9de3', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
192
192
  }
193
193
  static get watchers() { return {
194
194
  "id": [{
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-LpjjuLKB.js';
2
2
  import { g as getBooleanAsString, e as getBoolean, c as cls } from './index-xkoBSP8R.js';
3
3
 
4
4
  const DBTabItem = class {
@@ -112,9 +112,9 @@ const DBTabItem = class {
112
112
  }
113
113
  render() {
114
114
  var _a, _b, _c, _d, _e, _f;
115
- return (h("li", { key: '0b8687c942d18b49bdf25249be3f0ae1ca727256', class: cls("db-tab-item", this.className), role: "none" }, h("label", { key: 'b9eaa4d53de58d78d7f968d18b021c9cfe013502', htmlFor: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, "data-icon": (_c = this.iconLeading) !== null && _c !== void 0 ? _c : this.icon, "data-icon-trailing": this.iconTrailing, "data-show-icon": getBooleanAsString((_d = this.showIconLeading) !== null && _d !== void 0 ? _d : this.showIcon), "data-show-icon-trailing": getBooleanAsString(this.showIconTrailing), "data-no-text": getBooleanAsString(this.noText) }, h("input", { key: '81cf38a1a39e88fc85282e8b82d43768ce6f70a4', type: "radio", role: "tab", disabled: getBoolean(this.disabled, "disabled"), "aria-selected": this._selected, checked: getBoolean(this.checked, "checked"), ref: (el) => {
115
+ return (h("li", { key: 'db7c124385c66f1f62679fae9a8dfb91f76f76c5', class: cls("db-tab-item", this.className), role: "none" }, h("label", { key: 'fd4471af1096f1c577f38c0fcf34e4dd73944623', htmlFor: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, "data-icon": (_c = this.iconLeading) !== null && _c !== void 0 ? _c : this.icon, "data-icon-trailing": this.iconTrailing, "data-show-icon": getBooleanAsString((_d = this.showIconLeading) !== null && _d !== void 0 ? _d : this.showIcon), "data-show-icon-trailing": getBooleanAsString(this.showIconTrailing), "data-no-text": getBooleanAsString(this.noText) }, h("input", { key: '36283eb7682b3080fbe4f65712629c7f28bd7c47', type: "radio", role: "tab", disabled: getBoolean(this.disabled, "disabled"), "aria-selected": this._selected, checked: getBoolean(this.checked, "checked"), ref: (el) => {
116
116
  this._ref = el;
117
- }, name: this._name, id: (_e = this.id) !== null && _e !== void 0 ? _e : (_f = this.propOverrides) === null || _f === void 0 ? void 0 : _f.id, onInput: (event) => this.handleChange(event) }), this.label ? this.label : null, h("slot", { key: '89a4ba46af36e8dcc3bc53f87d17977c5827cd12' }))));
117
+ }, name: this._name, id: (_e = this.id) !== null && _e !== void 0 ? _e : (_f = this.propOverrides) === null || _f === void 0 ? void 0 : _f.id, onInput: (event) => this.handleChange(event) }), this.label ? this.label : null, h("slot", { key: '0984f4b39959be344e5fd15a38ae2d3fef4d15cc' }))));
118
118
  }
119
119
  static get watchers() { return {
120
120
  "_ref": [{
@@ -177,9 +177,9 @@ const DBTabList = class {
177
177
  }
178
178
  render() {
179
179
  var _a, _b;
180
- return (h("div", { key: '8f02145864a04b79d94d5d5923b6eff32346a0c3', class: cls("db-tab-list", this.className), ref: (el) => {
180
+ return (h("div", { key: '64ae135babefc16c3173fbc67ed1605a74c009a0', class: cls("db-tab-list", this.className), ref: (el) => {
181
181
  this._ref = el;
182
- }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id }, h("ul", { key: '759fdba6e69209ca915148c8b190f9311cb6f1ff', role: "tablist" }, h("slot", { key: '96bf4a10d3b422d6eb6be68c46f926b9f55eb0e6' }))));
182
+ }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id }, h("ul", { key: '7f587632a62e52d03cb0f4831e48c9ec2f0060cc', role: "tablist" }, h("slot", { key: 'e1b7531ea0c97b907697cd0a637b51534bee9eb7' }))));
183
183
  }
184
184
  };
185
185
 
@@ -228,9 +228,9 @@ const DBTabPanel = class {
228
228
  }
229
229
  render() {
230
230
  var _a, _b;
231
- return (h("section", { key: 'c10873d5857be6ea8653189ab735784939c53474', class: cls("db-tab-panel", this.className), role: "tabpanel", ref: (el) => {
231
+ return (h("section", { key: '6dcccad8702b6c097e5d6ed208698caecf68c403', class: cls("db-tab-panel", this.className), role: "tabpanel", ref: (el) => {
232
232
  this._ref = el;
233
- }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id }, this.content ? this.content : null, h("slot", { key: '57a98a1b7e26ca61b16397b7615f71d883bfbd28' })));
233
+ }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id }, this.content ? this.content : null, h("slot", { key: 'c2db0f4c48fb5a509a7ca7d1095133c171ea821a' })));
234
234
  }
235
235
  };
236
236
 
@@ -0,0 +1,169 @@
1
+ import { r as registerInstance, h } from './index-LpjjuLKB.js';
2
+ import { u as uuid, c as cls } from './index-xkoBSP8R.js';
3
+
4
+ const DBTableHead = class {
5
+ constructor(hostRef) {
6
+ registerInstance(this, hostRef);
7
+ }
8
+ getCells(cells) {
9
+ return cells === null || cells === void 0 ? void 0 : cells.map((cell) => (Object.assign(Object.assign({}, cell), { headerCell: true })));
10
+ }
11
+ /**
12
+ * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.
13
+ * @param element the ref for the component
14
+ * @param customElementSelector the custom element like `my-component`
15
+ */
16
+ enableAttributePassing(element, customElementSelector) {
17
+ const parent = element === null || element === void 0 ? void 0 : element.closest(customElementSelector);
18
+ if (element && parent) {
19
+ const attributes = parent.attributes;
20
+ for (let i = 0; i < attributes.length; i++) {
21
+ const attr = attributes.item(i);
22
+ if (attr && attr.name !== 'data-density' &&
23
+ (attr.name.startsWith("data-") || attr.name.startsWith("aria-"))) {
24
+ element.setAttribute(attr.name, attr.value);
25
+ parent.removeAttribute(attr.name);
26
+ }
27
+ else if (attr && attr.name !== 'data-density' && attr.name !== "class" && attr.name === "style") {
28
+ element.setAttribute(attr.name, attr.value);
29
+ parent.removeAttribute(attr.name);
30
+ }
31
+ else if (attr && attr.name === "class") {
32
+ const isWebComponent = attr.value.includes("hydrated");
33
+ const value = attr.value.replace("hydrated", "").trim();
34
+ const currentClass = element.getAttribute("class");
35
+ element.setAttribute(attr.name, `${currentClass ? `${currentClass} ` : ""}${value}`);
36
+ if (isWebComponent) {
37
+ // Stencil is using this class for lazy loading component
38
+ parent.setAttribute("class", "hydrated");
39
+ }
40
+ else {
41
+ parent.removeAttribute(attr.name);
42
+ }
43
+ }
44
+ }
45
+ }
46
+ }
47
+ componentDidLoad() {
48
+ this.enableAttributePassing(this._ref, "db-table-head");
49
+ }
50
+ render() {
51
+ var _a;
52
+ return (h("thead", { key: 'fc59a3bac4953eaf10bbd04f29716804c98b05c8', class: cls("db-table-head", this.className), ref: (el) => {
53
+ this._ref = el;
54
+ }, id: this.id }, this.rows ? ((_a = this.rows) === null || _a === void 0 ? void 0 : _a.map((row, index) => {
55
+ var _a, _b;
56
+ return (h("db-table-row", { class: (_a = row.className) !== null && _a !== void 0 ? _a : row.class, key: `${(_b = this.id) !== null && _b !== void 0 ? _b : uuid()}-table-head-row-${index}`, cells: this.getCells(row.cells), subHeaderEmphasis: row.subHeaderEmphasis, id: row.id }));
57
+ })) : (h("slot", null))));
58
+ }
59
+ };
60
+
61
+ const DBTableBody = class {
62
+ constructor(hostRef) {
63
+ registerInstance(this, hostRef);
64
+ }
65
+ /**
66
+ * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.
67
+ * @param element the ref for the component
68
+ * @param customElementSelector the custom element like `my-component`
69
+ */
70
+ enableAttributePassing(element, customElementSelector) {
71
+ const parent = element === null || element === void 0 ? void 0 : element.closest(customElementSelector);
72
+ if (element && parent) {
73
+ const attributes = parent.attributes;
74
+ for (let i = 0; i < attributes.length; i++) {
75
+ const attr = attributes.item(i);
76
+ if (attr && attr.name !== 'data-density' &&
77
+ (attr.name.startsWith("data-") || attr.name.startsWith("aria-"))) {
78
+ element.setAttribute(attr.name, attr.value);
79
+ parent.removeAttribute(attr.name);
80
+ }
81
+ else if (attr && attr.name !== 'data-density' && attr.name !== "class" && attr.name === "style") {
82
+ element.setAttribute(attr.name, attr.value);
83
+ parent.removeAttribute(attr.name);
84
+ }
85
+ else if (attr && attr.name === "class") {
86
+ const isWebComponent = attr.value.includes("hydrated");
87
+ const value = attr.value.replace("hydrated", "").trim();
88
+ const currentClass = element.getAttribute("class");
89
+ element.setAttribute(attr.name, `${currentClass ? `${currentClass} ` : ""}${value}`);
90
+ if (isWebComponent) {
91
+ // Stencil is using this class for lazy loading component
92
+ parent.setAttribute("class", "hydrated");
93
+ }
94
+ else {
95
+ parent.removeAttribute(attr.name);
96
+ }
97
+ }
98
+ }
99
+ }
100
+ }
101
+ componentDidLoad() {
102
+ this.enableAttributePassing(this._ref, "db-table-body");
103
+ }
104
+ render() {
105
+ var _a;
106
+ return (h("tbody", { key: 'f32625da9123926d08a779f2b04f907249153f8b', class: cls("db-table-body", this.className), ref: (el) => {
107
+ this._ref = el;
108
+ }, id: this.id }, this.rows ? ((_a = this.rows) === null || _a === void 0 ? void 0 : _a.map((row, index) => {
109
+ var _a, _b;
110
+ return (h("db-table-row", { class: (_a = row.className) !== null && _a !== void 0 ? _a : row.class, key: `${(_b = this.id) !== null && _b !== void 0 ? _b : uuid()}-table-body-row-${index}`, cells: row.cells, id: row.id }));
111
+ })) : (h("slot", null))));
112
+ }
113
+ };
114
+
115
+ const DBTableFooter = class {
116
+ constructor(hostRef) {
117
+ registerInstance(this, hostRef);
118
+ }
119
+ /**
120
+ * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.
121
+ * @param element the ref for the component
122
+ * @param customElementSelector the custom element like `my-component`
123
+ */
124
+ enableAttributePassing(element, customElementSelector) {
125
+ const parent = element === null || element === void 0 ? void 0 : element.closest(customElementSelector);
126
+ if (element && parent) {
127
+ const attributes = parent.attributes;
128
+ for (let i = 0; i < attributes.length; i++) {
129
+ const attr = attributes.item(i);
130
+ if (attr && attr.name !== 'data-density' &&
131
+ (attr.name.startsWith("data-") || attr.name.startsWith("aria-"))) {
132
+ element.setAttribute(attr.name, attr.value);
133
+ parent.removeAttribute(attr.name);
134
+ }
135
+ else if (attr && attr.name !== 'data-density' && attr.name !== "class" && attr.name === "style") {
136
+ element.setAttribute(attr.name, attr.value);
137
+ parent.removeAttribute(attr.name);
138
+ }
139
+ else if (attr && attr.name === "class") {
140
+ const isWebComponent = attr.value.includes("hydrated");
141
+ const value = attr.value.replace("hydrated", "").trim();
142
+ const currentClass = element.getAttribute("class");
143
+ element.setAttribute(attr.name, `${currentClass ? `${currentClass} ` : ""}${value}`);
144
+ if (isWebComponent) {
145
+ // Stencil is using this class for lazy loading component
146
+ parent.setAttribute("class", "hydrated");
147
+ }
148
+ else {
149
+ parent.removeAttribute(attr.name);
150
+ }
151
+ }
152
+ }
153
+ }
154
+ }
155
+ componentDidLoad() {
156
+ this.enableAttributePassing(this._ref, "db-table-footer");
157
+ }
158
+ render() {
159
+ var _a;
160
+ return (h("tfoot", { key: '97d0abedb46046365f4d1a713133cd31a86c12c7', class: cls("db-table-footer", this.className), ref: (el) => {
161
+ this._ref = el;
162
+ }, id: this.id }, this.rows ? ((_a = this.rows) === null || _a === void 0 ? void 0 : _a.map((row, index) => {
163
+ var _a, _b;
164
+ return (h("db-table-row", { class: (_a = row.className) !== null && _a !== void 0 ? _a : row.class, key: `${(_b = this.id) !== null && _b !== void 0 ? _b : uuid()}-table-footer-row-${index}`, cells: row.cells, id: row.id }));
165
+ })) : (h("slot", null))));
166
+ }
167
+ };
168
+
169
+ export { DBTableBody as db_table_body, DBTableFooter as db_table_footer, DBTableHead as db_table_head };
@@ -1,7 +1,7 @@
1
- import { r as registerInstance, h } from './index-kHKR5QG5.js';
2
- import { g as getBooleanAsString, c as cls } from './index-xkoBSP8R.js';
1
+ import { r as registerInstance, h } from './index-LpjjuLKB.js';
2
+ import { c as cls } from './index-xkoBSP8R.js';
3
3
 
4
- const DBLink = class {
4
+ const DBTableCaption = class {
5
5
  constructor(hostRef) {
6
6
  registerInstance(this, hostRef);
7
7
  }
@@ -42,14 +42,13 @@ const DBLink = class {
42
42
  }
43
43
  }
44
44
  componentDidLoad() {
45
- this.enableAttributePassing(this._ref, "db-link");
45
+ this.enableAttributePassing(this._ref, "db-table-caption");
46
46
  }
47
47
  render() {
48
- var _a, _b, _c, _d;
49
- return (h("a", { key: '71c5ab28a592fe182048091df4ed2d34f4cafe96', class: cls("db-link", this.className), ref: (el) => {
48
+ return (h("caption", { key: 'baeddf92648dcbf2965b0c3832e54f196a95dabe', class: cls("db-table-caption", this.className), ref: (el) => {
50
49
  this._ref = el;
51
- }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, href: this.href, target: this.target, rel: this.rel, role: this.role, referrerPolicy: (_c = this.referrerpolicy) !== null && _c !== void 0 ? _c : this.referrerPolicy, hrefLang: this.hreflang, "aria-disabled": getBooleanAsString(this.disabled), tabIndex: this.disabled ? -1 : 0, "data-size": this.size, "data-show-icon-trailing": getBooleanAsString((_d = this.showIcon) !== null && _d !== void 0 ? _d : true), "data-variant": this.variant, "data-content": this.content || "internal", "data-wrap": getBooleanAsString(this.wrap) }, this.text ? this.text : h("slot", null)));
50
+ }, id: this.id }, h("slot", { key: '46e4b15773e65ae78bd93699c41b463a2783fcd3' })));
52
51
  }
53
52
  };
54
53
 
55
- export { DBLink as db_link };
54
+ export { DBTableCaption as db_table_caption };
@@ -0,0 +1,134 @@
1
+ import { r as registerInstance, h, F as Fragment } from './index-LpjjuLKB.js';
2
+ import { d as delay, g as getBooleanAsString, c as cls } from './index-xkoBSP8R.js';
3
+
4
+ const DBTable = class {
5
+ constructor(hostRef) {
6
+ registerInstance(this, hostRef);
7
+ this._data = undefined;
8
+ this._style = undefined;
9
+ }
10
+ convertData() {
11
+ try {
12
+ if (typeof this.data === "string") {
13
+ return JSON.parse(this.data);
14
+ }
15
+ return this.data;
16
+ }
17
+ catch (error) {
18
+ console.error(error);
19
+ }
20
+ return {};
21
+ }
22
+ /**
23
+ * Passes `aria-*`, `data-*` & `class` attributes to correct child. Used in angular and stencil.
24
+ * @param element the ref for the component
25
+ * @param customElementSelector the custom element like `my-component`
26
+ */
27
+ enableAttributePassing(element, customElementSelector) {
28
+ const parent = element === null || element === void 0 ? void 0 : element.closest(customElementSelector);
29
+ if (element && parent) {
30
+ const attributes = parent.attributes;
31
+ for (let i = 0; i < attributes.length; i++) {
32
+ const attr = attributes.item(i);
33
+ if (attr && attr.name !== 'data-density' &&
34
+ (attr.name.startsWith("data-") || attr.name.startsWith("aria-"))) {
35
+ element.setAttribute(attr.name, attr.value);
36
+ parent.removeAttribute(attr.name);
37
+ }
38
+ else if (attr && attr.name !== 'data-density' && attr.name !== "class" && attr.name === "style") {
39
+ element.setAttribute(attr.name, attr.value);
40
+ parent.removeAttribute(attr.name);
41
+ }
42
+ else if (attr && attr.name === "class") {
43
+ const isWebComponent = attr.value.includes("hydrated");
44
+ const value = attr.value.replace("hydrated", "").trim();
45
+ const currentClass = element.getAttribute("class");
46
+ element.setAttribute(attr.name, `${currentClass ? `${currentClass} ` : ""}${value}`);
47
+ if (isWebComponent) {
48
+ // Stencil is using this class for lazy loading component
49
+ parent.setAttribute("class", "hydrated");
50
+ }
51
+ else {
52
+ parent.removeAttribute(attr.name);
53
+ }
54
+ }
55
+ }
56
+ }
57
+ }
58
+ watch0Fn() {
59
+ if (this.data) {
60
+ this._data = this.convertData();
61
+ }
62
+ }
63
+ watch0() {
64
+ this.watch0Fn();
65
+ }
66
+ watch1Fn() {
67
+ if (this._ref && this.mobileVariant === "list") {
68
+ // Delay for angular
69
+ void delay(() => {
70
+ const table = this._ref;
71
+ if (!table)
72
+ return;
73
+ const headerCells = table.querySelectorAll("thead tr th");
74
+ if (headerCells.length) {
75
+ const otherRows = table.querySelectorAll(":is(tbody,tfoot) tr");
76
+ otherRows.forEach((row) => {
77
+ const cells = row.querySelectorAll(":is(td,th)");
78
+ cells.forEach((cell, index) => {
79
+ const headerCell = headerCells[index];
80
+ if (headerCell &&
81
+ headerCell.textContent &&
82
+ !cell.dataset["header"]) {
83
+ cell.dataset["header"] = headerCell.textContent.trim();
84
+ }
85
+ });
86
+ });
87
+ }
88
+ }, 1);
89
+ }
90
+ }
91
+ watch1() {
92
+ this.watch1Fn();
93
+ }
94
+ watch2Fn() {
95
+ if (this.columnSizes) {
96
+ const columnStyles = {};
97
+ Object.entries(this.columnSizes).forEach(([key, value]) => {
98
+ columnStyles[`--db-table-column-size-${key}`] = value;
99
+ });
100
+ this._style = columnStyles;
101
+ }
102
+ }
103
+ watch2() {
104
+ this.watch2Fn();
105
+ }
106
+ componentDidLoad() {
107
+ this.enableAttributePassing(this._ref, "db-table");
108
+ this.watch0Fn();
109
+ this.watch1Fn();
110
+ this.watch2Fn();
111
+ }
112
+ render() {
113
+ var _a, _b, _c, _d, _e, _f;
114
+ return (h("div", { key: 'f64631aec68b83467db063e5e0923144743bce72', class: cls("db-table", this.className), style: this._style, "data-width": this.width, "data-size": this.size, "data-divider": this.divider, "data-variant": this.variant, "data-mobile-variant": this.mobileVariant, "data-show-caption": getBooleanAsString(this.showCaption), "data-sticky-header": this.stickyHeader }, h("table", { key: '6cce6265d3907c99c333d8c4d209493548f22b36', ref: (el) => {
115
+ this._ref = el;
116
+ }, id: this.id }, h("caption", { key: '3ad5a7a85bd195180b842b39a5b2aeaebdd3bee7' }, this.captionPlain ? (this.captionPlain) : (h("slot", { name: "caption" }))), this._data ? (h(Fragment, null, ((_a = this._data) === null || _a === void 0 ? void 0 : _a.header) ? (h("db-table-head", { rows: (_b = this._data) === null || _b === void 0 ? void 0 : _b.header })) : null, ((_c = this._data) === null || _c === void 0 ? void 0 : _c.body) ? (h("db-table-body", { rows: (_d = this._data) === null || _d === void 0 ? void 0 : _d.body })) : null, ((_e = this._data) === null || _e === void 0 ? void 0 : _e.footer) ? (h("db-table-footer", { rows: (_f = this._data) === null || _f === void 0 ? void 0 : _f.footer })) : null)) : (h("slot", null)))));
117
+ }
118
+ static get watchers() { return {
119
+ "data": [{
120
+ "watch0": 0
121
+ }],
122
+ "mobileVariant": [{
123
+ "watch1": 0
124
+ }],
125
+ "_ref": [{
126
+ "watch1": 0
127
+ }],
128
+ "columnSizes": [{
129
+ "watch2": 0
130
+ }]
131
+ }; }
132
+ };
133
+
134
+ export { DBTable as db_table };
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, c as createEvent, h, F as Fragment } from './index-LpjjuLKB.js';
2
2
  import { u as uuid, c as cls } from './index-xkoBSP8R.js';
3
3
 
4
4
  const DBTabs = class {
@@ -206,10 +206,10 @@ const DBTabs = class {
206
206
  }
207
207
  render() {
208
208
  var _a, _b, _c, _d, _e, _f;
209
- return (h("div", { key: '20d8d662866ff60717de87ad4deb98a3b647672a', class: cls("db-tabs", this.className), ref: (el) => {
209
+ return (h("div", { key: 'f3fb4ac197d61be6eafccb2f467c6f3aa70e3063', class: cls("db-tabs", this.className), ref: (el) => {
210
210
  this._ref = el;
211
211
  }, id: (_a = this.id) !== null && _a !== void 0 ? _a : (_b = this.propOverrides) === null || _b === void 0 ? void 0 : _b.id, "data-orientation": this.orientation, "data-scroll-behavior": this.behavior, "data-alignment": (_c = this.alignment) !== null && _c !== void 0 ? _c : "start", "data-width": (_d = this.width) !== null && _d !== void 0 ? _d : "auto", onInput: (event) => this.handleChange(event), onChange: (event) => this.handleChange(event) }, this.showScrollLeft ? (h("db-button", { class: "tabs-scroll-left", variant: "ghost", icon: "chevron_left", type: "button", noText: true, onClick: () => this.scroll(true) }, "Scroll left")) : null, this.tabs ? (h(Fragment, null, h("db-tab-list", null, (_e = this.convertTabs()) === null || _e === void 0 ? void 0 : _e.map((tab, index) => (h("db-tab-item", { key: this.name + "tab-item" + index, active: tab.active, label: tab.label, iconTrailing: tab.iconTrailing, icon: tab.icon, noText: tab.noText })))), (_f = this.convertTabs()) === null || _f === void 0 ? void 0 :
212
- _f.map((tab, index) => (h("db-tab-panel", { key: this.name + "tab-panel" + index, content: tab.content }, tab.children))))) : null, this.showScrollRight ? (h("db-button", { class: "tabs-scroll-right", variant: "ghost", icon: "chevron_right", type: "button", noText: true, onClick: () => this.scroll() }, "Scroll right")) : null, h("slot", { key: 'f9803a647f9a01adc0b20eb6bdb999f38c3602af' })));
212
+ _f.map((tab, index) => (h("db-tab-panel", { key: this.name + "tab-panel" + index, content: tab.content }, tab.children))))) : null, this.showScrollRight ? (h("db-button", { class: "tabs-scroll-right", variant: "ghost", icon: "chevron_right", type: "button", noText: true, onClick: () => this.scroll() }, "Scroll right")) : null, h("slot", { key: 'e0ff10fbe01c7e4f60c3d401636c351be31d2197' })));
213
213
  }
214
214
  static get watchers() { return {
215
215
  "_ref": [{
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, c as createEvent, h } from './index-LpjjuLKB.js';
2
2
  import { l as DEFAULT_INVALID_MESSAGE, f as DEFAULT_MESSAGE_ID_SUFFIX, g as DEFAULT_VALID_MESSAGE_ID_SUFFIX, h as DEFAULT_INVALID_MESSAGE_ID_SUFFIX, k as DEFAULT_VALID_MESSAGE, b as DEFAULT_PLACEHOLDER, r as DEFAULT_ROWS, a as DEFAULT_LABEL } from './constants-BdL-nI5y.js';
3
3
  import { h as hasVoiceOver, d as delay, s as stringPropVisible, u as uuid, f as getNumber, e as getBoolean, l as getHideProp, c as cls } from './index-xkoBSP8R.js';
4
4
  import { c as addValueResetEventListener } from './form-components-D6LQfJvq.js';
@@ -201,10 +201,10 @@ const DBTextarea = class {
201
201
  }
202
202
  render() {
203
203
  var _a, _b, _c, _d, _e;
204
- return (h("div", { key: 'acb23abfb477beeceebdf88503a51a6aa90e268e', class: cls("db-textarea", this.className), "data-variant": this.variant, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-hide-label": getHideProp(this.showLabel) }, h("label", { key: '03df1963dce7436d616df5f26c8fbff37243421f', htmlFor: this._id }, (_a = this.label) !== null && _a !== void 0 ? _a : DEFAULT_LABEL), h("textarea", { key: 'b09e8a714ee44c18a2af738d90c6939309eb143c', "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, "data-field-sizing": this.fieldSizing, ref: (el) => {
204
+ return (h("div", { key: '1df1ca2804c2bee763a928d48324437be67fabef', class: cls("db-textarea", this.className), "data-variant": this.variant, "data-hide-asterisk": getHideProp(this.showRequiredAsterisk), "data-hide-label": getHideProp(this.showLabel) }, h("label", { key: 'ee3f721a5fb4c79d57de1942cae4a8fd232d22da', htmlFor: this._id }, (_a = this.label) !== null && _a !== void 0 ? _a : DEFAULT_LABEL), h("textarea", { key: '431cc52f6b2d373e2d25c85cda4bc7fa7b35bb55', "aria-invalid": this.validation === "invalid", "data-custom-validity": this.validation, "data-field-sizing": this.fieldSizing, ref: (el) => {
205
205
  this._ref = el;
206
206
  }, id: this._id, "data-resize": this.resize, "data-hide-resizer": getHideProp((_b = this.showResizer) !== null && _b !== void 0 ? _b : true), disabled: getBoolean(this.disabled, "disabled"), required: getBoolean(this.required, "required"), readOnly: getBoolean(this.readOnly, "readOnly") ||
207
- getBoolean(this.readonly, "readonly"), form: this.form, maxLength: getNumber(this.maxLength, this.maxlength), minLength: getNumber(this.minLength, this.minlength), name: this.name, wrap: this.wrap, spellcheck: this.spellCheck, autocomplete: this.autocomplete, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), value: (_c = this.value) !== null && _c !== void 0 ? _c : this._value, "aria-describedby": (_d = this.ariaDescribedBy) !== null && _d !== void 0 ? _d : this._descByIds, placeholder: (_e = this.placeholder) !== null && _e !== void 0 ? _e : DEFAULT_PLACEHOLDER, rows: getNumber(this.rows, DEFAULT_ROWS), cols: getNumber(this.cols) }), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: 'c62d3e639536d955cc454b43c289b0ad11e9d7b3', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '430d5b39be9fa9eb29c7720f46be601fa1f25161', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
207
+ getBoolean(this.readonly, "readonly"), form: this.form, maxLength: getNumber(this.maxLength, this.maxlength), minLength: getNumber(this.minLength, this.minlength), name: this.name, wrap: this.wrap, spellcheck: this.spellCheck, autocomplete: this.autocomplete, onInput: (event) => this.handleInput(event), onChange: (event) => this.handleChange(event), onBlur: (event) => this.handleBlur(event), onFocus: (event) => this.handleFocus(event), value: (_c = this.value) !== null && _c !== void 0 ? _c : this._value, "aria-describedby": (_d = this.ariaDescribedBy) !== null && _d !== void 0 ? _d : this._descByIds, placeholder: (_e = this.placeholder) !== null && _e !== void 0 ? _e : DEFAULT_PLACEHOLDER, rows: getNumber(this.rows, DEFAULT_ROWS), cols: getNumber(this.cols) }), stringPropVisible(this.message, this.showMessage) ? (h("db-infotext", { size: "small", icon: this.messageIcon, id: this._messageId }, this.message)) : null, this.hasValidState() ? (h("db-infotext", { size: "small", semantic: "successful", id: this._validMessageId }, this.validMessage || DEFAULT_VALID_MESSAGE)) : null, h("db-infotext", { key: '654ff4562dc5f762ba52c0e0761a1376d4d88fdc', size: "small", semantic: "critical", id: this._invalidMessageId }, this._invalidMessage), h("span", { key: '5c5af1f93bb8b1494d22f6278076c2cf25887f86', "data-visually-hidden": "true", role: "status" }, this._voiceOverFallback)));
208
208
  }
209
209
  static get watchers() { return {
210
210
  "id": [{
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h } from './index-kHKR5QG5.js';
1
+ import { r as registerInstance, h } from './index-LpjjuLKB.js';
2
2
  import { D as DEFAULT_ID } from './constants-BdL-nI5y.js';
3
3
  import { d as delay, u as uuid, g as getBooleanAsString, c as cls } from './index-xkoBSP8R.js';
4
4
  import { D as DocumentScrollListener } from './document-scroll-listener-DOBe3Oa9.js';
@@ -156,9 +156,9 @@ const DBTooltip = class {
156
156
  }
157
157
  render() {
158
158
  var _a, _b;
159
- return (h("i", { key: 'df7b27f485e4029f51329dd73e50603f6965efb8', class: cls("db-tooltip", this.className), role: "tooltip", "aria-hidden": "true", "data-gap": "true", ref: (el) => {
159
+ return (h("i", { key: '28e7ae8a00ad233525996c1fdda68465d5fbe33e', class: cls("db-tooltip", this.className), role: "tooltip", "aria-hidden": "true", "data-gap": "true", ref: (el) => {
160
160
  this._ref = el;
161
- }, id: this._id, "data-emphasis": this.emphasis, "data-wrap": getBooleanAsString(this.wrap), "data-animation": getBooleanAsString((_a = this.animation) !== null && _a !== void 0 ? _a : true), "data-delay": this.delay, "data-width": this.width, "data-show-arrow": getBooleanAsString((_b = this.showArrow) !== null && _b !== void 0 ? _b : true), "data-placement": this.placement, onClick: (event) => this.handleClick(event) }, h("slot", { key: '7c1aee92a530f8b0899231f55122f6109c72bc46' })));
161
+ }, id: this._id, "data-emphasis": this.emphasis, "data-wrap": getBooleanAsString(this.wrap), "data-animation": getBooleanAsString((_a = this.animation) !== null && _a !== void 0 ? _a : true), "data-delay": this.delay, "data-width": this.width, "data-show-arrow": getBooleanAsString((_b = this.showArrow) !== null && _b !== void 0 ? _b : true), "data-placement": this.placement, onClick: (event) => this.handleClick(event) }, h("slot", { key: '30baf105fab31565512655e1823ee1c2a7311a0a' })));
162
162
  }
163
163
  static get watchers() { return {
164
164
  "id": [{