@3t-transform/threeteeui 0.1.33 → 0.1.35

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 (115) hide show
  1. package/dist/cjs/{index-b8a62ede.js → index-457ca775.js} +16 -0
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/tttx-button.cjs.entry.js +24 -24
  4. package/dist/cjs/tttx-filter.cjs.entry.js +160 -160
  5. package/dist/cjs/tttx-form.cjs.entry.js +373 -364
  6. package/dist/cjs/tttx-icon.cjs.entry.js +11 -11
  7. package/dist/cjs/tttx-keyvalue-block.cjs.entry.js +59 -59
  8. package/dist/cjs/tttx-list.cjs.entry.js +43 -43
  9. package/dist/cjs/tttx-loading-spinner.cjs.entry.js +16 -16
  10. package/dist/cjs/tttx-sorter.cjs.entry.js +103 -103
  11. package/dist/cjs/tttx-standalone-input.cjs.entry.js +80 -80
  12. package/dist/cjs/tttx-toolbar.cjs.entry.js +10 -10
  13. package/dist/cjs/tttx.cjs.js +2 -2
  14. package/dist/collection/components/atoms/tttx-button/tttx-button.js +110 -110
  15. package/dist/collection/components/atoms/tttx-button/tttx-button.stories.js +14 -14
  16. package/dist/collection/components/atoms/tttx-icon/tttx-icon.js +62 -62
  17. package/dist/collection/components/atoms/tttx-icon/tttx-icon.stories.js +22 -22
  18. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.js +109 -109
  19. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.stories.js +38 -38
  20. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.js +67 -67
  21. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.stories.js +17 -17
  22. package/dist/collection/components/molecules/tttx-filter/tttx-filter.css +6 -0
  23. package/dist/collection/components/molecules/tttx-filter/tttx-filter.js +334 -334
  24. package/dist/collection/components/molecules/tttx-filter/tttx-filter.stories.js +62 -62
  25. package/dist/collection/components/molecules/tttx-form/lib/setErrorState.js +37 -35
  26. package/dist/collection/components/molecules/tttx-form/lib/validityCheck.js +58 -58
  27. package/dist/collection/components/molecules/tttx-form/tttx-form.css +13 -0
  28. package/dist/collection/components/molecules/tttx-form/tttx-form.js +393 -364
  29. package/dist/collection/components/molecules/tttx-form/tttx-form.stories.js +248 -127
  30. package/dist/collection/components/molecules/tttx-list/tttx-list.js +105 -105
  31. package/dist/collection/components/molecules/tttx-list/tttx-list.stories.js +43 -43
  32. package/dist/collection/components/molecules/tttx-sorter/tttx-sorter.css +11 -0
  33. package/dist/collection/components/molecules/tttx-sorter/tttx-sorter.js +224 -224
  34. package/dist/collection/components/molecules/tttx-sorter/tttx-sorter.stories.js +42 -42
  35. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.css +13 -0
  36. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.js +759 -759
  37. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.stories.js +172 -172
  38. package/dist/collection/components/molecules/tttx-toolbar/tttx-toolbar.js +44 -44
  39. package/dist/collection/components/molecules/tttx-toolbar/tttx-toolbar.stories.js +14 -14
  40. package/dist/collection/components/palette.stories.js +7 -7
  41. package/dist/collection/docs/gettingstarted-developer.stories.js +5 -5
  42. package/dist/collection/icons.js +2838 -2838
  43. package/dist/collection/index.js +1 -1
  44. package/dist/collection/shared/domsanitiser.options.js +14 -14
  45. package/dist/components/tttx-button.js +48 -48
  46. package/dist/components/tttx-filter.js +192 -192
  47. package/dist/components/tttx-form.js +391 -381
  48. package/dist/components/tttx-icon2.js +28 -28
  49. package/dist/components/tttx-keyvalue-block.js +76 -76
  50. package/dist/components/tttx-list.js +65 -65
  51. package/dist/components/tttx-loading-spinner.js +33 -33
  52. package/dist/components/tttx-sorter.js +131 -131
  53. package/dist/components/tttx-standalone-input.js +131 -131
  54. package/dist/components/tttx-toolbar.js +26 -26
  55. package/dist/esm/{index-e888a5f4.js → index-d784fb3e.js} +16 -0
  56. package/dist/esm/loader.js +3 -3
  57. package/dist/esm/polyfills/core-js.js +0 -0
  58. package/dist/esm/polyfills/dom.js +0 -0
  59. package/dist/esm/polyfills/es5-html-element.js +0 -0
  60. package/dist/esm/polyfills/index.js +0 -0
  61. package/dist/esm/polyfills/system.js +0 -0
  62. package/dist/esm/tttx-button.entry.js +24 -24
  63. package/dist/esm/tttx-filter.entry.js +160 -160
  64. package/dist/esm/tttx-form.entry.js +373 -364
  65. package/dist/esm/tttx-icon.entry.js +11 -11
  66. package/dist/esm/tttx-keyvalue-block.entry.js +59 -59
  67. package/dist/esm/tttx-list.entry.js +43 -43
  68. package/dist/esm/tttx-loading-spinner.entry.js +16 -16
  69. package/dist/esm/tttx-sorter.entry.js +103 -103
  70. package/dist/esm/tttx-standalone-input.entry.js +80 -80
  71. package/dist/esm/tttx-toolbar.entry.js +10 -10
  72. package/dist/esm/tttx.js +3 -3
  73. package/dist/tttx/p-0ebffdfc.js +2 -0
  74. package/dist/tttx/{p-ccd0065e.entry.js → p-400868f1.entry.js} +1 -1
  75. package/dist/tttx/{p-48ecec8f.entry.js → p-563605b2.entry.js} +1 -1
  76. package/dist/tttx/{p-6dff6b5a.entry.js → p-72e7f7dd.entry.js} +1 -1
  77. package/dist/tttx/{p-dc5c356b.entry.js → p-798a098a.entry.js} +1 -1
  78. package/dist/tttx/{p-b3a03986.entry.js → p-91e42647.entry.js} +1 -1
  79. package/dist/tttx/{p-5631f7c2.entry.js → p-92cade7f.entry.js} +1 -1
  80. package/dist/tttx/{p-043f9b8a.entry.js → p-b720c4ad.entry.js} +1 -1
  81. package/dist/tttx/{p-96bbf1ed.entry.js → p-c4162029.entry.js} +1 -1
  82. package/dist/tttx/{p-82bb3136.entry.js → p-cac26a1b.entry.js} +1 -1
  83. package/dist/tttx/p-eb126fd0.entry.js +1 -0
  84. package/dist/tttx/tttx.esm.js +1 -1
  85. package/dist/types/components/atoms/tttx-button/tttx-button.d.ts +10 -10
  86. package/dist/types/components/atoms/tttx-button/tttx-button.stories.d.ts +10 -10
  87. package/dist/types/components/atoms/tttx-icon/tttx-icon.d.ts +5 -5
  88. package/dist/types/components/atoms/tttx-icon/tttx-icon.stories.d.ts +20 -20
  89. package/dist/types/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.d.ts +7 -7
  90. package/dist/types/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.stories.d.ts +9 -9
  91. package/dist/types/components/atoms/tttx-loading-spinner/tttx-loading-spinner.d.ts +6 -6
  92. package/dist/types/components/atoms/tttx-loading-spinner/tttx-loading-spinner.stories.d.ts +17 -17
  93. package/dist/types/components/molecules/tttx-filter/tttx-filter.d.ts +39 -39
  94. package/dist/types/components/molecules/tttx-filter/tttx-filter.stories.d.ts +68 -68
  95. package/dist/types/components/molecules/tttx-form/lib/setErrorState.d.ts +13 -13
  96. package/dist/types/components/molecules/tttx-form/lib/validityCheck.d.ts +17 -17
  97. package/dist/types/components/molecules/tttx-form/tttx-form.d.ts +111 -114
  98. package/dist/types/components/molecules/tttx-form/tttx-form.stories.d.ts +13 -13
  99. package/dist/types/components/molecules/tttx-list/tttx-list.d.ts +11 -11
  100. package/dist/types/components/molecules/tttx-list/tttx-list.stories.d.ts +14 -14
  101. package/dist/types/components/molecules/tttx-sorter/tttx-sorter.d.ts +19 -19
  102. package/dist/types/components/molecules/tttx-sorter/tttx-sorter.stories.d.ts +30 -30
  103. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.d.ts +69 -69
  104. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.stories.d.ts +143 -143
  105. package/dist/types/components/molecules/tttx-toolbar/tttx-toolbar.d.ts +4 -4
  106. package/dist/types/components/molecules/tttx-toolbar/tttx-toolbar.stories.d.ts +13 -13
  107. package/dist/types/components/palette.stories.d.ts +6 -6
  108. package/dist/types/components.d.ts +3 -2
  109. package/dist/types/docs/gettingstarted-developer.stories.d.ts +5 -5
  110. package/dist/types/icons.d.ts +2 -2
  111. package/dist/types/index.d.ts +1 -1
  112. package/dist/types/shared/domsanitiser.options.d.ts +10 -10
  113. package/package.json +1 -1
  114. package/dist/tttx/p-65adb464.entry.js +0 -1
  115. package/dist/tttx/p-f764ffc4.js +0 -2
@@ -2,34 +2,34 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
2
2
 
3
3
  const tttxIconCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.material-symbols-rounded{font-family:\"Material Symbols Rounded\", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}:host{display:inline-block;cursor:default;user-select:none}.icon-size{width:24px;height:24px}.tooltip{background:#ffffff;color:#343434;font-weight:bold;padding:8px 16px;font-size:13px;border-radius:4px;box-shadow:0 0 5px 1px rgba(0, 0, 0, 0.3);display:none}.tooltip[data-show]{display:block}.arrow,.arrow::before{position:absolute;width:8px;height:8px;background:inherit}.arrow{visibility:hidden}.arrow::before{visibility:visible;content:\"\";transform:rotate(45deg)}.tooltip[data-popper-placement^=top]>.arrow{bottom:-4px}.tooltip[data-popper-placement^=bottom]>.arrow{top:-4px}.tooltip[data-popper-placement^=left]>.arrow{right:-4px}.tooltip[data-popper-placement^=right]>.arrow{left:-4px}.red{color:#dc0000}.darkred{color:#A20000}.orange{color:#f59500}.blue{color:#1479c6}.green{color:#a2bb31}.gray{color:#757575}.black{color:#212121}.white{color:white}";
4
4
 
5
- const TttxIcon = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
- constructor() {
7
- super();
8
- this.__registerHost();
9
- this.__attachShadow();
10
- this.icon = undefined;
11
- this.color = 'grey';
12
- }
13
- render() {
14
- return (h(Host, null, h("span", { class: `material-symbols-rounded ${this.color ? this.color : ''}` }, this.icon)));
15
- }
16
- static get style() { return tttxIconCss; }
17
- }, [1, "tttx-icon", {
18
- "icon": [1],
19
- "color": [1]
20
- }]);
21
- function defineCustomElement() {
22
- if (typeof customElements === "undefined") {
23
- return;
24
- }
25
- const components = ["tttx-icon"];
26
- components.forEach(tagName => { switch (tagName) {
27
- case "tttx-icon":
28
- if (!customElements.get(tagName)) {
29
- customElements.define(tagName, TttxIcon);
30
- }
31
- break;
32
- } });
5
+ const TttxIcon = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
+ constructor() {
7
+ super();
8
+ this.__registerHost();
9
+ this.__attachShadow();
10
+ this.icon = undefined;
11
+ this.color = 'grey';
12
+ }
13
+ render() {
14
+ return (h(Host, null, h("span", { class: `material-symbols-rounded ${this.color ? this.color : ''}` }, this.icon)));
15
+ }
16
+ static get style() { return tttxIconCss; }
17
+ }, [1, "tttx-icon", {
18
+ "icon": [1],
19
+ "color": [1]
20
+ }]);
21
+ function defineCustomElement() {
22
+ if (typeof customElements === "undefined") {
23
+ return;
24
+ }
25
+ const components = ["tttx-icon"];
26
+ components.forEach(tagName => { switch (tagName) {
27
+ case "tttx-icon":
28
+ if (!customElements.get(tagName)) {
29
+ customElements.define(tagName, TttxIcon);
30
+ }
31
+ break;
32
+ } });
33
33
  }
34
34
 
35
35
  export { TttxIcon as T, defineCustomElement as d };
@@ -2,82 +2,82 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
2
2
 
3
3
  const tttxKeyvalueBlockCss = ":host{display:block}dl{margin:0;padding:0;font-family:\"Roboto\", sans-serif;cursor:default}dt{font-weight:400;line-height:21px;font-size:16px}dt,dt.subTitle{color:#757575}dt.mainTitle{color:#212121}dt,dd{overflow-wrap:anywhere}dd{margin:0;font-weight:400;font-size:16px;color:#212121;line-height:21px;margin-bottom:18px}dl.horizontal{display:flex;flex-direction:row;width:100%}dl.horizontal div{flex-grow:1}@media (max-width: 769px){dl.horizontal{flex-wrap:wrap}dl.horizontal div{width:50%;max-width:50% !important}}@media (max-width: 600px){dl.horizontal div{width:100%;max-width:100% !important}}";
4
4
 
5
- const TttxKeyvalueBlock$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
- constructor() {
7
- super();
8
- this.__registerHost();
9
- this.__attachShadow();
10
- this.keyvalues = undefined;
11
- this.horizontal = undefined;
12
- }
13
- renderSingleElements(values) {
14
- const keys = Object.keys(values);
15
- const elements = [];
16
- const divSize = (100 / keys.length).toString() + '%';
17
- for (let i = 0; i < keys.length; i++) {
18
- if (this.horizontal) {
19
- elements.push(h("div", { style: { maxWidth: divSize } }, h("dt", null, keys[i]), h("dd", null, values[keys[i]])));
20
- }
21
- else {
22
- elements.push(h("dt", null, keys[i]));
23
- elements.push(h("dd", null, values[keys[i]]));
24
- }
25
- }
26
- return elements;
27
- }
28
- renderArrayElements(values) {
29
- const elements = [];
30
- const divSize = (100 / values.length).toString() + '%';
31
- for (let i = 0; i < values.length; i++) {
32
- const value = values[i];
33
- if (this.horizontal) {
34
- elements.push(h("div", { style: { maxWidth: divSize } }, h("dt", { class: 'mainTitle' }, value.title), h("dt", { class: 'subTitle' }, value.subTitle), h("dd", null, value.data)));
35
- }
36
- else {
37
- elements.push(h("dt", { class: 'mainTitle' }, value.title));
38
- elements.push(h("dt", { class: 'subTitle' }, value.subTitle));
39
- elements.push(h("dd", null, value.data));
40
- }
41
- }
42
- return elements;
43
- }
44
- render() {
45
- if (!this.keyvalues) {
46
- return;
47
- }
48
- let values;
49
- if (typeof this.keyvalues === 'string') {
50
- values = JSON.parse(this.keyvalues);
51
- }
52
- else {
53
- values = this.keyvalues;
54
- }
55
- let elements;
56
- if (Array.isArray(values)) {
57
- elements = this.renderArrayElements(values);
58
- }
59
- else {
60
- elements = this.renderSingleElements(values);
61
- }
62
- return (h(Host, null, h("dl", { class: this.horizontal ? 'horizontal' : null }, elements)));
63
- }
64
- static get style() { return tttxKeyvalueBlockCss; }
65
- }, [1, "tttx-keyvalue-block", {
66
- "keyvalues": [8],
67
- "horizontal": [4]
68
- }]);
69
- function defineCustomElement$1() {
70
- if (typeof customElements === "undefined") {
71
- return;
72
- }
73
- const components = ["tttx-keyvalue-block"];
74
- components.forEach(tagName => { switch (tagName) {
75
- case "tttx-keyvalue-block":
76
- if (!customElements.get(tagName)) {
77
- customElements.define(tagName, TttxKeyvalueBlock$1);
78
- }
79
- break;
80
- } });
5
+ const TttxKeyvalueBlock$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
+ constructor() {
7
+ super();
8
+ this.__registerHost();
9
+ this.__attachShadow();
10
+ this.keyvalues = undefined;
11
+ this.horizontal = undefined;
12
+ }
13
+ renderSingleElements(values) {
14
+ const keys = Object.keys(values);
15
+ const elements = [];
16
+ const divSize = (100 / keys.length).toString() + '%';
17
+ for (let i = 0; i < keys.length; i++) {
18
+ if (this.horizontal) {
19
+ elements.push(h("div", { style: { maxWidth: divSize } }, h("dt", null, keys[i]), h("dd", null, values[keys[i]])));
20
+ }
21
+ else {
22
+ elements.push(h("dt", null, keys[i]));
23
+ elements.push(h("dd", null, values[keys[i]]));
24
+ }
25
+ }
26
+ return elements;
27
+ }
28
+ renderArrayElements(values) {
29
+ const elements = [];
30
+ const divSize = (100 / values.length).toString() + '%';
31
+ for (let i = 0; i < values.length; i++) {
32
+ const value = values[i];
33
+ if (this.horizontal) {
34
+ elements.push(h("div", { style: { maxWidth: divSize } }, h("dt", { class: 'mainTitle' }, value.title), h("dt", { class: 'subTitle' }, value.subTitle), h("dd", null, value.data)));
35
+ }
36
+ else {
37
+ elements.push(h("dt", { class: 'mainTitle' }, value.title));
38
+ elements.push(h("dt", { class: 'subTitle' }, value.subTitle));
39
+ elements.push(h("dd", null, value.data));
40
+ }
41
+ }
42
+ return elements;
43
+ }
44
+ render() {
45
+ if (!this.keyvalues) {
46
+ return;
47
+ }
48
+ let values;
49
+ if (typeof this.keyvalues === 'string') {
50
+ values = JSON.parse(this.keyvalues);
51
+ }
52
+ else {
53
+ values = this.keyvalues;
54
+ }
55
+ let elements;
56
+ if (Array.isArray(values)) {
57
+ elements = this.renderArrayElements(values);
58
+ }
59
+ else {
60
+ elements = this.renderSingleElements(values);
61
+ }
62
+ return (h(Host, null, h("dl", { class: this.horizontal ? 'horizontal' : null }, elements)));
63
+ }
64
+ static get style() { return tttxKeyvalueBlockCss; }
65
+ }, [1, "tttx-keyvalue-block", {
66
+ "keyvalues": [8],
67
+ "horizontal": [4]
68
+ }]);
69
+ function defineCustomElement$1() {
70
+ if (typeof customElements === "undefined") {
71
+ return;
72
+ }
73
+ const components = ["tttx-keyvalue-block"];
74
+ components.forEach(tagName => { switch (tagName) {
75
+ case "tttx-keyvalue-block":
76
+ if (!customElements.get(tagName)) {
77
+ customElements.define(tagName, TttxKeyvalueBlock$1);
78
+ }
79
+ break;
80
+ } });
81
81
  }
82
82
 
83
83
  const TttxKeyvalueBlock = TttxKeyvalueBlock$1;
@@ -1650,75 +1650,75 @@ var purify = createCommonjsModule(function (module, exports) {
1650
1650
  //# sourceMappingURL=purify.js.map
1651
1651
  });
1652
1652
 
1653
- function tagRegXp(tagName) {
1654
- return RegExp(/^tttx-/).exec(tagName);
1655
- }
1656
- function attributeNameCheck() {
1657
- return true;
1658
- }
1659
- const domSanitiserOptions = {
1660
- CUSTOM_ELEMENT_HANDLING: {
1661
- tagNameCheck: tagRegXp,
1662
- attributeNameCheck: attributeNameCheck,
1663
- allowCustomizedBuiltInElements: false, // customized built-ins are not allowed
1664
- }
1653
+ function tagRegXp(tagName) {
1654
+ return RegExp(/^tttx-/).exec(tagName);
1655
+ }
1656
+ function attributeNameCheck() {
1657
+ return true;
1658
+ }
1659
+ const domSanitiserOptions = {
1660
+ CUSTOM_ELEMENT_HANDLING: {
1661
+ tagNameCheck: tagRegXp,
1662
+ attributeNameCheck: attributeNameCheck,
1663
+ allowCustomizedBuiltInElements: false, // customized built-ins are not allowed
1664
+ }
1665
1665
  };
1666
1666
 
1667
1667
  const tttxListCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.material-symbols-rounded{font-family:\"Material Symbols Rounded\", sans-serif;font-weight:400;font-style:normal;font-size:24px;line-height:1;letter-spacing:normal;text-transform:none;display:inline-block;white-space:nowrap;word-wrap:normal;direction:ltr;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;color:#9e9e9e}:host{display:flex;flex-direction:column}.list{margin:0;padding:0}.item{list-style:none;margin:0;padding:8px;border-bottom:1px solid #d5d5d5;min-height:36px;display:flex;align-items:center}.item:first-of-type{border-top:1px solid #d5d5d5}.item.clickable:hover{cursor:pointer}.item.clickable:active{background-color:#e6e6e6}.align-right{margin-left:auto}.item-content{display:flex;align-items:center}";
1668
1668
 
1669
- const TttxList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1670
- constructor() {
1671
- super();
1672
- this.__registerHost();
1673
- this.__attachShadow();
1674
- this.rowClick = createEvent(this, "listRowClick", 7);
1675
- this.data = undefined;
1676
- this.name = undefined;
1677
- }
1678
- onRowClickHandler(item) {
1679
- if (!item.clickable || !item.rowData)
1680
- return;
1681
- this.rowClick.emit({ name: this.name, data: item.rowData });
1682
- }
1683
- renderListItem(item) {
1684
- const cleanHTML = purify.sanitize(item.element, domSanitiserOptions);
1685
- return (h("li", { class: `item ${item.clickable ? 'clickable' : ''}`, onClick: () => {
1686
- this.onRowClickHandler(item);
1687
- } }, item.element && h("span", { class: "item-content", innerHTML: cleanHTML }), item.icon && h("tttx-icon", { class: "align-right ", icon: item.icon })));
1688
- }
1689
- render() {
1690
- if (!this.data)
1691
- return;
1692
- if (typeof this.data === 'string') {
1693
- this._data = JSON.parse(this.data);
1694
- }
1695
- else {
1696
- this._data = this.data;
1697
- }
1698
- return h("ul", { class: "list" }, this._data.map((item) => this.renderListItem(item)));
1699
- }
1700
- static get style() { return tttxListCss; }
1701
- }, [1, "tttx-list", {
1702
- "data": [1025],
1703
- "name": [1]
1704
- }]);
1705
- function defineCustomElement$1() {
1706
- if (typeof customElements === "undefined") {
1707
- return;
1708
- }
1709
- const components = ["tttx-list", "tttx-icon"];
1710
- components.forEach(tagName => { switch (tagName) {
1711
- case "tttx-list":
1712
- if (!customElements.get(tagName)) {
1713
- customElements.define(tagName, TttxList$1);
1714
- }
1715
- break;
1716
- case "tttx-icon":
1717
- if (!customElements.get(tagName)) {
1718
- defineCustomElement$2();
1719
- }
1720
- break;
1721
- } });
1669
+ const TttxList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
1670
+ constructor() {
1671
+ super();
1672
+ this.__registerHost();
1673
+ this.__attachShadow();
1674
+ this.rowClick = createEvent(this, "listRowClick", 7);
1675
+ this.data = undefined;
1676
+ this.name = undefined;
1677
+ }
1678
+ onRowClickHandler(item) {
1679
+ if (!item.clickable || !item.rowData)
1680
+ return;
1681
+ this.rowClick.emit({ name: this.name, data: item.rowData });
1682
+ }
1683
+ renderListItem(item) {
1684
+ const cleanHTML = purify.sanitize(item.element, domSanitiserOptions);
1685
+ return (h("li", { class: `item ${item.clickable ? 'clickable' : ''}`, onClick: () => {
1686
+ this.onRowClickHandler(item);
1687
+ } }, item.element && h("span", { class: "item-content", innerHTML: cleanHTML }), item.icon && h("tttx-icon", { class: "align-right ", icon: item.icon })));
1688
+ }
1689
+ render() {
1690
+ if (!this.data)
1691
+ return;
1692
+ if (typeof this.data === 'string') {
1693
+ this._data = JSON.parse(this.data);
1694
+ }
1695
+ else {
1696
+ this._data = this.data;
1697
+ }
1698
+ return h("ul", { class: "list" }, this._data.map((item) => this.renderListItem(item)));
1699
+ }
1700
+ static get style() { return tttxListCss; }
1701
+ }, [1, "tttx-list", {
1702
+ "data": [1025],
1703
+ "name": [1]
1704
+ }]);
1705
+ function defineCustomElement$1() {
1706
+ if (typeof customElements === "undefined") {
1707
+ return;
1708
+ }
1709
+ const components = ["tttx-list", "tttx-icon"];
1710
+ components.forEach(tagName => { switch (tagName) {
1711
+ case "tttx-list":
1712
+ if (!customElements.get(tagName)) {
1713
+ customElements.define(tagName, TttxList$1);
1714
+ }
1715
+ break;
1716
+ case "tttx-icon":
1717
+ if (!customElements.get(tagName)) {
1718
+ defineCustomElement$2();
1719
+ }
1720
+ break;
1721
+ } });
1722
1722
  }
1723
1723
 
1724
1724
  const TttxList = TttxList$1;
@@ -2,39 +2,39 @@ import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/clien
2
2
 
3
3
  const tttxLoadingSpinnerCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.spinner-container{position:absolute}.loading-box{display:flex;align-items:center;justify-content:center}.loading-text{font-size:16px;font-weight:400;padding-top:10px;text-align:center}.spinner{border:solid #1479c6;border-bottom-color:#d5d5d5;border-radius:50%;position:relative;box-sizing:border-box;animation:rotation 1s linear infinite}.spinner.small{height:20px;width:20px;border-width:4px}.spinner.large{height:60px;width:60px;border-width:8px}@keyframes rotation{0%{transform:rotate(0deg)}100%{transform:rotate(360deg)}}";
4
4
 
5
- const TttxLoadingSpinner$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
- constructor() {
7
- super();
8
- this.__registerHost();
9
- this.__attachShadow();
10
- this.loadingMessage = undefined;
11
- this.size = 'large';
12
- }
13
- renderLoadingMessage() {
14
- if (!this.loadingMessage)
15
- return '';
16
- return h("div", { class: "loading-text" }, "Loading, please wait...");
17
- }
18
- render() {
19
- return (h("div", { class: "spinner-container" }, h("div", { class: "loading-box" }, h("span", { class: `spinner ${this.size}` })), this.renderLoadingMessage()));
20
- }
21
- static get style() { return tttxLoadingSpinnerCss; }
22
- }, [1, "tttx-loading-spinner", {
23
- "loadingMessage": [1028, "loading-message"],
24
- "size": [1025]
25
- }]);
26
- function defineCustomElement$1() {
27
- if (typeof customElements === "undefined") {
28
- return;
29
- }
30
- const components = ["tttx-loading-spinner"];
31
- components.forEach(tagName => { switch (tagName) {
32
- case "tttx-loading-spinner":
33
- if (!customElements.get(tagName)) {
34
- customElements.define(tagName, TttxLoadingSpinner$1);
35
- }
36
- break;
37
- } });
5
+ const TttxLoadingSpinner$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
+ constructor() {
7
+ super();
8
+ this.__registerHost();
9
+ this.__attachShadow();
10
+ this.loadingMessage = undefined;
11
+ this.size = 'large';
12
+ }
13
+ renderLoadingMessage() {
14
+ if (!this.loadingMessage)
15
+ return '';
16
+ return h("div", { class: "loading-text" }, "Loading, please wait...");
17
+ }
18
+ render() {
19
+ return (h("div", { class: "spinner-container" }, h("div", { class: "loading-box" }, h("span", { class: `spinner ${this.size}` })), this.renderLoadingMessage()));
20
+ }
21
+ static get style() { return tttxLoadingSpinnerCss; }
22
+ }, [1, "tttx-loading-spinner", {
23
+ "loadingMessage": [1028, "loading-message"],
24
+ "size": [1025]
25
+ }]);
26
+ function defineCustomElement$1() {
27
+ if (typeof customElements === "undefined") {
28
+ return;
29
+ }
30
+ const components = ["tttx-loading-spinner"];
31
+ components.forEach(tagName => { switch (tagName) {
32
+ case "tttx-loading-spinner":
33
+ if (!customElements.get(tagName)) {
34
+ customElements.define(tagName, TttxLoadingSpinner$1);
35
+ }
36
+ break;
37
+ } });
38
38
  }
39
39
 
40
40
  const TttxLoadingSpinner = TttxLoadingSpinner$1;