@mgdis/mg-components 5.19.2 → 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 (496) hide show
  1. package/dist/cjs/{components.utils-dc9c8a53.js → components.utils-cd908d4e.js} +102 -99
  2. package/dist/cjs/components.utils-cd908d4e.js.map +1 -0
  3. package/dist/cjs/{index-c042e24b.js → index-8532b5e9.js} +320 -137
  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 +5130 -5057
  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 +193 -183
  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 -347
  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 +8 -0
  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 +789 -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 +589 -572
  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 +779 -767
  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 +537 -520
  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 +566 -550
  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 +701 -689
  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.conf.js +0 -4
  64. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.conf.js.map +1 -1
  65. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js +771 -754
  66. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js.map +1 -1
  67. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js +706 -689
  68. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js.map +1 -1
  69. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +527 -522
  70. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js.map +1 -1
  71. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js +2 -2
  72. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js.map +1 -1
  73. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js +263 -263
  74. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js.map +1 -1
  75. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js +6 -6
  76. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js.map +1 -1
  77. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js +423 -423
  78. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js.map +1 -1
  79. package/dist/collection/components/molecules/mg-action-more/mg-action-more.conf.js.map +1 -1
  80. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js +214 -214
  81. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js.map +1 -1
  82. package/dist/collection/components/molecules/mg-details/mg-details.js +155 -150
  83. package/dist/collection/components/molecules/mg-details/mg-details.js.map +1 -1
  84. package/dist/collection/components/molecules/mg-form/mg-form.js +332 -335
  85. package/dist/collection/components/molecules/mg-form/mg-form.js.map +1 -1
  86. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +85 -85
  87. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js.map +1 -1
  88. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js +189 -189
  89. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js.map +1 -1
  90. package/dist/collection/components/molecules/mg-message/mg-message.js +325 -304
  91. package/dist/collection/components/molecules/mg-message/mg-message.js.map +1 -1
  92. package/dist/collection/components/molecules/mg-modal/mg-modal.js +317 -317
  93. package/dist/collection/components/molecules/mg-modal/mg-modal.js.map +1 -1
  94. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js +2 -2
  95. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js.map +1 -1
  96. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +216 -216
  97. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js.map +1 -1
  98. package/dist/collection/components/molecules/mg-panel/mg-panel.js +409 -399
  99. package/dist/collection/components/molecules/mg-panel/mg-panel.js.map +1 -1
  100. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js +91 -91
  101. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js.map +1 -1
  102. package/dist/collection/components/molecules/mg-popover/mg-popover.js +336 -329
  103. package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -1
  104. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +94 -94
  105. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js.map +1 -1
  106. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js +4 -4
  107. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js.map +1 -1
  108. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +348 -343
  109. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js.map +1 -1
  110. package/dist/collection/locales/fr/messages.json +4 -4
  111. package/dist/collection/locales/index.spec.js +20 -20
  112. package/dist/collection/locales/index.spec.js.map +1 -1
  113. package/dist/collection/utils/behaviors.utils.js +127 -127
  114. package/dist/collection/utils/behaviors.utils.js.map +1 -1
  115. package/dist/collection/utils/behaviors.utils.spec.js +42 -42
  116. package/dist/collection/utils/behaviors.utils.spec.js.map +1 -1
  117. package/dist/collection/utils/components.utils.js +77 -75
  118. package/dist/collection/utils/components.utils.js.map +1 -1
  119. package/dist/collection/utils/components.utils.spec.js +150 -135
  120. package/dist/collection/utils/components.utils.spec.js.map +1 -1
  121. package/dist/collection/utils/e2e.test.utils.js +21 -21
  122. package/dist/collection/utils/e2e.test.utils.js.map +1 -1
  123. package/dist/collection/utils/locale.utils.js +17 -17
  124. package/dist/collection/utils/locale.utils.js.map +1 -1
  125. package/dist/collection/utils/locale.utils.spec.js +45 -45
  126. package/dist/collection/utils/locale.utils.spec.js.map +1 -1
  127. package/dist/collection/utils/playwright.e2e.test.utils.js +41 -41
  128. package/dist/collection/utils/playwright.e2e.test.utils.js.map +1 -1
  129. package/dist/collection/utils/playwright.fixture.js +24 -0
  130. package/dist/collection/utils/playwright.fixture.js.map +1 -0
  131. package/dist/collection/utils/unit.test.utils.js +50 -50
  132. package/dist/collection/utils/unit.test.utils.js.map +1 -1
  133. package/dist/components/MgInput.js +105 -97
  134. package/dist/components/MgInput.js.map +1 -1
  135. package/dist/components/components.utils.js +78 -76
  136. package/dist/components/components.utils.js.map +1 -1
  137. package/dist/components/index2.js +21 -21
  138. package/dist/components/index2.js.map +1 -1
  139. package/dist/components/mg-action-more.d.ts +2 -2
  140. package/dist/components/mg-action-more.js +173 -173
  141. package/dist/components/mg-action-more.js.map +1 -1
  142. package/dist/components/mg-badge.d.ts +2 -2
  143. package/dist/components/mg-badge2.js +83 -83
  144. package/dist/components/mg-badge2.js.map +1 -1
  145. package/dist/components/mg-button.d.ts +2 -2
  146. package/dist/components/mg-button2.js +182 -167
  147. package/dist/components/mg-button2.js.map +1 -1
  148. package/dist/components/mg-card.d.ts +2 -2
  149. package/dist/components/mg-card2.js +77 -77
  150. package/dist/components/mg-card2.js.map +1 -1
  151. package/dist/components/mg-character-left.d.ts +2 -2
  152. package/dist/components/mg-character-left2.js +50 -50
  153. package/dist/components/mg-character-left2.js.map +1 -1
  154. package/dist/components/mg-details.d.ts +2 -2
  155. package/dist/components/mg-details.js +69 -69
  156. package/dist/components/mg-details.js.map +1 -1
  157. package/dist/components/mg-divider.d.ts +2 -2
  158. package/dist/components/mg-divider.js +30 -30
  159. package/dist/components/mg-divider.js.map +1 -1
  160. package/dist/components/mg-form.d.ts +2 -2
  161. package/dist/components/mg-form.js +171 -179
  162. package/dist/components/mg-form.js.map +1 -1
  163. package/dist/components/mg-icon.d.ts +2 -2
  164. package/dist/components/mg-icon2.js +327 -309
  165. package/dist/components/mg-icon2.js.map +1 -1
  166. package/dist/components/mg-illustrated-message.d.ts +2 -2
  167. package/dist/components/mg-illustrated-message.js +51 -51
  168. package/dist/components/mg-illustrated-message.js.map +1 -1
  169. package/dist/components/mg-input-checkbox-paginated.d.ts +2 -2
  170. package/dist/components/mg-input-checkbox-paginated2.js +170 -170
  171. package/dist/components/mg-input-checkbox-paginated2.js.map +1 -1
  172. package/dist/components/mg-input-checkbox.d.ts +2 -2
  173. package/dist/components/mg-input-checkbox.js +478 -480
  174. package/dist/components/mg-input-checkbox.js.map +1 -1
  175. package/dist/components/mg-input-date.d.ts +2 -2
  176. package/dist/components/mg-input-date.js +266 -260
  177. package/dist/components/mg-input-date.js.map +1 -1
  178. package/dist/components/mg-input-numeric.d.ts +2 -2
  179. package/dist/components/mg-input-numeric.js +354 -348
  180. package/dist/components/mg-input-numeric.js.map +1 -1
  181. package/dist/components/mg-input-password.d.ts +2 -2
  182. package/dist/components/mg-input-password.js +205 -199
  183. package/dist/components/mg-input-password.js.map +1 -1
  184. package/dist/components/mg-input-radio.d.ts +2 -2
  185. package/dist/components/mg-input-radio.js +236 -231
  186. package/dist/components/mg-input-radio.js.map +1 -1
  187. package/dist/components/mg-input-select.d.ts +2 -2
  188. package/dist/components/mg-input-select2.js +316 -310
  189. package/dist/components/mg-input-select2.js.map +1 -1
  190. package/dist/components/mg-input-text.d.ts +2 -2
  191. package/dist/components/mg-input-text2.js +306 -300
  192. package/dist/components/mg-input-text2.js.map +1 -1
  193. package/dist/components/mg-input-textarea.d.ts +2 -2
  194. package/dist/components/mg-input-textarea.js +277 -271
  195. package/dist/components/mg-input-textarea.js.map +1 -1
  196. package/dist/components/mg-input-title.d.ts +2 -2
  197. package/dist/components/mg-input-title2.js +60 -60
  198. package/dist/components/mg-input-title2.js.map +1 -1
  199. package/dist/components/mg-input-toggle.d.ts +2 -2
  200. package/dist/components/mg-input-toggle.js +251 -251
  201. package/dist/components/mg-input-toggle.js.map +1 -1
  202. package/dist/components/mg-item-more.d.ts +2 -2
  203. package/dist/components/mg-item-more.js +285 -285
  204. package/dist/components/mg-item-more.js.map +1 -1
  205. package/dist/components/mg-menu-item.d.ts +2 -2
  206. package/dist/components/mg-menu-item2.js +345 -345
  207. package/dist/components/mg-menu-item2.js.map +1 -1
  208. package/dist/components/mg-menu.conf.js +2 -2
  209. package/dist/components/mg-menu.conf.js.map +1 -1
  210. package/dist/components/mg-menu.d.ts +2 -2
  211. package/dist/components/mg-menu2.js +176 -176
  212. package/dist/components/mg-menu2.js.map +1 -1
  213. package/dist/components/mg-message.d.ts +2 -2
  214. package/dist/components/mg-message.js +198 -193
  215. package/dist/components/mg-message.js.map +1 -1
  216. package/dist/components/mg-modal.d.ts +2 -2
  217. package/dist/components/mg-modal.js +198 -198
  218. package/dist/components/mg-modal.js.map +1 -1
  219. package/dist/components/mg-pagination.d.ts +2 -2
  220. package/dist/components/mg-pagination2.js +133 -133
  221. package/dist/components/mg-pagination2.js.map +1 -1
  222. package/dist/components/mg-panel.d.ts +2 -2
  223. package/dist/components/mg-panel.js +238 -238
  224. package/dist/components/mg-panel.js.map +1 -1
  225. package/dist/components/mg-popover-content.d.ts +2 -2
  226. package/dist/components/mg-popover-content2.js +70 -70
  227. package/dist/components/mg-popover-content2.js.map +1 -1
  228. package/dist/components/mg-popover.d.ts +2 -2
  229. package/dist/components/mg-popover2.js +224 -222
  230. package/dist/components/mg-popover2.js.map +1 -1
  231. package/dist/components/mg-skip-links.d.ts +2 -2
  232. package/dist/components/mg-skip-links.js +57 -57
  233. package/dist/components/mg-skip-links.js.map +1 -1
  234. package/dist/components/mg-tabs.d.ts +2 -2
  235. package/dist/components/mg-tabs.js +243 -243
  236. package/dist/components/mg-tabs.js.map +1 -1
  237. package/dist/components/mg-tag.d.ts +2 -2
  238. package/dist/components/mg-tag.js +97 -97
  239. package/dist/components/mg-tag.js.map +1 -1
  240. package/dist/components/mg-tooltip-content.d.ts +2 -2
  241. package/dist/components/mg-tooltip-content2.js +30 -30
  242. package/dist/components/mg-tooltip-content2.js.map +1 -1
  243. package/dist/components/mg-tooltip.d.ts +2 -2
  244. package/dist/components/mg-tooltip2.js +316 -316
  245. package/dist/components/mg-tooltip2.js.map +1 -1
  246. package/dist/components/popper.js +6 -12
  247. package/dist/components/popper.js.map +1 -1
  248. package/dist/esm/{components.utils-0f76010d.js → components.utils-0d67c31c.js} +102 -100
  249. package/dist/esm/components.utils-0d67c31c.js.map +1 -0
  250. package/dist/esm/{index-ce01e63b.js → index-f34a3a2c.js} +320 -137
  251. package/dist/esm/index-f34a3a2c.js.map +1 -0
  252. package/dist/esm/loader.js +3 -3
  253. package/dist/esm/mg-action-more_34.entry.js +5130 -5057
  254. package/dist/esm/mg-action-more_34.entry.js.map +1 -1
  255. package/dist/esm/mg-components.js +4 -4
  256. package/dist/esm/mg-components.js.map +1 -1
  257. package/dist/esm/mg-item-more.entry.js +224 -224
  258. package/dist/esm/mg-item-more.entry.js.map +1 -1
  259. package/dist/mg-components/locales/fr/messages.json +4 -4
  260. package/dist/mg-components/mg-components.css +1 -1
  261. package/dist/mg-components/mg-components.esm.js +1 -1
  262. package/dist/mg-components/mg-components.esm.js.map +1 -1
  263. package/dist/mg-components/p-629454f7.entry.js +2 -0
  264. package/dist/mg-components/p-629454f7.entry.js.map +1 -0
  265. package/dist/mg-components/p-7444ff40.js +3 -0
  266. package/dist/mg-components/p-7444ff40.js.map +1 -0
  267. package/dist/mg-components/p-af42d17b.js +2 -0
  268. package/dist/mg-components/p-af42d17b.js.map +1 -0
  269. package/dist/mg-components/{p-01ebc95a.entry.js → p-e0fb0f3c.entry.js} +2 -2
  270. package/dist/mg-components/p-e0fb0f3c.entry.js.map +1 -0
  271. package/dist/types/assets/icons/index.d.ts +193 -0
  272. package/dist/types/components/atoms/mg-badge/mg-badge.d.ts +41 -41
  273. package/dist/types/components/atoms/mg-button/mg-button.d.ts +100 -96
  274. package/dist/types/components/atoms/mg-card/mg-card.d.ts +39 -39
  275. package/dist/types/components/atoms/mg-character-left/mg-character-left.d.ts +37 -37
  276. package/dist/types/components/atoms/mg-divider/mg-divider.d.ts +12 -12
  277. package/dist/types/components/atoms/mg-icon/mg-icon.d.ts +56 -56
  278. package/dist/types/components/atoms/mg-input-title/mg-input-title.d.ts +34 -34
  279. package/dist/types/components/atoms/mg-tag/mg-tag.d.ts +51 -51
  280. package/dist/types/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.d.ts +12 -12
  281. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.conf.d.ts +3 -3
  282. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +113 -113
  283. package/dist/types/components/molecules/inputs/MgInput.conf.d.ts +10 -3
  284. package/dist/types/components/molecules/inputs/MgInput.d.ts +17 -16
  285. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.d.ts +100 -100
  286. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.d.ts +26 -26
  287. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.d.ts +262 -260
  288. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.conf.d.ts +4 -4
  289. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.d.ts +150 -149
  290. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.d.ts +4 -4
  291. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.d.ts +223 -222
  292. package/dist/types/components/molecules/inputs/mg-input-password/mg-input-password.d.ts +142 -141
  293. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.conf.d.ts +3 -3
  294. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.d.ts +152 -151
  295. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.conf.d.ts +6 -6
  296. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.d.ts +193 -192
  297. package/dist/types/components/molecules/inputs/mg-input-text/mg-input-text.conf.d.ts +1 -6
  298. package/dist/types/components/molecules/inputs/mg-input-text/mg-input-text.d.ts +195 -194
  299. package/dist/types/components/molecules/inputs/mg-input-textarea/mg-input-textarea.d.ts +181 -180
  300. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.conf.d.ts +2 -2
  301. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.d.ts +141 -141
  302. package/dist/types/components/molecules/menu/mg-menu/mg-menu.conf.d.ts +2 -2
  303. package/dist/types/components/molecules/menu/mg-menu/mg-menu.d.ts +97 -97
  304. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.conf.d.ts +6 -6
  305. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.d.ts +179 -179
  306. package/dist/types/components/molecules/mg-action-more/mg-action-more.conf.d.ts +12 -11
  307. package/dist/types/components/molecules/mg-action-more/mg-action-more.d.ts +72 -72
  308. package/dist/types/components/molecules/mg-details/mg-details.d.ts +45 -45
  309. package/dist/types/components/molecules/mg-form/mg-form.d.ts +103 -104
  310. package/dist/types/components/molecules/mg-illustrated-message/mg-illustrated-message.d.ts +27 -27
  311. package/dist/types/components/molecules/mg-item-more/mg-item-more.conf.d.ts +5 -5
  312. package/dist/types/components/molecules/mg-item-more/mg-item-more.d.ts +61 -61
  313. package/dist/types/components/molecules/mg-message/mg-message.d.ts +100 -93
  314. package/dist/types/components/molecules/mg-modal/mg-modal.d.ts +107 -107
  315. package/dist/types/components/molecules/mg-pagination/mg-pagination.conf.d.ts +2 -2
  316. package/dist/types/components/molecules/mg-pagination/mg-pagination.d.ts +74 -74
  317. package/dist/types/components/molecules/mg-panel/mg-panel.d.ts +149 -149
  318. package/dist/types/components/molecules/mg-popover/mg-popover-content/mg-popover-content.d.ts +43 -43
  319. package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +88 -88
  320. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.conf.d.ts +2 -2
  321. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.d.ts +40 -40
  322. package/dist/types/components/molecules/mg-tabs/mg-tabs.conf.d.ts +10 -10
  323. package/dist/types/components/molecules/mg-tabs/mg-tabs.d.ts +118 -118
  324. package/dist/types/components.d.ts +296 -32
  325. package/dist/types/locales/index.d.ts +172 -172
  326. package/dist/types/stencil-public-runtime.d.ts +29 -0
  327. package/dist/types/utils/behaviors.utils.d.ts +65 -65
  328. package/dist/types/utils/components.utils.d.ts +32 -26
  329. package/dist/types/utils/locale.utils.d.ts +2 -2
  330. package/dist/types/utils/playwright.fixture.d.ts +3 -0
  331. package/dist/types/utils/unit.test.utils.d.ts +5 -5
  332. package/package.json +33 -47
  333. package/dist/cjs/components.utils-dc9c8a53.js.map +0 -1
  334. package/dist/cjs/index-c042e24b.js.map +0 -1
  335. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js +0 -33
  336. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js.map +0 -1
  337. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js +0 -70
  338. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js.map +0 -1
  339. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js +0 -91
  340. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js.map +0 -1
  341. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js +0 -142
  342. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js.map +0 -1
  343. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js +0 -36
  344. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js.map +0 -1
  345. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js +0 -43
  346. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js.map +0 -1
  347. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js +0 -15
  348. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js.map +0 -1
  349. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js +0 -42
  350. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js.map +0 -1
  351. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js +0 -11
  352. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js.map +0 -1
  353. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js +0 -14
  354. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js.map +0 -1
  355. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js +0 -55
  356. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js.map +0 -1
  357. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js +0 -84
  358. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js.map +0 -1
  359. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js +0 -12
  360. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js.map +0 -1
  361. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js +0 -23
  362. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js.map +0 -1
  363. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js +0 -23
  364. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js.map +0 -1
  365. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js +0 -71
  366. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js.map +0 -1
  367. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js +0 -138
  368. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js.map +0 -1
  369. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js +0 -272
  370. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js.map +0 -1
  371. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js +0 -237
  372. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js.map +0 -1
  373. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js +0 -640
  374. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js.map +0 -1
  375. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js +0 -123
  376. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js.map +0 -1
  377. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js +0 -379
  378. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js.map +0 -1
  379. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js +0 -212
  380. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js.map +0 -1
  381. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js +0 -456
  382. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js.map +0 -1
  383. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js +0 -115
  384. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js.map +0 -1
  385. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js +0 -289
  386. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js.map +0 -1
  387. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js +0 -154
  388. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js.map +0 -1
  389. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js +0 -355
  390. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js.map +0 -1
  391. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js +0 -194
  392. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js.map +0 -1
  393. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js +0 -399
  394. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js.map +0 -1
  395. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js +0 -147
  396. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js.map +0 -1
  397. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js +0 -353
  398. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js.map +0 -1
  399. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js +0 -129
  400. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js.map +0 -1
  401. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js +0 -318
  402. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js.map +0 -1
  403. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js +0 -108
  404. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js.map +0 -1
  405. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js +0 -247
  406. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js.map +0 -1
  407. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js +0 -239
  408. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js.map +0 -1
  409. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js +0 -175
  410. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js.map +0 -1
  411. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js +0 -100
  412. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js.map +0 -1
  413. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js +0 -295
  414. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js.map +0 -1
  415. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js +0 -128
  416. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js.map +0 -1
  417. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js +0 -187
  418. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js.map +0 -1
  419. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js +0 -30
  420. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js.map +0 -1
  421. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js +0 -42
  422. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js.map +0 -1
  423. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js +0 -169
  424. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js.map +0 -1
  425. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js +0 -277
  426. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js.map +0 -1
  427. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js +0 -39
  428. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js.map +0 -1
  429. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js +0 -36
  430. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js.map +0 -1
  431. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js +0 -85
  432. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js.map +0 -1
  433. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js +0 -106
  434. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js.map +0 -1
  435. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js +0 -64
  436. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js.map +0 -1
  437. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js +0 -109
  438. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js.map +0 -1
  439. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js +0 -62
  440. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js.map +0 -1
  441. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js +0 -40
  442. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js.map +0 -1
  443. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js +0 -26
  444. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js.map +0 -1
  445. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js +0 -122
  446. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js.map +0 -1
  447. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js +0 -57
  448. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js.map +0 -1
  449. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js +0 -121
  450. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js.map +0 -1
  451. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js +0 -106
  452. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js.map +0 -1
  453. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js +0 -213
  454. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js.map +0 -1
  455. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js +0 -140
  456. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js.map +0 -1
  457. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js +0 -142
  458. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js.map +0 -1
  459. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js +0 -55
  460. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js.map +0 -1
  461. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js +0 -55
  462. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js.map +0 -1
  463. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js +0 -76
  464. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js.map +0 -1
  465. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js +0 -332
  466. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js.map +0 -1
  467. package/dist/collection/utils/stencil.e2e.test.utils.js +0 -33
  468. package/dist/collection/utils/stencil.e2e.test.utils.js.map +0 -1
  469. package/dist/esm/components.utils-0f76010d.js.map +0 -1
  470. package/dist/esm/index-ce01e63b.js.map +0 -1
  471. package/dist/mg-components/p-01ebc95a.entry.js.map +0 -1
  472. package/dist/mg-components/p-1aa89acf.js +0 -3
  473. package/dist/mg-components/p-1aa89acf.js.map +0 -1
  474. package/dist/mg-components/p-71a5a848.entry.js +0 -2
  475. package/dist/mg-components/p-71a5a848.entry.js.map +0 -1
  476. package/dist/mg-components/p-c9e2c669.js +0 -2
  477. package/dist/mg-components/p-c9e2c669.js.map +0 -1
  478. package/dist/types/components/atoms/mg-badge/test/mg-badge.e2e.playwright.d.ts +0 -1
  479. package/dist/types/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.d.ts +0 -1
  480. package/dist/types/components/atoms/mg-tag/test/mg-tag.e2e.playwright.d.ts +0 -1
  481. package/dist/types/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.d.ts +0 -1
  482. package/dist/types/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.d.ts +0 -1
  483. package/dist/types/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.d.ts +0 -1
  484. package/dist/types/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.d.ts +0 -1
  485. package/dist/types/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.d.ts +0 -1
  486. package/dist/types/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.d.ts +0 -2
  487. package/dist/types/components/molecules/mg-details/test/mg-details.e2e.playwright.d.ts +0 -1
  488. package/dist/types/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.d.ts +0 -1
  489. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.playwright.d.ts +0 -1
  490. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.template.d.ts +0 -12
  491. package/dist/types/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.d.ts +0 -1
  492. package/dist/types/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.d.ts +0 -1
  493. package/dist/types/components/molecules/mg-panel/test/mg-panel.e2e.playwright.d.ts +0 -1
  494. package/dist/types/components/molecules/mg-popover/test/mg-popover.e2e.playwright.d.ts +0 -1
  495. package/dist/types/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.d.ts +0 -1
  496. package/dist/types/utils/stencil.e2e.test.utils.d.ts +0 -14
@@ -1,187 +0,0 @@
1
- import { h } from "@stencil/core";
2
- import { newSpecPage } from "@stencil/core/testing";
3
- import { forcePopoverId, mockConsoleError, setupResizeObserverMock } from "../../../../utils/unit.test.utils";
4
- import { Status } from "../../menu/mg-menu-item/mg-menu-item.conf";
5
- import { MgButton } from "../../../atoms/mg-button/mg-button";
6
- import { MgPopover } from "../../mg-popover/mg-popover";
7
- import { MgActionMore } from "../mg-action-more";
8
- import { MgMenu } from "../../menu/mg-menu/mg-menu";
9
- import { MgMenuItem } from "../../menu/mg-menu-item/mg-menu-item";
10
- import { MgPopoverContent } from "../../mg-popover/mg-popover-content/mg-popover-content";
11
- mockConsoleError();
12
- const getPage = async (args) => {
13
- const page = await newSpecPage({
14
- components: [MgActionMore, MgPopover, MgPopoverContent, MgButton, MgMenu, MgMenuItem],
15
- template: () => h("mg-action-more", Object.assign({}, args)),
16
- });
17
- Array.from(page.doc.querySelectorAll('mg-action-more')).forEach((item, index) => {
18
- const mgPopoverIdentifier = `mg-popover-test_${index}`;
19
- item.dataset.mgPopoverGuard = mgPopoverIdentifier;
20
- forcePopoverId(item, mgPopoverIdentifier, 'mg-button');
21
- });
22
- return page;
23
- };
24
- const mouseEventHandler = jest.fn();
25
- const items = [
26
- {
27
- label: 'batman',
28
- mouseEventHandler,
29
- },
30
- {
31
- label: 'robin',
32
- mouseEventHandler,
33
- status: Status.HIDDEN,
34
- },
35
- {
36
- label: 'joker',
37
- mouseEventHandler,
38
- badge: {
39
- value: 2,
40
- label: 'badge',
41
- },
42
- },
43
- {
44
- label: 'bane',
45
- mouseEventHandler,
46
- icon: 'user',
47
- href: '#',
48
- },
49
- ];
50
- Object.defineProperty(window, 'frames', {
51
- value: { length: 0 },
52
- });
53
- describe('mg-action-more', () => {
54
- beforeEach(() => {
55
- setupResizeObserverMock({
56
- observe: () => null,
57
- disconnect: () => null,
58
- });
59
- });
60
- describe.each([
61
- {
62
- items,
63
- },
64
- {
65
- items,
66
- button: {
67
- label: 'dc-comics',
68
- variant: 'primary',
69
- isIcon: false,
70
- },
71
- },
72
- {
73
- items,
74
- displayChevron: true,
75
- button: {
76
- variant: 'flat',
77
- isIcon: false,
78
- },
79
- },
80
- {
81
- items,
82
- displayChevron: true,
83
- icon: {
84
- icon: 'ellipsis',
85
- },
86
- button: {
87
- variant: 'flat',
88
- isIcon: false,
89
- },
90
- },
91
- {
92
- items,
93
- displayChevron: false,
94
- icon: {
95
- icon: 'ellipsis',
96
- },
97
- button: {
98
- variant: 'flat',
99
- isIcon: false,
100
- },
101
- },
102
- {
103
- items,
104
- displayChevron: false,
105
- button: {
106
- variant: 'flat',
107
- isIcon: false,
108
- },
109
- },
110
- ])('render', args => {
111
- test(`Should render with args ${args}`, async () => {
112
- const { root } = await getPage(args);
113
- expect(root).toMatchSnapshot();
114
- });
115
- test('Should toggle menu on click', async () => {
116
- const page = await getPage(args);
117
- expect(page.root).toMatchSnapshot();
118
- const mgMoreAction = page.doc.querySelector('mg-action-more');
119
- const mgButton = mgMoreAction.shadowRoot.querySelector('mg-button');
120
- mgButton.dispatchEvent(new MouseEvent('click', { bubbles: true }));
121
- await page.waitForChanges();
122
- expect(page.root).toMatchSnapshot();
123
- });
124
- });
125
- describe('errors', () => {
126
- test.each([
127
- { args: {}, error: `<mg-action-more> prop "items" is required and all values must be the same type, MgActionMoreItemType.` },
128
- { args: { items: ['batman'] }, error: `<mg-action-more> prop "items" is required and all values must be the same type, MgActionMoreItemType.` },
129
- { args: { items: [{ label: 'batman' }] }, error: `<mg-action-more> prop "items" is required and all values must be the same type, MgActionMoreItemType.` },
130
- {
131
- args: { items: [{ label: 'batman', mouseEventHandler: 'batman' }] },
132
- error: `<mg-action-more> prop "items" is required and all values must be the same type, MgActionMoreItemType.`,
133
- },
134
- { args: { items: [{ mouseEventHandler: 'batman' }] }, error: `<mg-action-more> prop "items" is required and all values must be the same type, MgActionMoreItemType.` },
135
- { args: { items: [{ label: 'batman', mouseEventHandler }], button: {} }, error: `<mg-action-more> prop button must match MgActionMoreButtonType.` },
136
- { args: { items: [{ label: 'batman', mouseEventHandler }], button: { variant: 'primary' } }, error: `<mg-action-more> prop button must match MgActionMoreButtonType.` },
137
- { args: { items: [{ label: 'batman', mouseEventHandler }], button: { isIcon: true } }, error: `<mg-action-more> prop button must match MgActionMoreButtonType.` },
138
- { args: { items: [{ label: 'batman', mouseEventHandler }], icon: 'user' }, error: `<mg-action-more> prop icon must match MgActionMoreIconType.` },
139
- {
140
- args: { items: [{ label: 'batman', mouseEventHandler }], displayChevron: true },
141
- error: `<mg-action-more> prop "displayChevron" can't be used with a 'button" prop "isIcon" attribute.`,
142
- },
143
- {
144
- args: { items: [{ label: 'batman', mouseEventHandler }], button: { isIcon: true, variant: 'flat' }, displayChevron: true },
145
- error: `<mg-action-more> prop "displayChevron" can't be used with a 'button" prop "isIcon" attribute.`,
146
- },
147
- ])('with args %s', async ({ args, error }) => {
148
- expect.assertions(1);
149
- try {
150
- await getPage(args);
151
- }
152
- catch (err) {
153
- expect(err.message).toMatch(error);
154
- }
155
- });
156
- });
157
- describe('navigation', () => {
158
- test(`Should run item mouseEventHandler by clicking on menu-item`, async () => {
159
- const page = await getPage({ items });
160
- expect(page.root).toMatchSnapshot();
161
- const mgMoreAction = page.doc.querySelector('mg-action-more');
162
- const mgButton = mgMoreAction.shadowRoot.querySelector('mg-button');
163
- mgButton.dispatchEvent(new MouseEvent('click', { bubbles: true }));
164
- await page.waitForChanges();
165
- expect(page.root).toMatchSnapshot();
166
- const mgMenuItem = mgMoreAction.shadowRoot.querySelector('mg-menu-item');
167
- mgMenuItem.dispatchEvent(new MouseEvent('click', { bubbles: true }));
168
- await page.waitForChanges();
169
- expect(mouseEventHandler).toHaveBeenCalled();
170
- expect(page.root).toMatchSnapshot();
171
- });
172
- test(`Should update expanded when popover display change`, async () => {
173
- const page = await getPage({ items, displayChevron: true, button: { variant: 'flat', isIcon: false } });
174
- expect(page.root).toMatchSnapshot();
175
- const mgMoreAction = page.doc.querySelector('mg-action-more');
176
- const mgButton = mgMoreAction.shadowRoot.querySelector('mg-button');
177
- mgButton.dispatchEvent(new MouseEvent('click', { bubbles: true }));
178
- await page.waitForChanges();
179
- expect(page.root).toMatchSnapshot();
180
- const mgPopover = mgMoreAction.shadowRoot.querySelector('mg-popover');
181
- mgPopover.dispatchEvent(new CustomEvent('display-change', { detail: false }));
182
- await page.waitForChanges();
183
- expect(page.root).toMatchSnapshot();
184
- });
185
- });
186
- });
187
- //# sourceMappingURL=mg-action-more.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mg-action-more.spec.js","sourceRoot":"","sources":["../../../../../src/components/molecules/mg-action-more/test/mg-action-more.spec.tsx"],"names":[],"mappings":"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","sourcesContent":["import { h } from '@stencil/core';\nimport { newSpecPage } from '@stencil/core/testing';\nimport { forcePopoverId, mockConsoleError, setupResizeObserverMock } from '../../../../utils/unit.test.utils';\nimport { Status } from '../../menu/mg-menu-item/mg-menu-item.conf';\nimport { MgButton } from '../../../atoms/mg-button/mg-button';\nimport { MgPopover } from '../../mg-popover/mg-popover';\nimport { MgActionMore } from '../mg-action-more';\nimport { MgMenu } from '../../menu/mg-menu/mg-menu';\nimport { MgMenuItem } from '../../menu/mg-menu-item/mg-menu-item';\nimport { MgPopoverContent } from '../../mg-popover/mg-popover-content/mg-popover-content';\n\nmockConsoleError();\n\nconst getPage = async args => {\n const page = await newSpecPage({\n components: [MgActionMore, MgPopover, MgPopoverContent, MgButton, MgMenu, MgMenuItem],\n template: () => <mg-action-more {...args}></mg-action-more>,\n });\n\n Array.from(page.doc.querySelectorAll('mg-action-more')).forEach((item, index) => {\n const mgPopoverIdentifier = `mg-popover-test_${index}`;\n item.dataset.mgPopoverGuard = mgPopoverIdentifier;\n forcePopoverId(item, mgPopoverIdentifier, 'mg-button');\n });\n\n return page;\n};\n\nconst mouseEventHandler = jest.fn();\n\nconst items = [\n {\n label: 'batman',\n mouseEventHandler,\n },\n {\n label: 'robin',\n mouseEventHandler,\n status: Status.HIDDEN,\n },\n {\n label: 'joker',\n mouseEventHandler,\n badge: {\n value: 2,\n label: 'badge',\n },\n },\n {\n label: 'bane',\n mouseEventHandler,\n icon: 'user',\n href: '#',\n },\n];\n\nObject.defineProperty(window, 'frames', {\n value: { length: 0 },\n});\n\ndescribe('mg-action-more', () => {\n beforeEach(() => {\n setupResizeObserverMock({\n observe: () => null,\n disconnect: () => null,\n });\n });\n describe.each([\n {\n items,\n },\n {\n items,\n button: {\n label: 'dc-comics',\n variant: 'primary',\n isIcon: false,\n },\n },\n {\n items,\n displayChevron: true,\n button: {\n variant: 'flat',\n isIcon: false,\n },\n },\n {\n items,\n displayChevron: true,\n icon: {\n icon: 'ellipsis',\n },\n button: {\n variant: 'flat',\n isIcon: false,\n },\n },\n {\n items,\n displayChevron: false,\n icon: {\n icon: 'ellipsis',\n },\n button: {\n variant: 'flat',\n isIcon: false,\n },\n },\n {\n items,\n displayChevron: false,\n button: {\n variant: 'flat',\n isIcon: false,\n },\n },\n ])('render', args => {\n test(`Should render with args ${args}`, async () => {\n const { root } = await getPage(args);\n expect(root).toMatchSnapshot();\n });\n\n test('Should toggle menu on click', async () => {\n const page = await getPage(args);\n expect(page.root).toMatchSnapshot();\n\n const mgMoreAction = page.doc.querySelector('mg-action-more');\n const mgButton = mgMoreAction.shadowRoot.querySelector('mg-button');\n mgButton.dispatchEvent(new MouseEvent('click', { bubbles: true }));\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n });\n\n describe('errors', () => {\n test.each([\n { args: {}, error: `<mg-action-more> prop \"items\" is required and all values must be the same type, MgActionMoreItemType.` },\n { args: { items: ['batman'] }, error: `<mg-action-more> prop \"items\" is required and all values must be the same type, MgActionMoreItemType.` },\n { args: { items: [{ label: 'batman' }] }, error: `<mg-action-more> prop \"items\" is required and all values must be the same type, MgActionMoreItemType.` },\n {\n args: { items: [{ label: 'batman', mouseEventHandler: 'batman' }] },\n error: `<mg-action-more> prop \"items\" is required and all values must be the same type, MgActionMoreItemType.`,\n },\n { args: { items: [{ mouseEventHandler: 'batman' }] }, error: `<mg-action-more> prop \"items\" is required and all values must be the same type, MgActionMoreItemType.` },\n { args: { items: [{ label: 'batman', mouseEventHandler }], button: {} }, error: `<mg-action-more> prop button must match MgActionMoreButtonType.` },\n { args: { items: [{ label: 'batman', mouseEventHandler }], button: { variant: 'primary' } }, error: `<mg-action-more> prop button must match MgActionMoreButtonType.` },\n { args: { items: [{ label: 'batman', mouseEventHandler }], button: { isIcon: true } }, error: `<mg-action-more> prop button must match MgActionMoreButtonType.` },\n { args: { items: [{ label: 'batman', mouseEventHandler }], icon: 'user' }, error: `<mg-action-more> prop icon must match MgActionMoreIconType.` },\n {\n args: { items: [{ label: 'batman', mouseEventHandler }], displayChevron: true },\n error: `<mg-action-more> prop \"displayChevron\" can't be used with a 'button\" prop \"isIcon\" attribute.`,\n },\n {\n args: { items: [{ label: 'batman', mouseEventHandler }], button: { isIcon: true, variant: 'flat' }, displayChevron: true },\n error: `<mg-action-more> prop \"displayChevron\" can't be used with a 'button\" prop \"isIcon\" attribute.`,\n },\n ])('with args %s', async ({ args, error }) => {\n expect.assertions(1);\n try {\n await getPage(args);\n } catch (err) {\n expect(err.message).toMatch(error);\n }\n });\n });\n\n describe('navigation', () => {\n test(`Should run item mouseEventHandler by clicking on menu-item`, async () => {\n const page = await getPage({ items });\n expect(page.root).toMatchSnapshot();\n\n const mgMoreAction = page.doc.querySelector('mg-action-more');\n const mgButton = mgMoreAction.shadowRoot.querySelector('mg-button');\n mgButton.dispatchEvent(new MouseEvent('click', { bubbles: true }));\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n const mgMenuItem = mgMoreAction.shadowRoot.querySelector('mg-menu-item');\n mgMenuItem.dispatchEvent(new MouseEvent('click', { bubbles: true }));\n\n await page.waitForChanges();\n\n expect(mouseEventHandler).toHaveBeenCalled();\n expect(page.root).toMatchSnapshot();\n });\n\n test(`Should update expanded when popover display change`, async () => {\n const page = await getPage({ items, displayChevron: true, button: { variant: 'flat', isIcon: false } });\n expect(page.root).toMatchSnapshot();\n\n const mgMoreAction = page.doc.querySelector('mg-action-more');\n const mgButton = mgMoreAction.shadowRoot.querySelector('mg-button');\n mgButton.dispatchEvent(new MouseEvent('click', { bubbles: true }));\n\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n\n const mgPopover = mgMoreAction.shadowRoot.querySelector('mg-popover');\n\n mgPopover.dispatchEvent(new CustomEvent('display-change', { detail: false }));\n await page.waitForChanges();\n\n expect(page.root).toMatchSnapshot();\n });\n });\n});\n"]}
@@ -1,30 +0,0 @@
1
- import { setPageContent, describe, testEach, expect, test } from "../../../../utils/playwright.e2e.test.utils";
2
- import { renderAttributes } from "../../../../utils/e2e.test.utils";
3
- const content = '<span slot="summary">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </span><p slot="details">Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>';
4
- const baseArgs = { toggleClosed: 'Show details', toggleOpened: 'Hide details' };
5
- const htmlContent = (args, style) => `<style>*, *:before, *:after { box-sizing: border-box; } .e2e-screenshot { width: 100%; } ${style}</style><mg-details ${renderAttributes(args)}>${content}</mg-details>`;
6
- describe('mg-details', () => {
7
- testEach([{}, { 'hide-summary': '' }])('Should toggle details %s', async (page, args) => {
8
- await setPageContent(page, htmlContent(Object.assign(Object.assign({}, baseArgs), args)));
9
- await page.setViewportSize({ width: 700, height: 100 });
10
- await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
11
- await page.keyboard.press('Tab');
12
- await page.keyboard.press('Space');
13
- await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
14
- });
15
- test('Should not render toggle text when window size is under 700px', async ({ page }) => {
16
- await setPageContent(page, htmlContent(Object.assign({}, baseArgs)));
17
- await page.setViewportSize({ width: 650, height: 100 });
18
- await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
19
- });
20
- testEach([0, 5])('Should update space (%s) between summary and details', async (page, args) => {
21
- await setPageContent(page, htmlContent(Object.assign({}, baseArgs), `mg-details {
22
- --mg-details-spacing: ${args}rem;
23
- })`));
24
- await page.setViewportSize({ width: 700, height: 100 });
25
- await page.keyboard.press('Tab');
26
- await page.keyboard.press('Space');
27
- await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();
28
- });
29
- });
30
- //# sourceMappingURL=mg-details.e2e.playwright.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mg-details.e2e.playwright.js","sourceRoot":"","sources":["../../../../../src/components/molecules/mg-details/test/mg-details.e2e.playwright.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,EAAY,IAAI,EAAE,MAAM,6CAA6C,CAAC;AACzH,OAAO,EAAE,gBAAgB,EAAE,MAAM,kCAAkC,CAAC;AAEpE,MAAM,OAAO,GACX,ifAAif,CAAC;AAEpf,MAAM,QAAQ,GAAG,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC;AAEhF,MAAM,WAAW,GAAG,CAAC,IAAI,EAAE,KAAM,EAAE,EAAE,CACnC,4FAA4F,KAAK,uBAAuB,gBAAgB,CAAC,IAAI,CAAC,IAAI,OAAO,eAAe,CAAC;AAE3K,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;EAC1B,QAAQ,CAAC,CAAC,EAAE,EAAE,EAAE,cAAc,EAAE,EAAE,EAAE,CAAC,CAAC,CAAC,0BAA0B,EAAE,KAAK,EAAE,IAAc,EAAE,IAAY,EAAE,EAAE;IACxG,MAAM,cAAc,CAAC,IAAI,EAAE,WAAW,iCAAM,QAAQ,GAAK,IAAI,EAAG,CAAC,CAAC;IAElE,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAExD,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;IAEjE,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEnC,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;EACnE,CAAC,CAAC,CAAC;EAEH,IAAI,CAAC,+DAA+D,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE;IACvF,MAAM,cAAc,CAAC,IAAI,EAAE,WAAW,mBAAM,QAAQ,EAAG,CAAC,CAAC;IAEzD,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAExD,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;EACnE,CAAC,CAAC,CAAC;EAEH,QAAQ,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,sDAAsD,EAAE,KAAK,EAAE,IAAI,EAAE,IAAI,EAAE,EAAE;IAC5F,MAAM,cAAc,CAClB,IAAI,EACJ,WAAW,mBACJ,QAAQ,GACb;gCACwB,IAAI;SAC3B,CACF,CACF,CAAC;IAEF,MAAM,IAAI,CAAC,eAAe,CAAC,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;IAExD,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEnC,MAAM,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,iBAAiB,CAAC,CAAC,CAAC,gBAAgB,EAAE,CAAC;EACnE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { setPageContent, describe, testEach, expect, PageType, test } from '../../../../utils/playwright.e2e.test.utils';\nimport { renderAttributes } from '../../../../utils/e2e.test.utils';\n\nconst content =\n '<span slot=\"summary\">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. </span><p slot=\"details\">Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.</p>';\n\nconst baseArgs = { toggleClosed: 'Show details', toggleOpened: 'Hide details' };\n\nconst htmlContent = (args, style?) =>\n `<style>*, *:before, *:after { box-sizing: border-box; } .e2e-screenshot { width: 100%; } ${style}</style><mg-details ${renderAttributes(args)}>${content}</mg-details>`;\n\ndescribe('mg-details', () => {\n testEach([{}, { 'hide-summary': '' }])('Should toggle details %s', async (page: PageType, args: object) => {\n await setPageContent(page, htmlContent({ ...baseArgs, ...args }));\n\n await page.setViewportSize({ width: 700, height: 100 });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n\n await page.keyboard.press('Tab');\n await page.keyboard.press('Space');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n test('Should not render toggle text when window size is under 700px', async ({ page }) => {\n await setPageContent(page, htmlContent({ ...baseArgs }));\n\n await page.setViewportSize({ width: 650, height: 100 });\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n\n testEach([0, 5])('Should update space (%s) between summary and details', async (page, args) => {\n await setPageContent(\n page,\n htmlContent(\n { ...baseArgs },\n `mg-details {\n --mg-details-spacing: ${args}rem;\n })`,\n ),\n );\n\n await page.setViewportSize({ width: 700, height: 100 });\n\n await page.keyboard.press('Tab');\n await page.keyboard.press('Space');\n\n await expect(page.locator('.e2e-screenshot')).toHaveScreenshot();\n });\n});\n"]}
@@ -1,42 +0,0 @@
1
- import { h } from "@stencil/core";
2
- import { newSpecPage } from "@stencil/core/testing";
3
- import { MgDetails } from "../mg-details";
4
- const getPage = args => newSpecPage({
5
- components: [MgDetails],
6
- template: () => (h("mg-details", Object.assign({}, args), h("span", { slot: "summary" }, "Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua."), h("p", { slot: "details" }, "Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum."))),
7
- });
8
- describe('mg-details', () => {
9
- test.each([
10
- { toggleClosed: 'Show details', toggleOpened: 'Hide details' },
11
- { toggleClosed: 'Show details', toggleOpened: 'Hide details', expanded: true },
12
- { toggleClosed: 'Show details', toggleOpened: 'Hide details', hideSummary: true },
13
- ])('with args %s', async (args) => {
14
- const { root } = await getPage(args);
15
- expect(root).toMatchSnapshot();
16
- });
17
- test.each([
18
- {},
19
- { toggleClosed: 'Show details' },
20
- { toggleOpened: 'Hide details' },
21
- { toggleClosed: ' ', toggleOpened: 'Hide details' },
22
- { toggleClosed: 'Show details', toggleOpened: ' ' },
23
- ])('Should throw error when missing toggle messages: %s', async (args) => {
24
- expect.assertions(1);
25
- try {
26
- await getPage(args);
27
- }
28
- catch (err) {
29
- expect(err.message).toMatch('<mg-details> prop "toggleClosed" and "toggleOpened" must be defined.');
30
- }
31
- });
32
- test('Should toggle details on click', async () => {
33
- const page = await getPage({ toggleClosed: 'Show details', toggleOpened: 'Hide details' });
34
- const element = page.doc.querySelector('mg-details');
35
- const summary = element.shadowRoot.querySelector('summary');
36
- jest.spyOn(page.rootInstance.expandedChange, 'emit');
37
- summary.dispatchEvent(new CustomEvent('toggle', { bubbles: true }));
38
- await page.waitForChanges();
39
- expect(page.rootInstance.expandedChange.emit).toHaveBeenCalledTimes(1);
40
- });
41
- });
42
- //# sourceMappingURL=mg-details.spec.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mg-details.spec.js","sourceRoot":"","sources":["../../../../../src/components/molecules/mg-details/test/mg-details.spec.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,eAAe,CAAC;AAClC,OAAO,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,eAAe,CAAC;AAE1C,MAAM,OAAO,GAAG,IAAI,CAAC,EAAE,CACrB,WAAW,CAAC;EACV,UAAU,EAAE,CAAC,SAAS,CAAC;EACvB,QAAQ,EAAE,GAAG,EAAE,CAAC,CACd,kCAAgB,IAAI;IAClB,YAAM,IAAI,EAAC,SAAS,kIAAmI;IACvJ,SAAG,IAAI,EAAC,SAAS,wUAGb,CACO,CACd;CACF,CAAC,CAAC;AAEL,QAAQ,CAAC,YAAY,EAAE,GAAG,EAAE;EAC1B,IAAI,CAAC,IAAI,CAAC;IACR,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE;IAC9D,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,QAAQ,EAAE,IAAI,EAAE;IAC9E,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,WAAW,EAAE,IAAI,EAAE;GAClF,CAAC,CAAC,cAAc,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;IAC9B,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IACrC,MAAM,CAAC,IAAI,CAAC,CAAC,eAAe,EAAE,CAAC;EACjC,CAAC,CAAC,CAAC;EAEH,IAAI,CAAC,IAAI,CAAC;IACR,EAAE;IACF,EAAE,YAAY,EAAE,cAAc,EAAE;IAChC,EAAE,YAAY,EAAE,cAAc,EAAE;IAChC,EAAE,YAAY,EAAE,GAAG,EAAE,YAAY,EAAE,cAAc,EAAE;IACnD,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,GAAG,EAAE;GACpD,CAAC,CAAC,qDAAqD,EAAE,KAAK,EAAC,IAAI,EAAC,EAAE;IACrE,MAAM,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IACrB,IAAI;MACF,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;KACrB;IAAC,OAAO,GAAG,EAAE;MACZ,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,sEAAsE,CAAC,CAAC;KACrG;EACH,CAAC,CAAC,CAAC;EAEH,IAAI,CAAC,gCAAgC,EAAE,KAAK,IAAI,EAAE;IAChD,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,EAAE,YAAY,EAAE,cAAc,EAAE,YAAY,EAAE,cAAc,EAAE,CAAC,CAAC;IAE3F,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,YAAY,CAAC,CAAC;IACrD,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,aAAa,CAAC,SAAS,CAAC,CAAC;IAE5D,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,EAAE,MAAM,CAAC,CAAC;IAErD,OAAO,CAAC,aAAa,CAAC,IAAI,WAAW,CAAC,QAAQ,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;IACpE,MAAM,IAAI,CAAC,cAAc,EAAE,CAAC;IAE5B,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,cAAc,CAAC,IAAI,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,CAAC;EACzE,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC","sourcesContent":["import { h } from '@stencil/core';\nimport { newSpecPage } from '@stencil/core/testing';\nimport { MgDetails } from '../mg-details';\n\nconst getPage = args =>\n newSpecPage({\n components: [MgDetails],\n template: () => (\n <mg-details {...args}>\n <span slot=\"summary\">Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.</span>\n <p slot=\"details\">\n Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse\n cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.\n </p>\n </mg-details>\n ),\n });\n\ndescribe('mg-details', () => {\n test.each([\n { toggleClosed: 'Show details', toggleOpened: 'Hide details' },\n { toggleClosed: 'Show details', toggleOpened: 'Hide details', expanded: true },\n { toggleClosed: 'Show details', toggleOpened: 'Hide details', hideSummary: true },\n ])('with args %s', async args => {\n const { root } = await getPage(args);\n expect(root).toMatchSnapshot();\n });\n\n test.each([\n {},\n { toggleClosed: 'Show details' },\n { toggleOpened: 'Hide details' },\n { toggleClosed: ' ', toggleOpened: 'Hide details' },\n { toggleClosed: 'Show details', toggleOpened: ' ' },\n ])('Should throw error when missing toggle messages: %s', async args => {\n expect.assertions(1);\n try {\n await getPage(args);\n } catch (err) {\n expect(err.message).toMatch('<mg-details> prop \"toggleClosed\" and \"toggleOpened\" must be defined.');\n }\n });\n\n test('Should toggle details on click', async () => {\n const page = await getPage({ toggleClosed: 'Show details', toggleOpened: 'Hide details' });\n\n const element = page.doc.querySelector('mg-details');\n const summary = element.shadowRoot.querySelector('summary');\n\n jest.spyOn(page.rootInstance.expandedChange, 'emit');\n\n summary.dispatchEvent(new CustomEvent('toggle', { bubbles: true }));\n await page.waitForChanges();\n\n expect(page.rootInstance.expandedChange.emit).toHaveBeenCalledTimes(1);\n });\n});\n"]}
@@ -1,169 +0,0 @@
1
- import { createPage } from "../../../../utils/stencil.e2e.test.utils";
2
- const inputs = `<mg-input-checkbox identifier="mg-input-checkbox" label="mg-input-checkbox label"></mg-input-checkbox>
3
- <mg-input-date identifier="mg-input-date" label="mg-input-date label"></mg-input-date>
4
- <mg-input-numeric identifier="mg-input-numeric" label="mg-input-numeric label"></mg-input-numeric>
5
- <mg-input-password identifier="mg-input-password" label="mg-input-password label"></mg-input-password>
6
- <mg-input-radio identifier="mg-input-radio" label="mg-input-radio label"></mg-input-radio>
7
- <mg-input-select identifier="mg-input-select" label="mg-input-select label"></mg-input-select>
8
- <mg-input-text identifier="mg-input-text" label="mg-input-text label"></mg-input-text>
9
- <mg-input-textarea identifier="mg-input-textarea" label="mg-input-textarea label"></mg-input-textarea>
10
- <mg-input-toggle identifier="mg-input-toggle" label="mg-input-toggle label">
11
- <span slot="item-1">non</span>
12
- <span slot="item-2">oui</span>
13
- </mg-input-toggle>`;
14
- const inputsScript = `<script>
15
- const mgInputCheckbox = document.querySelector('mg-input-checkbox');
16
- const mgInputDate = document.querySelector('mg-input-date');
17
- const mgInputNumeric = document.querySelector('mg-input-numeric');
18
- const mgInputPassword = document.querySelector('mg-input-password');
19
- const mgInputRadio = document.querySelector('mg-input-radio');
20
- const mgInputSelect = document.querySelector('mg-input-select');
21
- const mgInputText = document.querySelector('mg-input-text');
22
- const mgInputTextarea = document.querySelector('mg-input-textarea');
23
- const mgInputToggle = document.querySelector('mg-input-toggle');
24
-
25
- mgInputCheckbox.value = [
26
- { title: 'oui', value: false },
27
- { title: 'non', value: false },
28
- ];
29
- mgInputRadio.items = ['blu', 'bli', 'bla', 'blo'];
30
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
31
- mgInputToggle.items = [
32
- { title: 'non', value: false },
33
- { title: 'oui', value: true },
34
- ];
35
- </script>`;
36
- const inputsScriptSetValues = `<script>
37
- mgInputCheckbox.value = [
38
- { title: 'oui', value: true },
39
- { title: 'non', value: false },
40
- ];
41
- mgInputDate.value = '2022-04-15';
42
- mgInputNumeric.value = 1234567890;
43
- mgInputPassword.value = 'p455w0rD';
44
- mgInputRadio.value = mgInputRadio.items[0];
45
- mgInputSelect.value = mgInputSelect.items[0];
46
- mgInputText.value = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.';
47
- mgInputTextarea.value =
48
- 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.';
49
- mgInputToggle.value = mgInputToggle.items[1].value;
50
- </script>`;
51
- const inputsScriptRequiredAll = `<script>
52
- mgInputCheckbox.required = true;
53
- mgInputDate.required = true;
54
- mgInputNumeric.required = true;
55
- mgInputPassword.required = true;
56
- mgInputRadio.required = true;
57
- mgInputSelect.required = true;
58
- mgInputText.required = true;
59
- mgInputTextarea.required = true;
60
- </script>`;
61
- const inputsScriptRequiredSome = `<script>
62
- mgInputCheckbox.required = true;
63
- mgInputNumeric.required = true;
64
- mgInputRadio.required = true;
65
- mgInputText.required = true;
66
- </script>`;
67
- const inputsScriptRequiredSingle = `<script>
68
- mgInputCheckbox.required = true;
69
- </script>`;
70
- const inputsScriptReadonlyAll = `<script>
71
- mgInputCheckbox.readonly = true;
72
- mgInputDate.readonly = true;
73
- mgInputNumeric.readonly = true;
74
- mgInputPassword.readonly = true;
75
- mgInputRadio.readonly = true;
76
- mgInputSelect.readonly = true;
77
- mgInputText.readonly = true;
78
- mgInputTextarea.readonly = true;
79
- mgInputToggle.readonly = true;
80
- </script>`;
81
- const inputsScriptDisabledAll = `<script>
82
- mgInputCheckbox.disabled = true;
83
- mgInputDate.disabled = true;
84
- mgInputNumeric.disabled = true;
85
- mgInputPassword.disabled = true;
86
- mgInputRadio.disabled = true;
87
- mgInputSelect.disabled = true;
88
- mgInputText.disabled = true;
89
- mgInputTextarea.disabled = true;
90
- mgInputToggle.disabled = true;
91
- </script>`;
92
- describe('mg-form', () => {
93
- describe.each([`<mg-form>`, `<mg-form disabled>`, `<mg-form readonly>`])('params %s', startTag => {
94
- test('Should render', async () => {
95
- const page = await createPage(`${startTag}
96
- ${inputs}
97
- </mg-form>
98
- ${inputsScript}
99
- ${inputsScriptSetValues}`);
100
- const element = await page.find('mg-form');
101
- expect(element).toHaveClass('hydrated');
102
- const screenshot = await page.screenshot();
103
- expect(screenshot).toMatchImageSnapshot();
104
- });
105
- test('Should render with custom style', async () => {
106
- const page = await createPage(`${startTag}
107
- ${inputs}
108
- </mg-form>
109
- ${inputsScript}
110
- ${inputsScriptSetValues}
111
- ${inputsScriptRequiredSome}`);
112
- await page.$eval('mg-form', el => {
113
- el.setAttribute('style', '--mg-form-inputs-title-width: 25rem;');
114
- });
115
- const screenshot = await page.screenshot();
116
- expect(screenshot).toMatchImageSnapshot();
117
- });
118
- });
119
- describe.each(['<mg-form>', '<mg-form lang="fr">'])('With different locale', startTag => {
120
- describe.each([inputsScriptRequiredAll, inputsScriptRequiredSome, inputsScriptRequiredSingle])('Should render required and errors', inputsScriptRequired => {
121
- test('Should render errors', async () => {
122
- const page = await createPage(`${startTag}
123
- ${inputs}
124
- </mg-form>
125
- ${inputsScript}
126
- ${inputsScriptRequired}`);
127
- const element = await page.find('mg-form');
128
- expect(element).toHaveClass('hydrated');
129
- const screenshot = await page.screenshot();
130
- expect(screenshot).toMatchImageSnapshot();
131
- await element.callMethod('displayError');
132
- await page.waitForChanges();
133
- const screenshotErrors = await page.screenshot();
134
- expect(screenshotErrors).toMatchImageSnapshot();
135
- });
136
- });
137
- test('Should render single required input in form', async () => {
138
- const page = await createPage(`${startTag}
139
- <mg-input-date identifier="mg-input-date" label="mg-input-date label"></mg-input-date>
140
- </mg-form>
141
- <script>
142
- const mgInputDate = document.querySelector('mg-input-date');
143
- mgInputDate.required = true;
144
- </script>`);
145
- const element = await page.find('mg-form');
146
- expect(element).toHaveClass('hydrated');
147
- const screenshot = await page.screenshot();
148
- expect(screenshot).toMatchImageSnapshot();
149
- await element.callMethod('displayError');
150
- await page.waitForChanges();
151
- const screenshotErrors = await page.screenshot();
152
- expect(screenshotErrors).toMatchImageSnapshot();
153
- });
154
- });
155
- test.each(['readonly', 'disabled'])('Should not have required message when all inputs are required and %s', async (attribute) => {
156
- const page = await createPage(`<mg-form>
157
- ${inputs}
158
- </mg-form>
159
- ${inputsScript}
160
- ${inputsScriptSetValues}
161
- ${inputsScriptRequiredAll}
162
- ${attribute === 'readonly' ? inputsScriptReadonlyAll : inputsScriptDisabledAll}`);
163
- const element = await page.find('mg-form');
164
- expect(element).toHaveClass('hydrated');
165
- const screenshot = await page.screenshot();
166
- expect(screenshot).toMatchImageSnapshot();
167
- });
168
- });
169
- //# sourceMappingURL=mg-form.e2e.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mg-form.e2e.js","sourceRoot":"","sources":["../../../../../src/components/molecules/mg-form/test/mg-form.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { createPage } from '../../../../utils/stencil.e2e.test.utils';\n\nconst inputs = `<mg-input-checkbox identifier=\"mg-input-checkbox\" label=\"mg-input-checkbox label\"></mg-input-checkbox>\n<mg-input-date identifier=\"mg-input-date\" label=\"mg-input-date label\"></mg-input-date>\n<mg-input-numeric identifier=\"mg-input-numeric\" label=\"mg-input-numeric label\"></mg-input-numeric>\n<mg-input-password identifier=\"mg-input-password\" label=\"mg-input-password label\"></mg-input-password>\n<mg-input-radio identifier=\"mg-input-radio\" label=\"mg-input-radio label\"></mg-input-radio>\n<mg-input-select identifier=\"mg-input-select\" label=\"mg-input-select label\"></mg-input-select>\n<mg-input-text identifier=\"mg-input-text\" label=\"mg-input-text label\"></mg-input-text>\n<mg-input-textarea identifier=\"mg-input-textarea\" label=\"mg-input-textarea label\"></mg-input-textarea>\n<mg-input-toggle identifier=\"mg-input-toggle\" label=\"mg-input-toggle label\">\n <span slot=\"item-1\">non</span>\n <span slot=\"item-2\">oui</span>\n</mg-input-toggle>`;\n\nconst inputsScript = `<script>\n const mgInputCheckbox = document.querySelector('mg-input-checkbox');\n const mgInputDate = document.querySelector('mg-input-date');\n const mgInputNumeric = document.querySelector('mg-input-numeric');\n const mgInputPassword = document.querySelector('mg-input-password');\n const mgInputRadio = document.querySelector('mg-input-radio');\n const mgInputSelect = document.querySelector('mg-input-select');\n const mgInputText = document.querySelector('mg-input-text');\n const mgInputTextarea = document.querySelector('mg-input-textarea');\n const mgInputToggle = document.querySelector('mg-input-toggle');\n\n mgInputCheckbox.value = [\n { title: 'oui', value: false },\n { title: 'non', value: false },\n ];\n mgInputRadio.items = ['blu', 'bli', 'bla', 'blo'];\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n mgInputToggle.items = [\n { title: 'non', value: false },\n { title: 'oui', value: true },\n ];\n</script>`;\n\nconst inputsScriptSetValues = `<script>\n mgInputCheckbox.value = [\n { title: 'oui', value: true },\n { title: 'non', value: false },\n ];\n mgInputDate.value = '2022-04-15';\n mgInputNumeric.value = 1234567890;\n mgInputPassword.value = 'p455w0rD';\n mgInputRadio.value = mgInputRadio.items[0];\n mgInputSelect.value = mgInputSelect.items[0];\n mgInputText.value = 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua.';\n mgInputTextarea.value =\n 'Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur. Excepteur sint occaecat cupidatat non proident, sunt in culpa qui officia deserunt mollit anim id est laborum.';\n mgInputToggle.value = mgInputToggle.items[1].value;\n</script>`;\n\nconst inputsScriptRequiredAll = `<script>\n mgInputCheckbox.required = true;\n mgInputDate.required = true;\n mgInputNumeric.required = true;\n mgInputPassword.required = true;\n mgInputRadio.required = true;\n mgInputSelect.required = true;\n mgInputText.required = true;\n mgInputTextarea.required = true;\n</script>`;\n\nconst inputsScriptRequiredSome = `<script>\n mgInputCheckbox.required = true;\n mgInputNumeric.required = true;\n mgInputRadio.required = true;\n mgInputText.required = true;\n</script>`;\n\nconst inputsScriptRequiredSingle = `<script>\n mgInputCheckbox.required = true;\n</script>`;\n\nconst inputsScriptReadonlyAll = `<script>\n mgInputCheckbox.readonly = true;\n mgInputDate.readonly = true;\n mgInputNumeric.readonly = true;\n mgInputPassword.readonly = true;\n mgInputRadio.readonly = true;\n mgInputSelect.readonly = true;\n mgInputText.readonly = true;\n mgInputTextarea.readonly = true;\n mgInputToggle.readonly = true;\n</script>`;\n\nconst inputsScriptDisabledAll = `<script>\n mgInputCheckbox.disabled = true;\n mgInputDate.disabled = true;\n mgInputNumeric.disabled = true;\n mgInputPassword.disabled = true;\n mgInputRadio.disabled = true;\n mgInputSelect.disabled = true;\n mgInputText.disabled = true;\n mgInputTextarea.disabled = true;\n mgInputToggle.disabled = true;\n</script>`;\n\ndescribe('mg-form', () => {\n describe.each([`<mg-form>`, `<mg-form disabled>`, `<mg-form readonly>`])('params %s', startTag => {\n test('Should render', async () => {\n const page = await createPage(`${startTag}\n ${inputs}\n </mg-form>\n ${inputsScript}\n ${inputsScriptSetValues}`);\n\n const element = await page.find('mg-form');\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n\n test('Should render with custom style', async () => {\n const page = await createPage(`${startTag}\n ${inputs}\n </mg-form>\n ${inputsScript}\n ${inputsScriptSetValues}\n ${inputsScriptRequiredSome}`);\n\n await page.$eval('mg-form', el => {\n el.setAttribute('style', '--mg-form-inputs-title-width: 25rem;');\n });\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n });\n\n describe.each(['<mg-form>', '<mg-form lang=\"fr\">'])('With different locale', startTag => {\n describe.each([inputsScriptRequiredAll, inputsScriptRequiredSome, inputsScriptRequiredSingle])('Should render required and errors', inputsScriptRequired => {\n test('Should render errors', async () => {\n const page = await createPage(`${startTag}\n ${inputs}\n </mg-form>\n ${inputsScript}\n ${inputsScriptRequired}`);\n\n const element = await page.find('mg-form');\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n\n await element.callMethod('displayError');\n await page.waitForChanges();\n\n const screenshotErrors = await page.screenshot();\n expect(screenshotErrors).toMatchImageSnapshot();\n });\n });\n test('Should render single required input in form', async () => {\n const page = await createPage(`${startTag}\n <mg-input-date identifier=\"mg-input-date\" label=\"mg-input-date label\"></mg-input-date>\n </mg-form>\n <script>\n const mgInputDate = document.querySelector('mg-input-date');\n mgInputDate.required = true;\n </script>`);\n const element = await page.find('mg-form');\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n\n await element.callMethod('displayError');\n await page.waitForChanges();\n\n const screenshotErrors = await page.screenshot();\n expect(screenshotErrors).toMatchImageSnapshot();\n });\n });\n\n test.each(['readonly', 'disabled'])('Should not have required message when all inputs are required and %s', async attribute => {\n const page = await createPage(`<mg-form>\n ${inputs}\n </mg-form>\n ${inputsScript}\n ${inputsScriptSetValues}\n ${inputsScriptRequiredAll}\n ${attribute === 'readonly' ? inputsScriptReadonlyAll : inputsScriptDisabledAll}`);\n\n const element = await page.find('mg-form');\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n});\n"]}