@siemens/ix 0.0.0-pr-2297-20251204163058 → 0.0.0-pr-2300-20260107140403

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 (190) hide show
  1. package/READMEOSS.html +1 -1
  2. package/components/index.js +1 -1
  3. package/components/index.js.map +1 -1
  4. package/components/ix-action-card.js +8 -3
  5. package/components/ix-action-card.js.map +1 -1
  6. package/components/ix-application.js +1 -1
  7. package/components/ix-breadcrumb.js +1 -1
  8. package/components/ix-card-list.js +1 -1
  9. package/components/ix-card.js +1 -1
  10. package/components/ix-date-dropdown.js +1 -1
  11. package/components/ix-dropdown-button.js +8 -4
  12. package/components/ix-dropdown-button.js.map +1 -1
  13. package/components/ix-dropdown-item.js +1 -1
  14. package/components/ix-menu-avatar-item.js +1 -1
  15. package/components/ix-menu-avatar.js +2 -2
  16. package/components/ix-menu-category.js +1 -1
  17. package/components/ix-menu.js +21 -13
  18. package/components/ix-menu.js.map +1 -1
  19. package/components/ix-message-bar.js +1 -1
  20. package/components/ix-message-bar.js.map +1 -1
  21. package/components/ix-pagination.js +3 -3
  22. package/components/ix-pane-layout.js +2 -1
  23. package/components/ix-pane-layout.js.map +1 -1
  24. package/components/ix-push-card.js +8 -3
  25. package/components/ix-push-card.js.map +1 -1
  26. package/components/ix-select-item.js +1 -1
  27. package/components/ix-select.js +1 -1
  28. package/components/ix-toast-container.js +5 -4
  29. package/components/ix-toast-container.js.map +1 -1
  30. package/components/ix-toast.js +1 -1
  31. package/components/{p-Dy6xvLn4.js → p-BCLcSQh4.js} +3 -3
  32. package/components/{p-Dy6xvLn4.js.map → p-BCLcSQh4.js.map} +1 -1
  33. package/components/{p-BOQ00Fbs.js → p-Ce5NQ5Zo.js} +4 -4
  34. package/components/{p-BOQ00Fbs.js.map → p-Ce5NQ5Zo.js.map} +1 -1
  35. package/components/{p-BLeWaHpy.js → p-DYCKIBUp.js} +12 -6
  36. package/components/p-DYCKIBUp.js.map +1 -0
  37. package/components/{p-Bk0vKwmt.js → p-DmhyoH-k.js} +3 -3
  38. package/components/{p-Bk0vKwmt.js.map → p-DmhyoH-k.js.map} +1 -1
  39. package/components/{p-CsHYWHE6.js → p-G5i1Siog.js} +15 -5
  40. package/components/p-G5i1Siog.js.map +1 -0
  41. package/components/{p-hwPzPVf8.js → p-rFxiFp44.js} +12 -6
  42. package/components/p-rFxiFp44.js.map +1 -0
  43. package/components/{p-DlVaL0Yi.js → p-tpxSImkl.js} +9 -4
  44. package/components/p-tpxSImkl.js.map +1 -0
  45. package/dist/cjs/index.cjs.js +1 -1
  46. package/dist/cjs/index.cjs.js.map +1 -1
  47. package/dist/cjs/ix-action-card.cjs.entry.js +5 -1
  48. package/dist/cjs/ix-action-card.entry.cjs.js.map +1 -1
  49. package/dist/cjs/ix-application.cjs.entry.js +1 -1
  50. package/dist/cjs/ix-card.ix-card-content.entry.cjs.js.map +1 -1
  51. package/dist/cjs/ix-card_2.cjs.entry.js +8 -3
  52. package/dist/cjs/ix-dropdown-button.cjs.entry.js +7 -3
  53. package/dist/cjs/ix-dropdown-button.entry.cjs.js.map +1 -1
  54. package/dist/cjs/ix-dropdown-item.cjs.entry.js +9 -3
  55. package/dist/cjs/ix-dropdown-item.entry.cjs.js.map +1 -1
  56. package/dist/cjs/ix-menu.cjs.entry.js +20 -13
  57. package/dist/cjs/ix-menu.entry.cjs.js.map +1 -1
  58. package/dist/cjs/ix-message-bar.cjs.entry.js +1 -1
  59. package/dist/cjs/ix-message-bar.entry.cjs.js.map +1 -1
  60. package/dist/cjs/ix-pane-layout.cjs.entry.js +2 -1
  61. package/dist/cjs/ix-pane-layout.entry.cjs.js.map +1 -1
  62. package/dist/cjs/ix-push-card.cjs.entry.js +5 -1
  63. package/dist/cjs/ix-push-card.entry.cjs.js.map +1 -1
  64. package/dist/cjs/ix-toast-container.cjs.entry.js +4 -3
  65. package/dist/cjs/ix-toast-container.entry.cjs.js.map +1 -1
  66. package/dist/cjs/ix-toast.cjs.entry.js +6 -2
  67. package/dist/cjs/ix-toast.entry.cjs.js.map +1 -1
  68. package/dist/cjs/loader.cjs.js +1 -1
  69. package/dist/cjs/siemens-ix.cjs.js +1 -1
  70. package/dist/cjs/{theme-switcher-76Td30il.js → theme-switcher-BCyZa6wG.js} +15 -5
  71. package/dist/cjs/theme-switcher-BCyZa6wG.js.map +1 -0
  72. package/dist/collection/components/action-card/action-card.js +25 -1
  73. package/dist/collection/components/action-card/action-card.js.map +1 -1
  74. package/dist/collection/components/card/card.css +49 -0
  75. package/dist/collection/components/card/card.js +27 -2
  76. package/dist/collection/components/card/card.js.map +1 -1
  77. package/dist/collection/components/dropdown-button/dropdown-button.js +8 -4
  78. package/dist/collection/components/dropdown-button/dropdown-button.js.map +1 -1
  79. package/dist/collection/components/dropdown-item/dropdown-item.js +10 -4
  80. package/dist/collection/components/dropdown-item/dropdown-item.js.map +1 -1
  81. package/dist/collection/components/menu/menu.js +21 -12
  82. package/dist/collection/components/menu/menu.js.map +1 -1
  83. package/dist/collection/components/message-bar/message-bar.css +0 -11
  84. package/dist/collection/components/pane-layout/pane-layout.js +2 -1
  85. package/dist/collection/components/pane-layout/pane-layout.js.map +1 -1
  86. package/dist/collection/components/push-card/push-card.js +25 -1
  87. package/dist/collection/components/push-card/push-card.js.map +1 -1
  88. package/dist/collection/components/toast/toast-container.js +4 -3
  89. package/dist/collection/components/toast/toast-container.js.map +1 -1
  90. package/dist/collection/components/toast/toast-utils.js.map +1 -1
  91. package/dist/collection/components/toast/toast.js +26 -2
  92. package/dist/collection/components/toast/toast.js.map +1 -1
  93. package/dist/collection/components/utils/theme-switcher.js +13 -3
  94. package/dist/collection/components/utils/theme-switcher.js.map +1 -1
  95. package/dist/esm/index.js +1 -1
  96. package/dist/esm/index.js.map +1 -1
  97. package/dist/esm/ix-action-card.entry.js +5 -1
  98. package/dist/esm/ix-action-card.entry.js.map +1 -1
  99. package/dist/esm/ix-application.entry.js +1 -1
  100. package/dist/esm/ix-card.ix-card-content.entry.js.map +1 -1
  101. package/dist/esm/ix-card_2.entry.js +8 -3
  102. package/dist/esm/ix-dropdown-button.entry.js +7 -3
  103. package/dist/esm/ix-dropdown-button.entry.js.map +1 -1
  104. package/dist/esm/ix-dropdown-item.entry.js +9 -3
  105. package/dist/esm/ix-dropdown-item.entry.js.map +1 -1
  106. package/dist/esm/ix-menu.entry.js +20 -13
  107. package/dist/esm/ix-menu.entry.js.map +1 -1
  108. package/dist/esm/ix-message-bar.entry.js +1 -1
  109. package/dist/esm/ix-message-bar.entry.js.map +1 -1
  110. package/dist/esm/ix-pane-layout.entry.js +2 -1
  111. package/dist/esm/ix-pane-layout.entry.js.map +1 -1
  112. package/dist/esm/ix-push-card.entry.js +5 -1
  113. package/dist/esm/ix-push-card.entry.js.map +1 -1
  114. package/dist/esm/ix-toast-container.entry.js +4 -3
  115. package/dist/esm/ix-toast-container.entry.js.map +1 -1
  116. package/dist/esm/ix-toast.entry.js +6 -2
  117. package/dist/esm/ix-toast.entry.js.map +1 -1
  118. package/dist/esm/loader.js +1 -1
  119. package/dist/esm/siemens-ix.js +1 -1
  120. package/dist/esm/{theme-switcher-DRqJGlG2.js → theme-switcher-EbjilqRl.js} +15 -5
  121. package/dist/esm/theme-switcher-EbjilqRl.js.map +1 -0
  122. package/dist/siemens-ix/index.esm.js +1 -1
  123. package/dist/siemens-ix/index.esm.js.map +1 -1
  124. package/dist/siemens-ix/ix-action-card.entry.esm.js.map +1 -1
  125. package/dist/siemens-ix/ix-card.ix-card-content.entry.esm.js.map +1 -1
  126. package/dist/siemens-ix/ix-dropdown-button.entry.esm.js.map +1 -1
  127. package/dist/siemens-ix/ix-dropdown-item.entry.esm.js.map +1 -1
  128. package/dist/siemens-ix/ix-menu.entry.esm.js.map +1 -1
  129. package/dist/siemens-ix/ix-message-bar.entry.esm.js.map +1 -1
  130. package/dist/siemens-ix/ix-pane-layout.entry.esm.js.map +1 -1
  131. package/dist/siemens-ix/ix-push-card.entry.esm.js.map +1 -1
  132. package/dist/siemens-ix/ix-toast-container.entry.esm.js.map +1 -1
  133. package/dist/siemens-ix/ix-toast.entry.esm.js.map +1 -1
  134. package/dist/siemens-ix/p-0063d077.entry.js +2 -0
  135. package/dist/siemens-ix/p-0063d077.entry.js.map +1 -0
  136. package/dist/siemens-ix/{p-6dc6eb63.entry.js → p-01e16377.entry.js} +2 -2
  137. package/dist/siemens-ix/{p-6dc6eb63.entry.js.map → p-01e16377.entry.js.map} +1 -1
  138. package/dist/siemens-ix/p-2e1bb4bf.entry.js +2 -0
  139. package/dist/siemens-ix/p-2e1bb4bf.entry.js.map +1 -0
  140. package/dist/siemens-ix/p-3c297dc0.entry.js +2 -0
  141. package/dist/siemens-ix/p-3c297dc0.entry.js.map +1 -0
  142. package/dist/siemens-ix/p-3ca8fd00.entry.js +2 -0
  143. package/dist/siemens-ix/p-3ca8fd00.entry.js.map +1 -0
  144. package/dist/siemens-ix/{p-367df024.entry.js → p-84178b22.entry.js} +2 -2
  145. package/dist/siemens-ix/p-84178b22.entry.js.map +1 -0
  146. package/dist/siemens-ix/p-944a39a6.entry.js +2 -0
  147. package/dist/siemens-ix/p-944a39a6.entry.js.map +1 -0
  148. package/dist/siemens-ix/{p-b76df1c7.entry.js → p-9f7d9525.entry.js} +2 -2
  149. package/dist/siemens-ix/p-9f7d9525.entry.js.map +1 -0
  150. package/dist/siemens-ix/p-G5i1Siog.js +2 -0
  151. package/dist/siemens-ix/p-G5i1Siog.js.map +1 -0
  152. package/dist/siemens-ix/{p-8f17f6ec.entry.js → p-ec9dc8d8.entry.js} +2 -2
  153. package/dist/siemens-ix/p-ec9dc8d8.entry.js.map +1 -0
  154. package/dist/siemens-ix/{p-35d6b656.entry.js → p-f5dd421a.entry.js} +2 -2
  155. package/dist/siemens-ix/{p-b8f4b001.entry.js → p-f5f9940c.entry.js} +2 -2
  156. package/dist/siemens-ix/p-f5f9940c.entry.js.map +1 -0
  157. package/dist/siemens-ix/siemens-ix.esm.js +1 -1
  158. package/dist/types/components/action-card/action-card.d.ts +4 -0
  159. package/dist/types/components/card/card.d.ts +4 -0
  160. package/dist/types/components/menu/menu.d.ts +1 -0
  161. package/dist/types/components/push-card/push-card.d.ts +4 -0
  162. package/dist/types/components/toast/toast-utils.d.ts +4 -0
  163. package/dist/types/components/toast/toast.d.ts +4 -0
  164. package/dist/types/components.d.ts +40 -0
  165. package/hydrate/index.js +88 -40
  166. package/hydrate/index.mjs +88 -40
  167. package/package.json +1 -1
  168. package/components/p-BLeWaHpy.js.map +0 -1
  169. package/components/p-CsHYWHE6.js.map +0 -1
  170. package/components/p-DlVaL0Yi.js.map +0 -1
  171. package/components/p-hwPzPVf8.js.map +0 -1
  172. package/dist/cjs/theme-switcher-76Td30il.js.map +0 -1
  173. package/dist/esm/theme-switcher-DRqJGlG2.js.map +0 -1
  174. package/dist/siemens-ix/p-0d621531.entry.js +0 -2
  175. package/dist/siemens-ix/p-0d621531.entry.js.map +0 -1
  176. package/dist/siemens-ix/p-2597a988.entry.js +0 -2
  177. package/dist/siemens-ix/p-2597a988.entry.js.map +0 -1
  178. package/dist/siemens-ix/p-33fcea65.entry.js +0 -2
  179. package/dist/siemens-ix/p-33fcea65.entry.js.map +0 -1
  180. package/dist/siemens-ix/p-367df024.entry.js.map +0 -1
  181. package/dist/siemens-ix/p-37bd983a.entry.js +0 -2
  182. package/dist/siemens-ix/p-37bd983a.entry.js.map +0 -1
  183. package/dist/siemens-ix/p-8f17f6ec.entry.js.map +0 -1
  184. package/dist/siemens-ix/p-CsHYWHE6.js +0 -2
  185. package/dist/siemens-ix/p-CsHYWHE6.js.map +0 -1
  186. package/dist/siemens-ix/p-b76df1c7.entry.js.map +0 -1
  187. package/dist/siemens-ix/p-b8f4b001.entry.js.map +0 -1
  188. package/dist/siemens-ix/p-c1160cf8.entry.js +0 -2
  189. package/dist/siemens-ix/p-c1160cf8.entry.js.map +0 -1
  190. /package/dist/siemens-ix/{p-35d6b656.entry.js.map → p-f5dd421a.entry.js.map} +0 -0
@@ -8,6 +8,7 @@
8
8
  */
9
9
  import { h, Host, } from "@stencil/core";
10
10
  import { iconChevronRightSmall, iconSingleCheck, } from "@siemens/ix-icons/icons";
11
+ import { a11yBoolean } from "../utils/a11y";
11
12
  export class DropdownItem {
12
13
  constructor() {
13
14
  /**
@@ -41,15 +42,20 @@ export class DropdownItem {
41
42
  this.icon !== undefined);
42
43
  }
43
44
  render() {
44
- return (h(Host, { key: '4683b34a35d26f4cdce448ed24cdc5115f838fed', class: {
45
+ return (h(Host, { key: '89d6023460273b60bf52f129e456e0d92e51c09d', class: {
45
46
  hover: this.hover,
46
47
  'icon-only': this.isIconOnly(),
47
48
  disabled: this.disabled,
48
49
  submenu: this.isSubMenu,
49
- }, role: "listitem" }, h("button", { key: 'a655623c265f18e805a0f60a093dd4ac565ab35c', type: "button", tabIndex: 0, class: {
50
+ }, role: "listitem" }, h("button", { key: '32feebb5d24eb19af7b5081c4f771a489913180f', type: "button", tabIndex: this.disabled ? -1 : 0, class: {
50
51
  'dropdown-item': true,
51
52
  'no-checked-field': this.suppressChecked,
52
- }, onClick: () => this.emitItemClick(), "aria-label": this.ariaLabelButton }, !this.suppressChecked ? (h("div", { class: "dropdown-item-checked" }, this.checked ? (h("ix-icon", { class: "checkmark", name: iconSingleCheck, size: "16" })) : null)) : null, this.icon ? (h("ix-icon", { class: "dropdown-item-icon", name: this.icon, "aria-label": this.ariaLabelIcon })) : null, h("div", { key: 'd88e90650387ce4dd0d440fe03bf21c19c785709', class: "dropdown-item-text" }, this.label, h("slot", { key: 'd892aabbb2e268d36c348b800c043d08f2ceef83' })), this.isSubMenu ? (h("ix-icon", { name: iconChevronRightSmall, class: 'submenu-icon' })) : null)));
53
+ disabled: this.disabled,
54
+ }, onClick: () => {
55
+ if (!this.disabled) {
56
+ this.emitItemClick();
57
+ }
58
+ }, "aria-label": this.ariaLabelButton, "aria-disabled": a11yBoolean(this.disabled), disabled: this.disabled }, !this.suppressChecked ? (h("div", { class: "dropdown-item-checked" }, this.checked ? (h("ix-icon", { class: "checkmark", name: iconSingleCheck, size: "16" })) : null)) : null, this.icon ? (h("ix-icon", { class: "dropdown-item-icon", name: this.icon, "aria-label": this.ariaLabelIcon })) : null, h("div", { key: 'dbc0b8352eb200eca806604da06e884bc398c5f0', class: "dropdown-item-text" }, this.label, h("slot", { key: 'e9a0a489086d0990f613b9e44fbe16cd00a0794b' })), this.isSubMenu ? (h("ix-icon", { name: iconChevronRightSmall, class: 'submenu-icon' })) : null)));
53
59
  }
54
60
  static get is() { return "ix-dropdown-item"; }
55
61
  static get encapsulation() { return "shadow"; }
@@ -181,7 +187,7 @@ export class DropdownItem {
181
187
  },
182
188
  "getter": false,
183
189
  "setter": false,
184
- "reflect": false,
190
+ "reflect": true,
185
191
  "defaultValue": "false"
186
192
  },
187
193
  "checked": {
@@ -1 +1 @@
1
- {"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown-item/dropdown-item.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,GACL,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,qBAAqB,EACrB,eAAe,GAChB,MAAM,yBAAyB,CAAC;AAOjC,MAAM,OAAO,YAAY;IALzB;QA+BE;;WAEG;QACK,UAAK,GAAG,KAAK,CAAC;QAEtB;;WAEG;QACK,aAAQ,GAAG,KAAK,CAAC;QAEzB;;WAEG;QACK,YAAO,GAAG,KAAK,CAAC;QAExB,gBAAgB;QACR,cAAS,GAAG,KAAK,CAAC;QAE1B,gBAAgB;QACR,oBAAe,GAAG,KAAK,CAAC;KA8EjC;IAzEC,gBAAgB;IAEhB,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,gBAAgB;IAEhB,KAAK,CAAC,sBAAsB;QAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEO,UAAU;QAChB,OAAO,CACL,IAAI,CAAC,KAAK,KAAK,SAAS;YACxB,IAAI,CAAC,WAAW,CAAC,SAAS,KAAK,EAAE;YACjC,IAAI,CAAC,IAAI,KAAK,SAAS,CACxB,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,SAAS;aACxB,EACD,IAAI,EAAC,UAAU;YAEf,+DACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,CAAC,EACX,KAAK,EAAE;oBACL,eAAe,EAAE,IAAI;oBACrB,kBAAkB,EAAE,IAAI,CAAC,eAAe;iBACzC,EACD,OAAO,EAAE,GAAG,EAAE,CAAC,IAAI,CAAC,aAAa,EAAE,gBACvB,IAAI,CAAC,eAAe;gBAE/B,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CACvB,WAAK,KAAK,EAAC,uBAAuB,IAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CACd,eACE,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,eAAe,EACrB,IAAI,EAAC,IAAI,GACA,CACZ,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC,CAAC,CAAC,IAAI;gBACP,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACX,eACE,KAAK,EAAC,oBAAoB,EAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,gBACH,IAAI,CAAC,aAAa,GACrB,CACZ,CAAC,CAAC,CAAC,IAAI;gBACR,4DAAK,KAAK,EAAC,oBAAoB;oBAC5B,IAAI,CAAC,KAAK;oBACX,8DAAa,CACT;gBACL,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAChB,eACE,IAAI,EAAE,qBAAqB,EAC3B,KAAK,EAAE,cAAc,GACZ,CACZ,CAAC,CAAC,CAAC,IAAI,CACD,CACJ,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n} from '@stencil/core';\nimport { DropdownItemWrapper } from '../dropdown/dropdown-controller';\nimport {\n iconChevronRightSmall,\n iconSingleCheck,\n} from '@siemens/ix-icons/icons';\n\n@Component({\n tag: 'ix-dropdown-item',\n styleUrl: 'dropdown-item.scss',\n shadow: true,\n})\nexport class DropdownItem implements DropdownItemWrapper {\n @Element() hostElement!: HTMLIxDropdownItemElement;\n\n /**\n * Label of dropdown item\n */\n @Prop() label?: string;\n\n /**\n * Icon of dropdown item\n */\n @Prop() icon?: string;\n\n /**\n * ARIA label for the icon\n */\n @Prop() ariaLabelIcon?: string;\n\n /**\n * ARIA label for the item's button\n * Will be set as aria-label for the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelButton?: string;\n\n /**\n * Display hover state\n */\n @Prop() hover = false;\n\n /**\n * Disable item and remove event listeners\n */\n @Prop() disabled = false;\n\n /**\n * Whether the item is checked or not. If true a checkmark will mark the item as checked.\n */\n @Prop() checked = false;\n\n /** @internal */\n @Prop() isSubMenu = false;\n\n /** @internal */\n @Prop() suppressChecked = false;\n\n /** @internal */\n @Event() itemClick!: EventEmitter<HTMLIxDropdownItemElement>;\n\n /** @internal */\n @Method()\n async emitItemClick() {\n this.itemClick.emit(this.hostElement);\n }\n\n /** @internal */\n @Method()\n async getDropdownItemElement() {\n return this.hostElement;\n }\n\n private isIconOnly() {\n return (\n this.label === undefined &&\n this.hostElement.innerText === '' &&\n this.icon !== undefined\n );\n }\n\n render() {\n return (\n <Host\n class={{\n hover: this.hover,\n 'icon-only': this.isIconOnly(),\n disabled: this.disabled,\n submenu: this.isSubMenu,\n }}\n role=\"listitem\"\n >\n <button\n type=\"button\"\n tabIndex={0}\n class={{\n 'dropdown-item': true,\n 'no-checked-field': this.suppressChecked,\n }}\n onClick={() => this.emitItemClick()}\n aria-label={this.ariaLabelButton}\n >\n {!this.suppressChecked ? (\n <div class=\"dropdown-item-checked\">\n {this.checked ? (\n <ix-icon\n class=\"checkmark\"\n name={iconSingleCheck}\n size=\"16\"\n ></ix-icon>\n ) : null}\n </div>\n ) : null}\n {this.icon ? (\n <ix-icon\n class=\"dropdown-item-icon\"\n name={this.icon}\n aria-label={this.ariaLabelIcon}\n ></ix-icon>\n ) : null}\n <div class=\"dropdown-item-text\">\n {this.label}\n <slot></slot>\n </div>\n {this.isSubMenu ? (\n <ix-icon\n name={iconChevronRightSmall}\n class={'submenu-icon'}\n ></ix-icon>\n ) : null}\n </button>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"dropdown-item.js","sourceRoot":"","sources":["../../../src/components/dropdown-item/dropdown-item.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EACL,SAAS,EACT,OAAO,EACP,KAAK,EAEL,CAAC,EACD,IAAI,EACJ,MAAM,EACN,IAAI,GACL,MAAM,eAAe,CAAC;AAEvB,OAAO,EACL,qBAAqB,EACrB,eAAe,GAChB,MAAM,yBAAyB,CAAC;AACjC,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAO5C,MAAM,OAAO,YAAY;IALzB;QA+BE;;WAEG;QACK,UAAK,GAAG,KAAK,CAAC;QAEtB;;WAEG;QACsB,aAAQ,GAAG,KAAK,CAAC;QAE1C;;WAEG;QACK,YAAO,GAAG,KAAK,CAAC;QAExB,gBAAgB;QACR,cAAS,GAAG,KAAK,CAAC;QAE1B,gBAAgB;QACR,oBAAe,GAAG,KAAK,CAAC;KAqFjC;IAhFC,gBAAgB;IAEhB,KAAK,CAAC,aAAa;QACjB,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC;IACxC,CAAC;IAED,gBAAgB;IAEhB,KAAK,CAAC,sBAAsB;QAC1B,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAEO,UAAU;QAChB,OAAO,CACL,IAAI,CAAC,KAAK,KAAK,SAAS;YACxB,IAAI,CAAC,WAAW,CAAC,SAAS,KAAK,EAAE;YACjC,IAAI,CAAC,IAAI,KAAK,SAAS,CACxB,CAAC;IACJ,CAAC;IAED,MAAM;QACJ,OAAO,CACL,EAAC,IAAI,qDACH,KAAK,EAAE;gBACL,KAAK,EAAE,IAAI,CAAC,KAAK;gBACjB,WAAW,EAAE,IAAI,CAAC,UAAU,EAAE;gBAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBACvB,OAAO,EAAE,IAAI,CAAC,SAAS;aACxB,EACD,IAAI,EAAC,UAAU;YAEf,+DACE,IAAI,EAAC,QAAQ,EACb,QAAQ,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAChC,KAAK,EAAE;oBACL,eAAe,EAAE,IAAI;oBACrB,kBAAkB,EAAE,IAAI,CAAC,eAAe;oBACxC,QAAQ,EAAE,IAAI,CAAC,QAAQ;iBACxB,EACD,OAAO,EAAE,GAAG,EAAE;oBACZ,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;wBACnB,IAAI,CAAC,aAAa,EAAE,CAAC;oBACvB,CAAC;gBACH,CAAC,gBACW,IAAI,CAAC,eAAe,mBACjB,WAAW,CAAC,IAAI,CAAC,QAAQ,CAAC,EACzC,QAAQ,EAAE,IAAI,CAAC,QAAQ;gBAEtB,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CACvB,WAAK,KAAK,EAAC,uBAAuB,IAC/B,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CACd,eACE,KAAK,EAAC,WAAW,EACjB,IAAI,EAAE,eAAe,EACrB,IAAI,EAAC,IAAI,GACA,CACZ,CAAC,CAAC,CAAC,IAAI,CACJ,CACP,CAAC,CAAC,CAAC,IAAI;gBACP,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACX,eACE,KAAK,EAAC,oBAAoB,EAC1B,IAAI,EAAE,IAAI,CAAC,IAAI,gBACH,IAAI,CAAC,aAAa,GACrB,CACZ,CAAC,CAAC,CAAC,IAAI;gBACR,4DAAK,KAAK,EAAC,oBAAoB;oBAC5B,IAAI,CAAC,KAAK;oBACX,8DAAa,CACT;gBACL,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAChB,eACE,IAAI,EAAE,qBAAqB,EAC3B,KAAK,EAAE,cAAc,GACZ,CACZ,CAAC,CAAC,CAAC,IAAI,CACD,CACJ,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Method,\n Prop,\n} from '@stencil/core';\nimport { DropdownItemWrapper } from '../dropdown/dropdown-controller';\nimport {\n iconChevronRightSmall,\n iconSingleCheck,\n} from '@siemens/ix-icons/icons';\nimport { a11yBoolean } from '../utils/a11y';\n\n@Component({\n tag: 'ix-dropdown-item',\n styleUrl: 'dropdown-item.scss',\n shadow: true,\n})\nexport class DropdownItem implements DropdownItemWrapper {\n @Element() hostElement!: HTMLIxDropdownItemElement;\n\n /**\n * Label of dropdown item\n */\n @Prop() label?: string;\n\n /**\n * Icon of dropdown item\n */\n @Prop() icon?: string;\n\n /**\n * ARIA label for the icon\n */\n @Prop() ariaLabelIcon?: string;\n\n /**\n * ARIA label for the item's button\n * Will be set as aria-label for the nested HTML button element\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelButton?: string;\n\n /**\n * Display hover state\n */\n @Prop() hover = false;\n\n /**\n * Disable item and remove event listeners\n */\n @Prop({ reflect: true }) disabled = false;\n\n /**\n * Whether the item is checked or not. If true a checkmark will mark the item as checked.\n */\n @Prop() checked = false;\n\n /** @internal */\n @Prop() isSubMenu = false;\n\n /** @internal */\n @Prop() suppressChecked = false;\n\n /** @internal */\n @Event() itemClick!: EventEmitter<HTMLIxDropdownItemElement>;\n\n /** @internal */\n @Method()\n async emitItemClick() {\n this.itemClick.emit(this.hostElement);\n }\n\n /** @internal */\n @Method()\n async getDropdownItemElement() {\n return this.hostElement;\n }\n\n private isIconOnly() {\n return (\n this.label === undefined &&\n this.hostElement.innerText === '' &&\n this.icon !== undefined\n );\n }\n\n render() {\n return (\n <Host\n class={{\n hover: this.hover,\n 'icon-only': this.isIconOnly(),\n disabled: this.disabled,\n submenu: this.isSubMenu,\n }}\n role=\"listitem\"\n >\n <button\n type=\"button\"\n tabIndex={this.disabled ? -1 : 0}\n class={{\n 'dropdown-item': true,\n 'no-checked-field': this.suppressChecked,\n disabled: this.disabled,\n }}\n onClick={() => {\n if (!this.disabled) {\n this.emitItemClick();\n }\n }}\n aria-label={this.ariaLabelButton}\n aria-disabled={a11yBoolean(this.disabled)}\n disabled={this.disabled}\n >\n {!this.suppressChecked ? (\n <div class=\"dropdown-item-checked\">\n {this.checked ? (\n <ix-icon\n class=\"checkmark\"\n name={iconSingleCheck}\n size=\"16\"\n ></ix-icon>\n ) : null}\n </div>\n ) : null}\n {this.icon ? (\n <ix-icon\n class=\"dropdown-item-icon\"\n name={this.icon}\n aria-label={this.ariaLabelIcon}\n ></ix-icon>\n ) : null}\n <div class=\"dropdown-item-text\">\n {this.label}\n <slot></slot>\n </div>\n {this.isSubMenu ? (\n <ix-icon\n name={iconChevronRightSmall}\n class={'submenu-icon'}\n ></ix-icon>\n ) : null}\n </button>\n </Host>\n );\n }\n}\n"]}
@@ -87,6 +87,12 @@ export class Menu {
87
87
  ((_b = (_a = elm.parentElement) === null || _a === void 0 ? void 0 : _a.parentElement) === null || _b === void 0 ? void 0 : _b.style.display) !== 'none');
88
88
  };
89
89
  }
90
+ expandChanged(newExpand, oldExpand) {
91
+ if (newExpand === oldExpand) {
92
+ return;
93
+ }
94
+ this.toggleMenu(newExpand);
95
+ }
90
96
  pinnedChange(newPinned) {
91
97
  this.setPinned(this.pinned);
92
98
  if (newPinned) {
@@ -431,44 +437,44 @@ export class Menu {
431
437
  }
432
438
  render() {
433
439
  var _a, _b;
434
- return (h(Host, { key: 'b36f27c9c7b9342fd8f984dd5d00ad73d735b2ff', class: {
440
+ return (h(Host, { key: 'ea617374858acbf094cbf397be00f38023c6d09b', class: {
435
441
  expanded: this.expand,
436
442
  [`breakpoint-${this.breakpoint}`]: true,
437
- }, slot: "menu" }, h("nav", { key: '4f4b1378ddfe2cb243d0a5305679c98084490e8b', class: {
443
+ }, slot: "menu" }, h("nav", { key: '49709a839fd53bc53b4f0c100d38ef50a101532e', class: {
438
444
  menu: true,
439
445
  expanded: this.expand,
440
- } }, h("div", { key: '70d117cfe299bdb3f3b0ed9639d5ee83bfc33cf1', class: "menu-buttons" }, this.breakpoint !== 'sm' && (h("ix-menu-expand-icon", { key: 'fa76b253e6cf1ae30e3257cc3c186dc23215b516', breakpoint: this.breakpoint, expanded: this.expand, pinned: this.pinned, class: "menu-expand-icon", ixAriaLabel: this.i18nExpandSidebar, onClick: async () => this.toggleMenu(), "data-testid": "expand-collapse-menu" })), this.breakpoint === 'sm' &&
441
- ((_a = this.applicationLayoutContext) === null || _a === void 0 ? void 0 : _a.appSwitchConfig) && (h("ix-icon-button", { key: '927aede1c7824c6c21eed072e7dba6db8d5f8df5', onClick: () => {
446
+ } }, h("div", { key: '5cca034b91fabda2f403b2471d9805c96cdadba5', class: "menu-buttons" }, this.breakpoint !== 'sm' && (h("ix-menu-expand-icon", { key: '94d4ff9776c27b9da7d680cef6c346f0469257ba', breakpoint: this.breakpoint, expanded: this.expand, pinned: this.pinned, class: "menu-expand-icon", ixAriaLabel: this.i18nExpandSidebar, onClick: async () => this.toggleMenu(), "data-testid": "expand-collapse-menu" })), this.breakpoint === 'sm' &&
447
+ ((_a = this.applicationLayoutContext) === null || _a === void 0 ? void 0 : _a.appSwitchConfig) && (h("ix-icon-button", { key: 'bb5026487bb57b272cc3c91124f3779959164bc1', onClick: () => {
442
448
  this.showAppSwitch();
443
- }, icon: iconApps, variant: "subtle-tertiary" }))), h("div", { key: '795f32dc8f94404a75c9a0d0cfb7c8e8d429d8d2', id: "menu-tabs", style: {
449
+ }, icon: iconApps, variant: "subtle-tertiary" }))), h("div", { key: '2b4b5b3a0a29e09cfc8f70f79533995f5cd33c99', id: "menu-tabs", style: {
444
450
  display: 'contents',
445
- }, onClick: (e) => this.onMenuItemsClick(e) }, h("div", { key: '4d609cfd70659c0adfcb1cfca0485edff3b05d08', class: "tabs-shadow-container" }, h("div", { key: 'b8b81a13d75c56f9a460f0db382acef185b1c11c', class: {
451
+ }, onClick: (e) => this.onMenuItemsClick(e) }, h("div", { key: '293741c4d4e200853ca2dce4b8c666f5da0e34d5', class: "tabs-shadow-container" }, h("div", { key: '86dd526ec2a8af64abdd6871cb2f759d7c97ee39', class: {
446
452
  'tabs--shadow': true,
447
453
  'tabs--shadow-top': true,
448
454
  'tabs--shadow--show': this.itemsScrollShadowTop,
449
- } }), h("div", { key: '1095f30e782665f9d66d7f2619eb3a68806ccf54', class: {
455
+ } }), h("div", { key: 'e2ba26766b80e0a6c262a2ce42a208f114cdfba6', class: {
450
456
  tabs: true,
451
457
  'show-scrollbar': this.expand,
452
- }, onScroll: () => this.handleOverflowIndicator() }, h("div", { key: '55ec2b8a3b535c8ed7dfc4c80ecdeedf9add4d34', class: "menu-avatar" }, h("slot", { key: 'a893aea63d56c2b4e7fd5997904704639257f65b', name: "ix-menu-avatar" })), h("slot", { key: '85505735fc0f7c9075340389597565bd99e64801', name: "home" }), this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (h("slot", null)) : null), h("div", { key: '7a0013bb20500931471b1ee1273615d0ae740d11', class: {
458
+ }, onScroll: () => this.handleOverflowIndicator() }, h("div", { key: 'bef31787f7c96dea8ed99cd90772e5e91e0d004f', class: "menu-avatar" }, h("slot", { key: '688e681120bdb5d51aa8b0944d8894e3b0e9f0e0', name: "ix-menu-avatar" })), h("slot", { key: '6de7b739e8bbeaece6394bf2eca1c0cfdeb9e0c7', name: "home" }), this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (h("slot", null)) : null), h("div", { key: '3f5ef7c1085910d0f0af3fce5baf35bac5e5144e', class: {
453
459
  'tabs--shadow': true,
454
460
  'tabs--shadow-bottom': true,
455
461
  'tabs--shadow--show': this.itemsScrollShadowBottom,
456
- } }))), h("div", { key: '92a48e39684e2bbbb6078dcafc5c8b7103a693de', class: "bottom-tab-divider" }), this.settings ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "settings", class: {
462
+ } }))), h("div", { key: 'b4e9db32fce1c63a303f14145e07e528e50e562c', class: "bottom-tab-divider" }), this.settings ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "settings", class: {
457
463
  'internal-tab': true,
458
464
  'bottom-tab': true,
459
465
  active: this.showSettings,
460
- }, icon: iconCogwheel, onClick: async () => this.toggleSettings(!this.showSettings), label: this.i18nSettings })) : null, this.enableToggleTheme ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "toggleTheme", onClick: () => themeSwitcher.toggleMode(), class: "internal-tab bottom-tab", icon: iconLightDark, label: this.i18nToggleTheme })) : null, h("div", { key: '2a5bad2eb493be6ee59fc101fab300bdb154feb0', onClick: (e) => this.onMenuItemsClick(e) }, h("slot", { key: '5a1e19962a88ceeb1f82ac385dba49d0c311e3d7', name: "bottom" })), h("div", { key: '65802881403efad9dbae84ef9bf5d441e3915150', id: "popover-area" }), this.enableMapExpand || ((_b = this.applicationLayoutContext) === null || _b === void 0 ? void 0 : _b.sidebar) ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "menu-collapse", onClick: () => this.sidebarToggle(), class: "internal-tab bottom-tab", icon: `${this.getCollapseIcon()}`, label: this.getCollapseText() })) : null, this.about ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "aboutAndLegal", class: {
466
+ }, icon: iconCogwheel, onClick: async () => this.toggleSettings(!this.showSettings), label: this.i18nSettings })) : null, this.enableToggleTheme ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "toggleTheme", onClick: () => themeSwitcher.toggleMode(), class: "internal-tab bottom-tab", icon: iconLightDark, label: this.i18nToggleTheme })) : null, h("div", { key: '50b48bbaa282e632c32476d2d3590b969d9b67f4', onClick: (e) => this.onMenuItemsClick(e) }, h("slot", { key: '64eead8c650d587783ad39d27429652da7f56962', name: "bottom" })), h("div", { key: '22f7f7d3d7fae907636b474aeb3cdeedc38631f5', id: "popover-area" }), this.enableMapExpand || ((_b = this.applicationLayoutContext) === null || _b === void 0 ? void 0 : _b.sidebar) ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "menu-collapse", onClick: () => this.sidebarToggle(), class: "internal-tab bottom-tab", icon: `${this.getCollapseIcon()}`, label: this.getCollapseText() })) : null, this.about ? (h("ix-menu-item", { disabled: this.isHiddenFromViewport(), id: "aboutAndLegal", class: {
461
467
  'internal-tab': true,
462
468
  'bottom-tab': true,
463
469
  active: this.showAbout,
464
- }, icon: iconInfo, onClick: async () => this.toggleAbout(!this.showAbout), label: this.i18nLegal })) : null), h("div", { key: 'e6dd7e53abbd5e4ce11cc5d2be882dd52e335275', class: {
470
+ }, icon: iconInfo, onClick: async () => this.toggleAbout(!this.showAbout), label: this.i18nLegal })) : null), h("div", { key: 'dc67e6cddea726b1a6f692f66a268b3d50318d96', class: {
465
471
  'menu-overlay': true,
466
472
  visible: this.isOverlayVisible(),
467
473
  expanded: this.expand,
468
474
  }, onTransitionEnd: () => {
469
475
  this.isTransitionDisabled = true;
470
476
  this.checkTransition();
471
- } }, h("div", { key: 'd8a49e3983b5d060190f1440b4aacd44243894a8', class: 'menu-overlay-container' }, this.showSettings ? h("slot", { name: "ix-menu-settings" }) : null), h("div", { key: '92ddf6c21d3d08c5d1961200ac598a6135c9ef89', class: 'menu-overlay-container' }, this.showAbout ? h("slot", { name: "ix-menu-about" }) : null))));
477
+ } }, h("div", { key: '5222ed73a531d9c59d24feb032ad7e9929f37e5f', class: 'menu-overlay-container' }, this.showSettings ? h("slot", { name: "ix-menu-settings" }) : null), h("div", { key: '1e91deb207ad24f81e5551a788d7e6e79900eb0d', class: 'menu-overlay-container' }, this.showAbout ? h("slot", { name: "ix-menu-about" }) : null))));
472
478
  }
473
479
  static get is() { return "ix-menu"; }
474
480
  static get encapsulation() { return "shadow"; }
@@ -988,6 +994,9 @@ export class Menu {
988
994
  static get elementRef() { return "hostElement"; }
989
995
  static get watchers() {
990
996
  return [{
997
+ "propName": "expand",
998
+ "methodName": "expandChanged"
999
+ }, {
991
1000
  "propName": "pinned",
992
1001
  "methodName": "pinnedChange"
993
1002
  }];
@@ -1 +1 @@
1
- {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../src/components/menu/menu.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { animate } from 'animejs';\nimport { ApplicationSidebarToggleEvent } from '../application-sidebar/events';\nimport { showAppSwitch } from '../utils/app-switch';\nimport { ApplicationLayoutContext } from '../utils/application-layout/context';\nimport { applicationLayoutService } from '../utils/application-layout/service';\nimport { Breakpoint } from '../utils/breakpoints';\nimport { ContextType, useContextConsumer } from '../utils/context';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { themeSwitcher } from '../utils/theme-switcher';\nimport {\n iconApps,\n iconCogwheel,\n iconInfo,\n iconLightDark,\n iconNavigationLeft,\n iconNavigationRight,\n} from '@siemens/ix-icons/icons';\nimport Animation from '../utils/animation';\n\n@Component({\n tag: 'ix-menu',\n styleUrl: 'menu.scss',\n shadow: true,\n})\nexport class Menu {\n @Element() hostElement!: HTMLIxMenuElement;\n\n /**\n * Is settings tab visible\n */\n @Prop({ mutable: true }) showSettings = false;\n\n /**\n * Is about tab visible\n */\n @Prop({ mutable: true }) showAbout = false;\n\n /**\n * Show toggle between light and dark variant. Only if the provided theme have implemented both!\n */\n @Prop() enableToggleTheme = false;\n\n /** @internal */\n @Prop() enableMapExpand = false;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationName?: string;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationDescription = '';\n\n /**\n * Accessibility i18n label for the burger menu of the sidebar\n */\n @Prop({ attribute: 'i18n-expand-sidebar' }) i18nExpandSidebar =\n 'Expand sidebar';\n\n /**\n * Toggle the expand state of the menu\n */\n @Prop({ mutable: true, reflect: true }) expand = false;\n\n /**\n * If set the menu will be expanded initially. This will only take effect at the breakpoint 'lg'.\n */\n @Prop() startExpanded = false;\n\n /**\n * Menu stays pinned to the left\n */\n @Prop() pinned = false;\n\n @Watch('pinned')\n pinnedChange(newPinned: boolean) {\n this.setPinned(this.pinned);\n if (newPinned) {\n applicationLayoutService.disableBreakpointDetection();\n applicationLayoutService.setBreakpoint('lg');\n return;\n }\n\n applicationLayoutService.enableBreakpointDetection();\n }\n\n /**\n * i18n label for 'About & legal information' button\n */\n @Prop({ attribute: 'i18n-legal' }) i18nLegal = 'About & legal information';\n\n /**\n * i18n label for 'Settings' button\n */\n @Prop({ attribute: 'i18n-settings' }) i18nSettings = 'Settings';\n\n /**\n * i18n label for 'Toggle theme' button\n */\n @Prop({ attribute: 'i18n-toggle-theme' }) i18nToggleTheme = 'Toggle theme';\n\n /**\n * i18n label for 'Expand' button\n */\n @Prop({ attribute: 'i18n-expand' }) i18nExpand = ' Expand';\n\n /**\n * i18n label for 'Collapse' button\n */\n @Prop({ attribute: 'i18n-collapse' }) i18nCollapse = 'Collapse';\n\n /**\n * Menu expanded\n */\n @Event() expandChange!: EventEmitter<boolean>;\n\n /**\n * Map Sidebar expanded\n */\n @Event() mapExpandChange!: EventEmitter<boolean>;\n\n /**\n * Event emitted when the app switch button is clicked\n *\n * @since 3.0.0\n */\n @Event() openAppSwitch!: EventEmitter<void>;\n\n /**\n * Event emitted when the settings button is clicked\n * @since 3.0.0\n */\n @Event() openSettings!: EventEmitter<void>;\n\n /**\n * Event emitted when the about button is clicked\n * @since 3.0.0\n */\n @Event() openAbout!: EventEmitter<void>;\n\n @State() showPinned = false;\n @State() mapExpand = true;\n @State() breakpoint: Breakpoint = 'lg';\n @State() itemsScrollShadowTop = false;\n @State() itemsScrollShadowBottom = false;\n @State() applicationLayoutContext?: ContextType<\n typeof ApplicationLayoutContext\n >;\n private isTransitionDisabled = false;\n\n // FBC IAM workaround #488\n private readonly isVisible = (elm: HTMLElement) => {\n return (\n elm.style.display !== 'none' &&\n elm.parentElement?.parentElement?.style.display !== 'none'\n );\n };\n\n get popoverArea() {\n return this.hostElement.shadowRoot!.querySelector('#popover-area');\n }\n\n get menu() {\n return this.hostElement.shadowRoot!.querySelector('.menu');\n }\n\n get menuItemsContainer(): HTMLDivElement {\n return this.menu!.querySelector('.tabs')!;\n }\n\n get overlayContainer() {\n return this.hostElement.shadowRoot!.querySelector(\n '.menu-overlay'\n ) as HTMLDivElement;\n }\n\n get menuItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot=\"bottom\"])'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get menuBottomItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get homeTab() {\n return this.hostElement.querySelector('ix-menu-item.home-tab');\n }\n\n get moreItemsDropdown(): HTMLElement {\n return this.hostElement.shadowRoot!.querySelector(\n '.internal-tab ix-dropdown'\n )!;\n }\n\n get isMoreItemsDropdownEmpty(): boolean {\n return (\n this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown .appended'\n ).length === 0\n );\n }\n\n get moreItemsDropdownItems() {\n return this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown ix-menu-item'\n );\n }\n\n get activeMoreTabContainer() {\n return this.hostElement.shadowRoot!.querySelector('.active-more-tab');\n }\n\n get activeMoreTab() {\n return this.hostElement.shadowRoot!.querySelector(\n '.active-more-tab ix-menu-item'\n );\n }\n\n get aboutPopoverContainer(): HTMLElement {\n return this.hostElement.querySelector('.about-news')!;\n }\n\n get aboutNewsPopover(): HTMLIxMenuAboutNewsElement {\n return (\n document.querySelector('ix-menu-about-news') ??\n this.hostElement.querySelector('ix-menu-about-news')!\n );\n }\n\n get aboutTab(): HTMLElement | null {\n return this.hostElement.shadowRoot!.querySelector('#aboutAndLegal');\n }\n\n get about(): HTMLIxMenuAboutElement | null {\n return this.hostElement.querySelector('ix-menu-about');\n }\n\n get settings(): HTMLIxMenuSettingsElement | null {\n return this.hostElement.querySelector('ix-menu-settings');\n }\n\n get isSettingsEmpty(): boolean {\n return (\n Array.from(\n this.hostElement.shadowRoot!.querySelectorAll('ix-menu-settings-item')\n ).length === 0\n );\n }\n\n get tabsContainer() {\n return this.hostElement;\n }\n\n componentDidLoad() {\n requestAnimationFrame(() => {\n this.handleOverflowIndicator();\n });\n\n if (this.pinned) {\n this.pinnedChange(this.pinned);\n }\n }\n\n componentWillLoad() {\n useContextConsumer(\n this.hostElement,\n ApplicationLayoutContext,\n (ctx) => {\n this.applicationLayoutContext = ctx;\n if (ctx.hideHeader === true) {\n this.onBreakpointChange('md');\n return;\n }\n\n this.onBreakpointChange(applicationLayoutService.breakpoint);\n },\n true\n );\n\n menuController.register(this.hostElement);\n applicationLayoutService.onChange.on((breakpoint) =>\n this.onBreakpointChange(breakpoint)\n );\n this.onBreakpointChange(applicationLayoutService.breakpoint, true);\n }\n\n componentDidRender() {\n if (!this.about && this.aboutNewsPopover) {\n this.aboutNewsPopover.show = false;\n }\n this.appendFragments();\n }\n\n private setPinned(pinned: boolean) {\n this.showPinned = pinned;\n menuController.setIsPinned(pinned);\n }\n\n private onBreakpointChange(mode: Breakpoint, initial = false) {\n if (!this.applicationLayoutContext && mode === 'sm') {\n return;\n }\n\n if (!this.applicationLayoutContext) {\n return;\n }\n\n if (this.applicationLayoutContext.hideHeader && mode === 'sm') {\n return;\n }\n\n this.setPinned(mode === 'lg');\n if (initial || mode !== this.breakpoint)\n this.toggleMenu(mode === 'lg' && this.startExpanded);\n\n this.breakpoint = mode;\n }\n\n private appendFragments() {\n this.appendAboutNewsPopover();\n }\n\n private getAboutPopoverVerticalPosition() {\n const heightArrow = 12;\n const offsetArrow = 6;\n const rectAbout = this.aboutTab?.getBoundingClientRect() || {\n bottom: -window.innerHeight,\n height: 0,\n };\n const offset =\n window.innerHeight -\n (rectAbout.bottom - rectAbout.height / 2 + heightArrow / 2 + offsetArrow);\n return convertToRemString(offset);\n }\n\n private appendAboutNewsPopover() {\n if (!this.aboutNewsPopover || !this.about) {\n return;\n }\n\n this.aboutNewsPopover.style.bottom = this.getAboutPopoverVerticalPosition();\n\n if (!this.popoverArea?.contains(this.aboutNewsPopover)) {\n const showMore = () => {\n if (this.aboutNewsPopover?.aboutItemLabel && this.about) {\n this.about.activeTabLabel = this.aboutNewsPopover.aboutItemLabel;\n this.toggleAbout(true);\n }\n };\n\n this.aboutNewsPopover.addEventListener('showMore', showMore.bind(this));\n document.body.appendChild(this.aboutNewsPopover);\n }\n }\n\n /**\n * Toggle map sidebar expand\n * @param show\n */\n @Method()\n async toggleMapExpand(show?: boolean) {\n if (show !== undefined) {\n this.mapExpand = show;\n } else {\n this.mapExpand = !this.mapExpand;\n }\n }\n\n /**\n * Toggle menu\n * @param show\n */\n @Method()\n async toggleMenu(show?: boolean) {\n const oldExpand = this.expand;\n\n if (show !== undefined) {\n this.expand = show;\n } else {\n this.expand = !this.expand;\n }\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = this.expand;\n }\n\n const { defaultPrevented } = this.expandChange.emit(this.expand);\n\n if (defaultPrevented) {\n this.expand = oldExpand;\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = oldExpand;\n }\n\n return;\n }\n\n this.isTransitionDisabled = false;\n this.checkTransition();\n\n if (this.breakpoint == 'sm' && this.expand) {\n setTimeout(() => {\n this.handleOverflowIndicator();\n }, 100);\n }\n }\n\n /**\n * Disable transition of overlay while menu animation is running.\n */\n private checkTransition() {\n const container = this.overlayContainer;\n\n if (!container) {\n return;\n }\n\n if (this.isTransitionDisabled) {\n container.style.transitionProperty = 'left';\n } else {\n container.style.transitionProperty = 'all';\n }\n }\n\n private isOverlayVisible() {\n return this.showAbout || this.showSettings;\n }\n\n /**\n * Toggle Settings tabs\n * @param show\n */\n @Method()\n async toggleSettings(show: boolean) {\n if (!this.settings) {\n return;\n }\n\n const { defaultPrevented } = this.openSettings.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showSettings = show;\n this.settings.show = this.showSettings;\n } else {\n this.onOverlayClose();\n }\n }\n\n /**\n * Toggle About tabs\n * @param show\n */\n @Method()\n async toggleAbout(show: boolean) {\n if (!this.about) {\n return;\n }\n\n const { defaultPrevented } = this.openAbout.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showAbout = show;\n this.about.show = this.showAbout;\n } else {\n this.onOverlayClose();\n }\n }\n\n private resetOverlay() {\n this.showSettings = false;\n this.showAbout = false;\n\n if (this.settings) {\n this.settings.show = false;\n }\n\n if (this.about) {\n this.about.show = false;\n }\n }\n\n private getCollapseText() {\n return this.mapExpand ? this.i18nCollapse : this.i18nExpand;\n }\n\n private getCollapseIcon() {\n return this.mapExpand ? iconNavigationLeft : iconNavigationRight;\n }\n\n private isMenuItemClicked(event: Event) {\n if (event.target instanceof HTMLElement) {\n return event.target.tagName === 'IX-MENU-ITEM';\n }\n\n return false;\n }\n\n @Listen('resize', { target: 'window' })\n private handleOverflowIndicator() {\n const { clientHeight, scrollTop, scrollHeight } = this.menuItemsContainer;\n this.itemsScrollShadowTop = scrollTop > 0;\n this.itemsScrollShadowBottom =\n Math.round(scrollTop + clientHeight) < scrollHeight;\n }\n\n @Listen('close')\n onOverlayClose() {\n this.animateOverlayFadeOut(() => {\n this.resetOverlay();\n });\n }\n\n private animateOverlayFadeIn() {\n requestAnimationFrame(() => {\n animate(this.overlayContainer!, {\n duration: Animation.mediumTime,\n backdropFilter: [0, 'blur(1rem)'],\n translateX: ['-4rem', 0],\n opacity: [0, 1],\n easing: 'easeInSine',\n onBegin: () => {\n if (this.showPinned) {\n return;\n }\n\n this.toggleMenu(false);\n },\n });\n });\n }\n\n private animateOverlayFadeOut(onComplete: Function) {\n requestAnimationFrame(() => {\n animate(this.overlayContainer!, {\n duration: Animation.mediumTime,\n backdropFilter: ['blur(1rem)', 0],\n translateX: [0, '-4rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n onComplete: () => onComplete(),\n });\n });\n }\n\n private onMenuItemsClick(event: Event) {\n if (this.isMenuItemClicked(event)) {\n if (!this.showPinned) {\n this.toggleMenu(false);\n }\n this.onOverlayClose();\n }\n }\n\n private isHiddenFromViewport() {\n return this.breakpoint === 'sm' && this.expand === false;\n }\n\n private sidebarToggle() {\n this.mapExpandChange.emit(this.mapExpand);\n\n this.hostElement.dispatchEvent(\n new ApplicationSidebarToggleEvent(this.mapExpand)\n );\n }\n\n private async showAppSwitch() {\n const { defaultPrevented } = this.openAppSwitch.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (this.applicationLayoutContext?.appSwitchConfig) {\n showAppSwitch(this.applicationLayoutContext.appSwitchConfig);\n }\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expand,\n [`breakpoint-${this.breakpoint}`]: true,\n }}\n slot=\"menu\"\n >\n <nav\n class={{\n menu: true,\n expanded: this.expand,\n }}\n >\n <div class=\"menu-buttons\">\n {this.breakpoint !== 'sm' && (\n <ix-menu-expand-icon\n breakpoint={this.breakpoint}\n expanded={this.expand}\n pinned={this.pinned}\n class=\"menu-expand-icon\"\n ixAriaLabel={this.i18nExpandSidebar}\n onClick={async () => this.toggleMenu()}\n data-testid=\"expand-collapse-menu\"\n ></ix-menu-expand-icon>\n )}\n {this.breakpoint === 'sm' &&\n this.applicationLayoutContext?.appSwitchConfig && (\n <ix-icon-button\n onClick={() => {\n this.showAppSwitch();\n }}\n icon={iconApps}\n variant=\"subtle-tertiary\"\n ></ix-icon-button>\n )}\n </div>\n\n <div\n id=\"menu-tabs\"\n style={{\n display: 'contents',\n }}\n onClick={(e) => this.onMenuItemsClick(e)}\n >\n <div class=\"tabs-shadow-container\">\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-top': true,\n 'tabs--shadow--show': this.itemsScrollShadowTop,\n }}\n ></div>\n <div\n class={{\n tabs: true,\n 'show-scrollbar': this.expand,\n }}\n onScroll={() => this.handleOverflowIndicator()}\n >\n <div class=\"menu-avatar\">\n <slot name=\"ix-menu-avatar\"></slot>\n </div>\n <slot name=\"home\"></slot>\n {this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (\n <slot></slot>\n ) : null}\n </div>\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-bottom': true,\n 'tabs--shadow--show': this.itemsScrollShadowBottom,\n }}\n ></div>\n </div>\n </div>\n <div class=\"bottom-tab-divider\"></div>\n {this.settings ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"settings\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showSettings,\n }}\n icon={iconCogwheel}\n onClick={async () => this.toggleSettings(!this.showSettings)}\n label={this.i18nSettings}\n ></ix-menu-item>\n ) : null}\n {this.enableToggleTheme ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"toggleTheme\"\n onClick={() => themeSwitcher.toggleMode()}\n class=\"internal-tab bottom-tab\"\n icon={iconLightDark}\n label={this.i18nToggleTheme}\n ></ix-menu-item>\n ) : null}\n <div onClick={(e) => this.onMenuItemsClick(e)}>\n <slot name=\"bottom\"></slot>\n </div>\n <div id=\"popover-area\"></div>\n {this.enableMapExpand || this.applicationLayoutContext?.sidebar ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"menu-collapse\"\n onClick={() => this.sidebarToggle()}\n class=\"internal-tab bottom-tab\"\n icon={`${this.getCollapseIcon()}`}\n label={this.getCollapseText()}\n ></ix-menu-item>\n ) : null}\n {this.about ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"aboutAndLegal\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showAbout,\n }}\n icon={iconInfo}\n onClick={async () => this.toggleAbout(!this.showAbout)}\n label={this.i18nLegal}\n ></ix-menu-item>\n ) : null}\n </nav>\n <div\n class={{\n 'menu-overlay': true,\n visible: this.isOverlayVisible(),\n expanded: this.expand,\n }}\n onTransitionEnd={() => {\n this.isTransitionDisabled = true;\n this.checkTransition();\n }}\n >\n <div class={'menu-overlay-container'}>\n {this.showSettings ? <slot name=\"ix-menu-settings\"></slot> : null}\n </div>\n <div class={'menu-overlay-container'}>\n {this.showAbout ? <slot name=\"ix-menu-about\"></slot> : null}\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"menu.js","sourceRoot":"","sources":["../../../src/components/menu/menu.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2024 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n Event,\n EventEmitter,\n h,\n Host,\n Listen,\n Method,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport { animate } from 'animejs';\nimport { ApplicationSidebarToggleEvent } from '../application-sidebar/events';\nimport { showAppSwitch } from '../utils/app-switch';\nimport { ApplicationLayoutContext } from '../utils/application-layout/context';\nimport { applicationLayoutService } from '../utils/application-layout/service';\nimport { Breakpoint } from '../utils/breakpoints';\nimport { ContextType, useContextConsumer } from '../utils/context';\nimport { menuController } from '../utils/menu-service/menu-service';\nimport { convertToRemString } from '../utils/rwd.util';\nimport { themeSwitcher } from '../utils/theme-switcher';\nimport {\n iconApps,\n iconCogwheel,\n iconInfo,\n iconLightDark,\n iconNavigationLeft,\n iconNavigationRight,\n} from '@siemens/ix-icons/icons';\nimport Animation from '../utils/animation';\n\n@Component({\n tag: 'ix-menu',\n styleUrl: 'menu.scss',\n shadow: true,\n})\nexport class Menu {\n @Element() hostElement!: HTMLIxMenuElement;\n\n /**\n * Is settings tab visible\n */\n @Prop({ mutable: true }) showSettings = false;\n\n /**\n * Is about tab visible\n */\n @Prop({ mutable: true }) showAbout = false;\n\n /**\n * Show toggle between light and dark variant. Only if the provided theme have implemented both!\n */\n @Prop() enableToggleTheme = false;\n\n /** @internal */\n @Prop() enableMapExpand = false;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationName?: string;\n\n /**\n * Should only be set if you use ix-menu standalone\n */\n @Prop() applicationDescription = '';\n\n /**\n * Accessibility i18n label for the burger menu of the sidebar\n */\n @Prop({ attribute: 'i18n-expand-sidebar' }) i18nExpandSidebar =\n 'Expand sidebar';\n\n /**\n * Toggle the expand state of the menu\n */\n @Prop({ mutable: true, reflect: true }) expand = false;\n\n @Watch('expand')\n expandChanged(newExpand: boolean, oldExpand: boolean) {\n if (newExpand === oldExpand) {\n return;\n }\n\n this.toggleMenu(newExpand);\n }\n\n /**\n * If set the menu will be expanded initially. This will only take effect at the breakpoint 'lg'.\n */\n @Prop() startExpanded = false;\n\n /**\n * Menu stays pinned to the left\n */\n @Prop() pinned = false;\n\n @Watch('pinned')\n pinnedChange(newPinned: boolean) {\n this.setPinned(this.pinned);\n if (newPinned) {\n applicationLayoutService.disableBreakpointDetection();\n applicationLayoutService.setBreakpoint('lg');\n return;\n }\n\n applicationLayoutService.enableBreakpointDetection();\n }\n\n /**\n * i18n label for 'About & legal information' button\n */\n @Prop({ attribute: 'i18n-legal' }) i18nLegal = 'About & legal information';\n\n /**\n * i18n label for 'Settings' button\n */\n @Prop({ attribute: 'i18n-settings' }) i18nSettings = 'Settings';\n\n /**\n * i18n label for 'Toggle theme' button\n */\n @Prop({ attribute: 'i18n-toggle-theme' }) i18nToggleTheme = 'Toggle theme';\n\n /**\n * i18n label for 'Expand' button\n */\n @Prop({ attribute: 'i18n-expand' }) i18nExpand = ' Expand';\n\n /**\n * i18n label for 'Collapse' button\n */\n @Prop({ attribute: 'i18n-collapse' }) i18nCollapse = 'Collapse';\n\n /**\n * Menu expanded\n */\n @Event() expandChange!: EventEmitter<boolean>;\n\n /**\n * Map Sidebar expanded\n */\n @Event() mapExpandChange!: EventEmitter<boolean>;\n\n /**\n * Event emitted when the app switch button is clicked\n *\n * @since 3.0.0\n */\n @Event() openAppSwitch!: EventEmitter<void>;\n\n /**\n * Event emitted when the settings button is clicked\n * @since 3.0.0\n */\n @Event() openSettings!: EventEmitter<void>;\n\n /**\n * Event emitted when the about button is clicked\n * @since 3.0.0\n */\n @Event() openAbout!: EventEmitter<void>;\n\n @State() showPinned = false;\n @State() mapExpand = true;\n @State() breakpoint: Breakpoint = 'lg';\n @State() itemsScrollShadowTop = false;\n @State() itemsScrollShadowBottom = false;\n @State() applicationLayoutContext?: ContextType<\n typeof ApplicationLayoutContext\n >;\n private isTransitionDisabled = false;\n\n // FBC IAM workaround #488\n private readonly isVisible = (elm: HTMLElement) => {\n return (\n elm.style.display !== 'none' &&\n elm.parentElement?.parentElement?.style.display !== 'none'\n );\n };\n\n get popoverArea() {\n return this.hostElement.shadowRoot!.querySelector('#popover-area');\n }\n\n get menu() {\n return this.hostElement.shadowRoot!.querySelector('.menu');\n }\n\n get menuItemsContainer(): HTMLDivElement {\n return this.menu!.querySelector('.tabs')!;\n }\n\n get overlayContainer() {\n return this.hostElement.shadowRoot!.querySelector(\n '.menu-overlay'\n ) as HTMLDivElement;\n }\n\n get menuItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item:not(.internal-tab):not(.home-tab):not(.bottom-tab):not([slot=\"bottom\"])'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get menuBottomItems() {\n return Array.from(\n this.hostElement.querySelectorAll(\n 'ix-menu-item.bottom-tab:not(.internal-tab):not(.home-tab)'\n )\n ).filter((elm) => this.isVisible(elm as HTMLElement));\n }\n\n get homeTab() {\n return this.hostElement.querySelector('ix-menu-item.home-tab');\n }\n\n get moreItemsDropdown(): HTMLElement {\n return this.hostElement.shadowRoot!.querySelector(\n '.internal-tab ix-dropdown'\n )!;\n }\n\n get isMoreItemsDropdownEmpty(): boolean {\n return (\n this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown .appended'\n ).length === 0\n );\n }\n\n get moreItemsDropdownItems() {\n return this.hostElement.shadowRoot!.querySelectorAll(\n '.internal-tab ix-dropdown ix-menu-item'\n );\n }\n\n get activeMoreTabContainer() {\n return this.hostElement.shadowRoot!.querySelector('.active-more-tab');\n }\n\n get activeMoreTab() {\n return this.hostElement.shadowRoot!.querySelector(\n '.active-more-tab ix-menu-item'\n );\n }\n\n get aboutPopoverContainer(): HTMLElement {\n return this.hostElement.querySelector('.about-news')!;\n }\n\n get aboutNewsPopover(): HTMLIxMenuAboutNewsElement {\n return (\n document.querySelector('ix-menu-about-news') ??\n this.hostElement.querySelector('ix-menu-about-news')!\n );\n }\n\n get aboutTab(): HTMLElement | null {\n return this.hostElement.shadowRoot!.querySelector('#aboutAndLegal');\n }\n\n get about(): HTMLIxMenuAboutElement | null {\n return this.hostElement.querySelector('ix-menu-about');\n }\n\n get settings(): HTMLIxMenuSettingsElement | null {\n return this.hostElement.querySelector('ix-menu-settings');\n }\n\n get isSettingsEmpty(): boolean {\n return (\n Array.from(\n this.hostElement.shadowRoot!.querySelectorAll('ix-menu-settings-item')\n ).length === 0\n );\n }\n\n get tabsContainer() {\n return this.hostElement;\n }\n\n componentDidLoad() {\n requestAnimationFrame(() => {\n this.handleOverflowIndicator();\n });\n\n if (this.pinned) {\n this.pinnedChange(this.pinned);\n }\n }\n\n componentWillLoad() {\n useContextConsumer(\n this.hostElement,\n ApplicationLayoutContext,\n (ctx) => {\n this.applicationLayoutContext = ctx;\n if (ctx.hideHeader === true) {\n this.onBreakpointChange('md');\n return;\n }\n\n this.onBreakpointChange(applicationLayoutService.breakpoint);\n },\n true\n );\n\n menuController.register(this.hostElement);\n applicationLayoutService.onChange.on((breakpoint) =>\n this.onBreakpointChange(breakpoint)\n );\n this.onBreakpointChange(applicationLayoutService.breakpoint, true);\n }\n\n componentDidRender() {\n if (!this.about && this.aboutNewsPopover) {\n this.aboutNewsPopover.show = false;\n }\n this.appendFragments();\n }\n\n private setPinned(pinned: boolean) {\n this.showPinned = pinned;\n menuController.setIsPinned(pinned);\n }\n\n private onBreakpointChange(mode: Breakpoint, initial = false) {\n if (!this.applicationLayoutContext && mode === 'sm') {\n return;\n }\n\n if (!this.applicationLayoutContext) {\n return;\n }\n\n if (this.applicationLayoutContext.hideHeader && mode === 'sm') {\n return;\n }\n\n this.setPinned(mode === 'lg');\n if (initial || mode !== this.breakpoint)\n this.toggleMenu(mode === 'lg' && this.startExpanded);\n\n this.breakpoint = mode;\n }\n\n private appendFragments() {\n this.appendAboutNewsPopover();\n }\n\n private getAboutPopoverVerticalPosition() {\n const heightArrow = 12;\n const offsetArrow = 6;\n const rectAbout = this.aboutTab?.getBoundingClientRect() || {\n bottom: -window.innerHeight,\n height: 0,\n };\n const offset =\n window.innerHeight -\n (rectAbout.bottom - rectAbout.height / 2 + heightArrow / 2 + offsetArrow);\n return convertToRemString(offset);\n }\n\n private appendAboutNewsPopover() {\n if (!this.aboutNewsPopover || !this.about) {\n return;\n }\n\n this.aboutNewsPopover.style.bottom = this.getAboutPopoverVerticalPosition();\n\n if (!this.popoverArea?.contains(this.aboutNewsPopover)) {\n const showMore = () => {\n if (this.aboutNewsPopover?.aboutItemLabel && this.about) {\n this.about.activeTabLabel = this.aboutNewsPopover.aboutItemLabel;\n this.toggleAbout(true);\n }\n };\n\n this.aboutNewsPopover.addEventListener('showMore', showMore.bind(this));\n document.body.appendChild(this.aboutNewsPopover);\n }\n }\n\n /**\n * Toggle map sidebar expand\n * @param show\n */\n @Method()\n async toggleMapExpand(show?: boolean) {\n if (show !== undefined) {\n this.mapExpand = show;\n } else {\n this.mapExpand = !this.mapExpand;\n }\n }\n\n /**\n * Toggle menu\n * @param show\n */\n @Method()\n async toggleMenu(show?: boolean) {\n const oldExpand = this.expand;\n\n if (show !== undefined) {\n this.expand = show;\n } else {\n this.expand = !this.expand;\n }\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = this.expand;\n }\n\n const { defaultPrevented } = this.expandChange.emit(this.expand);\n\n if (defaultPrevented) {\n this.expand = oldExpand;\n\n if (this.aboutNewsPopover) {\n this.aboutNewsPopover.expanded = oldExpand;\n }\n\n return;\n }\n\n this.isTransitionDisabled = false;\n this.checkTransition();\n\n if (this.breakpoint == 'sm' && this.expand) {\n setTimeout(() => {\n this.handleOverflowIndicator();\n }, 100);\n }\n }\n\n /**\n * Disable transition of overlay while menu animation is running.\n */\n private checkTransition() {\n const container = this.overlayContainer;\n\n if (!container) {\n return;\n }\n\n if (this.isTransitionDisabled) {\n container.style.transitionProperty = 'left';\n } else {\n container.style.transitionProperty = 'all';\n }\n }\n\n private isOverlayVisible() {\n return this.showAbout || this.showSettings;\n }\n\n /**\n * Toggle Settings tabs\n * @param show\n */\n @Method()\n async toggleSettings(show: boolean) {\n if (!this.settings) {\n return;\n }\n\n const { defaultPrevented } = this.openSettings.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showSettings = show;\n this.settings.show = this.showSettings;\n } else {\n this.onOverlayClose();\n }\n }\n\n /**\n * Toggle About tabs\n * @param show\n */\n @Method()\n async toggleAbout(show: boolean) {\n if (!this.about) {\n return;\n }\n\n const { defaultPrevented } = this.openAbout.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (!this.isOverlayVisible()) {\n this.animateOverlayFadeIn();\n }\n\n if (show) {\n this.resetOverlay();\n this.showAbout = show;\n this.about.show = this.showAbout;\n } else {\n this.onOverlayClose();\n }\n }\n\n private resetOverlay() {\n this.showSettings = false;\n this.showAbout = false;\n\n if (this.settings) {\n this.settings.show = false;\n }\n\n if (this.about) {\n this.about.show = false;\n }\n }\n\n private getCollapseText() {\n return this.mapExpand ? this.i18nCollapse : this.i18nExpand;\n }\n\n private getCollapseIcon() {\n return this.mapExpand ? iconNavigationLeft : iconNavigationRight;\n }\n\n private isMenuItemClicked(event: Event) {\n if (event.target instanceof HTMLElement) {\n return event.target.tagName === 'IX-MENU-ITEM';\n }\n\n return false;\n }\n\n @Listen('resize', { target: 'window' })\n private handleOverflowIndicator() {\n const { clientHeight, scrollTop, scrollHeight } = this.menuItemsContainer;\n this.itemsScrollShadowTop = scrollTop > 0;\n this.itemsScrollShadowBottom =\n Math.round(scrollTop + clientHeight) < scrollHeight;\n }\n\n @Listen('close')\n onOverlayClose() {\n this.animateOverlayFadeOut(() => {\n this.resetOverlay();\n });\n }\n\n private animateOverlayFadeIn() {\n requestAnimationFrame(() => {\n animate(this.overlayContainer!, {\n duration: Animation.mediumTime,\n backdropFilter: [0, 'blur(1rem)'],\n translateX: ['-4rem', 0],\n opacity: [0, 1],\n easing: 'easeInSine',\n onBegin: () => {\n if (this.showPinned) {\n return;\n }\n\n this.toggleMenu(false);\n },\n });\n });\n }\n\n private animateOverlayFadeOut(onComplete: Function) {\n requestAnimationFrame(() => {\n animate(this.overlayContainer!, {\n duration: Animation.mediumTime,\n backdropFilter: ['blur(1rem)', 0],\n translateX: [0, '-4rem'],\n opacity: [1, 0],\n easing: 'easeInSine',\n onComplete: () => onComplete(),\n });\n });\n }\n\n private onMenuItemsClick(event: Event) {\n if (this.isMenuItemClicked(event)) {\n if (!this.showPinned) {\n this.toggleMenu(false);\n }\n this.onOverlayClose();\n }\n }\n\n private isHiddenFromViewport() {\n return this.breakpoint === 'sm' && this.expand === false;\n }\n\n private sidebarToggle() {\n this.mapExpandChange.emit(this.mapExpand);\n\n this.hostElement.dispatchEvent(\n new ApplicationSidebarToggleEvent(this.mapExpand)\n );\n }\n\n private async showAppSwitch() {\n const { defaultPrevented } = this.openAppSwitch.emit();\n\n if (defaultPrevented) {\n return;\n }\n\n if (this.applicationLayoutContext?.appSwitchConfig) {\n showAppSwitch(this.applicationLayoutContext.appSwitchConfig);\n }\n }\n\n render() {\n return (\n <Host\n class={{\n expanded: this.expand,\n [`breakpoint-${this.breakpoint}`]: true,\n }}\n slot=\"menu\"\n >\n <nav\n class={{\n menu: true,\n expanded: this.expand,\n }}\n >\n <div class=\"menu-buttons\">\n {this.breakpoint !== 'sm' && (\n <ix-menu-expand-icon\n breakpoint={this.breakpoint}\n expanded={this.expand}\n pinned={this.pinned}\n class=\"menu-expand-icon\"\n ixAriaLabel={this.i18nExpandSidebar}\n onClick={async () => this.toggleMenu()}\n data-testid=\"expand-collapse-menu\"\n ></ix-menu-expand-icon>\n )}\n {this.breakpoint === 'sm' &&\n this.applicationLayoutContext?.appSwitchConfig && (\n <ix-icon-button\n onClick={() => {\n this.showAppSwitch();\n }}\n icon={iconApps}\n variant=\"subtle-tertiary\"\n ></ix-icon-button>\n )}\n </div>\n\n <div\n id=\"menu-tabs\"\n style={{\n display: 'contents',\n }}\n onClick={(e) => this.onMenuItemsClick(e)}\n >\n <div class=\"tabs-shadow-container\">\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-top': true,\n 'tabs--shadow--show': this.itemsScrollShadowTop,\n }}\n ></div>\n <div\n class={{\n tabs: true,\n 'show-scrollbar': this.expand,\n }}\n onScroll={() => this.handleOverflowIndicator()}\n >\n <div class=\"menu-avatar\">\n <slot name=\"ix-menu-avatar\"></slot>\n </div>\n <slot name=\"home\"></slot>\n {this.breakpoint !== 'sm' || !this.isHiddenFromViewport() ? (\n <slot></slot>\n ) : null}\n </div>\n <div\n class={{\n 'tabs--shadow': true,\n 'tabs--shadow-bottom': true,\n 'tabs--shadow--show': this.itemsScrollShadowBottom,\n }}\n ></div>\n </div>\n </div>\n <div class=\"bottom-tab-divider\"></div>\n {this.settings ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"settings\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showSettings,\n }}\n icon={iconCogwheel}\n onClick={async () => this.toggleSettings(!this.showSettings)}\n label={this.i18nSettings}\n ></ix-menu-item>\n ) : null}\n {this.enableToggleTheme ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"toggleTheme\"\n onClick={() => themeSwitcher.toggleMode()}\n class=\"internal-tab bottom-tab\"\n icon={iconLightDark}\n label={this.i18nToggleTheme}\n ></ix-menu-item>\n ) : null}\n <div onClick={(e) => this.onMenuItemsClick(e)}>\n <slot name=\"bottom\"></slot>\n </div>\n <div id=\"popover-area\"></div>\n {this.enableMapExpand || this.applicationLayoutContext?.sidebar ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"menu-collapse\"\n onClick={() => this.sidebarToggle()}\n class=\"internal-tab bottom-tab\"\n icon={`${this.getCollapseIcon()}`}\n label={this.getCollapseText()}\n ></ix-menu-item>\n ) : null}\n {this.about ? (\n <ix-menu-item\n disabled={this.isHiddenFromViewport()}\n id=\"aboutAndLegal\"\n class={{\n 'internal-tab': true,\n 'bottom-tab': true,\n active: this.showAbout,\n }}\n icon={iconInfo}\n onClick={async () => this.toggleAbout(!this.showAbout)}\n label={this.i18nLegal}\n ></ix-menu-item>\n ) : null}\n </nav>\n <div\n class={{\n 'menu-overlay': true,\n visible: this.isOverlayVisible(),\n expanded: this.expand,\n }}\n onTransitionEnd={() => {\n this.isTransitionDisabled = true;\n this.checkTransition();\n }}\n >\n <div class={'menu-overlay-container'}>\n {this.showSettings ? <slot name=\"ix-menu-settings\"></slot> : null}\n </div>\n <div class={'menu-overlay-container'}>\n {this.showAbout ? <slot name=\"ix-menu-about\"></slot> : null}\n </div>\n </div>\n </Host>\n );\n }\n}\n"]}
@@ -33,14 +33,6 @@
33
33
  * This source code is licensed under the MIT license found in the
34
34
  * LICENSE file in the root directory of this source tree.
35
35
  */
36
- /*
37
- * SPDX-FileCopyrightText: 2024 Siemens AG
38
- *
39
- * SPDX-License-Identifier: MIT
40
- *
41
- * This source code is licensed under the MIT license found in the
42
- * LICENSE file in the root directory of this source tree.
43
- */
44
36
  :host {
45
37
  margin: 0.5rem 0.5rem 0rem 0.5rem;
46
38
  }
@@ -133,9 +125,6 @@
133
125
  padding: 0 1rem;
134
126
  font-weight: normal;
135
127
  white-space: normal;
136
- overflow: hidden;
137
- text-overflow: ellipsis;
138
- white-space: nowrap;
139
128
  }
140
129
  :host ix-icon {
141
130
  margin-top: 0.25rem;
@@ -49,6 +49,7 @@ export class Panes {
49
49
  this.isMobile = matchBreakpoint('sm');
50
50
  applicationLayoutService.onChange.on(() => {
51
51
  this.isMobile = matchBreakpoint('sm');
52
+ this.configurePanes();
52
53
  });
53
54
  }
54
55
  componentDidLoad() {
@@ -238,7 +239,7 @@ export class Panes {
238
239
  return pane ? pane.floating : false;
239
240
  }
240
241
  render() {
241
- return (h(Host, { key: 'f5825e5fd84ca1f96e9eb6d19c528107167b4e16' }, !this.isMobile ? (this.layout == 'full-vertical' ? (h("div", { class: "side-panes-wrapper" }, h("div", { class: {
242
+ return (h(Host, { key: 'e325d469cf08970e85af16e34df3e25ea6fadacc' }, !this.isMobile ? (this.layout == 'full-vertical' ? (h("div", { class: "side-panes-wrapper" }, h("div", { class: {
242
243
  row: true,
243
244
  'padding-left': this.hasPadding('left'),
244
245
  'padding-right': this.hasPadding('right'),
@@ -1 +1 @@
1
- {"version":3,"file":"pane-layout.js","sourceRoot":"","sources":["../../../src/components/pane-layout/pane-layout.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n forceUpdate,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport type { Composition } from '../pane/pane.types';\nimport { applicationLayoutService } from '../utils/application-layout';\nimport { matchBreakpoint } from '../utils/breakpoints';\n\n@Component({\n tag: 'ix-pane-layout',\n styleUrl: 'pane-layout.scss',\n shadow: true,\n})\nexport class Panes {\n @Element() hostElement!: HTMLIxPaneLayoutElement;\n\n /**\n * Choose the layout of the panes.\n * When set to 'full-vertical' the vertical panes (left, right) will get the full height.\n * When set to 'full-horizontal' the horizontal panes (top, bottom) will get the full width.\n */\n @Prop() layout: 'full-vertical' | 'full-horizontal' = 'full-vertical';\n\n /**\n * Set the default variant for all panes in the layout\n */\n @Prop() variant: 'floating' | 'inline' = 'inline';\n\n /**\n * Set the default border state for all panes in the layout\n */\n @Prop() borderless: boolean = false;\n\n @State() private isMobile = false;\n @State() private paneElements = 0;\n\n private panes: Array<{\n slot: string;\n hideOnCollapse: boolean;\n floating: boolean;\n }> = [];\n\n private observer?: MutationObserver;\n\n get currentPanes() {\n return this.hostElement.querySelectorAll('ix-pane');\n }\n\n componentWillLoad() {\n this.paneElements = this.currentPanes.length;\n\n this.observer = new MutationObserver((mutations) => {\n if (mutations[0].addedNodes.item(0)?.nodeName === 'IX-PANE') {\n this.paneElements += 1;\n } else if (mutations[0].removedNodes.item(0)?.nodeName === 'IX-PANE') {\n this.paneElements -= 1;\n }\n });\n this.observer.observe(this.hostElement, {\n childList: true,\n });\n\n this.isMobile = matchBreakpoint('sm');\n applicationLayoutService.onChange.on(() => {\n this.isMobile = matchBreakpoint('sm');\n });\n }\n\n componentDidLoad() {\n this.setPanes(this.currentPanes);\n }\n\n disconnectedCallback() {\n this.observer?.disconnect();\n }\n\n private setPaneVariant(pane: HTMLIxPaneElement) {\n if (!pane.ignoreLayoutSettings) {\n pane.variant = this.variant;\n }\n }\n\n private setPaneBorder(pane: HTMLIxPaneElement) {\n if (!pane.ignoreLayoutSettings) {\n if (this.borderless) {\n pane.borderless = true;\n } else {\n const hasVisibleLeftPane = !!this.panes.find(\n (pane) => pane.slot === 'left' && !pane.hideOnCollapse\n );\n if (\n pane.variant === 'floating' &&\n this.layout === 'full-vertical' &&\n hasVisibleLeftPane &&\n (pane.composition === 'top' || pane.composition === 'bottom')\n ) {\n pane.borderless = true;\n } else {\n pane.borderless = false;\n }\n }\n }\n }\n\n private setPaneZIndex(pane: HTMLIxPaneElement) {\n const isTop = pane.slot === 'top';\n const isBottom = pane.slot === 'bottom';\n const isLeft = pane.slot === 'left';\n const isRight = pane.slot === 'right';\n\n let zIndex = 1;\n if (this.isMobile) {\n if (isBottom || isTop) {\n zIndex = 3;\n }\n } else {\n if (this.layout === 'full-vertical') {\n if (isLeft || isRight) {\n zIndex = 3;\n }\n } else {\n if (isBottom || isTop) {\n zIndex = 3;\n }\n }\n }\n pane.style.zIndex = zIndex.toString();\n }\n\n private setPanes(panes: NodeListOf<HTMLIxPaneElement>) {\n this.panes = [];\n panes.forEach((pane) => {\n this.panes.push({\n slot: pane.slot,\n hideOnCollapse: pane.hideOnCollapse,\n floating: pane.variant === 'floating',\n });\n });\n }\n\n private closeFloatingPanes() {\n this.currentPanes.forEach((pane) => {\n if (pane.expanded && pane.variant === 'floating') {\n pane.expanded = false;\n }\n });\n }\n\n private configurePanes() {\n let topCount = 0;\n let bottomCount = 0;\n let leftCount = 0;\n let rightCount = 0;\n\n this.currentPanes.forEach((pane) => {\n const isTop = pane.slot === 'top';\n const isBottom = pane.slot === 'bottom';\n const isLeft = pane.slot === 'left';\n const isRight = pane.slot === 'right';\n\n if (isLeft) {\n if (leftCount) {\n pane.slot = '';\n return;\n }\n leftCount++;\n } else if (isRight) {\n if (rightCount) {\n pane.slot = '';\n return;\n }\n rightCount++;\n } else if (isTop) {\n if (topCount) {\n pane.slot = '';\n return;\n }\n topCount++;\n } else if (isBottom) {\n if (bottomCount) {\n pane.slot = '';\n return;\n }\n bottomCount++;\n } else {\n pane.slot = '';\n return;\n }\n\n this.setPaneVariant(pane);\n this.setPaneBorder(pane);\n this.setPaneZIndex(pane);\n });\n\n this.setPanes(this.currentPanes);\n forceUpdate(this.hostElement);\n }\n\n @Listen('slotChanged')\n onSlotChanged() {\n this.configurePanes();\n }\n\n @Listen('hideOnCollapseChanged')\n onCollapsibleChanged(event: CustomEvent) {\n const { slot, hideOnCollapse } = event.detail;\n\n this.panes.forEach((currentSlot) => {\n if (currentSlot.slot === slot) {\n currentSlot.hideOnCollapse = hideOnCollapse;\n }\n });\n\n forceUpdate(this.hostElement);\n }\n\n @Listen('variantChanged')\n onVariantChanged(event: CustomEvent) {\n const { slot, variant } = event.detail;\n\n this.panes.forEach((currentSlot) => {\n if (currentSlot.slot === slot) {\n currentSlot.floating = variant === 'floating';\n }\n });\n\n forceUpdate(this.hostElement);\n }\n\n @Watch('paneElements')\n onPaneElementsChange() {\n this.configurePanes();\n }\n\n @Watch('variant')\n onVariableChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneVariant(pane);\n this.setPaneBorder(pane);\n });\n\n this.setPanes(this.currentPanes);\n forceUpdate(this.hostElement);\n }\n\n @Watch('borderless')\n onBorderChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneBorder(pane);\n });\n }\n\n @Watch('layout')\n onLayoutChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneBorder(pane);\n this.setPaneZIndex(pane);\n });\n }\n\n @Watch('isMobile')\n onMobileChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneZIndex(pane);\n });\n }\n\n private hasPadding(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return pane ? !pane.hideOnCollapse && pane.floating : false;\n }\n\n private hasPaddingMobile(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return pane && !pane.hideOnCollapse;\n }\n\n private slotExists(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return !!pane;\n }\n\n private isFloating(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return pane ? pane.floating : false;\n }\n\n render() {\n return (\n <Host>\n {!this.isMobile ? (\n this.layout == 'full-vertical' ? (\n <div class=\"side-panes-wrapper\">\n <div\n class={{\n row: true,\n 'padding-left': this.hasPadding('left'),\n 'padding-right': this.hasPadding('right'),\n }}\n >\n <div\n key=\"left\"\n class={{ 'absolute-left': this.isFloating('left') }}\n >\n <slot name=\"left\"></slot>\n </div>\n <div\n class={{\n col: true,\n 'padding-top': this.hasPadding('top'),\n 'padding-bottom': this.hasPadding('bottom'),\n }}\n >\n <div\n key=\"top\"\n class={{ 'absolute-top': this.isFloating('top') }}\n >\n <slot name=\"top\"></slot>\n </div>\n <div\n key=\"content\"\n class=\"content\"\n onClick={() => this.closeFloatingPanes()}\n >\n <slot name=\"content\"></slot>\n <slot></slot>\n </div>\n <div\n key=\"bottom\"\n class={{ 'absolute-bottom': this.isFloating('bottom') }}\n >\n <slot name=\"bottom\"></slot>\n </div>\n </div>\n <div\n key=\"right\"\n class={{ 'absolute-right': this.isFloating('right') }}\n >\n <slot name=\"right\"></slot>\n </div>\n </div>\n </div>\n ) : (\n <div class=\"side-panes-wrapper\">\n <div\n class={{\n col: true,\n 'padding-top': this.hasPadding('top'),\n 'padding-bottom': this.hasPadding('bottom'),\n }}\n >\n <div\n key=\"top\"\n class={{ 'absolute-top': this.isFloating('top') }}\n >\n <slot name=\"top\"></slot>\n </div>\n <div\n class={{\n row: true,\n 'padding-left': this.hasPadding('left'),\n 'padding-right': this.hasPadding('right'),\n }}\n >\n <div\n key=\"left\"\n class={{ 'absolute-left': this.isFloating('left') }}\n >\n <slot name=\"left\"></slot>\n </div>\n <div\n key=\"content\"\n class=\"content\"\n onClick={() => this.closeFloatingPanes()}\n >\n <slot name=\"content\"></slot>\n <slot></slot>\n </div>\n <div\n key=\"right\"\n class={{ 'absolute-right': this.isFloating('right') }}\n >\n <slot name=\"right\"></slot>\n </div>\n </div>\n <div\n key=\"bottom\"\n class={{ 'absolute-bottom': this.isFloating('bottom') }}\n >\n <slot name=\"bottom\"></slot>\n </div>\n </div>\n </div>\n )\n ) : (\n <div class=\"col\">\n <div\n key=\"top\"\n style={{\n minHeight: this.hasPaddingMobile('top') ? '48px' : '0',\n display: this.slotExists('top') ? 'block' : 'none',\n }}\n >\n <slot name=\"top\"></slot>\n </div>\n <div\n key=\"left\"\n style={{\n minHeight: this.hasPaddingMobile('left') ? '48px' : '0',\n display: this.slotExists('left') ? 'block' : 'none',\n }}\n >\n <slot name=\"left\"></slot>\n </div>\n <div\n key=\"content\"\n class=\"content\"\n onClick={() => this.closeFloatingPanes()}\n >\n <slot name=\"content\"></slot>\n <slot></slot>\n </div>\n <div\n key=\"right\"\n style={{\n minHeight: this.hasPaddingMobile('right') ? '48px' : '0',\n display: this.slotExists('right') ? 'block' : 'none',\n }}\n >\n <slot name=\"right\"></slot>\n </div>\n <div\n key=\"bottom\"\n style={{\n minHeight: this.hasPaddingMobile('bottom') ? '48px' : '0',\n display: this.slotExists('bottom') ? 'block' : 'none',\n }}\n >\n <slot name=\"bottom\"></slot>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"pane-layout.js","sourceRoot":"","sources":["../../../src/components/pane-layout/pane-layout.tsx"],"names":[],"mappings":"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","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport {\n Component,\n Element,\n forceUpdate,\n h,\n Host,\n Listen,\n Prop,\n State,\n Watch,\n} from '@stencil/core';\nimport type { Composition } from '../pane/pane.types';\nimport { applicationLayoutService } from '../utils/application-layout';\nimport { matchBreakpoint } from '../utils/breakpoints';\n\n@Component({\n tag: 'ix-pane-layout',\n styleUrl: 'pane-layout.scss',\n shadow: true,\n})\nexport class Panes {\n @Element() hostElement!: HTMLIxPaneLayoutElement;\n\n /**\n * Choose the layout of the panes.\n * When set to 'full-vertical' the vertical panes (left, right) will get the full height.\n * When set to 'full-horizontal' the horizontal panes (top, bottom) will get the full width.\n */\n @Prop() layout: 'full-vertical' | 'full-horizontal' = 'full-vertical';\n\n /**\n * Set the default variant for all panes in the layout\n */\n @Prop() variant: 'floating' | 'inline' = 'inline';\n\n /**\n * Set the default border state for all panes in the layout\n */\n @Prop() borderless: boolean = false;\n\n @State() private isMobile = false;\n @State() private paneElements = 0;\n\n private panes: Array<{\n slot: string;\n hideOnCollapse: boolean;\n floating: boolean;\n }> = [];\n\n private observer?: MutationObserver;\n\n get currentPanes() {\n return this.hostElement.querySelectorAll('ix-pane');\n }\n\n componentWillLoad() {\n this.paneElements = this.currentPanes.length;\n\n this.observer = new MutationObserver((mutations) => {\n if (mutations[0].addedNodes.item(0)?.nodeName === 'IX-PANE') {\n this.paneElements += 1;\n } else if (mutations[0].removedNodes.item(0)?.nodeName === 'IX-PANE') {\n this.paneElements -= 1;\n }\n });\n this.observer.observe(this.hostElement, {\n childList: true,\n });\n\n this.isMobile = matchBreakpoint('sm');\n applicationLayoutService.onChange.on(() => {\n this.isMobile = matchBreakpoint('sm');\n this.configurePanes();\n });\n }\n\n componentDidLoad() {\n this.setPanes(this.currentPanes);\n }\n\n disconnectedCallback() {\n this.observer?.disconnect();\n }\n\n private setPaneVariant(pane: HTMLIxPaneElement) {\n if (!pane.ignoreLayoutSettings) {\n pane.variant = this.variant;\n }\n }\n\n private setPaneBorder(pane: HTMLIxPaneElement) {\n if (!pane.ignoreLayoutSettings) {\n if (this.borderless) {\n pane.borderless = true;\n } else {\n const hasVisibleLeftPane = !!this.panes.find(\n (pane) => pane.slot === 'left' && !pane.hideOnCollapse\n );\n if (\n pane.variant === 'floating' &&\n this.layout === 'full-vertical' &&\n hasVisibleLeftPane &&\n (pane.composition === 'top' || pane.composition === 'bottom')\n ) {\n pane.borderless = true;\n } else {\n pane.borderless = false;\n }\n }\n }\n }\n\n private setPaneZIndex(pane: HTMLIxPaneElement) {\n const isTop = pane.slot === 'top';\n const isBottom = pane.slot === 'bottom';\n const isLeft = pane.slot === 'left';\n const isRight = pane.slot === 'right';\n\n let zIndex = 1;\n if (this.isMobile) {\n if (isBottom || isTop) {\n zIndex = 3;\n }\n } else {\n if (this.layout === 'full-vertical') {\n if (isLeft || isRight) {\n zIndex = 3;\n }\n } else {\n if (isBottom || isTop) {\n zIndex = 3;\n }\n }\n }\n pane.style.zIndex = zIndex.toString();\n }\n\n private setPanes(panes: NodeListOf<HTMLIxPaneElement>) {\n this.panes = [];\n panes.forEach((pane) => {\n this.panes.push({\n slot: pane.slot,\n hideOnCollapse: pane.hideOnCollapse,\n floating: pane.variant === 'floating',\n });\n });\n }\n\n private closeFloatingPanes() {\n this.currentPanes.forEach((pane) => {\n if (pane.expanded && pane.variant === 'floating') {\n pane.expanded = false;\n }\n });\n }\n\n private configurePanes() {\n let topCount = 0;\n let bottomCount = 0;\n let leftCount = 0;\n let rightCount = 0;\n\n this.currentPanes.forEach((pane) => {\n const isTop = pane.slot === 'top';\n const isBottom = pane.slot === 'bottom';\n const isLeft = pane.slot === 'left';\n const isRight = pane.slot === 'right';\n\n if (isLeft) {\n if (leftCount) {\n pane.slot = '';\n return;\n }\n leftCount++;\n } else if (isRight) {\n if (rightCount) {\n pane.slot = '';\n return;\n }\n rightCount++;\n } else if (isTop) {\n if (topCount) {\n pane.slot = '';\n return;\n }\n topCount++;\n } else if (isBottom) {\n if (bottomCount) {\n pane.slot = '';\n return;\n }\n bottomCount++;\n } else {\n pane.slot = '';\n return;\n }\n\n this.setPaneVariant(pane);\n this.setPaneBorder(pane);\n this.setPaneZIndex(pane);\n });\n\n this.setPanes(this.currentPanes);\n forceUpdate(this.hostElement);\n }\n\n @Listen('slotChanged')\n onSlotChanged() {\n this.configurePanes();\n }\n\n @Listen('hideOnCollapseChanged')\n onCollapsibleChanged(event: CustomEvent) {\n const { slot, hideOnCollapse } = event.detail;\n\n this.panes.forEach((currentSlot) => {\n if (currentSlot.slot === slot) {\n currentSlot.hideOnCollapse = hideOnCollapse;\n }\n });\n\n forceUpdate(this.hostElement);\n }\n\n @Listen('variantChanged')\n onVariantChanged(event: CustomEvent) {\n const { slot, variant } = event.detail;\n\n this.panes.forEach((currentSlot) => {\n if (currentSlot.slot === slot) {\n currentSlot.floating = variant === 'floating';\n }\n });\n\n forceUpdate(this.hostElement);\n }\n\n @Watch('paneElements')\n onPaneElementsChange() {\n this.configurePanes();\n }\n\n @Watch('variant')\n onVariableChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneVariant(pane);\n this.setPaneBorder(pane);\n });\n\n this.setPanes(this.currentPanes);\n forceUpdate(this.hostElement);\n }\n\n @Watch('borderless')\n onBorderChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneBorder(pane);\n });\n }\n\n @Watch('layout')\n onLayoutChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneBorder(pane);\n this.setPaneZIndex(pane);\n });\n }\n\n @Watch('isMobile')\n onMobileChange() {\n this.currentPanes.forEach((pane) => {\n this.setPaneZIndex(pane);\n });\n }\n\n private hasPadding(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return pane ? !pane.hideOnCollapse && pane.floating : false;\n }\n\n private hasPaddingMobile(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return pane && !pane.hideOnCollapse;\n }\n\n private slotExists(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return !!pane;\n }\n\n private isFloating(composition: Composition) {\n const pane = this.panes.find((pane) => pane.slot === composition);\n return pane ? pane.floating : false;\n }\n\n render() {\n return (\n <Host>\n {!this.isMobile ? (\n this.layout == 'full-vertical' ? (\n <div class=\"side-panes-wrapper\">\n <div\n class={{\n row: true,\n 'padding-left': this.hasPadding('left'),\n 'padding-right': this.hasPadding('right'),\n }}\n >\n <div\n key=\"left\"\n class={{ 'absolute-left': this.isFloating('left') }}\n >\n <slot name=\"left\"></slot>\n </div>\n <div\n class={{\n col: true,\n 'padding-top': this.hasPadding('top'),\n 'padding-bottom': this.hasPadding('bottom'),\n }}\n >\n <div\n key=\"top\"\n class={{ 'absolute-top': this.isFloating('top') }}\n >\n <slot name=\"top\"></slot>\n </div>\n <div\n key=\"content\"\n class=\"content\"\n onClick={() => this.closeFloatingPanes()}\n >\n <slot name=\"content\"></slot>\n <slot></slot>\n </div>\n <div\n key=\"bottom\"\n class={{ 'absolute-bottom': this.isFloating('bottom') }}\n >\n <slot name=\"bottom\"></slot>\n </div>\n </div>\n <div\n key=\"right\"\n class={{ 'absolute-right': this.isFloating('right') }}\n >\n <slot name=\"right\"></slot>\n </div>\n </div>\n </div>\n ) : (\n <div class=\"side-panes-wrapper\">\n <div\n class={{\n col: true,\n 'padding-top': this.hasPadding('top'),\n 'padding-bottom': this.hasPadding('bottom'),\n }}\n >\n <div\n key=\"top\"\n class={{ 'absolute-top': this.isFloating('top') }}\n >\n <slot name=\"top\"></slot>\n </div>\n <div\n class={{\n row: true,\n 'padding-left': this.hasPadding('left'),\n 'padding-right': this.hasPadding('right'),\n }}\n >\n <div\n key=\"left\"\n class={{ 'absolute-left': this.isFloating('left') }}\n >\n <slot name=\"left\"></slot>\n </div>\n <div\n key=\"content\"\n class=\"content\"\n onClick={() => this.closeFloatingPanes()}\n >\n <slot name=\"content\"></slot>\n <slot></slot>\n </div>\n <div\n key=\"right\"\n class={{ 'absolute-right': this.isFloating('right') }}\n >\n <slot name=\"right\"></slot>\n </div>\n </div>\n <div\n key=\"bottom\"\n class={{ 'absolute-bottom': this.isFloating('bottom') }}\n >\n <slot name=\"bottom\"></slot>\n </div>\n </div>\n </div>\n )\n ) : (\n <div class=\"col\">\n <div\n key=\"top\"\n style={{\n minHeight: this.hasPaddingMobile('top') ? '48px' : '0',\n display: this.slotExists('top') ? 'block' : 'none',\n }}\n >\n <slot name=\"top\"></slot>\n </div>\n <div\n key=\"left\"\n style={{\n minHeight: this.hasPaddingMobile('left') ? '48px' : '0',\n display: this.slotExists('left') ? 'block' : 'none',\n }}\n >\n <slot name=\"left\"></slot>\n </div>\n <div\n key=\"content\"\n class=\"content\"\n onClick={() => this.closeFloatingPanes()}\n >\n <slot name=\"content\"></slot>\n <slot></slot>\n </div>\n <div\n key=\"right\"\n style={{\n minHeight: this.hasPaddingMobile('right') ? '48px' : '0',\n display: this.slotExists('right') ? 'block' : 'none',\n }}\n >\n <slot name=\"right\"></slot>\n </div>\n <div\n key=\"bottom\"\n style={{\n minHeight: this.hasPaddingMobile('bottom') ? '48px' : '0',\n display: this.slotExists('bottom') ? 'block' : 'none',\n }}\n >\n <slot name=\"bottom\"></slot>\n </div>\n </div>\n )}\n </Host>\n );\n }\n}\n"]}
@@ -17,10 +17,14 @@ export class PushCard {
17
17
  * Expand the card
18
18
  */
19
19
  this.expanded = false;
20
+ /**
21
+ * If true, disables hover and active styles and changes cursor to default
22
+ */
23
+ this.passive = false;
20
24
  }
21
25
  render() {
22
26
  var _a;
23
- return (h(Host, { key: 'ce5e4eb49ffe548ae912dfb9df2ff02e570aef15', class: `card-${this.variant}` }, h("ix-card", { key: '09ee07b5244171d3cd2a2eaf99180a71364326e6', variant: this.variant }, h("ix-card-content", { key: '4ca37f7946dfaf600c21fa516a6a79c95c3369f3' }, h("ix-card-title", { key: '14508386f9ad32b641b7404b8d1845f8f215a12f' }, this.icon ? (h("ix-icon", { class: 'icon', name: this.icon, size: "32", "aria-label": this.ariaLabelIcon })) : null, h("ix-typography", { key: '004e0f78e304e16b085cba401d4fe6067c579819', format: "display-xxl" }, (_a = this.notification) !== null && _a !== void 0 ? _a : 0), h("slot", { key: 'b5207aabd014e0e180eb1248795bccc23c09b850', name: "title-action" })), h("ix-typography", { key: 'e39c0d3762869afd918cf9f8bb75bcbad35798d2', format: "h4" }, this.heading), h("ix-typography", { key: '52c82e776f50a1e848cb163cf974402fc58a5011' }, this.subheading)), h("ix-card-accordion", { key: '28ba4043b6494617eb0a4ea03eca56c198e10766', collapse: !this.expanded, variant: this.variant }, h("slot", { key: 'f2be8b7cd43af05c3af1be4a5642871e3413d6f8' })))));
27
+ return (h(Host, { key: 'f91d2bc149d2358afb29d82de24a0fd4d36ff8da', class: `card-${this.variant}` }, h("ix-card", { key: '22520048301a654e61139c8d6bd50788328861d9', variant: this.variant, passive: this.passive }, h("ix-card-content", { key: 'ff4cdaa22e092861c98cf9af6554626c5d8b067f' }, h("ix-card-title", { key: '63deacdf7535977fd8c7a4f42e45127231ee6475' }, this.icon ? (h("ix-icon", { class: 'icon', name: this.icon, size: "32", "aria-label": this.ariaLabelIcon })) : null, h("ix-typography", { key: '3a86dc49d3cf32c426c231865b1a2336ccad48bf', format: "display-xxl" }, (_a = this.notification) !== null && _a !== void 0 ? _a : 0), h("slot", { key: '19fa42ddfbb9e1dce31842f5eab9ca9652b86701', name: "title-action" })), h("ix-typography", { key: '28a8dd2f112f679f5352fd17bccb0e9996208d80', format: "h4" }, this.heading), h("ix-typography", { key: '6b46c08124d639b71d8c11b8b3fb07c91950b5ed' }, this.subheading)), h("ix-card-accordion", { key: '0812bbb4d460cd89d095aa1eff55e5c37ef52e36', collapse: !this.expanded, variant: this.variant }, h("slot", { key: '2ac082345c8179a97520407d6bc91aac7a3b0a9b' })))));
24
28
  }
25
29
  static get is() { return "ix-push-card"; }
26
30
  static get encapsulation() { return "shadow"; }
@@ -179,6 +183,26 @@ export class PushCard {
179
183
  "setter": false,
180
184
  "reflect": false,
181
185
  "defaultValue": "false"
186
+ },
187
+ "passive": {
188
+ "type": "boolean",
189
+ "attribute": "passive",
190
+ "mutable": false,
191
+ "complexType": {
192
+ "original": "boolean",
193
+ "resolved": "boolean",
194
+ "references": {}
195
+ },
196
+ "required": false,
197
+ "optional": false,
198
+ "docs": {
199
+ "tags": [],
200
+ "text": "If true, disables hover and active styles and changes cursor to default"
201
+ },
202
+ "getter": false,
203
+ "setter": false,
204
+ "reflect": false,
205
+ "defaultValue": "false"
182
206
  }
183
207
  };
184
208
  }
@@ -1 +1 @@
1
- {"version":3,"file":"push-card.js","sourceRoot":"","sources":["../../../src/components/push-card/push-card.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAQzD,MAAM,OAAO,QAAQ;IALrB;QAiCE;;WAEG;QACK,YAAO,GAAoB,SAAS,CAAC;QAE7C;;WAEG;QACK,aAAQ,GAAY,KAAK,CAAC;KA+BnC;IA7BC,MAAM;;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,KAAK,EAAE,QAAQ,IAAI,CAAC,OAAO,EAAE;YACjC,gEAAS,OAAO,EAAE,IAAI,CAAC,OAAO;gBAC5B;oBACE;wBACG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACX,eACE,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAC,IAAI,gBACG,IAAI,CAAC,aAAa,GACrB,CACZ,CAAC,CAAC,CAAC,IAAI;wBACR,sEAAe,MAAM,EAAC,aAAa,IAChC,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC,CACT;wBAChB,6DAAM,IAAI,EAAC,cAAc,GAAQ,CACnB;oBAChB,sEAAe,MAAM,EAAC,IAAI,IAAE,IAAI,CAAC,OAAO,CAAiB;oBACzD,wEAAgB,IAAI,CAAC,UAAU,CAAiB,CAChC;gBAClB,0EAAmB,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO;oBAChE,8DAAa,CACK,CACZ,CACL,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Prop } from '@stencil/core';\nimport type { PushCardVariant } from './push-card.types';\n\n@Component({\n tag: 'ix-push-card',\n styleUrl: 'push-card.scss',\n shadow: true,\n})\nexport class PushCard {\n /**\n * Card icon\n */\n @Prop() icon?: string;\n\n /**\n * ARIA label for the icon\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelIcon?: string;\n\n /**\n * Card KPI value\n */\n @Prop() notification?: string;\n\n /**\n * Card heading\n */\n @Prop() heading?: string;\n\n /**\n * Card subheading\n */\n @Prop() subheading?: string;\n\n /**\n * Card variant\n */\n @Prop() variant: PushCardVariant = 'outline';\n\n /**\n * Expand the card\n */\n @Prop() expanded: boolean = false;\n\n render() {\n return (\n <Host class={`card-${this.variant}`}>\n <ix-card variant={this.variant}>\n <ix-card-content>\n <ix-card-title>\n {this.icon ? (\n <ix-icon\n class={'icon'}\n name={this.icon}\n size=\"32\"\n aria-label={this.ariaLabelIcon}\n ></ix-icon>\n ) : null}\n <ix-typography format=\"display-xxl\">\n {this.notification ?? 0}\n </ix-typography>\n <slot name=\"title-action\"></slot>\n </ix-card-title>\n <ix-typography format=\"h4\">{this.heading}</ix-typography>\n <ix-typography>{this.subheading}</ix-typography>\n </ix-card-content>\n <ix-card-accordion collapse={!this.expanded} variant={this.variant}>\n <slot></slot>\n </ix-card-accordion>\n </ix-card>\n </Host>\n );\n }\n}\n"]}
1
+ {"version":3,"file":"push-card.js","sourceRoot":"","sources":["../../../src/components/push-card/push-card.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,EAAE,SAAS,EAAE,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,MAAM,eAAe,CAAC;AAQzD,MAAM,OAAO,QAAQ;IALrB;QAiCE;;WAEG;QACK,YAAO,GAAoB,SAAS,CAAC;QAE7C;;WAEG;QACK,aAAQ,GAAY,KAAK,CAAC;QAElC;;WAEG;QACK,YAAO,GAAY,KAAK,CAAC;KA+BlC;IA7BC,MAAM;;QACJ,OAAO,CACL,EAAC,IAAI,qDAAC,KAAK,EAAE,QAAQ,IAAI,CAAC,OAAO,EAAE;YACjC,gEAAS,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO;gBACnD;oBACE;wBACG,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,CACX,eACE,KAAK,EAAE,MAAM,EACb,IAAI,EAAE,IAAI,CAAC,IAAI,EACf,IAAI,EAAC,IAAI,gBACG,IAAI,CAAC,aAAa,GACrB,CACZ,CAAC,CAAC,CAAC,IAAI;wBACR,sEAAe,MAAM,EAAC,aAAa,IAChC,MAAA,IAAI,CAAC,YAAY,mCAAI,CAAC,CACT;wBAChB,6DAAM,IAAI,EAAC,cAAc,GAAQ,CACnB;oBAChB,sEAAe,MAAM,EAAC,IAAI,IAAE,IAAI,CAAC,OAAO,CAAiB;oBACzD,wEAAgB,IAAI,CAAC,UAAU,CAAiB,CAChC;gBAClB,0EAAmB,QAAQ,EAAE,CAAC,IAAI,CAAC,QAAQ,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO;oBAChE,8DAAa,CACK,CACZ,CACL,CACR,CAAC;IACJ,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CACF","sourcesContent":["/*\n * SPDX-FileCopyrightText: 2023 Siemens AG\n *\n * SPDX-License-Identifier: MIT\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nimport { Component, h, Host, Prop } from '@stencil/core';\nimport type { PushCardVariant } from './push-card.types';\n\n@Component({\n tag: 'ix-push-card',\n styleUrl: 'push-card.scss',\n shadow: true,\n})\nexport class PushCard {\n /**\n * Card icon\n */\n @Prop() icon?: string;\n\n /**\n * ARIA label for the icon\n *\n * @since 3.2.0\n */\n @Prop() ariaLabelIcon?: string;\n\n /**\n * Card KPI value\n */\n @Prop() notification?: string;\n\n /**\n * Card heading\n */\n @Prop() heading?: string;\n\n /**\n * Card subheading\n */\n @Prop() subheading?: string;\n\n /**\n * Card variant\n */\n @Prop() variant: PushCardVariant = 'outline';\n\n /**\n * Expand the card\n */\n @Prop() expanded: boolean = false;\n\n /**\n * If true, disables hover and active styles and changes cursor to default\n */\n @Prop() passive: boolean = false;\n\n render() {\n return (\n <Host class={`card-${this.variant}`}>\n <ix-card variant={this.variant} passive={this.passive}>\n <ix-card-content>\n <ix-card-title>\n {this.icon ? (\n <ix-icon\n class={'icon'}\n name={this.icon}\n size=\"32\"\n aria-label={this.ariaLabelIcon}\n ></ix-icon>\n ) : null}\n <ix-typography format=\"display-xxl\">\n {this.notification ?? 0}\n </ix-typography>\n <slot name=\"title-action\"></slot>\n </ix-card-title>\n <ix-typography format=\"h4\">{this.heading}</ix-typography>\n <ix-typography>{this.subheading}</ix-typography>\n </ix-card-content>\n <ix-card-accordion collapse={!this.expanded} variant={this.variant}>\n <slot></slot>\n </ix-card-accordion>\n </ix-card>\n </Host>\n );\n }\n}\n"]}