@siemens/ix 1.2.0-beta.0 → 1.2.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 (203) hide show
  1. package/dist/cjs/{index-40761405.js → index-354a8c3d.js} +66 -0
  2. package/dist/cjs/index.cjs.js +3 -3
  3. package/dist/cjs/ix-animated-tab_2.cjs.entry.js +1 -1
  4. package/dist/cjs/ix-application-header.cjs.entry.js +1 -1
  5. package/dist/cjs/ix-basic-navigation.cjs.entry.js +1 -1
  6. package/dist/cjs/ix-blind.cjs.entry.js +1 -1
  7. package/dist/cjs/ix-breadcrumb_2.cjs.entry.js +1 -1
  8. package/dist/cjs/ix-button.cjs.entry.js +1 -1
  9. package/dist/cjs/ix-category-filter.cjs.entry.js +1 -1
  10. package/dist/cjs/ix-chip.cjs.entry.js +1 -1
  11. package/dist/cjs/ix-counter-pill.cjs.entry.js +1 -1
  12. package/dist/cjs/ix-date-picker_2.cjs.entry.js +1 -1
  13. package/dist/cjs/ix-date-time-card.cjs.entry.js +1 -1
  14. package/dist/cjs/ix-datetime-picker.cjs.entry.js +1 -1
  15. package/dist/cjs/ix-drawer.cjs.entry.js +1 -1
  16. package/dist/cjs/ix-dropdown_2.cjs.entry.js +1 -1
  17. package/dist/cjs/ix-event-list_2.cjs.entry.js +1 -1
  18. package/dist/cjs/ix-expanding-search.cjs.entry.js +1 -1
  19. package/dist/cjs/ix-filter-chip.cjs.entry.js +1 -1
  20. package/dist/cjs/ix-flip-tile_2.cjs.entry.js +1 -1
  21. package/dist/cjs/ix-group-context-menu.cjs.entry.js +37 -0
  22. package/dist/cjs/ix-group_3.cjs.entry.js +4 -4
  23. package/dist/cjs/ix-icon-button.cjs.entry.js +5 -2
  24. package/dist/cjs/ix-icon.cjs.entry.js +1 -1
  25. package/dist/cjs/ix-input-group.cjs.entry.js +1 -1
  26. package/dist/cjs/ix-kpi.cjs.entry.js +1 -1
  27. package/dist/cjs/ix-map-navigation_2.cjs.entry.js +2 -2
  28. package/dist/cjs/ix-menu_9.cjs.entry.js +2 -2
  29. package/dist/cjs/ix-message-bar.cjs.entry.js +1 -1
  30. package/dist/cjs/ix-modal-example.cjs.entry.js +2 -2
  31. package/dist/cjs/ix-modal_2.cjs.entry.js +2 -2
  32. package/dist/cjs/ix-pill.cjs.entry.js +1 -1
  33. package/dist/cjs/ix-select_2.cjs.entry.js +21 -13
  34. package/dist/cjs/ix-spinner.cjs.entry.js +1 -1
  35. package/dist/cjs/ix-split-button_2.cjs.entry.js +1 -1
  36. package/dist/cjs/ix-tab-item.cjs.entry.js +1 -1
  37. package/dist/cjs/ix-tabs.cjs.entry.js +1 -1
  38. package/dist/cjs/ix-tile.cjs.entry.js +1 -1
  39. package/dist/cjs/ix-toast_2.cjs.entry.js +1 -1
  40. package/dist/cjs/ix-toggle.cjs.entry.js +1 -1
  41. package/dist/cjs/ix-tree_2.cjs.entry.js +1 -1
  42. package/dist/cjs/ix-upload.cjs.entry.js +1 -1
  43. package/dist/cjs/ix-validation-tooltip.cjs.entry.js +1 -1
  44. package/dist/cjs/ix-workflow-step_2.cjs.entry.js +1 -1
  45. package/dist/cjs/loader.cjs.js +2 -2
  46. package/dist/cjs/{modal-2112fb71.js → modal-a5b22d3f.js} +2 -1
  47. package/dist/cjs/{modal-utils-5d7bb217.js → modal-utils-9ee0acda.js} +1 -1
  48. package/dist/cjs/my-component.cjs.entry.js +1 -1
  49. package/dist/cjs/siemens-ix.cjs.js +2 -2
  50. package/dist/collection/collection-manifest.json +1 -0
  51. package/dist/collection/components/button/button.js +1 -1
  52. package/dist/collection/components/chip/chip.js +1 -1
  53. package/dist/collection/components/group/group-context-menu.css +24 -0
  54. package/dist/collection/components/group/group-context-menu.js +51 -0
  55. package/dist/collection/components/group/group.css +1 -11
  56. package/dist/collection/components/group/group.js +1 -1
  57. package/dist/collection/components/group-item/group-item.css +1 -1
  58. package/dist/collection/components/icon-button/icon-button.css +42 -0
  59. package/dist/collection/components/icon-button/icon-button.js +11 -1
  60. package/dist/collection/components/map-navigation-overlay/map-navigation-overlay.js +1 -1
  61. package/dist/collection/components/modal/modal-utils.js +1 -1
  62. package/dist/collection/components/modal/modal.js +8 -2
  63. package/dist/collection/components/modal-container/modal-container.js +5 -4
  64. package/dist/collection/components/select/select.css +7 -14
  65. package/dist/collection/components/select/select.js +19 -11
  66. package/dist/components/group-context-menu.js +61 -0
  67. package/dist/components/group-item.js +1 -1
  68. package/dist/components/icon-button.js +4 -1
  69. package/dist/components/index.d.ts +1 -0
  70. package/dist/components/index.js +1 -0
  71. package/dist/components/ix-group-context-menu.d.ts +11 -0
  72. package/dist/components/ix-group-context-menu.js +6 -0
  73. package/dist/components/ix-group.js +5 -5
  74. package/dist/components/ix-modal-example.js +1 -1
  75. package/dist/components/ix-select.js +20 -12
  76. package/dist/components/map-navigation-overlay.js +1 -1
  77. package/dist/components/modal-container.js +1 -0
  78. package/dist/esm/{index-b22287de.js → index-7746a810.js} +66 -1
  79. package/dist/esm/index.js +3 -3
  80. package/dist/esm/ix-animated-tab_2.entry.js +1 -1
  81. package/dist/esm/ix-application-header.entry.js +1 -1
  82. package/dist/esm/ix-basic-navigation.entry.js +1 -1
  83. package/dist/esm/ix-blind.entry.js +1 -1
  84. package/dist/esm/ix-breadcrumb_2.entry.js +1 -1
  85. package/dist/esm/ix-button.entry.js +1 -1
  86. package/dist/esm/ix-category-filter.entry.js +1 -1
  87. package/dist/esm/ix-chip.entry.js +1 -1
  88. package/dist/esm/ix-counter-pill.entry.js +1 -1
  89. package/dist/esm/ix-date-picker_2.entry.js +1 -1
  90. package/dist/esm/ix-date-time-card.entry.js +1 -1
  91. package/dist/esm/ix-datetime-picker.entry.js +1 -1
  92. package/dist/esm/ix-drawer.entry.js +1 -1
  93. package/dist/esm/ix-dropdown_2.entry.js +1 -1
  94. package/dist/esm/ix-event-list_2.entry.js +1 -1
  95. package/dist/esm/ix-expanding-search.entry.js +1 -1
  96. package/dist/esm/ix-filter-chip.entry.js +1 -1
  97. package/dist/esm/ix-flip-tile_2.entry.js +1 -1
  98. package/dist/esm/ix-group-context-menu.entry.js +33 -0
  99. package/dist/esm/ix-group_3.entry.js +4 -4
  100. package/dist/esm/ix-icon-button.entry.js +5 -2
  101. package/dist/esm/ix-icon.entry.js +1 -1
  102. package/dist/esm/ix-input-group.entry.js +1 -1
  103. package/dist/esm/ix-kpi.entry.js +1 -1
  104. package/dist/esm/ix-map-navigation_2.entry.js +2 -2
  105. package/dist/esm/ix-menu_9.entry.js +2 -2
  106. package/dist/esm/ix-message-bar.entry.js +1 -1
  107. package/dist/esm/ix-modal-example.entry.js +2 -2
  108. package/dist/esm/ix-modal_2.entry.js +2 -2
  109. package/dist/esm/ix-pill.entry.js +1 -1
  110. package/dist/esm/ix-select_2.entry.js +21 -13
  111. package/dist/esm/ix-spinner.entry.js +1 -1
  112. package/dist/esm/ix-split-button_2.entry.js +1 -1
  113. package/dist/esm/ix-tab-item.entry.js +1 -1
  114. package/dist/esm/ix-tabs.entry.js +1 -1
  115. package/dist/esm/ix-tile.entry.js +1 -1
  116. package/dist/esm/ix-toast_2.entry.js +1 -1
  117. package/dist/esm/ix-toggle.entry.js +1 -1
  118. package/dist/esm/ix-tree_2.entry.js +1 -1
  119. package/dist/esm/ix-upload.entry.js +1 -1
  120. package/dist/esm/ix-validation-tooltip.entry.js +1 -1
  121. package/dist/esm/ix-workflow-step_2.entry.js +1 -1
  122. package/dist/esm/loader.js +2 -2
  123. package/dist/esm/{modal-309a156f.js → modal-9c9eaf8e.js} +2 -1
  124. package/dist/esm/{modal-utils-ec39c1bc.js → modal-utils-df50b35a.js} +1 -1
  125. package/dist/esm/my-component.entry.js +1 -1
  126. package/dist/esm/siemens-ix.js +2 -2
  127. package/dist/siemens-ix/index.esm.js +1 -1
  128. package/dist/siemens-ix/{p-56bba5f9.entry.js → p-03687070.entry.js} +1 -1
  129. package/dist/siemens-ix/{p-aa620cc7.entry.js → p-05f3c48e.entry.js} +1 -1
  130. package/dist/siemens-ix/p-080c00b1.entry.js +1 -0
  131. package/dist/siemens-ix/{p-18652f43.entry.js → p-10879145.entry.js} +1 -1
  132. package/dist/siemens-ix/{p-38a598ed.entry.js → p-19cc942a.entry.js} +1 -1
  133. package/dist/siemens-ix/{p-8e60010d.entry.js → p-1ba8c910.entry.js} +1 -1
  134. package/dist/siemens-ix/{p-abd3b0f8.entry.js → p-23578bb6.entry.js} +1 -1
  135. package/dist/siemens-ix/p-263949b1.js +1 -0
  136. package/dist/siemens-ix/{p-afefc17c.entry.js → p-2709fafd.entry.js} +1 -1
  137. package/dist/siemens-ix/{p-72b5c8d5.entry.js → p-2995294d.entry.js} +1 -1
  138. package/dist/siemens-ix/{p-8ee057c1.entry.js → p-2b69b027.entry.js} +1 -1
  139. package/dist/siemens-ix/{p-d1a17dd8.entry.js → p-2f3294b8.entry.js} +1 -1
  140. package/dist/siemens-ix/{p-44ab1dce.entry.js → p-35d7f18d.entry.js} +1 -1
  141. package/dist/siemens-ix/{p-0cdac3da.entry.js → p-412dbb89.entry.js} +1 -1
  142. package/dist/siemens-ix/{p-746ebc92.entry.js → p-494512c0.entry.js} +1 -1
  143. package/dist/siemens-ix/{p-e0c85889.entry.js → p-4d61503b.entry.js} +1 -1
  144. package/dist/siemens-ix/{p-25fda9f7.entry.js → p-558623ce.entry.js} +1 -1
  145. package/dist/siemens-ix/{p-1cd8f35f.entry.js → p-56771b32.entry.js} +1 -1
  146. package/dist/siemens-ix/{p-d62d2304.entry.js → p-5871e480.entry.js} +1 -1
  147. package/dist/siemens-ix/{p-b7a46add.entry.js → p-5e3700c3.entry.js} +1 -1
  148. package/dist/siemens-ix/p-5e4c3828.js +2 -0
  149. package/dist/siemens-ix/{p-6e8a38c4.entry.js → p-61cb7ab7.entry.js} +1 -1
  150. package/dist/siemens-ix/p-6da1e24d.entry.js +1 -0
  151. package/dist/siemens-ix/{p-477681a5.entry.js → p-6e915c70.entry.js} +1 -1
  152. package/dist/siemens-ix/{p-f34f7e30.entry.js → p-712e8945.entry.js} +1 -1
  153. package/dist/siemens-ix/{p-5b4399b3.entry.js → p-7b103473.entry.js} +1 -1
  154. package/dist/siemens-ix/{p-e5da6672.entry.js → p-80d27c08.entry.js} +1 -1
  155. package/dist/siemens-ix/{p-7fb73253.entry.js → p-842a7652.entry.js} +1 -1
  156. package/dist/siemens-ix/{p-1d1eeeea.entry.js → p-8f6809f1.entry.js} +1 -1
  157. package/dist/siemens-ix/{p-0e3aab52.entry.js → p-91eb1fdd.entry.js} +1 -1
  158. package/dist/siemens-ix/{p-87c46ff3.entry.js → p-91ecd6ac.entry.js} +1 -1
  159. package/dist/siemens-ix/{p-4f2fbbb5.entry.js → p-963c5690.entry.js} +1 -1
  160. package/dist/siemens-ix/p-96e46f99.js +1 -0
  161. package/dist/siemens-ix/{p-eff31ef4.entry.js → p-9a98369e.entry.js} +1 -1
  162. package/dist/siemens-ix/p-af8213cc.entry.js +1 -0
  163. package/dist/siemens-ix/{p-d5199425.entry.js → p-aff5f463.entry.js} +1 -1
  164. package/dist/siemens-ix/{p-dc8f82d5.entry.js → p-b0c95c22.entry.js} +1 -1
  165. package/dist/siemens-ix/p-b2ecf415.entry.js +1 -0
  166. package/dist/siemens-ix/{p-6d075808.entry.js → p-bf387a1f.entry.js} +1 -1
  167. package/dist/siemens-ix/p-c885685e.entry.js +1 -0
  168. package/dist/siemens-ix/{p-b8849072.entry.js → p-ded3a35d.entry.js} +1 -1
  169. package/dist/siemens-ix/{p-c1674778.entry.js → p-dfb5730f.entry.js} +1 -1
  170. package/dist/siemens-ix/{p-b49fbfc3.entry.js → p-e5397173.entry.js} +1 -1
  171. package/dist/siemens-ix/{p-b50dc630.entry.js → p-f24f1eb7.entry.js} +1 -1
  172. package/dist/siemens-ix/p-f3996fc1.entry.js +1 -0
  173. package/dist/siemens-ix/p-fe28a2be.entry.js +1 -0
  174. package/dist/siemens-ix/siemens-ix.css +37 -62
  175. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  176. package/dist/types/components/button/button.d.ts +1 -1
  177. package/dist/types/components/chip/chip.d.ts +1 -1
  178. package/dist/types/components/group/group-context-menu.d.ts +11 -0
  179. package/dist/types/components/modal/modal-utils.d.ts +10 -7
  180. package/dist/types/components/modal/modal.d.ts +2 -2
  181. package/dist/types/components/modal-container/modal-container.d.ts +2 -6
  182. package/dist/types/components.d.ts +22 -9
  183. package/package.json +1 -1
  184. package/scss/components/_buttons.scss +1 -12
  185. package/scss/components/_checkboxes.scss +14 -18
  186. package/scss/components/_modal.scss +1 -1
  187. package/scss/components/_radiobuttons.scss +12 -43
  188. package/scss/theme/classic-dark/_variables.scss +3 -3
  189. package/scss/theme/classic-light/_variables.scss +1 -2
  190. package/src/components/button/readme.md +1 -1
  191. package/src/components/chip/readme.md +9 -9
  192. package/src/components/group/readme.md +0 -22
  193. package/src/components/modal/readme.md +2 -2
  194. package/src/components/modal-container/readme.md +2 -2
  195. package/dist/siemens-ix/p-161561ef.entry.js +0 -1
  196. package/dist/siemens-ix/p-2f07c86a.js +0 -1
  197. package/dist/siemens-ix/p-41e42413.entry.js +0 -1
  198. package/dist/siemens-ix/p-5c038d1d.js +0 -2
  199. package/dist/siemens-ix/p-74e15a57.entry.js +0 -1
  200. package/dist/siemens-ix/p-a8b6454f.entry.js +0 -1
  201. package/dist/siemens-ix/p-b18d15c7.entry.js +0 -1
  202. package/dist/siemens-ix/p-c0a126c6.entry.js +0 -1
  203. package/dist/siemens-ix/p-d23706a7.js +0 -1
@@ -0,0 +1,51 @@
1
+ /*
2
+ * SPDX-FileCopyrightText: 2022 Siemens AG
3
+ *
4
+ * SPDX-License-Identifier: MIT
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ import { h, Host } from '@stencil/core';
10
+ export class GroupContextMenu {
11
+ constructor() {
12
+ this.showContextMenu = false;
13
+ }
14
+ get dropdownElement() {
15
+ return this.host.querySelector('ix-dropdown');
16
+ }
17
+ get groupDropdownItem() {
18
+ return this.host.querySelectorAll('ix-group-dropdown-item');
19
+ }
20
+ configureDropdown(triggerElement) {
21
+ this.dropdownElement.positioningStrategy = 'fixed';
22
+ this.dropdownElement.trigger = triggerElement;
23
+ }
24
+ componentWillRender() {
25
+ this.showContextMenu = !!this.dropdownElement;
26
+ }
27
+ disconnectedCallback() {
28
+ this.observer.disconnect();
29
+ }
30
+ render() {
31
+ return (h(Host, null, h("ix-icon-button", { class: { hide: !this.showContextMenu }, ref: (ref) => this.dropdownElement ? this.configureDropdown(ref) : null, size: "24", ghost: true, icon: "context-menu" }), h("slot", null)));
32
+ }
33
+ static get is() { return "ix-group-context-menu"; }
34
+ static get encapsulation() { return "scoped"; }
35
+ static get originalStyleUrls() {
36
+ return {
37
+ "$": ["./group-context-menu.scss"]
38
+ };
39
+ }
40
+ static get styleUrls() {
41
+ return {
42
+ "$": ["group-context-menu.css"]
43
+ };
44
+ }
45
+ static get states() {
46
+ return {
47
+ "showContextMenu": {}
48
+ };
49
+ }
50
+ static get elementRef() { return "host"; }
51
+ }
@@ -52,16 +52,6 @@
52
52
  max-width: 19.75rem;
53
53
  border-color: var(--theme-group-item--border-color);
54
54
  }
55
- :host .group-header-context-button {
56
- display: block;
57
- position: relative;
58
- margin-top: 5px;
59
- margin-right: 5px;
60
- margin-left: auto;
61
- }
62
- :host .group-header-context-button ix-icon-button::after {
63
- display: none;
64
- }
65
55
  :host .group-header {
66
56
  height: 4rem;
67
57
  min-height: 4rem;
@@ -162,7 +152,7 @@
162
152
  background-color: var(--theme-group-item--background--selected);
163
153
  }
164
154
  :host .group-header.selected .group-header-selection-indicator {
165
- background-color: var(--theme-color-input-focus);
155
+ background-color: var(--theme-color-input--focus);
166
156
  }
167
157
  :host .footer {
168
158
  height: auto;
@@ -100,7 +100,7 @@ export class Group {
100
100
  'group-header': true,
101
101
  expand: !this.collapsed,
102
102
  selected: this.selected,
103
- }, tabindex: "0" }, h("div", { class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { class: "group-header-selection-indicator" }), h("ix-icon", { class: "btn-expand-header", name: `chevron-${this.collapsed ? 'right' : 'down'}-small`, onClick: (e) => this.onExpandClick(e) }), h("div", { class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { name: "header" }))), h("div", { class: { 'group-header-context-button': true, 'd-none': false } }, h("ix-icon-button", { ref: (ref) => (this.dropdownTriggerRef = ref), size: "24", ghost: true, icon: "context-menu" }), h("ix-dropdown", { trigger: this.dropdownTriggerRef }, h("slot", { name: "dropdown" })))), h("div", { class: {
103
+ }, tabindex: "0" }, h("div", { class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { class: "group-header-selection-indicator" }), h("ix-icon", { class: "btn-expand-header", name: `chevron-${this.collapsed ? 'right' : 'down'}-small`, onClick: (e) => this.onExpandClick(e) }), h("div", { class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { name: "header" }))), h("ix-group-context-menu", null, h("slot", { name: "dropdown" }))), h("div", { class: {
104
104
  'group-content': true,
105
105
  'd-none': this.collapsed,
106
106
  } }, h("slot", null)), h("div", { class: "d-none" }, h("ix-group-item", { class: "footer last", suppressSelection: true, focusable: false }, h("slot", { name: "footer" })))));
@@ -109,7 +109,7 @@
109
109
  background-color: var(--theme-group-item--background--selected);
110
110
  }
111
111
  :host.selected .group-entry-selection-indicator {
112
- background-color: var(--theme-color-input-focus);
112
+ background-color: var(--theme-color-input--focus);
113
113
  }
114
114
  :host:not(.disabled):not(:disabled):focus-visible {
115
115
  border-color: var(--focus--border-color) !important;
@@ -0,0 +1,42 @@
1
+ /*
2
+ * SPDX-FileCopyrightText: 2022 Siemens AG
3
+ *
4
+ * SPDX-License-Identifier: MIT
5
+ *
6
+ * This source code is licensed under the MIT license found in the
7
+ * LICENSE file in the root directory of this source tree.
8
+ */
9
+ /*
10
+ * SPDX-FileCopyrightText: 2022 Siemens AG
11
+ *
12
+ * SPDX-License-Identifier: MIT
13
+ *
14
+ * This source code is licensed under the MIT license found in the
15
+ * LICENSE file in the root directory of this source tree.
16
+ */
17
+ /* Dimensions */
18
+ /* Font sizes */
19
+ /* Line heights */
20
+ /* Animation timings */
21
+ :host .icon-button {
22
+ padding: 0;
23
+ overflow: hidden;
24
+ }
25
+ :host .btn-icon-12 {
26
+ height: 1rem;
27
+ width: 1rem;
28
+ min-width: 1rem;
29
+ min-height: 1rem;
30
+ }
31
+ :host .btn-icon-16 {
32
+ height: 1.5rem;
33
+ width: 1.5rem;
34
+ min-width: 1.5rem;
35
+ min-height: 1.5rem;
36
+ }
37
+ :host .btn-icon-32 {
38
+ height: 2rem;
39
+ width: 2rem;
40
+ min-width: 2rem;
41
+ min-height: 2rem;
42
+ }
@@ -23,13 +23,23 @@ export class IconButton {
23
23
  this.type = 'button';
24
24
  }
25
25
  getIconButtonClasses() {
26
- return Object.assign({ 'btn-icon-xs': this.size === '12', 'btn-icon-s': this.size === '16' }, getButtonClasses(this.variant, this.outline, this.ghost || this.invisible, true, this.oval, this.selected, this.disabled));
26
+ return Object.assign(Object.assign({}, getButtonClasses(this.variant, this.outline, this.ghost || this.invisible, true, this.oval, this.selected, this.disabled)), { 'icon-button': true, 'btn-icon-12': this.size === '12', 'btn-icon-16': this.size === '16', 'btn-icon-32': this.size === '32' || this.size === '24' || !this.size });
27
27
  }
28
28
  render() {
29
29
  return (h("button", { class: this.getIconButtonClasses(), type: this.type }, h("ix-icon", { size: this.size, name: this.icon, color: this.color }), h("div", { style: { display: 'none' } }, h("slot", null))));
30
30
  }
31
31
  static get is() { return "ix-icon-button"; }
32
32
  static get encapsulation() { return "scoped"; }
33
+ static get originalStyleUrls() {
34
+ return {
35
+ "$": ["icon-button.scss"]
36
+ };
37
+ }
38
+ static get styleUrls() {
39
+ return {
40
+ "$": ["icon-button.css"]
41
+ };
42
+ }
33
43
  static get properties() {
34
44
  return {
35
45
  "variant": {
@@ -49,7 +49,7 @@ export class MapNavigationOverlay {
49
49
  'background-color': this.color
50
50
  ? `var(--theme-${this.color})`
51
51
  : '',
52
- } }), h("div", { class: "overlay-header-content" }, h("ix-icon", { size: "32", name: this.icon }), h("span", { class: "overlay-header-title", title: this.name }, this.name)), h("ix-icon-button", { class: "overlay-close", invisible: true, icon: "close", size: "24", onClick: () => this.closeOverlay() })), h("slot", null)));
52
+ } }), h("div", { class: "overlay-header-content" }, h("ix-icon", { size: "32", name: this.icon }), h("span", { class: "overlay-header-title", title: this.name }, this.name)), h("ix-icon-button", { class: "overlay-close", ghost: true, icon: "close", size: "24", onClick: () => this.closeOverlay() })), h("slot", null)));
53
53
  }
54
54
  static get is() { return "ix-map-navigation-overlay"; }
55
55
  static get encapsulation() { return "scoped"; }
@@ -10,7 +10,7 @@ function getModalContainer() {
10
10
  const containerList = Array.from(document.querySelectorAll('ix-modal-container'));
11
11
  const [container] = containerList;
12
12
  if (containerList.length > 1) {
13
- console.warn('Multiple modal container are found. Only there first is used.');
13
+ console.warn('Multiple modal containers were found. The one instatiated first will be used.');
14
14
  return container;
15
15
  }
16
16
  if (!container) {
@@ -472,7 +472,7 @@ export class Modal {
472
472
  return {
473
473
  "dismiss": {
474
474
  "complexType": {
475
- "signature": "(reason?: any) => Promise<void>",
475
+ "signature": "<T = any>(reason?: T) => Promise<void>",
476
476
  "parameters": [{
477
477
  "tags": [{
478
478
  "name": "param",
@@ -483,6 +483,9 @@ export class Modal {
483
483
  "references": {
484
484
  "Promise": {
485
485
  "location": "global"
486
+ },
487
+ "T": {
488
+ "location": "global"
486
489
  }
487
490
  },
488
491
  "return": "Promise<void>"
@@ -497,7 +500,7 @@ export class Modal {
497
500
  },
498
501
  "close": {
499
502
  "complexType": {
500
- "signature": "(result: any) => Promise<void>",
503
+ "signature": "<T = any>(result: T) => Promise<void>",
501
504
  "parameters": [{
502
505
  "tags": [{
503
506
  "name": "param",
@@ -508,6 +511,9 @@ export class Modal {
508
511
  "references": {
509
512
  "Promise": {
510
513
  "location": "global"
514
+ },
515
+ "T": {
516
+ "location": "global"
511
517
  }
512
518
  },
513
519
  "return": "Promise<void>"
@@ -51,6 +51,7 @@ export class ModalContainer {
51
51
  onDismiss.emit(event.detail);
52
52
  });
53
53
  return {
54
+ htmlElement: modal,
54
55
  onClose,
55
56
  onDismiss,
56
57
  };
@@ -74,7 +75,7 @@ export class ModalContainer {
74
75
  return {
75
76
  "showModal": {
76
77
  "complexType": {
77
- "signature": "(config: ModalConfig) => Promise<{ onClose: TypedEvent<any>; onDismiss: TypedEvent<any>; }>",
78
+ "signature": "(config: ModalConfig) => Promise<ModalInstance>",
78
79
  "parameters": [{
79
80
  "tags": [{
80
81
  "name": "param",
@@ -86,9 +87,9 @@ export class ModalContainer {
86
87
  "Promise": {
87
88
  "location": "global"
88
89
  },
89
- "TypedEvent": {
90
+ "ModalInstance": {
90
91
  "location": "import",
91
- "path": "../utils/typed-event"
92
+ "path": "../modal/modal-utils"
92
93
  },
93
94
  "ModalConfig": {
94
95
  "location": "import",
@@ -98,7 +99,7 @@ export class ModalContainer {
98
99
  "location": "global"
99
100
  }
100
101
  },
101
- "return": "Promise<{ onClose: TypedEvent<any>; onDismiss: TypedEvent<any>; }>"
102
+ "return": "Promise<ModalInstance<any>>"
102
103
  },
103
104
  "docs": {
104
105
  "text": "Display modal dialog",
@@ -81,24 +81,20 @@
81
81
  display: flex;
82
82
  position: relative;
83
83
  align-items: flex-start;
84
- height: calc(2rem - 2 * var(--theme-input--border-thickness));
85
84
  width: 100%;
86
85
  }
87
- :host .input-container.allow-clear {
88
- padding-right: 3.5rem;
89
- }
90
86
  :host .input-container .chips {
91
87
  position: relative;
92
88
  display: flex;
93
89
  align-items: center;
94
90
  flex-wrap: wrap;
95
91
  height: 100%;
96
- max-width: 70%;
97
- flex-shrink: 0;
98
- margin: auto;
92
+ max-height: 3.5rem;
93
+ flex-grow: 1;
94
+ overflow-y: auto;
99
95
  }
100
96
  :host .input-container .chips > ix-filter-chip {
101
- margin: 0.1rem;
97
+ margin: 0 0.1rem;
102
98
  }
103
99
  :host .input-container input {
104
100
  overflow: hidden;
@@ -114,8 +110,6 @@
114
110
  background: transparent;
115
111
  height: 1.75rem;
116
112
  width: 100%;
117
- -webkit-margin-end: 2rem;
118
- margin-inline-end: 2rem;
119
113
  }
120
114
  :host .input-container input, :host .input-container input:hover, :host .input-container input:focus-visible {
121
115
  border: none;
@@ -153,10 +147,6 @@
153
147
  :host .editable .chevron-down-container:not(.disabled):not(:disabled):active {
154
148
  background-color: var(--theme-btn-invisible-secondary--background--active);
155
149
  }
156
- :host .clear {
157
- position: absolute;
158
- right: 2rem;
159
- }
160
150
  :host .add-item {
161
151
  display: flex;
162
152
  justify-content: flex-start;
@@ -165,6 +155,9 @@
165
155
  width: 100%;
166
156
  }
167
157
  :host .select-list-header {
158
+ overflow: hidden;
159
+ text-overflow: ellipsis;
160
+ white-space: nowrap;
168
161
  display: flex;
169
162
  align-items: center;
170
163
  height: 2rem;
@@ -159,6 +159,9 @@ export class Select {
159
159
  }
160
160
  async onEnterNavigation() {
161
161
  var _a, _b;
162
+ if (this.isMultipleMode) {
163
+ return;
164
+ }
162
165
  if (this.editable && !this.itemExists(this.inputFilterText)) {
163
166
  this.emitAddItem(this.inputFilterText);
164
167
  this.navigationItem = this.items[this.items.length - 1];
@@ -216,6 +219,7 @@ export class Select {
216
219
  this.value = [];
217
220
  this.selectedIndices = [];
218
221
  this.itemSelectionChange.emit(null);
222
+ this.dropdownShow = false;
219
223
  }
220
224
  render() {
221
225
  var _a, _b, _c;
@@ -230,28 +234,32 @@ export class Select {
230
234
  this.dropdownAnchor = ref;
231
235
  if (!this.editable)
232
236
  this.dropdownWrapperRef = ref;
233
- } }, h("div", { class: "input-container" }, this.isMultipleMode ? (h("div", { class: "chips" }, (_a = this.selectedItems) === null || _a === void 0 ? void 0 : _a.map((item) => (h("ix-filter-chip", { disabled: this.disabled || this.readonly, onCloseClick: (e) => {
234
- e.preventDefault();
235
- e.stopPropagation();
236
- this.emitItemClick(item.value);
237
- } }, item.label))))) : null, h("div", { class: "trigger" }, h("input", { "data-testid": "input", disabled: this.disabled, readOnly: this.readonly, type: "text", class: {
237
+ } }, h("div", { class: "input-container" }, h("div", { class: "chips" }, this.isMultipleMode
238
+ ? (_a = this.selectedItems) === null || _a === void 0 ? void 0 : _a.map((item) => (h("ix-filter-chip", { disabled: this.disabled || this.readonly, onCloseClick: (e) => {
239
+ e.preventDefault();
240
+ e.stopPropagation();
241
+ this.emitItemClick(item.value);
242
+ } }, item.label)))
243
+ : '', h("div", { class: "trigger" }, h("input", { "data-testid": "input", disabled: this.disabled, readOnly: this.readonly, type: "text", class: {
238
244
  'allow-clear': this.allowClear && !!((_b = this.value) === null || _b === void 0 ? void 0 : _b.length),
239
245
  }, placeholder: this.editable
240
246
  ? this.i18nPlaceholderEditable
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) => {
242
- if (this.editable)
243
- this.dropdownWrapperRef = ref;
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) => {
247
+ : this.i18nPlaceholder, value: this.inputValue, ref: (ref) => (this.inputRef = ref), onInput: () => this.filterItemsWithTypeahead() }), this.isMultipleMode &&
248
+ this.allowClear &&
249
+ (((_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) => {
245
250
  e.preventDefault();
246
251
  e.stopPropagation();
247
252
  this.clear();
248
- } })) : null), h("ix-dropdown", { ref: (ref) => (this.dropdownRef = ref), show: this.dropdownShow, style: {
253
+ } })) : null, this.disabled || this.readonly ? null : (h("div", { class: "chevron-down-container", ref: (ref) => {
254
+ if (this.editable)
255
+ this.dropdownWrapperRef = ref;
256
+ } }, h("ix-icon", { class: "chevron", name: "chevron-down-small" }))))))), h("ix-dropdown", { ref: (ref) => (this.dropdownRef = ref), show: this.dropdownShow, style: {
249
257
  width: '100%',
250
258
  }, class: {
251
259
  'd-none': this.disabled ||
252
260
  this.readonly ||
253
261
  (this.isDropdownEmpty && !this.editable),
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: {
262
+ }, anchor: this.dropdownAnchor, trigger: this.dropdownWrapperRef, onShowChanged: (e) => this.dropdownVisibilityChanged(e), placement: "bottom", positioningStrategy: 'fixed', adjustDropdownWidthToReferenceWidth: true }, h("div", { class: "select-list-header", title: this.i18nSelectListHeader }, 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: {
255
263
  'add-item': true,
256
264
  'd-none': !(this.editable && this.inputFilterText),
257
265
  }, label: this.inputFilterText, onItemClick: (e) => {
@@ -0,0 +1,61 @@
1
+ import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
+ import { d as defineCustomElement$2 } from './icon.js';
3
+ import { d as defineCustomElement$1 } from './icon-button.js';
4
+
5
+ const groupContextMenuCss = ".sc-ix-group-context-menu-h{display:block;position:relative;-webkit-margin-before:0.3125rem;margin-block-start:0.3125rem;-webkit-margin-end:0.3125rem;margin-inline-end:0.3125rem;-webkit-margin-start:auto;margin-inline-start:auto}.sc-ix-group-context-menu-h ix-icon-button.sc-ix-group-context-menu::after{display:none}.sc-ix-group-context-menu-h .hide.sc-ix-group-context-menu{visibility:collapse}";
6
+
7
+ const GroupContextMenu = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
8
+ constructor() {
9
+ super();
10
+ this.__registerHost();
11
+ this.showContextMenu = false;
12
+ }
13
+ get dropdownElement() {
14
+ return this.host.querySelector('ix-dropdown');
15
+ }
16
+ get groupDropdownItem() {
17
+ return this.host.querySelectorAll('ix-group-dropdown-item');
18
+ }
19
+ configureDropdown(triggerElement) {
20
+ this.dropdownElement.positioningStrategy = 'fixed';
21
+ this.dropdownElement.trigger = triggerElement;
22
+ }
23
+ componentWillRender() {
24
+ this.showContextMenu = !!this.dropdownElement;
25
+ }
26
+ disconnectedCallback() {
27
+ this.observer.disconnect();
28
+ }
29
+ render() {
30
+ return (h(Host, null, h("ix-icon-button", { class: { hide: !this.showContextMenu }, ref: (ref) => this.dropdownElement ? this.configureDropdown(ref) : null, size: "24", ghost: true, icon: "context-menu" }), h("slot", null)));
31
+ }
32
+ get host() { return this; }
33
+ static get style() { return groupContextMenuCss; }
34
+ }, [6, "ix-group-context-menu", {
35
+ "showContextMenu": [32]
36
+ }]);
37
+ function defineCustomElement() {
38
+ if (typeof customElements === "undefined") {
39
+ return;
40
+ }
41
+ const components = ["ix-group-context-menu", "ix-icon", "ix-icon-button"];
42
+ components.forEach(tagName => { switch (tagName) {
43
+ case "ix-group-context-menu":
44
+ if (!customElements.get(tagName)) {
45
+ customElements.define(tagName, GroupContextMenu);
46
+ }
47
+ break;
48
+ case "ix-icon":
49
+ if (!customElements.get(tagName)) {
50
+ defineCustomElement$2();
51
+ }
52
+ break;
53
+ case "ix-icon-button":
54
+ if (!customElements.get(tagName)) {
55
+ defineCustomElement$1();
56
+ }
57
+ break;
58
+ } });
59
+ }
60
+
61
+ export { GroupContextMenu as G, defineCustomElement as d };
@@ -1,7 +1,7 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
2
  import { d as defineCustomElement$1 } from './icon.js';
3
3
 
4
- const groupItemCss = ".sc-ix-group-item-h{display:flex;min-height:2.25rem;height:2.25rem;align-items:center;justify-content:space-between;padding:0.5rem 1.5rem 0.5rem 2.5rem;position:relative;margin-top:0.0625rem;border:1px solid var(--theme-group-item--border-color);outline:none;background-color:var(--theme-group-item--background)}.last.sc-ix-group-item-h{border-bottom-left-radius:0.25rem;border-bottom-right-radius:0.25rem}.sc-ix-group-item-h ix-icon.sc-ix-group-item{margin-right:0.25rem;margin-top:-0.125rem}.sc-ix-group-item-h .group-entry-selection-indicator.sc-ix-group-item{position:absolute;left:0;height:100%;width:0.25rem}.sc-ix-group-item-h .group-entry-text.sc-ix-group-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1}.sc-ix-group-item-h .group-entry-text-secondary.sc-ix-group-item{display:flex;justify-content:flex-end;flex-grow:1;white-space:nowrap;color:var(--theme-color-soft-text);font-size:0.875rem}.sc-ix-group-item-h .group-entry-text-secondary.sc-ix-group-item,.sc-ix-group-item-h .group-entry-text-secondary.sc-ix-group-item span.sc-ix-group-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled):hover{background-color:var(--theme-group-item--background--hover);border-color:var(--theme-group-item--border-color--hover)}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled):active{background-color:var(--theme-group-item--background--active);border-color:var(--theme-group-item--border-color--active)}.selected.sc-ix-group-item-h{border-top-width:0.062rem !important;border-color:var(--theme-group-item--border-color--selected);background-color:var(--theme-group-item--background--selected)}.selected.sc-ix-group-item-h .group-entry-selection-indicator.sc-ix-group-item{background-color:var(--theme-color-input-focus)}.sc-ix-group-item-h:not(.disabled):not(:disabled):focus-visible{border-color:var(--focus--border-color) !important}";
4
+ const groupItemCss = ".sc-ix-group-item-h{display:flex;min-height:2.25rem;height:2.25rem;align-items:center;justify-content:space-between;padding:0.5rem 1.5rem 0.5rem 2.5rem;position:relative;margin-top:0.0625rem;border:1px solid var(--theme-group-item--border-color);outline:none;background-color:var(--theme-group-item--background)}.last.sc-ix-group-item-h{border-bottom-left-radius:0.25rem;border-bottom-right-radius:0.25rem}.sc-ix-group-item-h ix-icon.sc-ix-group-item{margin-right:0.25rem;margin-top:-0.125rem}.sc-ix-group-item-h .group-entry-selection-indicator.sc-ix-group-item{position:absolute;left:0;height:100%;width:0.25rem}.sc-ix-group-item-h .group-entry-text.sc-ix-group-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;flex-grow:1}.sc-ix-group-item-h .group-entry-text-secondary.sc-ix-group-item{display:flex;justify-content:flex-end;flex-grow:1;white-space:nowrap;color:var(--theme-color-soft-text);font-size:0.875rem}.sc-ix-group-item-h .group-entry-text-secondary.sc-ix-group-item,.sc-ix-group-item-h .group-entry-text-secondary.sc-ix-group-item span.sc-ix-group-item{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled):hover{background-color:var(--theme-group-item--background--hover);border-color:var(--theme-group-item--border-color--hover)}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-item-h:not(.suppress-selection):not(.disabled):not(:disabled):active{background-color:var(--theme-group-item--background--active);border-color:var(--theme-group-item--border-color--active)}.selected.sc-ix-group-item-h{border-top-width:0.062rem !important;border-color:var(--theme-group-item--border-color--selected);background-color:var(--theme-group-item--background--selected)}.selected.sc-ix-group-item-h .group-entry-selection-indicator.sc-ix-group-item{background-color:var(--theme-color-input--focus)}.sc-ix-group-item-h:not(.disabled):not(:disabled):focus-visible{border-color:var(--focus--border-color) !important}";
5
5
 
6
6
  const GroupItem = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
7
7
  constructor() {
@@ -2,6 +2,8 @@ import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/clien
2
2
  import { g as getButtonClasses } from './base-button.js';
3
3
  import { d as defineCustomElement$1 } from './icon.js';
4
4
 
5
+ const iconButtonCss = ".sc-ix-icon-button-h .icon-button.sc-ix-icon-button{padding:0;overflow:hidden}.sc-ix-icon-button-h .btn-icon-12.sc-ix-icon-button{height:1rem;width:1rem;min-width:1rem;min-height:1rem}.sc-ix-icon-button-h .btn-icon-16.sc-ix-icon-button{height:1.5rem;width:1.5rem;min-width:1.5rem;min-height:1.5rem}.sc-ix-icon-button-h .btn-icon-32.sc-ix-icon-button{height:2rem;width:2rem;min-width:2rem;min-height:2rem}";
6
+
5
7
  const IconButton = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
6
8
  constructor() {
7
9
  super();
@@ -19,11 +21,12 @@ const IconButton = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
19
21
  this.type = 'button';
20
22
  }
21
23
  getIconButtonClasses() {
22
- return Object.assign({ 'btn-icon-xs': this.size === '12', 'btn-icon-s': this.size === '16' }, getButtonClasses(this.variant, this.outline, this.ghost || this.invisible, true, this.oval, this.selected, this.disabled));
24
+ return Object.assign(Object.assign({}, getButtonClasses(this.variant, this.outline, this.ghost || this.invisible, true, this.oval, this.selected, this.disabled)), { 'icon-button': true, 'btn-icon-12': this.size === '12', 'btn-icon-16': this.size === '16', 'btn-icon-32': this.size === '32' || this.size === '24' || !this.size });
23
25
  }
24
26
  render() {
25
27
  return (h("button", { class: this.getIconButtonClasses(), type: this.type }, h("ix-icon", { size: this.size, name: this.icon, color: this.color }), h("div", { style: { display: 'none' } }, h("slot", null))));
26
28
  }
29
+ static get style() { return iconButtonCss; }
27
30
  }, [6, "ix-icon-button", {
28
31
  "variant": [1],
29
32
  "outline": [4],
@@ -23,6 +23,7 @@ export { FilterChip as IxFilterChip } from '../types/components/filter-chip/filt
23
23
  export { FlipTile as IxFlipTile } from '../types/components/flip-tile/flip-tile';
24
24
  export { FlipTileContent as IxFlipTileContent } from '../types/components/flip-tile-content/flip-tile-content';
25
25
  export { Group as IxGroup } from '../types/components/group/group';
26
+ export { GroupContextMenu as IxGroupContextMenu } from '../types/components/group/group-context-menu';
26
27
  export { GroupDropdownItem as IxGroupDropdownItem } from '../types/components/group-dropdown-item/group-dropdown-item';
27
28
  export { GroupItem as IxGroupItem } from '../types/components/group-item/group-item';
28
29
  export { Icon as IxIcon } from '../types/components/icon/icon';
@@ -29,6 +29,7 @@ export { IxExpandingSearch, defineCustomElement as defineCustomElementIxExpandin
29
29
  export { IxFilterChip, defineCustomElement as defineCustomElementIxFilterChip } from './ix-filter-chip.js';
30
30
  export { IxFlipTileContent, defineCustomElement as defineCustomElementIxFlipTileContent } from './ix-flip-tile-content.js';
31
31
  export { IxGroup, defineCustomElement as defineCustomElementIxGroup } from './ix-group.js';
32
+ export { IxGroupContextMenu, defineCustomElement as defineCustomElementIxGroupContextMenu } from './ix-group-context-menu.js';
32
33
  export { IxGroupDropdownItem, defineCustomElement as defineCustomElementIxGroupDropdownItem } from './ix-group-dropdown-item.js';
33
34
  export { IxGroupItem, defineCustomElement as defineCustomElementIxGroupItem } from './ix-group-item.js';
34
35
  export { IxIcon, defineCustomElement as defineCustomElementIxIcon } from './ix-icon.js';
@@ -0,0 +1,11 @@
1
+ import type { Components, JSX } from "../types/components";
2
+
3
+ interface IxGroupContextMenu extends Components.IxGroupContextMenu, HTMLElement {}
4
+ export const IxGroupContextMenu: {
5
+ prototype: IxGroupContextMenu;
6
+ new (): IxGroupContextMenu;
7
+ };
8
+ /**
9
+ * Used to define this component and all nested components recursively.
10
+ */
11
+ export const defineCustomElement: () => void;
@@ -0,0 +1,6 @@
1
+ import { G as GroupContextMenu, d as defineCustomElement$1 } from './group-context-menu.js';
2
+
3
+ const IxGroupContextMenu = GroupContextMenu;
4
+ const defineCustomElement = defineCustomElement$1;
5
+
6
+ export { IxGroupContextMenu, defineCustomElement };
@@ -1,10 +1,10 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { d as defineCustomElement$5 } from './dropdown.js';
2
+ import { d as defineCustomElement$5 } from './group-context-menu.js';
3
3
  import { d as defineCustomElement$4 } from './group-item.js';
4
4
  import { d as defineCustomElement$3 } from './icon.js';
5
5
  import { d as defineCustomElement$2 } from './icon-button.js';
6
6
 
7
- const groupCss = ".sc-ix-group-h{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:column;position:relative;max-width:19.75rem;border-color:var(--theme-group-item--border-color)}.sc-ix-group-h .group-header-context-button.sc-ix-group{display:block;position:relative;margin-top:5px;margin-right:5px;margin-left:auto}.sc-ix-group-h .group-header-context-button.sc-ix-group ix-icon-button.sc-ix-group::after{display:none}.sc-ix-group-h .group-header.sc-ix-group{height:4rem;min-height:4rem;max-height:4rem;border-radius:0.25rem;border:var(--theme-std-bdr-1);display:flex;background-color:var(--theme-group-item--background);border:1px solid var(--theme-group-item--border-color);color:var(--theme-group-header--color);cursor:pointer}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled):hover{background-color:var(--theme-group-item--background--hover);border-color:var(--theme-group-item--border-color--hover)}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled):active{background-color:var(--theme-group-item--background--active);border-color:var(--theme-group-item--border-color--active)}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled):focus-visible{border-color:var(--focus--border-color);border-radius:var(--theme-group--border-radius--focus);outline:none}.sc-ix-group-h .group-header-clickable.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;width:100%;min-width:0}.sc-ix-group-h .group-header.expand.sc-ix-group{border-bottom-left-radius:0;border-bottom-right-radius:0}.sc-ix-group-h .group-header-selection-indicator.sc-ix-group{width:0.25rem}.sc-ix-group-h .group-header-content.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:row;justify-content:space-between;min-width:0;padding:0.5rem;padding-left:0;width:100%}.sc-ix-group-h .group-header-content.sc-ix-group .group-header-props-container.sc-ix-group{width:100%}.sc-ix-group-h .group-header-content.sc-ix-group .group-header-title.sc-ix-group{display:flex;align-items:center;font-size:1rem;font-weight:700;height:1.5rem}.sc-ix-group-h .group-header-content.sc-ix-group .group-header-title.sc-ix-group>*.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sc-ix-group-h .group-header-content.sc-ix-group .group-subheader.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:1.25rem;font-size:0.875rem;color:var(--theme-group-subheader--color)}.sc-ix-group-h .expand-icon.sc-ix-group{padding:0.125rem 0.437rem;color:var(--theme-color-std-text)}.sc-ix-group-h .btn-expand-header.sc-ix-group{margin:0.5rem;-webkit-margin-end:0.25rem;margin-inline-end:0.25rem}.sc-ix-group-h .group-content.sc-ix-group{display:flex;flex-direction:column}.sc-ix-group-h .group-header.selected.sc-ix-group{border:var(--theme-primary-bdr-2);background-color:var(--theme-group-item--background--selected)}.sc-ix-group-h .group-header.selected.sc-ix-group .group-header-selection-indicator.sc-ix-group{background-color:var(--theme-color-input-focus)}.sc-ix-group-h .footer.sc-ix-group{height:auto;min-height:0}";
7
+ const groupCss = ".sc-ix-group-h{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:column;position:relative;max-width:19.75rem;border-color:var(--theme-group-item--border-color)}.sc-ix-group-h .group-header.sc-ix-group{height:4rem;min-height:4rem;max-height:4rem;border-radius:0.25rem;border:var(--theme-std-bdr-1);display:flex;background-color:var(--theme-group-item--background);border:1px solid var(--theme-group-item--border-color);color:var(--theme-group-header--color);cursor:pointer}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled):hover{background-color:var(--theme-group-item--background--hover);border-color:var(--theme-group-item--border-color--hover)}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled){cursor:pointer}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled):active{background-color:var(--theme-group-item--background--active);border-color:var(--theme-group-item--border-color--active)}.sc-ix-group-h .group-header.sc-ix-group:not(.disabled):not(:disabled):focus-visible{border-color:var(--focus--border-color);border-radius:var(--theme-group--border-radius--focus);outline:none}.sc-ix-group-h .group-header-clickable.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;width:100%;min-width:0}.sc-ix-group-h .group-header.expand.sc-ix-group{border-bottom-left-radius:0;border-bottom-right-radius:0}.sc-ix-group-h .group-header-selection-indicator.sc-ix-group{width:0.25rem}.sc-ix-group-h .group-header-content.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;flex-direction:row;justify-content:space-between;min-width:0;padding:0.5rem;padding-left:0;width:100%}.sc-ix-group-h .group-header-content.sc-ix-group .group-header-props-container.sc-ix-group{width:100%}.sc-ix-group-h .group-header-content.sc-ix-group .group-header-title.sc-ix-group{display:flex;align-items:center;font-size:1rem;font-weight:700;height:1.5rem}.sc-ix-group-h .group-header-content.sc-ix-group .group-header-title.sc-ix-group>*.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:0}.sc-ix-group-h .group-header-content.sc-ix-group .group-subheader.sc-ix-group{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;height:1.25rem;font-size:0.875rem;color:var(--theme-group-subheader--color)}.sc-ix-group-h .expand-icon.sc-ix-group{padding:0.125rem 0.437rem;color:var(--theme-color-std-text)}.sc-ix-group-h .btn-expand-header.sc-ix-group{margin:0.5rem;-webkit-margin-end:0.25rem;margin-inline-end:0.25rem}.sc-ix-group-h .group-content.sc-ix-group{display:flex;flex-direction:column}.sc-ix-group-h .group-header.selected.sc-ix-group{border:var(--theme-primary-bdr-2);background-color:var(--theme-group-item--background--selected)}.sc-ix-group-h .group-header.selected.sc-ix-group .group-header-selection-indicator.sc-ix-group{background-color:var(--theme-color-input--focus)}.sc-ix-group-h .footer.sc-ix-group{height:auto;min-height:0}";
8
8
 
9
9
  const Group = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
10
10
  constructor() { super(); this.__registerHost(); this.selectGroup = createEvent(this, "selectGroup", 7); this.selectItem = createEvent(this, "selectItem", 7); this.collapsedChanged = createEvent(this, "collapsedChanged", 7); this.suppressHeaderSelection = false; this.header = undefined; this.subHeader = undefined; this.collapsed = true; this.selected = undefined; this.index = undefined; this.expandOnHeaderClick = false; this.dropdownTriggerRef = undefined; }
@@ -99,7 +99,7 @@ const Group = /*@__PURE__*/ proxyCustomElement(class extends HTMLElement {
99
99
  'group-header': true,
100
100
  expand: !this.collapsed,
101
101
  selected: this.selected,
102
- }, tabindex: "0" }, h("div", { class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { class: "group-header-selection-indicator" }), h("ix-icon", { class: "btn-expand-header", name: `chevron-${this.collapsed ? 'right' : 'down'}-small`, onClick: (e) => this.onExpandClick(e) }), h("div", { class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { name: "header" }))), h("div", { class: { 'group-header-context-button': true, 'd-none': false } }, h("ix-icon-button", { ref: (ref) => (this.dropdownTriggerRef = ref), size: "24", ghost: true, icon: "context-menu" }), h("ix-dropdown", { trigger: this.dropdownTriggerRef }, h("slot", { name: "dropdown" })))), h("div", { class: {
102
+ }, tabindex: "0" }, h("div", { class: "group-header-clickable", onClick: (e) => this.onHeaderClick(e) }, h("div", { class: "group-header-selection-indicator" }), h("ix-icon", { class: "btn-expand-header", name: `chevron-${this.collapsed ? 'right' : 'down'}-small`, onClick: (e) => this.onExpandClick(e) }), h("div", { class: "group-header-content" }, this.header ? (h("div", { class: "group-header-props-container" }, h("div", { class: "group-header-title" }, h("span", { title: this.header }, this.header)), h("div", { class: "group-subheader", title: this.subHeader }, this.subHeader))) : null, h("slot", { name: "header" }))), h("ix-group-context-menu", null, h("slot", { name: "dropdown" }))), h("div", { class: {
103
103
  'group-content': true,
104
104
  'd-none': this.collapsed,
105
105
  } }, h("slot", null)), h("div", { class: "d-none" }, h("ix-group-item", { class: "footer last", suppressSelection: true, focusable: false }, h("slot", { name: "footer" })))));
@@ -120,14 +120,14 @@ function defineCustomElement$1() {
120
120
  if (typeof customElements === "undefined") {
121
121
  return;
122
122
  }
123
- const components = ["ix-group", "ix-dropdown", "ix-group-item", "ix-icon", "ix-icon-button"];
123
+ const components = ["ix-group", "ix-group-context-menu", "ix-group-item", "ix-icon", "ix-icon-button"];
124
124
  components.forEach(tagName => { switch (tagName) {
125
125
  case "ix-group":
126
126
  if (!customElements.get(tagName)) {
127
127
  customElements.define(tagName, Group);
128
128
  }
129
129
  break;
130
- case "ix-dropdown":
130
+ case "ix-group-context-menu":
131
131
  if (!customElements.get(tagName)) {
132
132
  defineCustomElement$5();
133
133
  }
@@ -17,7 +17,7 @@ function getModalContainer() {
17
17
  const containerList = Array.from(document.querySelectorAll('ix-modal-container'));
18
18
  const [container] = containerList;
19
19
  if (containerList.length > 1) {
20
- console.warn('Multiple modal container are found. Only there first is used.');
20
+ console.warn('Multiple modal containers were found. The one instatiated first will be used.');
21
21
  return container;
22
22
  }
23
23
  if (!container) {