@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
@@ -1,13 +1,13 @@
1
1
  import { proxyCustomElement, HTMLElement, h, Host } from '@stencil/core/internal/client';
2
- import { c as createID, i as isValidString, g as getWindows, f as focusableElements } from './components.utils.js';
2
+ import { n as nextTick, c as createID, i as isValidString, g as getWindows, f as focusableElements } from './components.utils.js';
3
3
  import { d as defineCustomElement$1 } from './mg-tooltip-content2.js';
4
4
  import { c as createPopper } from './popper.js';
5
5
 
6
6
  var Guard;
7
7
  (function (Guard) {
8
- Guard["FOCUS"] = "focus";
9
- Guard["HOVER_TOOLTIP_ELEMENT"] = "hoverTooltipGuard";
10
- Guard["HOVER_TOOLTIPED_ELEMENT"] = "hoverTooltipedGuard";
8
+ Guard["FOCUS"] = "focus";
9
+ Guard["HOVER_TOOLTIP_ELEMENT"] = "hoverTooltipGuard";
10
+ Guard["HOVER_TOOLTIPED_ELEMENT"] = "hoverTooltipedGuard";
11
11
  })(Guard || (Guard = {}));
12
12
 
13
13
  const mgTooltipCss = ":host{display:inline-block}";
@@ -19,332 +19,332 @@ const mgTooltipCss = ":host{display:inline-block}";
19
19
  */
20
20
  const isButton = (element) => typeof element === 'object' && ['MG-BUTTON', 'BUTTON'].includes(element.tagName);
21
21
  const MgTooltip = /*@__PURE__*/ proxyCustomElement(class MgTooltip extends HTMLElement {
22
- constructor() {
23
- super();
24
- this.__registerHost();
25
- this.__attachShadow();
26
- /**
27
- * Show tooltip
28
- */
29
- this.show = () => {
30
- // Make the tooltip visible
31
- this.mgTooltipContent.dataset.show = '';
32
- // Enable the event listeners
33
- this.popper.setOptions(options => (Object.assign(Object.assign({}, options), { modifiers: [...options.modifiers, { name: 'eventListeners', enabled: true }] })));
34
- // hide when click outside
35
- // setTimeout is used to prevent event to trigger after creation
36
- setTimeout(() => {
37
- this.windows.forEach((localWindow) => {
38
- localWindow.addEventListener('click', this.clickOutside, false);
39
- localWindow.addEventListener('keydown', this.pressEscape, false);
40
- });
41
- }, 0);
42
- };
43
- /**
44
- * Hide tooltip
45
- */
46
- this.hide = () => {
47
- // Hide the tooltip
48
- this.mgTooltipContent.removeAttribute('data-show');
49
- // Disable the event listeners
50
- this.popper.setOptions(options => (Object.assign(Object.assign({}, options), { modifiers: [...options.modifiers, { name: 'eventListeners', enabled: false }] })));
51
- // Remove event listener
52
- this.windows.forEach((localWindow) => {
53
- localWindow.removeEventListener('click', this.clickOutside, false);
54
- localWindow.removeEventListener('keyboard', this.pressEscape, false);
55
- });
56
- };
57
- /**
58
- * Check if clicked outside of component and hidde tooltip
59
- * @param event - mouse event
60
- */
61
- this.clickOutside = (event) => {
62
- if (event.target.closest('mg-tooltip') !== this.element)
63
- this.setDisplay(false);
64
- };
65
- /**
66
- * Check if 'Escape' key is pressed of component and hidde tooltip
67
- * @param event - keyboard event
68
- */
69
- this.pressEscape = (event) => {
70
- if (event.code === 'Escape') {
71
- this.setDisplay(false);
72
- this.resetGuard();
73
- }
74
- };
75
- /**
76
- * Method to set display prop
77
- * @param newValue - display prop new value
78
- * @param condition - additionnal condition to apply display prop newValue
79
- */
80
- this.setDisplay = (newValue, condition = true) => {
81
- if (!this.disabled && condition)
82
- this.display = newValue;
83
- };
22
+ constructor() {
23
+ super();
24
+ this.__registerHost();
25
+ this.__attachShadow();
26
+ /**
27
+ * Show tooltip
28
+ */
29
+ this.show = () => {
30
+ // Make the tooltip visible
31
+ this.mgTooltipContent.dataset.show = '';
32
+ // Enable the event listeners
33
+ this.popper.setOptions(options => (Object.assign(Object.assign({}, options), { modifiers: [...options.modifiers, { name: 'eventListeners', enabled: true }] })));
34
+ // hide when click outside on nextTick to prevent event to trigger after creation
35
+ nextTick(() => {
36
+ this.windows.forEach((localWindow) => {
37
+ localWindow.addEventListener('click', this.clickOutside, false);
38
+ localWindow.addEventListener('keydown', this.pressEscape, false);
39
+ });
40
+ });
41
+ };
42
+ /**
43
+ * Hide tooltip
44
+ */
45
+ this.hide = () => {
46
+ // Hide the tooltip
47
+ this.mgTooltipContent.removeAttribute('data-show');
48
+ // Disable the event listeners
49
+ this.popper.setOptions(options => (Object.assign(Object.assign({}, options), { modifiers: [...options.modifiers, { name: 'eventListeners', enabled: false }] })));
50
+ // Remove event listener
51
+ this.windows.forEach((localWindow) => {
52
+ localWindow.removeEventListener('click', this.clickOutside, false);
53
+ localWindow.removeEventListener('keyboard', this.pressEscape, false);
54
+ });
55
+ };
56
+ /**
57
+ * Check if clicked outside of component and hidde tooltip
58
+ * @param event - mouse event
59
+ */
60
+ this.clickOutside = (event) => {
61
+ if (event.target.closest('mg-tooltip') !== this.element)
62
+ this.setDisplay(false);
63
+ };
64
+ /**
65
+ * Check if 'Escape' key is pressed of component and hidde tooltip
66
+ * @param event - keyboard event
67
+ */
68
+ this.pressEscape = (event) => {
69
+ if (event.code === 'Escape') {
70
+ this.setDisplay(false);
71
+ this.resetGuard();
72
+ }
73
+ };
74
+ /**
75
+ * Method to set display prop
76
+ * @param newValue - display prop new value
77
+ * @param condition - additionnal condition to apply display prop newValue
78
+ */
79
+ this.setDisplay = (newValue, condition = true) => {
80
+ if (!this.disabled && condition)
81
+ this.display = newValue;
82
+ };
83
+ /**
84
+ * Action for tooltip element and tooltiped element mouse listener
85
+ * @param elementGuard - tooltip element guard
86
+ * @param isMouseenter - mouseenter validation
87
+ * @param conditionalGuard - guard condition
88
+ */
89
+ this.tooltipMouseListenerAction = (elementGuard, isMouseenter, conditionalGuard) => {
90
+ // we mutate elementGuard
91
+ if (this.guard !== Guard.FOCUS) {
92
+ this.guard = elementGuard;
93
+ if (!isMouseenter) {
94
+ // process action in the next event loop macro task
95
+ setTimeout(() => {
96
+ this.setDisplay(isMouseenter, this.guard !== conditionalGuard);
97
+ this.resetGuard();
98
+ }, 100);
99
+ }
100
+ else if (this.guard === Guard.HOVER_TOOLTIPED_ELEMENT) {
101
+ this.setDisplay(isMouseenter);
102
+ }
103
+ }
104
+ };
105
+ /**
106
+ * Method to reset guard value
107
+ */
108
+ this.resetGuard = () => {
109
+ this.guard = undefined;
110
+ };
111
+ /**
112
+ * Update slot content when it is a mg-button
113
+ * @param mgButton - slotted mg-button
114
+ */
115
+ this.setMgButtonWrapper = (mgButton) => {
116
+ if (mgButton.disabled) {
117
+ const div = document.createElement('div');
118
+ div.classList.add('mg-c-tooltip__mg-button-wrapper');
119
+ mgButton.parentNode.insertBefore(div, mgButton);
120
+ div.appendChild(mgButton);
121
+ this.tooltipedElement = div;
122
+ }
123
+ else if (mgButton.parentElement.classList.contains('mg-c-tooltip__mg-button-wrapper')) {
124
+ this.element.firstElementChild.replaceWith(mgButton);
125
+ this.tooltipedElement = mgButton;
126
+ }
127
+ };
128
+ /**
129
+ * Init tooltip
130
+ * @param slotElement - slotted element
131
+ * @param interactiveElement - interactive element
132
+ */
133
+ this.initTooltip = (slotElement, interactiveElement) => {
134
+ // Add tabindex to slotted element if we can't find any interactive element
135
+ if (!this.disabled && !interactiveElement) {
136
+ this.hasCustomTabIndex = true;
137
+ slotElement.tabIndex = 0;
138
+ // Add role on non-interactive element to work with "aria-describedby" for screen readers
139
+ slotElement.setAttribute('role', 'button');
140
+ }
141
+ // Set aria-describedby
142
+ const ariaDescribedby = slotElement.getAttribute('aria-describedby');
143
+ if (ariaDescribedby === null) {
144
+ this.tooltipedElement.setAttribute('aria-describedby', this.identifier);
145
+ }
146
+ else {
147
+ // We ensure to have uniq ids
148
+ slotElement.setAttribute('aria-describedby', `${[...new Set([...ariaDescribedby.split(' '), this.identifier])].join(' ')}`);
149
+ }
150
+ // Create popperjs tooltip
151
+ this.popper = createPopper(this.tooltipedElement, this.mgTooltipContent, {
152
+ placement: this.placement,
153
+ strategy: 'fixed',
154
+ modifiers: [
155
+ {
156
+ name: 'offset',
157
+ options: {
158
+ offset: [0, 8],
159
+ },
160
+ },
161
+ {
162
+ name: 'flip',
163
+ options: {
164
+ fallbackPlacements: ['auto'],
165
+ },
166
+ },
167
+ ],
168
+ });
169
+ // Manage tooltipedElement focus/blur events
170
+ this.tooltipedElement.addEventListener('focus', () => {
171
+ this.guard = Guard.FOCUS;
172
+ this.setDisplay(true);
173
+ });
174
+ // as `click` event is the composition of `mousedown` and `mouseup` event,
175
+ // and `click` event trigger `focus` event after a success `mousedown` wich set the `guard` to `Guard.FOCUS`
176
+ // we reset the guard on `mouseup` event to unlock tooltip
177
+ this.tooltipedElement.addEventListener('mouseup', () => {
178
+ this.resetGuard();
179
+ });
180
+ this.tooltipedElement.addEventListener('blur', () => {
181
+ this.resetGuard();
182
+ this.setDisplay(false);
183
+ });
184
+ document.addEventListener('keydown', this.pressEscape);
185
+ // manage tooltipElement & tooltipedElement mouseenter/mouseleave events
186
+ ['mouseenter', 'mouseleave'].forEach(eventType => {
187
+ const isMouseenter = eventType === 'mouseenter';
188
+ [
189
+ { element: this.mgTooltipContent, action: () => this.tooltipMouseListenerAction(Guard.HOVER_TOOLTIP_ELEMENT, isMouseenter, Guard.HOVER_TOOLTIPED_ELEMENT) },
190
+ { element: this.tooltipedElement, action: () => this.tooltipMouseListenerAction(Guard.HOVER_TOOLTIPED_ELEMENT, isMouseenter, Guard.HOVER_TOOLTIP_ELEMENT) },
191
+ ].forEach(({ element, action }) => {
192
+ element.addEventListener(eventType, () => {
193
+ action();
194
+ });
195
+ });
196
+ });
197
+ };
198
+ this.identifier = createID('mg-tooltip');
199
+ this.message = undefined;
200
+ this.placement = 'bottom';
201
+ this.display = false;
202
+ this.disabled = false;
203
+ }
204
+ validateIdentifier() {
205
+ // use renderTooltipContent to update tooltip-content id
206
+ this.renderTooltipContent();
207
+ }
208
+ validateMessage(newValue) {
209
+ if (!isValidString(newValue)) {
210
+ throw new Error('<mg-tooltip> prop "message" is required.');
211
+ }
212
+ this.mgTooltipContent.message = newValue;
213
+ }
214
+ handleDisplay(newValue) {
215
+ if (newValue) {
216
+ this.show();
217
+ }
218
+ else {
219
+ this.hide();
220
+ }
221
+ }
222
+ validateDisabled(newValue) {
223
+ if (this.hasCustomTabIndex) {
224
+ if (newValue)
225
+ this.tooltipedElement.removeAttribute('tabindex');
226
+ else if (this.tooltipedElement.getAttribute('tabindex') === null)
227
+ this.tooltipedElement.setAttribute('tabindex', '0');
228
+ }
229
+ }
84
230
  /**
85
- * Action for tooltip element and tooltiped element mouse listener
86
- * @param elementGuard - tooltip element guard
87
- * @param isMouseenter - mouseenter validation
88
- * @param conditionalGuard - guard condition
231
+ * Render tooltip content element
89
232
  */
90
- this.tooltipMouseListenerAction = (elementGuard, isMouseenter, conditionalGuard) => {
91
- // we mutate elementGuard
92
- if (this.guard !== Guard.FOCUS) {
93
- this.guard = elementGuard;
94
- if (!isMouseenter) {
95
- setTimeout(() => {
96
- this.setDisplay(isMouseenter, this.guard !== conditionalGuard);
97
- this.resetGuard();
98
- }, 100);
233
+ renderTooltipContent() {
234
+ const mgTooltipContent = this.element.querySelector('mg-tooltip-content');
235
+ if (mgTooltipContent === null) {
236
+ const mgTooltipContent = document.createElement('mg-tooltip-content');
237
+ mgTooltipContent.setAttribute('slot', 'content');
238
+ mgTooltipContent.setAttribute('id', this.identifier);
239
+ const arrow = document.createElement('div');
240
+ arrow.setAttribute('slot', 'arrow');
241
+ arrow.dataset.popperArrow = '';
242
+ mgTooltipContent.appendChild(arrow);
243
+ // append tooltip element to component
244
+ this.element.appendChild(mgTooltipContent);
99
245
  }
100
- else if (this.guard === Guard.HOVER_TOOLTIPED_ELEMENT) {
101
- this.setDisplay(isMouseenter);
246
+ else {
247
+ mgTooltipContent.setAttribute('id', this.identifier);
102
248
  }
103
- }
104
- };
249
+ }
250
+ /*************
251
+ * Lifecycle *
252
+ *************/
105
253
  /**
106
- * Method to reset guard value
254
+ * set variables
107
255
  */
108
- this.resetGuard = () => {
109
- this.guard = undefined;
110
- };
256
+ componentWillLoad() {
257
+ // Get windows to attach events
258
+ this.windows = getWindows(window);
259
+ // Get tooltip element
260
+ this.renderTooltipContent();
261
+ this.mgTooltipContent = this.element.querySelector(`#${this.identifier}`);
262
+ //validate properties
263
+ this.validateDisabled(this.disabled);
264
+ this.validateMessage(this.message);
265
+ this.validateIdentifier();
266
+ }
111
267
  /**
112
- * Update slot content when it is a mg-button
113
- * @param mgButton - slotted mg-button
268
+ * Get slotted element
269
+ * Check if it already contain an interactive element, if not we need to add a tabIndex attribute
270
+ * We need to attach the focused element to the tooltip (aria-describedby)
114
271
  */
115
- this.setMgButtonWrapper = (mgButton) => {
116
- if (mgButton.disabled) {
117
- const div = document.createElement('div');
118
- div.classList.add('mg-c-tooltip__mg-button-wrapper');
119
- mgButton.parentNode.insertBefore(div, mgButton);
120
- div.appendChild(mgButton);
121
- this.tooltipedElement = div;
122
- }
123
- else if (mgButton.parentElement.classList.contains('mg-c-tooltip__mg-button-wrapper')) {
124
- this.element.firstElementChild.replaceWith(mgButton);
125
- this.tooltipedElement = mgButton;
126
- }
127
- };
272
+ componentDidLoad() {
273
+ var _a;
274
+ // get slotted element wich is not the tooltip
275
+ const slotElement = this.element.querySelector(`*:not(#${this.identifier})`);
276
+ // Get interactive element
277
+ const interactiveElement = slotElement.matches(focusableElements) ? slotElement : (_a = slotElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(focusableElements);
278
+ // define selected element to become tooltip selector
279
+ this.tooltipedElement = interactiveElement || slotElement;
280
+ // Check if slotted element is a disabled mg-button
281
+ // In this case we wrap the mg-button into a div to enable the tooltip
282
+ if (isButton(slotElement)) {
283
+ new MutationObserver(mutationList => {
284
+ if (mutationList.some(mutation => ['aria-disabled', 'disabled'].includes(mutation.attributeName))) {
285
+ this.setMgButtonWrapper(slotElement);
286
+ // Since Firefox doesn't trigger a "blur" event when the "disabled" attribute is added or removed from a button
287
+ // we have to manually unlock the guard because the "blur" handler of the tooltipedElement won't do it.
288
+ this.resetGuard();
289
+ this.initTooltip(slotElement, interactiveElement);
290
+ }
291
+ }).observe(slotElement, { attributes: true });
292
+ this.setMgButtonWrapper(slotElement);
293
+ }
294
+ // Init Tooltip
295
+ this.initTooltip(slotElement, interactiveElement);
296
+ this.handleDisplay(this.display);
297
+ }
128
298
  /**
129
- * Init tooltip
130
- * @param slotElement - slotted element
131
- * @param interactiveElement - interactive element
299
+ * update popper position after props change on component did update hook to benefit from render ended
132
300
  */
133
- this.initTooltip = (slotElement, interactiveElement) => {
134
- // Add tabindex to slotted element if we can't find any interactive element
135
- if (!this.disabled && !interactiveElement) {
136
- this.hasCustomTabIndex = true;
137
- slotElement.tabIndex = 0;
138
- // Add role on non-interactive element to work with "aria-describedby" for screen readers
139
- slotElement.setAttribute('role', 'button');
140
- }
141
- // Set aria-describedby
142
- const ariaDescribedby = slotElement.getAttribute('aria-describedby');
143
- if (ariaDescribedby === null) {
144
- this.tooltipedElement.setAttribute('aria-describedby', this.identifier);
145
- }
146
- else {
147
- // We ensure to have uniq ids
148
- slotElement.setAttribute('aria-describedby', `${[...new Set([...ariaDescribedby.split(' '), this.identifier])].join(' ')}`);
149
- }
150
- // Create popperjs tooltip
151
- this.popper = createPopper(this.tooltipedElement, this.mgTooltipContent, {
152
- placement: this.placement,
153
- strategy: 'fixed',
154
- modifiers: [
155
- {
156
- name: 'offset',
157
- options: {
158
- offset: [0, 8],
159
- },
160
- },
161
- {
162
- name: 'flip',
163
- options: {
164
- fallbackPlacements: ['auto'],
165
- },
166
- },
167
- ],
168
- });
169
- // Manage tooltipedElement focus/blur events
170
- this.tooltipedElement.addEventListener('focus', () => {
171
- this.guard = Guard.FOCUS;
172
- this.setDisplay(true);
173
- });
174
- // as `click` event is the composition of `mousedown` and `mouseup` event,
175
- // and `click` event trigger `focus` event after a success `mousedown` wich set the `guard` to `Guard.FOCUS`
176
- // we reset the guard on `mouseup` event to unlock tooltip
177
- this.tooltipedElement.addEventListener('mouseup', () => {
178
- this.resetGuard();
179
- });
180
- this.tooltipedElement.addEventListener('blur', () => {
181
- this.resetGuard();
182
- this.setDisplay(false);
183
- });
184
- document.addEventListener('keydown', this.pressEscape);
185
- // manage tooltipElement & tooltipedElement mouseenter/mouseleave events
186
- ['mouseenter', 'mouseleave'].forEach(eventType => {
187
- const isMouseenter = eventType === 'mouseenter';
188
- [
189
- { element: this.mgTooltipContent, action: () => this.tooltipMouseListenerAction(Guard.HOVER_TOOLTIP_ELEMENT, isMouseenter, Guard.HOVER_TOOLTIPED_ELEMENT) },
190
- { element: this.tooltipedElement, action: () => this.tooltipMouseListenerAction(Guard.HOVER_TOOLTIPED_ELEMENT, isMouseenter, Guard.HOVER_TOOLTIP_ELEMENT) },
191
- ].forEach(({ element, action }) => {
192
- element.addEventListener(eventType, () => {
193
- action();
194
- });
195
- });
196
- });
197
- };
198
- this.identifier = createID('mg-tooltip');
199
- this.message = undefined;
200
- this.placement = 'bottom';
201
- this.display = false;
202
- this.disabled = false;
203
- }
204
- validateIdentifier() {
205
- // use renderTooltipContent to update tooltip-content id
206
- this.renderTooltipContent();
207
- }
208
- validateMessage(newValue) {
209
- if (!isValidString(newValue)) {
210
- throw new Error('<mg-tooltip> prop "message" is required.');
211
- }
212
- this.mgTooltipContent.message = newValue;
213
- }
214
- handleDisplay(newValue) {
215
- if (newValue) {
216
- this.show();
301
+ componentDidUpdate() {
302
+ this.popper.update();
217
303
  }
218
- else {
219
- this.hide();
220
- }
221
- }
222
- validateDisabled(newValue) {
223
- if (this.hasCustomTabIndex) {
224
- if (newValue)
225
- this.tooltipedElement.removeAttribute('tabindex');
226
- else if (this.tooltipedElement.getAttribute('tabindex') === null)
227
- this.tooltipedElement.setAttribute('tabindex', '0');
228
- }
229
- }
230
- /**
231
- * Render tooltip content element
232
- */
233
- renderTooltipContent() {
234
- const mgTooltipContent = this.element.querySelector('mg-tooltip-content');
235
- if (mgTooltipContent === null) {
236
- const mgTooltipContent = document.createElement('mg-tooltip-content');
237
- mgTooltipContent.setAttribute('slot', 'content');
238
- mgTooltipContent.setAttribute('id', this.identifier);
239
- const arrow = document.createElement('div');
240
- arrow.setAttribute('slot', 'arrow');
241
- arrow.dataset.popperArrow = '';
242
- mgTooltipContent.appendChild(arrow);
243
- // append tooltip element to component
244
- this.element.appendChild(mgTooltipContent);
245
- }
246
- else {
247
- mgTooltipContent.setAttribute('id', this.identifier);
248
- }
249
- }
250
- /*************
251
- * Lifecycle *
252
- *************/
253
- /**
254
- * set variables
255
- */
256
- componentWillLoad() {
257
- // Get windows to attach events
258
- this.windows = getWindows(window);
259
- // Get tooltip element
260
- this.renderTooltipContent();
261
- this.mgTooltipContent = this.element.querySelector(`#${this.identifier}`);
262
- //validate properties
263
- this.validateDisabled(this.disabled);
264
- this.validateMessage(this.message);
265
- this.validateIdentifier();
266
- }
267
- /**
268
- * Get slotted element
269
- * Check if it already contain an interactive element, if not we need to add a tabIndex attribute
270
- * We need to attach the focused element to the tooltip (aria-describedby)
271
- */
272
- componentDidLoad() {
273
- var _a;
274
- // get slotted element wich is not the tooltip
275
- const slotElement = this.element.querySelector(`*:not(#${this.identifier})`);
276
- // Get interactive element
277
- const interactiveElement = slotElement.matches(focusableElements) ? slotElement : (_a = slotElement.shadowRoot) === null || _a === void 0 ? void 0 : _a.querySelector(focusableElements);
278
- // define selected element to become tooltip selector
279
- this.tooltipedElement = interactiveElement || slotElement;
280
- // Check if slotted element is a disabled mg-button
281
- // In this case we wrap the mg-button into a div to enable the tooltip
282
- if (isButton(slotElement)) {
283
- new MutationObserver(mutationList => {
284
- if (mutationList.some(mutation => ['aria-disabled', 'disabled'].includes(mutation.attributeName))) {
285
- this.setMgButtonWrapper(slotElement);
286
- // Since Firefox doesn't trigger a "blur" event when the "disabled" attribute is added or removed from a button
287
- // we have to manually unlock the guard because the "blur" handler of the tooltipedElement won't do it.
288
- this.resetGuard();
289
- this.initTooltip(slotElement, interactiveElement);
290
- }
291
- }).observe(slotElement, { attributes: true });
292
- this.setMgButtonWrapper(slotElement);
304
+ /**
305
+ * Render
306
+ * @returns HTML Element
307
+ */
308
+ render() {
309
+ return (h(Host, null, h("slot", null), h("slot", { name: "content" })));
293
310
  }
294
- // Init Tooltip
295
- this.initTooltip(slotElement, interactiveElement);
296
- this.handleDisplay(this.display);
297
- }
298
- /**
299
- * update popper position after props change on component did update hook to benefit from render ended
300
- */
301
- componentDidUpdate() {
302
- this.popper.update();
303
- }
304
- /**
305
- * Render
306
- * @returns HTML Element
307
- */
308
- render() {
309
- return (h(Host, null, h("slot", null), h("slot", { name: "content" })));
310
- }
311
- get element() { return this; }
312
- static get watchers() { return {
313
- "identifier": ["validateIdentifier"],
314
- "message": ["validateMessage"],
315
- "display": ["handleDisplay"],
316
- "disabled": ["validateDisabled"]
317
- }; }
318
- static get style() { return mgTooltipCss; }
311
+ get element() { return this; }
312
+ static get watchers() { return {
313
+ "identifier": ["validateIdentifier"],
314
+ "message": ["validateMessage"],
315
+ "display": ["handleDisplay"],
316
+ "disabled": ["validateDisabled"]
317
+ }; }
318
+ static get style() { return mgTooltipCss; }
319
319
  }, [1, "mg-tooltip", {
320
- "identifier": [1],
321
- "message": [1],
322
- "placement": [1],
323
- "display": [1028],
324
- "disabled": [4]
325
- }, undefined, {
326
- "identifier": ["validateIdentifier"],
327
- "message": ["validateMessage"],
328
- "display": ["handleDisplay"],
329
- "disabled": ["validateDisabled"]
330
- }]);
320
+ "identifier": [1],
321
+ "message": [1],
322
+ "placement": [1],
323
+ "display": [1028],
324
+ "disabled": [4]
325
+ }, undefined, {
326
+ "identifier": ["validateIdentifier"],
327
+ "message": ["validateMessage"],
328
+ "display": ["handleDisplay"],
329
+ "disabled": ["validateDisabled"]
330
+ }]);
331
331
  function defineCustomElement() {
332
- if (typeof customElements === "undefined") {
333
- return;
334
- }
335
- const components = ["mg-tooltip", "mg-tooltip-content"];
336
- components.forEach(tagName => { switch (tagName) {
337
- case "mg-tooltip":
338
- if (!customElements.get(tagName)) {
339
- customElements.define(tagName, MgTooltip);
340
- }
341
- break;
342
- case "mg-tooltip-content":
343
- if (!customElements.get(tagName)) {
344
- defineCustomElement$1();
345
- }
346
- break;
347
- } });
332
+ if (typeof customElements === "undefined") {
333
+ return;
334
+ }
335
+ const components = ["mg-tooltip", "mg-tooltip-content"];
336
+ components.forEach(tagName => { switch (tagName) {
337
+ case "mg-tooltip":
338
+ if (!customElements.get(tagName)) {
339
+ customElements.define(tagName, MgTooltip);
340
+ }
341
+ break;
342
+ case "mg-tooltip-content":
343
+ if (!customElements.get(tagName)) {
344
+ defineCustomElement$1();
345
+ }
346
+ break;
347
+ } });
348
348
  }
349
349
  defineCustomElement();
350
350