@3t-transform/threeteeui 0.1.37 → 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 (155) hide show
  1. package/dist/cjs/app-globals-3a1e7e63.js +5 -0
  2. package/dist/cjs/css-shim-211819bc.js +6 -0
  3. package/dist/cjs/dom-9deb26c8.js +75 -0
  4. package/dist/cjs/domsanitiser.options-277161b9.js +1667 -0
  5. package/dist/cjs/domsanitiser.options-3f1501b5.js +1697 -0
  6. package/dist/cjs/index-39a867c5.js +3298 -0
  7. package/dist/cjs/{index-457ca775.js → index-76f14107.js} +2 -88
  8. package/dist/cjs/loader.cjs.js +18 -3
  9. package/dist/cjs/shadow-css-bf3843d2.js +389 -0
  10. package/dist/cjs/tttx-button.cjs.entry.js +25 -25
  11. package/dist/cjs/tttx-filter.cjs.entry.js +159 -159
  12. package/dist/cjs/tttx-form.cjs.entry.js +459 -373
  13. package/dist/cjs/tttx-icon.cjs.entry.js +11 -11
  14. package/dist/cjs/tttx-keyvalue-block.cjs.entry.js +59 -59
  15. package/dist/cjs/tttx-list.cjs.entry.js +32 -1694
  16. package/dist/cjs/tttx-loading-spinner.cjs.entry.js +16 -16
  17. package/dist/cjs/tttx-sorter.cjs.entry.js +102 -102
  18. package/dist/cjs/tttx-standalone-input.cjs.entry.js +79 -79
  19. package/dist/cjs/tttx-toolbar.cjs.entry.js +10 -10
  20. package/dist/cjs/tttx.cjs.js +116 -8
  21. package/dist/collection/collection-manifest.json +2 -2
  22. package/dist/collection/components/atoms/tttx-button/tttx-button.css +4 -4
  23. package/dist/collection/components/atoms/tttx-button/tttx-button.js +110 -110
  24. package/dist/collection/components/atoms/tttx-button/tttx-button.stories.js +14 -14
  25. package/dist/collection/components/atoms/tttx-icon/tttx-icon.js +62 -62
  26. package/dist/collection/components/atoms/tttx-icon/tttx-icon.stories.js +22 -22
  27. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.js +109 -109
  28. package/dist/collection/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.stories.js +38 -38
  29. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.js +67 -67
  30. package/dist/collection/components/atoms/tttx-loading-spinner/tttx-loading-spinner.stories.js +17 -17
  31. package/dist/collection/components/molecules/tttx-filter/tttx-filter.js +334 -334
  32. package/dist/collection/components/molecules/tttx-filter/tttx-filter.stories.js +62 -62
  33. package/dist/collection/components/molecules/tttx-form/lib/setErrorState.js +37 -37
  34. package/dist/collection/components/molecules/tttx-form/lib/validityCheck.js +61 -58
  35. package/dist/collection/components/molecules/tttx-form/tttx-form.css +98 -2
  36. package/dist/collection/components/molecules/tttx-form/tttx-form.js +479 -393
  37. package/dist/collection/components/molecules/tttx-form/tttx-form.stories.js +274 -218
  38. package/dist/collection/components/molecules/tttx-list/tttx-list.js +105 -105
  39. package/dist/collection/components/molecules/tttx-list/tttx-list.stories.js +43 -43
  40. package/dist/collection/components/molecules/tttx-sorter/tttx-sorter.js +224 -224
  41. package/dist/collection/components/molecules/tttx-sorter/tttx-sorter.stories.js +42 -42
  42. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.js +759 -759
  43. package/dist/collection/components/molecules/tttx-standalone-input/tttx-standalone-input.stories.js +172 -172
  44. package/dist/collection/components/molecules/tttx-toolbar/tttx-toolbar.js +44 -44
  45. package/dist/collection/components/molecules/tttx-toolbar/tttx-toolbar.stories.js +14 -14
  46. package/dist/collection/components/palette.stories.js +7 -7
  47. package/dist/collection/docs/gettingstarted-developer.stories.js +5 -5
  48. package/dist/collection/icons.js +2838 -2838
  49. package/dist/collection/index.js +1 -1
  50. package/dist/collection/shared/domsanitiser.options.js +14 -14
  51. package/dist/components/domsanitiser.options.js +1694 -0
  52. package/dist/components/index.d.ts +0 -9
  53. package/dist/components/index.js +5 -1
  54. package/dist/components/tttx-button.js +49 -49
  55. package/dist/components/tttx-filter.js +191 -191
  56. package/dist/components/tttx-form.js +477 -391
  57. package/dist/components/tttx-icon2.js +28 -28
  58. package/dist/components/tttx-keyvalue-block.js +76 -76
  59. package/dist/components/tttx-list.js +54 -1716
  60. package/dist/components/tttx-loading-spinner.js +33 -33
  61. package/dist/components/tttx-sorter.js +130 -130
  62. package/dist/components/tttx-standalone-input.js +130 -130
  63. package/dist/components/tttx-toolbar.js +26 -26
  64. package/dist/esm/app-globals-0f993ce5.js +3 -0
  65. package/dist/esm/css-shim-9d54a2f2.js +4 -0
  66. package/dist/esm/dom-6be6f662.js +73 -0
  67. package/dist/esm/domsanitiser.options-6f2878c8.js +1694 -0
  68. package/dist/esm/domsanitiser.options-cc420431.js +1664 -0
  69. package/dist/esm/{index-d784fb3e.js → index-9cde46a5.js} +3 -88
  70. package/dist/esm/index-e3e64631.js +3262 -0
  71. package/dist/esm/loader.js +18 -3
  72. package/dist/esm/polyfills/core-js.js +0 -0
  73. package/dist/esm/polyfills/css-shim.js +1 -1
  74. package/dist/esm/polyfills/dom.js +0 -0
  75. package/dist/esm/polyfills/es5-html-element.js +0 -0
  76. package/dist/esm/polyfills/index.js +0 -0
  77. package/dist/esm/polyfills/system.js +0 -0
  78. package/dist/esm/shadow-css-ed4599f8.js +387 -0
  79. package/dist/esm/tttx-button.entry.js +25 -25
  80. package/dist/esm/tttx-filter.entry.js +159 -159
  81. package/dist/esm/tttx-form.entry.js +459 -373
  82. package/dist/esm/tttx-icon.entry.js +11 -11
  83. package/dist/esm/tttx-keyvalue-block.entry.js +59 -59
  84. package/dist/esm/tttx-list.entry.js +32 -1694
  85. package/dist/esm/tttx-loading-spinner.entry.js +16 -16
  86. package/dist/esm/tttx-sorter.entry.js +102 -102
  87. package/dist/esm/tttx-standalone-input.entry.js +79 -79
  88. package/dist/esm/tttx-toolbar.entry.js +10 -10
  89. package/dist/esm/tttx.js +116 -5
  90. package/dist/tttx/app-globals-0f993ce5.js +3 -0
  91. package/dist/tttx/css-shim-9d54a2f2.js +4 -0
  92. package/dist/tttx/dom-6be6f662.js +73 -0
  93. package/dist/tttx/domsanitiser.options-6f2878c8.js +1694 -0
  94. package/dist/tttx/index-e3e64631.js +3262 -0
  95. package/dist/tttx/index.esm.js +1 -0
  96. package/dist/tttx/{p-400868f1.entry.js → p-3b1be372.entry.js} +1 -1
  97. package/dist/tttx/p-4e637d50.entry.js +1 -0
  98. package/dist/tttx/{p-563605b2.entry.js → p-561224f5.entry.js} +1 -1
  99. package/dist/tttx/{p-b720c4ad.entry.js → p-9f1e9cc1.entry.js} +1 -1
  100. package/dist/tttx/{p-798a098a.entry.js → p-aef96333.entry.js} +1 -1
  101. package/dist/tttx/p-b4290a5b.js +3 -0
  102. package/dist/tttx/p-bd1edaed.entry.js +1 -0
  103. package/dist/tttx/p-d0ff9ad0.entry.js +1 -0
  104. package/dist/tttx/{p-cac26a1b.entry.js → p-d2f1aa8e.entry.js} +1 -1
  105. package/dist/tttx/p-db059a69.js +2 -0
  106. package/dist/tttx/p-dc2a37b0.entry.js +1 -0
  107. package/dist/tttx/{p-ab6ce9f6.entry.js → p-e53c7f9d.entry.js} +1 -1
  108. package/dist/tttx/{p-92cade7f.entry.js → p-f885f17a.entry.js} +1 -1
  109. package/dist/tttx/shadow-css-ed4599f8.js +387 -0
  110. package/dist/tttx/tttx-button.entry.js +30 -0
  111. package/dist/tttx/tttx-filter.entry.js +165 -0
  112. package/dist/tttx/tttx-form.entry.js +468 -0
  113. package/dist/tttx/tttx-icon.entry.js +17 -0
  114. package/dist/tttx/tttx-keyvalue-block.entry.js +65 -0
  115. package/dist/tttx/tttx-list.entry.js +38 -0
  116. package/dist/tttx/tttx-loading-spinner.entry.js +22 -0
  117. package/dist/tttx/tttx-sorter.entry.js +108 -0
  118. package/dist/tttx/tttx-standalone-input.entry.js +85 -0
  119. package/dist/tttx/tttx-toolbar.entry.js +16 -0
  120. package/dist/tttx/tttx.esm.js +129 -1
  121. package/dist/types/components/atoms/tttx-button/tttx-button.d.ts +10 -10
  122. package/dist/types/components/atoms/tttx-button/tttx-button.stories.d.ts +10 -10
  123. package/dist/types/components/atoms/tttx-icon/tttx-icon.d.ts +5 -5
  124. package/dist/types/components/atoms/tttx-icon/tttx-icon.stories.d.ts +20 -20
  125. package/dist/types/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.d.ts +7 -7
  126. package/dist/types/components/atoms/tttx-keyvalue-block/tttx-keyvalue-block.stories.d.ts +9 -9
  127. package/dist/types/components/atoms/tttx-loading-spinner/tttx-loading-spinner.d.ts +6 -6
  128. package/dist/types/components/atoms/tttx-loading-spinner/tttx-loading-spinner.stories.d.ts +17 -17
  129. package/dist/types/components/molecules/tttx-filter/tttx-filter.d.ts +39 -39
  130. package/dist/types/components/molecules/tttx-filter/tttx-filter.stories.d.ts +68 -68
  131. package/dist/types/components/molecules/tttx-form/lib/setErrorState.d.ts +13 -13
  132. package/dist/types/components/molecules/tttx-form/lib/validityCheck.d.ts +17 -17
  133. package/dist/types/components/molecules/tttx-form/tttx-form.d.ts +133 -111
  134. package/dist/types/components/molecules/tttx-form/tttx-form.stories.d.ts +278 -13
  135. package/dist/types/components/molecules/tttx-list/tttx-list.d.ts +11 -11
  136. package/dist/types/components/molecules/tttx-list/tttx-list.stories.d.ts +14 -14
  137. package/dist/types/components/molecules/tttx-sorter/tttx-sorter.d.ts +19 -19
  138. package/dist/types/components/molecules/tttx-sorter/tttx-sorter.stories.d.ts +30 -30
  139. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.d.ts +69 -69
  140. package/dist/types/components/molecules/tttx-standalone-input/tttx-standalone-input.stories.d.ts +143 -143
  141. package/dist/types/components/molecules/tttx-toolbar/tttx-toolbar.d.ts +4 -4
  142. package/dist/types/components/molecules/tttx-toolbar/tttx-toolbar.stories.d.ts +13 -13
  143. package/dist/types/components/palette.stories.d.ts +6 -6
  144. package/dist/types/components.d.ts +1 -1
  145. package/dist/types/docs/gettingstarted-developer.stories.d.ts +5 -5
  146. package/dist/types/icons.d.ts +2 -2
  147. package/dist/types/index.d.ts +1 -1
  148. package/dist/types/shared/domsanitiser.options.d.ts +10 -10
  149. package/dist/types/stencil-public-runtime.d.ts +3 -59
  150. package/loader/index.d.ts +0 -9
  151. package/package.json +1 -1
  152. package/dist/tttx/p-0ebffdfc.js +0 -2
  153. package/dist/tttx/p-72e7f7dd.entry.js +0 -3
  154. package/dist/tttx/p-c4162029.entry.js +0 -1
  155. package/dist/tttx/p-eb126fd0.entry.js +0 -1
@@ -1,22 +1,22 @@
1
- import { r as registerInstance, h } from './index-d784fb3e.js';
1
+ import { r as registerInstance, h } from './index-e3e64631.js';
2
2
 
3
3
  const tttxLoadingSpinnerCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.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 = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.loadingMessage = undefined;
9
- this.size = 'large';
10
- }
11
- renderLoadingMessage() {
12
- if (!this.loadingMessage)
13
- return '';
14
- return h("div", { class: "loading-text" }, "Loading, please wait...");
15
- }
16
- render() {
17
- return (h("div", null, h("div", { class: "loading-box" }, h("span", { class: `spinner ${this.size}` })), this.renderLoadingMessage()));
18
- }
19
- };
5
+ const TttxLoadingSpinner = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.loadingMessage = undefined;
9
+ this.size = 'large';
10
+ }
11
+ renderLoadingMessage() {
12
+ if (!this.loadingMessage)
13
+ return '';
14
+ return h("div", { class: "loading-text" }, "Loading, please wait...");
15
+ }
16
+ render() {
17
+ return (h("div", null, h("div", { class: "loading-box" }, h("span", { class: `spinner ${this.size}` })), this.renderLoadingMessage()));
18
+ }
19
+ };
20
20
  TttxLoadingSpinner.style = tttxLoadingSpinnerCss;
21
21
 
22
22
  export { TttxLoadingSpinner as tttx_loading_spinner };
@@ -1,108 +1,108 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-d784fb3e.js';
1
+ import { r as registerInstance, f as createEvent, h, e as Host, g as getElement } from './index-e3e64631.js';
2
2
 
3
3
  const tttxSorterCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.sorter-container{display:flex;flex-direction:row;position:relative;border:1px solid #d5d5d5;border-radius:4px;font-weight:400;box-sizing:border-box;height:36px}@media (max-width: 475px){.sorter-container{width:68px}}.sorter-container .arrow-toggle-button{display:inline-flex;justify-content:center;align-items:center;flex-direction:column;background-color:white;border:none;border-bottom-left-radius:4px;border-top-left-radius:4px}@media (max-width: 475px){.sorter-container .arrow-toggle-button{padding-right:0px;padding-left:8px}}.sorter-container .arrow-toggle-button .hydrated{display:flex;justify-content:center;align-items:center}.sorter-container .arrow-toggle-button span{display:block;margin:auto;line-height:16px}.sorter-container .arrow-toggle-button .material-symbols-rounded{color:#212121}.sorter-container .dropdown-selector{display:inline-flex;position:relative;flex-grow:1}.sorter-container .dropdown-selector .dropdown-selector-button{display:inline-flex;flex-direction:row;gap:4px;padding-right:4px;align-items:center;color:#212121;width:100%}@media (max-width: 475px){.sorter-container .dropdown-selector .dropdown-selector-button .dropdown-selector-text{display:none}}.sorter-container .dropdown-selector .dropdown-selector-chevron{display:inline-flex;margin-left:auto;right:0;top:0;flex-direction:row;align-items:center;height:36px}.sorter-container .dropdown-selector .dropdown-selector-chevron .hydrated{height:24px}@media (max-width: 475px){.sorter-container .dropdown-selector .dropdown-selector-chevron{padding-right:2px}}.sorter-container .dropdown-options-list{position:absolute;top:36px;left:0;z-index:1;width:100%;line-height:21px;font-size:16px;border-radius:4px;padding-top:8px;padding-bottom:7px;box-shadow:0px 1px 5px #1111114D;box-sizing:border-box;background-color:white}@media (max-width: 475px){.sorter-container .dropdown-options-list{width:220px;padding-top:8px}}.sorter-container .dropdown-options-list .dropdown-option{padding:8px 16px;font-size:16px;line-height:21px}.sorter-container .dropdown-options-list .dropdown-option:hover,.sorter-container .dropdown-options-list .dropdown-option:focus{background-color:#e7f1f9}.sorter-container.--expanded{border-color:#1579c6}@media (max-width: 475px){.sorter-container.--expanded{border:none}}";
4
4
 
5
- const TttxSorter = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.sorterChangeEvent = createEvent(this, "sorterChangeEvent", 7);
9
- this.sorterKey = undefined;
10
- this.defaultSortDirection = 'descending';
11
- this.fieldOptionsData = null;
12
- this.defaultOption = '';
13
- this.selectedField = this.defaultOption;
14
- this.sortDirection = this.defaultSortDirection;
15
- this.dropdownExpand = false;
16
- this.dropdownOptions = undefined;
17
- }
18
- emitSortEvent() {
19
- this.sorterChangeEvent.emit({
20
- sorterDirection: this.sortDirection,
21
- sorterKey: this.sorterKey,
22
- sortField: this.selectedField,
23
- });
24
- }
25
- onSortToggleClick(event) {
26
- event.preventDefault();
27
- if (this.sortDirection == 'ascending') {
28
- this.sortDirection = 'descending';
29
- }
30
- else {
31
- this.sortDirection = 'ascending';
32
- }
33
- this.emitSortEvent();
34
- }
35
- onDropdownClicked() {
36
- this.dropdownExpand = !this.dropdownExpand;
37
- }
38
- onDropdownSelected(event) {
39
- this.dropdownExpand = false;
40
- const target = event.target;
41
- this.selectedField = target.innerHTML;
42
- this.emitSortEvent();
43
- }
44
- // getOptionsList() {
45
- // return this.el.shadowRoot.querySelectorAll('.dropdown-option');
46
- // }
47
- // /* istanbul ignore next */
48
- // @Listen('keyup')
49
- // handleKeyDown(ev: KeyboardEvent) {
50
- // const keyboardEventValue = ev.key;
51
- // if (document.activeElement.id != `sorter__${this.sorterKey}`) return;
52
- // switch (keyboardEventValue) {
53
- // case 'Enter':
54
- // if (this._focussedElementIndex > -1) {
55
- // const options = this.el.shadowRoot.querySelectorAll('.dropdown-option');
56
- // this.selectedField = options[this._focussedElementIndex].innerHTML;
57
- // this.emitSortEvent();
58
- // }
59
- // this.dropdownExpand = false;
60
- // break;
61
- // case 'Escape':
62
- // this.dropdownExpand = false;
63
- // break;
64
- // case 'ArrowDown':
65
- // this.dropdownExpand = true;
66
- // if (this._focussedElementIndex > -1) {
67
- // const options = this.getOptionsList();
68
- // const currentOption = options[this._focussedElementIndex] as HTMLElement;
69
- // currentOption.blur();
70
- // options[this._focussedElementIndex].focus();
71
- // this._focussedElementIndex + 1 < options.length ? this._focussedElementIndex++ : (this._focussedElementIndex = 0);
72
- // } else {
73
- // this._focussedElementIndex++;
74
- // }
75
- // break;
76
- // case 'ArrowUp':
77
- // this.dropdownExpand = true;
78
- // if (this._focussedElementIndex == -1) {
79
- // const options = this.getOptionsList();
80
- // this._focussedElementIndex = options.length - 1;
81
- // } else {
82
- // const options = this.getOptionsList();
83
- // const currentOption = options[this._focussedElementIndex] as HTMLElement;
84
- // currentOption.blur();
85
- // this._focussedElementIndex > 0 ? this._focussedElementIndex-- : (this._focussedElementIndex = options.length - 1);
86
- // options[this._focussedElementIndex].focus();
87
- // }
88
- // break;
89
- // }
90
- // }
91
- render() {
92
- const parsedFieldOptionsData = typeof this.fieldOptionsData === 'string' ? JSON.parse(this.fieldOptionsData) : this.fieldOptionsData;
93
- if (!this.fieldOptionsData)
94
- return;
95
- const arrowIcon = this.sortDirection == 'ascending' ? 'arrow_upward' : 'arrow_downward';
96
- const chevronIcon = this.dropdownExpand ? 'expand_less' : 'expand_more';
97
- const selectedOption = this.selectedField;
98
- const dropdownSelectorClassNameModifier = this.dropdownExpand ? '--expanded' : '';
99
- const sorterKey = `sorter__${this.sorterKey}`;
100
- return (h(Host, { id: sorterKey }, h("div", { tabindex: 0, class: `sorter-container ${dropdownSelectorClassNameModifier}` }, h("button", { class: "arrow-toggle-button", type: "button", onClick: this.onSortToggleClick.bind(this) }, h("tttx-icon", { icon: arrowIcon, color: "black" })), h("div", { class: "dropdown-selector", onClick: this.onDropdownClicked.bind(this) }, h("div", { class: "dropdown-selector-button" }, h("div", { class: "dropdown-selector-text" }, selectedOption), h("div", { class: "dropdown-selector-chevron" }, h("tttx-icon", { icon: chevronIcon, color: "black" })))), this.dropdownExpand && (h("div", { class: "dropdown-options-list" }, parsedFieldOptionsData.sorterOptions.map(option => {
101
- return (h("div", { class: "dropdown-option", tabIndex: -1, onClick: this.onDropdownSelected.bind(this), key: option.optionLabel }, option.optionLabel));
102
- }))))));
103
- }
104
- get el() { return getElement(this); }
105
- };
5
+ const TttxSorter = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.sorterChangeEvent = createEvent(this, "sorterChangeEvent", 7);
9
+ this.sorterKey = undefined;
10
+ this.defaultSortDirection = 'descending';
11
+ this.fieldOptionsData = null;
12
+ this.defaultOption = '';
13
+ this.selectedField = this.defaultOption;
14
+ this.sortDirection = this.defaultSortDirection;
15
+ this.dropdownExpand = false;
16
+ this.dropdownOptions = undefined;
17
+ }
18
+ emitSortEvent() {
19
+ this.sorterChangeEvent.emit({
20
+ sorterDirection: this.sortDirection,
21
+ sorterKey: this.sorterKey,
22
+ sortField: this.selectedField,
23
+ });
24
+ }
25
+ onSortToggleClick(event) {
26
+ event.preventDefault();
27
+ if (this.sortDirection == 'ascending') {
28
+ this.sortDirection = 'descending';
29
+ }
30
+ else {
31
+ this.sortDirection = 'ascending';
32
+ }
33
+ this.emitSortEvent();
34
+ }
35
+ onDropdownClicked() {
36
+ this.dropdownExpand = !this.dropdownExpand;
37
+ }
38
+ onDropdownSelected(event) {
39
+ this.dropdownExpand = false;
40
+ const target = event.target;
41
+ this.selectedField = target.innerHTML;
42
+ this.emitSortEvent();
43
+ }
44
+ // getOptionsList() {
45
+ // return this.el.shadowRoot.querySelectorAll('.dropdown-option');
46
+ // }
47
+ // /* istanbul ignore next */
48
+ // @Listen('keyup')
49
+ // handleKeyDown(ev: KeyboardEvent) {
50
+ // const keyboardEventValue = ev.key;
51
+ // if (document.activeElement.id != `sorter__${this.sorterKey}`) return;
52
+ // switch (keyboardEventValue) {
53
+ // case 'Enter':
54
+ // if (this._focussedElementIndex > -1) {
55
+ // const options = this.el.shadowRoot.querySelectorAll('.dropdown-option');
56
+ // this.selectedField = options[this._focussedElementIndex].innerHTML;
57
+ // this.emitSortEvent();
58
+ // }
59
+ // this.dropdownExpand = false;
60
+ // break;
61
+ // case 'Escape':
62
+ // this.dropdownExpand = false;
63
+ // break;
64
+ // case 'ArrowDown':
65
+ // this.dropdownExpand = true;
66
+ // if (this._focussedElementIndex > -1) {
67
+ // const options = this.getOptionsList();
68
+ // const currentOption = options[this._focussedElementIndex] as HTMLElement;
69
+ // currentOption.blur();
70
+ // options[this._focussedElementIndex].focus();
71
+ // this._focussedElementIndex + 1 < options.length ? this._focussedElementIndex++ : (this._focussedElementIndex = 0);
72
+ // } else {
73
+ // this._focussedElementIndex++;
74
+ // }
75
+ // break;
76
+ // case 'ArrowUp':
77
+ // this.dropdownExpand = true;
78
+ // if (this._focussedElementIndex == -1) {
79
+ // const options = this.getOptionsList();
80
+ // this._focussedElementIndex = options.length - 1;
81
+ // } else {
82
+ // const options = this.getOptionsList();
83
+ // const currentOption = options[this._focussedElementIndex] as HTMLElement;
84
+ // currentOption.blur();
85
+ // this._focussedElementIndex > 0 ? this._focussedElementIndex-- : (this._focussedElementIndex = options.length - 1);
86
+ // options[this._focussedElementIndex].focus();
87
+ // }
88
+ // break;
89
+ // }
90
+ // }
91
+ render() {
92
+ const parsedFieldOptionsData = typeof this.fieldOptionsData === 'string' ? JSON.parse(this.fieldOptionsData) : this.fieldOptionsData;
93
+ if (!this.fieldOptionsData)
94
+ return;
95
+ const arrowIcon = this.sortDirection == 'ascending' ? 'arrow_upward' : 'arrow_downward';
96
+ const chevronIcon = this.dropdownExpand ? 'expand_less' : 'expand_more';
97
+ const selectedOption = this.selectedField;
98
+ const dropdownSelectorClassNameModifier = this.dropdownExpand ? '--expanded' : '';
99
+ const sorterKey = `sorter__${this.sorterKey}`;
100
+ return (h(Host, { id: sorterKey }, h("div", { tabindex: 0, class: `sorter-container ${dropdownSelectorClassNameModifier}` }, h("button", { class: "arrow-toggle-button", type: "button", onClick: this.onSortToggleClick.bind(this) }, h("tttx-icon", { icon: arrowIcon, color: "black" })), h("div", { class: "dropdown-selector", onClick: this.onDropdownClicked.bind(this) }, h("div", { class: "dropdown-selector-button" }, h("div", { class: "dropdown-selector-text" }, selectedOption), h("div", { class: "dropdown-selector-chevron" }, h("tttx-icon", { icon: chevronIcon, color: "black" })))), this.dropdownExpand && (h("div", { class: "dropdown-options-list" }, parsedFieldOptionsData.sorterOptions.map(option => {
101
+ return (h("div", { class: "dropdown-option", tabIndex: -1, onClick: this.onDropdownSelected.bind(this), key: option.optionLabel }, option.optionLabel));
102
+ }))))));
103
+ }
104
+ get el() { return getElement(this); }
105
+ };
106
106
  TttxSorter.style = tttxSorterCss;
107
107
 
108
108
  export { TttxSorter as tttx_sorter };
@@ -1,85 +1,85 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-d784fb3e.js';
1
+ import { r as registerInstance, f as createEvent, h, e as Host } from './index-e3e64631.js';
2
2
 
3
3
  const tttxStandaloneInputCss = ".material-symbols-rounded.sc-tttx-standalone-input{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.material-symbols-rounded.sc-tttx-standalone-input{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}.material-symbols-rounded.sc-tttx-standalone-input{font-family:\"Material Symbols Rounded\", sans-serif;font-weight:normal;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}.icon-left.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input{flex-basis:24px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input,.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{font-size:24px;line-height:24px;text-align:center;display:block;width:24px;height:24px;margin-top:4px}.icon-left.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-left:4px}.icon-right.sc-tttx-standalone-input span.sc-tttx-standalone-input{margin-right:4px}.icon-right.sc-tttx-standalone-input{margin-top:5px}.icon-left.sc-tttx-standalone-input{margin-top:5px;margin-left:4px}.iconleft.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-left:4px}.iconright.sc-tttx-standalone-input .input.sc-tttx-standalone-input{padding-right:4px}.input-icon.sc-tttx-standalone-input{position:absolute;margin-top:9px;margin-left:4px}.errormsg.sc-tttx-standalone-input{display:flex;justify-content:center;align-items:center;float:left;margin-bottom:16px;box-sizing:border-box;background-color:transparent;height:26px;font-size:14px;line-height:16px;border-radius:none;z-index:2;color:#dc0000}.errormsg.sc-tttx-standalone-input .validationicon.sc-tttx-standalone-input{width:16px;height:16px;font-size:16px;line-height:19px;margin-right:4px;vertical-align:middle;color:#dc0000}.danger.sc-tttx-standalone-input{color:#dc0000}.optional.sc-tttx-standalone-input{color:#757575;font-weight:normal}label.inputBlock.sc-tttx-standalone-input{display:block;position:relative;line-height:21px}label.inputInline.sc-tttx-standalone-input{display:flex;white-space:nowrap;align-items:center}label.inputInline.sc-tttx-standalone-input .input-container.sc-tttx-standalone-input{margin:0 4px;width:100%;display:flex;align-items:center;gap:4px;position:relative}label.sc-tttx-standalone-input{font-weight:500;font-size:16px;line-height:19px;margin-bottom:16px}input.sc-tttx-standalone-input:not([type=submit]){font-family:\"Roboto\", serif;box-sizing:border-box;width:100%;height:36px;padding:0 16px;font-size:16px;line-height:19px;border:1px solid #d5d5d5;border-radius:4px;margin-top:4px}input[type=date].sc-tttx-standalone-input{background:white;display:block;min-width:calc(100% - 18px);line-height:37px}@media (max-width: 600px){input[type=date].sc-tttx-standalone-input{padding-top:6px}}input.invalid.sc-tttx-standalone-input:invalid,input.standalone.invalid.sc-tttx-standalone-input{border:1px solid #dc0000}.input-icon.sc-tttx-standalone-input~input.sc-tttx-standalone-input{padding:0 32px}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input{position:relative;font-size:14px;line-height:16px;font-weight:normal;width:100%;font-family:\"Roboto\", sans-serif;color:#dc0000;display:flex;align-content:center;align-items:center;justify-items:center;margin-top:4px}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input:not(.visible){display:none}input.sc-tttx-standalone-input~.errorBubble.sc-tttx-standalone-input span.sc-tttx-standalone-input{color:#dc0000;font-size:16px;margin-right:4px}input.invalid.sc-tttx-standalone-input:invalid~.errorBubble.sc-tttx-standalone-input{position:relative;font-size:14px;font-weight:normal;width:100%;font-family:\"Roboto\", sans-serif;color:#dc0000}input.sc-tttx-standalone-input:focus{border-color:#1479c6}input.sc-tttx-standalone-input:focus-visible{outline:none}.secondarylabel.sc-tttx-standalone-input{color:#757575;font-size:14px;line-height:16px;font-weight:normal;display:flex;margin-top:4px}label.inputBlock.readonly.sc-tttx-standalone-input{pointer-events:none;user-select:none;color:gray}input[readonly].sc-tttx-standalone-input{cursor:default;pointer-events:none;user-select:none;color:gray}.sc-tttx-standalone-input-h{display:block}.input-container.sc-tttx-standalone-input{position:relative}#icon-left.sc-tttx-standalone-input{position:absolute;left:8px;top:10px}#icon-left.sc-tttx-standalone-input~input.sc-tttx-standalone-input{padding-left:36px}#icon-right.sc-tttx-standalone-input{position:absolute;right:8px;top:10px}#icon-right.sc-tttx-standalone-input~input.sc-tttx-standalone-input{padding-right:36px}";
4
4
 
5
- const TttxInput = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.valueChanged = createEvent(this, "valueChanged", 7);
9
- this.focusChanged = createEvent(this, "focusChanged", 7);
10
- this.blurChanged = createEvent(this, "blurChanged", 7);
11
- this.invalidChanged = createEvent(this, "invalidChanged", 7);
12
- this.inputIconClick = createEvent(this, "inputIconClick", 7);
13
- this.leftIconClick = createEvent(this, "leftIconClick", 7);
14
- this.rightIconClick = createEvent(this, "rightIconClick", 7);
15
- this.label = undefined;
16
- this.secondarylabel = undefined;
17
- this.showerrormsg = undefined;
18
- this.showerrorbubble = true;
19
- this.errormsg = undefined;
20
- this.iconleft = undefined;
21
- this.iconleftcolor = 'grey';
22
- this.iconright = undefined;
23
- this.iconrightcolor = 'grey';
24
- this.inputicon = undefined;
25
- this.inputiconcolor = 'grey';
26
- this.inline = undefined;
27
- this.inputautocapitalize = undefined;
28
- this.inputautofocus = undefined;
29
- this.inputkeyhint = undefined;
30
- this.inputindex = undefined;
31
- this.inputtitle = undefined;
32
- this.autocomplete = undefined;
33
- this.checked = undefined;
34
- this.disabled = undefined;
35
- this.max = undefined;
36
- this.maxlength = undefined;
37
- this.min = undefined;
38
- this.minlength = undefined;
39
- this.name = undefined;
40
- this.pattern = undefined;
41
- this.placeholder = undefined;
42
- this.readonly = undefined;
43
- this.required = undefined;
44
- this.step = undefined;
45
- this.type = 'text';
46
- this.value = undefined;
47
- }
48
- handleChange(event) {
49
- const target = event.target;
50
- this.value = target.value;
51
- this.valueChanged.emit(target.value);
52
- }
53
- handleFocus(event) {
54
- const target = event.target;
55
- this.focusChanged.emit(target.value);
56
- }
57
- handleBlur(event) {
58
- const target = event.target;
59
- this.blurChanged.emit(target.value);
60
- }
61
- handleInvalid(event) {
62
- event.preventDefault();
63
- const target = event.target;
64
- this.invalidChanged.emit(target.value);
65
- }
66
- handleInputIconClick(event) {
67
- event.preventDefault();
68
- this.inputIconClick.emit();
69
- }
70
- handleLeftIconClick(event) {
71
- event.preventDefault();
72
- this.leftIconClick.emit();
73
- }
74
- handleRightIconClick(event) {
75
- event.preventDefault();
76
- this.rightIconClick.emit();
77
- }
78
- render() {
79
- const classNames = ['standalone', this.showerrormsg ? 'invalid' : ''].join(' ');
80
- return (h(Host, null, h("label", { class: this.inline ? 'inputInline' : 'inputBlock' }, this.label, !this.required ? h("span", { class: "optional" }, "\u00A0(optional)") : '', h("div", { class: "input-container" }, this.inputicon && (h("tttx-icon", { class: "input-icon", icon: this.inputicon, color: this.inputiconcolor, onClick: this.handleInputIconClick.bind(this) })), this.iconleft && (h("tttx-icon", { id: "icon-left", icon: this.iconleft, color: this.iconleftcolor, onClick: this.handleLeftIconClick.bind(this) })), this.iconright && (h("tttx-icon", { id: "icon-right", icon: this.iconright, color: this.iconrightcolor, onClick: this.handleRightIconClick.bind(this) })), h("input", { class: classNames, autocapitalize: this.inputautocapitalize, autofocus: this.inputautofocus, enterkeyhint: this.inputkeyhint, tabindex: this.inputindex, title: this.inputtitle, autocomplete: this.autocomplete, checked: this.checked, disabled: this.disabled, max: this.max, maxlength: this.maxlength, min: this.min, minlength: this.minlength, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readonly: this.readonly, required: this.required, step: this.step, type: this.type, value: this.value, onBlur: this.handleBlur.bind(this), onFocus: this.handleFocus.bind(this), onInput: this.handleChange.bind(this), onInvalid: this.handleInvalid.bind(this) }), this.secondarylabel && h("span", { class: "secondarylabel" }, this.secondarylabel), this.showerrorbubble && (h("span", { class: ['errorBubble', this.showerrormsg && this.errormsg ? 'visible' : ''].join(' ') }, h("span", { class: "material-symbols-rounded validationicon" }, "warning"), " ", this.errormsg))))));
81
- }
82
- };
5
+ const TttxInput = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.valueChanged = createEvent(this, "valueChanged", 7);
9
+ this.focusChanged = createEvent(this, "focusChanged", 7);
10
+ this.blurChanged = createEvent(this, "blurChanged", 7);
11
+ this.invalidChanged = createEvent(this, "invalidChanged", 7);
12
+ this.inputIconClick = createEvent(this, "inputIconClick", 7);
13
+ this.leftIconClick = createEvent(this, "leftIconClick", 7);
14
+ this.rightIconClick = createEvent(this, "rightIconClick", 7);
15
+ this.label = undefined;
16
+ this.secondarylabel = undefined;
17
+ this.showerrormsg = undefined;
18
+ this.showerrorbubble = true;
19
+ this.errormsg = undefined;
20
+ this.iconleft = undefined;
21
+ this.iconleftcolor = 'grey';
22
+ this.iconright = undefined;
23
+ this.iconrightcolor = 'grey';
24
+ this.inputicon = undefined;
25
+ this.inputiconcolor = 'grey';
26
+ this.inline = undefined;
27
+ this.inputautocapitalize = undefined;
28
+ this.inputautofocus = undefined;
29
+ this.inputkeyhint = undefined;
30
+ this.inputindex = undefined;
31
+ this.inputtitle = undefined;
32
+ this.autocomplete = undefined;
33
+ this.checked = undefined;
34
+ this.disabled = undefined;
35
+ this.max = undefined;
36
+ this.maxlength = undefined;
37
+ this.min = undefined;
38
+ this.minlength = undefined;
39
+ this.name = undefined;
40
+ this.pattern = undefined;
41
+ this.placeholder = undefined;
42
+ this.readonly = undefined;
43
+ this.required = undefined;
44
+ this.step = undefined;
45
+ this.type = 'text';
46
+ this.value = undefined;
47
+ }
48
+ handleChange(event) {
49
+ const target = event.target;
50
+ this.value = target.value;
51
+ this.valueChanged.emit(target.value);
52
+ }
53
+ handleFocus(event) {
54
+ const target = event.target;
55
+ this.focusChanged.emit(target.value);
56
+ }
57
+ handleBlur(event) {
58
+ const target = event.target;
59
+ this.blurChanged.emit(target.value);
60
+ }
61
+ handleInvalid(event) {
62
+ event.preventDefault();
63
+ const target = event.target;
64
+ this.invalidChanged.emit(target.value);
65
+ }
66
+ handleInputIconClick(event) {
67
+ event.preventDefault();
68
+ this.inputIconClick.emit();
69
+ }
70
+ handleLeftIconClick(event) {
71
+ event.preventDefault();
72
+ this.leftIconClick.emit();
73
+ }
74
+ handleRightIconClick(event) {
75
+ event.preventDefault();
76
+ this.rightIconClick.emit();
77
+ }
78
+ render() {
79
+ const classNames = ['standalone', this.showerrormsg ? 'invalid' : ''].join(' ');
80
+ return (h(Host, null, h("label", { class: this.inline ? 'inputInline' : 'inputBlock' }, this.label, !this.required ? h("span", { class: "optional" }, "\u00A0(optional)") : '', h("div", { class: "input-container" }, this.inputicon && (h("tttx-icon", { class: "input-icon", icon: this.inputicon, color: this.inputiconcolor, onClick: this.handleInputIconClick.bind(this) })), this.iconleft && (h("tttx-icon", { id: "icon-left", icon: this.iconleft, color: this.iconleftcolor, onClick: this.handleLeftIconClick.bind(this) })), this.iconright && (h("tttx-icon", { id: "icon-right", icon: this.iconright, color: this.iconrightcolor, onClick: this.handleRightIconClick.bind(this) })), h("input", { class: classNames, autocapitalize: this.inputautocapitalize, autofocus: this.inputautofocus, enterkeyhint: this.inputkeyhint, tabindex: this.inputindex, title: this.inputtitle, autocomplete: this.autocomplete, checked: this.checked, disabled: this.disabled, max: this.max, maxlength: this.maxlength, min: this.min, minlength: this.minlength, name: this.name, pattern: this.pattern, placeholder: this.placeholder, readonly: this.readonly, required: this.required, step: this.step, type: this.type, value: this.value, onBlur: this.handleBlur.bind(this), onFocus: this.handleFocus.bind(this), onInput: this.handleChange.bind(this), onInvalid: this.handleInvalid.bind(this) }), this.secondarylabel && h("span", { class: "secondarylabel" }, this.secondarylabel), this.showerrorbubble && (h("span", { class: ['errorBubble', this.showerrormsg && this.errormsg ? 'visible' : ''].join(' ') }, h("span", { class: "material-symbols-rounded validationicon" }, "warning"), " ", this.errormsg))))));
81
+ }
82
+ };
83
83
  TttxInput.style = tttxStandaloneInputCss;
84
84
 
85
85
  export { TttxInput as tttx_standalone_input };
@@ -1,16 +1,16 @@
1
- import { r as registerInstance, h, H as Host } from './index-d784fb3e.js';
1
+ import { r as registerInstance, h, e as Host } from './index-e3e64631.js';
2
2
 
3
3
  const tttxToolbarCss = ":host{height:36px;display:flex;padding:8px 0;gap:8px}:host(.bordered){border-bottom:1px solid #d5d5d5}::slotted([slot=before]){display:flex;align-items:center;flex:1 1 0px;gap:8px}::slotted([slot=center]){display:flex;justify-content:center;align-items:center;flex:1 1 0px;gap:8px}::slotted([slot=after]){display:flex;justify-content:end;align-items:center;flex:1 1 0px;gap:8px}";
4
4
 
5
- const TttxToolbar = class {
6
- constructor(hostRef) {
7
- registerInstance(this, hostRef);
8
- this.border = true;
9
- }
10
- render() {
11
- return (h(Host, { class: this.border ? 'bordered' : '' }, h("slot", { name: 'before' }), h("slot", { name: 'center' }), h("slot", { name: 'after' })));
12
- }
13
- };
5
+ const TttxToolbar = class {
6
+ constructor(hostRef) {
7
+ registerInstance(this, hostRef);
8
+ this.border = true;
9
+ }
10
+ render() {
11
+ return (h(Host, { class: this.border ? 'bordered' : '' }, h("slot", { name: 'before' }), h("slot", { name: 'center' }), h("slot", { name: 'after' })));
12
+ }
13
+ };
14
14
  TttxToolbar.style = tttxToolbarCss;
15
15
 
16
16
  export { TttxToolbar as tttx_toolbar };
package/dist/esm/tttx.js CHANGED
@@ -1,18 +1,129 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-d784fb3e.js';
2
- export { s as setNonce } from './index-d784fb3e.js';
1
+ import { B as BUILD, c as consoleDevInfo, p as plt, w as win, H, d as doc, N as NAMESPACE, a as promiseResolve, b as bootstrapLazy } from './index-e3e64631.js';
2
+ import { g as globalScripts } from './app-globals-0f993ce5.js';
3
3
 
4
4
  /*
5
- Stencil Client Patch Browser v2.22.3 | MIT Licensed | https://stenciljs.com
5
+ Stencil Client Patch Browser v2.20.0 | MIT Licensed | https://stenciljs.com
6
6
  */
7
+ const getDynamicImportFunction = (namespace) => `__sc_import_${namespace.replace(/\s|-/g, '_')}`;
7
8
  const patchBrowser = () => {
9
+ // NOTE!! This fn cannot use async/await!
10
+ if (BUILD.isDev && !BUILD.isTesting) {
11
+ consoleDevInfo('Running in development mode.');
12
+ }
13
+ if (BUILD.cssVarShim) {
14
+ // shim css vars
15
+ plt.$cssShim$ = win.__cssshim;
16
+ }
17
+ if (BUILD.cloneNodeFix) {
18
+ // opted-in to polyfill cloneNode() for slot polyfilled components
19
+ patchCloneNodeFix(H.prototype);
20
+ }
21
+ if (BUILD.profile && !performance.mark) {
22
+ // not all browsers support performance.mark/measure (Safari 10)
23
+ // because the mark/measure APIs are designed to write entries to a buffer in the browser that does not exist,
24
+ // simply stub the implementations out.
25
+ // TODO(STENCIL-323): Remove this patch when support for older browsers is removed (breaking)
26
+ // @ts-ignore
27
+ performance.mark = performance.measure = () => {
28
+ /*noop*/
29
+ };
30
+ performance.getEntriesByName = () => [];
31
+ }
32
+ // @ts-ignore
33
+ const scriptElm = BUILD.scriptDataOpts || BUILD.safari10 || BUILD.dynamicImportShim
34
+ ? Array.from(doc.querySelectorAll('script')).find((s) => new RegExp(`\/${NAMESPACE}(\\.esm)?\\.js($|\\?|#)`).test(s.src) ||
35
+ s.getAttribute('data-stencil-namespace') === NAMESPACE)
36
+ : null;
8
37
  const importMeta = import.meta.url;
9
- const opts = {};
10
- if (importMeta !== '') {
38
+ const opts = BUILD.scriptDataOpts ? scriptElm['data-opts'] || {} : {};
39
+ if (BUILD.safari10 && 'onbeforeload' in scriptElm && !history.scrollRestoration /* IS_ESM_BUILD */) {
40
+ // Safari < v11 support: This IF is true if it's Safari below v11.
41
+ // This fn cannot use async/await since Safari didn't support it until v11,
42
+ // however, Safari 10 did support modules. Safari 10 also didn't support "nomodule",
43
+ // so both the ESM file and nomodule file would get downloaded. Only Safari
44
+ // has 'onbeforeload' in the script, and "history.scrollRestoration" was added
45
+ // to Safari in v11. Return a noop then() so the async/await ESM code doesn't continue.
46
+ // IS_ESM_BUILD is replaced at build time so this check doesn't happen in systemjs builds.
47
+ return {
48
+ then() {
49
+ /* promise noop */
50
+ },
51
+ };
52
+ }
53
+ if (!BUILD.safari10 && importMeta !== '') {
11
54
  opts.resourcesUrl = new URL('.', importMeta).href;
12
55
  }
56
+ else if (BUILD.dynamicImportShim || BUILD.safari10) {
57
+ opts.resourcesUrl = new URL('.', new URL(scriptElm.getAttribute('data-resources-url') || scriptElm.src, win.location.href)).href;
58
+ if (BUILD.dynamicImportShim) {
59
+ patchDynamicImport(opts.resourcesUrl, scriptElm);
60
+ }
61
+ if (BUILD.dynamicImportShim && !win.customElements) {
62
+ // module support, but no custom elements support (Old Edge)
63
+ // @ts-ignore
64
+ return import(/* webpackChunkName: "polyfills-dom" */ './dom-6be6f662.js').then(() => opts);
65
+ }
66
+ }
13
67
  return promiseResolve(opts);
14
68
  };
69
+ const patchDynamicImport = (base, orgScriptElm) => {
70
+ const importFunctionName = getDynamicImportFunction(NAMESPACE);
71
+ try {
72
+ // test if this browser supports dynamic imports
73
+ // There is a caching issue in V8, that breaks using import() in Function
74
+ // By generating a random string, we can workaround it
75
+ // Check https://bugs.chromium.org/p/chromium/issues/detail?id=990810 for more info
76
+ win[importFunctionName] = new Function('w', `return import(w);//${Math.random()}`);
77
+ }
78
+ catch (e) {
79
+ // this shim is specifically for browsers that do support "esm" imports
80
+ // however, they do NOT support "dynamic" imports
81
+ // basically this code is for old Edge, v18 and below
82
+ const moduleMap = new Map();
83
+ win[importFunctionName] = (src) => {
84
+ const url = new URL(src, base).href;
85
+ let mod = moduleMap.get(url);
86
+ if (!mod) {
87
+ const script = doc.createElement('script');
88
+ script.type = 'module';
89
+ script.crossOrigin = orgScriptElm.crossOrigin;
90
+ script.src = URL.createObjectURL(new Blob([`import * as m from '${url}'; window.${importFunctionName}.m = m;`], {
91
+ type: 'application/javascript',
92
+ }));
93
+ mod = new Promise((resolve) => {
94
+ script.onload = () => {
95
+ resolve(win[importFunctionName].m);
96
+ script.remove();
97
+ };
98
+ });
99
+ moduleMap.set(url, mod);
100
+ doc.head.appendChild(script);
101
+ }
102
+ return mod;
103
+ };
104
+ }
105
+ };
106
+ const patchCloneNodeFix = (HTMLElementPrototype) => {
107
+ const nativeCloneNodeFn = HTMLElementPrototype.cloneNode;
108
+ HTMLElementPrototype.cloneNode = function (deep) {
109
+ if (this.nodeName === 'TEMPLATE') {
110
+ return nativeCloneNodeFn.call(this, deep);
111
+ }
112
+ const clonedNode = nativeCloneNodeFn.call(this, false);
113
+ const srcChildNodes = this.childNodes;
114
+ if (deep) {
115
+ for (let i = 0; i < srcChildNodes.length; i++) {
116
+ // Node.ATTRIBUTE_NODE === 2, and checking because IE11
117
+ if (srcChildNodes[i].nodeType !== 2) {
118
+ clonedNode.appendChild(srcChildNodes[i].cloneNode(true));
119
+ }
120
+ }
121
+ }
122
+ return clonedNode;
123
+ };
124
+ };
15
125
 
16
126
  patchBrowser().then(options => {
127
+ globalScripts();
17
128
  return bootstrapLazy([["tttx-icon",[[1,"tttx-icon",{"icon":[1],"color":[1]}]]],["tttx-button",[[1,"tttx-button",{"notext":[4],"icon":[1],"iconposition":[1],"design":[1]}]]],["tttx-filter",[[1,"tttx-filter",{"filterKey":[1,"filter-key"],"filterOptions":[1,"filter-options"],"showSelectAll":[4,"show-select-all"],"showSearchField":[4,"show-search-field"],"showOptionIcons":[4,"show-option-icons"],"filterButtonStyle":[1,"filter-button-style"],"filterHeader":[1,"filter-header"],"showPopover":[32],"displayedFilterSettings":[32],"selectedFilters":[32],"filterSearchTerm":[32],"allSelected":[32]}]]],["tttx-list",[[1,"tttx-list",{"data":[1025],"name":[1]}]]],["tttx-sorter",[[1,"tttx-sorter",{"sorterKey":[1,"sorter-key"],"defaultSortDirection":[1,"default-sort-direction"],"fieldOptionsData":[1,"field-options-data"],"defaultOption":[1,"default-option"],"selectedField":[32],"sortDirection":[32],"dropdownExpand":[32],"dropdownOptions":[32]}]]],["tttx-standalone-input",[[2,"tttx-standalone-input",{"label":[1],"secondarylabel":[1],"showerrormsg":[4],"showerrorbubble":[4],"errormsg":[1],"iconleft":[1],"iconleftcolor":[1],"iconright":[1],"iconrightcolor":[1],"inputicon":[1],"inputiconcolor":[1],"inline":[4],"inputautocapitalize":[1],"inputautofocus":[4],"inputkeyhint":[1],"inputindex":[8],"inputtitle":[1],"autocomplete":[1],"checked":[4],"disabled":[4],"max":[8],"maxlength":[8],"min":[8],"minlength":[8],"name":[1],"pattern":[1],"placeholder":[1],"readonly":[8],"required":[4],"step":[8],"type":[1],"value":[1032]}]]],["tttx-form",[[1,"tttx-form",{"formschema":[1032],"data":[1032],"submit":[64]}]]],["tttx-keyvalue-block",[[1,"tttx-keyvalue-block",{"keyvalues":[8],"horizontal":[4]}]]],["tttx-loading-spinner",[[1,"tttx-loading-spinner",{"loadingMessage":[1028,"loading-message"],"size":[1025]}]]],["tttx-toolbar",[[1,"tttx-toolbar",{"border":[4]}]]]], options);
18
129
  });
@@ -0,0 +1,3 @@
1
+ const globalScripts = () => {};
2
+
3
+ export { globalScripts as g };
@@ -0,0 +1,4 @@
1
+ /*
2
+ Stencil Client Patch Esm v2.20.0 | MIT Licensed | https://stenciljs.com
3
+ */
4
+ var __assign=undefined&&undefined.__assign||function(){return (__assign=Object.assign||function(e){for(var t,r=1,n=arguments.length;r<n;r++)for(var s in t=arguments[r])Object.prototype.hasOwnProperty.call(t,s)&&(e[s]=t[s]);return e}).apply(this,arguments)},StyleNode=function(){this.start=0,this.end=0,this.previous=null,this.parent=null,this.rules=null,this.parsedCssText="",this.cssText="",this.atRule=!1,this.type=0,this.keyframesName="",this.selector="",this.parsedSelector="";};function parse(e){return parseCss(lex(e=clean(e)),e)}function clean(e){return e.replace(RX.comments,"").replace(RX.port,"")}function lex(e){var t=new StyleNode;t.start=0,t.end=e.length;for(var r=t,n=0,s=e.length;n<s;n++)if(e[n]===OPEN_BRACE){r.rules||(r.rules=[]);var o=r,a=o.rules[o.rules.length-1]||null;(r=new StyleNode).start=n+1,r.parent=o,r.previous=a,o.rules.push(r);}else e[n]===CLOSE_BRACE&&(r.end=n+1,r=r.parent||t);return t}function parseCss(e,t){var r=t.substring(e.start,e.end-1);if(e.parsedCssText=e.cssText=r.trim(),e.parent){var n=e.previous?e.previous.end:e.parent.start;r=(r=(r=_expandUnicodeEscapes(r=t.substring(n,e.start-1))).replace(RX.multipleSpaces," ")).substring(r.lastIndexOf(";")+1);var s=e.parsedSelector=e.selector=r.trim();e.atRule=0===s.indexOf(AT_START),e.atRule?0===s.indexOf(MEDIA_START)?e.type=types.MEDIA_RULE:s.match(RX.keyframesRule)&&(e.type=types.KEYFRAMES_RULE,e.keyframesName=e.selector.split(RX.multipleSpaces).pop()):0===s.indexOf(VAR_START)?e.type=types.MIXIN_RULE:e.type=types.STYLE_RULE;}var o=e.rules;if(o)for(var a=0,i=o.length,l=void 0;a<i&&(l=o[a]);a++)parseCss(l,t);return e}function _expandUnicodeEscapes(e){return e.replace(/\\([0-9a-f]{1,6})\s/gi,(function(){for(var e=arguments[1],t=6-e.length;t--;)e="0"+e;return "\\"+e}))}var types={STYLE_RULE:1,KEYFRAMES_RULE:7,MEDIA_RULE:4,MIXIN_RULE:1e3},OPEN_BRACE="{",CLOSE_BRACE="}",RX={comments:/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,port:/@import[^;]*;/gim,customProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?(?:[;\n]|$)/gim,mixinProp:/(?:^[^;\-\s}]+)?--[^;{}]*?:[^{};]*?{[^}]*?}(?:[;\n]|$)?/gim,mixinApply:/@apply\s*\(?[^);]*\)?\s*(?:[;\n]|$)?/gim,varApply:/[^;:]*?:[^;]*?var\([^;]*\)(?:[;\n]|$)?/gim,keyframesRule:/^@[^\s]*keyframes/,multipleSpaces:/\s+/g},VAR_START="--",MEDIA_START="@media",AT_START="@",VAR_USAGE_START=/\bvar\(/,VAR_ASSIGN_START=/\B--[\w-]+\s*:/,COMMENTS=/\/\*[^*]*\*+([^/*][^*]*\*+)*\//gim,TRAILING_LINES=/^[\t ]+\n/gm;function findRegex(e,t,r){e.lastIndex=0;var n=t.substring(r).match(e);if(n){var s=r+n.index;return {start:s,end:s+n[0].length}}return null}function resolveVar(e,t,r){return e[t]?e[t]:r?executeTemplate(r,e):""}function findVarEndIndex(e,t){for(var r=0,n=t;n<e.length;n++){var s=e[n];if("("===s)r++;else if(")"===s&&--r<=0)return n+1}return n}function parseVar(e,t){var r=findRegex(VAR_USAGE_START,e,t);if(!r)return null;var n=findVarEndIndex(e,r.start),s=e.substring(r.end,n-1).split(","),o=s[0],a=s.slice(1);return {start:r.start,end:n,propName:o.trim(),fallback:a.length>0?a.join(",").trim():void 0}}function compileVar(e,t,r){var n=parseVar(e,r);if(!n)return t.push(e.substring(r,e.length)),e.length;var s=n.propName,o=null!=n.fallback?compileTemplate(n.fallback):void 0;return t.push(e.substring(r,n.start),(function(e){return resolveVar(e,s,o)})),n.end}function executeTemplate(e,t){for(var r="",n=0;n<e.length;n++){var s=e[n];r+="string"==typeof s?s:s(t);}return r}function findEndValue(e,t){for(var r=!1,n=!1,s=t;s<e.length;s++){var o=e[s];if(r)n&&'"'===o&&(r=!1),n||"'"!==o||(r=!1);else if('"'===o)r=!0,n=!0;else if("'"===o)r=!0,n=!1;else {if(";"===o)return s+1;if("}"===o)return s}}return s}function removeCustomAssigns(e){for(var t="",r=0;;){var n=findRegex(VAR_ASSIGN_START,e,r),s=n?n.start:e.length;if(t+=e.substring(r,s),!n)break;r=findEndValue(e,s);}return t}function compileTemplate(e){var t=0;e=removeCustomAssigns(e=e.replace(COMMENTS,"")).replace(TRAILING_LINES,"");for(var r=[];t<e.length;)t=compileVar(e,r,t);return r}function resolveValues(e){var t={};e.forEach((function(e){e.declarations.forEach((function(e){t[e.prop]=e.value;}));}));for(var r={},n=Object.entries(t),s=function(e){var t=!1;if(n.forEach((function(e){var n=e[0],s=executeTemplate(e[1],r);s!==r[n]&&(r[n]=s,t=!0);})),!t)return "break"},o=0;o<10;o++){if("break"===s())break}return r}function getSelectors(e,t){if(void 0===t&&(t=0),!e.rules)return [];var r=[];return e.rules.filter((function(e){return e.type===types.STYLE_RULE})).forEach((function(e){var n=getDeclarations(e.cssText);n.length>0&&e.parsedSelector.split(",").forEach((function(e){e=e.trim(),r.push({selector:e,declarations:n,specificity:computeSpecificity(),nu:t});})),t++;})),r}function computeSpecificity(e){return 1}var IMPORTANT="!important",FIND_DECLARATIONS=/(?:^|[;\s{]\s*)(--[\w-]*?)\s*:\s*(?:((?:'(?:\\'|.)*?'|"(?:\\"|.)*?"|\([^)]*?\)|[^};{])+)|\{([^}]*)\}(?:(?=[;\s}])|$))/gm;function getDeclarations(e){for(var t,r=[];t=FIND_DECLARATIONS.exec(e.trim());){var n=normalizeValue(t[2]),s=n.value,o=n.important;r.push({prop:t[1].trim(),value:compileTemplate(s),important:o});}return r}function normalizeValue(e){var t=(e=e.replace(/\s+/gim," ").trim()).endsWith(IMPORTANT);return t&&(e=e.slice(0,e.length-IMPORTANT.length).trim()),{value:e,important:t}}function getActiveSelectors(e,t,r){var n=[],s=getScopesForElement(t,e);return r.forEach((function(e){return n.push(e)})),s.forEach((function(e){return n.push(e)})),sortSelectors(getSelectorsForScopes(n).filter((function(t){return matches(e,t.selector)})))}function getScopesForElement(e,t){for(var r=[];t;){var n=e.get(t);n&&r.push(n),t=t.parentElement;}return r}function getSelectorsForScopes(e){var t=[];return e.forEach((function(e){t.push.apply(t,e.selectors);})),t}function sortSelectors(e){return e.sort((function(e,t){return e.specificity===t.specificity?e.nu-t.nu:e.specificity-t.specificity})),e}function matches(e,t){return ":root"===t||"html"===t||e.matches(t)}function parseCSS(e){var t=parse(e),r=compileTemplate(e);return {original:e,template:r,selectors:getSelectors(t),usesCssVars:r.length>1}}function addGlobalStyle(e,t){if(e.some((function(e){return e.styleEl===t})))return !1;var r=parseCSS(t.textContent);return r.styleEl=t,e.push(r),!0}function updateGlobalScopes(e){var t=resolveValues(getSelectorsForScopes(e));e.forEach((function(e){e.usesCssVars&&(e.styleEl.textContent=executeTemplate(e.template,t));}));}function reScope(e,t){var r=e.template.map((function(r){return "string"==typeof r?replaceScope(r,e.scopeId,t):r})),n=e.selectors.map((function(r){return __assign(__assign({},r),{selector:replaceScope(r.selector,e.scopeId,t)})}));return __assign(__assign({},e),{template:r,selectors:n,scopeId:t})}function replaceScope(e,t,r){return e=replaceAll(e,"\\.".concat(t),".".concat(r))}function replaceAll(e,t,r){return e.replace(new RegExp(t,"g"),r)}function loadDocument(e,t){return loadDocumentStyles(e,t),loadDocumentLinks(e,t).then((function(){updateGlobalScopes(t);}))}function startWatcher(e,t){"undefined"!=typeof MutationObserver&&new MutationObserver((function(){loadDocumentStyles(e,t)&&updateGlobalScopes(t);})).observe(document.head,{childList:!0});}function loadDocumentLinks(e,t){for(var r=[],n=e.querySelectorAll('link[rel="stylesheet"][href]:not([data-no-shim])'),s=0;s<n.length;s++)r.push(addGlobalLink(e,t,n[s]));return Promise.all(r)}function loadDocumentStyles(e,t){return Array.from(e.querySelectorAll("style:not([data-styles]):not([data-no-shim])")).map((function(e){return addGlobalStyle(t,e)})).some(Boolean)}function addGlobalLink(e,t,r){var n=r.href;return fetch(n).then((function(e){return e.text()})).then((function(s){if(hasCssVariables(s)&&r.parentNode){hasRelativeUrls(s)&&(s=fixRelativeUrls(s,n));var o=e.createElement("style");o.setAttribute("data-styles",""),o.textContent=s,addGlobalStyle(t,o),r.parentNode.insertBefore(o,r),r.remove();}})).catch((function(e){console.error(e);}))}var CSS_VARIABLE_REGEXP=/[\s;{]--[-a-zA-Z0-9]+\s*:/m;function hasCssVariables(e){return e.indexOf("var(")>-1||CSS_VARIABLE_REGEXP.test(e)}var CSS_URL_REGEXP=/url[\s]*\([\s]*['"]?(?!(?:https?|data)\:|\/)([^\'\"\)]*)[\s]*['"]?\)[\s]*/gim;function hasRelativeUrls(e){return CSS_URL_REGEXP.lastIndex=0,CSS_URL_REGEXP.test(e)}function fixRelativeUrls(e,t){var r=t.replace(/[^/]*$/,"");return e.replace(CSS_URL_REGEXP,(function(e,t){var n=r+t;return e.replace(t,n)}))}var CustomStyle=function(){function e(e,t){this.win=e,this.doc=t,this.count=0,this.hostStyleMap=new WeakMap,this.hostScopeMap=new WeakMap,this.globalScopes=[],this.scopesMap=new Map,this.didInit=!1;}return e.prototype.i=function(){var e=this;return this.didInit||!this.win.requestAnimationFrame?Promise.resolve():(this.didInit=!0,new Promise((function(t){e.win.requestAnimationFrame((function(){startWatcher(e.doc,e.globalScopes),loadDocument(e.doc,e.globalScopes).then((function(){return t()}));}));})))},e.prototype.addLink=function(e){var t=this;return addGlobalLink(this.doc,this.globalScopes,e).then((function(){t.updateGlobal();}))},e.prototype.addGlobalStyle=function(e){addGlobalStyle(this.globalScopes,e)&&this.updateGlobal();},e.prototype.createHostStyle=function(e,t,r,n){if(this.hostScopeMap.has(e))throw new Error("host style already created");var s=this.registerHostTemplate(r,t,n),o=this.doc.createElement("style");return o.setAttribute("data-no-shim",""),s.usesCssVars?n?(o["s-sc"]=t="".concat(s.scopeId,"-").concat(this.count),o.textContent="/*needs update*/",this.hostStyleMap.set(e,o),this.hostScopeMap.set(e,reScope(s,t)),this.count++):(s.styleEl=o,s.usesCssVars||(o.textContent=executeTemplate(s.template,{})),this.globalScopes.push(s),this.updateGlobal(),this.hostScopeMap.set(e,s)):o.textContent=r,o},e.prototype.removeHost=function(e){var t=this.hostStyleMap.get(e);t&&t.remove(),this.hostStyleMap.delete(e),this.hostScopeMap.delete(e);},e.prototype.updateHost=function(e){var t=this.hostScopeMap.get(e);if(t&&t.usesCssVars&&t.isScoped){var r=this.hostStyleMap.get(e);if(r){var n=resolveValues(getActiveSelectors(e,this.hostScopeMap,this.globalScopes));r.textContent=executeTemplate(t.template,n);}}},e.prototype.updateGlobal=function(){updateGlobalScopes(this.globalScopes);},e.prototype.registerHostTemplate=function(e,t,r){var n=this.scopesMap.get(t);return n||((n=parseCSS(e)).scopeId=t,n.isScoped=r,this.scopesMap.set(t,n)),n},e}();!function(e){!e||e.__cssshim||e.CSS&&e.CSS.supports&&e.CSS.supports("color","var(--c)")||(e.__cssshim=new CustomStyle(e,e.document));}("undefined"!=typeof window&&window);