@siemens/ix 1.1.0 → 1.1.1

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 (73) hide show
  1. package/dist/cjs/ix-application-header.cjs.entry.js +2 -2
  2. package/dist/cjs/ix-event-list_2.cjs.entry.js +3 -3
  3. package/dist/cjs/ix-map-navigation_2.cjs.entry.js +4 -4
  4. package/dist/cjs/ix-select_2.cjs.entry.js +45 -22
  5. package/dist/cjs/loader.cjs.js +1 -1
  6. package/dist/cjs/siemens-ix.cjs.js +1 -1
  7. package/dist/collection/components/animated-tabs/animated-tabs.js +3 -3
  8. package/dist/collection/components/application-header/application-header.css +1 -0
  9. package/dist/collection/components/application-header/application-header.js +1 -1
  10. package/dist/collection/components/category-filter/category-filter.js +3 -3
  11. package/dist/collection/components/date-picker/date-picker.js +2 -2
  12. package/dist/collection/components/dropdown/dropdown.js +3 -3
  13. package/dist/collection/components/event-list/event-list.css +0 -3
  14. package/dist/collection/components/event-list-item/event-list-item.css +2 -3
  15. package/dist/collection/components/event-list-item/event-list-item.js +2 -2
  16. package/dist/collection/components/icon-button/icon-button.js +1 -1
  17. package/dist/collection/components/map-navigation/map-navigation.css +1 -19
  18. package/dist/collection/components/map-navigation/map-navigation.js +5 -5
  19. package/dist/collection/components/menu-item/menu-item.js +1 -1
  20. package/dist/collection/components/select/select.js +48 -24
  21. package/dist/collection/components/split-button/split-button.js +3 -3
  22. package/dist/collection/components/time-picker/time-picker.js +2 -2
  23. package/dist/collection/components/toggle/toggle.js +2 -2
  24. package/dist/components/application-header.js +2 -2
  25. package/dist/components/ix-event-list-item.js +2 -2
  26. package/dist/components/ix-event-list.js +1 -1
  27. package/dist/components/ix-map-navigation.js +11 -5
  28. package/dist/components/ix-select.js +47 -23
  29. package/dist/esm/ix-application-header.entry.js +2 -2
  30. package/dist/esm/ix-event-list_2.entry.js +3 -3
  31. package/dist/esm/ix-map-navigation_2.entry.js +4 -4
  32. package/dist/esm/ix-select_2.entry.js +45 -22
  33. package/dist/esm/loader.js +1 -1
  34. package/dist/esm/siemens-ix.js +1 -1
  35. package/dist/siemens-ix/p-0a85cdff.entry.js +1 -0
  36. package/dist/siemens-ix/p-0e3aab52.entry.js +1 -0
  37. package/dist/siemens-ix/p-25fda9f7.entry.js +1 -0
  38. package/dist/siemens-ix/p-a8b6454f.entry.js +1 -0
  39. package/dist/siemens-ix/siemens-ix.css +44 -31
  40. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  41. package/dist/types/components/animated-tabs/animated-tabs.d.ts +1 -1
  42. package/dist/types/components/category-filter/category-filter.d.ts +2 -2
  43. package/dist/types/components/date-picker/date-picker.d.ts +2 -2
  44. package/dist/types/components/dropdown/dropdown.d.ts +1 -1
  45. package/dist/types/components/event-list-item/event-list-item.d.ts +1 -1
  46. package/dist/types/components/icon-button/icon-button.d.ts +1 -1
  47. package/dist/types/components/map-navigation/map-navigation.d.ts +2 -2
  48. package/dist/types/components/menu-item/menu-item.d.ts +1 -1
  49. package/dist/types/components/select/select.d.ts +8 -5
  50. package/dist/types/components/split-button/split-button.d.ts +1 -1
  51. package/dist/types/components/time-picker/time-picker.d.ts +1 -1
  52. package/dist/types/components/toggle/toggle.d.ts +1 -1
  53. package/dist/types/components.d.ts +21 -35
  54. package/package.json +1 -1
  55. package/scss/components/_button-group.scss +2 -0
  56. package/scss/components/_buttons.scss +5 -0
  57. package/scss/components/_checkboxes.scss +19 -16
  58. package/scss/components/_radiobuttons.scss +12 -12
  59. package/src/components/animated-tabs/readme.md +4 -5
  60. package/src/components/category-filter/readme.md +13 -14
  61. package/src/components/date-picker/readme.md +2 -2
  62. package/src/components/dropdown/readme.md +11 -11
  63. package/src/components/event-list-item/readme.md +7 -7
  64. package/src/components/icon-button/readme.md +1 -1
  65. package/src/components/map-navigation/readme.md +2 -2
  66. package/src/components/menu-item/readme.md +8 -8
  67. package/src/components/split-button/readme.md +11 -11
  68. package/src/components/time-picker/readme.md +12 -12
  69. package/src/components/toggle/readme.md +10 -10
  70. package/dist/siemens-ix/p-1686ce8c.entry.js +0 -1
  71. package/dist/siemens-ix/p-a2e33741.entry.js +0 -1
  72. package/dist/siemens-ix/p-a3760331.entry.js +0 -1
  73. package/dist/siemens-ix/p-ca8a41ea.entry.js +0 -1
@@ -99,29 +99,11 @@
99
99
  height: 100%;
100
100
  width: 100%;
101
101
  padding: 0 1rem;
102
+ --theme-app-header-logo--color: var(--theme-color-std-text);
102
103
  }
103
104
  :host .map-nav-header .map-nav-header-brand button {
104
105
  margin-left: 1rem;
105
106
  }
106
- :host .map-nav-header .map-nav-header-brand .map-nav-brand-logo {
107
- min-width: 4.75rem;
108
- -webkit-margin-end: 3.5rem;
109
- margin-inline-end: 3.5rem;
110
- }
111
- :host .map-nav-header .map-nav-header-brand .map-nav-brand-title {
112
- -webkit-font-smoothing: antialiased;
113
- -moz-osx-font-smooting: grayscale;
114
- font-family: Siemens Sans, sans-serif;
115
- font-size: 1rem;
116
- font-weight: 700;
117
- line-height: 1.5em;
118
- color: var(--theme-color-std-text);
119
- overflow: hidden;
120
- text-overflow: ellipsis;
121
- white-space: nowrap;
122
- color: var(--theme-map-navigation-header--color);
123
- flex-grow: 1;
124
- }
125
107
  :host .map-nav-header-content {
126
108
  display: flex;
127
109
  height: 3.5rem;
@@ -84,7 +84,7 @@ export class MapNavigation {
84
84
  }
85
85
  /**
86
86
  * Open a overlay inside content area
87
- * @deprecated will get removed with next major release in favor of slot based approach
87
+ * @deprecated Will be removed in 2.0.0. Use slot based approach
88
88
  *
89
89
  * @param name
90
90
  * @param component
@@ -113,7 +113,7 @@ export class MapNavigation {
113
113
  }
114
114
  /**
115
115
  * Close current shown overlay
116
- * @deprecated will get removed with next major release in favor of slot based approach
116
+ * @deprecated Will be removed in 2.0.0. Use slot based approach
117
117
  */
118
118
  async closeOverlay() {
119
119
  anime({
@@ -134,7 +134,7 @@ export class MapNavigation {
134
134
  });
135
135
  }
136
136
  render() {
137
- return (h(Host, null, h("div", { id: "menu-placeholder" }), h("div", { class: "map-nav" }, h("div", { class: "map-nav-sidebar" }, h("div", { class: "map-nav-header" }, h("div", { class: "map-nav-header-brand" }, h("div", { class: "map-nav-brand-logo" }, h("slot", { name: "logo" })), h("span", { class: "map-nav-brand-title" }, this.applicationName))), h("div", { class: "map-nav-sidebar-content" }, h("div", { class: "map-nav-sidebar-static-content" }, h("div", { class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: "context-menu", ghost: true, size: "24", variant: "Secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { class: "map-nav-sidebar-user-content" }, h("slot", { name: "sidebar-content" })))), h("div", { class: "content" }, h("div", { class: "map-nav-header-content bg-2" }, h("slot", { name: "content-header" })), h("main", null, h("slot", null))))));
137
+ return (h(Host, null, h("div", { id: "menu-placeholder" }), h("div", { class: "map-nav" }, h("div", { class: "map-nav-sidebar" }, h("div", { class: "map-nav-header" }, h("ix-application-header", { name: this.applicationName, class: "map-nav-header-brand" }, h("slot", { name: "logo" }))), h("div", { class: "map-nav-sidebar-content" }, h("div", { class: "map-nav-sidebar-static-content" }, h("div", { class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: "context-menu", ghost: true, size: "24", variant: "Secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { class: "map-nav-sidebar-user-content" }, h("slot", { name: "sidebar-content" })))), h("div", { class: "content" }, h("div", { class: "map-nav-header-content bg-2" }, h("slot", { name: "content-header" })), h("main", null, h("slot", null))))));
138
138
  }
139
139
  static get is() { return "ix-map-navigation"; }
140
140
  static get encapsulation() { return "scoped"; }
@@ -286,7 +286,7 @@ export class MapNavigation {
286
286
  "text": "Open a overlay inside content area",
287
287
  "tags": [{
288
288
  "name": "deprecated",
289
- "text": "will get removed with next major release in favor of slot based approach"
289
+ "text": "Will be removed in 2.0.0. Use slot based approach"
290
290
  }, {
291
291
  "name": "param",
292
292
  "text": "name"
@@ -317,7 +317,7 @@ export class MapNavigation {
317
317
  "text": "Close current shown overlay",
318
318
  "tags": [{
319
319
  "name": "deprecated",
320
- "text": "will get removed with next major release in favor of slot based approach"
320
+ "text": "Will be removed in 2.0.0. Use slot based approach"
321
321
  }]
322
322
  }
323
323
  }
@@ -79,7 +79,7 @@ export class MenuItem {
79
79
  "docs": {
80
80
  "tags": [{
81
81
  "name": "deprecated",
82
- "text": "- replaced by slot based implementation"
82
+ "text": "Will be removed in 2.0.0. Replaced by slot based implementation"
83
83
  }],
84
84
  "text": "Caution: this is no longer working. Please use slot=\"bottom\" instead.\n\nPlace tab on bottom"
85
85
  },
@@ -6,7 +6,7 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- import { h, Host } from '@stencil/core';
9
+ import { h, Host, } from '@stencil/core';
10
10
  export class Select {
11
11
  constructor() {
12
12
  this.selectedIndices = [];
@@ -25,7 +25,8 @@ export class Select {
25
25
  this.isDropdownEmpty = false;
26
26
  this.hasFocus = false;
27
27
  this.navigationItem = undefined;
28
- this.inputText = undefined;
28
+ this.inputFilterText = undefined;
29
+ this.inputValue = undefined;
29
30
  }
30
31
  get items() {
31
32
  return Array.from(this.hostElement.querySelectorAll('ix-select-item'));
@@ -43,9 +44,15 @@ export class Select {
43
44
  return this.mode === 'multiple';
44
45
  }
45
46
  watchSelectedIndices(newId) {
46
- if (newId) {
47
+ if (!newId) {
48
+ this.selectValue([]);
49
+ return;
50
+ }
51
+ if (Array.isArray(newId)) {
47
52
  this.selectValue([...newId]);
53
+ return;
48
54
  }
55
+ this.selectValue([newId]);
49
56
  }
50
57
  onItemClicked(event) {
51
58
  const newId = event.detail;
@@ -87,10 +94,16 @@ export class Select {
87
94
  this.addItem.emit(value);
88
95
  }
89
96
  selectValue(ids) {
97
+ var _a;
90
98
  this.items.forEach((item) => {
91
99
  item.selected = ids.some((i) => i === item.value);
92
100
  });
93
101
  this.value = this.selectedItems.map((item) => item.label);
102
+ if (this.isSingleMode) {
103
+ this.inputValue = ((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) ? this.value[0] : null;
104
+ return;
105
+ }
106
+ this.inputValue = null;
94
107
  }
95
108
  componentWillLoad() {
96
109
  if (this.selectedIndices) {
@@ -99,6 +112,23 @@ export class Select {
99
112
  : [this.selectedIndices]);
100
113
  }
101
114
  }
115
+ componentDidLoad() {
116
+ this.labelMutationObserver = new MutationObserver(() => {
117
+ this.selectValue(Array.isArray(this.selectedIndices)
118
+ ? this.selectedIndices
119
+ : [this.selectedIndices]);
120
+ });
121
+ this.labelMutationObserver.observe(this.hostElement, {
122
+ subtree: true,
123
+ attributes: true,
124
+ attributeFilter: ['label'],
125
+ });
126
+ }
127
+ disconnectedCallback() {
128
+ if (this.labelMutationObserver) {
129
+ this.labelMutationObserver.disconnect();
130
+ }
131
+ }
102
132
  itemExists(item) {
103
133
  return this.items.find((i) => i.label === item);
104
134
  }
@@ -129,8 +159,8 @@ export class Select {
129
159
  }
130
160
  async onEnterNavigation() {
131
161
  var _a, _b;
132
- if (this.editable && !this.itemExists(this.inputText)) {
133
- this.emitAddItem(this.inputText);
162
+ if (this.editable && !this.itemExists(this.inputFilterText)) {
163
+ this.emitAddItem(this.inputFilterText);
134
164
  this.navigationItem = this.items[this.items.length - 1];
135
165
  }
136
166
  (_a = this.navigationItem) === null || _a === void 0 ? void 0 : _a.onItemClick();
@@ -158,11 +188,11 @@ export class Select {
158
188
  });
159
189
  }
160
190
  filterItemsWithTypeahead() {
161
- this.inputText = this.inputRef.value;
162
- if (this.inputText) {
191
+ this.inputFilterText = this.inputRef.value;
192
+ if (this.inputFilterText) {
163
193
  this.items.forEach((item) => {
164
194
  item.classList.remove('d-none');
165
- if (!item.label.toLowerCase().includes(this.inputText.toLowerCase())) {
195
+ if (!item.label.toLowerCase().includes(this.inputFilterText.toLowerCase())) {
166
196
  item.classList.add('d-none');
167
197
  }
168
198
  });
@@ -179,7 +209,7 @@ export class Select {
179
209
  }
180
210
  clearInput() {
181
211
  this.inputRef.value = '';
182
- this.inputText = '';
212
+ this.inputFilterText = '';
183
213
  }
184
214
  clear() {
185
215
  this.clearInput();
@@ -187,13 +217,6 @@ export class Select {
187
217
  this.selectedIndices = [];
188
218
  this.itemSelectionChange.emit(null);
189
219
  }
190
- getInputValue() {
191
- var _a;
192
- if (this.isSingleMode) {
193
- return ((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) ? this.value[0] : null;
194
- }
195
- return null;
196
- }
197
220
  render() {
198
221
  var _a, _b, _c;
199
222
  return (h(Host, null, h("div", { class: {
@@ -215,10 +238,10 @@ export class Select {
215
238
  'allow-clear': this.allowClear && !!((_b = this.value) === null || _b === void 0 ? void 0 : _b.length),
216
239
  }, placeholder: this.editable
217
240
  ? this.i18nPlaceholderEditable
218
- : this.i18nPlaceholder, value: this.getInputValue(), ref: (ref) => (this.inputRef = ref), onInput: () => this.filterItemsWithTypeahead() }), this.disabled || this.readonly ? null : (h("div", { class: "chevron-down-container", ref: (ref) => {
241
+ : this.i18nPlaceholder, value: this.inputValue, ref: (ref) => (this.inputRef = ref), onInput: () => this.filterItemsWithTypeahead() }), this.disabled || this.readonly ? null : (h("div", { class: "chevron-down-container", ref: (ref) => {
219
242
  if (this.editable)
220
243
  this.dropdownWrapperRef = ref;
221
- } }, h("ix-icon", { class: "chevron", name: "chevron-down-small" }))))), this.allowClear && (((_c = this.value) === null || _c === void 0 ? void 0 : _c.length) || this.inputText) ? (h("ix-icon-button", { class: "clear", icon: "clear", ghost: true, oval: true, size: "24", onClick: (e) => {
244
+ } }, h("ix-icon", { class: "chevron", name: "chevron-down-small" }))))), this.allowClear && (((_c = this.value) === null || _c === void 0 ? void 0 : _c.length) || this.inputFilterText) ? (h("ix-icon-button", { class: "clear", icon: "clear", ghost: true, oval: true, size: "24", onClick: (e) => {
222
245
  e.preventDefault();
223
246
  e.stopPropagation();
224
247
  this.clear();
@@ -228,13 +251,13 @@ export class Select {
228
251
  'd-none': this.disabled ||
229
252
  this.readonly ||
230
253
  (this.isDropdownEmpty && !this.editable),
231
- }, anchor: this.dropdownAnchor, trigger: this.dropdownWrapperRef, onShowChanged: (e) => this.dropdownVisibilityChanged(e), placement: "bottom", positioningStrategy: 'fixed', adjustDropdownWidthToReferenceWidth: true }, h("div", { class: "select-list-header" }, this.i18nSelectListHeader), h("slot", null), h("div", { ref: (ref) => (this.addItemRef = ref), class: "d-contents" }), this.itemExists(this.inputText) ? ('') : (h("ix-dropdown-item", { "data-testid": "add-item", icon: "plus", class: {
254
+ }, anchor: this.dropdownAnchor, trigger: this.dropdownWrapperRef, onShowChanged: (e) => this.dropdownVisibilityChanged(e), placement: "bottom", positioningStrategy: 'fixed', adjustDropdownWidthToReferenceWidth: true }, h("div", { class: "select-list-header" }, this.i18nSelectListHeader), h("slot", null), h("div", { ref: (ref) => (this.addItemRef = ref), class: "d-contents" }), this.itemExists(this.inputFilterText) ? ('') : (h("ix-dropdown-item", { "data-testid": "add-item", icon: "plus", class: {
232
255
  'add-item': true,
233
- 'd-none': !(this.editable && this.inputText),
234
- }, label: this.inputText, onItemClick: (e) => {
256
+ 'd-none': !(this.editable && this.inputFilterText),
257
+ }, label: this.inputFilterText, onItemClick: (e) => {
235
258
  e.preventDefault();
236
259
  e.stopPropagation();
237
- this.emitAddItem(this.inputText);
260
+ this.emitAddItem(this.inputFilterText);
238
261
  } })))));
239
262
  }
240
263
  static get is() { return "ix-select"; }
@@ -424,7 +447,8 @@ export class Select {
424
447
  "isDropdownEmpty": {},
425
448
  "hasFocus": {},
426
449
  "navigationItem": {},
427
- "inputText": {}
450
+ "inputFilterText": {},
451
+ "inputValue": {}
428
452
  };
429
453
  }
430
454
  static get events() {
@@ -466,7 +490,7 @@ export class Select {
466
490
  "propName": "selectedIndices",
467
491
  "methodName": "watchSelectedIndices"
468
492
  }, {
469
- "propName": "inputText",
493
+ "propName": "inputFilterText",
470
494
  "methodName": "watchInputText"
471
495
  }];
472
496
  }
@@ -6,8 +6,8 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- import { createPopper } from '@popperjs/core';
10
- import { h, Host } from '@stencil/core';
9
+ import { createPopper, } from '@popperjs/core';
10
+ import { h, Host, } from '@stencil/core';
11
11
  import { getButtonClasses } from '../button/base-button';
12
12
  export class SplitButton {
13
13
  constructor() {
@@ -134,7 +134,7 @@ export class SplitButton {
134
134
  "docs": {
135
135
  "tags": [{
136
136
  "name": "deprecated",
137
- "text": "use ghost property"
137
+ "text": "Will be removed in 2.0.0. Use ghost property"
138
138
  }],
139
139
  "text": "Button invisible"
140
140
  },
@@ -6,7 +6,7 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- import { h, Host } from '@stencil/core';
9
+ import { h, Host, } from '@stencil/core';
10
10
  import { DateTime } from 'luxon';
11
11
  export class TimePicker {
12
12
  constructor() {
@@ -172,7 +172,7 @@ export class TimePicker {
172
172
  "docs": {
173
173
  "tags": [{
174
174
  "name": "deprecated",
175
- "text": "- will get removed with next major release"
175
+ "text": "Will be removed in 2.0.0"
176
176
  }],
177
177
  "text": ""
178
178
  },
@@ -6,7 +6,7 @@
6
6
  * This source code is licensed under the MIT license found in the
7
7
  * LICENSE file in the root directory of this source tree.
8
8
  */
9
- import { h, Host } from '@stencil/core';
9
+ import { h, Host, } from '@stencil/core';
10
10
  export class CuiToggle {
11
11
  constructor() {
12
12
  this.checked = false;
@@ -130,7 +130,7 @@ export class CuiToggle {
130
130
  "docs": {
131
131
  "tags": [{
132
132
  "name": "deprecated",
133
- "text": "- Has no effect on the rendered control"
133
+ "text": "Will be removed in 2.0.0"
134
134
  }],
135
135
  "text": "Basic and status colors from color palette"
136
136
  },
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
2
 
3
- const applicationHeaderCss = ":host{display:flex;align-items:center;position:relative;width:100%;height:2.75rem;padding-left:1rem;color:var(--theme-app-header-logo--color);background-color:var(--theme-app-header--background);border-bottom:var(--theme-app-header--border-width) solid var(--theme-app-header--border-color)}:host .name{margin-left:2.5rem;margin-right:2.5rem}:host .logo{display:inline-flex;align-items:center;position:relative;height:32px;overflow:hidden}";
3
+ const applicationHeaderCss = ":host{display:flex;align-items:center;position:relative;width:100%;height:2.75rem;padding-left:1rem;color:var(--theme-app-header-logo--color);background-color:var(--theme-app-header--background);border-bottom:var(--theme-app-header--border-width) solid var(--theme-app-header--border-color)}:host .name{margin-left:2.5rem;margin-right:2.5rem}:host .logo{display:inline-flex;align-items:center;position:relative;height:32px;overflow:hidden;line-height:0rem}";
4
4
 
5
5
  const ApplicationHeader = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
6
  constructor() {
@@ -20,7 +20,7 @@ const ApplicationHeader = /*@__PURE__*/ proxyCustomElement(class extends HTMLEle
20
20
  }
21
21
  }
22
22
  render() {
23
- return (h(Host, null, h("div", { class: "logo" }, h("slot", { name: "logo" })), h("span", { class: "name" }, this.name), h("slot", null)));
23
+ return (h(Host, null, h("div", { class: "logo" }, h("slot", { name: "logo" })), h("div", { class: "name" }, this.name), h("slot", null)));
24
24
  }
25
25
  get host() { return this; }
26
26
  static get style() { return applicationHeaderCss; }
@@ -1,6 +1,6 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h } from '@stencil/core/internal/client';
2
2
 
3
- const eventListItemCss = ".ix-event-list-item{display:flex;align-items:center;position:relative;height:2.5rem;max-height:2.5rem;border-radius:0.25rem;background-color:var(--theme-event-list-item-bg);overflow:hidden;cursor:pointer;margin-bottom:0.5rem}.ix-event-list-item:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item:not(.disabled):not(:disabled):hover{background-color:var(--theme-event-item--background--hover)}.ix-event-list-item:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item:not(.disabled):not(:disabled):active{background-color:var(--theme-event-item--background--active)}.ix-event-list-item .indicator{height:100%;width:0.5rem;max-width:0.5rem;min-width:0.5rem;border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem}.ix-event-list-item .indicator-empty{border:var(--theme-weak-bdr-1);border-right:none}.ix-event-list-item .event-list-item-container{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-grow:1;width:calc(100% - (1rem + 0.5rem));height:100%;border:0.062rem solid;border-color:var(--theme-event-list-item-border);border-top-left-radius:0;border-top-right-radius:0.25rem;border-bottom-left-radius:0;border-bottom-right-radius:0.25rem;border-left:none;padding-left:1rem}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled):hover{border-color:var(--theme-event-item--border--hover)}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled):active{border-color:var(--theme-event-item--border--active)}.ix-event-list-item.selected:not(:active,.active) .event-list-item-container{background-color:var(--theme-event-item--background--selected);border-color:var(--theme-event-item--border--selected)}.ix-event-list-item[disabled],.ix-event-list-item.disabled{pointer-events:none}.ix-event-list-item[disabled] .event-list-item-container,.ix-event-list-item.disabled .event-list-item-container{background-color:var(--theme-event-item--background--disabled);border-color:var(--theme-event-item--border--disabled)}.ix-event-list-item .chevron-icon{display:none;margin-left:auto;margin-right:0.5rem;opacity:0.6;align-self:center}.ix-event-list-item .event-content{display:flex;align-items:center;width:100%;height:100%;overflow:hidden}";
3
+ const eventListItemCss = ".ix-event-list-item{display:flex;align-items:center;position:relative;height:2.5rem;max-height:2.5rem;border-radius:0.25rem;background-color:var(--theme-event-item--background);overflow:hidden;cursor:pointer;margin-bottom:0.5rem}.ix-event-list-item:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item:not(.disabled):not(:disabled):hover{background-color:var(--theme-event-item--background--hover)}.ix-event-list-item:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item:not(.disabled):not(:disabled):active{background-color:var(--theme-event-item--background--active)}.ix-event-list-item .indicator{height:100%;width:0.5rem;max-width:0.5rem;min-width:0.5rem;border-top-left-radius:0.25rem;border-bottom-left-radius:0.25rem}.ix-event-list-item .indicator-empty{border:var(--theme-weak-bdr-1);border-right:none}.ix-event-list-item .event-list-item-container{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-grow:1;width:calc(100% - (1rem + 0.5rem));height:100%;border:0.062rem solid;border-color:var(--theme-event-item--border);border-top-left-radius:0;border-top-right-radius:0.25rem;border-bottom-left-radius:0;border-bottom-right-radius:0.25rem;border-left:none;padding-left:1rem}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled):hover{border-color:var(--theme-event-item--border--hover)}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled){cursor:pointer}.ix-event-list-item .event-list-item-container:not(.disabled):not(:disabled):active{border-color:var(--theme-event-item--border--active)}.ix-event-list-item.selected:not(:active,.active) .event-list-item-container{background-color:var(--theme-event-item--background--selected);border-color:var(--theme-event-item--border--selected)}.ix-event-list-item[disabled],.ix-event-list-item.disabled{pointer-events:none}.ix-event-list-item[disabled] .event-list-item-container,.ix-event-list-item.disabled .event-list-item-container{background-color:var(--theme-event-item--background--disabled);border-color:var(--theme-event-item--border--disabled)}.ix-event-list-item .chevron-icon{margin-left:auto;margin-right:0.5rem;opacity:0.6;align-self:center}.ix-event-list-item .event-content{display:flex;align-items:center;width:100%;height:100%;overflow:hidden}";
4
4
 
5
5
  const EventListItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
6
  constructor() {
@@ -26,7 +26,7 @@ const EventListItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
26
26
  ? `var(--theme-${this.color})`
27
27
  : 'inherit',
28
28
  opacity: `${this.disabled ? 0.4 : this.opacity}`,
29
- } }), h("div", { class: "event-list-item-container" }, h("div", { class: "event-content" }, h("slot", null)), h("i", { class: "glyph glyph-16 glyph-chevron-right chevron-icon" }))));
29
+ } }), h("div", { class: "event-list-item-container" }, h("div", { class: "event-content" }, h("slot", null)), this.chevron ? (h("i", { class: "glyph glyph-16 glyph-chevron-right chevron-icon" })) : (''))));
30
30
  }
31
31
  get el() { return this; }
32
32
  static get style() { return eventListItemCss; }
@@ -2,7 +2,7 @@ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal
2
2
  import { c as createMutationObserver } from './mutation-observer.js';
3
3
  import { a as convertToRemString } from './rwd.util.js';
4
4
 
5
- const eventListCss = ".sc-ix-event-list-h{display:block;position:relative}ul.sc-ix-event-list{list-style:none;padding:0;margin-bottom:0}.sc-ix-event-list-s>.sc-ix-event-list-h:not(.item-size-s) .ix-event-list-item,.sc-ix-event-list-h:not(.item-size-l) .ix-event-list-item.sc-ix-event-list{display:none}.sc-ix-event-list-h.chevron .sc-ix-event-list-s .ix-event-list-item .chevron-icon{display:initial}.item-size-l .sc-ix-event-list-s .ix-event-list-item{height:6.5rem;max-height:6.5rem}.item-size-l .sc-ix-event-list-s .ix-event-list-item .event-content{height:6.5rem;max-height:6.5rem;white-space:normal}.compact .sc-ix-event-list-s .ix-event-list-item{margin-bottom:0px;border-radius:0px}.compact .sc-ix-event-list-s .ix-event-list-item .indicator{border-top-left-radius:0px;border-bottom-left-radius:0px}.compact .sc-ix-event-list-s .ix-event-list-item .event-list-item-container{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.compact .sc-ix-event-list-s .ix-event-list-item i.glyph{display:none}.compact.sc-ix-event-list .compact.sc-ix-event-list:not(:last-child) .event-list-item-container.sc-ix-event-list{border-bottom:none}";
5
+ const eventListCss = ".sc-ix-event-list-h{display:block;position:relative}ul.sc-ix-event-list{list-style:none;padding:0;margin-bottom:0}.sc-ix-event-list-s>.sc-ix-event-list-h:not(.item-size-s) .ix-event-list-item,.sc-ix-event-list-h:not(.item-size-l) .ix-event-list-item.sc-ix-event-list{display:none}.sc-ix-event-list-h.chevron .sc-ix-event-list-s .ix-event-list-item .chevron-icon{display:initial}.item-size-l .sc-ix-event-list-s .ix-event-list-item{height:6.5rem;max-height:6.5rem}.item-size-l .sc-ix-event-list-s .ix-event-list-item .event-content{height:6.5rem;max-height:6.5rem;white-space:normal}.compact .sc-ix-event-list-s .ix-event-list-item{margin-bottom:0px;border-radius:0px}.compact .sc-ix-event-list-s .ix-event-list-item .indicator{border-top-left-radius:0px;border-bottom-left-radius:0px}.compact .sc-ix-event-list-s .ix-event-list-item .event-list-item-container{border-top-left-radius:0;border-top-right-radius:0;border-bottom-left-radius:0;border-bottom-right-radius:0}.compact.sc-ix-event-list .compact.sc-ix-event-list:not(:last-child) .event-list-item-container.sc-ix-event-list{border-bottom:none}";
6
6
 
7
7
  const EventList = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
8
8
  constructor() {
@@ -1,10 +1,11 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { a as anime } from './anime.es.js';
3
+ import { d as defineCustomElement$5 } from './application-header.js';
3
4
  import { d as defineCustomElement$4 } from './icon.js';
4
5
  import { d as defineCustomElement$3 } from './icon-button.js';
5
6
  import { d as defineCustomElement$2 } from './map-navigation-overlay.js';
6
7
 
7
- const mapNavigationCss = ".sc-ix-map-navigation-h{display:flex;position:relative;width:100%;height:100%}.sc-ix-map-navigation-h .map-nav.sc-ix-map-navigation{display:flex;margin-left:4rem;position:relative;height:100%;flex-grow:1;overflow:hidden}.sc-ix-map-navigation-h .map-nav-sidebar.sc-ix-map-navigation{display:flex;flex-direction:column;align-items:center;width:29.75rem;max-width:29.75rem;min-width:29.75rem;height:100%;left:4rem;background-color:var(--theme-map-navigation--background);-webkit-border-end:0.125rem solid var(--theme-map-navigation-separator--background);border-inline-end:0.125rem solid var(--theme-map-navigation-separator--background);z-index:99}.sc-ix-map-navigation-h .map-nav-sidebar-content.sc-ix-map-navigation{align-items:center;position:relative;overflow:auto;height:100%;width:100%}.sc-ix-map-navigation-h .map-nav-sidebar-content.sc-ix-map-navigation .map-nav-sidebar-static-content.sc-ix-map-navigation{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;justify-content:space-between;margin-top:0.437rem;margin-bottom:0.812rem;margin-left:1rem;margin-right:1rem}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation{display:flex;position:relative;align-items:center;height:3.5rem;min-height:3.5rem;width:100%}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation{background-color:var(--theme-map-navigation-background);display:flex;align-items:center;height:100%;width:100%;padding:0 1rem}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation button.sc-ix-map-navigation{margin-left:1rem}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation .map-nav-brand-logo.sc-ix-map-navigation{min-width:4.75rem;-webkit-margin-end:3.5rem;margin-inline-end:3.5rem}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation .map-nav-brand-title.sc-ix-map-navigation{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1rem;font-weight:700;line-height:1.5em;color:var(--theme-color-std-text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--theme-map-navigation-header--color);flex-grow:1}.sc-ix-map-navigation-h .map-nav-header-content.sc-ix-map-navigation{display:flex;height:3.5rem;align-items:center;overflow:hidden;padding:0 1rem}.sc-ix-map-navigation-h .map-nav-header-content.sc-ix-map-navigation:empty{height:0}.sc-ix-map-navigation-h .map-nav-title.sc-ix-map-navigation{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;align-items:center;flex-grow:1}.sc-ix-map-navigation-h .content.sc-ix-map-navigation{display:block;flex-grow:1;position:relative;height:100%;overflow:hidden;z-index:calc(var(--theme-z-index-sticky) - 1)}";
8
+ const mapNavigationCss = ".sc-ix-map-navigation-h{display:flex;position:relative;width:100%;height:100%}.sc-ix-map-navigation-h .map-nav.sc-ix-map-navigation{display:flex;margin-left:4rem;position:relative;height:100%;flex-grow:1;overflow:hidden}.sc-ix-map-navigation-h .map-nav-sidebar.sc-ix-map-navigation{display:flex;flex-direction:column;align-items:center;width:29.75rem;max-width:29.75rem;min-width:29.75rem;height:100%;left:4rem;background-color:var(--theme-map-navigation--background);-webkit-border-end:0.125rem solid var(--theme-map-navigation-separator--background);border-inline-end:0.125rem solid var(--theme-map-navigation-separator--background);z-index:99}.sc-ix-map-navigation-h .map-nav-sidebar-content.sc-ix-map-navigation{align-items:center;position:relative;overflow:auto;height:100%;width:100%}.sc-ix-map-navigation-h .map-nav-sidebar-content.sc-ix-map-navigation .map-nav-sidebar-static-content.sc-ix-map-navigation{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;justify-content:space-between;margin-top:0.437rem;margin-bottom:0.812rem;margin-left:1rem;margin-right:1rem}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation{display:flex;position:relative;align-items:center;height:3.5rem;min-height:3.5rem;width:100%}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation{background-color:var(--theme-map-navigation-background);display:flex;align-items:center;height:100%;width:100%;padding:0 1rem;--theme-app-header-logo--color:var(--theme-color-std-text)}.sc-ix-map-navigation-h .map-nav-header.sc-ix-map-navigation .map-nav-header-brand.sc-ix-map-navigation button.sc-ix-map-navigation{margin-left:1rem}.sc-ix-map-navigation-h .map-nav-header-content.sc-ix-map-navigation{display:flex;height:3.5rem;align-items:center;overflow:hidden;padding:0 1rem}.sc-ix-map-navigation-h .map-nav-header-content.sc-ix-map-navigation:empty{height:0}.sc-ix-map-navigation-h .map-nav-title.sc-ix-map-navigation{-webkit-font-smoothing:antialiased;-moz-osx-font-smooting:grayscale;font-family:Siemens Sans, sans-serif;font-size:1.375rem;font-weight:700;line-height:1.455em;color:var(--theme-color-std-text);display:flex;align-items:center;flex-grow:1}.sc-ix-map-navigation-h .content.sc-ix-map-navigation{display:block;flex-grow:1;position:relative;height:100%;overflow:hidden;z-index:calc(var(--theme-z-index-sticky) - 1)}";
8
9
 
9
10
  const MapNavigation = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
10
11
  constructor() {
@@ -86,7 +87,7 @@ const MapNavigation = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
86
87
  }
87
88
  /**
88
89
  * Open a overlay inside content area
89
- * @deprecated will get removed with next major release in favor of slot based approach
90
+ * @deprecated Will be removed in 2.0.0. Use slot based approach
90
91
  *
91
92
  * @param name
92
93
  * @param component
@@ -115,7 +116,7 @@ const MapNavigation = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
115
116
  }
116
117
  /**
117
118
  * Close current shown overlay
118
- * @deprecated will get removed with next major release in favor of slot based approach
119
+ * @deprecated Will be removed in 2.0.0. Use slot based approach
119
120
  */
120
121
  async closeOverlay() {
121
122
  anime({
@@ -136,7 +137,7 @@ const MapNavigation = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement
136
137
  });
137
138
  }
138
139
  render() {
139
- return (h(Host, null, h("div", { id: "menu-placeholder" }), h("div", { class: "map-nav" }, h("div", { class: "map-nav-sidebar" }, h("div", { class: "map-nav-header" }, h("div", { class: "map-nav-header-brand" }, h("div", { class: "map-nav-brand-logo" }, h("slot", { name: "logo" })), h("span", { class: "map-nav-brand-title" }, this.applicationName))), h("div", { class: "map-nav-sidebar-content" }, h("div", { class: "map-nav-sidebar-static-content" }, h("div", { class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: "context-menu", ghost: true, size: "24", variant: "Secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { class: "map-nav-sidebar-user-content" }, h("slot", { name: "sidebar-content" })))), h("div", { class: "content" }, h("div", { class: "map-nav-header-content bg-2" }, h("slot", { name: "content-header" })), h("main", null, h("slot", null))))));
140
+ return (h(Host, null, h("div", { id: "menu-placeholder" }), h("div", { class: "map-nav" }, h("div", { class: "map-nav-sidebar" }, h("div", { class: "map-nav-header" }, h("ix-application-header", { name: this.applicationName, class: "map-nav-header-brand" }, h("slot", { name: "logo" }))), h("div", { class: "map-nav-sidebar-content" }, h("div", { class: "map-nav-sidebar-static-content" }, h("div", { class: "map-nav-title" }, this.navigationTitle), this.hideContextMenu ? ('') : (h("ix-icon-button", { icon: "context-menu", ghost: true, size: "24", variant: "Secondary", onClick: (_) => this.contextMenuClick.emit() }))), h("div", { class: "map-nav-sidebar-user-content" }, h("slot", { name: "sidebar-content" })))), h("div", { class: "content" }, h("div", { class: "map-nav-header-content bg-2" }, h("slot", { name: "content-header" })), h("main", null, h("slot", null))))));
140
141
  }
141
142
  get hostElement() { return this; }
142
143
  static get style() { return mapNavigationCss; }
@@ -154,13 +155,18 @@ function defineCustomElement$1() {
154
155
  if (typeof customElements === "undefined") {
155
156
  return;
156
157
  }
157
- const components = ["ix-map-navigation", "ix-icon", "ix-icon-button", "ix-map-navigation-overlay"];
158
+ const components = ["ix-map-navigation", "ix-application-header", "ix-icon", "ix-icon-button", "ix-map-navigation-overlay"];
158
159
  components.forEach(tagName => { switch (tagName) {
159
160
  case "ix-map-navigation":
160
161
  if (!customElements.get(tagName)) {
161
162
  customElements.define(tagName, MapNavigation);
162
163
  }
163
164
  break;
165
+ case "ix-application-header":
166
+ if (!customElements.get(tagName)) {
167
+ defineCustomElement$5();
168
+ }
169
+ break;
164
170
  case "ix-icon":
165
171
  if (!customElements.get(tagName)) {
166
172
  defineCustomElement$4();
@@ -30,7 +30,8 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
30
30
  this.isDropdownEmpty = false;
31
31
  this.hasFocus = false;
32
32
  this.navigationItem = undefined;
33
- this.inputText = undefined;
33
+ this.inputFilterText = undefined;
34
+ this.inputValue = undefined;
34
35
  }
35
36
  get items() {
36
37
  return Array.from(this.hostElement.querySelectorAll('ix-select-item'));
@@ -48,9 +49,15 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
48
49
  return this.mode === 'multiple';
49
50
  }
50
51
  watchSelectedIndices(newId) {
51
- if (newId) {
52
+ if (!newId) {
53
+ this.selectValue([]);
54
+ return;
55
+ }
56
+ if (Array.isArray(newId)) {
52
57
  this.selectValue([...newId]);
58
+ return;
53
59
  }
60
+ this.selectValue([newId]);
54
61
  }
55
62
  onItemClicked(event) {
56
63
  const newId = event.detail;
@@ -92,10 +99,16 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
92
99
  this.addItem.emit(value);
93
100
  }
94
101
  selectValue(ids) {
102
+ var _a;
95
103
  this.items.forEach((item) => {
96
104
  item.selected = ids.some((i) => i === item.value);
97
105
  });
98
106
  this.value = this.selectedItems.map((item) => item.label);
107
+ if (this.isSingleMode) {
108
+ this.inputValue = ((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) ? this.value[0] : null;
109
+ return;
110
+ }
111
+ this.inputValue = null;
99
112
  }
100
113
  componentWillLoad() {
101
114
  if (this.selectedIndices) {
@@ -104,6 +117,23 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
104
117
  : [this.selectedIndices]);
105
118
  }
106
119
  }
120
+ componentDidLoad() {
121
+ this.labelMutationObserver = new MutationObserver(() => {
122
+ this.selectValue(Array.isArray(this.selectedIndices)
123
+ ? this.selectedIndices
124
+ : [this.selectedIndices]);
125
+ });
126
+ this.labelMutationObserver.observe(this.hostElement, {
127
+ subtree: true,
128
+ attributes: true,
129
+ attributeFilter: ['label'],
130
+ });
131
+ }
132
+ disconnectedCallback() {
133
+ if (this.labelMutationObserver) {
134
+ this.labelMutationObserver.disconnect();
135
+ }
136
+ }
107
137
  itemExists(item) {
108
138
  return this.items.find((i) => i.label === item);
109
139
  }
@@ -134,8 +164,8 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
134
164
  }
135
165
  async onEnterNavigation() {
136
166
  var _a, _b;
137
- if (this.editable && !this.itemExists(this.inputText)) {
138
- this.emitAddItem(this.inputText);
167
+ if (this.editable && !this.itemExists(this.inputFilterText)) {
168
+ this.emitAddItem(this.inputFilterText);
139
169
  this.navigationItem = this.items[this.items.length - 1];
140
170
  }
141
171
  (_a = this.navigationItem) === null || _a === void 0 ? void 0 : _a.onItemClick();
@@ -163,11 +193,11 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
163
193
  });
164
194
  }
165
195
  filterItemsWithTypeahead() {
166
- this.inputText = this.inputRef.value;
167
- if (this.inputText) {
196
+ this.inputFilterText = this.inputRef.value;
197
+ if (this.inputFilterText) {
168
198
  this.items.forEach((item) => {
169
199
  item.classList.remove('d-none');
170
- if (!item.label.toLowerCase().includes(this.inputText.toLowerCase())) {
200
+ if (!item.label.toLowerCase().includes(this.inputFilterText.toLowerCase())) {
171
201
  item.classList.add('d-none');
172
202
  }
173
203
  });
@@ -184,7 +214,7 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
184
214
  }
185
215
  clearInput() {
186
216
  this.inputRef.value = '';
187
- this.inputText = '';
217
+ this.inputFilterText = '';
188
218
  }
189
219
  clear() {
190
220
  this.clearInput();
@@ -192,13 +222,6 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
192
222
  this.selectedIndices = [];
193
223
  this.itemSelectionChange.emit(null);
194
224
  }
195
- getInputValue() {
196
- var _a;
197
- if (this.isSingleMode) {
198
- return ((_a = this.value) === null || _a === void 0 ? void 0 : _a.length) ? this.value[0] : null;
199
- }
200
- return null;
201
- }
202
225
  render() {
203
226
  var _a, _b, _c;
204
227
  return (h(Host, null, h("div", { class: {
@@ -220,10 +243,10 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
220
243
  'allow-clear': this.allowClear && !!((_b = this.value) === null || _b === void 0 ? void 0 : _b.length),
221
244
  }, placeholder: this.editable
222
245
  ? this.i18nPlaceholderEditable
223
- : this.i18nPlaceholder, value: this.getInputValue(), ref: (ref) => (this.inputRef = ref), onInput: () => this.filterItemsWithTypeahead() }), this.disabled || this.readonly ? null : (h("div", { class: "chevron-down-container", ref: (ref) => {
246
+ : this.i18nPlaceholder, value: this.inputValue, ref: (ref) => (this.inputRef = ref), onInput: () => this.filterItemsWithTypeahead() }), this.disabled || this.readonly ? null : (h("div", { class: "chevron-down-container", ref: (ref) => {
224
247
  if (this.editable)
225
248
  this.dropdownWrapperRef = ref;
226
- } }, h("ix-icon", { class: "chevron", name: "chevron-down-small" }))))), this.allowClear && (((_c = this.value) === null || _c === void 0 ? void 0 : _c.length) || this.inputText) ? (h("ix-icon-button", { class: "clear", icon: "clear", ghost: true, oval: true, size: "24", onClick: (e) => {
249
+ } }, h("ix-icon", { class: "chevron", name: "chevron-down-small" }))))), this.allowClear && (((_c = this.value) === null || _c === void 0 ? void 0 : _c.length) || this.inputFilterText) ? (h("ix-icon-button", { class: "clear", icon: "clear", ghost: true, oval: true, size: "24", onClick: (e) => {
227
250
  e.preventDefault();
228
251
  e.stopPropagation();
229
252
  this.clear();
@@ -233,19 +256,19 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
233
256
  'd-none': this.disabled ||
234
257
  this.readonly ||
235
258
  (this.isDropdownEmpty && !this.editable),
236
- }, anchor: this.dropdownAnchor, trigger: this.dropdownWrapperRef, onShowChanged: (e) => this.dropdownVisibilityChanged(e), placement: "bottom", positioningStrategy: 'fixed', adjustDropdownWidthToReferenceWidth: true }, h("div", { class: "select-list-header" }, this.i18nSelectListHeader), h("slot", null), h("div", { ref: (ref) => (this.addItemRef = ref), class: "d-contents" }), this.itemExists(this.inputText) ? ('') : (h("ix-dropdown-item", { "data-testid": "add-item", icon: "plus", class: {
259
+ }, anchor: this.dropdownAnchor, trigger: this.dropdownWrapperRef, onShowChanged: (e) => this.dropdownVisibilityChanged(e), placement: "bottom", positioningStrategy: 'fixed', adjustDropdownWidthToReferenceWidth: true }, h("div", { class: "select-list-header" }, this.i18nSelectListHeader), h("slot", null), h("div", { ref: (ref) => (this.addItemRef = ref), class: "d-contents" }), this.itemExists(this.inputFilterText) ? ('') : (h("ix-dropdown-item", { "data-testid": "add-item", icon: "plus", class: {
237
260
  'add-item': true,
238
- 'd-none': !(this.editable && this.inputText),
239
- }, label: this.inputText, onItemClick: (e) => {
261
+ 'd-none': !(this.editable && this.inputFilterText),
262
+ }, label: this.inputFilterText, onItemClick: (e) => {
240
263
  e.preventDefault();
241
264
  e.stopPropagation();
242
- this.emitAddItem(this.inputText);
265
+ this.emitAddItem(this.inputFilterText);
243
266
  } })))));
244
267
  }
245
268
  get hostElement() { return this; }
246
269
  static get watchers() { return {
247
270
  "selectedIndices": ["watchSelectedIndices"],
248
- "inputText": ["watchInputText"]
271
+ "inputFilterText": ["watchInputText"]
249
272
  }; }
250
273
  static get style() { return selectCss; }
251
274
  }, [6, "ix-select", {
@@ -265,7 +288,8 @@ const Select = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
265
288
  "isDropdownEmpty": [32],
266
289
  "hasFocus": [32],
267
290
  "navigationItem": [32],
268
- "inputText": [32]
291
+ "inputFilterText": [32],
292
+ "inputValue": [32]
269
293
  }, [[0, "itemClick", "onItemClicked"], [8, "keydown", "onKeyDown"]]]);
270
294
  function defineCustomElement$1() {
271
295
  if (typeof customElements === "undefined") {
@@ -1,6 +1,6 @@
1
1
  import { r as registerInstance, h, H as Host, g as getElement } from './index-b22287de.js';
2
2
 
3
- const applicationHeaderCss = ":host{display:flex;align-items:center;position:relative;width:100%;height:2.75rem;padding-left:1rem;color:var(--theme-app-header-logo--color);background-color:var(--theme-app-header--background);border-bottom:var(--theme-app-header--border-width) solid var(--theme-app-header--border-color)}:host .name{margin-left:2.5rem;margin-right:2.5rem}:host .logo{display:inline-flex;align-items:center;position:relative;height:32px;overflow:hidden}";
3
+ const applicationHeaderCss = ":host{display:flex;align-items:center;position:relative;width:100%;height:2.75rem;padding-left:1rem;color:var(--theme-app-header-logo--color);background-color:var(--theme-app-header--background);border-bottom:var(--theme-app-header--border-width) solid var(--theme-app-header--border-color)}:host .name{margin-left:2.5rem;margin-right:2.5rem}:host .logo{display:inline-flex;align-items:center;position:relative;height:32px;overflow:hidden;line-height:0rem}";
4
4
 
5
5
  const ApplicationHeader = class {
6
6
  constructor(hostRef) {
@@ -18,7 +18,7 @@ const ApplicationHeader = class {
18
18
  }
19
19
  }
20
20
  render() {
21
- return (h(Host, null, h("div", { class: "logo" }, h("slot", { name: "logo" })), h("span", { class: "name" }, this.name), h("slot", null)));
21
+ return (h(Host, null, h("div", { class: "logo" }, h("slot", { name: "logo" })), h("div", { class: "name" }, this.name), h("slot", null)));
22
22
  }
23
23
  get host() { return getElement(this); }
24
24
  };