xv-webcomponents 0.1.39 → 0.1.42

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 (119) hide show
  1. package/dist/cjs/{index-D41mMXvd.js → index-MLh9SbX2.js} +349 -8
  2. package/dist/cjs/index-MLh9SbX2.js.map +1 -0
  3. package/dist/cjs/loader.cjs.js +2 -2
  4. package/dist/cjs/{xv-accordion-v2_27.cjs.entry.js → xv-accordion-v2_34.cjs.entry.js} +2323 -97
  5. package/dist/cjs/xv-accordion-v2_34.cjs.entry.js.map +1 -0
  6. package/dist/cjs/xv-breadcrumbs-v2.cjs.entry.js +1 -1
  7. package/dist/cjs/xv-webcomponents.cjs.js +3 -3
  8. package/dist/cjs/xv-webcomponents.cjs.js.map +1 -1
  9. package/dist/collection/collection-manifest.json +8 -1
  10. package/dist/collection/components/xv-button/xv-button-v2.css +136 -118
  11. package/dist/collection/components/xv-button/xv-button.js +132 -67
  12. package/dist/collection/components/xv-button/xv-button.js.map +1 -1
  13. package/dist/collection/components/xv-card/xv-card.js +1 -1
  14. package/dist/collection/components/xv-checkbox/xv-checkbox.css +3 -0
  15. package/dist/collection/components/xv-checkbox/xv-checkbox.js +1 -1
  16. package/dist/collection/components/xv-data-table/_vars.js +3 -0
  17. package/dist/collection/components/xv-data-table/_vars.js.map +1 -0
  18. package/dist/collection/components/xv-data-table/xv-data-table-cell/xv-data-table-cell.css +90 -0
  19. package/dist/collection/components/xv-data-table/xv-data-table-cell/xv-data-table-cell.js +182 -0
  20. package/dist/collection/components/xv-data-table/xv-data-table-cell/xv-data-table-cell.js.map +1 -0
  21. package/dist/collection/components/xv-data-table/xv-data-table-collapse/xv-data-table-collapse.css +7 -0
  22. package/dist/collection/components/xv-data-table/xv-data-table-collapse/xv-data-table-collapse.js +101 -0
  23. package/dist/collection/components/xv-data-table/xv-data-table-collapse/xv-data-table-collapse.js.map +1 -0
  24. package/dist/collection/components/xv-data-table/xv-data-table-row/xv-data-table-row.css +71 -0
  25. package/dist/collection/components/xv-data-table/xv-data-table-row/xv-data-table-row.js +354 -0
  26. package/dist/collection/components/xv-data-table/xv-data-table-row/xv-data-table-row.js.map +1 -0
  27. package/dist/collection/components/xv-data-table/xv-data-table.css +104 -0
  28. package/dist/collection/components/xv-data-table/xv-data-table.js +114 -0
  29. package/dist/collection/components/xv-data-table/xv-data-table.js.map +1 -0
  30. package/dist/collection/components/xv-dropdown/xv-dropdown-item/xv-dropdown-item.js +1 -1
  31. package/dist/collection/components/xv-dropdown/xv-dropdown.css +6 -1
  32. package/dist/collection/components/xv-dropdown/xv-dropdown.js +20 -1
  33. package/dist/collection/components/xv-dropdown/xv-dropdown.js.map +1 -1
  34. package/dist/collection/components/xv-file-uploader/_vars.js +6 -0
  35. package/dist/collection/components/xv-file-uploader/_vars.js.map +1 -0
  36. package/dist/collection/components/xv-file-uploader/xv-file-uploader.css +136 -0
  37. package/dist/collection/components/xv-file-uploader/xv-file-uploader.js +448 -0
  38. package/dist/collection/components/xv-file-uploader/xv-file-uploader.js.map +1 -0
  39. package/dist/collection/components/xv-footer/xv-footer.js +1 -1
  40. package/dist/collection/components/xv-header/xv-header.js +1 -1
  41. package/dist/collection/components/xv-link/xv-link.css +1 -0
  42. package/dist/collection/components/xv-link/xv-link.js +1 -1
  43. package/dist/collection/components/xv-modal/xv-modal.js +1 -1
  44. package/dist/collection/components/xv-notification/xv-notification.css +1 -0
  45. package/dist/collection/components/xv-notification/xv-notification.js +1 -1
  46. package/dist/collection/components/xv-number-input/xv-number-input.css +128 -0
  47. package/dist/collection/components/xv-number-input/xv-number-input.js +373 -0
  48. package/dist/collection/components/xv-number-input/xv-number-input.js.map +1 -0
  49. package/dist/collection/components/xv-overflow-menu/xv-overflow-menu-item/xv-overflow-menu-item.js +1 -1
  50. package/dist/collection/components/xv-overflow-menu/xv-overflow-menu.js +1 -1
  51. package/dist/collection/components/xv-progress-indicator/xv-progress-indicator-item/xv-progress-indicator-item.js +1 -1
  52. package/dist/collection/components/xv-progress-indicator/xv-progress-indicator.js +1 -1
  53. package/dist/collection/components/xv-table/_vars.js +0 -6
  54. package/dist/collection/components/xv-table/_vars.js.map +1 -1
  55. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.js +4 -4
  56. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.js.map +1 -1
  57. package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.js +1 -1
  58. package/dist/collection/components/xv-table/xv-table-row/xv-table-row.js +1 -1
  59. package/dist/collection/components/xv-table/xv-table.js +1 -1
  60. package/dist/collection/components/xv-tabs/xv-tab/xv-tab.js +1 -1
  61. package/dist/collection/components/xv-tabs/xv-tabs.js +1 -2
  62. package/dist/collection/components/xv-tabs/xv-tabs.js.map +1 -1
  63. package/dist/collection/components/xv-tag/xv-tag.js +1 -1
  64. package/dist/collection/components/xv-text-input/xv-text-input.css +110 -89
  65. package/dist/collection/components/xv-text-input/xv-text-input.js +113 -80
  66. package/dist/collection/components/xv-text-input/xv-text-input.js.map +1 -1
  67. package/dist/collection/components/xv-toggle-tip/xv-toggle-tip.css +95 -0
  68. package/dist/collection/components/xv-toggle-tip/xv-toggle-tip.js +201 -0
  69. package/dist/collection/components/xv-toggle-tip/xv-toggle-tip.js.map +1 -0
  70. package/dist/collection/components/xv-tooltip/xv-tooltip.css +31 -147
  71. package/dist/collection/components/xv-tooltip/xv-tooltip.js +59 -34
  72. package/dist/collection/components/xv-tooltip/xv-tooltip.js.map +1 -1
  73. package/dist/collection/types/enum.js +6 -0
  74. package/dist/collection/types/enum.js.map +1 -1
  75. package/dist/esm/{index-Datpns0U.js → index-DLYJiP99.js} +349 -8
  76. package/dist/esm/index-DLYJiP99.js.map +1 -0
  77. package/dist/esm/loader.js +3 -3
  78. package/dist/esm/{xv-accordion-v2_27.entry.js → xv-accordion-v2_34.entry.js} +2317 -98
  79. package/dist/esm/xv-accordion-v2_34.entry.js.map +1 -0
  80. package/dist/esm/xv-breadcrumbs-v2.entry.js +1 -1
  81. package/dist/esm/xv-webcomponents.js +4 -4
  82. package/dist/esm/xv-webcomponents.js.map +1 -1
  83. package/dist/types/components/xv-button/xv-button.d.ts +21 -12
  84. package/dist/types/components/xv-data-table/_vars.d.ts +11 -0
  85. package/dist/types/components/xv-data-table/xv-data-table-cell/xv-data-table-cell.d.ts +13 -0
  86. package/dist/types/components/xv-data-table/xv-data-table-collapse/xv-data-table-collapse.d.ts +9 -0
  87. package/dist/types/components/xv-data-table/xv-data-table-row/xv-data-table-row.d.ts +25 -0
  88. package/dist/types/components/xv-data-table/xv-data-table.d.ts +9 -0
  89. package/dist/types/components/xv-dropdown/xv-dropdown.d.ts +1 -0
  90. package/dist/types/components/xv-file-uploader/_vars.d.ts +4 -0
  91. package/dist/types/components/xv-file-uploader/xv-file-uploader.d.ts +36 -0
  92. package/dist/types/components/xv-number-input/xv-number-input.d.ts +26 -0
  93. package/dist/types/components/xv-table/_vars.d.ts +1 -5
  94. package/dist/types/components/xv-table/xv-table-cell/xv-table-cell.d.ts +2 -1
  95. package/dist/types/components/xv-text-input/xv-text-input.d.ts +10 -11
  96. package/dist/types/components/xv-toggle-tip/xv-toggle-tip.d.ts +19 -0
  97. package/dist/types/components/xv-tooltip/xv-tooltip.d.ts +10 -8
  98. package/dist/types/components.d.ts +761 -53
  99. package/dist/types/types/enum.d.ts +5 -0
  100. package/dist/xv-webcomponents/{p-054f5d59.entry.js → p-5b63a259.entry.js} +2 -2
  101. package/dist/xv-webcomponents/p-9c06f44c.entry.js +2 -0
  102. package/dist/xv-webcomponents/p-9c06f44c.entry.js.map +1 -0
  103. package/dist/xv-webcomponents/p-DLYJiP99.js +3 -0
  104. package/dist/xv-webcomponents/p-DLYJiP99.js.map +1 -0
  105. package/dist/xv-webcomponents/xv-webcomponents.esm.js +1 -1
  106. package/dist/xv-webcomponents/xv-webcomponents.esm.js.map +1 -1
  107. package/package.json +6 -4
  108. package/dist/cjs/index-D41mMXvd.js.map +0 -1
  109. package/dist/cjs/xv-accordion-v2_27.cjs.entry.js.map +0 -1
  110. package/dist/collection/components/xv-text-input/_vars.js +0 -7
  111. package/dist/collection/components/xv-text-input/_vars.js.map +0 -1
  112. package/dist/esm/index-Datpns0U.js.map +0 -1
  113. package/dist/esm/xv-accordion-v2_27.entry.js.map +0 -1
  114. package/dist/types/components/xv-text-input/_vars.d.ts +0 -5
  115. package/dist/xv-webcomponents/p-6a4cc790.entry.js +0 -2
  116. package/dist/xv-webcomponents/p-6a4cc790.entry.js.map +0 -1
  117. package/dist/xv-webcomponents/p-Datpns0U.js +0 -3
  118. package/dist/xv-webcomponents/p-Datpns0U.js.map +0 -1
  119. /package/dist/xv-webcomponents/{p-054f5d59.entry.js.map → p-5b63a259.entry.js.map} +0 -0
@@ -1,28 +1,62 @@
1
- import { h } from "@stencil/core";
1
+ import { h, Host } from "@stencil/core";
2
+ import { SIZE_VAR } from "../../types/enum";
2
3
  export class XvButton {
3
4
  constructor() {
4
- /** Button label */
5
- this.label = '';
6
- /** Container width Button */
5
+ /** Button variants */
6
+ this.variant = 'primary';
7
+ /** Button size */
8
+ this.size = SIZE_VAR.MD;
9
+ /** Button disabled state */
10
+ this.disabled = false;
11
+ /** Button loading state */
12
+ this.loading = false;
13
+ /** Button for full width */
7
14
  this.block = false;
8
15
  /** Button type */
9
16
  this.type = 'button';
10
- /** Variant */
11
- this.variant = 'primary';
12
- /** Disabled state */
13
- this.disabled = false;
14
- /** Handle click only if not disabled */
15
- this.handleClick = (e) => {
16
- if (this.disabled)
17
- return;
18
- this.buttonClick.emit(e);
17
+ this.hasLeftIcon = false;
18
+ this.hasRightIcon = false;
19
+ this.hasContent = false;
20
+ this.handleSlotChangeLeft = (event) => {
21
+ this.hasLeftIcon = event.target.assignedElements().length > 0;
22
+ };
23
+ this.handleSlotChangeContent = (event) => {
24
+ this.hasContent = event.target.assignedNodes().some(node => {
25
+ var _a;
26
+ return node.nodeType === Node.ELEMENT_NODE ||
27
+ (node.nodeType === Node.TEXT_NODE && ((_a = node.textContent) === null || _a === void 0 ? void 0 : _a.trim()) !== '');
28
+ });
29
+ };
30
+ this.handleSlotChangeRight = (event) => {
31
+ this.hasRightIcon = event.target.assignedElements().length > 0;
32
+ };
33
+ this.handleClick = () => {
34
+ var _a, _b;
35
+ if (this.type === 'submit') {
36
+ (_a = this.internals.form) === null || _a === void 0 ? void 0 : _a.requestSubmit();
37
+ }
38
+ else if (this.type === 'reset') {
39
+ (_b = this.internals.form) === null || _b === void 0 ? void 0 : _b.reset();
40
+ }
19
41
  };
20
42
  }
21
43
  render() {
22
- return (h("button", { key: '4a9a7d9eb8f0b9fb264c03e804fa157d14a15805', type: this.type, part: "button", class: `xv-button ${this.variant} ${this.block ? 'xv-button-block' : ''}`, disabled: this.disabled, onClick: this.handleClick }, h("slot", { key: 'd9102ce481222999d9f1a35b4782b550e1a3179c', name: "icon-left" }), h("slot", { key: '5960e30d35b9d403da9da635414cd4db95f165d6' }, this.label), h("slot", { key: 'aae667909ef6932eaa31a8a6b89165960d0cf8a3', name: "icon-right" })));
44
+ var _a;
45
+ return (h(Host, { key: 'ad8e2051c6023d13626e65861099114e2ff06db2' }, h("button", { key: '1f2b8e13a29a63b3f50ced928a83e92d0eb5c0ea', class: {
46
+ 'xv-button': true,
47
+ [`xv-button--${this.variant}`]: !!this.variant,
48
+ [`xv-button--${this.size}`]: !!this.size,
49
+ 'xv-button--disabled': this.disabled || this.loading,
50
+ 'xv-button--block': this.block,
51
+ 'xv-button--loading': this.loading,
52
+ 'xv-button--icon-left': this.hasLeftIcon,
53
+ 'xv-button--icon-right': this.hasRightIcon,
54
+ 'xv-button--icon-only': !this.hasContent,
55
+ }, part: "button", onClick: this.handleClick, type: this.type, disabled: this.disabled || this.loading, "aria-disabled": this.disabled ? 'true' : undefined, "aria-label": ((_a = this.el) === null || _a === void 0 ? void 0 : _a.ariaLabel) || 'XV button' }, this.loading && (h("xv-loader-v2", { key: 'a7c55e4823b233f845f1a9e5e654f2c98a88001d', class: "xv-button__loader", size: this.size !== SIZE_VAR.XL ? this.size : SIZE_VAR.LG })), h("span", { key: '57f0ced69f7022ba8b602083b69fa2804061ccef', class: "xv-button__icon xv-button__icon--left" }, h("slot", { key: '8c6c0c1a12bfafe6a3674352b5e8ba77e0562eb3', name: "icon-left", onSlotchange: this.handleSlotChangeLeft })), h("span", { key: '8e19d4691b333a0d70a76ed476f59bacfeefa963', class: "xv-button__label" }, h("slot", { key: 'c9d9896b34e3137442b11db5d4f44d097d952d37', onSlotchange: this.handleSlotChangeContent }, this.label)), h("span", { key: '25a3256dff8ec326c081601dd46cff45149a7683', class: "xv-button__icon xv-button__icon--right" }, h("slot", { key: '90505c36d3620fa19c3d01fc1e66cc57e705a8db', name: "icon-right", onSlotchange: this.handleSlotChangeRight })))));
23
56
  }
24
57
  static get is() { return "xv-button-v2"; }
25
58
  static get encapsulation() { return "shadow"; }
59
+ static get formAssociated() { return true; }
26
60
  static get originalStyleUrls() {
27
61
  return {
28
62
  "$": ["xv-button-v2.scss"]
@@ -45,79 +79,84 @@ export class XvButton {
45
79
  "references": {}
46
80
  },
47
81
  "required": false,
48
- "optional": false,
82
+ "optional": true,
49
83
  "docs": {
50
84
  "tags": [],
51
- "text": "Button label"
85
+ "text": "Button label is optional you can use just inside content"
52
86
  },
53
87
  "getter": false,
54
88
  "setter": false,
55
- "reflect": false,
56
- "defaultValue": "''"
89
+ "reflect": true
57
90
  },
58
- "block": {
59
- "type": "boolean",
60
- "attribute": "block",
91
+ "variant": {
92
+ "type": "string",
93
+ "attribute": "variant",
61
94
  "mutable": false,
62
95
  "complexType": {
63
- "original": "boolean",
64
- "resolved": "boolean",
96
+ "original": "'primary' | 'secondary' | 'ghost' | 'danger' | 'tertiary'",
97
+ "resolved": "\"danger\" | \"ghost\" | \"primary\" | \"secondary\" | \"tertiary\"",
65
98
  "references": {}
66
99
  },
67
100
  "required": false,
68
101
  "optional": false,
69
102
  "docs": {
70
103
  "tags": [],
71
- "text": "Container width Button"
104
+ "text": "Button variants"
72
105
  },
73
106
  "getter": false,
74
107
  "setter": false,
75
- "reflect": false,
76
- "defaultValue": "false"
108
+ "reflect": true,
109
+ "defaultValue": "'primary'"
77
110
  },
78
- "type": {
111
+ "size": {
79
112
  "type": "string",
80
- "attribute": "type",
113
+ "attribute": "size",
81
114
  "mutable": false,
82
115
  "complexType": {
83
- "original": "'button' | 'reset' | 'submit'",
84
- "resolved": "\"button\" | \"reset\" | \"submit\"",
85
- "references": {}
116
+ "original": "SIZE_VAR",
117
+ "resolved": "SIZE_VAR.LG | SIZE_VAR.MD | SIZE_VAR.SM | SIZE_VAR.XL | SIZE_VAR.XS",
118
+ "references": {
119
+ "SIZE_VAR": {
120
+ "location": "import",
121
+ "path": "../../types/enum",
122
+ "id": "src/types/enum.ts::SIZE_VAR"
123
+ }
124
+ }
86
125
  },
87
126
  "required": false,
88
127
  "optional": false,
89
128
  "docs": {
90
129
  "tags": [],
91
- "text": "Button type"
130
+ "text": "Button size"
92
131
  },
93
132
  "getter": false,
94
133
  "setter": false,
95
- "reflect": false,
96
- "defaultValue": "'button'"
134
+ "reflect": true,
135
+ "defaultValue": "SIZE_VAR.MD"
97
136
  },
98
- "variant": {
99
- "type": "string",
100
- "attribute": "variant",
137
+ "disabled": {
138
+ "type": "boolean",
139
+ "attribute": "disabled",
101
140
  "mutable": false,
102
141
  "complexType": {
103
- "original": "'accent' | 'primary' | 'secondary' | 'tertiary' | 'ghost'",
104
- "resolved": "\"accent\" | \"ghost\" | \"primary\" | \"secondary\" | \"tertiary\"",
142
+ "original": "boolean",
143
+ "resolved": "boolean",
105
144
  "references": {}
106
145
  },
107
146
  "required": false,
108
147
  "optional": false,
109
148
  "docs": {
110
149
  "tags": [],
111
- "text": "Variant"
150
+ "text": "Button disabled state"
112
151
  },
113
152
  "getter": false,
114
153
  "setter": false,
115
- "reflect": false,
116
- "defaultValue": "'primary'"
154
+ "reflect": true,
155
+ "defaultValue": "false"
117
156
  },
118
- "disabled": {
157
+ "loading": {
119
158
  "type": "boolean",
120
- "attribute": "disabled",
159
+ "attribute": "loading",
121
160
  "mutable": false,
122
161
  "complexType": {
123
162
  "original": "boolean",
@@ -128,37 +167,63 @@ export class XvButton {
128
167
  "optional": false,
129
168
  "docs": {
130
169
  "tags": [],
131
- "text": "Disabled state"
170
+ "text": "Button loading state"
132
171
  },
133
172
  "getter": false,
134
173
  "setter": false,
135
- "reflect": false,
174
+ "reflect": true,
136
175
  "defaultValue": "false"
137
- }
138
- };
139
- }
140
- static get events() {
141
- return [{
142
- "method": "buttonClick",
143
- "name": "buttonClick",
144
- "bubbles": true,
145
- "cancelable": true,
146
- "composed": true,
176
+ },
177
+ "block": {
178
+ "type": "boolean",
179
+ "attribute": "block",
180
+ "mutable": false,
181
+ "complexType": {
182
+ "original": "boolean",
183
+ "resolved": "boolean",
184
+ "references": {}
185
+ },
186
+ "required": false,
187
+ "optional": false,
147
188
  "docs": {
148
189
  "tags": [],
149
- "text": "Emits when the button is clicked"
190
+ "text": "Button for full width"
150
191
  },
192
+ "getter": false,
193
+ "setter": false,
194
+ "reflect": true,
195
+ "defaultValue": "false"
196
+ },
197
+ "type": {
198
+ "type": "string",
199
+ "attribute": "type",
200
+ "mutable": false,
151
201
  "complexType": {
152
- "original": "MouseEvent",
153
- "resolved": "MouseEvent",
154
- "references": {
155
- "MouseEvent": {
156
- "location": "global",
157
- "id": "global::MouseEvent"
158
- }
159
- }
160
- }
161
- }];
202
+ "original": "'button' | 'submit' | 'reset'",
203
+ "resolved": "\"button\" | \"reset\" | \"submit\"",
204
+ "references": {}
205
+ },
206
+ "required": false,
207
+ "optional": false,
208
+ "docs": {
209
+ "tags": [],
210
+ "text": "Button type"
211
+ },
212
+ "getter": false,
213
+ "setter": false,
214
+ "reflect": true,
215
+ "defaultValue": "'button'"
216
+ }
217
+ };
218
+ }
219
+ static get states() {
220
+ return {
221
+ "hasLeftIcon": {},
222
+ "hasRightIcon": {},
223
+ "hasContent": {}
224
+ };
162
225
  }
226
+ static get elementRef() { return "el"; }
227
+ static get attachInternalsMemberName() { return "internals"; }
163
228
  }
164
229
  //# sourceMappingURL=xv-button.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"xv-button.js","sourceRoot":"","sources":["../../../src/components/xv-button/xv-button.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAgB,CAAC,EAAE,MAAM,eAAe,CAAC;AAQxE,MAAM,OAAO,QAAQ;IALrB;QAME,mBAAmB;QACX,UAAK,GAAW,EAAE,CAAC;QAE3B,6BAA6B;QACrB,UAAK,GAAY,KAAK,CAAC;QAE/B,kBAAkB;QACV,SAAI,GAAkC,QAAQ,CAAC;QAEvD,cAAc;QACN,YAAO,GAA8D,SAAS,CAAC;QAEvF,qBAAqB;QACb,aAAQ,GAAY,KAAK,CAAC;QAKlC,wCAAwC;QAChC,gBAAW,GAAG,CAAC,CAAa,EAAE,EAAE;YACtC,IAAI,IAAI,CAAC,QAAQ;gBAAE,OAAO;YAC1B,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAC3B,CAAC,CAAC;KAqBH;IAnBC,MAAM;QACJ,OAAO,CACL,+DACE,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAC,QAAQ,EACb,KAAK,EAAE,aAAa,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,EACzE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EACvB,OAAO,EAAE,IAAI,CAAC,WAAW;YAEzB,6DAAM,IAAI,EAAC,WAAW,GAAQ;YAE9B,+DACG,IAAI,CAAC,KAAK,CACN;YAEP,6DAAM,IAAI,EAAC,YAAY,GAAQ,CACxB,CACV,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Prop, Event, EventEmitter, h } from '@stencil/core';\r\n\r\n\r\n@Component({\r\n tag: 'xv-button-v2',\r\n styleUrl: 'xv-button-v2.scss',\r\n shadow: true,\r\n})\r\nexport class XvButton {\r\n /** Button label */\r\n @Prop() label: string = '';\r\n\r\n /** Container width Button */\r\n @Prop() block: boolean = false;\r\n\r\n /** Button type */\r\n @Prop() type: 'button' | 'reset' | 'submit' = 'button';\r\n\r\n /** Variant */\r\n @Prop() variant: 'accent' | 'primary' | 'secondary' | 'tertiary' | 'ghost' = 'primary';\r\n\r\n /** Disabled state */\r\n @Prop() disabled: boolean = false;\r\n\r\n /** Emits when the button is clicked */\r\n @Event() buttonClick!: EventEmitter<MouseEvent>;\r\n\r\n /** Handle click only if not disabled */\r\n private handleClick = (e: MouseEvent) => {\r\n if (this.disabled) return;\r\n this.buttonClick.emit(e);\r\n };\r\n\r\n render() {\r\n return (\r\n <button\r\n type={this.type}\r\n part=\"button\"\r\n class={`xv-button ${this.variant} ${this.block ? 'xv-button-block' : ''}`}\r\n disabled={this.disabled}\r\n onClick={this.handleClick}\r\n >\r\n <slot name=\"icon-left\"></slot>\r\n\r\n <slot>\r\n {this.label}\r\n </slot>\r\n\r\n <slot name=\"icon-right\"></slot>\r\n </button>\r\n );\r\n }\r\n}\r\n"]}
1
+ {"version":3,"file":"xv-button.js","sourceRoot":"","sources":["../../../src/components/xv-button/xv-button.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Prop, h, Element, State, Host, AttachInternals } from '@stencil/core';\r\nimport { SIZE_VAR } from '../../types/enum';\r\n\r\n\r\n@Component({\r\n tag: 'xv-button-v2',\r\n styleUrl: 'xv-button-v2.scss',\r\n shadow: true,\r\n formAssociated: true,\r\n})\r\nexport class XvButton {\r\n @Element() el: HTMLElement;\r\n\r\n /** Button label is optional you can use just inside content */\r\n @Prop({ reflect: true }) label?: string;\r\n /** Button variants */\r\n @Prop({ reflect: true }) variant: 'primary' | 'secondary' | 'ghost' | 'danger' | 'tertiary' = 'primary';\r\n /** Button size */\r\n @Prop({ reflect: true }) size: SIZE_VAR = SIZE_VAR.MD;\r\n /** Button disabled state */\r\n @Prop({ reflect: true }) disabled: boolean = false;\r\n /** Button loading state */\r\n @Prop({ reflect: true }) loading: boolean = false;\r\n /** Button for full width */\r\n @Prop({ reflect: true }) block: boolean = false;\r\n /** Button type */\r\n @Prop({ reflect: true }) type: 'button' | 'submit' | 'reset' = 'button';\r\n\r\n @State() hasLeftIcon: boolean = false;\r\n @State() hasRightIcon: boolean = false;\r\n @State() hasContent: boolean = false;\r\n\r\n @AttachInternals() internals: ElementInternals;\r\n\r\n private handleSlotChangeLeft = (event: Event) => {\r\n this.hasLeftIcon = (event.target as HTMLSlotElement).assignedElements().length > 0;\r\n };\r\n\r\n private handleSlotChangeContent = (event: Event) => {\r\n this.hasContent = (event.target as HTMLSlotElement).assignedNodes().some(\r\n node =>\r\n node.nodeType === Node.ELEMENT_NODE ||\r\n (node.nodeType === Node.TEXT_NODE && node.textContent?.trim() !== ''),\r\n );\r\n };\r\n\r\n private handleSlotChangeRight = (event: Event) => {\r\n this.hasRightIcon = (event.target as HTMLSlotElement).assignedElements().length > 0;\r\n };\r\n\r\n private handleClick = () => {\r\n if (this.type === 'submit') {\r\n this.internals.form?.requestSubmit();\r\n } else if (this.type === 'reset') {\r\n this.internals.form?.reset();\r\n }\r\n };\r\n\r\n render() {\r\n return (\r\n <Host>\r\n <button\r\n class={{\r\n 'xv-button': true,\r\n [`xv-button--${this.variant}`]: !!this.variant,\r\n [`xv-button--${this.size}`]: !!this.size,\r\n 'xv-button--disabled': this.disabled || this.loading,\r\n 'xv-button--block': this.block,\r\n 'xv-button--loading': this.loading,\r\n 'xv-button--icon-left': this.hasLeftIcon,\r\n 'xv-button--icon-right': this.hasRightIcon,\r\n 'xv-button--icon-only': !this.hasContent,\r\n }}\r\n part=\"button\"\r\n onClick={this.handleClick}\r\n type={this.type}\r\n disabled={this.disabled || this.loading}\r\n aria-disabled={this.disabled ? 'true' : undefined}\r\n aria-label={this.el?.ariaLabel || 'XV button'}\r\n >\r\n {this.loading && (\r\n <xv-loader-v2 class=\"xv-button__loader\"\r\n size={this.size !== SIZE_VAR.XL ? this.size : SIZE_VAR.LG} />\r\n )}\r\n\r\n <span class=\"xv-button__icon xv-button__icon--left\">\r\n <slot name=\"icon-left\" onSlotchange={this.handleSlotChangeLeft}></slot>\r\n </span>\r\n\r\n <span class=\"xv-button__label\">\r\n <slot onSlotchange={this.handleSlotChangeContent}>\r\n {this.label}\r\n </slot>\r\n </span>\r\n\r\n <span class=\"xv-button__icon xv-button__icon--right\">\r\n <slot name=\"icon-right\" onSlotchange={this.handleSlotChangeRight}></slot>\r\n </span>\r\n </button>\r\n </Host>\r\n );\r\n }\r\n}\r\n"]}
@@ -4,7 +4,7 @@ export class XvCard {
4
4
  this.variant = 'vertical';
5
5
  }
6
6
  render() {
7
- return (h(Host, { key: '347b7aed9ce24e2e048bb4e6d0b07b23f0f60d5b', class: `xv-card xv-card_${this.variant}`, part: this.variant }, h("div", { key: '9cd9f38cfe7d93fc271907fc8435033df860c246', class: "xv-card_media" }, h("slot", { key: '35e2bae3084a0e7d26e13c0e3116daa9895ea6c1', name: "media" }, this.media && h("img", { key: '60d4305b136766e447653cb399f92ae70e3d9430', class: "xv-card_media__content", src: this.media, alt: this.header }))), h("div", { key: '3751defc0abf18997dca82ae5b5d6601c6e9f60b', class: "xv-card_content" }, h("div", { key: 'cca74475b9e5dba03c82f77851fb503a5323ce3c', class: "xv-card_header" }, h("slot", { key: '02c4e3ddfb73bd56ef8f5b44a22bfe710654171a', name: "header" }, this.header && h("p", { key: '56998aa4742cc7576a023fcbe3e0892f312805ee', class: "xv-card_header__content" }, this.header))), h("div", { key: '86da97df293ff58dbcfe0a2b7bc25c98053ac6a2', class: "xv-card_body" }, h("slot", { key: 'ff8d6dc3ef8e437d28f237c415bf43382df85f19', name: "body" }, this.body && h("p", { key: '7e8e351ac0fa2100fc7929e81cc380a4a32e7019', class: "xv-card_body__content" }, this.header))), h("div", { key: 'dc9824b523f2dbdb4f88dc05ac0e490f9b04f529', class: "xv-card_footer" }, h("slot", { key: 'ea4fbffc436ee2ef43f481be7656aad07dfc55ce', name: "footer" }, this.footer)))));
7
+ return (h(Host, { key: '7c19e1d91f9040c116dc18d6f58be859e66b0629', class: `xv-card xv-card_${this.variant}`, part: this.variant }, h("div", { key: '8ef942983bc31d278810372bfed3fe4cb8f1922a', class: "xv-card_media" }, h("slot", { key: '86bc68bcb80c563a91448c15ab1ebd89c1e5b245', name: "media" }, this.media && h("img", { key: 'c4351a7426b5b73ed37f038f1f355dcf46dae597', class: "xv-card_media__content", src: this.media, alt: this.header }))), h("div", { key: '906393c52bb7c27bfbc9527dfba34f712ec8a420', class: "xv-card_content" }, h("div", { key: 'd703353d99066a4f395f126f0ec8aa462c7a5c7b', class: "xv-card_header" }, h("slot", { key: '4fb9c65d701629dce6f99c8ad871adbd7659ecdd', name: "header" }, this.header && h("p", { key: 'e4a3f971b5dca8cdf3e44c9ba2a37baeff67fd59', class: "xv-card_header__content" }, this.header))), h("div", { key: '7029219d670fe9a94e5c50f657f5f2f2d45a2edb', class: "xv-card_body" }, h("slot", { key: '0f570bb3938b6c44e8cc3fb004ed1d7c487fb5a7', name: "body" }, this.body && h("p", { key: '02fc0abdc52c3a0bf833c0bfe24ec573f1457f21', class: "xv-card_body__content" }, this.header))), h("div", { key: '9734dca4512ace0e29e332acce27bf01c8a05e24', class: "xv-card_footer" }, h("slot", { key: '3cf0141845baf68e0149b823b921705978953ade', name: "footer" }, this.footer)))));
8
8
  }
9
9
  static get is() { return "xv-card-v2"; }
10
10
  static get encapsulation() { return "shadow"; }
@@ -3,6 +3,7 @@
3
3
  box-sizing: border-box;
4
4
  display: inline-flex;
5
5
  flex-direction: column;
6
+ overflow: visible !important;
6
7
  }
7
8
 
8
9
  :host([error]) .xv-checkbox .checkmark {
@@ -77,6 +78,7 @@
77
78
  }
78
79
  .xv-checkbox input:checked + .checkmark:not(.checkmark-partial)::after {
79
80
  content: "";
81
+ position: absolute;
80
82
  width: calc(var(--checkbox-size) / 4);
81
83
  height: calc(var(--checkbox-size) / 2.5);
82
84
  border: solid var(--background, #FFF);
@@ -87,6 +89,7 @@
87
89
  }
88
90
  .xv-checkbox input:checked + .checkmark.checkmark-partial::after {
89
91
  content: "";
92
+ position: absolute;
90
93
  width: calc(var(--checkbox-size) / 3);
91
94
  height: calc(var(--checkbox-size) / 10);
92
95
  background-color: var(--background, #FFF);
@@ -66,7 +66,7 @@ export class XvCheckbox {
66
66
  }
67
67
  }
68
68
  render() {
69
- return (h(Host, { key: 'bcaedf1b88ff4b64cec1ca477a214dc8987c6ed0' }, h("label", { key: '85770d8c9326340f63e024893c5fd28bc79f85a7', class: { 'xv-checkbox': true, disabled: this.disabled, readonly: this.readonly } }, h("input", { key: '156869a713eed4506123e267dc8e4b0ed74e73bb', ref: el => (this.inputEl = el), type: "checkbox", readonly: this.readonly, name: this.name, value: this.value, checked: this.checked, disabled: this.disabled || this.readonly, required: this.required, indeterminate: this.indeterminate, onInput: this.onInput, onChange: this.onChange, onFocus: this.onFocus, onBlur: this.onBlur }), h("span", { key: '1b2a979ae6d31e48e03ab41a054236cd5dbaab26', class: `checkmark ${this.partial ? 'checkmark-partial' : ''}` }), h("div", { key: '5bb240548e68a3e44fd665a917ccc75d2bd423b1', class: "label" }, h("slot", { key: '7ac3876f675592624c2fd252d8dc9941ad823de9' }, this.label && h("span", { key: '263f592cf8f71cfbb6d4a53180b67e71260f36da', class: "label_str" }, this.label)))), h("slot", { key: 'aaf1a57125f9561f0902e943991ba8c91b763534', name: "info" }), !!this.error && h("span", { key: 'a7e94090ad70cf9929b6112965ff6da3965de627', class: "error" }, this.error)));
69
+ return (h(Host, { key: '9eb988ec6a7a02392b4ed77685eed2bc5814c137' }, h("label", { key: '3e4c7112c959897c5b61cbcff890eaf437e476fc', class: { 'xv-checkbox': true, disabled: this.disabled, readonly: this.readonly } }, h("input", { key: '3a2e68b5780ae3951f86d30f9b2e8d9af1805e97', ref: el => (this.inputEl = el), type: "checkbox", readonly: this.readonly, name: this.name, value: this.value, checked: this.checked, disabled: this.disabled || this.readonly, required: this.required, indeterminate: this.indeterminate, onInput: this.onInput, onChange: this.onChange, onFocus: this.onFocus, onBlur: this.onBlur }), h("span", { key: 'b57f073a258a1ea15d04969a68eab7c36023e596', class: `checkmark ${this.partial ? 'checkmark-partial' : ''}` }), h("div", { key: '1abe0c133bf203b228b86bd68053856b79cdf170', class: "label" }, h("slot", { key: '155a80701f1a050a73a0079308de0b932407549e' }, this.label && h("span", { key: 'f9d493bfb663fcf91712b754b4c1b841d10beb05', class: "label_str" }, this.label)))), h("slot", { key: 'fae7055dc73235126a633a705b6e8f045a20954c', name: "info" }), !!this.error && h("span", { key: '5c3bb7d31289862bf421614ee9906671e65c1b7c', class: "error" }, this.error)));
70
70
  }
71
71
  componentDidLoad() {
72
72
  if (this.indeterminate) {
@@ -0,0 +1,3 @@
1
+ export const XV_DATA_TABLE_TAG = 'xv-data-table';
2
+ export const XV_DATA_TABLE_ROW_TAG = 'xv-data-table-row';
3
+ //# sourceMappingURL=_vars.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"_vars.js","sourceRoot":"","sources":["../../../src/components/xv-data-table/_vars.ts"],"names":[],"mappings":"AAWA,MAAM,CAAC,MAAM,iBAAiB,GAAG,eAAe,CAAC;AACjD,MAAM,CAAC,MAAM,qBAAqB,GAAG,mBAAmB,CAAC","sourcesContent":["\nexport interface XvDataTableCheck {\n name: string;\n checked: boolean;\n value?: string | number | object;\n partial?: boolean;\n header?: boolean;\n footer?: boolean;\n expandable?: boolean;\n}\n\nexport const XV_DATA_TABLE_TAG = 'xv-data-table';\nexport const XV_DATA_TABLE_ROW_TAG = 'xv-data-table-row';\n"]}
@@ -0,0 +1,90 @@
1
+ @charset "UTF-8";
2
+ :host {
3
+ display: table-cell;
4
+ border-style: solid;
5
+ border-left-width: 0;
6
+ border-right-width: 0;
7
+ border-top-width: var(--xv-data-table-border-width, 0);
8
+ border-bottom-width: var(--xv-data-table-border-width, 0);
9
+ border-color: var(--xv-data-table-border-color, transparent);
10
+ padding-inline: var(--xv-data-table-padding-x, 0);
11
+ padding-block: var(--xv-data-table-padding-y, 0);
12
+ vertical-align: middle;
13
+ word-break: break-all;
14
+ font-style: normal;
15
+ font-weight: 400;
16
+ }
17
+ :host .line-clamp {
18
+ display: -webkit-box;
19
+ -webkit-line-clamp: 2;
20
+ -webkit-box-orient: vertical;
21
+ overflow: hidden;
22
+ text-overflow: ellipsis;
23
+ }
24
+
25
+ :host(:not(.multiline)) {
26
+ white-space: nowrap;
27
+ overflow: hidden;
28
+ text-overflow: ellipsis;
29
+ }
30
+ :host(:not(.multiline)) ::slotted(*) {
31
+ white-space: nowrap;
32
+ overflow: hidden;
33
+ text-overflow: ellipsis;
34
+ }
35
+
36
+ :host([sort]) {
37
+ position: relative;
38
+ cursor: pointer;
39
+ user-select: none;
40
+ }
41
+ :host([sort]):before, :host([sort]):after {
42
+ font-size: 12px;
43
+ line-height: 10px;
44
+ display: inline-flex;
45
+ flex-direction: column;
46
+ align-items: center;
47
+ justify-content: center;
48
+ position: absolute;
49
+ right: 8px;
50
+ pointer-events: none;
51
+ transition: 350ms ease-in-out opacity;
52
+ opacity: 0;
53
+ }
54
+ :host([sort]):before {
55
+ content: "▲";
56
+ top: 50%;
57
+ transform: translateY(calc(-50% - 5px));
58
+ }
59
+ :host([sort])::after {
60
+ content: "▼";
61
+ top: 50%;
62
+ transform: translateY(calc(-50% + 5px));
63
+ }
64
+
65
+ :host([sort]:hover) {
66
+ background-color: var(--layer-accent-hover-01, #E3E3E3);
67
+ }
68
+ :host([sort]:hover)::before, :host([sort]:hover)::after {
69
+ opacity: 1;
70
+ }
71
+
72
+ :host([sort=asc]) {
73
+ background-color: var(--layer-accent-active-01, #D1D1D1);
74
+ }
75
+ :host([sort=asc])::before {
76
+ opacity: 1;
77
+ }
78
+ :host([sort=asc])::after {
79
+ display: none;
80
+ }
81
+
82
+ :host([sort=desc]) {
83
+ background-color: var(--layer-accent-active-01, #D1D1D1);
84
+ }
85
+ :host([sort=desc])::before {
86
+ display: none;
87
+ }
88
+ :host([sort=desc])::after {
89
+ opacity: 1;
90
+ }
@@ -0,0 +1,182 @@
1
+ import { h, Host } from "@stencil/core";
2
+ import { forEach, uidGenerator } from "../../../utils/utils";
3
+ import { XV_SORT_DIR } from "../../../types/enum";
4
+ export class XvDataTableCell {
5
+ handleSort() {
6
+ if (this.sort === undefined)
7
+ return;
8
+ let sort = this.sort;
9
+ if (this.sort === '')
10
+ sort = XV_SORT_DIR.NONE;
11
+ this.sort = sort === XV_SORT_DIR.NONE ?
12
+ XV_SORT_DIR.ASC : sort === XV_SORT_DIR.ASC ?
13
+ XV_SORT_DIR.DESC : XV_SORT_DIR.NONE;
14
+ forEach(this.el.parentElement.children, (cell) => {
15
+ if (cell !== this.el && cell.hasAttribute('sort')) {
16
+ cell.setAttribute('sort', 'none');
17
+ }
18
+ });
19
+ if (!this.name)
20
+ this.name = uidGenerator();
21
+ this.sortChange.emit(this.sort);
22
+ }
23
+ ;
24
+ render() {
25
+ return (h(Host, { key: 'bfc254739fa56d47210d43d134ba6c3534c5e567', role: "cell", style: { width: this.width }, class: {
26
+ multiline: this.multiline !== undefined,
27
+ [`align--${this.align}`]: !!this.align
28
+ } }, !this.multiline || isNaN(this.multiline) ? h("slot", null) : (h("div", { class: "line-clamp", style: { ['-webkit-line-clamp']: `${this.multiline}` } }, h("slot", null)))));
29
+ }
30
+ static get is() { return "xv-data-table-cell"; }
31
+ static get encapsulation() { return "shadow"; }
32
+ static get originalStyleUrls() {
33
+ return {
34
+ "$": ["xv-data-table-cell.scss"]
35
+ };
36
+ }
37
+ static get styleUrls() {
38
+ return {
39
+ "$": ["xv-data-table-cell.css"]
40
+ };
41
+ }
42
+ static get properties() {
43
+ return {
44
+ "name": {
45
+ "type": "string",
46
+ "attribute": "name",
47
+ "mutable": true,
48
+ "complexType": {
49
+ "original": "string",
50
+ "resolved": "string",
51
+ "references": {}
52
+ },
53
+ "required": false,
54
+ "optional": true,
55
+ "docs": {
56
+ "tags": [],
57
+ "text": ""
58
+ },
59
+ "getter": false,
60
+ "setter": false,
61
+ "reflect": false
62
+ },
63
+ "sort": {
64
+ "type": "string",
65
+ "attribute": "sort",
66
+ "mutable": true,
67
+ "complexType": {
68
+ "original": "XV_SORT_DIR | ''",
69
+ "resolved": "\"\" | XV_SORT_DIR.ASC | XV_SORT_DIR.DESC | XV_SORT_DIR.NONE",
70
+ "references": {
71
+ "XV_SORT_DIR": {
72
+ "location": "import",
73
+ "path": "../../../types/enum",
74
+ "id": "src/types/enum.ts::XV_SORT_DIR"
75
+ }
76
+ }
77
+ },
78
+ "required": false,
79
+ "optional": true,
80
+ "docs": {
81
+ "tags": [],
82
+ "text": ""
83
+ },
84
+ "getter": false,
85
+ "setter": false,
86
+ "reflect": true
87
+ },
88
+ "multiline": {
89
+ "type": "number",
90
+ "attribute": "multiline",
91
+ "mutable": false,
92
+ "complexType": {
93
+ "original": "number",
94
+ "resolved": "number",
95
+ "references": {}
96
+ },
97
+ "required": false,
98
+ "optional": false,
99
+ "docs": {
100
+ "tags": [],
101
+ "text": ""
102
+ },
103
+ "getter": false,
104
+ "setter": false,
105
+ "reflect": false
106
+ },
107
+ "width": {
108
+ "type": "string",
109
+ "attribute": "width",
110
+ "mutable": false,
111
+ "complexType": {
112
+ "original": "string",
113
+ "resolved": "string",
114
+ "references": {}
115
+ },
116
+ "required": false,
117
+ "optional": true,
118
+ "docs": {
119
+ "tags": [],
120
+ "text": ""
121
+ },
122
+ "getter": false,
123
+ "setter": false,
124
+ "reflect": false
125
+ },
126
+ "align": {
127
+ "type": "string",
128
+ "attribute": "align",
129
+ "mutable": false,
130
+ "complexType": {
131
+ "original": "'left' | 'right' | 'center'",
132
+ "resolved": "\"center\" | \"left\" | \"right\"",
133
+ "references": {}
134
+ },
135
+ "required": false,
136
+ "optional": true,
137
+ "docs": {
138
+ "tags": [],
139
+ "text": ""
140
+ },
141
+ "getter": false,
142
+ "setter": false,
143
+ "reflect": false
144
+ }
145
+ };
146
+ }
147
+ static get events() {
148
+ return [{
149
+ "method": "sortChange",
150
+ "name": "sortChange",
151
+ "bubbles": true,
152
+ "cancelable": true,
153
+ "composed": true,
154
+ "docs": {
155
+ "tags": [],
156
+ "text": ""
157
+ },
158
+ "complexType": {
159
+ "original": "XV_SORT_DIR",
160
+ "resolved": "XV_SORT_DIR.ASC | XV_SORT_DIR.DESC | XV_SORT_DIR.NONE",
161
+ "references": {
162
+ "XV_SORT_DIR": {
163
+ "location": "import",
164
+ "path": "../../../types/enum",
165
+ "id": "src/types/enum.ts::XV_SORT_DIR"
166
+ }
167
+ }
168
+ }
169
+ }];
170
+ }
171
+ static get elementRef() { return "el"; }
172
+ static get listeners() {
173
+ return [{
174
+ "name": "click",
175
+ "method": "handleSort",
176
+ "target": undefined,
177
+ "capture": false,
178
+ "passive": false
179
+ }];
180
+ }
181
+ }
182
+ //# sourceMappingURL=xv-data-table-cell.js.map