@mgdis/mg-components 5.19.3 → 5.20.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 (488) hide show
  1. package/dist/cjs/{components.utils-69435877.js → components.utils-cd908d4e.js} +102 -99
  2. package/dist/cjs/components.utils-cd908d4e.js.map +1 -0
  3. package/dist/cjs/{index-60dd0c56.js → index-8532b5e9.js} +185 -87
  4. package/dist/cjs/index-8532b5e9.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/mg-action-more_34.cjs.entry.js +5115 -5110
  7. package/dist/cjs/mg-action-more_34.cjs.entry.js.map +1 -1
  8. package/dist/cjs/mg-components.cjs.js +3 -3
  9. package/dist/cjs/mg-components.cjs.js.map +1 -1
  10. package/dist/cjs/mg-item-more.cjs.entry.js +224 -224
  11. package/dist/cjs/mg-item-more.cjs.entry.js.map +1 -1
  12. package/dist/collection/assets/icons/index.js +192 -190
  13. package/dist/collection/assets/icons/index.js.map +1 -0
  14. package/dist/collection/collection-manifest.json +6 -6
  15. package/dist/collection/components/atoms/mg-badge/mg-badge.js +161 -161
  16. package/dist/collection/components/atoms/mg-badge/mg-badge.js.map +1 -1
  17. package/dist/collection/components/atoms/mg-button/mg-button.js +362 -362
  18. package/dist/collection/components/atoms/mg-button/mg-button.js.map +1 -1
  19. package/dist/collection/components/atoms/mg-card/mg-card.js +126 -126
  20. package/dist/collection/components/atoms/mg-card/mg-card.js.map +1 -1
  21. package/dist/collection/components/atoms/mg-character-left/mg-character-left.js +101 -101
  22. package/dist/collection/components/atoms/mg-character-left/mg-character-left.js.map +1 -1
  23. package/dist/collection/components/atoms/mg-divider/mg-divider.js +47 -47
  24. package/dist/collection/components/atoms/mg-divider/mg-divider.js.map +1 -1
  25. package/dist/collection/components/atoms/mg-icon/mg-icon.js +231 -231
  26. package/dist/collection/components/atoms/mg-icon/mg-icon.js.map +1 -1
  27. package/dist/collection/components/atoms/mg-input-title/mg-input-title.js +132 -132
  28. package/dist/collection/components/atoms/mg-input-title/mg-input-title.js.map +1 -1
  29. package/dist/collection/components/atoms/mg-tag/mg-tag.js +158 -158
  30. package/dist/collection/components/atoms/mg-tag/mg-tag.js.map +1 -1
  31. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.js +46 -46
  32. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.js.map +1 -1
  33. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.conf.js +3 -3
  34. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.conf.js.map +1 -1
  35. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js +398 -398
  36. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js.map +1 -1
  37. package/dist/collection/components/molecules/inputs/MgInput.conf.js +2 -2
  38. package/dist/collection/components/molecules/inputs/MgInput.conf.js.map +1 -1
  39. package/dist/collection/components/molecules/inputs/MgInput.js +84 -84
  40. package/dist/collection/components/molecules/inputs/MgInput.js.map +1 -1
  41. package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js +8 -8
  42. package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js.map +1 -1
  43. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.js +266 -266
  44. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.js.map +1 -1
  45. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.js +4 -4
  46. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.js.map +1 -1
  47. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js +788 -791
  48. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js.map +1 -1
  49. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.conf.js +4 -4
  50. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.conf.js.map +1 -1
  51. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js +588 -578
  52. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js.map +1 -1
  53. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js +4 -4
  54. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js.map +1 -1
  55. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js +778 -773
  56. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js.map +1 -1
  57. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js +536 -526
  58. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js.map +1 -1
  59. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js +565 -555
  60. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js.map +1 -1
  61. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js +700 -695
  62. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js.map +1 -1
  63. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js +770 -760
  64. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js.map +1 -1
  65. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js +705 -695
  66. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js.map +1 -1
  67. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +527 -522
  68. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js.map +1 -1
  69. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js +2 -2
  70. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js.map +1 -1
  71. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js +263 -263
  72. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js.map +1 -1
  73. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js +6 -6
  74. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js.map +1 -1
  75. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js +423 -423
  76. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js.map +1 -1
  77. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js +214 -214
  78. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js.map +1 -1
  79. package/dist/collection/components/molecules/mg-details/mg-details.js +155 -150
  80. package/dist/collection/components/molecules/mg-details/mg-details.js.map +1 -1
  81. package/dist/collection/components/molecules/mg-form/mg-form.js +332 -327
  82. package/dist/collection/components/molecules/mg-form/mg-form.js.map +1 -1
  83. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +85 -85
  84. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js.map +1 -1
  85. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js +189 -189
  86. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js.map +1 -1
  87. package/dist/collection/components/molecules/mg-message/mg-message.js +325 -304
  88. package/dist/collection/components/molecules/mg-message/mg-message.js.map +1 -1
  89. package/dist/collection/components/molecules/mg-modal/mg-modal.js +317 -317
  90. package/dist/collection/components/molecules/mg-modal/mg-modal.js.map +1 -1
  91. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js +2 -2
  92. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js.map +1 -1
  93. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +216 -216
  94. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js.map +1 -1
  95. package/dist/collection/components/molecules/mg-panel/mg-panel.js +409 -399
  96. package/dist/collection/components/molecules/mg-panel/mg-panel.js.map +1 -1
  97. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js +91 -91
  98. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js.map +1 -1
  99. package/dist/collection/components/molecules/mg-popover/mg-popover.js +336 -329
  100. package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -1
  101. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +94 -94
  102. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js.map +1 -1
  103. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js +4 -4
  104. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js.map +1 -1
  105. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +348 -343
  106. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js.map +1 -1
  107. package/dist/collection/locales/fr/messages.json +4 -4
  108. package/dist/collection/locales/index.spec.js +20 -20
  109. package/dist/collection/locales/index.spec.js.map +1 -1
  110. package/dist/collection/utils/behaviors.utils.js +127 -127
  111. package/dist/collection/utils/behaviors.utils.js.map +1 -1
  112. package/dist/collection/utils/behaviors.utils.spec.js +42 -42
  113. package/dist/collection/utils/behaviors.utils.spec.js.map +1 -1
  114. package/dist/collection/utils/components.utils.js +77 -75
  115. package/dist/collection/utils/components.utils.js.map +1 -1
  116. package/dist/collection/utils/components.utils.spec.js +150 -140
  117. package/dist/collection/utils/components.utils.spec.js.map +1 -1
  118. package/dist/collection/utils/e2e.test.utils.js +21 -21
  119. package/dist/collection/utils/e2e.test.utils.js.map +1 -1
  120. package/dist/collection/utils/locale.utils.js +17 -17
  121. package/dist/collection/utils/locale.utils.js.map +1 -1
  122. package/dist/collection/utils/locale.utils.spec.js +45 -45
  123. package/dist/collection/utils/locale.utils.spec.js.map +1 -1
  124. package/dist/collection/utils/playwright.e2e.test.utils.js +41 -41
  125. package/dist/collection/utils/playwright.e2e.test.utils.js.map +1 -1
  126. package/dist/collection/utils/playwright.fixture.js +24 -0
  127. package/dist/collection/utils/playwright.fixture.js.map +1 -0
  128. package/dist/collection/utils/unit.test.utils.js +50 -50
  129. package/dist/collection/utils/unit.test.utils.js.map +1 -1
  130. package/dist/components/MgInput.js +98 -98
  131. package/dist/components/MgInput.js.map +1 -1
  132. package/dist/components/components.utils.js +78 -76
  133. package/dist/components/components.utils.js.map +1 -1
  134. package/dist/components/index2.js +21 -21
  135. package/dist/components/index2.js.map +1 -1
  136. package/dist/components/mg-action-more.d.ts +2 -2
  137. package/dist/components/mg-action-more.js +173 -173
  138. package/dist/components/mg-action-more.js.map +1 -1
  139. package/dist/components/mg-badge.d.ts +2 -2
  140. package/dist/components/mg-badge2.js +83 -83
  141. package/dist/components/mg-badge2.js.map +1 -1
  142. package/dist/components/mg-button.d.ts +2 -2
  143. package/dist/components/mg-button2.js +182 -182
  144. package/dist/components/mg-button2.js.map +1 -1
  145. package/dist/components/mg-card.d.ts +2 -2
  146. package/dist/components/mg-card2.js +77 -77
  147. package/dist/components/mg-card2.js.map +1 -1
  148. package/dist/components/mg-character-left.d.ts +2 -2
  149. package/dist/components/mg-character-left2.js +50 -50
  150. package/dist/components/mg-character-left2.js.map +1 -1
  151. package/dist/components/mg-details.d.ts +2 -2
  152. package/dist/components/mg-details.js +69 -69
  153. package/dist/components/mg-details.js.map +1 -1
  154. package/dist/components/mg-divider.d.ts +2 -2
  155. package/dist/components/mg-divider.js +30 -30
  156. package/dist/components/mg-divider.js.map +1 -1
  157. package/dist/components/mg-form.d.ts +2 -2
  158. package/dist/components/mg-form.js +171 -171
  159. package/dist/components/mg-form.js.map +1 -1
  160. package/dist/components/mg-icon.d.ts +2 -2
  161. package/dist/components/mg-icon2.js +318 -316
  162. package/dist/components/mg-icon2.js.map +1 -1
  163. package/dist/components/mg-illustrated-message.d.ts +2 -2
  164. package/dist/components/mg-illustrated-message.js +51 -51
  165. package/dist/components/mg-illustrated-message.js.map +1 -1
  166. package/dist/components/mg-input-checkbox-paginated.d.ts +2 -2
  167. package/dist/components/mg-input-checkbox-paginated2.js +170 -170
  168. package/dist/components/mg-input-checkbox-paginated2.js.map +1 -1
  169. package/dist/components/mg-input-checkbox.d.ts +2 -2
  170. package/dist/components/mg-input-checkbox.js +477 -480
  171. package/dist/components/mg-input-checkbox.js.map +1 -1
  172. package/dist/components/mg-input-date.d.ts +2 -2
  173. package/dist/components/mg-input-date.js +265 -265
  174. package/dist/components/mg-input-date.js.map +1 -1
  175. package/dist/components/mg-input-numeric.d.ts +2 -2
  176. package/dist/components/mg-input-numeric.js +353 -353
  177. package/dist/components/mg-input-numeric.js.map +1 -1
  178. package/dist/components/mg-input-password.d.ts +2 -2
  179. package/dist/components/mg-input-password.js +204 -204
  180. package/dist/components/mg-input-password.js.map +1 -1
  181. package/dist/components/mg-input-radio.d.ts +2 -2
  182. package/dist/components/mg-input-radio.js +234 -234
  183. package/dist/components/mg-input-radio.js.map +1 -1
  184. package/dist/components/mg-input-select.d.ts +2 -2
  185. package/dist/components/mg-input-select2.js +315 -315
  186. package/dist/components/mg-input-select2.js.map +1 -1
  187. package/dist/components/mg-input-text.d.ts +2 -2
  188. package/dist/components/mg-input-text2.js +305 -305
  189. package/dist/components/mg-input-text2.js.map +1 -1
  190. package/dist/components/mg-input-textarea.d.ts +2 -2
  191. package/dist/components/mg-input-textarea.js +276 -276
  192. package/dist/components/mg-input-textarea.js.map +1 -1
  193. package/dist/components/mg-input-title.d.ts +2 -2
  194. package/dist/components/mg-input-title2.js +60 -60
  195. package/dist/components/mg-input-title2.js.map +1 -1
  196. package/dist/components/mg-input-toggle.d.ts +2 -2
  197. package/dist/components/mg-input-toggle.js +251 -251
  198. package/dist/components/mg-input-toggle.js.map +1 -1
  199. package/dist/components/mg-item-more.d.ts +2 -2
  200. package/dist/components/mg-item-more.js +285 -285
  201. package/dist/components/mg-item-more.js.map +1 -1
  202. package/dist/components/mg-menu-item.d.ts +2 -2
  203. package/dist/components/mg-menu-item2.js +344 -344
  204. package/dist/components/mg-menu-item2.js.map +1 -1
  205. package/dist/components/mg-menu.conf.js +2 -2
  206. package/dist/components/mg-menu.conf.js.map +1 -1
  207. package/dist/components/mg-menu.d.ts +2 -2
  208. package/dist/components/mg-menu2.js +176 -176
  209. package/dist/components/mg-menu2.js.map +1 -1
  210. package/dist/components/mg-message.d.ts +2 -2
  211. package/dist/components/mg-message.js +197 -192
  212. package/dist/components/mg-message.js.map +1 -1
  213. package/dist/components/mg-modal.d.ts +2 -2
  214. package/dist/components/mg-modal.js +198 -198
  215. package/dist/components/mg-modal.js.map +1 -1
  216. package/dist/components/mg-pagination.d.ts +2 -2
  217. package/dist/components/mg-pagination2.js +133 -133
  218. package/dist/components/mg-pagination2.js.map +1 -1
  219. package/dist/components/mg-panel.d.ts +2 -2
  220. package/dist/components/mg-panel.js +238 -238
  221. package/dist/components/mg-panel.js.map +1 -1
  222. package/dist/components/mg-popover-content.d.ts +2 -2
  223. package/dist/components/mg-popover-content2.js +69 -69
  224. package/dist/components/mg-popover-content2.js.map +1 -1
  225. package/dist/components/mg-popover.d.ts +2 -2
  226. package/dist/components/mg-popover2.js +224 -222
  227. package/dist/components/mg-popover2.js.map +1 -1
  228. package/dist/components/mg-skip-links.d.ts +2 -2
  229. package/dist/components/mg-skip-links.js +57 -57
  230. package/dist/components/mg-skip-links.js.map +1 -1
  231. package/dist/components/mg-tabs.d.ts +2 -2
  232. package/dist/components/mg-tabs.js +243 -243
  233. package/dist/components/mg-tabs.js.map +1 -1
  234. package/dist/components/mg-tag.d.ts +2 -2
  235. package/dist/components/mg-tag.js +97 -97
  236. package/dist/components/mg-tag.js.map +1 -1
  237. package/dist/components/mg-tooltip-content.d.ts +2 -2
  238. package/dist/components/mg-tooltip-content2.js +30 -30
  239. package/dist/components/mg-tooltip-content2.js.map +1 -1
  240. package/dist/components/mg-tooltip.d.ts +2 -2
  241. package/dist/components/mg-tooltip2.js +316 -316
  242. package/dist/components/mg-tooltip2.js.map +1 -1
  243. package/dist/esm/{components.utils-6cf27db1.js → components.utils-0d67c31c.js} +102 -100
  244. package/dist/esm/components.utils-0d67c31c.js.map +1 -0
  245. package/dist/esm/{index-0f833068.js → index-f34a3a2c.js} +185 -87
  246. package/dist/esm/index-f34a3a2c.js.map +1 -0
  247. package/dist/esm/loader.js +3 -3
  248. package/dist/esm/mg-action-more_34.entry.js +5115 -5110
  249. package/dist/esm/mg-action-more_34.entry.js.map +1 -1
  250. package/dist/esm/mg-components.js +4 -4
  251. package/dist/esm/mg-components.js.map +1 -1
  252. package/dist/esm/mg-item-more.entry.js +224 -224
  253. package/dist/esm/mg-item-more.entry.js.map +1 -1
  254. package/dist/mg-components/locales/fr/messages.json +4 -4
  255. package/dist/mg-components/mg-components.esm.js +1 -1
  256. package/dist/mg-components/mg-components.esm.js.map +1 -1
  257. package/dist/mg-components/p-629454f7.entry.js +2 -0
  258. package/dist/mg-components/p-629454f7.entry.js.map +1 -0
  259. package/dist/mg-components/p-7444ff40.js +3 -0
  260. package/dist/mg-components/p-7444ff40.js.map +1 -0
  261. package/dist/mg-components/p-af42d17b.js +2 -0
  262. package/dist/mg-components/p-af42d17b.js.map +1 -0
  263. package/dist/mg-components/{p-91feda5a.entry.js → p-e0fb0f3c.entry.js} +2 -2
  264. package/dist/types/assets/icons/index.d.ts +193 -0
  265. package/dist/types/components/atoms/mg-badge/mg-badge.d.ts +41 -41
  266. package/dist/types/components/atoms/mg-button/mg-button.d.ts +100 -100
  267. package/dist/types/components/atoms/mg-card/mg-card.d.ts +39 -39
  268. package/dist/types/components/atoms/mg-character-left/mg-character-left.d.ts +37 -37
  269. package/dist/types/components/atoms/mg-divider/mg-divider.d.ts +12 -12
  270. package/dist/types/components/atoms/mg-icon/mg-icon.d.ts +56 -56
  271. package/dist/types/components/atoms/mg-input-title/mg-input-title.d.ts +34 -34
  272. package/dist/types/components/atoms/mg-tag/mg-tag.d.ts +51 -51
  273. package/dist/types/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.d.ts +12 -12
  274. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.conf.d.ts +3 -3
  275. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +113 -113
  276. package/dist/types/components/molecules/inputs/MgInput.conf.d.ts +5 -5
  277. package/dist/types/components/molecules/inputs/MgInput.d.ts +16 -16
  278. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.d.ts +100 -100
  279. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.d.ts +26 -26
  280. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.d.ts +262 -262
  281. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.conf.d.ts +4 -4
  282. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.d.ts +150 -150
  283. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.d.ts +4 -4
  284. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.d.ts +223 -223
  285. package/dist/types/components/molecules/inputs/mg-input-password/mg-input-password.d.ts +142 -142
  286. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.conf.d.ts +3 -3
  287. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.d.ts +152 -152
  288. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.conf.d.ts +6 -6
  289. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.d.ts +193 -193
  290. package/dist/types/components/molecules/inputs/mg-input-text/mg-input-text.d.ts +195 -195
  291. package/dist/types/components/molecules/inputs/mg-input-textarea/mg-input-textarea.d.ts +181 -181
  292. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.conf.d.ts +2 -2
  293. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.d.ts +141 -141
  294. package/dist/types/components/molecules/menu/mg-menu/mg-menu.conf.d.ts +2 -2
  295. package/dist/types/components/molecules/menu/mg-menu/mg-menu.d.ts +97 -97
  296. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.conf.d.ts +6 -6
  297. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.d.ts +179 -179
  298. package/dist/types/components/molecules/mg-action-more/mg-action-more.conf.d.ts +12 -12
  299. package/dist/types/components/molecules/mg-action-more/mg-action-more.d.ts +72 -72
  300. package/dist/types/components/molecules/mg-details/mg-details.d.ts +45 -45
  301. package/dist/types/components/molecules/mg-form/mg-form.d.ts +103 -103
  302. package/dist/types/components/molecules/mg-illustrated-message/mg-illustrated-message.d.ts +27 -27
  303. package/dist/types/components/molecules/mg-item-more/mg-item-more.conf.d.ts +5 -5
  304. package/dist/types/components/molecules/mg-item-more/mg-item-more.d.ts +61 -61
  305. package/dist/types/components/molecules/mg-message/mg-message.d.ts +100 -93
  306. package/dist/types/components/molecules/mg-modal/mg-modal.d.ts +107 -107
  307. package/dist/types/components/molecules/mg-pagination/mg-pagination.conf.d.ts +2 -2
  308. package/dist/types/components/molecules/mg-pagination/mg-pagination.d.ts +74 -74
  309. package/dist/types/components/molecules/mg-panel/mg-panel.d.ts +149 -149
  310. package/dist/types/components/molecules/mg-popover/mg-popover-content/mg-popover-content.d.ts +43 -43
  311. package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +88 -88
  312. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.conf.d.ts +2 -2
  313. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.d.ts +40 -40
  314. package/dist/types/components/molecules/mg-tabs/mg-tabs.conf.d.ts +10 -10
  315. package/dist/types/components/molecules/mg-tabs/mg-tabs.d.ts +118 -118
  316. package/dist/types/components.d.ts +294 -30
  317. package/dist/types/locales/index.d.ts +172 -172
  318. package/dist/types/stencil-public-runtime.d.ts +29 -0
  319. package/dist/types/utils/behaviors.utils.d.ts +65 -65
  320. package/dist/types/utils/components.utils.d.ts +32 -26
  321. package/dist/types/utils/locale.utils.d.ts +2 -2
  322. package/dist/types/utils/playwright.fixture.d.ts +3 -0
  323. package/dist/types/utils/unit.test.utils.d.ts +5 -5
  324. package/package.json +18 -32
  325. package/dist/cjs/components.utils-69435877.js.map +0 -1
  326. package/dist/cjs/index-60dd0c56.js.map +0 -1
  327. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js +0 -33
  328. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js.map +0 -1
  329. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js +0 -70
  330. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js.map +0 -1
  331. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js +0 -91
  332. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js.map +0 -1
  333. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js +0 -192
  334. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js.map +0 -1
  335. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js +0 -36
  336. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js.map +0 -1
  337. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js +0 -43
  338. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js.map +0 -1
  339. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js +0 -15
  340. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js.map +0 -1
  341. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js +0 -42
  342. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js.map +0 -1
  343. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js +0 -11
  344. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js.map +0 -1
  345. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js +0 -14
  346. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js.map +0 -1
  347. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js +0 -55
  348. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js.map +0 -1
  349. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js +0 -84
  350. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js.map +0 -1
  351. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js +0 -12
  352. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js.map +0 -1
  353. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js +0 -23
  354. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js.map +0 -1
  355. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js +0 -23
  356. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js.map +0 -1
  357. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js +0 -71
  358. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js.map +0 -1
  359. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js +0 -138
  360. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js.map +0 -1
  361. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js +0 -272
  362. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js.map +0 -1
  363. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js +0 -237
  364. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js.map +0 -1
  365. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js +0 -634
  366. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js.map +0 -1
  367. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js +0 -123
  368. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js.map +0 -1
  369. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js +0 -383
  370. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js.map +0 -1
  371. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js +0 -212
  372. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js.map +0 -1
  373. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js +0 -460
  374. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js.map +0 -1
  375. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js +0 -115
  376. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js.map +0 -1
  377. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js +0 -293
  378. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js.map +0 -1
  379. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js +0 -154
  380. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js.map +0 -1
  381. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js +0 -359
  382. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js.map +0 -1
  383. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js +0 -194
  384. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js.map +0 -1
  385. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js +0 -403
  386. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js.map +0 -1
  387. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js +0 -147
  388. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js.map +0 -1
  389. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js +0 -355
  390. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js.map +0 -1
  391. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js +0 -129
  392. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js.map +0 -1
  393. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js +0 -320
  394. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js.map +0 -1
  395. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js +0 -108
  396. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js.map +0 -1
  397. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js +0 -247
  398. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js.map +0 -1
  399. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js +0 -239
  400. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js.map +0 -1
  401. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js +0 -175
  402. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js.map +0 -1
  403. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js +0 -100
  404. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js.map +0 -1
  405. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js +0 -295
  406. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js.map +0 -1
  407. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js +0 -136
  408. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js.map +0 -1
  409. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js +0 -195
  410. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js.map +0 -1
  411. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js +0 -30
  412. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js.map +0 -1
  413. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js +0 -42
  414. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js.map +0 -1
  415. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js +0 -169
  416. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js.map +0 -1
  417. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js +0 -292
  418. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js.map +0 -1
  419. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js +0 -39
  420. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js.map +0 -1
  421. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js +0 -36
  422. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js.map +0 -1
  423. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js +0 -85
  424. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js.map +0 -1
  425. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js +0 -106
  426. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js.map +0 -1
  427. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js +0 -64
  428. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js.map +0 -1
  429. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js +0 -109
  430. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js.map +0 -1
  431. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js +0 -62
  432. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js.map +0 -1
  433. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js +0 -40
  434. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js.map +0 -1
  435. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js +0 -26
  436. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js.map +0 -1
  437. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js +0 -122
  438. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js.map +0 -1
  439. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js +0 -57
  440. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js.map +0 -1
  441. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js +0 -121
  442. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js.map +0 -1
  443. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js +0 -106
  444. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js.map +0 -1
  445. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js +0 -213
  446. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js.map +0 -1
  447. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js +0 -140
  448. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js.map +0 -1
  449. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js +0 -142
  450. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js.map +0 -1
  451. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js +0 -55
  452. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js.map +0 -1
  453. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js +0 -55
  454. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js.map +0 -1
  455. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js +0 -76
  456. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js.map +0 -1
  457. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js +0 -332
  458. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js.map +0 -1
  459. package/dist/collection/utils/stencil.e2e.test.utils.js +0 -33
  460. package/dist/collection/utils/stencil.e2e.test.utils.js.map +0 -1
  461. package/dist/esm/components.utils-6cf27db1.js.map +0 -1
  462. package/dist/esm/index-0f833068.js.map +0 -1
  463. package/dist/mg-components/p-10ed4425.entry.js +0 -2
  464. package/dist/mg-components/p-10ed4425.entry.js.map +0 -1
  465. package/dist/mg-components/p-36a51c5e.js +0 -2
  466. package/dist/mg-components/p-36a51c5e.js.map +0 -1
  467. package/dist/mg-components/p-9b12021b.js +0 -3
  468. package/dist/mg-components/p-9b12021b.js.map +0 -1
  469. package/dist/types/components/atoms/mg-badge/test/mg-badge.e2e.playwright.d.ts +0 -1
  470. package/dist/types/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.d.ts +0 -1
  471. package/dist/types/components/atoms/mg-tag/test/mg-tag.e2e.playwright.d.ts +0 -1
  472. package/dist/types/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.d.ts +0 -1
  473. package/dist/types/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.d.ts +0 -1
  474. package/dist/types/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.d.ts +0 -1
  475. package/dist/types/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.d.ts +0 -1
  476. package/dist/types/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.d.ts +0 -1
  477. package/dist/types/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.d.ts +0 -2
  478. package/dist/types/components/molecules/mg-details/test/mg-details.e2e.playwright.d.ts +0 -1
  479. package/dist/types/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.d.ts +0 -1
  480. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.playwright.d.ts +0 -1
  481. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.template.d.ts +0 -12
  482. package/dist/types/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.d.ts +0 -1
  483. package/dist/types/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.d.ts +0 -1
  484. package/dist/types/components/molecules/mg-panel/test/mg-panel.e2e.playwright.d.ts +0 -1
  485. package/dist/types/components/molecules/mg-popover/test/mg-popover.e2e.playwright.d.ts +0 -1
  486. package/dist/types/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.d.ts +0 -1
  487. package/dist/types/utils/stencil.e2e.test.utils.d.ts +0 -14
  488. /package/dist/mg-components/{p-91feda5a.entry.js.map → p-e0fb0f3c.entry.js.map} +0 -0
@@ -4,445 +4,445 @@ import { initLocales } from "../../../../locales";
4
4
  import { Direction } from "../mg-menu/mg-menu.conf";
5
5
  import { Status } from "./mg-menu-item.conf";
6
6
  export class MgMenuItem {
7
- constructor() {
8
- /************
9
- * Internal *
10
- ************/
11
- this.name = 'mg-menu-item';
12
- this.navigationButton = 'mg-c-menu-item__navigation-button';
13
- /***********
14
- * Methods *
15
- **********/
16
- /**
17
- * Toggle expanded prop value
18
- */
19
- this.toggleExpanded = () => {
20
- this.expanded = !this.expanded;
21
- };
22
- /**
23
- * Does an Element have given Status
24
- * @param mgMenuItemElement - to parse
25
- * @param status - to check
26
- * @returns true if element with status is found
27
- */
28
- this.hasStatus = (mgMenuItemElement, status) => mgMenuItemElement.status === status;
29
- /**
30
- * Is component contextual direction match the given direction
31
- * @param direction - in parent menu
32
- * @param compareWith - direction to compare with. Default: `this.direction`
33
- * @returns true is direction match the direction propertie
34
- */
35
- this.isDirection = (direction, compareWith = this.direction) => direction === compareWith;
36
- /**
37
- * Update displayNotificationBadge
38
- * current component notification badge have priority over the slot badge when submenu contain badge
39
- */
40
- this.updateDisplayNotificationBadge = () => {
41
- const childMenu = this.element.querySelector('mg-menu');
42
- this.displayNotificationBadge =
43
- childMenu !== null &&
44
- Array.from(childMenu.children).some((subItem) => subItem.querySelector('mg-badge') !== null && subItem.getAttribute('hidden') === null);
45
- };
46
- /**
47
- * Method to control if one of component children have active status
48
- * @returns truthy if component has active child
49
- */
50
- this.hasActiveChild = () => {
51
- var _a;
52
- return Array.from(((_a = this.element.querySelector('mg-menu')) === null || _a === void 0 ? void 0 : _a.children) || []).some((element) => element.nodeName === 'MG-MENU-ITEM' && this.hasStatus(element, Status.ACTIVE) && element.getAttribute('hidden') === null);
53
- };
54
- /**
55
- * Validate slots
56
- * @param guard - prevent action with guard. Default: false.
57
- */
58
- this.validateSlot = (guard = false) => {
59
- // slot title AND metadata validation
60
- // add title on label AND metada slots due to text-overflow on these element
61
- if (Array.from(this.element.children).find(child => child.getAttribute('slot') === 'label') === undefined)
62
- throw new Error(`<${this.name}> slot "label" is required.`);
63
- ['label', 'metadata'].forEach(slot => {
64
- Array.from(this.element.querySelectorAll(`[slot="${slot}"]`)).forEach(element => {
65
- if (!isValidString(element.textContent))
66
- throw new Error(`<${this.name}> slot "${slot}" must have text content.`);
67
- if ((guard && element.getAttribute('title') === null) || !guard)
68
- element.setAttribute('title', element.textContent);
69
- });
70
- });
71
- };
72
- /**
73
- * Update status
74
- * @param guard - status to exclude from process in addition to [Status.HIDDEN, Status.DISABLED] . Default: [].
75
- */
76
- this.updateStatus = (guard = []) => {
77
- if (![Status.HIDDEN, Status.DISABLED, ...guard].includes(this.status)) {
78
- this.status = this.hasActiveChild() ? Status.ACTIVE : Status.VISIBLE;
79
- }
80
- };
81
- /**
82
- * Init event-listeners
83
- */
84
- this.initListeners = () => {
85
- var _a;
86
- // manage first sub-level menu-items
87
- Array.from(((_a = this.element.querySelector('mg-menu')) === null || _a === void 0 ? void 0 : _a.children) || []).forEach(item => {
88
- if (item.nodeName === 'MG-MENU-ITEM') {
89
- // manage child menu listener
90
- item.addEventListener('status-change', () => {
91
- this.updateStatus();
92
- });
7
+ constructor() {
8
+ /************
9
+ * Internal *
10
+ ************/
11
+ this.name = 'mg-menu-item';
12
+ this.navigationButton = 'mg-c-menu-item__navigation-button';
13
+ /***********
14
+ * Methods *
15
+ **********/
16
+ /**
17
+ * Toggle expanded prop value
18
+ */
19
+ this.toggleExpanded = () => {
20
+ this.expanded = !this.expanded;
21
+ };
22
+ /**
23
+ * Does an Element have given Status
24
+ * @param mgMenuItemElement - to parse
25
+ * @param status - to check
26
+ * @returns true if element with status is found
27
+ */
28
+ this.hasStatus = (mgMenuItemElement, status) => mgMenuItemElement.status === status;
29
+ /**
30
+ * Is component contextual direction match the given direction
31
+ * @param direction - in parent menu
32
+ * @param compareWith - direction to compare with. Default: `this.direction`
33
+ * @returns true is direction match the direction propertie
34
+ */
35
+ this.isDirection = (direction, compareWith = this.direction) => direction === compareWith;
36
+ /**
37
+ * Update displayNotificationBadge
38
+ * current component notification badge have priority over the slot badge when submenu contain badge
39
+ */
40
+ this.updateDisplayNotificationBadge = () => {
41
+ const childMenu = this.element.querySelector('mg-menu');
42
+ this.displayNotificationBadge =
43
+ childMenu !== null &&
44
+ Array.from(childMenu.children).some((subItem) => subItem.querySelector('mg-badge') !== null && subItem.getAttribute('hidden') === null);
45
+ };
46
+ /**
47
+ * Method to control if one of component children have active status
48
+ * @returns truthy if component has active child
49
+ */
50
+ this.hasActiveChild = () => {
51
+ var _a;
52
+ return Array.from(((_a = this.element.querySelector('mg-menu')) === null || _a === void 0 ? void 0 : _a.children) || []).some((element) => element.nodeName === 'MG-MENU-ITEM' && this.hasStatus(element, Status.ACTIVE) && element.getAttribute('hidden') === null);
53
+ };
54
+ /**
55
+ * Validate slots
56
+ * @param guard - prevent action with guard. Default: false.
57
+ */
58
+ this.validateSlot = (guard = false) => {
59
+ // slot title AND metadata validation
60
+ // add title on label AND metada slots due to text-overflow on these element
61
+ if (Array.from(this.element.children).find(child => child.getAttribute('slot') === 'label') === undefined)
62
+ throw new Error(`<${this.name}> slot "label" is required.`);
63
+ ['label', 'metadata'].forEach(slot => {
64
+ Array.from(this.element.querySelectorAll(`[slot="${slot}"]`)).forEach(element => {
65
+ if (!isValidString(element.textContent))
66
+ throw new Error(`<${this.name}> slot "${slot}" must have text content.`);
67
+ if ((guard && element.getAttribute('title') === null) || !guard)
68
+ element.setAttribute('title', element.textContent);
69
+ });
70
+ });
71
+ };
72
+ /**
73
+ * Update status
74
+ * @param guard - status to exclude from process in addition to [Status.HIDDEN, Status.DISABLED] . Default: [].
75
+ */
76
+ this.updateStatus = (guard = []) => {
77
+ if (![Status.HIDDEN, Status.DISABLED, ...guard].includes(this.status)) {
78
+ this.status = this.hasActiveChild() ? Status.ACTIVE : Status.VISIBLE;
79
+ }
80
+ };
81
+ /**
82
+ * Init event-listeners
83
+ */
84
+ this.initListeners = () => {
85
+ var _a;
86
+ // manage first sub-level menu-items
87
+ Array.from(((_a = this.element.querySelector('mg-menu')) === null || _a === void 0 ? void 0 : _a.children) || []).forEach(item => {
88
+ if (item.nodeName === 'MG-MENU-ITEM') {
89
+ // manage child menu listener
90
+ item.addEventListener('status-change', () => {
91
+ this.updateStatus();
92
+ });
93
+ }
94
+ });
95
+ };
96
+ /**
97
+ * Get mg-popover identifier
98
+ * @returns generated mg-popover identifier
99
+ */
100
+ this.getPopoverIdentifier = () => `${this.identifier}-popover`;
101
+ /**
102
+ * Condition to know if component should display a mg-popover
103
+ * @returns truthy if component display popover
104
+ */
105
+ this.displayPopover = () => this.isDirection(Direction.HORIZONTAL) && this.hasChildren && this.href === undefined;
106
+ /************
107
+ * Handlers *
108
+ ************/
109
+ /**
110
+ * Handle interacrtive element click
111
+ * @param event - click on element
112
+ */
113
+ this.handleElementCLick = (event) => {
114
+ if ((this.hasChildren && !this.isInMainMenu) || this.status === Status.DISABLED) {
115
+ event.preventDefault();
116
+ event.stopPropagation();
117
+ }
118
+ // toggle expanded when mg-menu-item has child items
119
+ if (this.hasChildren)
120
+ this.toggleExpanded();
121
+ };
122
+ /**
123
+ * Handle popover element display-change event
124
+ * @param event - popover display event
125
+ */
126
+ this.handlePopoverDisplay = (event) => {
127
+ this.expanded = event.detail;
128
+ };
129
+ /**
130
+ * Render slot
131
+ * @returns HTML Element
132
+ */
133
+ this.renderSlot = () => h("slot", null);
134
+ this.identifier = createID('mg-menu-item');
135
+ this.href = undefined;
136
+ this.status = Status.VISIBLE;
137
+ this.expanded = false;
138
+ this.size = 'regular';
139
+ this.navigationButtonClassList = new ClassList([this.navigationButton]);
140
+ this.direction = undefined;
141
+ this.isInMainMenu = undefined;
142
+ this.isItemMore = undefined;
143
+ this.hasChildren = false;
144
+ this.displayNotificationBadge = undefined;
145
+ }
146
+ validateStatus(newValue, oldValue) {
147
+ if (oldValue !== undefined) {
148
+ this.navigationButtonClassList.delete(`${this.navigationButton}--${oldValue}`);
149
+ }
150
+ this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);
151
+ this.statusChange.emit(newValue);
152
+ }
153
+ validateExpanded(newValue) {
154
+ if (typeof newValue !== 'boolean')
155
+ throw new Error(`<${this.name}> prop "expanded" must be a boolean.`);
156
+ // if menu-item has sub-menu we have to apply some updates:
157
+ if (this.hasChildren) {
158
+ const subItems = Array.from(this.element.querySelectorAll(this.name));
159
+ if (!newValue) {
160
+ // - when main menu item is NOT expanded we need NOT expanded sub-items and NOT expanded sub-content
161
+ subItems.forEach(item => {
162
+ item.expanded = false;
163
+ });
164
+ }
165
+ else if (this.element.querySelector(`${this.name}[status="${Status.ACTIVE}"]`) !== null) {
166
+ // - when expanded and contain an active item parents are expended too
167
+ subItems.forEach(item => {
168
+ if (this.hasStatus(item, Status.ACTIVE)) {
169
+ item.expanded = true;
170
+ }
171
+ });
172
+ }
173
+ }
174
+ }
175
+ validateSize(newValue, oldValue) {
176
+ this.navigationButtonClassList.delete(`${this.navigationButton}--size-${oldValue}`);
177
+ this.navigationButtonClassList.add(`${this.navigationButton}--size-${newValue}`);
178
+ }
179
+ validateDirection(newValue) {
180
+ // manage menu items style depending to parent menu horientation
181
+ this.element.setAttribute(`data-style-direction-${newValue}`, '');
182
+ this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);
183
+ // manage all sub levels child menu-items level with data-level attribut
184
+ if (this.isDirection(Direction.VERTICAL, newValue)) {
185
+ Array.from(this.element.querySelectorAll('mg-menu-item')).forEach(item => {
186
+ item.dataset.level = `${(Number(item.dataset.level) || 1) + 1}`;
187
+ });
93
188
  }
94
- });
95
- };
189
+ }
190
+ validateHasChildren(newValue) {
191
+ if (newValue && this.element.href !== undefined) {
192
+ throw new Error(`<${this.name}> prop "href" is unauthorizied when element is a parent.`);
193
+ }
194
+ }
96
195
  /**
97
- * Get mg-popover identifier
98
- * @returns generated mg-popover identifier
196
+ * Render popover clickoutside guard for content slot
99
197
  */
100
- this.getPopoverIdentifier = () => `${this.identifier}-popover`;
198
+ updatePopoverGuard() {
199
+ if (this.displayPopover())
200
+ Array.from(this.element.children)
201
+ .filter((child) => child.getAttribute('slot') === null && child.nodeName !== 'MG-MENU' && Boolean(child.dataset))
202
+ .forEach((slot) => (slot.dataset.mgPopoverGuard = this.getPopoverIdentifier()));
203
+ }
204
+ /*************
205
+ * Lifecycle *
206
+ *************/
101
207
  /**
102
- * Condition to know if component should display a mg-popover
103
- * @returns truthy if component display popover
208
+ * Validate props
104
209
  */
105
- this.displayPopover = () => this.isDirection(Direction.HORIZONTAL) && this.hasChildren && this.href === undefined;
106
- /************
107
- * Handlers *
108
- ************/
210
+ componentWillLoad() {
211
+ // has children items that is NOT [slot='image' | 'information' | 'label' | 'metadata'] element
212
+ // we store only matching elements
213
+ this.hasChildren = Array.from(this.element.children).some(child => !['image', 'information', 'label', 'metadata'].includes(child.getAttribute('slot')));
214
+ this.badgeLabel = initLocales(this.element).messages.plusMenu.badgeLabel;
215
+ this.isItemMore = this.element.dataset.overflowMore !== undefined;
216
+ // Validate props
217
+ this.validateStatus(this.status);
218
+ this.validateExpanded(this.expanded);
219
+ // Validate states
220
+ this.validateSize(this.size);
221
+ }
109
222
  /**
110
- * Handle interacrtive element click
111
- * @param event - click on element
223
+ * Check if component slots configuration
224
+ * @returns timeout
112
225
  */
113
- this.handleElementCLick = (event) => {
114
- if ((this.hasChildren && !this.isInMainMenu) || this.status === Status.DISABLED) {
115
- event.preventDefault();
116
- event.stopPropagation();
117
- }
118
- // toggle expanded when mg-menu-item has child items
119
- if (this.hasChildren)
120
- this.toggleExpanded();
121
- };
226
+ componentDidLoad() {
227
+ // validation
228
+ this.validateSlot(true);
229
+ // update props and states after componentDidLoad hook
230
+ // return a promise to process action only in the FIRST render().
231
+ // https://stenciljs.com/docs/component-lifecycle#componentwillload
232
+ return setTimeout(() => {
233
+ // define menu-item context states
234
+ const menu = this.element.closest('mg-menu');
235
+ this.direction = this.isItemMore || menu === null ? Direction.HORIZONTAL : menu.direction;
236
+ this.isInMainMenu = menu !== null && this.element.parentElement.closest('mg-menu-item') === null;
237
+ if ((menu === null || menu === void 0 ? void 0 : menu.size) !== undefined)
238
+ this.size = menu.size;
239
+ if (this.isItemMore)
240
+ this.size = this.element.dataset.size;
241
+ // when main menu item contain an active item it will get the active style
242
+ // AND if item is in vertical menu it will be expanded
243
+ if (this.hasActiveChild() && this.isInMainMenu)
244
+ this.expanded = this.isDirection(Direction.VERTICAL);
245
+ this.updateStatus([Status.ACTIVE]);
246
+ this.updateDisplayNotificationBadge();
247
+ this.updatePopoverGuard();
248
+ // manage child dom changes with mutationObserver and listzners
249
+ this.initListeners();
250
+ // emit loaded event when component is fully loaded
251
+ this.itemLoaded.emit();
252
+ new MutationObserver(mutationsList => {
253
+ if (mutationsList.some(mutation => mutation.attributeName === 'hidden'))
254
+ this.updateStatus();
255
+ if (mutationsList.some(mutation => mutation.type === 'characterData'))
256
+ this.validateSlot();
257
+ this.updateDisplayNotificationBadge();
258
+ }).observe(this.element, { attributes: true, childList: true, characterData: true, subtree: true });
259
+ }, 0);
260
+ }
122
261
  /**
123
- * Handle popover element display-change event
124
- * @param event - popover display event
262
+ * Render ineractive element
263
+ * @returns HTML Element
125
264
  */
126
- this.handlePopoverDisplay = (event) => {
127
- this.expanded = event.detail;
128
- };
265
+ renderInteractiveElement() {
266
+ const TagName = this.href !== undefined ? 'a' : 'button';
267
+ return (h(TagName, { href: this.href, class: this.navigationButtonClassList.join(), tabindex: [Status.DISABLED, Status.HIDDEN].includes(this.status) ? -1 : undefined, disabled: this.status === Status.DISABLED, hidden: this.status === Status.HIDDEN, "aria-expanded": this.hasChildren && this.expanded.toString(), "aria-current": this.status === Status.ACTIVE && 'page', onClick: this.handleElementCLick }, h("slot", { name: "image" }), h("div", { class: `${this.navigationButton}-center` }, h("div", { class: `${this.navigationButton}-text-content` }, h("slot", { name: "label" }), !this.displayNotificationBadge && h("slot", { name: "information" }), this.displayNotificationBadge && (h("span", { class: `${this.navigationButton}-text-content-notification` }, h("mg-badge", { label: this.badgeLabel, value: "!", variant: "text-color", slot: "information" })))), this.size !== 'regular' && h("slot", { name: "metadata" })), this.hasChildren && this.href === undefined && (h("span", { class: {
268
+ [`${this.navigationButton}-chevron`]: true,
269
+ [`${this.navigationButton}-chevron--rotate`]: this.expanded === true,
270
+ } }, h("mg-icon", { icon: "chevron-down", size: "small" })))));
271
+ }
129
272
  /**
130
- * Render slot
273
+ * Render
131
274
  * @returns HTML Element
132
275
  */
133
- this.renderSlot = () => h("slot", null);
134
- this.identifier = createID('mg-menu-item');
135
- this.href = undefined;
136
- this.status = Status.VISIBLE;
137
- this.expanded = false;
138
- this.size = 'regular';
139
- this.navigationButtonClassList = new ClassList([this.navigationButton]);
140
- this.direction = undefined;
141
- this.isInMainMenu = undefined;
142
- this.isItemMore = undefined;
143
- this.hasChildren = false;
144
- this.displayNotificationBadge = undefined;
145
- }
146
- validateStatus(newValue, oldValue) {
147
- if (oldValue !== undefined) {
148
- this.navigationButtonClassList.delete(`${this.navigationButton}--${oldValue}`);
149
- }
150
- this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);
151
- this.statusChange.emit(newValue);
152
- }
153
- validateExpanded(newValue) {
154
- if (typeof newValue !== 'boolean')
155
- throw new Error(`<${this.name}> prop "expanded" must be a boolean.`);
156
- // if menu-item has sub-menu we have to apply some updates:
157
- if (this.hasChildren) {
158
- const subItems = Array.from(this.element.querySelectorAll(this.name));
159
- if (!newValue) {
160
- // - when main menu item is NOT expanded we need NOT expanded sub-items and NOT expanded sub-content
161
- subItems.forEach(item => {
162
- item.expanded = false;
276
+ render() {
277
+ const getContainerClasses = () => ({
278
+ ['mg-c-menu-item__collapse-container']: true,
279
+ ['mg-c-menu-item__collapse-container--first-level']: (this.isInMainMenu || this.isItemMore) && this.isDirection(Direction.HORIZONTAL),
163
280
  });
164
- }
165
- else if (this.element.querySelector(`${this.name}[status="${Status.ACTIVE}"]`) !== null) {
166
- // - when expanded and contain an active item parents are expended too
167
- subItems.forEach(item => {
168
- if (this.hasStatus(item, Status.ACTIVE)) {
169
- item.expanded = true;
170
- }
171
- });
172
- }
281
+ return (h(Host, { role: this.isItemMore ? 'presentation' : 'listitem' }, this.displayPopover() ? (h("mg-popover", { display: this.expanded, placement: "bottom-start", arrowHide: true, "onDisplay-change": this.handlePopoverDisplay, identifier: this.getPopoverIdentifier() }, this.renderInteractiveElement(), h("div", { class: getContainerClasses(), slot: "content" }, this.renderSlot()))) : ([
282
+ this.renderInteractiveElement(),
283
+ h("div", { key: "vertical-container", class: getContainerClasses(), hidden: !this.expanded }, this.renderSlot()),
284
+ ])));
173
285
  }
174
- }
175
- validateSize(newValue, oldValue) {
176
- this.navigationButtonClassList.delete(`${this.navigationButton}--size-${oldValue}`);
177
- this.navigationButtonClassList.add(`${this.navigationButton}--size-${newValue}`);
178
- }
179
- validateDirection(newValue) {
180
- // manage menu items style depending to parent menu horientation
181
- this.element.setAttribute(`data-style-direction-${newValue}`, '');
182
- this.navigationButtonClassList.add(`${this.navigationButton}--${newValue}`);
183
- // manage all sub levels child menu-items level with data-level attribut
184
- if (this.isDirection(Direction.VERTICAL, newValue)) {
185
- Array.from(this.element.querySelectorAll('mg-menu-item')).forEach(item => {
186
- item.dataset.level = `${(Number(item.dataset.level) || 1) + 1}`;
187
- });
286
+ static get is() { return "mg-menu-item"; }
287
+ static get encapsulation() { return "shadow"; }
288
+ static get originalStyleUrls() {
289
+ return {
290
+ "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-menu-item.css"]
291
+ };
188
292
  }
189
- }
190
- validateHasChildren(newValue) {
191
- if (newValue && this.element.href !== undefined) {
192
- throw new Error(`<${this.name}> prop "href" is unauthorizied when element is a parent.`);
293
+ static get styleUrls() {
294
+ return {
295
+ "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-menu-item.css"]
296
+ };
193
297
  }
194
- }
195
- /**
196
- * Render popover clickoutside guard for content slot
197
- */
198
- updatePopoverGuard() {
199
- if (this.displayPopover())
200
- Array.from(this.element.children)
201
- .filter((child) => child.getAttribute('slot') === null && child.nodeName !== 'MG-MENU' && Boolean(child.dataset))
202
- .forEach((slot) => (slot.dataset.mgPopoverGuard = this.getPopoverIdentifier()));
203
- }
204
- /*************
205
- * Lifecycle *
206
- *************/
207
- /**
208
- * Validate props
209
- */
210
- componentWillLoad() {
211
- // has children items that is NOT [slot='image' | 'information' | 'label' | 'metadata'] element
212
- // we store only matching elements
213
- this.hasChildren = Array.from(this.element.children).some(child => !['image', 'information', 'label', 'metadata'].includes(child.getAttribute('slot')));
214
- this.badgeLabel = initLocales(this.element).messages.plusMenu.badgeLabel;
215
- this.isItemMore = this.element.dataset.overflowMore !== undefined;
216
- // Validate props
217
- this.validateStatus(this.status);
218
- this.validateExpanded(this.expanded);
219
- // Validate states
220
- this.validateSize(this.size);
221
- }
222
- /**
223
- * Check if component slots configuration
224
- * @returns timeout
225
- */
226
- componentDidLoad() {
227
- // validation
228
- this.validateSlot(true);
229
- // update props and states after componentDidLoad hook
230
- // return a promise to process action only in the FIRST render().
231
- // https://stenciljs.com/docs/component-lifecycle#componentwillload
232
- return setTimeout(() => {
233
- // define menu-item context states
234
- const menu = this.element.closest('mg-menu');
235
- this.direction = this.isItemMore || menu === null ? Direction.HORIZONTAL : menu.direction;
236
- this.isInMainMenu = menu !== null && this.element.parentElement.closest('mg-menu-item') === null;
237
- if ((menu === null || menu === void 0 ? void 0 : menu.size) !== undefined)
238
- this.size = menu.size;
239
- if (this.isItemMore)
240
- this.size = this.element.dataset.size;
241
- // when main menu item contain an active item it will get the active style
242
- // AND if item is in vertical menu it will be expanded
243
- if (this.hasActiveChild() && this.isInMainMenu)
244
- this.expanded = this.isDirection(Direction.VERTICAL);
245
- this.updateStatus([Status.ACTIVE]);
246
- this.updateDisplayNotificationBadge();
247
- this.updatePopoverGuard();
248
- // manage child dom changes with mutationObserver and listzners
249
- this.initListeners();
250
- // emit loaded event when component is fully loaded
251
- this.itemLoaded.emit();
252
- new MutationObserver(mutationsList => {
253
- if (mutationsList.some(mutation => mutation.attributeName === 'hidden'))
254
- this.updateStatus();
255
- if (mutationsList.some(mutation => mutation.type === 'characterData'))
256
- this.validateSlot();
257
- this.updateDisplayNotificationBadge();
258
- }).observe(this.element, { attributes: true, childList: true, characterData: true, subtree: true });
259
- }, 0);
260
- }
261
- /**
262
- * Render ineractive element
263
- * @returns HTML Element
264
- */
265
- renderInteractiveElement() {
266
- const TagName = this.href !== undefined ? 'a' : 'button';
267
- return (h(TagName, { href: this.href, class: this.navigationButtonClassList.join(), tabindex: [Status.DISABLED, Status.HIDDEN].includes(this.status) ? -1 : undefined, disabled: this.status === Status.DISABLED, hidden: this.status === Status.HIDDEN, "aria-expanded": this.hasChildren && this.expanded.toString(), "aria-current": this.status === Status.ACTIVE && 'page', onClick: this.handleElementCLick }, h("slot", { name: "image" }), h("div", { class: `${this.navigationButton}-center` }, h("div", { class: `${this.navigationButton}-text-content` }, h("slot", { name: "label" }), !this.displayNotificationBadge && h("slot", { name: "information" }), this.displayNotificationBadge && (h("span", { class: `${this.navigationButton}-text-content-notification` }, h("mg-badge", { label: this.badgeLabel, value: "!", variant: "text-color", slot: "information" })))), this.size !== 'regular' && h("slot", { name: "metadata" })), this.hasChildren && this.href === undefined && (h("span", { class: {
268
- [`${this.navigationButton}-chevron`]: true,
269
- [`${this.navigationButton}-chevron--rotate`]: this.expanded === true,
270
- } }, h("mg-icon", { icon: "chevron-down", size: "small" })))));
271
- }
272
- /**
273
- * Render
274
- * @returns HTML Element
275
- */
276
- render() {
277
- const getContainerClasses = () => ({
278
- ['mg-c-menu-item__collapse-container']: true,
279
- ['mg-c-menu-item__collapse-container--first-level']: (this.isInMainMenu || this.isItemMore) && this.isDirection(Direction.HORIZONTAL),
280
- });
281
- return (h(Host, { role: this.isItemMore ? 'presentation' : 'listitem' }, this.displayPopover() ? (h("mg-popover", { display: this.expanded, placement: "bottom-start", arrowHide: true, "onDisplay-change": this.handlePopoverDisplay, identifier: this.getPopoverIdentifier() }, this.renderInteractiveElement(), h("div", { class: getContainerClasses(), slot: "content" }, this.renderSlot()))) : ([
282
- this.renderInteractiveElement(),
283
- h("div", { key: "vertical-container", class: getContainerClasses(), hidden: !this.expanded }, this.renderSlot()),
284
- ])));
285
- }
286
- static get is() { return "mg-menu-item"; }
287
- static get encapsulation() { return "shadow"; }
288
- static get originalStyleUrls() {
289
- return {
290
- "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-menu-item.css"]
291
- };
292
- }
293
- static get styleUrls() {
294
- return {
295
- "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-menu-item.css"]
296
- };
297
- }
298
- static get properties() {
299
- return {
300
- "identifier": {
301
- "type": "string",
302
- "mutable": false,
303
- "complexType": {
304
- "original": "string",
305
- "resolved": "string",
306
- "references": {}
307
- },
308
- "required": false,
309
- "optional": false,
310
- "docs": {
311
- "tags": [],
312
- "text": "Identifier is used to control mg-popover"
313
- },
314
- "attribute": "identifier",
315
- "reflect": false,
316
- "defaultValue": "createID('mg-menu-item')"
317
- },
318
- "href": {
319
- "type": "string",
320
- "mutable": false,
321
- "complexType": {
322
- "original": "string",
323
- "resolved": "string",
324
- "references": {}
325
- },
326
- "required": false,
327
- "optional": false,
328
- "docs": {
329
- "tags": [],
330
- "text": "Define menu-item href\nwhen defined menu-item contain an anchor instead of button"
331
- },
332
- "attribute": "href",
333
- "reflect": false
334
- },
335
- "status": {
336
- "type": "string",
337
- "mutable": true,
338
- "complexType": {
339
- "original": "Status",
340
- "resolved": "Status.ACTIVE | Status.DISABLED | Status.HIDDEN | Status.VISIBLE",
341
- "references": {
342
- "Status": {
343
- "location": "import",
344
- "path": "./mg-menu-item.conf",
345
- "id": "src/components/molecules/menu/mg-menu-item/mg-menu-item.conf.ts::Status"
346
- }
347
- }
348
- },
349
- "required": false,
350
- "optional": false,
351
- "docs": {
352
- "tags": [],
353
- "text": "Define menu-item status."
354
- },
355
- "attribute": "status",
356
- "reflect": true,
357
- "defaultValue": "Status.VISIBLE"
358
- },
359
- "expanded": {
360
- "type": "boolean",
361
- "mutable": true,
362
- "complexType": {
363
- "original": "boolean",
364
- "resolved": "boolean",
365
- "references": {}
366
- },
367
- "required": false,
368
- "optional": false,
369
- "docs": {
370
- "tags": [],
371
- "text": "Define menu-item content expanded."
372
- },
373
- "attribute": "expanded",
374
- "reflect": false,
375
- "defaultValue": "false"
376
- }
377
- };
378
- }
379
- static get states() {
380
- return {
381
- "size": {},
382
- "navigationButtonClassList": {},
383
- "direction": {},
384
- "isInMainMenu": {},
385
- "isItemMore": {},
386
- "hasChildren": {},
387
- "displayNotificationBadge": {}
388
- };
389
- }
390
- static get events() {
391
- return [{
392
- "method": "statusChange",
393
- "name": "status-change",
394
- "bubbles": true,
395
- "cancelable": true,
396
- "composed": true,
397
- "docs": {
398
- "tags": [],
399
- "text": "Emited event when status change"
400
- },
401
- "complexType": {
402
- "original": "MgMenuItem['status']",
403
- "resolved": "Status.ACTIVE | Status.DISABLED | Status.HIDDEN | Status.VISIBLE",
404
- "references": {
405
- "MgMenuItem": {
406
- "location": "global",
407
- "id": "global::MgMenuItem"
298
+ static get properties() {
299
+ return {
300
+ "identifier": {
301
+ "type": "string",
302
+ "mutable": false,
303
+ "complexType": {
304
+ "original": "string",
305
+ "resolved": "string",
306
+ "references": {}
307
+ },
308
+ "required": false,
309
+ "optional": false,
310
+ "docs": {
311
+ "tags": [],
312
+ "text": "Identifier is used to control mg-popover"
313
+ },
314
+ "attribute": "identifier",
315
+ "reflect": false,
316
+ "defaultValue": "createID('mg-menu-item')"
317
+ },
318
+ "href": {
319
+ "type": "string",
320
+ "mutable": false,
321
+ "complexType": {
322
+ "original": "string",
323
+ "resolved": "string",
324
+ "references": {}
325
+ },
326
+ "required": false,
327
+ "optional": false,
328
+ "docs": {
329
+ "tags": [],
330
+ "text": "Define menu-item href\nwhen defined menu-item contain an anchor instead of button"
331
+ },
332
+ "attribute": "href",
333
+ "reflect": false
334
+ },
335
+ "status": {
336
+ "type": "string",
337
+ "mutable": true,
338
+ "complexType": {
339
+ "original": "Status",
340
+ "resolved": "Status.ACTIVE | Status.DISABLED | Status.HIDDEN | Status.VISIBLE",
341
+ "references": {
342
+ "Status": {
343
+ "location": "import",
344
+ "path": "./mg-menu-item.conf",
345
+ "id": "src/components/molecules/menu/mg-menu-item/mg-menu-item.conf.ts::Status"
346
+ }
347
+ }
348
+ },
349
+ "required": false,
350
+ "optional": false,
351
+ "docs": {
352
+ "tags": [],
353
+ "text": "Define menu-item status."
354
+ },
355
+ "attribute": "status",
356
+ "reflect": true,
357
+ "defaultValue": "Status.VISIBLE"
358
+ },
359
+ "expanded": {
360
+ "type": "boolean",
361
+ "mutable": true,
362
+ "complexType": {
363
+ "original": "boolean",
364
+ "resolved": "boolean",
365
+ "references": {}
366
+ },
367
+ "required": false,
368
+ "optional": false,
369
+ "docs": {
370
+ "tags": [],
371
+ "text": "Define menu-item content expanded."
372
+ },
373
+ "attribute": "expanded",
374
+ "reflect": false,
375
+ "defaultValue": "false"
408
376
  }
409
- }
410
- }
411
- }, {
412
- "method": "itemLoaded",
413
- "name": "item-loaded",
414
- "bubbles": true,
415
- "cancelable": true,
416
- "composed": true,
417
- "docs": {
418
- "tags": [],
419
- "text": "Emited event when item is loaded"
420
- },
421
- "complexType": {
422
- "original": "void",
423
- "resolved": "void",
424
- "references": {}
425
- }
426
- }];
427
- }
428
- static get elementRef() { return "element"; }
429
- static get watchers() {
430
- return [{
431
- "propName": "status",
432
- "methodName": "validateStatus"
433
- }, {
434
- "propName": "expanded",
435
- "methodName": "validateExpanded"
436
- }, {
437
- "propName": "size",
438
- "methodName": "validateSize"
439
- }, {
440
- "propName": "direction",
441
- "methodName": "validateDirection"
442
- }, {
443
- "propName": "hasChildren",
444
- "methodName": "validateHasChildren"
445
- }];
446
- }
377
+ };
378
+ }
379
+ static get states() {
380
+ return {
381
+ "size": {},
382
+ "navigationButtonClassList": {},
383
+ "direction": {},
384
+ "isInMainMenu": {},
385
+ "isItemMore": {},
386
+ "hasChildren": {},
387
+ "displayNotificationBadge": {}
388
+ };
389
+ }
390
+ static get events() {
391
+ return [{
392
+ "method": "statusChange",
393
+ "name": "status-change",
394
+ "bubbles": true,
395
+ "cancelable": true,
396
+ "composed": true,
397
+ "docs": {
398
+ "tags": [],
399
+ "text": "Emited event when status change"
400
+ },
401
+ "complexType": {
402
+ "original": "HTMLMgMenuItemElement['status']",
403
+ "resolved": "Status.ACTIVE | Status.DISABLED | Status.HIDDEN | Status.VISIBLE",
404
+ "references": {
405
+ "HTMLMgMenuItemElement": {
406
+ "location": "global",
407
+ "id": "global::HTMLMgMenuItemElement"
408
+ }
409
+ }
410
+ }
411
+ }, {
412
+ "method": "itemLoaded",
413
+ "name": "item-loaded",
414
+ "bubbles": true,
415
+ "cancelable": true,
416
+ "composed": true,
417
+ "docs": {
418
+ "tags": [],
419
+ "text": "Emited event when item is loaded"
420
+ },
421
+ "complexType": {
422
+ "original": "void",
423
+ "resolved": "void",
424
+ "references": {}
425
+ }
426
+ }];
427
+ }
428
+ static get elementRef() { return "element"; }
429
+ static get watchers() {
430
+ return [{
431
+ "propName": "status",
432
+ "methodName": "validateStatus"
433
+ }, {
434
+ "propName": "expanded",
435
+ "methodName": "validateExpanded"
436
+ }, {
437
+ "propName": "size",
438
+ "methodName": "validateSize"
439
+ }, {
440
+ "propName": "direction",
441
+ "methodName": "validateDirection"
442
+ }, {
443
+ "propName": "hasChildren",
444
+ "methodName": "validateHasChildren"
445
+ }];
446
+ }
447
447
  }
448
448
  //# sourceMappingURL=mg-menu-item.js.map