xv-webcomponents 2.0.0-beta.2 → 2.0.0-beta.28

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 (166) hide show
  1. package/README.md +3 -2
  2. package/dist/angular/index.d.ts +1 -1
  3. package/dist/angular/index.js +3 -4
  4. package/dist/angular/proxies.d.ts +60 -34
  5. package/dist/angular/proxies.js +51 -67
  6. package/dist/angular/web-components.module.d.ts +1 -1
  7. package/dist/angular/web-components.module.js +10 -13
  8. package/dist/cjs/{index-Cfa6bBQW.js → index-DaTpiyaU.js} +1 -1
  9. package/dist/cjs/{index-Cixkr3sz.js → index-Dwhgrew8.js} +15 -10
  10. package/dist/cjs/index.cjs.js +2 -2
  11. package/dist/cjs/loader.cjs.js +2 -2
  12. package/dist/cjs/{xv-accordion-v2_50.cjs.entry.js → xv-accordion-v2_49.cjs.entry.js} +1529 -147
  13. package/dist/cjs/xv-header-next.cjs.entry.js +2 -2
  14. package/dist/cjs/xv-mega-menu-next.cjs.entry.js +2 -2
  15. package/dist/cjs/xv-webcomponents.cjs.js +3 -3
  16. package/dist/collection/collection-manifest.json +1 -2
  17. package/dist/collection/components/xv-overflow-menu/xv-overflow-menu.js +9 -8
  18. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.css +129 -61
  19. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.js +277 -78
  20. package/dist/collection/components/xv-table/xv-table-row/xv-table-row.css +138 -24
  21. package/dist/collection/components/xv-table/xv-table-row/xv-table-row.js +334 -168
  22. package/dist/collection/components/xv-table/xv-table.css +240 -99
  23. package/dist/collection/components/xv-table/xv-table.js +2056 -63
  24. package/dist/collection/components/xv-table/xv-table.model.js +10 -0
  25. package/dist/collection/components/xv-table/xv-table.utils.js +243 -0
  26. package/dist/collection/components/xv-tabs/xv-tab/xv-tab.js +1 -1
  27. package/dist/collection/components/xv-tag/xv-tag.js +1 -1
  28. package/dist/collection/components/xv-tag-combobox/xv-tag-combobox.js +2 -2
  29. package/dist/collection/components/xv-text-input/xv-text-input.js +2 -2
  30. package/dist/collection/components/xv-textarea/xv-textarea.js +2 -2
  31. package/dist/collection/components/xv-tile/xv-tile.js +2 -2
  32. package/dist/collection/components/xv-toggle/xv-toggle.js +1 -1
  33. package/dist/collection/components/xv-toggle-tip/xv-toggle-tip.js +1 -1
  34. package/dist/collection/components/xv-tooltip/xv-tooltip.js +2 -2
  35. package/dist/collection/utils/table-layout.js +130 -0
  36. package/dist/components/index.js +1 -1
  37. package/dist/components/p-B0kwaJ8n.js +1 -0
  38. package/dist/components/{p-CbVZCn2p.js → p-BEoh0dZI.js} +1 -1
  39. package/dist/components/{p-ZYJfCCwX.js → p-BaZ-srfu.js} +1 -1
  40. package/dist/components/{p-DyGMZIub.js → p-Bej2l-wN.js} +1 -1
  41. package/dist/components/{p-Ddx5DwV5.js → p-BfhvpeQh.js} +1 -1
  42. package/dist/components/{p-kQVUwJXZ.js → p-CSYnNMKb.js} +1 -1
  43. package/dist/components/{p-BNP2Lw34.js → p-CspyoLL9.js} +1 -1
  44. package/dist/components/p-CvgDDcjp.js +1 -0
  45. package/dist/components/{p-COoj5JkZ.js → p-D4FwGeDJ.js} +1 -1
  46. package/dist/components/p-DCvH_Br_.js +1 -0
  47. package/dist/components/{p-CEjlxnKY.js → p-DFe9Mtw_.js} +1 -1
  48. package/dist/components/{p-BRZwUlfE.js → p-DFtMwE-h.js} +1 -1
  49. package/dist/components/p-DIvi4fI3.js +1 -0
  50. package/dist/components/{p-DTwz9Fsh.js → p-DNRISLNf.js} +1 -1
  51. package/dist/components/p-DPnvoOYj.js +1 -0
  52. package/dist/components/{p-Dzz9jxLm.js → p-Dwbe941A.js} +1 -1
  53. package/dist/components/{p-CMAJWZsP.js → p-JClekcEh.js} +1 -1
  54. package/dist/components/{p-DtUNYh73.js → p-NoM9oIJn.js} +1 -1
  55. package/dist/components/{p-DlLBjhuH.js → p-XEk4dHG3.js} +1 -1
  56. package/dist/components/p-i7_81si-.js +1 -0
  57. package/dist/components/{p-BRYrLHiz.js → p-i82EFiq6.js} +1 -1
  58. package/dist/components/{p-BXB4D7j4.js → p-jD7nSJaM.js} +1 -1
  59. package/dist/components/xv-accordion-v2-item.js +1 -1
  60. package/dist/components/xv-accordion-v2.js +1 -1
  61. package/dist/components/xv-breadcrumbs-v2.js +1 -1
  62. package/dist/components/xv-button-group-v2.js +1 -1
  63. package/dist/components/xv-button-v2.js +1 -1
  64. package/dist/components/xv-card-v2.js +1 -1
  65. package/dist/components/xv-checkbox-v2.js +1 -1
  66. package/dist/components/xv-content-switcher-item-v2.js +1 -1
  67. package/dist/components/xv-content-switcher-v2.js +1 -1
  68. package/dist/components/xv-data-table-cell.js +1 -1
  69. package/dist/components/xv-data-table-collapse.js +1 -1
  70. package/dist/components/xv-data-table-row.js +1 -1
  71. package/dist/components/xv-data-table.js +2 -2
  72. package/dist/components/xv-date-picker.js +1 -1
  73. package/dist/components/xv-datepicker.js +1 -1
  74. package/dist/components/xv-dropdown-v2-item.js +1 -1
  75. package/dist/components/xv-dropdown-v2.js +1 -1
  76. package/dist/components/xv-file-uploader.js +1 -1
  77. package/dist/components/xv-footer.js +1 -1
  78. package/dist/components/xv-geo-map-v2.js +1 -1
  79. package/dist/components/xv-header-next.js +1 -1
  80. package/dist/components/xv-header.js +1 -1
  81. package/dist/components/xv-image-viewer.js +1 -1
  82. package/dist/components/xv-link-v2.js +1 -1
  83. package/dist/components/xv-loader-v2.js +1 -1
  84. package/dist/components/xv-login-modal.js +1 -1
  85. package/dist/components/xv-mega-menu-next.js +1 -1
  86. package/dist/components/xv-mega-menu.js +1 -1
  87. package/dist/components/xv-modal-v2.js +1 -1
  88. package/dist/components/xv-notification-v2.js +1 -1
  89. package/dist/components/xv-number-input-v2.js +1 -1
  90. package/dist/components/xv-overflow-menu-v2-item.js +1 -1
  91. package/dist/components/xv-overflow-menu-v2.js +1 -1
  92. package/dist/components/xv-pagination.js +1 -1
  93. package/dist/components/xv-progress-indicator-v2-item.js +1 -1
  94. package/dist/components/xv-progress-indicator-v2.js +1 -1
  95. package/dist/components/xv-radio-v2.js +1 -1
  96. package/dist/components/xv-slider-v2.js +1 -1
  97. package/dist/components/xv-tab-v2.js +1 -1
  98. package/dist/components/{xv-table-v2-row.d.ts → xv-table-cell.d.ts} +4 -4
  99. package/dist/components/xv-table-cell.js +1 -0
  100. package/dist/components/{xv-table-v2-cell.d.ts → xv-table-row.d.ts} +4 -4
  101. package/dist/components/xv-table-row.js +1 -0
  102. package/dist/components/{xv-table-v2.d.ts → xv-table.d.ts} +4 -4
  103. package/dist/components/xv-table.js +1 -0
  104. package/dist/components/xv-tabs-v2.js +1 -1
  105. package/dist/components/xv-tag-combobox.js +1 -1
  106. package/dist/components/xv-tag-v2.js +1 -1
  107. package/dist/components/xv-text-input-v2.js +1 -1
  108. package/dist/components/xv-textarea.js +1 -1
  109. package/dist/components/xv-tile.js +1 -1
  110. package/dist/components/xv-toggle-tip.js +1 -1
  111. package/dist/components/xv-toggle.js +1 -1
  112. package/dist/components/xv-tooltip-v2.js +1 -1
  113. package/dist/custom-elements.json +1765 -294
  114. package/dist/docs.json +2749 -443
  115. package/dist/esm/{index-B6cY-_U1.js → index-ClusqSO5.js} +1 -1
  116. package/dist/esm/{index-Bu8SrOeR.js → index-DJC3-dS3.js} +15 -10
  117. package/dist/esm/index.js +2 -2
  118. package/dist/esm/loader.js +3 -3
  119. package/dist/esm/{xv-accordion-v2_50.entry.js → xv-accordion-v2_49.entry.js} +1527 -144
  120. package/dist/esm/xv-header-next.entry.js +2 -2
  121. package/dist/esm/xv-mega-menu-next.entry.js +2 -2
  122. package/dist/esm/xv-webcomponents.js +4 -4
  123. package/dist/react/components.d.ts +3 -4
  124. package/dist/react/components.js +3 -4
  125. package/dist/react/{xv-table-v2-expand.d.ts → xv-table-cell.d.ts} +3 -3
  126. package/dist/react/xv-table-cell.js +14 -0
  127. package/dist/react/{xv-table-v2.d.ts → xv-table-row.d.ts} +3 -3
  128. package/dist/react/{xv-table-v2.js → xv-table-row.js} +5 -5
  129. package/dist/react/xv-table.d.ts +18 -0
  130. package/dist/react/xv-table.js +22 -0
  131. package/dist/types/components/xv-table/xv-table-cell/xv-table-cell.d.ts +43 -8
  132. package/dist/types/components/xv-table/xv-table-row/xv-table-row.d.ts +57 -18
  133. package/dist/types/components/xv-table/xv-table.d.ts +298 -9
  134. package/dist/types/components/xv-table/xv-table.model.d.ts +78 -0
  135. package/dist/types/components/xv-table/xv-table.utils.d.ts +47 -0
  136. package/dist/types/components.d.ts +899 -118
  137. package/dist/types/stencil-public-runtime.d.ts +61 -55
  138. package/dist/types/utils/table-layout.d.ts +7 -0
  139. package/dist/vscode-data.json +347 -56
  140. package/dist/xv-webcomponents/index.esm.js +1 -1
  141. package/dist/xv-webcomponents/{p-1ffb0b4f.entry.js → p-0c30d09f.entry.js} +1 -1
  142. package/dist/xv-webcomponents/{p-eb9d7750.entry.js → p-6b58979e.entry.js} +2 -2
  143. package/dist/xv-webcomponents/{p-Bu8SrOeR.js → p-DJC3-dS3.js} +2 -2
  144. package/dist/xv-webcomponents/{p-DB4KqDJz.js → p-DSFVdw3w.js} +1 -1
  145. package/dist/xv-webcomponents/{p-d4d26ff2.entry.js → p-c4173686.entry.js} +1 -1
  146. package/dist/xv-webcomponents/xv-webcomponents.esm.js +1 -1
  147. package/package.json +139 -139
  148. package/dist/collection/components/xv-table/_vars.js +0 -2
  149. package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.css +0 -58
  150. package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.js +0 -75
  151. package/dist/components/p-CHtssNO9.js +0 -1
  152. package/dist/components/p-CILNPUHH.js +0 -1
  153. package/dist/components/p-DVZ2BlIP.js +0 -1
  154. package/dist/components/p-bdaoJ1tx.js +0 -1
  155. package/dist/components/xv-table-v2-cell.js +0 -1
  156. package/dist/components/xv-table-v2-expand.d.ts +0 -11
  157. package/dist/components/xv-table-v2-expand.js +0 -1
  158. package/dist/components/xv-table-v2-row.js +0 -1
  159. package/dist/components/xv-table-v2.js +0 -1
  160. package/dist/react/xv-table-v2-cell.d.ts +0 -12
  161. package/dist/react/xv-table-v2-cell.js +0 -14
  162. package/dist/react/xv-table-v2-expand.js +0 -14
  163. package/dist/react/xv-table-v2-row.d.ts +0 -13
  164. package/dist/react/xv-table-v2-row.js +0 -17
  165. package/dist/types/components/xv-table/_vars.d.ts +0 -15
  166. package/dist/types/components/xv-table/xv-table-expand/xv-table-expand.d.ts +0 -8
@@ -1,53 +1,89 @@
1
- import { Host, h } from "@stencil/core";
2
- import { XV_EXPANDABLE_KEY, XV_TABLE_TAG } from "../_vars";
3
- import { setAttr, uidGenerator } from "../../../utils/utils";
1
+ import { h, Host } from "@stencil/core";
2
+ import { SIZE_VAR } from "../../../types/enum";
3
+ /**
4
+ * One row of a table. Everything it needs is pushed down by `xv-table`, so it never reads the
5
+ * table's attributes itself — the old row did that on `slotchange` only and went stale.
6
+ *
7
+ * @slot - The row's `xv-table-cell` children.
8
+ * @slot expand - Content revealed when the row is expanded. Spans the full row width.
9
+ * @part row - The row host.
10
+ * @part control - A leading or trailing control cell (selection, expand).
11
+ * @part expand-button - The expand toggle.
12
+ * @part expand-panel - The revealed panel.
13
+ * @part grip - The drag handle shown when the table reorders rows by icon.
14
+ */
4
15
  export class XvTableRow {
5
16
  constructor() {
6
- this.checkHandle = ({ detail: checked }) => {
7
- if (!checked && this.partial)
8
- this.partial = checked;
9
- if (!this.name)
10
- this.name = uidGenerator();
11
- this.selectRow.emit({
12
- name: this.name,
13
- value: this.value,
14
- checked: checked,
15
- partial: this.partial,
16
- header: this.header,
17
- expandable: this.el.getAttribute('slot') === XV_EXPANDABLE_KEY,
18
- });
19
- };
17
+ /** Identifies the row in selection and expansion payloads. */
18
+ this.value = '';
19
+ /** Selection control rendered in the leading cell. Set by the table. */
20
+ this.selectionMode = 'none';
21
+ /** Whether the row can be expanded. Set by the table. */
22
+ this.expandMode = 'none';
23
+ /** Whether the row offers its selection control. A header with no rows under it has nothing to pick. */
24
+ this.selectable = true;
25
+ /** Row height ladder. Set by the table. */
26
+ this.size = SIZE_VAR.MD;
27
+ /** Whether the row is selected. */
28
+ this.selected = false;
29
+ /** Indeterminate state of the header row's select-all checkbox. */
30
+ this.partial = false;
31
+ /** Whether the row's expand panel is open. */
32
+ this.expanded = false;
33
+ /**
34
+ * Value of the row this one belongs to. Child rows are siblings in the same grid, so they keep
35
+ * the table's columns instead of living in a panel of their own.
36
+ */
37
+ // Not reflected: an empty default would put parent="" on every row and break [parent] selectors.
38
+ this.parent = '';
39
+ /** Whether this row has anything to expand. Set by the table. */
40
+ this.expandable = false;
41
+ /** Whether the row carries `slot="expand"` content. Set by the table. */
42
+ this.hasPanel = false;
43
+ /** Renders the row as a subtotal or grouping row: no controls, accented background. */
44
+ this.group = false;
45
+ /** Marks the row as the table's header. Its cells supply the column labels. */
46
+ this.header = false;
47
+ /** Highlights the row on pointer hover. Set by the table. */
48
+ this.hover = false;
49
+ /** Blocks selection and expansion. */
50
+ this.disabled = false;
51
+ /** Whether this row can be dragged into a new position. Set by the table. */
52
+ this.rowReorderable = false;
53
+ /** Whether the whole row drags, or only its grip. Set by the table. */
54
+ this.rowReorderHandle = 'icon';
55
+ /** Accessible name of the expand toggle. Set by the table. */
56
+ this.expandLabel = 'Toggle row';
57
+ /** Accessible name of the drag grip. Set by the table. */
58
+ this.reorderLabel = 'Drag to reorder';
20
59
  }
21
- checkedChangeHandle() {
22
- if (!this.name)
23
- this.name = uidGenerator();
24
- this.checkedChange.emit({
25
- name: this.name,
26
- value: this.value,
27
- checked: this.checked,
28
- partial: this.partial,
29
- header: this.header,
30
- expandable: this.el.getAttribute('slot') === XV_EXPANDABLE_KEY,
31
- });
60
+ // `draggable` is an enumerated attribute, not a boolean one: rendered as `draggable=""` it reads
61
+ // as `auto`, which never drags. The property reflects the string the browser expects.
62
+ componentDidRender() {
63
+ this.el.draggable = this.dragsWholeRow;
32
64
  }
33
- setInitialAttrs() {
34
- if (this.variant || !this.hover) {
35
- const tableEl = this.el.closest(XV_TABLE_TAG);
36
- if (!this.hover) {
37
- this.hover = tableEl.hasAttribute('hover');
38
- }
39
- if (this.variant) {
40
- setAttr(this.el.closest(XV_TABLE_TAG), `variant-${this.variant}`, !!this.variant);
41
- }
42
- }
65
+ get dragsWholeRow() {
66
+ return (this.rowReorderable &&
67
+ this.rowReorderHandle === 'row' &&
68
+ !this.group &&
69
+ !this.header &&
70
+ !this.disabled &&
71
+ this.el.slot !== 'footer');
43
72
  }
44
73
  render() {
45
- return (h(Host, { key: '96836583a7db08fbbe974a6ece55d5a909a7e415' }, this.variant !== undefined && (h("xv-table-v2-cell", { key: '0783aad6e26302d3430333cad806fc1747e26e39', class: "cell-control" }, this.variant === 'checkbox' && (h("xv-checkbox-v2", { key: 'bd4e052458eeda60f79e22507ac25d5914f39c0c', name: this.name, partial: this.partial, checked: this.checked || this.partial, disabled: this.disabled, required: this.required, readonly: this.readonly, onEventChange: this.checkHandle })), this.variant === 'radio' && (h("input", { key: '1cda8e32f1e8d6ad47fc93e63ee3c879651faa2a', type: "radio", name: this.name, checked: this.checked || this.partial, disabled: this.disabled, required: this.required, readonly: this.readonly })))), h("slot", { key: '2a74a7a6ab1c5d997bf71fe99b6cd98b61a70219' })));
74
+ // Empty spacers, or a group row's cells slide into the control tracks.
75
+ const hasSelect = this.selectionMode !== 'none';
76
+ const hasExpand = this.expandMode !== 'none';
77
+ // A header keeps the control cells as spacers, like a group row: it has nothing to expand or drag.
78
+ const expandable = hasExpand && !this.group && !this.header && this.expandable;
79
+ const draggable = this.rowReorderable && !this.group && !this.header && !this.disabled && this.el.slot !== 'footer';
80
+ // An empty panel would still paint its padding and background, so it is not rendered at all.
81
+ const panel = expandable && this.hasPanel;
82
+ return (h(Host, { key: 'ff2940779a1781b9a953629e4c8bf9a7431105fb', role: "row", part: "row" }, this.rowReorderable && (h("div", { key: 'd37b95aa6e56d073f1a9183be0475835b991f9d9', class: "control control--grip", part: "control", role: "cell" }, draggable && this.rowReorderHandle === 'icon' && (h("span", { key: '806316bd3cfb4340069418b3a43791073800d8fd', class: "control_grip", part: "grip", ref: element => element && (element.draggable = true), "aria-label": this.reorderLabel })))), hasExpand && (h("div", { key: 'e8455932d6147a965a27fbe2543ceeece4a65be8', class: "control control--expand", part: "control", role: "cell" }, expandable && (h("button", { key: 'eff064a985e9e6e44f122a42658f36ebd4f8d443', type: "button", class: { control_expand: true, open: this.expanded }, part: "expand-button", disabled: this.disabled, "aria-expanded": String(this.expanded), "aria-label": this.expandLabel })))), hasSelect && (h("div", { key: '97ffdebfe4ef650aa45020ff54449db83f252f68', class: "control control--lead", part: "control", role: "cell" }, !this.group &&
83
+ this.selectable &&
84
+ (this.selectionMode === 'multiple' ? (h("xv-checkbox-v2", { class: "control_input", checked: this.selected || this.partial, partial: this.partial, disabled: this.disabled, size: this.size })) : (h("xv-radio-v2", { class: "control_input", checked: this.selected, disabled: this.disabled, size: this.size }))))), h("slot", { key: '77414059aab52c6b11fe4b3571742eb9f4781fa8' }), panel && (h("div", { key: 'df45265616deac76f9bdb571def33be0a917bb01', class: "expand", part: "expand-panel", role: "cell", hidden: !this.expanded }, h("slot", { key: '986cbf15abb19462e98b4650ac707d0c79be54f4', name: "expand" })))));
46
85
  }
47
- componentWillLoad() {
48
- this.setInitialAttrs();
49
- }
50
- static get is() { return "xv-table-v2-row"; }
86
+ static get is() { return "xv-table-row"; }
51
87
  static get encapsulation() { return "shadow"; }
52
88
  static get originalStyleUrls() {
53
89
  return {
@@ -61,130 +97,168 @@ export class XvTableRow {
61
97
  }
62
98
  static get properties() {
63
99
  return {
64
- "checked": {
65
- "type": "boolean",
66
- "mutable": true,
100
+ "value": {
101
+ "type": "any",
102
+ "mutable": false,
67
103
  "complexType": {
68
- "original": "SelectRowDto['checked']",
69
- "resolved": "boolean",
104
+ "original": "string | number",
105
+ "resolved": "number | string",
106
+ "references": {}
107
+ },
108
+ "required": false,
109
+ "optional": false,
110
+ "docs": {
111
+ "tags": [],
112
+ "text": "Identifies the row in selection and expansion payloads."
113
+ },
114
+ "getter": false,
115
+ "setter": false,
116
+ "reflect": false,
117
+ "attribute": "value",
118
+ "defaultValue": "''"
119
+ },
120
+ "selectionMode": {
121
+ "type": "string",
122
+ "mutable": false,
123
+ "complexType": {
124
+ "original": "XvTableSelectionMode",
125
+ "resolved": "\"multiple\" | \"none\" | \"single\"",
70
126
  "references": {
71
- "SelectRowDto": {
127
+ "XvTableSelectionMode": {
72
128
  "location": "import",
73
- "path": "../_vars",
74
- "id": "src/components/xv-table/_vars.ts::SelectRowDto",
75
- "referenceLocation": "SelectRowDto"
129
+ "path": "../xv-table.model",
130
+ "id": "src/components/xv-table/xv-table.model.ts::XvTableSelectionMode",
131
+ "referenceLocation": "XvTableSelectionMode"
76
132
  }
77
133
  }
78
134
  },
79
135
  "required": false,
80
- "optional": true,
136
+ "optional": false,
81
137
  "docs": {
82
138
  "tags": [],
83
- "text": ""
139
+ "text": "Selection control rendered in the leading cell. Set by the table."
84
140
  },
85
141
  "getter": false,
86
142
  "setter": false,
87
143
  "reflect": true,
88
- "attribute": "checked"
144
+ "attribute": "selection-mode",
145
+ "defaultValue": "'none'"
89
146
  },
90
- "partial": {
91
- "type": "boolean",
92
- "mutable": true,
147
+ "expandMode": {
148
+ "type": "string",
149
+ "mutable": false,
93
150
  "complexType": {
94
- "original": "SelectRowDto['partial']",
95
- "resolved": "boolean",
151
+ "original": "XvTableExpandMode",
152
+ "resolved": "\"multiple\" | \"none\" | \"single\"",
96
153
  "references": {
97
- "SelectRowDto": {
154
+ "XvTableExpandMode": {
98
155
  "location": "import",
99
- "path": "../_vars",
100
- "id": "src/components/xv-table/_vars.ts::SelectRowDto",
101
- "referenceLocation": "SelectRowDto"
156
+ "path": "../xv-table.model",
157
+ "id": "src/components/xv-table/xv-table.model.ts::XvTableExpandMode",
158
+ "referenceLocation": "XvTableExpandMode"
102
159
  }
103
160
  }
104
161
  },
105
162
  "required": false,
106
- "optional": true,
163
+ "optional": false,
107
164
  "docs": {
108
165
  "tags": [],
109
- "text": ""
166
+ "text": "Whether the row can be expanded. Set by the table."
110
167
  },
111
168
  "getter": false,
112
169
  "setter": false,
113
170
  "reflect": true,
114
- "attribute": "partial"
171
+ "attribute": "expand-mode",
172
+ "defaultValue": "'none'"
173
+ },
174
+ "selectable": {
175
+ "type": "boolean",
176
+ "mutable": false,
177
+ "complexType": {
178
+ "original": "boolean",
179
+ "resolved": "boolean",
180
+ "references": {}
181
+ },
182
+ "required": false,
183
+ "optional": false,
184
+ "docs": {
185
+ "tags": [],
186
+ "text": "Whether the row offers its selection control. A header with no rows under it has nothing to pick."
187
+ },
188
+ "getter": false,
189
+ "setter": false,
190
+ "reflect": false,
191
+ "attribute": "selectable",
192
+ "defaultValue": "true"
115
193
  },
116
- "name": {
194
+ "size": {
117
195
  "type": "string",
118
- "mutable": true,
196
+ "mutable": false,
119
197
  "complexType": {
120
- "original": "SelectRowDto['name']",
121
- "resolved": "string",
198
+ "original": "SIZE_VAR_STR",
199
+ "resolved": "\"lg\" | \"md\" | \"sm\" | \"xl\" | \"xs\"",
122
200
  "references": {
123
- "SelectRowDto": {
201
+ "SIZE_VAR_STR": {
124
202
  "location": "import",
125
- "path": "../_vars",
126
- "id": "src/components/xv-table/_vars.ts::SelectRowDto",
127
- "referenceLocation": "SelectRowDto"
203
+ "path": "../../../types/enum",
204
+ "id": "src/types/enum.ts::SIZE_VAR_STR",
205
+ "referenceLocation": "SIZE_VAR_STR"
128
206
  }
129
207
  }
130
208
  },
131
209
  "required": false,
132
- "optional": true,
210
+ "optional": false,
133
211
  "docs": {
134
212
  "tags": [],
135
- "text": ""
213
+ "text": "Row height ladder. Set by the table."
136
214
  },
137
215
  "getter": false,
138
216
  "setter": false,
139
217
  "reflect": true,
140
- "attribute": "name"
218
+ "attribute": "size",
219
+ "defaultValue": "SIZE_VAR.MD"
141
220
  },
142
- "value": {
143
- "type": "any",
221
+ "selected": {
222
+ "type": "boolean",
144
223
  "mutable": false,
145
224
  "complexType": {
146
- "original": "SelectRowDto['value']",
147
- "resolved": "number | object | string",
148
- "references": {
149
- "SelectRowDto": {
150
- "location": "import",
151
- "path": "../_vars",
152
- "id": "src/components/xv-table/_vars.ts::SelectRowDto",
153
- "referenceLocation": "SelectRowDto"
154
- }
155
- }
225
+ "original": "boolean",
226
+ "resolved": "boolean",
227
+ "references": {}
156
228
  },
157
229
  "required": false,
158
- "optional": true,
230
+ "optional": false,
159
231
  "docs": {
160
232
  "tags": [],
161
- "text": ""
233
+ "text": "Whether the row is selected."
162
234
  },
163
235
  "getter": false,
164
236
  "setter": false,
165
237
  "reflect": true,
166
- "attribute": "value"
238
+ "attribute": "selected",
239
+ "defaultValue": "false"
167
240
  },
168
- "hover": {
241
+ "partial": {
169
242
  "type": "boolean",
170
- "mutable": true,
243
+ "mutable": false,
171
244
  "complexType": {
172
245
  "original": "boolean",
173
246
  "resolved": "boolean",
174
247
  "references": {}
175
248
  },
176
249
  "required": false,
177
- "optional": true,
250
+ "optional": false,
178
251
  "docs": {
179
252
  "tags": [],
180
- "text": ""
253
+ "text": "Indeterminate state of the header row's select-all checkbox."
181
254
  },
182
255
  "getter": false,
183
256
  "setter": false,
184
257
  "reflect": true,
185
- "attribute": "hover"
258
+ "attribute": "partial",
259
+ "defaultValue": "false"
186
260
  },
187
- "readonly": {
261
+ "expanded": {
188
262
  "type": "boolean",
189
263
  "mutable": false,
190
264
  "complexType": {
@@ -193,17 +267,38 @@ export class XvTableRow {
193
267
  "references": {}
194
268
  },
195
269
  "required": false,
196
- "optional": true,
270
+ "optional": false,
197
271
  "docs": {
198
272
  "tags": [],
199
- "text": ""
273
+ "text": "Whether the row's expand panel is open."
200
274
  },
201
275
  "getter": false,
202
276
  "setter": false,
203
277
  "reflect": true,
204
- "attribute": "readonly"
278
+ "attribute": "expanded",
279
+ "defaultValue": "false"
205
280
  },
206
- "required": {
281
+ "parent": {
282
+ "type": "string",
283
+ "mutable": false,
284
+ "complexType": {
285
+ "original": "string",
286
+ "resolved": "string",
287
+ "references": {}
288
+ },
289
+ "required": false,
290
+ "optional": false,
291
+ "docs": {
292
+ "tags": [],
293
+ "text": "Value of the row this one belongs to. Child rows are siblings in the same grid, so they keep\r\nthe table's columns instead of living in a panel of their own."
294
+ },
295
+ "getter": false,
296
+ "setter": false,
297
+ "reflect": false,
298
+ "attribute": "parent",
299
+ "defaultValue": "''"
300
+ },
301
+ "expandable": {
207
302
  "type": "boolean",
208
303
  "mutable": false,
209
304
  "complexType": {
@@ -212,17 +307,38 @@ export class XvTableRow {
212
307
  "references": {}
213
308
  },
214
309
  "required": false,
215
- "optional": true,
310
+ "optional": false,
216
311
  "docs": {
217
312
  "tags": [],
218
- "text": ""
313
+ "text": "Whether this row has anything to expand. Set by the table."
219
314
  },
220
315
  "getter": false,
221
316
  "setter": false,
222
317
  "reflect": true,
223
- "attribute": "required"
318
+ "attribute": "expandable",
319
+ "defaultValue": "false"
224
320
  },
225
- "disabled": {
321
+ "hasPanel": {
322
+ "type": "boolean",
323
+ "mutable": false,
324
+ "complexType": {
325
+ "original": "boolean",
326
+ "resolved": "boolean",
327
+ "references": {}
328
+ },
329
+ "required": false,
330
+ "optional": false,
331
+ "docs": {
332
+ "tags": [],
333
+ "text": "Whether the row carries `slot=\"expand\"` content. Set by the table."
334
+ },
335
+ "getter": false,
336
+ "setter": false,
337
+ "reflect": false,
338
+ "attribute": "has-panel",
339
+ "defaultValue": "false"
340
+ },
341
+ "group": {
226
342
  "type": "boolean",
227
343
  "mutable": false,
228
344
  "complexType": {
@@ -231,15 +347,16 @@ export class XvTableRow {
231
347
  "references": {}
232
348
  },
233
349
  "required": false,
234
- "optional": true,
350
+ "optional": false,
235
351
  "docs": {
236
352
  "tags": [],
237
- "text": ""
353
+ "text": "Renders the row as a subtotal or grouping row: no controls, accented background."
238
354
  },
239
355
  "getter": false,
240
356
  "setter": false,
241
357
  "reflect": true,
242
- "attribute": "disabled"
358
+ "attribute": "group",
359
+ "defaultValue": "false"
243
360
  },
244
361
  "header": {
245
362
  "type": "boolean",
@@ -250,89 +367,138 @@ export class XvTableRow {
250
367
  "references": {}
251
368
  },
252
369
  "required": false,
253
- "optional": true,
370
+ "optional": false,
254
371
  "docs": {
255
372
  "tags": [],
256
- "text": ""
373
+ "text": "Marks the row as the table's header. Its cells supply the column labels."
257
374
  },
258
375
  "getter": false,
259
376
  "setter": false,
260
377
  "reflect": true,
261
- "attribute": "header"
378
+ "attribute": "header",
379
+ "defaultValue": "false"
262
380
  },
263
- "variant": {
264
- "type": "string",
265
- "mutable": true,
381
+ "hover": {
382
+ "type": "boolean",
383
+ "mutable": false,
266
384
  "complexType": {
267
- "original": "'checkbox' | 'radio' | ''",
268
- "resolved": "\"\" | \"checkbox\" | \"radio\"",
385
+ "original": "boolean",
386
+ "resolved": "boolean",
269
387
  "references": {}
270
388
  },
271
389
  "required": false,
272
- "optional": true,
390
+ "optional": false,
273
391
  "docs": {
274
392
  "tags": [],
275
- "text": ""
393
+ "text": "Highlights the row on pointer hover. Set by the table."
276
394
  },
277
395
  "getter": false,
278
396
  "setter": false,
279
397
  "reflect": true,
280
- "attribute": "variant"
281
- }
282
- };
283
- }
284
- static get events() {
285
- return [{
286
- "method": "checkedChange",
287
- "name": "checkedChange",
288
- "bubbles": true,
289
- "cancelable": true,
290
- "composed": true,
398
+ "attribute": "hover",
399
+ "defaultValue": "false"
400
+ },
401
+ "disabled": {
402
+ "type": "boolean",
403
+ "mutable": false,
404
+ "complexType": {
405
+ "original": "boolean",
406
+ "resolved": "boolean",
407
+ "references": {}
408
+ },
409
+ "required": false,
410
+ "optional": false,
291
411
  "docs": {
292
412
  "tags": [],
293
- "text": ""
413
+ "text": "Blocks selection and expansion."
294
414
  },
415
+ "getter": false,
416
+ "setter": false,
417
+ "reflect": true,
418
+ "attribute": "disabled",
419
+ "defaultValue": "false"
420
+ },
421
+ "rowReorderable": {
422
+ "type": "boolean",
423
+ "mutable": false,
295
424
  "complexType": {
296
- "original": "SelectRowDto",
297
- "resolved": "SelectRowDto",
298
- "references": {
299
- "SelectRowDto": {
300
- "location": "import",
301
- "path": "../_vars",
302
- "id": "src/components/xv-table/_vars.ts::SelectRowDto",
303
- "referenceLocation": "SelectRowDto"
304
- }
305
- }
306
- }
307
- }, {
308
- "method": "selectRow",
309
- "name": "selectRow",
310
- "bubbles": true,
311
- "cancelable": true,
312
- "composed": true,
425
+ "original": "boolean",
426
+ "resolved": "boolean",
427
+ "references": {}
428
+ },
429
+ "required": false,
430
+ "optional": false,
431
+ "docs": {
432
+ "tags": [],
433
+ "text": "Whether this row can be dragged into a new position. Set by the table."
434
+ },
435
+ "getter": false,
436
+ "setter": false,
437
+ "reflect": true,
438
+ "attribute": "row-reorderable",
439
+ "defaultValue": "false"
440
+ },
441
+ "rowReorderHandle": {
442
+ "type": "string",
443
+ "mutable": false,
444
+ "complexType": {
445
+ "original": "'icon' | 'row'",
446
+ "resolved": "\"icon\" | \"row\"",
447
+ "references": {}
448
+ },
449
+ "required": false,
450
+ "optional": false,
313
451
  "docs": {
314
452
  "tags": [],
315
- "text": ""
453
+ "text": "Whether the whole row drags, or only its grip. Set by the table."
316
454
  },
455
+ "getter": false,
456
+ "setter": false,
457
+ "reflect": false,
458
+ "attribute": "row-reorder-handle",
459
+ "defaultValue": "'icon'"
460
+ },
461
+ "expandLabel": {
462
+ "type": "string",
463
+ "mutable": false,
317
464
  "complexType": {
318
- "original": "SelectRowDto",
319
- "resolved": "SelectRowDto",
320
- "references": {
321
- "SelectRowDto": {
322
- "location": "import",
323
- "path": "../_vars",
324
- "id": "src/components/xv-table/_vars.ts::SelectRowDto",
325
- "referenceLocation": "SelectRowDto"
326
- }
327
- }
328
- }
329
- }];
465
+ "original": "string",
466
+ "resolved": "string",
467
+ "references": {}
468
+ },
469
+ "required": false,
470
+ "optional": false,
471
+ "docs": {
472
+ "tags": [],
473
+ "text": "Accessible name of the expand toggle. Set by the table."
474
+ },
475
+ "getter": false,
476
+ "setter": false,
477
+ "reflect": false,
478
+ "attribute": "expand-label",
479
+ "defaultValue": "'Toggle row'"
480
+ },
481
+ "reorderLabel": {
482
+ "type": "string",
483
+ "mutable": false,
484
+ "complexType": {
485
+ "original": "string",
486
+ "resolved": "string",
487
+ "references": {}
488
+ },
489
+ "required": false,
490
+ "optional": false,
491
+ "docs": {
492
+ "tags": [],
493
+ "text": "Accessible name of the drag grip. Set by the table."
494
+ },
495
+ "getter": false,
496
+ "setter": false,
497
+ "reflect": false,
498
+ "attribute": "reorder-label",
499
+ "defaultValue": "'Drag to reorder'"
500
+ }
501
+ };
330
502
  }
331
503
  static get elementRef() { return "el"; }
332
- static get watchers() {
333
- return [{
334
- "propName": "checked",
335
- "methodName": "checkedChangeHandle"
336
- }];
337
- }
338
504
  }