@3t-transform/threeteeui 0.1.69 → 0.2.70

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 (70) hide show
  1. package/dist/cjs/{index-43af0e62.js → index-4cfa8e25.js} +59 -0
  2. package/dist/cjs/loader.cjs.js +2 -2
  3. package/dist/cjs/tttx-button.cjs.entry.js +1 -1
  4. package/dist/cjs/tttx-dialog-box.cjs.entry.js +1 -1
  5. package/dist/cjs/tttx-filter.cjs.entry.js +1 -1
  6. package/dist/cjs/tttx-form.cjs.entry.js +1 -1
  7. package/dist/cjs/tttx-icon.cjs.entry.js +1 -1
  8. package/dist/cjs/tttx-keyvalue-block.cjs.entry.js +1 -1
  9. package/dist/cjs/tttx-list.cjs.entry.js +12 -22
  10. package/dist/cjs/tttx-loading-spinner.cjs.entry.js +1 -1
  11. package/dist/cjs/tttx-qrcode.cjs.entry.js +1 -1
  12. package/dist/cjs/tttx-select-box.cjs.entry.js +6 -5
  13. package/dist/cjs/tttx-sorter.cjs.entry.js +1 -1
  14. package/dist/cjs/tttx-standalone-input.cjs.entry.js +1 -1
  15. package/dist/cjs/tttx-tag.cjs.entry.js +1 -1
  16. package/dist/cjs/tttx-toolbar.cjs.entry.js +1 -1
  17. package/dist/cjs/tttx-tree-view.cjs.entry.js +1 -1
  18. package/dist/cjs/tttx.cjs.js +2 -2
  19. package/dist/collection/components/molecules/tttx-list/tttx-list.css +21 -3
  20. package/dist/collection/components/molecules/tttx-list/tttx-list.js +13 -46
  21. package/dist/collection/components/molecules/tttx-list/tttx-list.stories.js +134 -4
  22. package/dist/collection/components/molecules/tttx-select-box/tttx-select-box.css +5 -4
  23. package/dist/collection/components/molecules/tttx-select-box/tttx-select-box.js +4 -3
  24. package/dist/collection/components/molecules/tttx-select-box/tttx-select-box.stories.js +57 -2
  25. package/dist/components/tttx-list.js +13 -24
  26. package/dist/components/tttx-select-box.js +5 -4
  27. package/dist/esm/{index-1c711ead.js → index-6a372ea6.js} +59 -1
  28. package/dist/esm/loader.js +3 -3
  29. package/dist/esm/tttx-button.entry.js +1 -1
  30. package/dist/esm/tttx-dialog-box.entry.js +1 -1
  31. package/dist/esm/tttx-filter.entry.js +1 -1
  32. package/dist/esm/tttx-form.entry.js +1 -1
  33. package/dist/esm/tttx-icon.entry.js +1 -1
  34. package/dist/esm/tttx-keyvalue-block.entry.js +1 -1
  35. package/dist/esm/tttx-list.entry.js +12 -22
  36. package/dist/esm/tttx-loading-spinner.entry.js +1 -1
  37. package/dist/esm/tttx-qrcode.entry.js +1 -1
  38. package/dist/esm/tttx-select-box.entry.js +6 -5
  39. package/dist/esm/tttx-sorter.entry.js +1 -1
  40. package/dist/esm/tttx-standalone-input.entry.js +1 -1
  41. package/dist/esm/tttx-tag.entry.js +1 -1
  42. package/dist/esm/tttx-toolbar.entry.js +1 -1
  43. package/dist/esm/tttx-tree-view.entry.js +1 -1
  44. package/dist/esm/tttx.js +3 -3
  45. package/dist/tttx/p-0c6e39c5.entry.js +1 -0
  46. package/dist/tttx/p-3f1b6013.js +2 -0
  47. package/dist/tttx/{p-cff962bf.entry.js → p-50cdce65.entry.js} +1 -1
  48. package/dist/tttx/{p-225e6fa6.entry.js → p-5290db99.entry.js} +1 -1
  49. package/dist/tttx/{p-3c7e11d9.entry.js → p-5b7b8539.entry.js} +1 -1
  50. package/dist/tttx/{p-f80ab1d8.entry.js → p-6fe0af4e.entry.js} +1 -1
  51. package/dist/tttx/p-750cf31b.entry.js +1 -0
  52. package/dist/tttx/{p-2f066b53.entry.js → p-75c31e23.entry.js} +1 -1
  53. package/dist/tttx/{p-e6bbdae3.entry.js → p-818574fe.entry.js} +1 -1
  54. package/dist/tttx/{p-57621fdb.entry.js → p-895526aa.entry.js} +1 -1
  55. package/dist/tttx/{p-68680d65.entry.js → p-a6582ab0.entry.js} +1 -1
  56. package/dist/tttx/{p-6a40d3cc.entry.js → p-c0c022cd.entry.js} +1 -1
  57. package/dist/tttx/{p-a658e1ac.entry.js → p-c714f7c0.entry.js} +1 -1
  58. package/dist/tttx/{p-64479f02.entry.js → p-d77e74fd.entry.js} +1 -1
  59. package/dist/tttx/{p-3467c62e.entry.js → p-e55a967b.entry.js} +1 -1
  60. package/dist/tttx/{p-53fa8b4d.entry.js → p-e89b053f.entry.js} +1 -1
  61. package/dist/tttx/tttx.esm.js +1 -1
  62. package/dist/types/components/molecules/tttx-list/interfaces.d.ts +30 -1
  63. package/dist/types/components/molecules/tttx-list/tttx-list.d.ts +0 -2
  64. package/dist/types/components/molecules/tttx-select-box/tttx-select-box.d.ts +2 -1
  65. package/dist/types/components/molecules/tttx-select-box/tttx-select-box.stories.d.ts +1 -0
  66. package/dist/types/components.d.ts +1 -2
  67. package/package.json +1 -1
  68. package/dist/tttx/p-40c66a2e.entry.js +0 -1
  69. package/dist/tttx/p-6535df53.entry.js +0 -1
  70. package/dist/tttx/p-c544551b.js +0 -2
@@ -89,10 +89,86 @@ const TemplateWorkerList = ({ data }) => `
89
89
  export const WorkerList = TemplateWorkerList.bind({});
90
90
  WorkerList.args = {
91
91
  data: [
92
+ {
93
+ key: '54c5b6fd-12d1-4794-92cb-93f4c2e1a890',
94
+ toggleable: true,
95
+ icon: 'chevron_right',
96
+ element: `
97
+ <div style="display: flex; flex-direction: row; align-items: flex-start;">
98
+ <label>
99
+ <ul style="list-style-type: none; padding: 0; margin: 0;">
100
+ <li>
101
+ <span style="padding: 8px; display: inline-flex; align-items: center;">
102
+ <a style="font-weight: 500; color: #146EB3; text-decoration: none;" href>Worker name</a>
103
+ </span>
104
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 4px;">
105
+ <span style="color: #757575;">ID:</span> <span style="color: #212121;">9125</span>
106
+ </span>
107
+ </li>
108
+ <li>
109
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
110
+ <tttx-tag text="Driller" color="#F4DFFF"></tttx-tag>
111
+ <tttx-tag text="Offshore" color="#CEF4EB"></tttx-tag>
112
+ <tttx-tag text="3t Transform" color="#DDE6FA"></tttx-tag>
113
+ </span>
114
+ </li>
115
+ <li>
116
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
117
+ <span><tttx-icon icon="school" color="gray" /></span><span><tttx-icon icon="check_circle" color="green" /></span> 80%
118
+ </span>
119
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
120
+ <span><tttx-icon icon="verified_user" color="gray" /></span><span><tttx-icon icon="warning" color="orange" /></span> 60%
121
+ </span>
122
+ </li>
123
+ </ul>
124
+ </label>
125
+ </div>
126
+ `,
127
+ rowData: '{ "name": "Worker name", "id": 9125, "groups": ["Driller", "Offshore", "3t Transform"], "compliance": 80, "competence": 60 }',
128
+ },
129
+ {
130
+ key: '54c5b6fd-12d1-4794-92cb-93f4c2e1a891',
131
+ toggleable: true,
132
+ active: true,
133
+ icon: 'chevron_right',
134
+ element: `
135
+ <div style="display: flex; flex-direction: row; align-items: flex-start;">
136
+ <label>
137
+ <ul style="list-style-type: none; padding: 0; margin: 0;">
138
+ <li>
139
+ <span style="padding: 8px; display: inline-flex; align-items: center;">
140
+ <a style="font-weight: 500; color: #146EB3; text-decoration: none;" href>Worker name</a>
141
+ </span>
142
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 4px;">
143
+ <span style="color: #757575;">ID:</span> <span style="color: #212121;">9125</span>
144
+ </span>
145
+ </li>
146
+ <li>
147
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
148
+ <tttx-tag text="Driller" color="#F4DFFF"></tttx-tag>
149
+ <tttx-tag text="Offshore" color="#CEF4EB"></tttx-tag>
150
+ <tttx-tag text="3t Transform" color="#DDE6FA"></tttx-tag>
151
+ </span>
152
+ </li>
153
+ <li>
154
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
155
+ <span><tttx-icon icon="school" color="gray" /></span><span><tttx-icon icon="check_circle" color="green" /></span> 80%
156
+ </span>
157
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
158
+ <span><tttx-icon icon="verified_user" color="gray" /></span><span><tttx-icon icon="warning" color="orange" /></span> 60%
159
+ </span>
160
+ </li>
161
+ </ul>
162
+ </label>
163
+ </div>
164
+ `,
165
+ rowData: '{ "name": "Worker name", "id": 9125, "groups": ["Driller", "Offshore", "3t Transform"], "compliance": 80, "competence": 60 }',
166
+ },
92
167
  {
93
168
  key: '54c5b6fd-12d1-4794-92cb-93f4c2e1a892',
94
169
  hasCheckbox: true,
95
170
  clickable: true,
171
+ checked: true,
96
172
  icon: 'chevron_right',
97
173
  element: `
98
174
  <div style="display: flex; flex-direction: row; align-items: flex-start;">
@@ -108,9 +184,9 @@ WorkerList.args = {
108
184
  </li>
109
185
  <li>
110
186
  <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
111
- <tttx-tag text="Driller" color="#EABFFF"></tttx-tag>
112
- <tttx-tag text="Offshore" color="#9BE8D5"></tttx-tag>
113
- <tttx-tag text="3t Transform" color="#B9CCF5"></tttx-tag>
187
+ <tttx-tag text="Driller" color="#F4DFFF"></tttx-tag>
188
+ <tttx-tag text="Offshore" color="#CEF4EB"></tttx-tag>
189
+ <tttx-tag text="3t Transform" color="#DDE6FA"></tttx-tag>
114
190
  </span>
115
191
  </li>
116
192
  <li>
@@ -128,7 +204,47 @@ WorkerList.args = {
128
204
  rowData: '{ "name": "Worker name", "id": 9125, "groups": ["Driller", "Offshore", "3t Transform"], "compliance": 80, "competence": 60 }',
129
205
  },
130
206
  {
131
- key: 'a5df3398-2bd0-4e16-83a1-b962b74dc712',
207
+ key: '54c5b6fd-12d1-4794-92cb-93f4c2e1a893',
208
+ hasCheckbox: true,
209
+ toggleable: true,
210
+ checked: true,
211
+ active: true,
212
+ icon: 'chevron_right',
213
+ element: `
214
+ <div style="display: flex; flex-direction: row; align-items: flex-start;">
215
+ <label>
216
+ <ul style="list-style-type: none; padding: 0; margin: 0;">
217
+ <li>
218
+ <span style="padding: 8px; display: inline-flex; align-items: center;">
219
+ <a style="font-weight: 500; color: #146EB3; text-decoration: none;" href>Worker name</a>
220
+ </span>
221
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 4px;">
222
+ <span style="color: #757575;">ID:</span> <span style="color: #212121;">9125</span>
223
+ </span>
224
+ </li>
225
+ <li>
226
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
227
+ <tttx-tag text="Driller" color="#F4DFFF"></tttx-tag>
228
+ <tttx-tag text="Offshore" color="#CEF4EB"></tttx-tag>
229
+ <tttx-tag text="3t Transform" color="#DDE6FA"></tttx-tag>
230
+ </span>
231
+ </li>
232
+ <li>
233
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
234
+ <span><tttx-icon icon="school" color="gray" /></span><span><tttx-icon icon="check_circle" color="green" /></span> 80%
235
+ </span>
236
+ <span style="padding: 8px; display: inline-flex; align-items: center; gap: 8px;">
237
+ <span><tttx-icon icon="verified_user" color="gray" /></span><span><tttx-icon icon="warning" color="orange" /></span> 60%
238
+ </span>
239
+ </li>
240
+ </ul>
241
+ </label>
242
+ </div>
243
+ `,
244
+ rowData: '{ "name": "Worker name", "id": 9125, "groups": ["Driller", "Offshore", "3t Transform"], "compliance": 80, "competence": 60 }',
245
+ },
246
+ {
247
+ key: '54c5b6fd-12d1-4794-92cb-93f4c2e1a894',
132
248
  clickable: true,
133
249
  icon: 'chevron_right',
134
250
  element: `
@@ -139,6 +255,20 @@ WorkerList.args = {
139
255
  <span style="color: #757575;">Awarded:</span> <span style="color: #212121;">10 Jan 2022</span>
140
256
  <span style="color: #757575;">Expiry:</span> <span style="color: #212121;">10 Jan 2023</span>
141
257
  </div>
258
+ `,
259
+ rowData: 'any data',
260
+ },
261
+ {
262
+ key: '54c5b6fd-12d1-4794-92cb-93f4c2e1a895',
263
+ icon: 'chevron_right',
264
+ element: `
265
+ <div style="display: flex; flex-direction: row; align-items: center; gap: 8px;">
266
+ <span><tttx-icon icon="check_circle" color="green" /></span>
267
+ Qualification row
268
+ <tttx-tag text="Vantage" color="#D5D5D5"></tttx-tag>
269
+ <span style="color: #757575;">Awarded:</span> <span style="color: #212121;">10 Jan 2022</span>
270
+ <span style="color: #757575;">Expiry:</span> <span style="color: #212121;">10 Jan 2023</span>
271
+ </div>
142
272
  `,
143
273
  rowData: 'any data',
144
274
  },
@@ -56,13 +56,14 @@
56
56
 
57
57
  .dropdown-body {
58
58
  display: flex;
59
- width: inherit;
60
- position: absolute;
59
+ position: fixed;
60
+ z-index: 1000;
61
61
  flex-direction: column;
62
+ top: inherit;
63
+ margin-top: 45px;
62
64
  box-shadow: 0px 1px 5px #1111114D;
63
65
  padding-bottom: 8px;
64
66
  border: 1px solid #d5d5d5;
65
- top: 42px;
66
67
  }
67
68
  .dropdown-body.search {
68
69
  max-height: 410px;
@@ -80,7 +81,7 @@
80
81
  cursor: pointer;
81
82
  }
82
83
  .dropdown-option:hover {
83
- background-color: #1111110D;
84
+ background-color: #1111110d;
84
85
  }
85
86
  .dropdown-option:active, .dropdown-option.selected {
86
87
  background-color: #ebfbfc;
@@ -20,10 +20,11 @@ export class TttxSelectBox {
20
20
  this.open = false;
21
21
  this.toggleOpen.emit(false);
22
22
  }
23
- onDropdownClicked() {
23
+ onDropdownClicked(event) {
24
24
  this.open = !this.open;
25
25
  this.searchTerm = '';
26
26
  this.toggleOpen.emit(this.open);
27
+ this.dropDownWidth = event.target.offsetWidth;
27
28
  }
28
29
  onItemSelected(option) {
29
30
  this.selectedItem = option;
@@ -33,7 +34,7 @@ export class TttxSelectBox {
33
34
  dropdownSelectorContent() {
34
35
  if (!this.selectedItem)
35
36
  return h("div", { class: "placeholder" }, this.placeholder);
36
- return h("div", null, this.selectedItem.label);
37
+ return this.selectedItem.html ? h("div", { innerHTML: this.selectedItem.html }) : h("div", null, this.selectedItem.label);
37
38
  }
38
39
  dropdownOption(option) {
39
40
  /* istanbul ignore next */
@@ -57,7 +58,7 @@ export class TttxSelectBox {
57
58
  return;
58
59
  const parsedOptionsData = typeof this.optionsData === 'string' ? JSON.parse(this.optionsData) : this.optionsData;
59
60
  const chevronIcon = this.open ? 'expand_less' : 'expand_more';
60
- return (h(Host, { class: this.inline ? 'inline' : 'block' }, this.label && h("div", { class: "label" }, this.label), h("div", { tabindex: "0", class: "dropdown-container" }, h("div", { class: "dropdown-selector", onClick: this.onDropdownClicked.bind(this) }, this.dropdownSelectorContent(), h("div", { class: "dropdown-selector-chevron" }, h("tttx-icon", { icon: chevronIcon, color: "black" }))), this.open && (h("div", { class: "dropdown-body" }, this.searchEnabled &&
61
+ return (h(Host, { class: this.inline ? 'inline' : 'block' }, this.label && h("div", { class: "label" }, this.label), h("div", { tabindex: "0", class: "dropdown-container" }, h("div", { class: "dropdown-selector", onClick: this.onDropdownClicked.bind(this) }, this.dropdownSelectorContent(), h("div", { class: "dropdown-selector-chevron" }, h("tttx-icon", { icon: chevronIcon, color: "black" }))), this.open && (h("div", { class: "dropdown-body", style: { 'width': `${this.dropDownWidth}px` } }, this.searchEnabled &&
61
62
  /* istanbul ignore next */
62
63
  h("div", { class: "searchbox" }, h("tttx-standalone-input", { type: "text", label: "", required: true, showerrorbubble: false, iconleft: 'search', onInput: this.handleSearchInput.bind(this) })), h("div", { class: "dropdown-options-list" }, parsedOptionsData.map((option) => {
63
64
  return this.dropdownOption(option);
@@ -43,7 +43,7 @@ BasicHTMLSelectBox.args = {
43
43
  label: 'Label',
44
44
  placeholder: 'Placeholder',
45
45
  searchEnabled: true,
46
- inline: false
46
+ inline: false,
47
47
  };
48
48
  const TemplateJSXSelectBox = args => `
49
49
  <tttx-select-box
@@ -65,5 +65,60 @@ BasicJSXSelectBox.args = {
65
65
  label: 'Label',
66
66
  placeholder: 'Placeholder',
67
67
  searchEnabled: true,
68
- inline: false
68
+ inline: false,
69
+ };
70
+ const tagOptions = [
71
+ { value: '1', label: 'Client', html: '<tttx-tag text="Client" color="#f2bebe"></tttx-tag>' },
72
+ { value: '2', label: 'Job Role', html: '<tttx-tag text="Job Role" color="#f9e1be"></tttx-tag>' },
73
+ { value: '3', label: 'Project', html: '<tttx-tag text="Project" color="#e4ebc9"></tttx-tag>' },
74
+ ];
75
+ const TttxDialogBoxStory = ({ data }) => `
76
+ <button onclick="openDialog()">Open</button>
77
+ <tttx-dialog-box
78
+ id='dialogBox'
79
+ ></tttx-dialog-box>
80
+ <script>
81
+ if(!dialogBox) {
82
+ const dialogBox = document.getElementById('dialogBox');
83
+ }
84
+ if(!openDialog) {
85
+ function openDialog() {
86
+ const dialogBox = document.getElementById('dialogBox');
87
+ dialogBox.open = true;
88
+ }
89
+ }
90
+ dialogBox.data = ${JSON.stringify(data)};
91
+ </script>
92
+ `;
93
+ export const DialogBoxWithDropdown = TttxDialogBoxStory.bind({});
94
+ DialogBoxWithDropdown.args = {
95
+ data: {
96
+ header: {
97
+ title: 'Dialog Title',
98
+ hasIcon: false,
99
+ hasClose: true,
100
+ },
101
+ body: {
102
+ isCustomHtml: true,
103
+ customHtml: `
104
+ <div style="padding: 5px;">
105
+ <tttx-select-box
106
+ id="htmlSelectBox"
107
+ options-data='${JSON.stringify(tagOptions)}'
108
+ label='Label'
109
+ placeholder='Placeholder'
110
+ search-enabled='${true}'
111
+ inline='${false}'
112
+ ></tttx-select-box>
113
+ </div>
114
+ `,
115
+ },
116
+ footer: {
117
+ buttons: [
118
+ { name: 'primary', type: 'primary' },
119
+ { name: 'default', type: 'default' },
120
+ { name: 'No border', type: 'borderless' },
121
+ ],
122
+ },
123
+ },
69
124
  };
@@ -1,8 +1,8 @@
1
- import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
1
+ import { proxyCustomElement, HTMLElement, createEvent, h, Fragment } from '@stencil/core/internal/client';
2
2
  import { p as purify, d as domSanitiserOptions } from './domsanitiser.options.js';
3
3
  import { d as defineCustomElement$2 } from './tttx-icon2.js';
4
4
 
5
- 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}li{display:flex;align-items:flex-start}li.item{list-style:none;margin:0;padding:8px;border-bottom:1px solid #d5d5d5;min-height:36px}li.item:first-of-type{border-top:1px solid #d5d5d5}li.item.clickable:hover{cursor:pointer}li.item.clickable:active{background-color:#e6e6e6}li.item .icons{display:flex;justify-content:flex-end;flex-grow:1;align-items:center;height:36px}li.item .icons tttx-icon:hover{cursor:pointer}li.item .icons *{display:flex}li:hover{background-color:#1111110D}.align-right{margin-left:auto}.item-content{display:flex;align-items:center;flex-grow:2;min-height:36px}.checkbox{padding:6px;margin-left:-8px}";
5
+ 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}li{display:flex;align-items:flex-start}li.item{list-style:none;margin:0;padding:8px;border-bottom:1px solid #d5d5d5;min-height:36px}li.item:first-of-type{border-top:1px solid #d5d5d5}li.item.clickable:hover{cursor:pointer}li.item.toggleable:hover{cursor:pointer}li.item.active{background-color:rgba(17, 17, 17, 0.1)}li.item.active:hover{background-color:rgba(17, 17, 17, 0.15)}li.item.selected{background-color:#ebfbfc}li.item.selected:hover{background-color:#e0f8f9}li.item.selected.active{background-color:#ccf3f6}li.item.selected.active:hover{background-color:#bff0f3}li.item .icons{display:flex;justify-content:flex-end;flex-grow:1;align-items:center;height:36px}li.item .icons tttx-icon:hover{cursor:pointer}li.item .icons *{display:flex}li:hover{background-color:rgba(17, 17, 17, 0.05)}.align-right{margin-left:auto}.item-content{display:flex;align-items:center;flex-grow:2;min-height:36px}.checkbox{padding:6px;margin-left:-8px}";
6
6
 
7
7
  const TttxList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
8
8
  constructor() {
@@ -39,39 +39,29 @@ const TttxList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
39
39
  event.stopPropagation();
40
40
  if (!item.rowData)
41
41
  return;
42
- if (item.hasCheckbox) {
43
- item.checked = !item.checked;
44
- }
45
- // re-render component by updating its state
46
- this._data = [...this._data];
47
- this.rowCheckboxClick.emit({ key: item.key, name: this.name, data: item.rowData, checked: item.checked });
42
+ this.rowCheckboxClick.emit({ key: item.key, name: this.name, data: item.rowData });
48
43
  }
49
44
  onRowClickHandler(item) {
50
- if (!item.clickable || !item.rowData)
45
+ if ((!item.clickable && !item.toggleable) || !item.rowData)
51
46
  return;
52
47
  this.rowClick.emit({ key: item.key, name: this.name, data: item.rowData });
53
48
  }
54
- async setAllCheckboxes(check) {
55
- for (const data of this._data) {
56
- if (data.hasCheckbox) {
57
- data.checked = check;
58
- }
59
- }
60
- // re-render component by updating its state
61
- this._data = [...this._data];
62
- }
63
49
  renderListItem(item) {
64
50
  const cleanHTML = purify.sanitize(item.element, domSanitiserOptions);
65
- return (h("li", { class: `item ${item.clickable ? 'clickable' : ''}`, onClick: () => {
66
- this.onRowClickHandler(item);
67
- } }, item.hasCheckbox && (h("div", { class: "checkbox" }, h("tttx-icon", { icon: item.checked ? 'check_box' : 'check_box_outline_blank', color: item.checked ? 'blue' : 'grey', onClick: event => {
51
+ return (h(Fragment, null, item.hasCheckbox && (h("div", { class: "checkbox" }, h("tttx-icon", { icon: item.checked ? 'check_box' : 'check_box_outline_blank', color: item.checked ? 'blue' : 'grey', onClick: event => {
68
52
  this.onRowCheckboxHandler(event, item);
69
53
  } }))), item.element && h("span", { class: "item-content", innerHTML: cleanHTML }), item.icon && (h("span", { class: "icons" }, h("tttx-icon", { class: "align-right", icon: item.icon, color: 'black' })))));
70
54
  }
71
55
  render() {
72
56
  if (!this._data)
73
57
  return;
74
- return h("ul", { class: "list" }, this._data.map((item) => this.renderListItem(item)));
58
+ return (h("ul", { class: "list" }, this._data.map((item) => (h("li", { key: item.key, class: 'item' +
59
+ (item.clickable ? ' clickable' : '') +
60
+ (item.toggleable ? ' toggleable' : '') +
61
+ (item.checked ? ' selected' : '') +
62
+ (item.active ? ' active' : ''), onClick: () => {
63
+ this.onRowClickHandler(item);
64
+ } }, this.renderListItem(item))))));
75
65
  }
76
66
  static get watchers() { return {
77
67
  "data": ["onDataChange"]
@@ -80,8 +70,7 @@ const TttxList$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
80
70
  }, [1, "tttx-list", {
81
71
  "data": [1025],
82
72
  "name": [1],
83
- "_data": [32],
84
- "setAllCheckboxes": [64]
73
+ "_data": [32]
85
74
  }]);
86
75
  function defineCustomElement$1() {
87
76
  if (typeof customElements === "undefined") {
@@ -3,7 +3,7 @@ import { p as purify, d as domSanitiserOptions } from './domsanitiser.options.js
3
3
  import { d as defineCustomElement$3 } from './tttx-icon2.js';
4
4
  import { d as defineCustomElement$2 } from './tttx-standalone-input2.js';
5
5
 
6
- const tttxSelectBoxCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}:host{display:flex;gap:4px}.label{font-size:16px;font-style:normal;font-weight:500;line-height:normal}:host(.inline) .label{padding-top:8px}:host(.block){flex-direction:column}.dropdown-container{position:relative;display:flex;flex-direction:column;width:100%}.dropdown-container:focus-visible{outline:none}.dropdown-container:focus .dropdown-selector{border:1px solid #1479c6}.dropdown-selector,.dropdown-body{display:flex;border-radius:4px;background-color:white}.dropdown-selector{align-items:center;gap:8px;padding:8px 8px 8px 16px;cursor:pointer;border:1px solid #d5d5d5}.dropdown-selector-chevron{margin-left:auto;height:24px}.dropdown-body{display:flex;width:inherit;position:absolute;flex-direction:column;box-shadow:0px 1px 5px #1111114D;padding-bottom:8px;border:1px solid #d5d5d5;top:42px}.dropdown-body.search{max-height:410px}.dropdown-options-list{display:flex;flex-direction:column;overflow-y:auto;max-height:368px}.dropdown-option{padding:8px 8px 8px 16px;cursor:pointer}.dropdown-option:hover{background-color:#1111110D}.dropdown-option:active,.dropdown-option.selected{background-color:#ebfbfc}.placeholder{color:#9e9e9e}.searchbox{padding:8px 16px 0 16px}.searchbox tttx-standalone-input{margin-top:-4px}.hidden{display:none}";
6
+ const tttxSelectBoxCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}:host{display:flex;gap:4px}.label{font-size:16px;font-style:normal;font-weight:500;line-height:normal}:host(.inline) .label{padding-top:8px}:host(.block){flex-direction:column}.dropdown-container{position:relative;display:flex;flex-direction:column;width:100%}.dropdown-container:focus-visible{outline:none}.dropdown-container:focus .dropdown-selector{border:1px solid #1479c6}.dropdown-selector,.dropdown-body{display:flex;border-radius:4px;background-color:white}.dropdown-selector{align-items:center;gap:8px;padding:8px 8px 8px 16px;cursor:pointer;border:1px solid #d5d5d5}.dropdown-selector-chevron{margin-left:auto;height:24px}.dropdown-body{display:flex;position:fixed;z-index:1000;flex-direction:column;top:inherit;margin-top:45px;box-shadow:0px 1px 5px #1111114D;padding-bottom:8px;border:1px solid #d5d5d5}.dropdown-body.search{max-height:410px}.dropdown-options-list{display:flex;flex-direction:column;overflow-y:auto;max-height:368px}.dropdown-option{padding:8px 8px 8px 16px;cursor:pointer}.dropdown-option:hover{background-color:#1111110d}.dropdown-option:active,.dropdown-option.selected{background-color:#ebfbfc}.placeholder{color:#9e9e9e}.searchbox{padding:8px 16px 0 16px}.searchbox tttx-standalone-input{margin-top:-4px}.hidden{display:none}";
7
7
 
8
8
  const TttxSelectBox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
9
9
  constructor() {
@@ -28,10 +28,11 @@ const TttxSelectBox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
28
28
  this.open = false;
29
29
  this.toggleOpen.emit(false);
30
30
  }
31
- onDropdownClicked() {
31
+ onDropdownClicked(event) {
32
32
  this.open = !this.open;
33
33
  this.searchTerm = '';
34
34
  this.toggleOpen.emit(this.open);
35
+ this.dropDownWidth = event.target.offsetWidth;
35
36
  }
36
37
  onItemSelected(option) {
37
38
  this.selectedItem = option;
@@ -41,7 +42,7 @@ const TttxSelectBox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
41
42
  dropdownSelectorContent() {
42
43
  if (!this.selectedItem)
43
44
  return h("div", { class: "placeholder" }, this.placeholder);
44
- return h("div", null, this.selectedItem.label);
45
+ return this.selectedItem.html ? h("div", { innerHTML: this.selectedItem.html }) : h("div", null, this.selectedItem.label);
45
46
  }
46
47
  dropdownOption(option) {
47
48
  /* istanbul ignore next */
@@ -65,7 +66,7 @@ const TttxSelectBox$1 = /*@__PURE__*/ proxyCustomElement(class extends HTMLEleme
65
66
  return;
66
67
  const parsedOptionsData = typeof this.optionsData === 'string' ? JSON.parse(this.optionsData) : this.optionsData;
67
68
  const chevronIcon = this.open ? 'expand_less' : 'expand_more';
68
- return (h(Host, { class: this.inline ? 'inline' : 'block' }, this.label && h("div", { class: "label" }, this.label), h("div", { tabindex: "0", class: "dropdown-container" }, h("div", { class: "dropdown-selector", onClick: this.onDropdownClicked.bind(this) }, this.dropdownSelectorContent(), h("div", { class: "dropdown-selector-chevron" }, h("tttx-icon", { icon: chevronIcon, color: "black" }))), this.open && (h("div", { class: "dropdown-body" }, this.searchEnabled &&
69
+ return (h(Host, { class: this.inline ? 'inline' : 'block' }, this.label && h("div", { class: "label" }, this.label), h("div", { tabindex: "0", class: "dropdown-container" }, h("div", { class: "dropdown-selector", onClick: this.onDropdownClicked.bind(this) }, this.dropdownSelectorContent(), h("div", { class: "dropdown-selector-chevron" }, h("tttx-icon", { icon: chevronIcon, color: "black" }))), this.open && (h("div", { class: "dropdown-body", style: { 'width': `${this.dropDownWidth}px` } }, this.searchEnabled &&
69
70
  /* istanbul ignore next */
70
71
  h("div", { class: "searchbox" }, h("tttx-standalone-input", { type: "text", label: "", required: true, showerrorbubble: false, iconleft: 'search', onInput: this.handleSearchInput.bind(this) })), h("div", { class: "dropdown-options-list" }, parsedOptionsData.map((option) => {
71
72
  return this.dropdownOption(option);
@@ -109,6 +109,10 @@ const h = (nodeName, vnodeData, ...children) => {
109
109
  }
110
110
  }
111
111
  }
112
+ if (typeof nodeName === 'function') {
113
+ // nodeName is a functional component
114
+ return nodeName(vnodeData === null ? {} : vnodeData, vNodeChildren, vdomFnUtils);
115
+ }
112
116
  const vnode = newVNode(nodeName, null);
113
117
  vnode.$attrs$ = vnodeData;
114
118
  if (vNodeChildren.length > 0) {
@@ -151,6 +155,59 @@ const Host = {};
151
155
  * @returns whether it's a Host node or not
152
156
  */
153
157
  const isHost = (node) => node && node.$tag$ === Host;
158
+ /**
159
+ * Implementation of {@link d.FunctionalUtilities} for Stencil's VDom.
160
+ *
161
+ * Note that these functions convert from {@link d.VNode} to
162
+ * {@link d.ChildNode} to give functional component developers a friendly
163
+ * interface.
164
+ */
165
+ const vdomFnUtils = {
166
+ forEach: (children, cb) => children.map(convertToPublic).forEach(cb),
167
+ map: (children, cb) => children.map(convertToPublic).map(cb).map(convertToPrivate),
168
+ };
169
+ /**
170
+ * Convert a {@link d.VNode} to a {@link d.ChildNode} in order to present a
171
+ * friendlier public interface (hence, 'convertToPublic').
172
+ *
173
+ * @param node the virtual DOM node to convert
174
+ * @returns a converted child node
175
+ */
176
+ const convertToPublic = (node) => ({
177
+ vattrs: node.$attrs$,
178
+ vchildren: node.$children$,
179
+ vkey: node.$key$,
180
+ vname: node.$name$,
181
+ vtag: node.$tag$,
182
+ vtext: node.$text$,
183
+ });
184
+ /**
185
+ * Convert a {@link d.ChildNode} back to an equivalent {@link d.VNode} in
186
+ * order to use the resulting object in the virtual DOM. The initial object was
187
+ * likely created as part of presenting a public API, so converting it back
188
+ * involved making it 'private' again (hence, `convertToPrivate`).
189
+ *
190
+ * @param node the child node to convert
191
+ * @returns a converted virtual DOM node
192
+ */
193
+ const convertToPrivate = (node) => {
194
+ if (typeof node.vtag === 'function') {
195
+ const vnodeData = Object.assign({}, node.vattrs);
196
+ if (node.vkey) {
197
+ vnodeData.key = node.vkey;
198
+ }
199
+ if (node.vname) {
200
+ vnodeData.name = node.vname;
201
+ }
202
+ return h(node.vtag, vnodeData, ...(node.vchildren || []));
203
+ }
204
+ const vnode = newVNode(node.vtag, node.vtext);
205
+ vnode.$attrs$ = node.vattrs;
206
+ vnode.$children$ = node.vchildren;
207
+ vnode.$key$ = node.vkey;
208
+ vnode.$name$ = node.vname;
209
+ return vnode;
210
+ };
154
211
  /**
155
212
  * Parse a new property value for a given property type.
156
213
  *
@@ -1443,6 +1500,7 @@ const bootstrapLazy = (lazyBundles, options = {}) => {
1443
1500
  // Fallback appLoad event
1444
1501
  endBootstrap();
1445
1502
  };
1503
+ const Fragment = (_, children) => children;
1446
1504
  const addHostEventListeners = (elm, hostRef, listeners, attachParentListeners) => {
1447
1505
  if (listeners) {
1448
1506
  listeners.map(([flags, name, method]) => {
@@ -1594,4 +1652,4 @@ const flush = () => {
1594
1652
  const nextTick = /*@__PURE__*/ (cb) => promiseResolve().then(cb);
1595
1653
  const writeTask = /*@__PURE__*/ queueTask(queueDomWrites, true);
1596
1654
 
1597
- export { Host as H, bootstrapLazy as b, createEvent as c, getElement as g, h, promiseResolve as p, registerInstance as r, setNonce as s };
1655
+ 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 };
@@ -1,5 +1,5 @@
1
- import { p as promiseResolve, b as bootstrapLazy } from './index-1c711ead.js';
2
- export { s as setNonce } from './index-1c711ead.js';
1
+ import { p as promiseResolve, b as bootstrapLazy } from './index-6a372ea6.js';
2
+ export { s as setNonce } from './index-6a372ea6.js';
3
3
 
4
4
  /*
5
5
  Stencil Client Patch Esm v2.22.3 | MIT Licensed | https://stenciljs.com
@@ -11,7 +11,7 @@ const patchEsm = () => {
11
11
  const defineCustomElements = (win, options) => {
12
12
  if (typeof window === 'undefined') return Promise.resolve();
13
13
  return patchEsm().then(() => {
14
- return bootstrapLazy([["tttx-dialog-box",[[1,"tttx-dialog-box",{"data":[1025],"size":[1],"open":[1028],"elementSize":[32]},[[9,"resize","handleResize"]]]]],["tttx-select-box",[[1,"tttx-select-box",{"optionsData":[1,"options-data"],"label":[1],"inline":[4],"placeholder":[1],"searchEnabled":[4,"search-enabled"],"open":[32],"selectedItem":[32],"searchTerm":[32]},[[0,"closeSelectBox","handleCloseSelectBox"],[0,"blur","handleBlur"]]]]],["tttx-tree-view",[[1,"tttx-tree-view",{"data":[1040],"treeData":[32]}]]],["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"],"defaultFilterOptions":[1,"default-filter-options"],"popoverWidth":[1,"popover-width"],"showPopover":[32],"displayedFilterSettings":[32],"selectedFilters":[32],"filterSearchTerm":[32],"allSelected":[32]},[[0,"closeFilter","handleCloseFilter"]]]]],["tttx-list",[[1,"tttx-list",{"data":[1025],"name":[1],"_data":[32],"setAllCheckboxes":[64]}]]],["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]},[[0,"closeSorter","handleCloseSorter"]]]]],["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-qrcode",[[1,"tttx-qrcode",{"link":[1025],"size":[1026]}]]],["tttx-tag",[[1,"tttx-tag",{"text":[1],"color":[1]}]]],["tttx-toolbar",[[1,"tttx-toolbar",{"border":[4],"viewSize":[32]},[[9,"resize","handleResize"]]]]],["tttx-icon",[[1,"tttx-icon",{"icon":[1],"color":[1]}]]],["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-button",[[1,"tttx-button",{"notext":[4],"icon":[1],"iconposition":[1],"iconcolor":[1025],"design":[1]}]]]], options);
14
+ return bootstrapLazy([["tttx-dialog-box",[[1,"tttx-dialog-box",{"data":[1025],"size":[1],"open":[1028],"elementSize":[32]},[[9,"resize","handleResize"]]]]],["tttx-select-box",[[1,"tttx-select-box",{"optionsData":[1,"options-data"],"label":[1],"inline":[4],"placeholder":[1],"searchEnabled":[4,"search-enabled"],"open":[32],"selectedItem":[32],"searchTerm":[32]},[[0,"closeSelectBox","handleCloseSelectBox"],[0,"blur","handleBlur"]]]]],["tttx-tree-view",[[1,"tttx-tree-view",{"data":[1040],"treeData":[32]}]]],["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"],"defaultFilterOptions":[1,"default-filter-options"],"popoverWidth":[1,"popover-width"],"showPopover":[32],"displayedFilterSettings":[32],"selectedFilters":[32],"filterSearchTerm":[32],"allSelected":[32]},[[0,"closeFilter","handleCloseFilter"]]]]],["tttx-list",[[1,"tttx-list",{"data":[1025],"name":[1],"_data":[32]}]]],["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]},[[0,"closeSorter","handleCloseSorter"]]]]],["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-qrcode",[[1,"tttx-qrcode",{"link":[1025],"size":[1026]}]]],["tttx-tag",[[1,"tttx-tag",{"text":[1],"color":[1]}]]],["tttx-toolbar",[[1,"tttx-toolbar",{"border":[4],"viewSize":[32]},[[9,"resize","handleResize"]]]]],["tttx-icon",[[1,"tttx-icon",{"icon":[1],"color":[1]}]]],["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-button",[[1,"tttx-button",{"notext":[4],"icon":[1],"iconposition":[1],"iconcolor":[1025],"design":[1]}]]]], options);
15
15
  });
16
16
  };
17
17
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-1c711ead.js';
1
+ import { r as registerInstance, h, H as Host } from './index-6a372ea6.js';
2
2
 
3
3
  const tttxButtonCss = ".material-symbols-rounded{font-variation-settings:\"FILL\" 1, \"wght\" 400, \"GRAD\" 0, \"opsz\" 24}button{cursor:pointer}.button{font-family:Roboto, serif;box-sizing:border-box;height:36px;min-width:36px;padding:0;margin:0;background:transparent;color:#212121;border:1px solid #c8c8c8;border-radius:4px;text-transform:uppercase;display:flex;justify-content:left;align-items:center;font-size:14px;font-weight:400}.button-content{display:block;padding:0 16px}.icon-left,.icon-right{margin-top:4px}.iconleft{padding-left:8px}.iconleft .button-content{padding-left:4px}.iconright{padding-right:8px}.iconright .button-content{padding-right:4px}.notext{padding:0 6px}.button:active{background:rgba(17, 17, 17, 0.2);border:1px solid #d5d5d5}.primary{background:#1479c6;border:1px solid #1479c6;color:white}.primary:active{background:#1464a2;border:1px solid #1464a2}.borderless{background:transparent;border:none;color:#212121}.borderless:active{background:rgba(17, 17, 17, 0.2);border:none}.borderless-circle{background:transparent;border:none;color:#212121;border-radius:50%}.borderless-circle:active{border:none}.borderless-circle:focus{border-color:transparent}.danger{background:#dc0000;border:1px solid #dc0000;color:white}.danger:active{background:#b00000;border:1px solid #b00000}.disabled{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}.disabled:active{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}@media (hover: hover){.button:hover{background:rgba(17, 17, 17, 0.1);border:1px solid #d5d5d5}.primary:hover{background:#146eb3;border:1px solid #146eb3}.borderless:hover{background:rgba(17, 17, 17, 0.1);border:none}.borderless-circle:hover{background:rgba(17, 17, 17, 0.1);border:none}.danger:hover{background:#c60000;border:1px solid #c60000}.disabled:hover{background:#aeaeae;border:none;color:#4c4c4c;cursor:not-allowed}}:host{display:inline-block}tttx-icon{cursor:inherit}.spacingleft{margin-left:8px}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, g as getElement } from './index-1c711ead.js';
1
+ import { r as registerInstance, c as createEvent, h, g as getElement } from './index-6a372ea6.js';
2
2
  import { p as purify, d as domSanitiserOptions } from './domsanitiser.options-97a33389.js';
3
3
  import './_commonjsHelpers-9943807e.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-1c711ead.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host, g as getElement } from './index-6a372ea6.js';
2
2
 
3
3
  const tttxFilterCss = ".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}.filter-container{background-color:white;position:relative}.filter-container .filter-button{display:inline-flex;justify-content:center;align-items:center;font-size:14px;font-weight:400;font-family:\"Roboto\", serif;text-transform:uppercase;color:#212121;border:1px solid #d5d5d5;border-radius:4px;background:transparent;height:36px;width:95px;margin:0;padding-right:16px;cursor:pointer}@media (max-width: 475px){.filter-container .filter-button{padding-left:4px}}.filter-container .filter-button .filter-icon{padding-left:8px;padding-right:4px}.filter-container .filter-button.--list-icon{font-size:0;width:36px;height:36px;padding:0}.filter-container .filter-button.--list-icon .filter-icon{padding:0}.filter-container .filter-button.--list-icon:hover{background:#e3e3e3}.filter-container .filter-button.--table-icon{font-size:0;width:36px;height:36px;padding:0;border:none}.filter-container .filter-button.--table-icon .filter-icon{padding:0;width:24px;height:24px}.filter-container .filter-button.--table-icon:hover{background:#e3e3e3;border-radius:50%;width:36px;height:36px}.filter-container .filter-button:hover{background:#e3e3e3}.filter-container .filter-popover-container{display:flex;flex-direction:column;gap:8px;border-radius:4px;box-shadow:0px 1px 5px #1111114D;position:absolute;top:36px;left:0px;background-color:white;padding:8px 16px}.filter-container .filter-popover-container .filter-header{color:#757575;text-transform:uppercase;font-size:14px;font-weight:500;font-family:\"Roboto\", serif;padding-top:4px;padding-bottom:5px}.filter-container .filter-popover-container .filter-options-container{display:flex;flex-direction:column;gap:4px;border-top:1px solid #d5d5d5;border-bottom:1px solid #d5d5d5;padding-bottom:8px}.filter-container .filter-popover-container .filter-option{display:flex;flex-direction:row;align-items:center;min-height:36px;padding-left:8px}.filter-container .filter-popover-container .filter-option .select-all-icon{padding-right:6px}.filter-container .filter-popover-container .filter-option .checkbox-icon{padding-right:8px}.filter-container .filter-popover-container .filter-option .filter-label{padding-left:8px;padding-bottom:3px;font-size:16px;font-weight:500;font-family:\"Roboto\", serif}.filter-container .filter-popover-container .filter-option:first-child{padding-top:8px}.filter-container .filter-popover-container .filter-popover-button-container{display:flex;justify-content:flex-end;align-items:center}.filter-container .filter-popover-container .filter-popover-button-container .close-button{height:36px;width:74px;background-color:white;border:1px solid #d5d5d5;border-radius:4px;text-transform:uppercase;margin-right:8px;font-size:14px;font-weight:400;font-family:\"Roboto\", serif;color:#212121}.filter-container .filter-popover-container .filter-popover-button-container .apply-button{height:36px;width:73px;background-color:#1479c6;color:white;border-radius:4px;border:none;text-transform:uppercase;font-size:14px;font-weight:400;font-family:\"Roboto\", serif}.filter-container .filter-popover-container.--with-search-field .filter-header{border-bottom:1px solid #d5d5d5}.filter-container .filter-popover-container.--with-search-field .search-field-container{position:relative;color:#d5d5d5;height:36px}.filter-container .filter-popover-container.--with-search-field .search-field-container .search-icon{position:absolute;top:6px;left:8px}.filter-container .filter-popover-container.--with-search-field .search-field-container .search-input{padding-left:36px;border:1px solid #d5d5d5;border-radius:4px;height:36px;width:100%;font-size:16px;font-family:\"Roboto\", serif;font-weight:500;box-sizing:border-box}.filter-container .filter-popover-container.--with-search-field .search-field-container .search-input:focus-visible,.filter-container .filter-popover-container.--with-search-field .search-field-container .search-input:focus{outline:none;border:1px solid #1479c6}.filter-container .filter-popover-container.--with-search-field .search-field-container .search-input::placeholder{color:#9e9e9e;font-size:16px;font-family:\"Roboto\", serif;font-weight:500}";
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, c as createEvent, h, H as Host } from './index-1c711ead.js';
1
+ import { r as registerInstance, c as createEvent, h, H as Host } from './index-6a372ea6.js';
2
2
  import { p as purify, d as domSanitiserOptions } from './domsanitiser.options-97a33389.js';
3
3
  import './_commonjsHelpers-9943807e.js';
4
4
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-1c711ead.js';
1
+ import { r as registerInstance, h, H as Host } from './index-6a372ea6.js';
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
 
@@ -1,4 +1,4 @@
1
- import { r as registerInstance, h, H as Host } from './index-1c711ead.js';
1
+ import { r as registerInstance, h, H as Host } from './index-6a372ea6.js';
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