xv-webcomponents 0.1.29 → 0.1.31

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 (110) hide show
  1. package/dist/cjs/{index-782b9733.js → index-5ee1b884.js} +43 -2
  2. package/dist/cjs/index-5ee1b884.js.map +1 -0
  3. package/dist/cjs/index.cjs.js +1 -1
  4. package/dist/cjs/loader.cjs.js +2 -2
  5. package/dist/cjs/{utils-aa46f72a.js → utils-22c0eda0.js} +1 -16
  6. package/dist/cjs/utils-22c0eda0.js.map +1 -0
  7. package/dist/cjs/{xv-accordion-v2_28.cjs.entry.js → xv-accordion-v2_26.cjs.entry.js} +124 -429
  8. package/dist/cjs/xv-accordion-v2_26.cjs.entry.js.map +1 -0
  9. package/dist/cjs/xv-breadcrumbs-v2.cjs.entry.js +1 -1
  10. package/dist/cjs/xv-webcomponents.cjs.js +2 -2
  11. package/dist/collection/collection-manifest.json +1 -3
  12. package/dist/collection/components/xv-checkbox/xv-checkbox.css +4 -1
  13. package/dist/collection/components/xv-checkbox/xv-checkbox.js +1 -1
  14. package/dist/collection/components/xv-checkbox/xv-checkbox.js.map +1 -1
  15. package/dist/collection/components/xv-dropdown/xv-dropdown-item/xv-dropdown-item.js +1 -1
  16. package/dist/collection/components/xv-dropdown/xv-dropdown.css +1 -1
  17. package/dist/collection/components/xv-dropdown/xv-dropdown.js +1 -2
  18. package/dist/collection/components/xv-dropdown/xv-dropdown.js.map +1 -1
  19. package/dist/collection/components/xv-footer/xv-footer.js +1 -1
  20. package/dist/collection/components/xv-header/xv-header.js +1 -1
  21. package/dist/collection/components/xv-link/xv-link.js +1 -1
  22. package/dist/collection/components/xv-modal/xv-modal.css +5 -4
  23. package/dist/collection/components/xv-modal/xv-modal.js +1 -1
  24. package/dist/collection/components/xv-modal/xv-modal.js.map +1 -1
  25. package/dist/collection/components/xv-notification/xv-notification.js +1 -1
  26. package/dist/collection/components/xv-overflow-menu/xv-overflow-menu-item/xv-overflow-menu-item.js +1 -1
  27. package/dist/collection/components/xv-overflow-menu/xv-overflow-menu.js +1 -1
  28. package/dist/collection/components/xv-progress-indicator/xv-progress-indicator-item/xv-progress-indicator-item.js +1 -1
  29. package/dist/collection/components/xv-progress-indicator/xv-progress-indicator.js +2 -2
  30. package/dist/collection/components/xv-progress-indicator/xv-progress-indicator.js.map +1 -1
  31. package/dist/collection/components/xv-table/_vars.js +9 -0
  32. package/dist/collection/components/xv-table/_vars.js.map +1 -0
  33. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.css +86 -0
  34. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.js +160 -0
  35. package/dist/collection/components/xv-table/xv-table-cell/xv-table-cell.js.map +1 -0
  36. package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.css +55 -114
  37. package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.js +28 -151
  38. package/dist/collection/components/xv-table/xv-table-expand/xv-table-expand.js.map +1 -1
  39. package/dist/collection/components/xv-table/xv-table-row/xv-table-row.css +22 -36
  40. package/dist/collection/components/xv-table/xv-table-row/xv-table-row.js +146 -118
  41. package/dist/collection/components/xv-table/xv-table-row/xv-table-row.js.map +1 -1
  42. package/dist/collection/components/xv-table/xv-table.css +83 -141
  43. package/dist/collection/components/xv-table/xv-table.js +56 -208
  44. package/dist/collection/components/xv-table/xv-table.js.map +1 -1
  45. package/dist/collection/components/xv-tabs/xv-tab/xv-tab.js +3 -3
  46. package/dist/collection/components/xv-tabs/xv-tab/xv-tab.js.map +1 -1
  47. package/dist/collection/components/xv-tabs/xv-tabs.css +5 -3
  48. package/dist/collection/components/xv-tabs/xv-tabs.js +8 -36
  49. package/dist/collection/components/xv-tabs/xv-tabs.js.map +1 -1
  50. package/dist/collection/components/xv-tag/xv-tag.js +1 -1
  51. package/dist/collection/components/xv-text-input/xv-text-input.js +10 -10
  52. package/dist/collection/components/xv-text-input/xv-text-input.js.map +1 -1
  53. package/dist/collection/components/xv-tooltip/xv-tooltip.js +1 -1
  54. package/dist/esm/{index-83ab73b7.js → index-590eb7d2.js} +43 -3
  55. package/dist/esm/index-590eb7d2.js.map +1 -0
  56. package/dist/esm/index.js +1 -1
  57. package/dist/esm/loader.js +3 -3
  58. package/dist/esm/{utils-0d1c18d5.js → utils-a9c71376.js} +2 -16
  59. package/dist/esm/utils-a9c71376.js.map +1 -0
  60. package/dist/esm/{xv-accordion-v2_28.entry.js → xv-accordion-v2_26.entry.js} +124 -427
  61. package/dist/esm/xv-accordion-v2_26.entry.js.map +1 -0
  62. package/dist/esm/xv-breadcrumbs-v2.entry.js +1 -1
  63. package/dist/esm/xv-webcomponents.js +3 -3
  64. package/dist/types/components/xv-table/_vars.d.ts +15 -0
  65. package/dist/types/components/xv-table/xv-table-cell/xv-table-cell.d.ts +15 -0
  66. package/dist/types/components/xv-table/xv-table-expand/xv-table-expand.d.ts +4 -20
  67. package/dist/types/components/xv-table/xv-table-row/xv-table-row.d.ts +15 -46
  68. package/dist/types/components/xv-table/xv-table.d.ts +9 -32
  69. package/dist/types/components/xv-tabs/xv-tabs.d.ts +1 -10
  70. package/dist/types/components.d.ts +57 -273
  71. package/dist/xv-webcomponents/index.esm.js +1 -1
  72. package/dist/xv-webcomponents/p-612356e6.js +3 -0
  73. package/dist/xv-webcomponents/p-612356e6.js.map +1 -0
  74. package/dist/xv-webcomponents/p-c09a0bfe.entry.js +2 -0
  75. package/dist/xv-webcomponents/p-e750290d.entry.js +2 -0
  76. package/dist/xv-webcomponents/p-e750290d.entry.js.map +1 -0
  77. package/dist/xv-webcomponents/p-f98a1845.js +2 -0
  78. package/dist/xv-webcomponents/p-f98a1845.js.map +1 -0
  79. package/dist/xv-webcomponents/xv-webcomponents.esm.js +1 -1
  80. package/dist/xv-webcomponents/xv-webcomponents.esm.js.map +1 -1
  81. package/package.json +1 -1
  82. package/dist/cjs/index-782b9733.js.map +0 -1
  83. package/dist/cjs/utils-aa46f72a.js.map +0 -1
  84. package/dist/cjs/xv-accordion-v2_28.cjs.entry.js.map +0 -1
  85. package/dist/collection/components/xv-table/defs.js +0 -28
  86. package/dist/collection/components/xv-table/defs.js.map +0 -1
  87. package/dist/collection/components/xv-table/xv-table-col/xv-table-col.css +0 -13
  88. package/dist/collection/components/xv-table/xv-table-col/xv-table-col.js +0 -111
  89. package/dist/collection/components/xv-table/xv-table-col/xv-table-col.js.map +0 -1
  90. package/dist/collection/components/xv-table/xv-table-header-row/xv-table-header-row.css +0 -80
  91. package/dist/collection/components/xv-table/xv-table-header-row/xv-table-header-row.js +0 -172
  92. package/dist/collection/components/xv-table/xv-table-header-row/xv-table-header-row.js.map +0 -1
  93. package/dist/collection/components/xv-table/xv-table-toolbar/xv-table-toolbar.css +0 -47
  94. package/dist/collection/components/xv-table/xv-table-toolbar/xv-table-toolbar.js +0 -78
  95. package/dist/collection/components/xv-table/xv-table-toolbar/xv-table-toolbar.js.map +0 -1
  96. package/dist/esm/index-83ab73b7.js.map +0 -1
  97. package/dist/esm/utils-0d1c18d5.js.map +0 -1
  98. package/dist/esm/xv-accordion-v2_28.entry.js.map +0 -1
  99. package/dist/types/components/xv-table/defs.d.ts +0 -38
  100. package/dist/types/components/xv-table/xv-table-col/xv-table-col.d.ts +0 -9
  101. package/dist/types/components/xv-table/xv-table-header-row/xv-table-header-row.d.ts +0 -28
  102. package/dist/types/components/xv-table/xv-table-toolbar/xv-table-toolbar.d.ts +0 -6
  103. package/dist/xv-webcomponents/p-39bf1511.js +0 -2
  104. package/dist/xv-webcomponents/p-39bf1511.js.map +0 -1
  105. package/dist/xv-webcomponents/p-5f18d718.entry.js +0 -2
  106. package/dist/xv-webcomponents/p-840929c5.js +0 -3
  107. package/dist/xv-webcomponents/p-840929c5.js.map +0 -1
  108. package/dist/xv-webcomponents/p-cc83f7ea.entry.js +0 -2
  109. package/dist/xv-webcomponents/p-cc83f7ea.entry.js.map +0 -1
  110. /package/dist/xv-webcomponents/{p-5f18d718.entry.js.map → p-c09a0bfe.entry.js.map} +0 -0
@@ -62,18 +62,20 @@
62
62
  :host(.xv-tabs) .tab-content-wrapper {
63
63
  position: relative;
64
64
  overflow: hidden;
65
- transition: height 0.3s ease;
66
- padding: var(--gap-md, 16px);
65
+ padding: var(--gap-md, 16px) 0;
67
66
  }
68
67
  :host(.xv-tabs) ::slotted(xv-tab-v2) {
69
68
  position: absolute;
70
69
  opacity: 0;
71
- transition: opacity 0.3s ease;
70
+ max-height: 0;
71
+ transition: max-height 0.5s ease;
72
72
  width: 100%;
73
73
  pointer-events: none;
74
74
  }
75
75
  :host(.xv-tabs) ::slotted(xv-tab-v2.active) {
76
76
  position: relative;
77
77
  opacity: 1;
78
+ overflow-y: auto;
78
79
  pointer-events: auto;
80
+ max-height: 1000px;
79
81
  }
@@ -10,54 +10,32 @@ export class XvTabs {
10
10
  * Variant of tabs from TABS_VATIANT enum
11
11
  */
12
12
  this.variant = TABS_VATIANT.DEFAULT;
13
- /**
14
- * for animate the tab content
15
- */
16
- this.height = 0;
17
13
  /**
18
14
  * local variable for tab labels collection
19
15
  */
20
16
  this.tabElements = [];
21
- }
22
- /**
23
- * Watch active tab changes to animate content height
24
- */
25
- onActiveTabChanged() {
26
- this.setHeight();
27
- }
28
- collectTabs() {
29
- if (!this.tabElements.length) {
30
- this.tabElements = Array.from(this.el.querySelectorAll(TAB_TAGS.TAB));
31
- }
17
+ this.collectTabs = () => {
18
+ if (!this.tabElements.length) {
19
+ this.tabElements = Array.from(this.el.querySelectorAll(TAB_TAGS.TAB));
20
+ }
21
+ };
32
22
  }
33
23
  updateTabClasses() {
34
24
  this.tabElements.forEach((tab, i) => {
35
25
  tab.classList.toggle('active', i === this.active);
36
26
  });
37
27
  }
38
- setHeight() {
39
- requestAnimationFrame(() => {
40
- var _a;
41
- const tab = this.tabElements[this.active];
42
- if (tab) {
43
- const content = (_a = tab.shadowRoot) === null || _a === void 0 ? void 0 : _a.host;
44
- this.height = (content === null || content === void 0 ? void 0 : content.scrollHeight) || 0;
45
- }
46
- });
47
- }
48
28
  handleTabClick(index) {
49
29
  if (index === this.active)
50
30
  return;
51
31
  this.active = index;
52
- this.setHeight();
53
32
  this.tabSelect.emit(this.active);
54
33
  }
55
34
  render() {
56
- return (h(Host, { key: '490001d8e74c759e11a2fc99c545d0a3429465f6', class: "xv-tabs", variant: this.variant }, h("div", { key: 'bd5210a9e26775c56b14fb4d0a330ed472033403', class: "tab-headers", role: "tablist" }, this.tabElements.map((tab, index) => (h("button", { role: "tab", disabled: !!tab.getAttribute('disabled') || !!(tab === null || tab === void 0 ? void 0 : tab.disabled), class: { active: index === this.active }, onClick: () => this.handleTabClick(index) }, tab.getAttribute('label') || `Tab ${index + 1}`)))), h("div", { key: '0e15189ae37d5ac1431545df44a4c6500694a2fc', class: "tab-content-wrapper", style: { height: `${this.height}px` }, role: "tabpanel", tabindex: -1 }, h("slot", { key: '18dc32e8d6f6576b355786d6c959582df87a59b5' }))));
35
+ return (h(Host, { key: '71222d5fc07d20673c5ef9e7cda9c6e443611011', class: "xv-tabs", variant: this.variant }, h("div", { key: '179f735cb97ca18df1e4d83167ce9f76a74a5afb', class: "tab-headers", role: "tablist" }, this.tabElements.map((tab, index) => (h("button", { role: "tab", disabled: !!tab.getAttribute('disabled') || !!(tab === null || tab === void 0 ? void 0 : tab.disabled), class: { active: index === this.active }, onClick: () => this.handleTabClick(index) }, tab.getAttribute('label') || `Tab ${index + 1}`)))), h("div", { key: 'c26bcad7439d3a8155fbb0af4e566845f77de28b', class: "tab-content-wrapper", role: "tabpanel", tabindex: -1 }, h("slot", { key: 'c7744d7960dc59ed279103c40e20fa59feb4d0d7', onSlotchange: this.collectTabs }))));
57
36
  }
58
37
  componentWillLoad() {
59
- this.collectTabs();
60
- this.setHeight();
38
+ // this.collectTabs();
61
39
  }
62
40
  componentDidRender() {
63
41
  this.updateTabClasses();
@@ -126,7 +104,7 @@ export class XvTabs {
126
104
  }
127
105
  static get states() {
128
106
  return {
129
- "height": {}
107
+ "tabElements": {}
130
108
  };
131
109
  }
132
110
  static get events() {
@@ -148,11 +126,5 @@ export class XvTabs {
148
126
  }];
149
127
  }
150
128
  static get elementRef() { return "el"; }
151
- static get watchers() {
152
- return [{
153
- "propName": "active",
154
- "methodName": "onActiveTabChanged"
155
- }];
156
- }
157
129
  }
158
130
  //# sourceMappingURL=xv-tabs.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"xv-tabs.js","sourceRoot":"","sources":["../../../src/components/xv-tabs/xv-tabs.tsx"],"names":[],"mappings":"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","sourcesContent":["import { Component, Host, h, Element, State, Watch, Prop, Event, EventEmitter } from '@stencil/core';\nimport { TAB_TAGS, TABS_VATIANT } from './_vars';\n\n@Component({\n tag: 'xv-tabs-v2',\n styleUrl: 'xv-tabs.scss',\n shadow: true,\n})\nexport class XvTabs {\n @Element() el: HTMLElement;\n /**\n * Index of active tab\n */\n @Prop({ reflect: true, mutable: true }) active: number = 0;\n /**\n * Variant of tabs from TABS_VATIANT enum\n */\n @Prop() variant: TABS_VATIANT = TABS_VATIANT.DEFAULT;\n /**\n * for animate the tab content\n */\n @State() height: number = 0;\n /**\n * Emit event to outside\n */\n @Event() tabSelect: EventEmitter<number>;\n /**\n * local variable for tab labels collection\n */\n private tabElements: HTMLElement[] = [];\n /**\n * Watch active tab changes to animate content height\n */\n @Watch('active')\n onActiveTabChanged() {\n this.setHeight();\n }\n\n private collectTabs() {\n if (!this.tabElements.length) {\n this.tabElements = Array.from(this.el.querySelectorAll(TAB_TAGS.TAB));\n }\n }\n\n private updateTabClasses() {\n this.tabElements.forEach((tab, i) => {\n tab.classList.toggle('active', i === this.active);\n });\n }\n\n private setHeight() {\n requestAnimationFrame(() => {\n const tab = this.tabElements[this.active];\n if (tab) {\n const content = tab.shadowRoot?.host;\n this.height = content?.scrollHeight || 0;\n }\n });\n }\n\n private handleTabClick(index: number) {\n if (index === this.active) return;\n\n this.active = index;\n this.setHeight();\n this.tabSelect.emit(this.active);\n }\n\n render() {\n return (\n <Host class=\"xv-tabs\" variant={this.variant}>\n <div class=\"tab-headers\" role=\"tablist\">\n {this.tabElements.map((tab, index) => (\n <button\n role=\"tab\"\n disabled={!!tab.getAttribute('disabled') || !!(tab as any)?.disabled}\n class={{ active: index === this.active }}\n onClick={() => this.handleTabClick(index)}\n >\n {tab.getAttribute('label') || `Tab ${index + 1}`}\n </button>\n ))}\n </div>\n\n <div\n class=\"tab-content-wrapper\"\n style={{ height: `${this.height}px` }}\n role=\"tabpanel\"\n tabindex={-1}\n >\n <slot />\n </div>\n </Host>\n );\n }\n\n componentWillLoad() {\n this.collectTabs();\n this.setHeight();\n }\n\n componentDidRender() {\n this.updateTabClasses();\n }\n}\n"]}
1
+ {"version":3,"file":"xv-tabs.js","sourceRoot":"","sources":["../../../src/components/xv-tabs/xv-tabs.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAgB,KAAK,EAAE,MAAM,eAAe,CAAC;AAC9F,OAAO,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAOjD,MAAM,OAAO,MAAM;IALnB;QAOE;;WAEG;QACqC,WAAM,GAAW,CAAC,CAAC;QAC3D;;WAEG;QACK,YAAO,GAAiB,YAAY,CAAC,OAAO,CAAC;QAKrD;;WAEG;QACM,gBAAW,GAAkB,EAAE,CAAC;QAEjC,gBAAW,GAAG,GAAG,EAAE;YACzB,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC;gBAC7B,IAAI,CAAC,WAAW,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,gBAAgB,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC;YACxE,CAAC;QACH,CAAC,CAAA;KAiDF;IA/CS,gBAAgB;QACtB,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,GAAG,EAAE,CAAC,EAAE,EAAE;YAClC,GAAG,CAAC,SAAS,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,CAAC;QACpD,CAAC,CAAC,CAAC;IACL,CAAC;IAEO,cAAc,CAAC,KAAa;QAClC,IAAI,KAAK,KAAK,IAAI,CAAC,MAAM;YAAE,OAAO;QAElC,IAAI,CAAC,MAAM,GAAG,KAAK,CAAC;QACpB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,KAAK,EAAC,SAAS,EAAC,OAAO,EAAE,IAAI,CAAC,OAAO;YACzC,4DAAK,KAAK,EAAC,aAAa,EAAC,IAAI,EAAC,SAAS,IACpC,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,KAAK,EAAE,EAAE,CAAC,CACpC,cACE,IAAI,EAAC,KAAK,EACV,QAAQ,EAAE,CAAC,CAAC,GAAG,CAAC,YAAY,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,GAAW,aAAX,GAAG,uBAAH,GAAG,CAAU,QAAQ,CAAA,EACpE,KAAK,EAAE,EAAE,MAAM,EAAE,KAAK,KAAK,IAAI,CAAC,MAAM,EAAE,EACxC,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,KAAK,CAAC,IAExC,GAAG,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,OAAO,KAAK,GAAG,CAAC,EAAE,CACzC,CACV,CAAC,CACE;YAEN,4DACE,KAAK,EAAC,qBAAqB,EAC3B,IAAI,EAAC,UAAU,EACf,QAAQ,EAAE,CAAC,CAAC;gBAEZ,6DAAM,YAAY,EAAE,IAAI,CAAC,WAAW,GAAI,CACpC,CACD,CACR,CAAC;IACJ,CAAC;IAED,iBAAiB;QACf,sBAAsB;IACxB,CAAC;IAED,kBAAkB;QAChB,IAAI,CAAC,gBAAgB,EAAE,CAAC;IAC1B,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["import { Component, Host, h, Element, Prop, Event, EventEmitter, State } from '@stencil/core';\nimport { TAB_TAGS, TABS_VATIANT } from './_vars';\n\n@Component({\n tag: 'xv-tabs-v2',\n styleUrl: 'xv-tabs.scss',\n shadow: true,\n})\nexport class XvTabs {\n @Element() el: HTMLElement;\n /**\n * Index of active tab\n */\n @Prop({ reflect: true, mutable: true }) active: number = 0;\n /**\n * Variant of tabs from TABS_VATIANT enum\n */\n @Prop() variant: TABS_VATIANT = TABS_VATIANT.DEFAULT;\n /**\n * Emit event to outside\n */\n @Event() tabSelect: EventEmitter<number>;\n /**\n * local variable for tab labels collection\n */\n @State() tabElements: HTMLElement[] = [];\n\n private collectTabs = () => {\n if (!this.tabElements.length) {\n this.tabElements = Array.from(this.el.querySelectorAll(TAB_TAGS.TAB));\n }\n }\n\n private updateTabClasses() {\n this.tabElements.forEach((tab, i) => {\n tab.classList.toggle('active', i === this.active);\n });\n }\n\n private handleTabClick(index: number) {\n if (index === this.active) return;\n\n this.active = index;\n this.tabSelect.emit(this.active);\n }\n\n render() {\n return (\n <Host class=\"xv-tabs\" variant={this.variant}>\n <div class=\"tab-headers\" role=\"tablist\">\n {this.tabElements.map((tab, index) => (\n <button\n role=\"tab\"\n disabled={!!tab.getAttribute('disabled') || !!(tab as any)?.disabled}\n class={{ active: index === this.active }}\n onClick={() => this.handleTabClick(index)}\n >\n {tab.getAttribute('label') || `Tab ${index + 1}`}\n </button>\n ))}\n </div>\n\n <div\n class=\"tab-content-wrapper\"\n role=\"tabpanel\"\n tabindex={-1}\n >\n <slot onSlotchange={this.collectTabs} />\n </div>\n </Host>\n );\n }\n\n componentWillLoad() {\n // this.collectTabs();\n }\n\n componentDidRender() {\n this.updateTabClasses();\n }\n}\n"]}
@@ -13,7 +13,7 @@ export class XvTag {
13
13
  this.closeClick.emit(e);
14
14
  }
15
15
  render() {
16
- return (h(Host, { key: 'cca59dceeb566fa038234f7962be22424dc9a35e', style: { color: this.color, background: this.bg }, class: `xv-tag ${this.disabled ? 'disabled' : ''} ${this.size}` }, h("div", { key: '5d7bedbbbb7ce916b1aa5efda7cebe957b985762', class: "xv-tag_content" }, h("slot", { key: '300db1eecac2be8508b328cd869599af162c04a8' })), this.closeable && (h("button", { key: '4d7eacbb1d380ecf664780e4466129327563bace', onClick: this.closeHandler.bind(this), class: "xv-tag_close" }))));
16
+ return (h(Host, { key: '55ab2ded31587ebc443ace2a8417de8fa23a9d4d', style: { color: this.color, background: this.bg }, class: `xv-tag ${this.disabled ? 'disabled' : ''} ${this.size}` }, h("div", { key: '8b10a67b88691eb68a0ab659c9d5e16bcf0cf3c4', class: "xv-tag_content" }, h("slot", { key: '31df2f187e4028849870d376fe38566a77c7bb70' })), this.closeable && (h("button", { key: '5dfd253f6c64121747cb7ea8ed4aa697b66edcb8', onClick: this.closeHandler.bind(this), class: "xv-tag_close" }))));
17
17
  }
18
18
  static get is() { return "xv-tag-v2"; }
19
19
  static get encapsulation() { return "shadow"; }
@@ -31,7 +31,7 @@ export class XvTextInput {
31
31
  };
32
32
  }
33
33
  render() {
34
- return (h(Host, { key: '4a16cd6ea36fd074e118bc262bf2aa50a32bbc90', name: this.name, class: "xv-text-input", role: "textbox", tabindex: this.disabled ? -1 : false }, this.label && h("label", { key: 'a18f098c242b7923951ad745d8fdca68289b6a1e', class: "label" }, this.label), h("div", { key: '3fc93834180279e5dfcc4b203e6e821e13acb539', class: "control" }, h("input", { key: '5d4b743dcb4c7afff9475f69b0127b478bc6a2a1', type: "text", class: { withIcon: this.status !== TextInputStatus.DEF }, readonly: this.readonly, value: this.value, disabled: this.disabled, onInput: this.handleInput, placeholder: this.placeholder }), this.getControlIcon(this.status)), this.helper && h("p", { key: 'e24b2c111e6fdba83006493d1fc7dcdf08256880', class: "helper" }, this.helper)));
34
+ return (h(Host, { key: '8556c01f698beadee8a07430dd5a33d07b0669bc', name: this.name, class: "xv-text-input", role: "textbox", tabindex: this.disabled ? -1 : false }, this.label && h("label", { key: 'd32d94e1731e624bfdb92dabe6dd19eb4a768956', class: "label" }, this.label), h("div", { key: 'ec0ecef3df39c6eb0682036efe30009688568299', class: "control" }, h("input", { key: 'c3d190af296b2cf9b8b2df95bca81f17699ed954', type: "text", class: { withIcon: this.status !== TextInputStatus.DEF }, readonly: this.readonly, value: this.value, disabled: this.disabled, onInput: this.handleInput, placeholder: this.placeholder }), this.getControlIcon(this.status)), this.helper && h("p", { key: '8abde71aa7c4f8dc6e85d36815789376bc00c4a6', class: "helper" }, this.helper)));
35
35
  }
36
36
  componentWillLoad() {
37
37
  this.internals.setFormValue(this.value);
@@ -68,7 +68,7 @@ export class XvTextInput {
68
68
  "getter": false,
69
69
  "setter": false,
70
70
  "attribute": "label",
71
- "reflect": false
71
+ "reflect": true
72
72
  },
73
73
  "placeholder": {
74
74
  "type": "string",
@@ -87,7 +87,7 @@ export class XvTextInput {
87
87
  "getter": false,
88
88
  "setter": false,
89
89
  "attribute": "placeholder",
90
- "reflect": false
90
+ "reflect": true
91
91
  },
92
92
  "helper": {
93
93
  "type": "string",
@@ -106,7 +106,7 @@ export class XvTextInput {
106
106
  "getter": false,
107
107
  "setter": false,
108
108
  "attribute": "helper",
109
- "reflect": false,
109
+ "reflect": true,
110
110
  "defaultValue": "''"
111
111
  },
112
112
  "name": {
@@ -126,7 +126,7 @@ export class XvTextInput {
126
126
  "getter": false,
127
127
  "setter": false,
128
128
  "attribute": "name",
129
- "reflect": false
129
+ "reflect": true
130
130
  },
131
131
  "size": {
132
132
  "type": "string",
@@ -151,7 +151,7 @@ export class XvTextInput {
151
151
  "getter": false,
152
152
  "setter": false,
153
153
  "attribute": "size",
154
- "reflect": false,
154
+ "reflect": true,
155
155
  "defaultValue": "SIZE_VAR.MD"
156
156
  },
157
157
  "status": {
@@ -177,7 +177,7 @@ export class XvTextInput {
177
177
  "getter": false,
178
178
  "setter": false,
179
179
  "attribute": "status",
180
- "reflect": false,
180
+ "reflect": true,
181
181
  "defaultValue": "TextInputStatus.DEF"
182
182
  },
183
183
  "value": {
@@ -197,7 +197,7 @@ export class XvTextInput {
197
197
  "getter": false,
198
198
  "setter": false,
199
199
  "attribute": "value",
200
- "reflect": false,
200
+ "reflect": true,
201
201
  "defaultValue": "''"
202
202
  },
203
203
  "disabled": {
@@ -217,7 +217,7 @@ export class XvTextInput {
217
217
  "getter": false,
218
218
  "setter": false,
219
219
  "attribute": "disabled",
220
- "reflect": false,
220
+ "reflect": true,
221
221
  "defaultValue": "false"
222
222
  },
223
223
  "readonly": {
@@ -237,7 +237,7 @@ export class XvTextInput {
237
237
  "getter": false,
238
238
  "setter": false,
239
239
  "attribute": "readonly",
240
- "reflect": false,
240
+ "reflect": true,
241
241
  "defaultValue": "false"
242
242
  }
243
243
  };
@@ -1 +1 @@
1
- {"version":3,"file":"xv-text-input.js","sourceRoot":"","sources":["../../../src/components/xv-text-input/xv-text-input.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, h, Host, Element, Prop } from '@stencil/core';\nimport { SIZE_VAR } from '../../types/enum';\nimport { TextInputStatus } from './_vars';\n\n/**\n * xv-text-input — custom input\n * ti get data you can use default Input event\n * Angular - (input), React - (onInput), Pure - addEventListener('input', e => ...)\n */\n@Component({\n tag: 'xv-text-input-v2',\n styleUrl: 'xv-text-input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class XvTextInput {\n @Element() el: HTMLElement;\n @Prop() label?: string;\n @Prop() placeholder?: string;\n @Prop() helper: string = '';\n @Prop() name?: string;\n @Prop() size: SIZE_VAR = SIZE_VAR.MD;\n @Prop() status: TextInputStatus = TextInputStatus.DEF;\n @Prop({ mutable: true }) value: string = '';\n @Prop() disabled: boolean = false;\n @Prop() readonly: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n private handleInput = (e: InputEvent) => {\n const target = e.target as HTMLInputElement;\n this.value = target.value;\n this.internals.setFormValue(target.value);\n }\n\n render() {\n return (\n <Host name={this.name} class=\"xv-text-input\" role=\"textbox\" tabindex={this.disabled ? -1 : false}>\n {this.label && <label class=\"label\">{this.label}</label>}\n\n <div class=\"control\">\n <input\n type=\"text\"\n class={{ withIcon: this.status !== TextInputStatus.DEF }}\n readonly={this.readonly}\n value={this.value}\n disabled={this.disabled}\n onInput={this.handleInput}\n placeholder={this.placeholder}\n />\n\n {this.getControlIcon(this.status)}\n </div>\n\n {this.helper && <p class=\"helper\">{this.helper}</p>}\n </Host>\n );\n }\n\n componentWillLoad() {\n this.internals.setFormValue(this.value);\n }\n\n private getControlIcon = (status: TextInputStatus) => {\n switch (status) {\n case TextInputStatus.ERROR: {\n return (\n <svg class=\"control_icon error\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n <path fill=\"currentColor\"\n d=\"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24l0 112c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-112c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\" />\n </svg>\n )\n }\n case TextInputStatus.WARNING:\n return (\n <svg class=\"control_icon warning\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n <path fill=\"currentColor\"\n d=\"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\" />\n </svg>\n )\n default: return null;\n }\n };\n}\n"]}
1
+ {"version":3,"file":"xv-text-input.js","sourceRoot":"","sources":["../../../src/components/xv-text-input/xv-text-input.tsx"],"names":[],"mappings":"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","sourcesContent":["import { AttachInternals, Component, h, Host, Element, Prop } from '@stencil/core';\nimport { SIZE_VAR } from '../../types/enum';\nimport { TextInputStatus } from './_vars';\n\n/**\n * xv-text-input — custom input\n * ti get data you can use default Input event\n * Angular - (input), React - (onInput), Pure - addEventListener('input', e => ...)\n */\n@Component({\n tag: 'xv-text-input-v2',\n styleUrl: 'xv-text-input.scss',\n shadow: true,\n formAssociated: true,\n})\nexport class XvTextInput {\n @Element() el: HTMLElement;\n @Prop({ reflect: true }) label?: string;\n @Prop({ reflect: true }) placeholder?: string;\n @Prop({ reflect: true }) helper: string = '';\n @Prop({ reflect: true }) name?: string;\n @Prop({ reflect: true }) size: SIZE_VAR = SIZE_VAR.MD;\n @Prop({ reflect: true }) status: TextInputStatus = TextInputStatus.DEF;\n @Prop({ reflect: true, mutable: true }) value: string = '';\n @Prop({ reflect: true }) disabled: boolean = false;\n @Prop({ reflect: true }) readonly: boolean = false;\n\n @AttachInternals() internals: ElementInternals;\n\n private handleInput = (e: InputEvent) => {\n const target = e.target as HTMLInputElement;\n this.value = target.value;\n this.internals.setFormValue(target.value);\n }\n\n render() {\n return (\n <Host name={this.name} class=\"xv-text-input\" role=\"textbox\" tabindex={this.disabled ? -1 : false}>\n {this.label && <label class=\"label\">{this.label}</label>}\n\n <div class=\"control\">\n <input\n type=\"text\"\n class={{ withIcon: this.status !== TextInputStatus.DEF }}\n readonly={this.readonly}\n value={this.value}\n disabled={this.disabled}\n onInput={this.handleInput}\n placeholder={this.placeholder}\n />\n\n {this.getControlIcon(this.status)}\n </div>\n\n {this.helper && <p class=\"helper\">{this.helper}</p>}\n </Host>\n );\n }\n\n componentWillLoad() {\n this.internals.setFormValue(this.value);\n }\n\n private getControlIcon = (status: TextInputStatus) => {\n switch (status) {\n case TextInputStatus.ERROR: {\n return (\n <svg class=\"control_icon error\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n <path fill=\"currentColor\"\n d=\"M256 512A256 256 0 1 0 256 0a256 256 0 1 0 0 512zm0-384c13.3 0 24 10.7 24 24l0 112c0 13.3-10.7 24-24 24s-24-10.7-24-24l0-112c0-13.3 10.7-24 24-24zM224 352a32 32 0 1 1 64 0 32 32 0 1 1 -64 0z\" />\n </svg>\n )\n }\n case TextInputStatus.WARNING:\n return (\n <svg class=\"control_icon warning\" xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 512 512\">\n <path fill=\"currentColor\"\n d=\"M256 32c14.2 0 27.3 7.5 34.5 19.8l216 368c7.3 12.4 7.3 27.7 .2 40.1S486.3 480 472 480L40 480c-14.3 0-27.6-7.7-34.7-20.1s-7-27.8 .2-40.1l216-368C228.7 39.5 241.8 32 256 32zm0 128c-13.3 0-24 10.7-24 24l0 112c0 13.3 10.7 24 24 24s24-10.7 24-24l0-112c0-13.3-10.7-24-24-24zm32 224a32 32 0 1 0 -64 0 32 32 0 1 0 64 0z\" />\n </svg>\n )\n default: return null;\n }\n };\n}\n"]}
@@ -9,7 +9,7 @@ export class XvTooltip {
9
9
  this.position = 'top';
10
10
  }
11
11
  render() {
12
- return (h(Host, { key: '3cbaa0f4193f8d41adfa47fac25a9e77b4deaa0d', tooltip: this.message, class: `xv-tooltip_${this.position}` }, h("slot", { key: '176f13a692ca159849dacf780030f1a71f22de87' }, h("svg", { key: '334581c0388fcf67337605189461f8d7433fbf8c', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: 16, height: 16 }, h("path", { key: 'd0bbcb1d8ed14bcc183d6dc3277873702510900e', fill: "currentColor", d: "M256 48a208 208 0 1 1 0 416 208 208 0 1 1 0-416zm0 464A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336c-13.3 0-24 10.7-24 24s10.7 24 24 24l80 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-8 0 0-88c0-13.3-10.7-24-24-24l-48 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l24 0 0 64-24 0zm40-144a32 32 0 1 0 0-64 32 32 0 1 0 0 64z" })))));
12
+ return (h(Host, { key: '9bfc552b3e9ed5697b9718e94344853698737651', tooltip: this.message, class: `xv-tooltip_${this.position}` }, h("slot", { key: '6ed625e9463d0fff4c24835cb1f5f12fb0dc4c01' }, h("svg", { key: '77dba81d363ff45e6903a73eae29f811a7cac7cf', xmlns: "http://www.w3.org/2000/svg", viewBox: "0 0 512 512", width: 16, height: 16 }, h("path", { key: 'd956ddf5f82a21a93200cf079bf1f7ff096c0644', fill: "currentColor", d: "M256 48a208 208 0 1 1 0 416 208 208 0 1 1 0-416zm0 464A256 256 0 1 0 256 0a256 256 0 1 0 0 512zM216 336c-13.3 0-24 10.7-24 24s10.7 24 24 24l80 0c13.3 0 24-10.7 24-24s-10.7-24-24-24l-8 0 0-88c0-13.3-10.7-24-24-24l-48 0c-13.3 0-24 10.7-24 24s10.7 24 24 24l24 0 0 64-24 0zm40-144a32 32 0 1 0 0-64 32 32 0 1 0 0 64z" })))));
13
13
  }
14
14
  static get is() { return "xv-tooltip-v2"; }
15
15
  static get encapsulation() { return "shadow"; }
@@ -1,5 +1,5 @@
1
1
  const NAMESPACE = 'xv-webcomponents';
2
- const BUILD = /* xv-webcomponents */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, constructableCSS: true, cssAnnotations: true, devTools: false, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: true, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: false, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
2
+ const BUILD = /* xv-webcomponents */ { allRenderFn: true, appendChildSlotFix: false, asyncLoading: true, asyncQueue: false, attachStyles: true, cloneNodeFix: false, constructableCSS: true, cssAnnotations: true, devTools: false, element: false, event: true, experimentalScopedSlotChanges: false, experimentalSlotFixes: false, formAssociated: true, hasRenderFn: true, hostListener: true, hostListenerTarget: true, hostListenerTargetBody: true, hostListenerTargetDocument: false, hostListenerTargetParent: false, hostListenerTargetWindow: false, hotModuleReplacement: false, hydrateClientSide: false, hydrateServerSide: false, hydratedAttribute: false, hydratedClass: true, hydratedSelectorName: "hydrated", initializeNextTick: false, invisiblePrehydration: true, isDebug: false, isDev: false, isTesting: false, lazyLoad: true, lifecycle: true, lifecycleDOMEvents: false, member: true, method: true, mode: false, modernPropertyDecls: false, observeAttribute: true, profile: false, prop: true, propBoolean: true, propMutable: true, propNumber: true, propString: true, reflect: true, scoped: false, scopedSlotTextContentFix: false, scriptDataOpts: false, shadowDelegatesFocus: false, shadowDom: true, slot: true, slotChildNodesFix: false, slotRelocation: false, state: true, style: true, svg: true, taskQueue: true, transformTagName: false, updatable: true, vdomAttribute: true, vdomClass: true, vdomFunctional: true, vdomKey: true, vdomListener: true, vdomPropOrAttr: true, vdomRef: true, vdomRender: true, vdomStyle: true, vdomText: true, vdomXlink: false, watchCallback: true };
3
3
 
4
4
  /*
5
5
  Stencil Client Platform v4.27.1 | MIT Licensed | https://stenciljs.com
@@ -270,6 +270,13 @@ var h = (nodeName, vnodeData, ...children) => {
270
270
  }
271
271
  }
272
272
  }
273
+ if (typeof nodeName === "function") {
274
+ return nodeName(
275
+ vnodeData === null ? {} : vnodeData,
276
+ vNodeChildren,
277
+ vdomFnUtils
278
+ );
279
+ }
273
280
  const vnode = newVNode(nodeName, null);
274
281
  vnode.$attrs$ = vnodeData;
275
282
  if (vNodeChildren.length > 0) {
@@ -298,6 +305,36 @@ var newVNode = (tag, text) => {
298
305
  };
299
306
  var Host = {};
300
307
  var isHost = (node) => node && node.$tag$ === Host;
308
+ var vdomFnUtils = {
309
+ forEach: (children, cb) => children.map(convertToPublic).forEach(cb),
310
+ map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate)
311
+ };
312
+ var convertToPublic = (node) => ({
313
+ vattrs: node.$attrs$,
314
+ vchildren: node.$children$,
315
+ vkey: node.$key$,
316
+ vname: node.$name$,
317
+ vtag: node.$tag$,
318
+ vtext: node.$text$
319
+ });
320
+ var convertToPrivate = (node) => {
321
+ if (typeof node.vtag === "function") {
322
+ const vnodeData = { ...node.vattrs };
323
+ if (node.vkey) {
324
+ vnodeData.key = node.vkey;
325
+ }
326
+ if (node.vname) {
327
+ vnodeData.name = node.vname;
328
+ }
329
+ return h(node.vtag, vnodeData, ...node.vchildren || []);
330
+ }
331
+ const vnode = newVNode(node.vtag, node.vtext);
332
+ vnode.$attrs$ = node.vattrs;
333
+ vnode.$children$ = node.vchildren;
334
+ vnode.$key$ = node.vkey;
335
+ vnode.$name$ = node.vname;
336
+ return vnode;
337
+ };
301
338
  var parsePropertyValue = (propValue, propType) => {
302
339
  if (propValue != null && !isComplexType(propValue)) {
303
340
  if (propType & 4 /* Boolean */) {
@@ -1462,6 +1499,9 @@ var bootstrapLazy = (lazyBundles, options = {}) => {
1462
1499
  }
1463
1500
  endBootstrap();
1464
1501
  };
1502
+
1503
+ // src/runtime/fragment.ts
1504
+ var Fragment = (_, children) => children;
1465
1505
  var addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
1466
1506
  if (listeners && win.document) {
1467
1507
  listeners.map(([flags, name, method]) => {
@@ -1501,6 +1541,6 @@ var hostListenerOpts = (flags) => supportsListenerOptions ? {
1501
1541
  // src/runtime/nonce.ts
1502
1542
  var setNonce = (nonce) => plt.$nonce$ = nonce;
1503
1543
 
1504
- export { Host as H, bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
1544
+ export { Fragment as F, Host as H, bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
1505
1545
 
1506
- //# sourceMappingURL=index-83ab73b7.js.map
1546
+ //# sourceMappingURL=index-590eb7d2.js.map