@mgdis/mg-components 6.9.0 → 6.10.0

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 (207) hide show
  1. package/dist/cjs/events.utils-D5SAtkpQ.js +28 -0
  2. package/dist/cjs/events.utils-D5SAtkpQ.js.map +1 -0
  3. package/dist/cjs/index-CATFkm3O.js +4 -0
  4. package/dist/cjs/{index-CTU2m-sy.js → index-CfIlskRh.js} +20 -6
  5. package/dist/cjs/{index-CTU2m-sy.js.map → index-CfIlskRh.js.map} +1 -1
  6. package/dist/cjs/index.es-BCLy9yYb.js +250 -0
  7. package/dist/cjs/index.es-BCLy9yYb.js.map +1 -0
  8. package/dist/cjs/loader.cjs.js +1 -1
  9. package/dist/cjs/mg-action-more_37.cjs.entry.js +382 -373
  10. package/dist/cjs/mg-action-more_37.cjs.entry.js.map +1 -1
  11. package/dist/cjs/mg-alert.cjs.entry.js +7 -7
  12. package/dist/cjs/mg-components.cjs.js +1 -1
  13. package/dist/cjs/mg-input-combobox.cjs.entry.js +774 -0
  14. package/dist/cjs/mg-input-combobox.cjs.entry.js.map +1 -0
  15. package/dist/cjs/mg-input-combobox.entry.cjs.js.map +1 -0
  16. package/dist/cjs/mg-input-rich-text-editor.cjs.entry.js +16 -14
  17. package/dist/cjs/mg-input-rich-text-editor.cjs.entry.js.map +1 -1
  18. package/dist/cjs/mg-input-rich-text-editor.entry.cjs.js.map +1 -1
  19. package/dist/cjs/mg-loader.cjs.entry.js +5 -5
  20. package/dist/cjs/mg-progress.cjs.entry.js +11 -11
  21. package/dist/collection/collection-manifest.json +1 -0
  22. package/dist/collection/components/atoms/mg-button/mg-button.js +3 -2
  23. package/dist/collection/components/atoms/mg-button/mg-button.js.map +1 -1
  24. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js +47 -57
  25. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js.map +1 -1
  26. package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.conf.js +2 -0
  27. package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.conf.js.map +1 -0
  28. package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.js +1443 -0
  29. package/dist/collection/components/molecules/inputs/mg-input-combobox/mg-input-combobox.js.map +1 -0
  30. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js +1 -1
  31. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js +2 -2
  32. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js.map +1 -1
  33. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js +1 -1
  34. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js +1 -1
  35. package/dist/collection/components/molecules/inputs/mg-input-rich-text-editor/editor/editor.scss +1 -0
  36. package/dist/collection/components/molecules/inputs/mg-input-rich-text-editor/mg-input-rich-text-editor.js +3 -3
  37. package/dist/collection/components/molecules/inputs/mg-input-rich-text-editor/mg-input-rich-text-editor.js.map +1 -1
  38. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js +1 -1
  39. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js +1 -1
  40. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js +1 -1
  41. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +1 -1
  42. package/dist/collection/components/molecules/menus/mg-menu/mg-menu.js +2 -2
  43. package/dist/collection/components/molecules/menus/mg-menu/mg-menu.js.map +1 -1
  44. package/dist/collection/components/molecules/menus/mg-menu-item/mg-menu-item.js +3 -3
  45. package/dist/collection/components/molecules/menus/mg-menu-item/mg-menu-item.js.map +1 -1
  46. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js +2 -2
  47. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js.map +1 -1
  48. package/dist/collection/components/molecules/mg-alert/mg-alert.js +1 -1
  49. package/dist/collection/components/molecules/mg-details/mg-details.js +1 -1
  50. package/dist/collection/components/molecules/mg-form/mg-form.js +1 -1
  51. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +1 -1
  52. package/dist/collection/components/molecules/mg-loader/mg-loader.js +1 -1
  53. package/dist/collection/components/molecules/mg-message/mg-message.js +2 -2
  54. package/dist/collection/components/molecules/mg-modal/mg-modal.js +2 -2
  55. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +3 -3
  56. package/dist/collection/components/molecules/mg-panel/mg-panel.js +1 -1
  57. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js +1 -1
  58. package/dist/collection/components/molecules/mg-popover/mg-popover.js +55 -81
  59. package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -1
  60. package/dist/collection/components/molecules/mg-progress/mg-progress.js +1 -1
  61. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +1 -1
  62. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +6 -5
  63. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js.map +1 -1
  64. package/dist/collection/locales/en/messages.json +8 -1
  65. package/dist/collection/locales/fr/messages.json +8 -1
  66. package/dist/collection/utils/behaviors.utils.js +3 -3
  67. package/dist/collection/utils/behaviors.utils.js.map +1 -1
  68. package/dist/collection/utils/events.utils.js +22 -0
  69. package/dist/collection/utils/events.utils.js.map +1 -0
  70. package/dist/collection/utils/floating-ui.utils.js +46 -2
  71. package/dist/collection/utils/floating-ui.utils.js.map +1 -1
  72. package/dist/components/events.utils.js +26 -0
  73. package/dist/components/events.utils.js.map +1 -0
  74. package/dist/components/floating-ui.utils.js +47 -3
  75. package/dist/components/floating-ui.utils.js.map +1 -1
  76. package/dist/components/index.es.js +136 -43
  77. package/dist/components/index.es.js.map +1 -1
  78. package/dist/components/index2.js +18 -4
  79. package/dist/components/index2.js.map +1 -1
  80. package/dist/components/mg-action-more.js +8 -8
  81. package/dist/components/mg-action-more.js.map +1 -1
  82. package/dist/components/mg-alert.js +6 -6
  83. package/dist/components/mg-badge2.js +6 -6
  84. package/dist/components/mg-button2.js +9 -8
  85. package/dist/components/mg-button2.js.map +1 -1
  86. package/dist/components/mg-character-left2.js +4 -4
  87. package/dist/components/mg-details.js +4 -4
  88. package/dist/components/mg-details.js.map +1 -1
  89. package/dist/components/mg-form.js +8 -8
  90. package/dist/components/mg-icon2.js +6 -6
  91. package/dist/components/mg-illustrated-message.js +6 -6
  92. package/dist/components/mg-input-checkbox.js +9 -9
  93. package/dist/components/mg-input-combobox.d.ts +11 -0
  94. package/dist/components/mg-input-combobox.js +897 -0
  95. package/dist/components/mg-input-combobox.js.map +1 -0
  96. package/dist/components/mg-input-date.js +18 -18
  97. package/dist/components/mg-input-date.js.map +1 -1
  98. package/dist/components/mg-input-numeric.js +16 -16
  99. package/dist/components/mg-input-numeric.js.map +1 -1
  100. package/dist/components/mg-input-password.js +5 -5
  101. package/dist/components/mg-input-password.js.map +1 -1
  102. package/dist/components/mg-input-radio.js +8 -8
  103. package/dist/components/mg-input-rich-text-editor.js +15 -13
  104. package/dist/components/mg-input-rich-text-editor.js.map +1 -1
  105. package/dist/components/mg-input-select2.js +9 -9
  106. package/dist/components/mg-input-select2.js.map +1 -1
  107. package/dist/components/mg-input-text2.js +11 -11
  108. package/dist/components/mg-input-text2.js.map +1 -1
  109. package/dist/components/mg-input-textarea.js +9 -9
  110. package/dist/components/mg-input-textarea.js.map +1 -1
  111. package/dist/components/mg-input-title2.js +4 -4
  112. package/dist/components/mg-input-toggle.js +7 -7
  113. package/dist/components/mg-input2.js +8 -8
  114. package/dist/components/mg-item-more2.js +12 -12
  115. package/dist/components/mg-item-more2.js.map +1 -1
  116. package/dist/components/mg-loader.js +1 -70
  117. package/dist/components/mg-loader.js.map +1 -1
  118. package/dist/components/mg-loader2.js +75 -0
  119. package/dist/components/mg-loader2.js.map +1 -0
  120. package/dist/components/mg-menu-item2.js +13 -13
  121. package/dist/components/mg-menu-item2.js.map +1 -1
  122. package/dist/components/mg-message2.js +6 -6
  123. package/dist/components/mg-modal.js +10 -10
  124. package/dist/components/mg-pagination2.js +9 -9
  125. package/dist/components/mg-panel.js +10 -10
  126. package/dist/components/mg-popover-content2.js +5 -5
  127. package/dist/components/mg-popover-content2.js.map +1 -1
  128. package/dist/components/mg-popover2.js +60 -86
  129. package/dist/components/mg-popover2.js.map +1 -1
  130. package/dist/components/mg-progress.js +11 -11
  131. package/dist/components/mg-skip-links.js +3 -3
  132. package/dist/components/mg-table.js +6 -6
  133. package/dist/components/mg-tabs.js +18 -17
  134. package/dist/components/mg-tabs.js.map +1 -1
  135. package/dist/components/mg-tag.js +4 -4
  136. package/dist/components/mg-tooltip-content2.js +1 -1
  137. package/dist/components/mg-tooltip-content2.js.map +1 -1
  138. package/dist/components/mg-tooltip2.js +56 -66
  139. package/dist/components/mg-tooltip2.js.map +1 -1
  140. package/dist/esm/events.utils-yMGqY8YG.js +26 -0
  141. package/dist/esm/events.utils-yMGqY8YG.js.map +1 -0
  142. package/dist/esm/index-CAuxALt5.js +4 -0
  143. package/dist/esm/{index-SQlkEaXW.js → index-DmsGewMC.js} +20 -6
  144. package/dist/esm/{index-SQlkEaXW.js.map → index-DmsGewMC.js.map} +1 -1
  145. package/dist/esm/index.es-rLV3KFPd.js +223 -0
  146. package/dist/esm/index.es-rLV3KFPd.js.map +1 -0
  147. package/dist/esm/loader.js +1 -1
  148. package/dist/esm/mg-action-more_37.entry.js +383 -374
  149. package/dist/esm/mg-action-more_37.entry.js.map +1 -1
  150. package/dist/esm/mg-alert.entry.js +7 -7
  151. package/dist/esm/mg-components.js +1 -1
  152. package/dist/esm/mg-input-combobox.entry.js +772 -0
  153. package/dist/esm/mg-input-combobox.entry.js.map +1 -0
  154. package/dist/esm/mg-input-rich-text-editor.entry.js +17 -15
  155. package/dist/esm/mg-input-rich-text-editor.entry.js.map +1 -1
  156. package/dist/esm/{mg-input.conf-BtkqaBXm.js → mg-input.conf-CNgv8hc5.js} +3 -3
  157. package/dist/esm/{mg-input.conf-BtkqaBXm.js.map → mg-input.conf-CNgv8hc5.js.map} +1 -1
  158. package/dist/esm/mg-loader.entry.js +5 -5
  159. package/dist/esm/mg-progress.entry.js +11 -11
  160. package/dist/mg-components/locales/en/messages.json +8 -1
  161. package/dist/mg-components/locales/fr/messages.json +8 -1
  162. package/dist/mg-components/mg-components.esm.js +1 -1
  163. package/dist/mg-components/mg-input-combobox.entry.esm.js.map +1 -0
  164. package/dist/mg-components/mg-input-rich-text-editor.entry.esm.js.map +1 -1
  165. package/dist/mg-components/p-0f761c6c.entry.js +2 -0
  166. package/dist/mg-components/p-0f761c6c.entry.js.map +1 -0
  167. package/dist/mg-components/{p-650d6986.entry.js → p-73099ed7.entry.js} +3 -3
  168. package/dist/mg-components/p-73099ed7.entry.js.map +1 -0
  169. package/dist/mg-components/p-88f77de2.entry.js +2 -0
  170. package/dist/mg-components/{p-680948e3.entry.js.map → p-88f77de2.entry.js.map} +1 -1
  171. package/dist/mg-components/p-CNgv8hc5.js +2 -0
  172. package/dist/mg-components/{p-BtkqaBXm.js.map → p-CNgv8hc5.js.map} +1 -1
  173. package/dist/mg-components/p-DK9teKTo.js +2 -0
  174. package/dist/mg-components/{p-CqGbLOnN.js.map → p-DK9teKTo.js.map} +1 -1
  175. package/dist/mg-components/{p-583b3769.entry.js → p-ad66e7b3.entry.js} +2 -2
  176. package/dist/mg-components/p-cdbe689e.entry.js +2 -0
  177. package/dist/mg-components/{p-9acc6504.entry.js.map → p-cdbe689e.entry.js.map} +1 -1
  178. package/dist/mg-components/p-d3a868f0.entry.js +2 -0
  179. package/dist/mg-components/p-d3a868f0.entry.js.map +1 -0
  180. package/dist/mg-components/p-rLV3KFPd.js +2 -0
  181. package/dist/mg-components/p-rLV3KFPd.js.map +1 -0
  182. package/dist/mg-components/p-yMGqY8YG.js +2 -0
  183. package/dist/mg-components/p-yMGqY8YG.js.map +1 -0
  184. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +6 -5
  185. package/dist/types/components/molecules/inputs/mg-input-combobox/mg-input-combobox.conf.d.ts +24 -0
  186. package/dist/types/components/molecules/inputs/mg-input-combobox/mg-input-combobox.d.ts +340 -0
  187. package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +5 -9
  188. package/dist/types/components.d.ts +247 -2
  189. package/dist/types/utils/events.utils.d.ts +4 -0
  190. package/dist/types/utils/floating-ui.utils.d.ts +9 -1
  191. package/ide/intellij/web-types.json +400 -1
  192. package/ide/vscode/html-custom-data.json +332 -0
  193. package/package.json +12 -12
  194. package/dist/cjs/index.es-jXqiN1uw.js +0 -152
  195. package/dist/cjs/index.es-jXqiN1uw.js.map +0 -1
  196. package/dist/esm/index.es-DDBtzymI.js +0 -130
  197. package/dist/esm/index.es-DDBtzymI.js.map +0 -1
  198. package/dist/mg-components/p-650d6986.entry.js.map +0 -1
  199. package/dist/mg-components/p-680948e3.entry.js +0 -2
  200. package/dist/mg-components/p-9acc6504.entry.js +0 -2
  201. package/dist/mg-components/p-BtkqaBXm.js +0 -2
  202. package/dist/mg-components/p-CqGbLOnN.js +0 -2
  203. package/dist/mg-components/p-DDBtzymI.js +0 -2
  204. package/dist/mg-components/p-DDBtzymI.js.map +0 -1
  205. package/dist/mg-components/p-c0fb6f62.entry.js +0 -2
  206. package/dist/mg-components/p-c0fb6f62.entry.js.map +0 -1
  207. /package/dist/mg-components/{p-583b3769.entry.js.map → p-ad66e7b3.entry.js.map} +0 -0
@@ -1,73 +1,4 @@
1
- import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
- import { i as initLocales } from './index2.js';
3
- import { L as Le, z as zt } from './index.es.js';
4
- import { d as defineCustomElement$2 } from './mg-icon2.js';
5
-
6
- const mgLoaderCss = ".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion){*{animation:none !important;transition:none !important}}:host{display:block}.mg-c-loader{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--mg-b-size-4);text-align:center}";
7
-
8
- const MgLoader$1 = /*@__PURE__*/ proxyCustomElement(class MgLoader extends HTMLElement {
9
- constructor() {
10
- super();
11
- this.__registerHost();
12
- this.__attachShadow();
13
- /**
14
- * Hide message
15
- */
16
- this.messageHide = false;
17
- }
18
- watchMessage(newValue) {
19
- if (newValue && !Le(newValue))
20
- throw new Error(`<mg-loader> prop "message" must be a valid string. Passed value: ${zt(newValue)}.`);
21
- }
22
- /*************
23
- * Lifecycle *
24
- *************/
25
- /**
26
- * Check if component props are well configured on init
27
- */
28
- componentWillLoad() {
29
- // Get locales
30
- this.messages = initLocales(this.element).messages;
31
- // validate props
32
- this.watchMessage(this.message);
33
- }
34
- /**
35
- * Render
36
- * @returns HTML Element
37
- */
38
- render() {
39
- return (h("div", { key: '029fff51068bd0fa6536200feddfdfc89b9f0ed2', class: "mg-c-loader", "aria-live": "polite" }, h("mg-icon", { key: '8626127c55f6d54cfba4dbde5796a6350ff177d8', icon: "loader", spin: true }), h("span", { key: '98999570e13cdd718ff7910b6705ce90be5650a8', class: { 'mg-u-visually-hidden': this.messageHide } }, this.message || this.messages.loader.inProgress)));
40
- }
41
- get element() { return this; }
42
- static get watchers() { return {
43
- "message": ["watchMessage"]
44
- }; }
45
- static get style() { return mgLoaderCss; }
46
- }, [1, "mg-loader", {
47
- "message": [1],
48
- "messageHide": [4, "message-hide"]
49
- }, undefined, {
50
- "message": ["watchMessage"]
51
- }]);
52
- function defineCustomElement$1() {
53
- if (typeof customElements === "undefined") {
54
- return;
55
- }
56
- const components = ["mg-loader", "mg-icon"];
57
- components.forEach(tagName => { switch (tagName) {
58
- case "mg-loader":
59
- if (!customElements.get(tagName)) {
60
- customElements.define(tagName, MgLoader$1);
61
- }
62
- break;
63
- case "mg-icon":
64
- if (!customElements.get(tagName)) {
65
- defineCustomElement$2();
66
- }
67
- break;
68
- } });
69
- }
70
- defineCustomElement$1();
1
+ import { M as MgLoader$1, d as defineCustomElement$1 } from './mg-loader2.js';
71
2
 
72
3
  const MgLoader = MgLoader$1;
73
4
  const defineCustomElement = defineCustomElement$1;
@@ -1 +1 @@
1
- {"file":"mg-loader.js","mappings":";;;;;AAAA,MAAM,WAAW,GAAG,skBAAskB;;MCS7kBA,UAAQ,iBAAAC,kBAAA,CAAA,MAAA,QAAA,SAAA,WAAA,CAAA;AALrB,IAAA,WAAA,GAAA;;;;AA+BE;;AAEG;AACK,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK;AA6B5B;AApCC,IAAA,YAAY,CAAC,QAA6B,EAAA;AACxC,QAAA,IAAI,QAAQ,IAAI,CAACC,EAAa,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,CAAoE,iEAAA,EAAAC,EAAQ,CAAC,QAAQ,CAAC,CAAG,CAAA,CAAA,CAAC;;AAQtJ;;AAEe;AAEf;;AAEG;IACH,iBAAiB,GAAA;;QAEf,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ;;AAGlD,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;;AAGjC;;;AAGG;IACH,MAAM,GAAA;AACJ,QAAA,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,eAAW,QAAQ,EAAA,EACzC,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAW,IAAA,EAAA,CAAA,EACtC,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,EAAE,sBAAsB,EAAE,IAAI,CAAC,WAAW,EAAE,EAAA,EAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAQ,CAC/G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["MgLoader","__stencil_proxyCustomElement","isValidString","toString"],"sources":["../styles/dist/components/mg-loader.css?tag=mg-loader&encapsulation=shadow","src/components/molecules/mg-loader/mg-loader.tsx"],"sourcesContent":[".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion){*{animation:none !important;transition:none !important}}:host{display:block}.mg-c-loader{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--mg-b-size-4);text-align:center}/*# sourceMappingURL=mg-loader.css.map */\n","import { Component, Element, h, Prop, Watch } from '@stencil/core';\nimport { initLocales } from '../../../locales';\nimport { isValidString, toString } from '@mgdis/stencil-helpers';\n\n@Component({\n tag: 'mg-loader',\n styleUrl: '../../../../node_modules/@mgdis/styles/dist/components/mg-loader.css',\n shadow: true,\n})\nexport class MgLoader {\n /************\n * Internal *\n ************/\n\n // Locales\n private messages;\n\n /**************\n * Decorators *\n **************/\n\n /**\n * Get component DOM element\n */\n @Element() element: HTMLMgLoaderElement;\n\n /**\n * Override loader message\n */\n @Prop() message?: string;\n @Watch('message')\n watchMessage(newValue: MgLoader['message']): void {\n if (newValue && !isValidString(newValue)) throw new Error(`<mg-loader> prop \"message\" must be a valid string. Passed value: ${toString(newValue)}.`);\n }\n\n /**\n * Hide message\n */\n @Prop() messageHide = false;\n\n /*************\n * Lifecycle *\n *************/\n\n /**\n * Check if component props are well configured on init\n */\n componentWillLoad(): void {\n // Get locales\n this.messages = initLocales(this.element).messages;\n\n // validate props\n this.watchMessage(this.message);\n }\n\n /**\n * Render\n * @returns HTML Element\n */\n render(): HTMLElement {\n return (\n <div class=\"mg-c-loader\" aria-live=\"polite\">\n <mg-icon icon=\"loader\" spin></mg-icon>\n <span class={{ 'mg-u-visually-hidden': this.messageHide }}>{this.message || this.messages.loader.inProgress}</span>\n </div>\n );\n }\n}\n"],"version":3}
1
+ {"file":"mg-loader.js","mappings":";;;;;;;","names":[],"sources":[],"sourcesContent":[],"version":3}
@@ -0,0 +1,75 @@
1
+ import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
+ import { i as initLocales } from './index2.js';
3
+ import { D as De, G as Gt } from './index.es.js';
4
+ import { d as defineCustomElement$1 } from './mg-icon2.js';
5
+
6
+ const mgLoaderCss = ".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion){*{animation:none !important;transition:none !important}}:host{display:block}.mg-c-loader{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--mg-b-size-4);text-align:center}";
7
+
8
+ const MgLoader = /*@__PURE__*/ proxyCustomElement(class MgLoader extends HTMLElement {
9
+ constructor() {
10
+ super();
11
+ this.__registerHost();
12
+ this.__attachShadow();
13
+ /**
14
+ * Hide message
15
+ */
16
+ this.messageHide = false;
17
+ }
18
+ watchMessage(newValue) {
19
+ if (newValue && !De(newValue))
20
+ throw new Error(`<mg-loader> prop "message" must be a valid string. Passed value: ${Gt(newValue)}.`);
21
+ }
22
+ /*************
23
+ * Lifecycle *
24
+ *************/
25
+ /**
26
+ * Check if component props are well configured on init
27
+ */
28
+ componentWillLoad() {
29
+ // Get locales
30
+ this.messages = initLocales(this.element).messages;
31
+ // validate props
32
+ this.watchMessage(this.message);
33
+ }
34
+ /**
35
+ * Render
36
+ * @returns HTML Element
37
+ */
38
+ render() {
39
+ return (h("div", { key: 'cd791f239c0ca655ed2470d606068dd361d9f019', class: "mg-c-loader", "aria-live": "polite" }, h("mg-icon", { key: '450b1d79e33bb1f67a3e5243c3fb5f7855165848', icon: "loader", spin: true }), h("span", { key: 'e0f3e296fa631b1a2d44a7067b52dd0991cb43c6', class: { 'mg-u-visually-hidden': this.messageHide } }, this.message || this.messages.loader.inProgress)));
40
+ }
41
+ get element() { return this; }
42
+ static get watchers() { return {
43
+ "message": ["watchMessage"]
44
+ }; }
45
+ static get style() { return mgLoaderCss; }
46
+ }, [1, "mg-loader", {
47
+ "message": [1],
48
+ "messageHide": [4, "message-hide"]
49
+ }, undefined, {
50
+ "message": ["watchMessage"]
51
+ }]);
52
+ function defineCustomElement() {
53
+ if (typeof customElements === "undefined") {
54
+ return;
55
+ }
56
+ const components = ["mg-loader", "mg-icon"];
57
+ components.forEach(tagName => { switch (tagName) {
58
+ case "mg-loader":
59
+ if (!customElements.get(tagName)) {
60
+ customElements.define(tagName, MgLoader);
61
+ }
62
+ break;
63
+ case "mg-icon":
64
+ if (!customElements.get(tagName)) {
65
+ defineCustomElement$1();
66
+ }
67
+ break;
68
+ } });
69
+ }
70
+ defineCustomElement();
71
+
72
+ export { MgLoader as M, defineCustomElement as d };
73
+ //# sourceMappingURL=mg-loader2.js.map
74
+
75
+ //# sourceMappingURL=mg-loader2.js.map
@@ -0,0 +1 @@
1
+ {"file":"mg-loader2.js","mappings":";;;;;AAAA,MAAM,WAAW,GAAG,skBAAskB;;MCS7kB,QAAQ,iBAAAA,kBAAA,CAAA,MAAA,QAAA,SAAA,WAAA,CAAA;AALrB,IAAA,WAAA,GAAA;;;;AA+BE;;AAEG;AACK,QAAA,IAAW,CAAA,WAAA,GAAG,KAAK;AA6B5B;AApCC,IAAA,YAAY,CAAC,QAA6B,EAAA;AACxC,QAAA,IAAI,QAAQ,IAAI,CAACC,EAAa,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,KAAK,CAAC,CAAoE,iEAAA,EAAAC,EAAQ,CAAC,QAAQ,CAAC,CAAG,CAAA,CAAA,CAAC;;AAQtJ;;AAEe;AAEf;;AAEG;IACH,iBAAiB,GAAA;;QAEf,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,QAAQ;;AAGlD,QAAA,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC;;AAGjC;;;AAGG;IACH,MAAM,GAAA;AACJ,QAAA,QACE,CAAK,CAAA,KAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAC,aAAa,eAAW,QAAQ,EAAA,EACzC,CAAA,CAAA,SAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAS,IAAI,EAAC,QAAQ,EAAC,IAAI,EAAW,IAAA,EAAA,CAAA,EACtC,CAAM,CAAA,MAAA,EAAA,EAAA,GAAA,EAAA,0CAAA,EAAA,KAAK,EAAE,EAAE,sBAAsB,EAAE,IAAI,CAAC,WAAW,EAAE,EAAA,EAAG,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,UAAU,CAAQ,CAC/G;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;","names":["__stencil_proxyCustomElement","isValidString","toString"],"sources":["../styles/dist/components/mg-loader.css?tag=mg-loader&encapsulation=shadow","src/components/molecules/mg-loader/mg-loader.tsx"],"sourcesContent":[".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion){*{animation:none !important;transition:none !important}}:host{display:block}.mg-c-loader{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--mg-b-size-4);text-align:center}/*# sourceMappingURL=mg-loader.css.map */\n","import { Component, Element, h, Prop, Watch } from '@stencil/core';\nimport { initLocales } from '../../../locales';\nimport { isValidString, toString } from '@mgdis/stencil-helpers';\n\n@Component({\n tag: 'mg-loader',\n styleUrl: '../../../../node_modules/@mgdis/styles/dist/components/mg-loader.css',\n shadow: true,\n})\nexport class MgLoader {\n /************\n * Internal *\n ************/\n\n // Locales\n private messages;\n\n /**************\n * Decorators *\n **************/\n\n /**\n * Get component DOM element\n */\n @Element() element: HTMLMgLoaderElement;\n\n /**\n * Override loader message\n */\n @Prop() message?: string;\n @Watch('message')\n watchMessage(newValue: MgLoader['message']): void {\n if (newValue && !isValidString(newValue)) throw new Error(`<mg-loader> prop \"message\" must be a valid string. Passed value: ${toString(newValue)}.`);\n }\n\n /**\n * Hide message\n */\n @Prop() messageHide = false;\n\n /*************\n * Lifecycle *\n *************/\n\n /**\n * Check if component props are well configured on init\n */\n componentWillLoad(): void {\n // Get locales\n this.messages = initLocales(this.element).messages;\n\n // validate props\n this.watchMessage(this.message);\n }\n\n /**\n * Render\n * @returns HTML Element\n */\n render(): HTMLElement {\n return (\n <div class=\"mg-c-loader\" aria-live=\"polite\">\n <mg-icon icon=\"loader\" spin></mg-icon>\n <span class={{ 'mg-u-visually-hidden': this.messageHide }}>{this.message || this.messages.loader.inProgress}</span>\n </div>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, createEvent, h, Host } from '@stencil/core/internal/client';
2
- import { x as xt, k as kt, L as Le, O as Ot, z as zt, M as Mt } from './index.es.js';
2
+ import { P as Pt, Z as Zt, D as De, U as Ut, G as Gt, X as Xt } from './index.es.js';
3
3
  import { i as initLocales } from './index2.js';
4
4
  import { d as defineCustomElement$6 } from './mg-badge2.js';
5
5
  import { d as defineCustomElement$5 } from './mg-button2.js';
@@ -54,7 +54,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
54
54
  /**
55
55
  * Identifier is used to control mg-popover
56
56
  */
57
- this.identifier = xt('mg-menu-item');
57
+ this.identifier = Pt('mg-menu-item');
58
58
  /**
59
59
  * Define menu-item status.
60
60
  */
@@ -73,7 +73,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
73
73
  /**
74
74
  * Component button classes
75
75
  */
76
- this.navigationButtonClassList = new kt([this.navigationButton]);
76
+ this.navigationButtonClassList = new Zt([this.navigationButton]);
77
77
  /**
78
78
  * Does component have children.
79
79
  */
@@ -112,7 +112,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
112
112
  * Is component an interactive item
113
113
  * @returns truthy if element is clickable
114
114
  */
115
- this.isInteractiveItem = () => this.hasChildren || !Le(this.href);
115
+ this.isInteractiveItem = () => this.hasChildren || !De(this.href);
116
116
  /**
117
117
  * Is component contextual direction match the given direction
118
118
  * @param direction - in parent menu
@@ -165,7 +165,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
165
165
  }
166
166
  ['label', 'metadata'].forEach(slot => {
167
167
  Array.from(this.element.querySelectorAll(`[slot="${slot}"]`)).forEach(element => {
168
- if (!Le(element.textContent))
168
+ if (!De(element.textContent))
169
169
  throw new Error(`<${this.name}> slot "${slot}" must have text content.`);
170
170
  if ((guard && !element.hasAttribute('title')) || !guard)
171
171
  element.setAttribute('title', element.textContent);
@@ -206,7 +206,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
206
206
  // when item is the last clickable item we close the parent popover
207
207
  if (!this.isInteractiveItem()) {
208
208
  const closePopover = (element) => {
209
- if (!element)
209
+ if (element === null)
210
210
  return;
211
211
  else if (element !== this.element && element.expanded && element.shadowRoot.querySelector('mg-popover') !== null) {
212
212
  element.expanded = false;
@@ -232,8 +232,8 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
232
232
  this.renderSlot = () => h("slot", null);
233
233
  }
234
234
  watchIdentifier(newValue) {
235
- if (!Ot(newValue)) {
236
- console.error(`<mg-menu-item> prop "identifier" value is invalid. Passed value: ${zt(newValue)}.`);
235
+ if (!Ut(newValue)) {
236
+ console.error(`<mg-menu-item> prop "identifier" value is invalid. Passed value: ${Gt(newValue)}.`);
237
237
  }
238
238
  else {
239
239
  this.popoverIdentifier = `${this.identifier}-popover`;
@@ -241,7 +241,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
241
241
  }
242
242
  watchTarget(newValue) {
243
243
  if (newValue && !targets.includes(newValue)) {
244
- throw new Error(`<mg-link> prop "target" must be one of: ${targets.join(', ')}. Passed value: ${zt(newValue)}.`);
244
+ throw new Error(`<mg-link> prop "target" must be one of: ${targets.join(', ')}. Passed value: ${Gt(newValue)}.`);
245
245
  }
246
246
  }
247
247
  watchStatus(newValue, oldValue) {
@@ -251,7 +251,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
251
251
  }
252
252
  watchExpanded(newValue) {
253
253
  if (typeof newValue !== 'boolean') {
254
- throw new Error(`<${this.name}> prop "expanded" must be a boolean. Passed value: ${zt(newValue)}.`);
254
+ throw new Error(`<${this.name}> prop "expanded" must be a boolean. Passed value: ${Gt(newValue)}.`);
255
255
  }
256
256
  else {
257
257
  this.updateExpanded(newValue);
@@ -300,7 +300,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
300
300
  */
301
301
  // eslint-disable-next-line @stencil-community/no-unused-watch
302
302
  watchDataHasFocus(newValue) {
303
- if (!newValue)
303
+ if (!De(newValue))
304
304
  this.updateExpanded(Boolean(newValue));
305
305
  }
306
306
  /**
@@ -366,7 +366,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
366
366
  * @returns promise process wich emit the 'item-updated' event
367
367
  */
368
368
  componentShouldUpdate() {
369
- return Mt(() => {
369
+ return Xt(() => {
370
370
  this.itemUpdated.emit();
371
371
  });
372
372
  }
@@ -393,7 +393,7 @@ const MgMenuItem = /*@__PURE__*/ proxyCustomElement(class MgMenuItem extends HTM
393
393
  ['mg-c-menu-item__collapse-container']: true,
394
394
  ['mg-c-menu-item__collapse-container--first-level']: (this.isInMainMenu() || this.isItemMore) && this.isDirection(directions.HORIZONTAL),
395
395
  });
396
- return (h(Host, { key: '6ef0374dfd3afdea0554df426c06e1fdc5549f82', role: this.isItemMore ? 'presentation' : 'listitem' }, this.hasPopover() ? (h("mg-popover", { display: this.expanded, placement: "bottom-start", arrowHide: true, "onDisplay-change": this.handlePopoverDisplay, identifier: this.popoverIdentifier, "data-fallback-placement": "bottom-end" // use for the last element of the menu if it is placed on the right side
396
+ return (h(Host, { key: 'caeeabd1d1c9f7de3c8ecda6a315b85215b9e656', role: this.isItemMore ? 'presentation' : 'listitem' }, this.hasPopover() ? (h("mg-popover", { display: this.expanded, placement: "bottom-start", arrowHide: true, "onDisplay-change": this.handlePopoverDisplay, identifier: this.popoverIdentifier, "data-fallback-placement": "bottom-end" // use for the last element of the menu if it is placed on the right side
397
397
  }, this.renderInteractiveElement(), h("div", { class: getContainerClasses(), slot: "content" }, this.renderSlot()))) : ([
398
398
  this.renderInteractiveElement(),
399
399
  h("div", { key: "vertical-container", class: getContainerClasses(), hidden: !this.expanded }, this.renderSlot()),
@@ -1 +1 @@
1
- {"file":"mg-menu-item2.js","mappings":"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","names":["__stencil_proxyCustomElement","createID","ClassList","isValidString","isValideID","toString","nextTick"],"sources":["src/components/molecules/menus/mg-menu-item/mg-menu-item.conf.ts","src/components/molecules/menus/mg-menu/mg-menu.conf.ts","../styles/dist/components/mg-menu-item.css?tag=mg-menu-item&encapsulation=shadow","src/components/molecules/menus/mg-menu-item/mg-menu-item.tsx"],"sourcesContent":["import { Status as StatusType } from '../../../../types';\n\n/**\n * Available menu item status type\n */\nexport type MgMenuStatusType = StatusType & ('visible' | 'hidden' | 'disabled' | 'active');\n\n/**\n * Available menu item status values\n */\nexport const Status: Record<string, StatusType> = {\n VISIBLE: 'visible',\n HIDDEN: 'hidden',\n DISABLED: 'disabled',\n ACTIVE: 'active',\n};\n\n/**\n * List of all possibles target\n */\nexport const targets = ['_blank', '_self', '_parent', '_top'] as const;\n\n/**\n * VariantType type from link target\n */\nexport type TargetType = (typeof targets)[number];\n","import type { Size, Direction } from '../../../../types';\nimport type { MgItemMore } from '../../internals/mg-item-more/mg-item-more';\n\n/**\n * Menu direction values\n */\nexport const directions: Record<string, Direction> = {\n VERTICAL: 'vertical',\n HORIZONTAL: 'horizontal',\n};\n\n/**\n * ItemMore prop type\n */\nexport type ItemMoreType = Pick<MgItemMore, 'icon' | 'slotlabel' | 'size'>;\n\n/**\n * List of all possibles sizes\n */\nexport const sizes = ['medium', 'large', 'xlarge'] as const;\n\n/**\n * item Size from sizes\n */\nexport type MenuSizeType = Size & (typeof sizes)[number];\n",".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion){*{animation:none !important;transition:none !important}}/*!\n * @prop --mg-c-menu-item-color: Defines menu item global color, used for bottom line and active tabs. Default value: `--mg-b-color-app`.\n * @prop --mg-c-menu-item-color-text: Defines the color of the menu item. Unset by default, fallback on `--mg-b-color-dark`.\n * @prop --mg-c-menu-item-navigation-button-max-width: Defines the max-width property for the navigation button. Unset by default.\n */.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{height:var(--mg-b-size-40);padding:var(--mg-b-size-12) var(--mg-b-size-16)}.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button,.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button ::slotted([slot=label]),.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button ::slotted([slot=metadata]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium ::slotted([slot=label]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium ::slotted([slot=metadata]){font-size:var(--mg-b-font-size)}.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--horizontal,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium.mg-c-menu-item__navigation-button--horizontal{padding-bottom:var(--mg-b-size-12)}.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--vertical,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium.mg-c-menu-item__navigation-button--vertical{padding-left:var(--mg-b-size-16)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{height:var(--mg-b-size-48);padding:var(--mg-b-size-12) var(--mg-b-size-32)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button,.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button ::slotted([slot=label]),.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button ::slotted([slot=metadata]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large ::slotted([slot=label]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large ::slotted([slot=metadata]){font-size:var(--mg-b-font-size-h4)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--horizontal,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large.mg-c-menu-item__navigation-button--horizontal{padding-bottom:var(--mg-b-size-12)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--vertical,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large.mg-c-menu-item__navigation-button--vertical{padding-left:var(--mg-b-size-32)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{height:var(--mg-b-size-72);padding:var(--mg-b-size-12) var(--mg-b-size-40)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button,.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button ::slotted([slot=label]),.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button ::slotted([slot=metadata]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge ::slotted([slot=label]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge ::slotted([slot=metadata]){font-size:var(--mg-b-font-size-h4)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--horizontal,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge.mg-c-menu-item__navigation-button--horizontal{padding-bottom:var(--mg-b-size-12)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--vertical,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge.mg-c-menu-item__navigation-button--vertical{padding-left:var(--mg-b-size-40)}.mg-c-menu-item__navigation-button{display:flex;box-sizing:border-box;align-items:center;border:none;background-color:unset;color:var(--mg-c-menu-item-color-text, var(--mg-b-color-dark));column-gap:var(--mg-c-menu-item-navigation-button-column-gap, var(--mg-b-size-8));cursor:pointer;font-family:var(--mg-b-font-family);font-weight:400;line-height:var(--mg-b-line-height);text-decoration:none;white-space:nowrap}.mg-c-menu-item__navigation-button:disabled,.mg-c-menu-item__navigation-button--disabled{cursor:default;opacity:var(--mg-b-opacity-element-disabled)}.mg-c-menu-item__navigation-button:focus-visible{z-index:10}.mg-c-menu-item__navigation-button:hover:not(.mg-c-menu-item__navigation-button--disabled),.mg-c-menu-item__navigation-button:focus-visible:not(.mg-c-menu-item__navigation-button--disabled){background-color:color-mix(in srgb, var(--mg-c-menu-item-color), transparent 90%)}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--active{color:var(--mg-c-menu-item-color);font-weight:600}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--active.mg-c-menu-item__navigation-button--horizontal{box-shadow:inset 0 calc(-1*var(--mg-b-size-4)) var(--mg-c-menu-item-color)}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--active.mg-c-menu-item__navigation-button--vertical{box-shadow:inset var(--mg-b-size-4) 0 var(--mg-c-menu-item-color)}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--hidden{display:none}:host([data-style-direction=vertical][data-level=\"1\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(1*var(--mg-b-size-16))}:host([data-level=\"1\"]) .mg-c-menu-item__collapse-container{z-index:10}:host([data-style-direction=vertical][data-level=\"2\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(2*var(--mg-b-size-16))}:host([data-level=\"2\"]) .mg-c-menu-item__collapse-container{z-index:20}:host([data-style-direction=vertical][data-level=\"3\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(3*var(--mg-b-size-16))}:host([data-level=\"3\"]) .mg-c-menu-item__collapse-container{z-index:30}:host([data-style-direction=vertical][data-level=\"4\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(4*var(--mg-b-size-16))}:host([data-level=\"4\"]) .mg-c-menu-item__collapse-container{z-index:40}:host([data-style-direction=vertical][data-level=\"5\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(5*var(--mg-b-size-16))}:host([data-level=\"5\"]) .mg-c-menu-item__collapse-container{z-index:50}:host([data-style-direction=vertical][data-level=\"6\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(6*var(--mg-b-size-16))}:host([data-level=\"6\"]) .mg-c-menu-item__collapse-container{z-index:60}:host([data-style-direction=vertical][data-level=\"1\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(1*var(--mg-b-size-32))}:host([data-level=\"1\"]) .mg-c-menu-item__collapse-container{z-index:10}:host([data-style-direction=vertical][data-level=\"2\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(2*var(--mg-b-size-32))}:host([data-level=\"2\"]) .mg-c-menu-item__collapse-container{z-index:20}:host([data-style-direction=vertical][data-level=\"3\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(3*var(--mg-b-size-32))}:host([data-level=\"3\"]) .mg-c-menu-item__collapse-container{z-index:30}:host([data-style-direction=vertical][data-level=\"4\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(4*var(--mg-b-size-32))}:host([data-level=\"4\"]) .mg-c-menu-item__collapse-container{z-index:40}:host([data-style-direction=vertical][data-level=\"5\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(5*var(--mg-b-size-32))}:host([data-level=\"5\"]) .mg-c-menu-item__collapse-container{z-index:50}:host([data-style-direction=vertical][data-level=\"6\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(6*var(--mg-b-size-32))}:host([data-level=\"6\"]) .mg-c-menu-item__collapse-container{z-index:60}:host([data-style-direction=vertical][data-level=\"1\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(1*var(--mg-b-size-40))}:host([data-level=\"1\"]) .mg-c-menu-item__collapse-container{z-index:10}:host([data-style-direction=vertical][data-level=\"2\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(2*var(--mg-b-size-40))}:host([data-level=\"2\"]) .mg-c-menu-item__collapse-container{z-index:20}:host([data-style-direction=vertical][data-level=\"3\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(3*var(--mg-b-size-40))}:host([data-level=\"3\"]) .mg-c-menu-item__collapse-container{z-index:30}:host([data-style-direction=vertical][data-level=\"4\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(4*var(--mg-b-size-40))}:host([data-level=\"4\"]) .mg-c-menu-item__collapse-container{z-index:40}:host([data-style-direction=vertical][data-level=\"5\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(5*var(--mg-b-size-40))}:host([data-level=\"5\"]) .mg-c-menu-item__collapse-container{z-index:50}:host([data-style-direction=vertical][data-level=\"6\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(6*var(--mg-b-size-40))}:host([data-level=\"6\"]) .mg-c-menu-item__collapse-container{z-index:60}.mg-c-menu-item{max-width:var(--mg-c-menu-item-navigation-button-max-width)}.mg-c-menu-item__collapse-container{z-index:10;width:max-content}.mg-c-menu-item__navigation-button-center{min-width:0}.mg-c-menu-item__navigation-button-text-content{display:flex;width:100%;align-items:center}.mg-c-menu-item__navigation-button-text-content-notification,.mg-c-menu-item__navigation-button-text-content ::slotted([slot=information]){margin-left:var(--mg-b-size-8);font-size:var(--mg-b-font-size)}.mg-c-menu-item__navigation-button-new-tab{margin-left:var(--mg-b-size-4)}.mg-c-menu-item__navigation-button-chevron{display:var(--mg-c-menu-item-chevron-display);margin-left:auto;transition:200ms}.mg-c-menu-item__navigation-button-chevron--rotate.mg-c-menu-item__navigation-button-chevron{transform:rotate(180deg)}:host{position:relative;display:flex;--mg-c-popover-padding-vertical: 0;--mg-c-popover-padding-horizontal: 0;--mg-c-popover-max-width: unset}:host([data-style-direction=vertical]){flex-direction:column}:host([data-style-direction=vertical]) .mg-c-menu-item__navigation-button{width:100%}:host([data-style-direction=vertical]) .mg-c-menu-item__collapse-container{position:unset;top:unset;left:unset;width:unset}:host([data-style-direction=vertical]) .mg-c-menu-item-chevron{margin-left:auto}:host([data-overflow-more]){--mg-c-menu-item-navigation-button-column-gap: 0}:host([data-overflow-more]) .mg-c-menu-item__navigation-button-chevron{--mg-c-menu-item-chevron-display: none}:host([data-overflow-more]) .mg-c-menu-item__navigation-button-text-content ::slotted([slot=information]){margin-left:0}:host([data-overflow-more]) ::slotted(mg-menu){--mg-c-menu-item-navigation-button-column-gap: var(--mg-b-size-8)}:host([data-style-direction=horizontal]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level,:host([data-overflow-more]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level{background-color:var(--mg-b-color-light)}:host([data-style-direction=horizontal]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level ::slotted(mg-menu),:host([data-overflow-more]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level ::slotted(mg-menu){padding:var(--mg-b-size-8) 0}::slotted([slot=label]),::slotted([slot=metadata]){display:block;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}::slotted(*){display:flex;flex-direction:column}:host([status=disabled]){pointer-events:none}:host([hidden]){display:none}/*# sourceMappingURL=mg-menu-item.css.map */\n","import { Component, h, Prop, State, Host, Watch, Element, Event, EventEmitter } from '@stencil/core';\nimport { ClassList, createID, isValideID, isValidString, nextTick, toString } from '@mgdis/stencil-helpers';\nimport { initLocales } from '../../../../locales';\nimport { directions, type MenuSizeType } from '../mg-menu/mg-menu.conf';\nimport { type MgMenuStatusType, Status, targets, type TargetType } from './mg-menu-item.conf';\nimport type { MessageType } from '../../../../locales/index.conf';\nimport { Direction } from '../../../../types';\n\n/**\n * @slot - Menu item content\n * @slot image - Menu item image content\n * @slot label - Menu item label content\n * @slot information - Menu item information content\n * @slot metadata - Menu item metadata content\n */\n@Component({\n tag: 'mg-menu-item',\n styleUrl: '../../../../../node_modules/@mgdis/styles/dist/components/mg-menu-item.css',\n shadow: true,\n})\nexport class MgMenuItem {\n /************\n * Internal *\n ************/\n\n private readonly name = 'mg-menu-item';\n private readonly navigationButton = 'mg-c-menu-item__navigation-button';\n private messages: MessageType;\n private popoverIdentifier: string;\n\n /**************\n * Decorators *\n **************/\n\n /**\n * Get component DOM element\n */\n @Element() element: HTMLMgMenuItemElement;\n\n /************\n * Props *\n ************/\n\n /**\n * Identifier is used to control mg-popover\n */\n @Prop({ reflect: true }) identifier = createID('mg-menu-item');\n @Watch('identifier')\n watchIdentifier(newValue: MgMenuItem['identifier']): void {\n if (!isValideID(newValue)) {\n console.error(`<mg-menu-item> prop \"identifier\" value is invalid. Passed value: ${toString(newValue)}.`);\n } else {\n this.popoverIdentifier = `${this.identifier}-popover`;\n }\n }\n\n /**\n * Define menu-item href\n * when defined menu-item contain an anchor instead of button\n */\n @Prop() href?: string;\n\n /**\n * Define target type\n */\n @Prop() target?: TargetType;\n @Watch('target')\n watchTarget(newValue: MgMenuItem['target']): void {\n if (newValue && !targets.includes(newValue)) {\n throw new Error(`<mg-link> prop \"target\" must be one of: ${targets.join(', ')}. Passed value: ${toString(newValue)}.`);\n }\n }\n\n /**\n * Define menu-item status.\n */\n @Prop({ reflect: true, mutable: true }) status?: MgMenuStatusType = 'visible';\n @Watch('status')\n watchStatus(newValue: MgMenuItem['status'], oldValue?: MgMenuItem['status']): void {\n if (oldValue !== undefined) this.navigationButtonClassList.delete(`${this.navigationButton}--${oldValue}`);\n this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);\n }\n\n /**\n * Define menu-item content expanded.\n */\n @Prop({ mutable: true }) expanded? = false;\n @Watch('expanded')\n watchExpanded(newValue: MgMenuItem['expanded']): void {\n if (typeof newValue !== 'boolean') {\n throw new Error(`<${this.name}> prop \"expanded\" must be a boolean. Passed value: ${toString(newValue)}.`);\n } else {\n this.updateExpanded(newValue);\n // when expanded all actives sub-items need to be expanded and non active closed\n Array.from(this.element.querySelectorAll('mg-menu-item')).forEach(item => {\n if (item !== this.element) item.expanded = newValue ? this.hasStatus(item, Status.ACTIVE) : false;\n });\n }\n }\n\n /**********\n * Events *\n *********/\n\n /**\n * Emited event when item is loaded\n */\n @Event({ eventName: 'item-loaded' }) itemLoaded: EventEmitter<void>;\n\n /**\n * Emited event when item is updated\n */\n @Event({ eventName: 'item-updated' }) itemUpdated: EventEmitter<void>;\n\n /**********\n * States *\n *********/\n\n /**\n * Define menu-item size.\n */\n @State() size: MenuSizeType = 'medium';\n @Watch('size')\n watchSize(newValue: MgMenuItem['size'], oldValue?: MgMenuItem['size']): void {\n if (oldValue !== undefined) this.navigationButtonClassList.delete(`${this.navigationButton}--size-${oldValue}`);\n this.navigationButtonClassList.add(`${this.navigationButton}--size-${newValue}`);\n }\n\n /**\n * Component button classes\n */\n @State() navigationButtonClassList: ClassList = new ClassList([this.navigationButton]);\n\n /**\n * Parent menu direction\n */\n @State() direction: Direction;\n @Watch('direction')\n validateDirection(newValue: MgMenuItem['direction'], oldValue: MgMenuItem['direction']): void {\n if (oldValue !== undefined) this.navigationButtonClassList.delete(`${this.navigationButton}--${oldValue}`);\n this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);\n // manage all sub levels child menu-items level with data-level attribut\n Array.from(this.element.querySelectorAll('mg-menu-item')).forEach(item => {\n if (this.isDirection(directions.VERTICAL, newValue)) {\n item.dataset.level = `${(Number(item.dataset.level) || 1) + 1}`;\n } else {\n delete item.dataset.level;\n }\n });\n }\n\n /**\n * Does element is item-more\n */\n @State() isItemMore: boolean;\n\n /**\n * Does component have children.\n */\n @State() hasChildren = false;\n @Watch('hasChildren')\n validateHasChildren(newValue: boolean): void {\n if (newValue && this.element.href !== undefined) {\n throw new Error(`<${this.name}> prop \"href\" is unauthorizied when element is a parent.`);\n }\n }\n\n /**\n * Does component should display notification badge.\n */\n @State() displayNotificationBadge: boolean;\n\n /**\n * direction value in dataset\n * @param newValue - new direction value\n */\n // eslint-disable-next-line @stencil-community/no-unused-watch\n @Watch('data-style-direction')\n watchDataStyleDirection(newValue: Direction): void {\n this.direction = newValue;\n }\n\n /**\n * has focus value in dataset\n * @param newValue - new direction value\n */\n // eslint-disable-next-line @stencil-community/no-unused-watch\n @Watch('data-has-focus')\n watchDataHasFocus(newValue: string): void {\n if (!newValue) this.updateExpanded(Boolean(newValue));\n }\n\n /***********\n * Methods *\n **********/\n\n /**\n * Get parent menu\n * @returns parent menu\n */\n private getParentMenu = (): HTMLMgMenuElement => this.element.closest('mg-menu');\n\n /**\n * Does an Element have given Status\n * @param mgMenuItemElement - to parse\n * @param status - to check\n * @returns true if element with status is found\n */\n private hasStatus = (mgMenuItemElement: HTMLMgMenuItemElement, status: MgMenuItem['status']): boolean => mgMenuItemElement.status === status;\n\n /**\n * Condition to know if component should display a mg-popover\n * @returns truthy if component display popover\n */\n private hasPopover = (): boolean =>\n this.isDirection(directions.HORIZONTAL) &&\n ((this.isInMainMenu() && Array.from(this.element.children).some(element => element.querySelector('[slot]') === null)) || this.isItemMore) &&\n this.href === undefined;\n\n /**\n * Method to control if one of component children have active status\n * @returns truthy if component has active child\n */\n private hasActiveChild = (): boolean =>\n Array.from(this.element.querySelector('mg-menu')?.children || []).some(\n (element: HTMLMgMenuItemElement) => element.nodeName === 'MG-MENU-ITEM' && this.hasStatus(element, Status.ACTIVE) && !element.hasAttribute('hidden'),\n );\n\n /**\n * Is component an interactive item\n * @returns truthy if element is clickable\n */\n private isInteractiveItem = (): boolean => this.hasChildren || !isValidString(this.href);\n\n /**\n * Is component contextual direction match the given direction\n * @param direction - in parent menu\n * @param compareWith - direction to compare with. Default: `this.direction`\n * @returns true is direction match the direction propertie\n */\n private isDirection = (direction: MgMenuItem['direction'], compareWith = this.direction): boolean => direction === compareWith;\n\n /**\n * Does component is in main menu\n * @returns true if component is in main menu\n */\n private isInMainMenu = (): boolean => this.getParentMenu() !== null && this.element.parentElement.closest('mg-menu-item') === null;\n\n /**\n * Update displayNotificationBadge\n * current component notification badge have priority over the slot badge when submenu contain badge\n */\n private updateDisplayNotificationBadge = (): void => {\n const childMenu = this.element.querySelector('mg-menu');\n this.displayNotificationBadge =\n childMenu !== null && Array.from(childMenu.children).some((subItem: HTMLMgMenuItemElement) => subItem.querySelector('mg-badge') !== null && !subItem.hasAttribute('hidden'));\n };\n\n /**\n * Update expanded prop\n * @param newValue - expanded new value\n */\n private updateExpanded = (newValue: MgMenuItem['expanded']): void => {\n if (this.isInteractiveItem()) {\n // item is always expanded in vertical menu when has active child\n this.expanded = (this.isDirection(directions.VERTICAL) && this.hasActiveChild()) || newValue;\n }\n };\n\n /**\n * Update status\n * @param guard - status to exclude from process in addition to [Status.HIDDEN, Status.DISABLED] . Default: [].\n */\n private updateStatus = (guard: MgMenuItem['status'][] = []): void => {\n if (![Status.HIDDEN, Status.DISABLED, ...guard].includes(this.status)) {\n this.status = this.hasActiveChild() ? Status.ACTIVE : Status.VISIBLE;\n }\n };\n\n /**\n * Render popover clickoutside guard for content slot\n */\n private updatePopoverGuard(): void {\n const subItem: HTMLElement = this.element.querySelector('*:not([slot])');\n if (subItem === null) return;\n if (this.hasPopover()) subItem.dataset.mgPopoverGuard = this.popoverIdentifier;\n else delete subItem.dataset.mgPopoverGuard;\n }\n\n /**\n * Update slots\n * @param guard - prevent action with guard. Default: false.\n */\n private updateSlot = (guard = false): void => {\n // slot title AND metadata validation\n // add title on label AND metada slots due to text-overflow on these element\n if (Array.from(this.element.children).find(child => child.getAttribute('slot') === 'label') === undefined) {\n throw new Error(`<${this.name}> slot \"label\" is required.`);\n }\n ['label', 'metadata'].forEach(slot => {\n Array.from(this.element.querySelectorAll(`[slot=\"${slot}\"]`)).forEach(element => {\n if (!isValidString(element.textContent)) throw new Error(`<${this.name}> slot \"${slot}\" must have text content.`);\n if ((guard && !element.hasAttribute('title')) || !guard) element.setAttribute('title', element.textContent);\n });\n });\n };\n\n /**\n * Update menu item\n * @param guard - prevent action with guard\n */\n private updateItem = (guard?: MgMenuItem['status'][]): void => {\n const menu = this.getParentMenu();\n\n // define element size\n if (menu?.size !== undefined && !this.isItemMore) this.size = menu.size;\n else if (this.isItemMore) this.size = this.element.dataset.size as MgMenuItem['size'];\n\n // when vertical main menu item contain an active item we force expanded\n this.updateExpanded(this.expanded);\n this.updateStatus(guard);\n this.updatePopoverGuard();\n this.updateDisplayNotificationBadge();\n };\n\n /************\n * Handlers *\n ************/\n\n /**\n * Handle interacrtive element click\n * @param event - click on element\n */\n private handleElementCLick = (event: MouseEvent): void => {\n if (this.status === Status.DISABLED) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n // for non \"poperized\" menu-item we toggle expanded manualy\n this.updateExpanded(!this.expanded);\n\n // when item is the last clickable item we close the parent popover\n if (!this.isInteractiveItem()) {\n const closePopover = (element: HTMLMgMenuItemElement): void => {\n if (!element) return;\n else if (element !== this.element && element.expanded && element.shadowRoot.querySelector('mg-popover') !== null) {\n element.expanded = false;\n } else {\n closePopover(element.parentElement.closest('mg-menu-item'));\n }\n };\n closePopover(this.element);\n }\n };\n\n /**\n * Handle popover element display-change event\n * @param event - popover display event\n */\n private handlePopoverDisplay = (event: CustomEvent): void => {\n this.updateExpanded(event.detail);\n };\n\n /*************\n * Lifecycle *\n *************/\n\n /**\n * Validate props\n */\n componentWillLoad(): void {\n // has children items that is NOT [slot='image' | 'information' | 'label' | 'metadata'] element\n // we store only matching elements\n this.hasChildren = Array.from(this.element.children).some(child => !['image', 'information', 'label', 'metadata'].includes(child.getAttribute('slot')));\n this.messages = initLocales(this.element).messages.menuItem as MessageType;\n this.isItemMore = this.element.dataset.overflowMore !== undefined;\n\n // watchers\n this.watchStatus(this.status);\n this.watchExpanded(this.expanded);\n this.watchTarget(this.target);\n this.watchIdentifier(this.identifier);\n this.watchSize(this.size);\n }\n\n /**\n * Check if component slots configuration\n * @returns timeout\n */\n componentDidLoad(): ReturnType<typeof setTimeout> {\n // validation\n this.updateSlot(true);\n // update props and states after componentDidLoad hook\n // return a promise to process action only in the FIRST render().\n // https://stenciljs.com/docs/component-lifecycle#componentwillload\n return setTimeout(() => {\n this.watchDataStyleDirection(this.element.dataset.styleDirection as Direction);\n this.watchDataHasFocus(this.element.dataset.hasFocus);\n this.updateItem([Status.ACTIVE]);\n\n // emit loaded event when component is fully loaded\n this.itemLoaded.emit();\n\n new MutationObserver(mutationsList => {\n if (mutationsList.some(mutation => ['hidden', 'status'].includes(mutation.attributeName))) this.updateStatus(this.hasChildren ? undefined : [Status.ACTIVE]);\n if (mutationsList.some(mutation => mutation.type === 'characterData')) this.updateSlot();\n if (mutationsList.some(mutation => mutation.type === 'childList')) this.updateItem();\n this.itemUpdated.emit();\n }).observe(this.element, { attributes: true, childList: true, characterData: true, subtree: true });\n }, 0);\n }\n\n /**\n * Emit event when component is updated\n * @returns promise process wich emit the 'item-updated' event\n */\n componentShouldUpdate(): Promise<void> {\n return nextTick(() => {\n this.itemUpdated.emit();\n });\n }\n\n /**\n * Render ineractive element\n * @returns HTML Element\n */\n private renderInteractiveElement(): HTMLElement {\n const TagName: string = this.href !== undefined ? 'a' : 'button';\n return (\n <TagName\n href={this.href}\n class={this.navigationButtonClassList.join()}\n tabindex={[Status.DISABLED, Status.HIDDEN].includes(this.status) ? -1 : undefined}\n disabled={this.status === Status.DISABLED}\n hidden={this.status === Status.HIDDEN}\n target={this.href !== undefined && this.target !== undefined ? this.target : undefined}\n aria-expanded={this.hasChildren && this.expanded.toString()}\n aria-current={this.status === Status.ACTIVE && 'page'}\n onClick={this.handleElementCLick}\n >\n <slot name=\"image\"></slot>\n <div class={`${this.navigationButton}-center`}>\n <div class={`${this.navigationButton}-text-content`}>\n <slot name=\"label\"></slot>\n {!this.displayNotificationBadge && <slot name=\"information\"></slot>}\n {this.displayNotificationBadge && (\n <span class={`${this.navigationButton}-text-content-notification`}>\n <mg-badge label={this.messages.badgeLabel} value=\"!\" variant=\"text-color\" slot=\"information\"></mg-badge>\n </span>\n )}\n {this.target === '_blank' && [\n <mg-icon key=\"icon-new-tab\" class={`${this.navigationButton}-new-tab`} icon=\"arrow-up-right-square\"></mg-icon>,\n <span key=\"a11y-new-tab\" class=\"mg-u-visually-hidden\">\n {this.messages.openNewTab}\n </span>,\n ]}\n </div>\n {this.size !== 'medium' && <slot name=\"metadata\"></slot>}\n </div>\n {this.hasChildren && this.href === undefined && (\n <span\n class={{\n [`${this.navigationButton}-chevron`]: true,\n [`${this.navigationButton}-chevron--rotate`]: this.expanded === true,\n }}\n >\n <mg-icon icon=\"chevron-down\"></mg-icon>\n </span>\n )}\n </TagName>\n );\n }\n\n /**\n * Render slot\n * @returns HTML Element\n */\n private renderSlot = (): HTMLElement => <slot></slot>;\n\n /**\n * Render\n * @returns HTML Element\n */\n render(): HTMLElement {\n const getContainerClasses = () => ({\n ['mg-c-menu-item__collapse-container']: true,\n ['mg-c-menu-item__collapse-container--first-level']: (this.isInMainMenu() || this.isItemMore) && this.isDirection(directions.HORIZONTAL),\n });\n\n return (\n <Host role={this.isItemMore ? 'presentation' : 'listitem'}>\n {this.hasPopover() ? (\n <mg-popover\n display={this.expanded}\n placement=\"bottom-start\"\n arrowHide={true}\n onDisplay-change={this.handlePopoverDisplay}\n identifier={this.popoverIdentifier}\n data-fallback-placement=\"bottom-end\" // use for the last element of the menu if it is placed on the right side\n >\n {this.renderInteractiveElement()}\n <div class={getContainerClasses()} slot=\"content\">\n {this.renderSlot()}\n </div>\n </mg-popover>\n ) : (\n [\n this.renderInteractiveElement(),\n <div key=\"vertical-container\" class={getContainerClasses()} hidden={!this.expanded}>\n {this.renderSlot()}\n </div>,\n ]\n )}\n </Host>\n );\n }\n}\n"],"version":3}
1
+ {"file":"mg-menu-item2.js","mappings":"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","names":["__stencil_proxyCustomElement","createID","ClassList","isValidString","isValideID","toString","nextTick"],"sources":["src/components/molecules/menus/mg-menu-item/mg-menu-item.conf.ts","src/components/molecules/menus/mg-menu/mg-menu.conf.ts","../styles/dist/components/mg-menu-item.css?tag=mg-menu-item&encapsulation=shadow","src/components/molecules/menus/mg-menu-item/mg-menu-item.tsx"],"sourcesContent":["import { Status as StatusType } from '../../../../types';\n\n/**\n * Available menu item status type\n */\nexport type MgMenuStatusType = StatusType & ('visible' | 'hidden' | 'disabled' | 'active');\n\n/**\n * Available menu item status values\n */\nexport const Status: Record<string, StatusType> = {\n VISIBLE: 'visible',\n HIDDEN: 'hidden',\n DISABLED: 'disabled',\n ACTIVE: 'active',\n};\n\n/**\n * List of all possibles target\n */\nexport const targets = ['_blank', '_self', '_parent', '_top'] as const;\n\n/**\n * VariantType type from link target\n */\nexport type TargetType = (typeof targets)[number];\n","import type { Size, Direction } from '../../../../types';\nimport type { MgItemMore } from '../../internals/mg-item-more/mg-item-more';\n\n/**\n * Menu direction values\n */\nexport const directions: Record<string, Direction> = {\n VERTICAL: 'vertical',\n HORIZONTAL: 'horizontal',\n};\n\n/**\n * ItemMore prop type\n */\nexport type ItemMoreType = Pick<MgItemMore, 'icon' | 'slotlabel' | 'size'>;\n\n/**\n * List of all possibles sizes\n */\nexport const sizes = ['medium', 'large', 'xlarge'] as const;\n\n/**\n * item Size from sizes\n */\nexport type MenuSizeType = Size & (typeof sizes)[number];\n",".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion){*{animation:none !important;transition:none !important}}/*!\n * @prop --mg-c-menu-item-color: Defines menu item global color, used for bottom line and active tabs. Default value: `--mg-b-color-app`.\n * @prop --mg-c-menu-item-color-text: Defines the color of the menu item. Unset by default, fallback on `--mg-b-color-dark`.\n * @prop --mg-c-menu-item-navigation-button-max-width: Defines the max-width property for the navigation button. Unset by default.\n */.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{height:var(--mg-b-size-40);padding:var(--mg-b-size-12) var(--mg-b-size-16)}.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button,.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button ::slotted([slot=label]),.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button ::slotted([slot=metadata]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium ::slotted([slot=label]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium ::slotted([slot=metadata]){font-size:var(--mg-b-font-size)}.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--horizontal,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium.mg-c-menu-item__navigation-button--horizontal{padding-bottom:var(--mg-b-size-12)}.mg-c-menu-item.mg-c-menu-item--size-medium .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--vertical,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium.mg-c-menu-item__navigation-button--vertical{padding-left:var(--mg-b-size-16)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{height:var(--mg-b-size-48);padding:var(--mg-b-size-12) var(--mg-b-size-32)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button,.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button ::slotted([slot=label]),.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button ::slotted([slot=metadata]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large ::slotted([slot=label]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large ::slotted([slot=metadata]){font-size:var(--mg-b-font-size-h4)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--horizontal,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large.mg-c-menu-item__navigation-button--horizontal{padding-bottom:var(--mg-b-size-12)}.mg-c-menu-item.mg-c-menu-item--size-large .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--vertical,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large.mg-c-menu-item__navigation-button--vertical{padding-left:var(--mg-b-size-32)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{height:var(--mg-b-size-72);padding:var(--mg-b-size-12) var(--mg-b-size-40)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button,.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button ::slotted([slot=label]),.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button ::slotted([slot=metadata]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge ::slotted([slot=label]),.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge ::slotted([slot=metadata]){font-size:var(--mg-b-font-size-h4)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--horizontal,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge.mg-c-menu-item__navigation-button--horizontal{padding-bottom:var(--mg-b-size-12)}.mg-c-menu-item.mg-c-menu-item--size-xlarge .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--vertical,.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge.mg-c-menu-item__navigation-button--vertical{padding-left:var(--mg-b-size-40)}.mg-c-menu-item__navigation-button{display:flex;box-sizing:border-box;align-items:center;border:none;background-color:unset;color:var(--mg-c-menu-item-color-text, var(--mg-b-color-dark));column-gap:var(--mg-c-menu-item-navigation-button-column-gap, var(--mg-b-size-8));cursor:pointer;font-family:var(--mg-b-font-family);font-weight:400;line-height:var(--mg-b-line-height);text-decoration:none;white-space:nowrap}.mg-c-menu-item__navigation-button:disabled,.mg-c-menu-item__navigation-button--disabled{cursor:default;opacity:var(--mg-b-opacity-element-disabled)}.mg-c-menu-item__navigation-button:focus-visible{z-index:10}.mg-c-menu-item__navigation-button:hover:not(.mg-c-menu-item__navigation-button--disabled),.mg-c-menu-item__navigation-button:focus-visible:not(.mg-c-menu-item__navigation-button--disabled){background-color:color-mix(in srgb, var(--mg-c-menu-item-color), transparent 90%)}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--active{color:var(--mg-c-menu-item-color);font-weight:600}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--active.mg-c-menu-item__navigation-button--horizontal{box-shadow:inset 0 calc(-1*var(--mg-b-size-4)) var(--mg-c-menu-item-color)}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--active.mg-c-menu-item__navigation-button--vertical{box-shadow:inset var(--mg-b-size-4) 0 var(--mg-c-menu-item-color)}.mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--hidden{display:none}:host([data-style-direction=vertical][data-level=\"1\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(1*var(--mg-b-size-16))}:host([data-level=\"1\"]) .mg-c-menu-item__collapse-container{z-index:10}:host([data-style-direction=vertical][data-level=\"2\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(2*var(--mg-b-size-16))}:host([data-level=\"2\"]) .mg-c-menu-item__collapse-container{z-index:20}:host([data-style-direction=vertical][data-level=\"3\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(3*var(--mg-b-size-16))}:host([data-level=\"3\"]) .mg-c-menu-item__collapse-container{z-index:30}:host([data-style-direction=vertical][data-level=\"4\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(4*var(--mg-b-size-16))}:host([data-level=\"4\"]) .mg-c-menu-item__collapse-container{z-index:40}:host([data-style-direction=vertical][data-level=\"5\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(5*var(--mg-b-size-16))}:host([data-level=\"5\"]) .mg-c-menu-item__collapse-container{z-index:50}:host([data-style-direction=vertical][data-level=\"6\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-medium{padding-left:calc(6*var(--mg-b-size-16))}:host([data-level=\"6\"]) .mg-c-menu-item__collapse-container{z-index:60}:host([data-style-direction=vertical][data-level=\"1\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(1*var(--mg-b-size-32))}:host([data-level=\"1\"]) .mg-c-menu-item__collapse-container{z-index:10}:host([data-style-direction=vertical][data-level=\"2\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(2*var(--mg-b-size-32))}:host([data-level=\"2\"]) .mg-c-menu-item__collapse-container{z-index:20}:host([data-style-direction=vertical][data-level=\"3\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(3*var(--mg-b-size-32))}:host([data-level=\"3\"]) .mg-c-menu-item__collapse-container{z-index:30}:host([data-style-direction=vertical][data-level=\"4\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(4*var(--mg-b-size-32))}:host([data-level=\"4\"]) .mg-c-menu-item__collapse-container{z-index:40}:host([data-style-direction=vertical][data-level=\"5\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(5*var(--mg-b-size-32))}:host([data-level=\"5\"]) .mg-c-menu-item__collapse-container{z-index:50}:host([data-style-direction=vertical][data-level=\"6\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-large{padding-left:calc(6*var(--mg-b-size-32))}:host([data-level=\"6\"]) .mg-c-menu-item__collapse-container{z-index:60}:host([data-style-direction=vertical][data-level=\"1\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(1*var(--mg-b-size-40))}:host([data-level=\"1\"]) .mg-c-menu-item__collapse-container{z-index:10}:host([data-style-direction=vertical][data-level=\"2\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(2*var(--mg-b-size-40))}:host([data-level=\"2\"]) .mg-c-menu-item__collapse-container{z-index:20}:host([data-style-direction=vertical][data-level=\"3\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(3*var(--mg-b-size-40))}:host([data-level=\"3\"]) .mg-c-menu-item__collapse-container{z-index:30}:host([data-style-direction=vertical][data-level=\"4\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(4*var(--mg-b-size-40))}:host([data-level=\"4\"]) .mg-c-menu-item__collapse-container{z-index:40}:host([data-style-direction=vertical][data-level=\"5\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(5*var(--mg-b-size-40))}:host([data-level=\"5\"]) .mg-c-menu-item__collapse-container{z-index:50}:host([data-style-direction=vertical][data-level=\"6\"]) .mg-c-menu-item__navigation-button.mg-c-menu-item__navigation-button--size-xlarge{padding-left:calc(6*var(--mg-b-size-40))}:host([data-level=\"6\"]) .mg-c-menu-item__collapse-container{z-index:60}.mg-c-menu-item{max-width:var(--mg-c-menu-item-navigation-button-max-width)}.mg-c-menu-item__collapse-container{z-index:10;width:max-content}.mg-c-menu-item__navigation-button-center{min-width:0}.mg-c-menu-item__navigation-button-text-content{display:flex;width:100%;align-items:center}.mg-c-menu-item__navigation-button-text-content-notification,.mg-c-menu-item__navigation-button-text-content ::slotted([slot=information]){margin-left:var(--mg-b-size-8);font-size:var(--mg-b-font-size)}.mg-c-menu-item__navigation-button-new-tab{margin-left:var(--mg-b-size-4)}.mg-c-menu-item__navigation-button-chevron{display:var(--mg-c-menu-item-chevron-display);margin-left:auto;transition:200ms}.mg-c-menu-item__navigation-button-chevron--rotate.mg-c-menu-item__navigation-button-chevron{transform:rotate(180deg)}:host{position:relative;display:flex;--mg-c-popover-padding-vertical: 0;--mg-c-popover-padding-horizontal: 0;--mg-c-popover-max-width: unset}:host([data-style-direction=vertical]){flex-direction:column}:host([data-style-direction=vertical]) .mg-c-menu-item__navigation-button{width:100%}:host([data-style-direction=vertical]) .mg-c-menu-item__collapse-container{position:unset;top:unset;left:unset;width:unset}:host([data-style-direction=vertical]) .mg-c-menu-item-chevron{margin-left:auto}:host([data-overflow-more]){--mg-c-menu-item-navigation-button-column-gap: 0}:host([data-overflow-more]) .mg-c-menu-item__navigation-button-chevron{--mg-c-menu-item-chevron-display: none}:host([data-overflow-more]) .mg-c-menu-item__navigation-button-text-content ::slotted([slot=information]){margin-left:0}:host([data-overflow-more]) ::slotted(mg-menu){--mg-c-menu-item-navigation-button-column-gap: var(--mg-b-size-8)}:host([data-style-direction=horizontal]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level,:host([data-overflow-more]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level{background-color:var(--mg-b-color-light)}:host([data-style-direction=horizontal]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level ::slotted(mg-menu),:host([data-overflow-more]) .mg-c-menu-item__collapse-container.mg-c-menu-item__collapse-container--first-level ::slotted(mg-menu){padding:var(--mg-b-size-8) 0}::slotted([slot=label]),::slotted([slot=metadata]){display:block;overflow:hidden;text-align:left;text-overflow:ellipsis;white-space:nowrap}::slotted(*){display:flex;flex-direction:column}:host([status=disabled]){pointer-events:none}:host([hidden]){display:none}/*# sourceMappingURL=mg-menu-item.css.map */\n","import { Component, h, Prop, State, Host, Watch, Element, Event, EventEmitter } from '@stencil/core';\nimport { ClassList, createID, isValideID, isValidString, nextTick, toString } from '@mgdis/stencil-helpers';\nimport { initLocales } from '../../../../locales';\nimport { directions, type MenuSizeType } from '../mg-menu/mg-menu.conf';\nimport { type MgMenuStatusType, Status, targets, type TargetType } from './mg-menu-item.conf';\nimport type { MessageType } from '../../../../locales/index.conf';\nimport { Direction } from '../../../../types';\n\n/**\n * @slot - Menu item content\n * @slot image - Menu item image content\n * @slot label - Menu item label content\n * @slot information - Menu item information content\n * @slot metadata - Menu item metadata content\n */\n@Component({\n tag: 'mg-menu-item',\n styleUrl: '../../../../../node_modules/@mgdis/styles/dist/components/mg-menu-item.css',\n shadow: true,\n})\nexport class MgMenuItem {\n /************\n * Internal *\n ************/\n\n private readonly name = 'mg-menu-item';\n private readonly navigationButton = 'mg-c-menu-item__navigation-button';\n private messages: MessageType;\n private popoverIdentifier: string;\n\n /**************\n * Decorators *\n **************/\n\n /**\n * Get component DOM element\n */\n @Element() element: HTMLMgMenuItemElement;\n\n /************\n * Props *\n ************/\n\n /**\n * Identifier is used to control mg-popover\n */\n @Prop({ reflect: true }) identifier = createID('mg-menu-item');\n @Watch('identifier')\n watchIdentifier(newValue: MgMenuItem['identifier']): void {\n if (!isValideID(newValue)) {\n console.error(`<mg-menu-item> prop \"identifier\" value is invalid. Passed value: ${toString(newValue)}.`);\n } else {\n this.popoverIdentifier = `${this.identifier}-popover`;\n }\n }\n\n /**\n * Define menu-item href\n * when defined menu-item contain an anchor instead of button\n */\n @Prop() href?: string;\n\n /**\n * Define target type\n */\n @Prop() target?: TargetType;\n @Watch('target')\n watchTarget(newValue: MgMenuItem['target']): void {\n if (newValue && !targets.includes(newValue)) {\n throw new Error(`<mg-link> prop \"target\" must be one of: ${targets.join(', ')}. Passed value: ${toString(newValue)}.`);\n }\n }\n\n /**\n * Define menu-item status.\n */\n @Prop({ reflect: true, mutable: true }) status?: MgMenuStatusType = 'visible';\n @Watch('status')\n watchStatus(newValue: MgMenuItem['status'], oldValue?: MgMenuItem['status']): void {\n if (oldValue !== undefined) this.navigationButtonClassList.delete(`${this.navigationButton}--${oldValue}`);\n this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);\n }\n\n /**\n * Define menu-item content expanded.\n */\n @Prop({ mutable: true }) expanded? = false;\n @Watch('expanded')\n watchExpanded(newValue: MgMenuItem['expanded']): void {\n if (typeof newValue !== 'boolean') {\n throw new Error(`<${this.name}> prop \"expanded\" must be a boolean. Passed value: ${toString(newValue)}.`);\n } else {\n this.updateExpanded(newValue);\n // when expanded all actives sub-items need to be expanded and non active closed\n Array.from(this.element.querySelectorAll('mg-menu-item')).forEach(item => {\n if (item !== this.element) item.expanded = newValue ? this.hasStatus(item, Status.ACTIVE) : false;\n });\n }\n }\n\n /**********\n * Events *\n *********/\n\n /**\n * Emited event when item is loaded\n */\n @Event({ eventName: 'item-loaded' }) itemLoaded: EventEmitter<void>;\n\n /**\n * Emited event when item is updated\n */\n @Event({ eventName: 'item-updated' }) itemUpdated: EventEmitter<void>;\n\n /**********\n * States *\n *********/\n\n /**\n * Define menu-item size.\n */\n @State() size: MenuSizeType = 'medium';\n @Watch('size')\n watchSize(newValue: MgMenuItem['size'], oldValue?: MgMenuItem['size']): void {\n if (oldValue !== undefined) this.navigationButtonClassList.delete(`${this.navigationButton}--size-${oldValue}`);\n this.navigationButtonClassList.add(`${this.navigationButton}--size-${newValue}`);\n }\n\n /**\n * Component button classes\n */\n @State() navigationButtonClassList: ClassList = new ClassList([this.navigationButton]);\n\n /**\n * Parent menu direction\n */\n @State() direction: Direction;\n @Watch('direction')\n validateDirection(newValue: MgMenuItem['direction'], oldValue: MgMenuItem['direction']): void {\n if (oldValue !== undefined) this.navigationButtonClassList.delete(`${this.navigationButton}--${oldValue}`);\n this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);\n // manage all sub levels child menu-items level with data-level attribut\n Array.from(this.element.querySelectorAll('mg-menu-item')).forEach(item => {\n if (this.isDirection(directions.VERTICAL, newValue)) {\n item.dataset.level = `${(Number(item.dataset.level) || 1) + 1}`;\n } else {\n delete item.dataset.level;\n }\n });\n }\n\n /**\n * Does element is item-more\n */\n @State() isItemMore: boolean;\n\n /**\n * Does component have children.\n */\n @State() hasChildren = false;\n @Watch('hasChildren')\n validateHasChildren(newValue: boolean): void {\n if (newValue && this.element.href !== undefined) {\n throw new Error(`<${this.name}> prop \"href\" is unauthorizied when element is a parent.`);\n }\n }\n\n /**\n * Does component should display notification badge.\n */\n @State() displayNotificationBadge: boolean;\n\n /**\n * direction value in dataset\n * @param newValue - new direction value\n */\n // eslint-disable-next-line @stencil-community/no-unused-watch\n @Watch('data-style-direction')\n watchDataStyleDirection(newValue: Direction): void {\n this.direction = newValue;\n }\n\n /**\n * has focus value in dataset\n * @param newValue - new direction value\n */\n // eslint-disable-next-line @stencil-community/no-unused-watch\n @Watch('data-has-focus')\n watchDataHasFocus(newValue: string): void {\n if (!isValidString(newValue)) this.updateExpanded(Boolean(newValue));\n }\n\n /***********\n * Methods *\n **********/\n\n /**\n * Get parent menu\n * @returns parent menu\n */\n private getParentMenu = (): HTMLMgMenuElement => this.element.closest('mg-menu');\n\n /**\n * Does an Element have given Status\n * @param mgMenuItemElement - to parse\n * @param status - to check\n * @returns true if element with status is found\n */\n private hasStatus = (mgMenuItemElement: HTMLMgMenuItemElement, status: MgMenuItem['status']): boolean => mgMenuItemElement.status === status;\n\n /**\n * Condition to know if component should display a mg-popover\n * @returns truthy if component display popover\n */\n private hasPopover = (): boolean =>\n this.isDirection(directions.HORIZONTAL) &&\n ((this.isInMainMenu() && Array.from(this.element.children).some(element => element.querySelector('[slot]') === null)) || this.isItemMore) &&\n this.href === undefined;\n\n /**\n * Method to control if one of component children have active status\n * @returns truthy if component has active child\n */\n private hasActiveChild = (): boolean =>\n Array.from(this.element.querySelector('mg-menu')?.children || []).some(\n (element: HTMLMgMenuItemElement) => element.nodeName === 'MG-MENU-ITEM' && this.hasStatus(element, Status.ACTIVE) && !element.hasAttribute('hidden'),\n );\n\n /**\n * Is component an interactive item\n * @returns truthy if element is clickable\n */\n private isInteractiveItem = (): boolean => this.hasChildren || !isValidString(this.href);\n\n /**\n * Is component contextual direction match the given direction\n * @param direction - in parent menu\n * @param compareWith - direction to compare with. Default: `this.direction`\n * @returns true is direction match the direction propertie\n */\n private isDirection = (direction: MgMenuItem['direction'], compareWith = this.direction): boolean => direction === compareWith;\n\n /**\n * Does component is in main menu\n * @returns true if component is in main menu\n */\n private isInMainMenu = (): boolean => this.getParentMenu() !== null && this.element.parentElement.closest('mg-menu-item') === null;\n\n /**\n * Update displayNotificationBadge\n * current component notification badge have priority over the slot badge when submenu contain badge\n */\n private updateDisplayNotificationBadge = (): void => {\n const childMenu = this.element.querySelector('mg-menu');\n this.displayNotificationBadge =\n childMenu !== null && Array.from(childMenu.children).some((subItem: HTMLMgMenuItemElement) => subItem.querySelector('mg-badge') !== null && !subItem.hasAttribute('hidden'));\n };\n\n /**\n * Update expanded prop\n * @param newValue - expanded new value\n */\n private updateExpanded = (newValue: MgMenuItem['expanded']): void => {\n if (this.isInteractiveItem()) {\n // item is always expanded in vertical menu when has active child\n this.expanded = (this.isDirection(directions.VERTICAL) && this.hasActiveChild()) || newValue;\n }\n };\n\n /**\n * Update status\n * @param guard - status to exclude from process in addition to [Status.HIDDEN, Status.DISABLED] . Default: [].\n */\n private updateStatus = (guard: MgMenuItem['status'][] = []): void => {\n if (![Status.HIDDEN, Status.DISABLED, ...guard].includes(this.status)) {\n this.status = this.hasActiveChild() ? Status.ACTIVE : Status.VISIBLE;\n }\n };\n\n /**\n * Render popover clickoutside guard for content slot\n */\n private updatePopoverGuard(): void {\n const subItem: HTMLElement = this.element.querySelector('*:not([slot])');\n if (subItem === null) return;\n if (this.hasPopover()) subItem.dataset.mgPopoverGuard = this.popoverIdentifier;\n else delete subItem.dataset.mgPopoverGuard;\n }\n\n /**\n * Update slots\n * @param guard - prevent action with guard. Default: false.\n */\n private updateSlot = (guard = false): void => {\n // slot title AND metadata validation\n // add title on label AND metada slots due to text-overflow on these element\n if (Array.from(this.element.children).find(child => child.getAttribute('slot') === 'label') === undefined) {\n throw new Error(`<${this.name}> slot \"label\" is required.`);\n }\n ['label', 'metadata'].forEach(slot => {\n Array.from(this.element.querySelectorAll(`[slot=\"${slot}\"]`)).forEach(element => {\n if (!isValidString(element.textContent)) throw new Error(`<${this.name}> slot \"${slot}\" must have text content.`);\n if ((guard && !element.hasAttribute('title')) || !guard) element.setAttribute('title', element.textContent);\n });\n });\n };\n\n /**\n * Update menu item\n * @param guard - prevent action with guard\n */\n private updateItem = (guard?: MgMenuItem['status'][]): void => {\n const menu = this.getParentMenu();\n\n // define element size\n if (menu?.size !== undefined && !this.isItemMore) this.size = menu.size;\n else if (this.isItemMore) this.size = this.element.dataset.size as MgMenuItem['size'];\n\n // when vertical main menu item contain an active item we force expanded\n this.updateExpanded(this.expanded);\n this.updateStatus(guard);\n this.updatePopoverGuard();\n this.updateDisplayNotificationBadge();\n };\n\n /************\n * Handlers *\n ************/\n\n /**\n * Handle interacrtive element click\n * @param event - click on element\n */\n private handleElementCLick = (event: MouseEvent): void => {\n if (this.status === Status.DISABLED) {\n event.preventDefault();\n event.stopPropagation();\n }\n\n // for non \"poperized\" menu-item we toggle expanded manualy\n this.updateExpanded(!this.expanded);\n\n // when item is the last clickable item we close the parent popover\n if (!this.isInteractiveItem()) {\n const closePopover = (element: HTMLMgMenuItemElement): void => {\n if (element === null) return;\n else if (element !== this.element && element.expanded && element.shadowRoot.querySelector('mg-popover') !== null) {\n element.expanded = false;\n } else {\n closePopover(element.parentElement.closest('mg-menu-item'));\n }\n };\n closePopover(this.element);\n }\n };\n\n /**\n * Handle popover element display-change event\n * @param event - popover display event\n */\n private handlePopoverDisplay = (event: CustomEvent): void => {\n this.updateExpanded(event.detail);\n };\n\n /*************\n * Lifecycle *\n *************/\n\n /**\n * Validate props\n */\n componentWillLoad(): void {\n // has children items that is NOT [slot='image' | 'information' | 'label' | 'metadata'] element\n // we store only matching elements\n this.hasChildren = Array.from(this.element.children).some(child => !['image', 'information', 'label', 'metadata'].includes(child.getAttribute('slot')));\n this.messages = initLocales(this.element).messages.menuItem as MessageType;\n this.isItemMore = this.element.dataset.overflowMore !== undefined;\n\n // watchers\n this.watchStatus(this.status);\n this.watchExpanded(this.expanded);\n this.watchTarget(this.target);\n this.watchIdentifier(this.identifier);\n this.watchSize(this.size);\n }\n\n /**\n * Check if component slots configuration\n * @returns timeout\n */\n componentDidLoad(): ReturnType<typeof setTimeout> {\n // validation\n this.updateSlot(true);\n // update props and states after componentDidLoad hook\n // return a promise to process action only in the FIRST render().\n // https://stenciljs.com/docs/component-lifecycle#componentwillload\n return setTimeout(() => {\n this.watchDataStyleDirection(this.element.dataset.styleDirection as Direction);\n this.watchDataHasFocus(this.element.dataset.hasFocus);\n this.updateItem([Status.ACTIVE]);\n\n // emit loaded event when component is fully loaded\n this.itemLoaded.emit();\n\n new MutationObserver(mutationsList => {\n if (mutationsList.some(mutation => ['hidden', 'status'].includes(mutation.attributeName))) this.updateStatus(this.hasChildren ? undefined : [Status.ACTIVE]);\n if (mutationsList.some(mutation => mutation.type === 'characterData')) this.updateSlot();\n if (mutationsList.some(mutation => mutation.type === 'childList')) this.updateItem();\n this.itemUpdated.emit();\n }).observe(this.element, { attributes: true, childList: true, characterData: true, subtree: true });\n }, 0);\n }\n\n /**\n * Emit event when component is updated\n * @returns promise process wich emit the 'item-updated' event\n */\n componentShouldUpdate(): Promise<void> {\n return nextTick(() => {\n this.itemUpdated.emit();\n });\n }\n\n /**\n * Render ineractive element\n * @returns HTML Element\n */\n private renderInteractiveElement(): HTMLElement {\n const TagName: string = this.href !== undefined ? 'a' : 'button';\n return (\n <TagName\n href={this.href}\n class={this.navigationButtonClassList.join()}\n tabindex={[Status.DISABLED, Status.HIDDEN].includes(this.status) ? -1 : undefined}\n disabled={this.status === Status.DISABLED}\n hidden={this.status === Status.HIDDEN}\n target={this.href !== undefined && this.target !== undefined ? this.target : undefined}\n aria-expanded={this.hasChildren && this.expanded.toString()}\n aria-current={this.status === Status.ACTIVE && 'page'}\n onClick={this.handleElementCLick}\n >\n <slot name=\"image\"></slot>\n <div class={`${this.navigationButton}-center`}>\n <div class={`${this.navigationButton}-text-content`}>\n <slot name=\"label\"></slot>\n {!this.displayNotificationBadge && <slot name=\"information\"></slot>}\n {this.displayNotificationBadge && (\n <span class={`${this.navigationButton}-text-content-notification`}>\n <mg-badge label={this.messages.badgeLabel} value=\"!\" variant=\"text-color\" slot=\"information\"></mg-badge>\n </span>\n )}\n {this.target === '_blank' && [\n <mg-icon key=\"icon-new-tab\" class={`${this.navigationButton}-new-tab`} icon=\"arrow-up-right-square\"></mg-icon>,\n <span key=\"a11y-new-tab\" class=\"mg-u-visually-hidden\">\n {this.messages.openNewTab}\n </span>,\n ]}\n </div>\n {this.size !== 'medium' && <slot name=\"metadata\"></slot>}\n </div>\n {this.hasChildren && this.href === undefined && (\n <span\n class={{\n [`${this.navigationButton}-chevron`]: true,\n [`${this.navigationButton}-chevron--rotate`]: this.expanded === true,\n }}\n >\n <mg-icon icon=\"chevron-down\"></mg-icon>\n </span>\n )}\n </TagName>\n );\n }\n\n /**\n * Render slot\n * @returns HTML Element\n */\n private renderSlot = (): HTMLElement => <slot></slot>;\n\n /**\n * Render\n * @returns HTML Element\n */\n render(): HTMLElement {\n const getContainerClasses = () => ({\n ['mg-c-menu-item__collapse-container']: true,\n ['mg-c-menu-item__collapse-container--first-level']: (this.isInMainMenu() || this.isItemMore) && this.isDirection(directions.HORIZONTAL),\n });\n\n return (\n <Host role={this.isItemMore ? 'presentation' : 'listitem'}>\n {this.hasPopover() ? (\n <mg-popover\n display={this.expanded}\n placement=\"bottom-start\"\n arrowHide={true}\n onDisplay-change={this.handlePopoverDisplay}\n identifier={this.popoverIdentifier}\n data-fallback-placement=\"bottom-end\" // use for the last element of the menu if it is placed on the right side\n >\n {this.renderInteractiveElement()}\n <div class={getContainerClasses()} slot=\"content\">\n {this.renderSlot()}\n </div>\n </mg-popover>\n ) : (\n [\n this.renderInteractiveElement(),\n <div key=\"vertical-container\" class={getContainerClasses()} hidden={!this.expanded}>\n {this.renderSlot()}\n </div>,\n ]\n )}\n </Host>\n );\n }\n}\n"],"version":3}
@@ -1,5 +1,5 @@
1
1
  import { proxyCustomElement, HTMLElement, h } from '@stencil/core/internal/client';
2
- import { k as kt, z as zt } from './index.es.js';
2
+ import { Z as Zt, G as Gt } from './index.es.js';
3
3
  import { d as defineCustomElement$2 } from './mg-card2.js';
4
4
  import { d as defineCustomElement$1 } from './mg-icon2.js';
5
5
 
@@ -34,7 +34,7 @@ const MgMessage = /*@__PURE__*/ proxyCustomElement(class MgMessage extends HTMLE
34
34
  /**
35
35
  * Component classes
36
36
  */
37
- this.classCollection = new kt(['mg-c-message']);
37
+ this.classCollection = new Zt(['mg-c-message']);
38
38
  /**
39
39
  * Define if component is using actions slot
40
40
  */
@@ -58,7 +58,7 @@ const MgMessage = /*@__PURE__*/ proxyCustomElement(class MgMessage extends HTMLE
58
58
  }
59
59
  watchVariant(newValue, oldValue) {
60
60
  if (!variants.includes(newValue)) {
61
- throw new Error(`<mg-message> prop "variant" must be one of: ${variants.join(', ')}. Passed value: ${zt(newValue)}.`);
61
+ throw new Error(`<mg-message> prop "variant" must be one of: ${variants.join(', ')}. Passed value: ${Gt(newValue)}.`);
62
62
  }
63
63
  else {
64
64
  if (newValue !== undefined)
@@ -69,7 +69,7 @@ const MgMessage = /*@__PURE__*/ proxyCustomElement(class MgMessage extends HTMLE
69
69
  }
70
70
  watchVariantStyle(newValue, oldValue) {
71
71
  if (!variantStyles.includes(newValue)) {
72
- throw new Error(`<mg-message> prop "variantStyle" must be one of: ${variantStyles.join(', ')}. Passed value: ${zt(newValue)}.`);
72
+ throw new Error(`<mg-message> prop "variantStyle" must be one of: ${variantStyles.join(', ')}. Passed value: ${Gt(newValue)}.`);
73
73
  }
74
74
  else {
75
75
  if (newValue !== undefined)
@@ -96,9 +96,9 @@ const MgMessage = /*@__PURE__*/ proxyCustomElement(class MgMessage extends HTMLE
96
96
  * @returns HTML Element
97
97
  */
98
98
  render() {
99
- return (h("div", { key: 'd0a2c215951c0ef62588b5c1d13879a1ff9f8d1f', class: this.classCollection.join() }, h("mg-card", { key: '171d1c0452561a4a2729aea0a32d47e6831b1f50' }, this.variantStyle === 'bar-left' && h("span", { key: '482d2e6c2f51aafa1b434b24aab0fe9c3cb8141e', class: "mg-c-message__bar" }), h("span", { key: 'd6ec954a4eb499458bbdd0c7ba5fb5686c3afc0b', class: "mg-c-message__icon" }, h("mg-icon", { key: '32daba88c0c32cea0012ee6e80b97445aed3533c', icon: this.getIcon() })), h("div", { key: 'fc77d6745f2ae8d0c8de393598dad8d4c3b7f074', class: "mg-c-message__content" }, h("span", { key: 'e73d7327e259c457c66b2faf2ff26b3ca07bf24d', class: "mg-c-message__content-slot" }, h("slot", { key: 'c15d52b9cf7b4f974f0d92c7eceaeecba7708f37' })), this.hasActions && [
99
+ return (h("div", { key: '851d97fde6f05799e1420f8825fcff986d9af1d6', class: this.classCollection.join() }, h("mg-card", { key: '40f85f1fb3240ab709b1ab46286e9a953f2d5dc8' }, this.variantStyle === 'bar-left' && h("span", { key: '50b078ec379c7774d2f409c64b56108041bf3053', class: "mg-c-message__bar" }), h("span", { key: 'bc6b1019e1103fc8cd5e4e92f95b62374207be2b', class: "mg-c-message__icon" }, h("mg-icon", { key: 'e461ddc1eb1ddcb7ecc673f59dc59f400efbe916', icon: this.getIcon() })), h("div", { key: 'edf836b375d7f1fd413b53711b99acbe2bef3e92', class: "mg-c-message__content" }, h("span", { key: 'c6ce4628e450b7e89ef3715126b3a2dee081224e', class: "mg-c-message__content-slot" }, h("slot", { key: '36ecf7417e61ab84695078e2fd4ebe829bd769a7' })), this.hasActions && [
100
100
  h("span", { class: "mg-c-message__content-separator", key: "content-separator" }),
101
- h("span", { class: "mg-c-message__content-actions-slot", key: "content-actions-slot" }, h("slot", { key: '0ebf36c9be1bed739bede04f4cf8352f0580f53f', name: "actions" })),
101
+ h("span", { class: "mg-c-message__content-actions-slot", key: "content-actions-slot" }, h("slot", { key: '43be5769165cac1ab702b2ba80fb885c2ec1834f', name: "actions" })),
102
102
  ]))));
103
103
  }
104
104
  get element() { return this; }