@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,194 +0,0 @@
1
- import { renderAttributes } from "../../../../../utils/e2e.test.utils";
2
- import { createPage } from "../../../../../utils/stencil.e2e.test.utils";
3
- import { widths } from "../../MgInput.conf";
4
- describe('mg-input-select', () => {
5
- describe.each([true, false])('without tooltip, case label on top %s', labelOnTop => {
6
- test('render', async () => {
7
- const page = await createPage(`
8
- <mg-input-select ${renderAttributes({ identifier: 'identifier', label: 'label', labelOnTop })}></mg-input-select>
9
- <script>
10
- const mgInputSelect = document.querySelector('mg-input-select');
11
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
12
- </script>`);
13
- const element = await page.find('mg-input-select');
14
- expect(element).toHaveClass('hydrated');
15
- const screenshot = await page.screenshot();
16
- expect(screenshot).toMatchImageSnapshot();
17
- await page.keyboard.down('Tab');
18
- await page.waitForChanges();
19
- const screenshotFocus = await page.screenshot();
20
- expect(screenshotFocus).toMatchImageSnapshot();
21
- await page.keyboard.down('Space');
22
- await page.waitForChanges();
23
- const screenshotList = await page.screenshot();
24
- expect(screenshotList).toMatchImageSnapshot();
25
- await page.keyboard.down('ArrowDown');
26
- await page.keyboard.down('ArrowDown');
27
- await page.waitForChanges();
28
- const screenshotSelection = await page.screenshot();
29
- expect(screenshotSelection).toMatchImageSnapshot();
30
- await page.keyboard.down('Enter');
31
- await page.waitForChanges();
32
- const screenshotSelected = await page.screenshot();
33
- expect(screenshotSelected).toMatchImageSnapshot();
34
- });
35
- test.each([undefined, ...widths])('render with width %s', async (mgWidth) => {
36
- const page = await createPage(`
37
- <mg-input-select ${renderAttributes({ identifier: 'identifier', label: 'label', mgWidth, labelOnTop })}></mg-input-select>
38
- <script>
39
- const mgInputSelect = document.querySelector('mg-input-select');
40
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
41
- </script>`);
42
- const screenshotSelected = await page.screenshot();
43
- expect(screenshotSelected).toMatchImageSnapshot();
44
- });
45
- });
46
- describe.each([
47
- `<mg-input-select identifier="identifier" label="label" label-on-top></mg-input-select>`,
48
- `<mg-input-select identifier="identifier" label="label" label-hide></mg-input-select>`,
49
- `<mg-input-select identifier="identifier" label="label" placeholder="placeholder" help-text="HelpText Message"></mg-input-select>`,
50
- ])('without tooltip', html => {
51
- test('render', async () => {
52
- const page = await createPage(`${html}
53
- <script>
54
- const mgInputSelect = document.querySelector('mg-input-select');
55
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
56
- </script>`);
57
- const element = await page.find('mg-input-select');
58
- expect(element).toHaveClass('hydrated');
59
- const screenshot = await page.screenshot();
60
- expect(screenshot).toMatchImageSnapshot();
61
- });
62
- });
63
- test.each([true, false])('render with tooltip, case label-on-top %s', async (labelOnTop) => {
64
- const page = await createPage(`<mg-input-select identifier="identifier" label="label" tooltip="Tooltip message" label-on-top="${labelOnTop}"></mg-input-select>
65
- <script>
66
- const mgInputSelect = document.querySelector('mg-input-select');
67
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
68
- </script>`);
69
- const element = await page.find('mg-input-select');
70
- expect(element).toHaveClass('hydrated');
71
- const screenshot = await page.screenshot();
72
- expect(screenshot).toMatchImageSnapshot();
73
- await page.keyboard.down('Tab');
74
- if (!labelOnTop) {
75
- // Ensure to display tooltip
76
- await page.setViewport({ width: 600, height: 65 });
77
- // when label on top tooltip is on fist tab (next to label)
78
- await page.keyboard.down('Tab');
79
- }
80
- await page.waitForChanges();
81
- const screenshotTooltip = await page.screenshot();
82
- expect(screenshotTooltip).toMatchImageSnapshot();
83
- });
84
- describe.each([
85
- `<mg-input-select identifier="identifier" label="label" readonly></mg-input-select>`,
86
- `<mg-input-select identifier="identifier" label="label" value="blu"></mg-input-select>`,
87
- `<mg-input-select identifier="identifier" label="label" value="blu" readonly></mg-input-select>`,
88
- `<mg-input-select identifier="identifier" label="label" value="blu" readonly label-on-top></mg-input-select>`,
89
- `<mg-input-select identifier="identifier" label="label" disabled></mg-input-select>`,
90
- `<mg-input-select identifier="identifier" label="label" value="blu" disabled></mg-input-select>`,
91
- `<mg-input-select identifier="identifier" label="label" value="batman" help-text='<mg-icon icon="user" size="small"></mg-icon> Welcome batman'></mg-input-select>`,
92
- `<mg-input-select identifier="identifier" label="label" value="blu" required help-text="HelpText Message"></mg-input-select>`,
93
- `<mg-input-select identifier="identifier" label="label" value="blu" required readonly help-text="HelpText Message"></mg-input-select>`,
94
- `<mg-input-select identifier="identifier" label="label" value="blu" required disabled help-text="HelpText Message"></mg-input-select>`,
95
- ])('Should render with template', html => {
96
- test('render', async () => {
97
- const page = await createPage(`${html}
98
- <script>
99
- const mgInputSelect = document.querySelector('mg-input-select');
100
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
101
- </script>`);
102
- const element = await page.find('mg-input-select');
103
- expect(element).toHaveClass('hydrated');
104
- const screenshot = await page.screenshot();
105
- expect(screenshot).toMatchImageSnapshot();
106
- });
107
- });
108
- describe.each([
109
- `<mg-input-select identifier="identifier" label="label" required></mg-input-select>`,
110
- `<mg-input-select identifier="identifier" label="label" required lang="fr"></mg-input-select>`,
111
- ])('%s', html => {
112
- test('Should render error when leaving an empty required input', async () => {
113
- const page = await createPage(`${html}
114
- <script>
115
- const mgInputSelect = document.querySelector('mg-input-select');
116
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
117
- </script>`);
118
- const element = await page.find('mg-input-select');
119
- expect(element).toHaveClass('hydrated');
120
- await page.keyboard.down('Tab');
121
- await page.keyboard.down('Tab');
122
- await page.waitForChanges();
123
- const screenshot = await page.screenshot();
124
- expect(screenshot).toMatchImageSnapshot();
125
- });
126
- });
127
- test('Should render a grouped list', async () => {
128
- const page = await createPage(`<mg-input-select identifier="identifier" label="label"></mg-input-select>
129
- <script>
130
- const mgInputSelect = document.querySelector('mg-input-select');
131
- mgInputSelect.items = [
132
- { title: 'blu', value: 'blu', group: 'Le groupe A' },
133
- { title: 'blu', value: 'blublu', group: 'Le groupe B' },
134
- { title: 'bli', value: 'bli', group: 'Le groupe A' },
135
- { title: 'bli', value: 'blibli', group: 'Le groupe B' },
136
- { title: 'bla', value: 'blabla' },
137
- { title: 'blo', value: 'bloblo' },
138
- ];
139
- </script>`);
140
- const element = await page.find('mg-input-select');
141
- expect(element).toHaveClass('hydrated');
142
- await page.keyboard.down('Tab');
143
- await page.keyboard.down('Space');
144
- await page.waitForChanges();
145
- const screenshot = await page.screenshot();
146
- expect(screenshot).toMatchImageSnapshot();
147
- });
148
- describe.each([
149
- '<mg-input-select identifier="identifier" label="long label long label long label long label long label long label long label long label long label long label long label" tooltip="tooltip message"></mg-input-select>',
150
- '<mg-input-select identifier="identifier" label="long label long label long label long label long label long label long label long label long label long label long label" tooltip="tooltip message" label-on-top></mg-input-select>',
151
- ])('inside a div.mg-form-group', html => {
152
- test('render', async () => {
153
- const page = await createPage(`<div class="mg-form-group">${html}</div>
154
- <script>
155
- const mgInputSelect = document.querySelector('mg-input-select');
156
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
157
- </script>`);
158
- const element = await page.find('mg-input-select');
159
- expect(element).toHaveClass('hydrated');
160
- const screenshot = await page.screenshot();
161
- expect(screenshot).toMatchImageSnapshot();
162
- });
163
- });
164
- describe.each(['full', 16])('with custom width: %s', width => {
165
- test.each([false, true])('with label on top: %s', async (labelOnTop) => {
166
- const page = await createPage(`
167
- <mg-input-select identifier="identifier" label="label" mg-width="${width}" label-on-top="${labelOnTop}"></mg-input-select>
168
- <script>
169
- const mgInputSelect = document.querySelector('mg-input-select');
170
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];
171
- </script>
172
- `);
173
- const element = await page.find('mg-input-select');
174
- expect(element).toHaveClass('hydrated');
175
- const screenshot = await page.screenshot();
176
- expect(screenshot).toMatchImageSnapshot();
177
- });
178
- });
179
- test.each([false, true])('Ensure component fit in width 300px with label-on-top: %s', async (labelOnTop) => {
180
- const page = await createPage(`
181
- <mg-input-select identifier="identifier" label="label" label-on-top="${labelOnTop}"></mg-input-select>
182
- <script>
183
- const mgInputSelect = document.querySelector('mg-input-select');
184
- mgInputSelect.items = ['blu', 'bli', 'bla', 'blo', 'le long libellé qui va faire sortir le champ mg-input-select de sa zone de confort'];
185
- </script>
186
- `);
187
- const element = await page.find('mg-input-select');
188
- expect(element).toHaveClass('hydrated');
189
- await page.setViewport({ width: 300, height: 100 });
190
- const screenshot = await page.screenshot();
191
- expect(screenshot).toMatchImageSnapshot();
192
- });
193
- });
194
- //# sourceMappingURL=mg-input-select.e2e.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"mg-input-select.e2e.js","sourceRoot":"","sources":["../../../../../../src/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.ts"],"names":[],"mappings":"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","sourcesContent":["import { renderAttributes } from '../../../../../utils/e2e.test.utils';\nimport { createPage } from '../../../../../utils/stencil.e2e.test.utils';\nimport { widths } from '../../MgInput.conf';\n\ndescribe('mg-input-select', () => {\n describe.each([true, false])('without tooltip, case label on top %s', labelOnTop => {\n test('render', async () => {\n const page = await createPage(`\n <mg-input-select ${renderAttributes({ identifier: 'identifier', label: 'label', labelOnTop })}></mg-input-select>\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>`);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n\n await page.keyboard.down('Tab');\n\n await page.waitForChanges();\n\n const screenshotFocus = await page.screenshot();\n expect(screenshotFocus).toMatchImageSnapshot();\n\n await page.keyboard.down('Space');\n\n await page.waitForChanges();\n\n const screenshotList = await page.screenshot();\n expect(screenshotList).toMatchImageSnapshot();\n\n await page.keyboard.down('ArrowDown');\n await page.keyboard.down('ArrowDown');\n\n await page.waitForChanges();\n\n const screenshotSelection = await page.screenshot();\n expect(screenshotSelection).toMatchImageSnapshot();\n\n await page.keyboard.down('Enter');\n\n await page.waitForChanges();\n\n const screenshotSelected = await page.screenshot();\n expect(screenshotSelected).toMatchImageSnapshot();\n });\n\n test.each([undefined, ...widths])('render with width %s', async mgWidth => {\n const page = await createPage(`\n <mg-input-select ${renderAttributes({ identifier: 'identifier', label: 'label', mgWidth, labelOnTop })}></mg-input-select>\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>`);\n\n const screenshotSelected = await page.screenshot();\n expect(screenshotSelected).toMatchImageSnapshot();\n });\n });\n\n describe.each([\n `<mg-input-select identifier=\"identifier\" label=\"label\" label-on-top></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" label-hide></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" placeholder=\"placeholder\" help-text=\"HelpText Message\"></mg-input-select>`,\n ])('without tooltip', html => {\n test('render', async () => {\n const page = await createPage(`${html}\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>`);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n });\n\n test.each([true, false])('render with tooltip, case label-on-top %s', async labelOnTop => {\n const page = await createPage(`<mg-input-select identifier=\"identifier\" label=\"label\" tooltip=\"Tooltip message\" label-on-top=\"${labelOnTop}\"></mg-input-select>\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>`);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n\n await page.keyboard.down('Tab');\n if (!labelOnTop) {\n // Ensure to display tooltip\n await page.setViewport({ width: 600, height: 65 });\n // when label on top tooltip is on fist tab (next to label)\n await page.keyboard.down('Tab');\n }\n\n await page.waitForChanges();\n\n const screenshotTooltip = await page.screenshot();\n expect(screenshotTooltip).toMatchImageSnapshot();\n });\n\n describe.each([\n `<mg-input-select identifier=\"identifier\" label=\"label\" readonly></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"blu\"></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"blu\" readonly></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"blu\" readonly label-on-top></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" disabled></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"blu\" disabled></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"batman\" help-text='<mg-icon icon=\"user\" size=\"small\"></mg-icon> Welcome batman'></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"blu\" required help-text=\"HelpText Message\"></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"blu\" required readonly help-text=\"HelpText Message\"></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" value=\"blu\" required disabled help-text=\"HelpText Message\"></mg-input-select>`,\n ])('Should render with template', html => {\n test('render', async () => {\n const page = await createPage(`${html}\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>`);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n });\n\n describe.each([\n `<mg-input-select identifier=\"identifier\" label=\"label\" required></mg-input-select>`,\n `<mg-input-select identifier=\"identifier\" label=\"label\" required lang=\"fr\"></mg-input-select>`,\n ])('%s', html => {\n test('Should render error when leaving an empty required input', async () => {\n const page = await createPage(`${html}\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>`);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n await page.keyboard.down('Tab');\n await page.keyboard.down('Tab');\n\n await page.waitForChanges();\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n });\n\n test('Should render a grouped list', async () => {\n const page = await createPage(`<mg-input-select identifier=\"identifier\" label=\"label\"></mg-input-select>\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = [\n { title: 'blu', value: 'blu', group: 'Le groupe A' },\n { title: 'blu', value: 'blublu', group: 'Le groupe B' },\n { title: 'bli', value: 'bli', group: 'Le groupe A' },\n { title: 'bli', value: 'blibli', group: 'Le groupe B' },\n { title: 'bla', value: 'blabla' },\n { title: 'blo', value: 'bloblo' },\n ];\n </script>`);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n await page.keyboard.down('Tab');\n await page.keyboard.down('Space');\n\n await page.waitForChanges();\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n\n describe.each([\n '<mg-input-select identifier=\"identifier\" label=\"long label long label long label long label long label long label long label long label long label long label long label\" tooltip=\"tooltip message\"></mg-input-select>',\n '<mg-input-select identifier=\"identifier\" label=\"long label long label long label long label long label long label long label long label long label long label long label\" tooltip=\"tooltip message\" label-on-top></mg-input-select>',\n ])('inside a div.mg-form-group', html => {\n test('render', async () => {\n const page = await createPage(`<div class=\"mg-form-group\">${html}</div>\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>`);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n });\n\n describe.each(['full', 16])('with custom width: %s', width => {\n test.each([false, true])('with label on top: %s', async labelOnTop => {\n const page = await createPage(`\n <mg-input-select identifier=\"identifier\" label=\"label\" mg-width=\"${width}\" label-on-top=\"${labelOnTop}\"></mg-input-select>\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo'];\n </script>\n `);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n });\n\n test.each([false, true])('Ensure component fit in width 300px with label-on-top: %s', async labelOnTop => {\n const page = await createPage(`\n <mg-input-select identifier=\"identifier\" label=\"label\" label-on-top=\"${labelOnTop}\"></mg-input-select>\n <script>\n const mgInputSelect = document.querySelector('mg-input-select');\n mgInputSelect.items = ['blu', 'bli', 'bla', 'blo', 'le long libellé qui va faire sortir le champ mg-input-select de sa zone de confort'];\n </script>\n `);\n\n const element = await page.find('mg-input-select');\n\n expect(element).toHaveClass('hydrated');\n\n await page.setViewport({ width: 300, height: 100 });\n\n const screenshot = await page.screenshot();\n expect(screenshot).toMatchImageSnapshot();\n });\n});\n"]}
@@ -1,399 +0,0 @@
1
- import { h } from "@stencil/core";
2
- import { newSpecPage } from "@stencil/core/testing";
3
- import { MgInputSelect } from "../mg-input-select";
4
- import messages from "../../../../../locales/en/messages.json";
5
- const getPage = async (args) => {
6
- const page = newSpecPage({
7
- components: [MgInputSelect],
8
- template: () => h("mg-input-select", Object.assign({}, args)),
9
- });
10
- jest.runAllTimers();
11
- return page;
12
- };
13
- describe('mg-input-select', () => {
14
- beforeEach(() => jest.useFakeTimers());
15
- afterEach(() => jest.runOnlyPendingTimers());
16
- test.each([
17
- { label: 'label', identifier: 'identifier', items: [] },
18
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'] },
19
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], labelHide: true },
20
- {
21
- label: 'label',
22
- identifier: 'identifier',
23
- items: [
24
- { title: 'blu', value: 'u' },
25
- { title: 'bli', value: 'i' },
26
- { title: 'blo', value: 'o' },
27
- { title: 'bla', value: 'a' },
28
- ],
29
- },
30
- {
31
- label: 'label',
32
- identifier: 'identifier',
33
- items: [
34
- { title: 'blu', value: 'u', group: 'blu' },
35
- { title: 'bli', value: 'i', group: 'blu' },
36
- { title: 'blo', value: 'o', group: 'blo' },
37
- { title: 'bla', value: 'a' },
38
- ],
39
- },
40
- {
41
- label: 'label',
42
- identifier: 'identifier',
43
- items: [
44
- { title: 'blu', value: 'u' },
45
- { title: 'bli', value: 'i' },
46
- { title: 'blo', value: 'o' },
47
- { title: 'bla', value: 'a' },
48
- ],
49
- readonly: true,
50
- value: 'o',
51
- },
52
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], labelOnTop: true },
53
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], readonly: true },
54
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], readonly: true, labelOnTop: true, tooltip: 'Tooltip message' },
55
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], required: true, helpText: 'My help text', value: 'blu' },
56
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], required: true, readonly: true, helpText: 'My help text', value: 'blu' },
57
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], required: true, disabled: true, helpText: 'My help text', value: 'blu' },
58
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], tooltip: 'My Tooltip Message' },
59
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], tooltip: 'My Tooltip Message', labelOnTop: true },
60
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], placeholder: 'placeholder' },
61
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], placeholder: 'placeholder', placeholderHide: true },
62
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], placeholder: 'placeholder', placeholderDisabled: true },
63
- { label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], placeholder: 'placeholder', placeholderDisabled: true, value: 'ble' },
64
- ])('Should render with args %s:', async (args) => {
65
- const { root } = await getPage(args);
66
- expect(root).toMatchSnapshot();
67
- });
68
- test.each(['', ' ', undefined])('Should not render with invalid identifier property: %s', async (identifier) => {
69
- expect.assertions(1);
70
- try {
71
- await getPage({ identifier, items: ['blu', 'bli', 'blo', 'bla'] });
72
- }
73
- catch (err) {
74
- expect(err.message).toMatch('<mg-input> prop "identifier" is required.');
75
- }
76
- });
77
- test.each(['', ' ', undefined])('Should throw error with invalid label property: %s', async (label) => {
78
- expect.assertions(1);
79
- try {
80
- await getPage({ identifier: 'identifier', label, items: ['blu', 'bli', 'blo', 'bla'] });
81
- }
82
- catch (err) {
83
- expect(err.message).toMatch('<mg-input> prop "label" is required.');
84
- }
85
- });
86
- test('Should throw an error with labelOnTop & labelHide set to true', async () => {
87
- expect.assertions(1);
88
- try {
89
- await getPage({ identifier: 'identifier', label: 'batman', labelOnTop: true, labelHide: true, items: ['batman', 'joker'] });
90
- }
91
- catch (err) {
92
- expect(err.message).toMatch('<mg-input> prop "labelOnTop" must not be paired with the prop "labelHide"');
93
- }
94
- });
95
- test.each([[['blu', { title: 'blu', value: 'blu' }]], [['blu', { blu: 'blu' }]], [[{ title: 'blu', value: 'blu' }, { blu: 'blu' }]]])('Should throw error with invalid items property: %s', async (items) => {
96
- expect.assertions(1);
97
- try {
98
- await getPage({ label: 'Label', items });
99
- }
100
- catch (err) {
101
- expect(err.message).toMatch('<mg-input-select> prop "items" is required, can be an empty Array or all items must be the same type: string or Option.');
102
- }
103
- });
104
- test.each([
105
- { items: ['batman', 'robin', 'joker', 'bane'], selectedOption: '' },
106
- { items: ['batman', 'robin', 'joker', 'bane'], selectedOption: 3 },
107
- {
108
- items: [
109
- { title: 'batman', value: 'u' },
110
- { title: 'robin', value: 'i' },
111
- { title: 'joker', value: 'o' },
112
- { title: 'bane', value: 'a' },
113
- ],
114
- selectedOption: 2,
115
- },
116
- {
117
- items: [
118
- { title: 'batman', value: 1 },
119
- { title: 'robin', value: 2 },
120
- { title: 'joker', value: 3 },
121
- { title: 'bane', value: 4 },
122
- ],
123
- selectedOption: 1,
124
- },
125
- {
126
- items: [
127
- { title: 'batman', value: true },
128
- { title: 'robin', value: false },
129
- ],
130
- selectedOption: 0,
131
- },
132
- {
133
- items: [
134
- { title: 'blu', value: undefined },
135
- { title: 'bli', value: 42 },
136
- ],
137
- selectedOption: 0,
138
- },
139
- {
140
- items: [
141
- { title: 'batman', value: { name: 'Batman' } },
142
- { title: 'robin', value: { name: 'Robin' } },
143
- ],
144
- selectedOption: 1,
145
- },
146
- {
147
- items: [
148
- { title: 'Batman', value: { name: 'Batman', group: 'Heroes' } },
149
- { title: 'Robin', value: { name: 'Robin', group: 'Heroes' } },
150
- { title: 'Joker', value: { name: 'Joker', group: 'Super Vilains' } },
151
- { title: 'Bane', value: { name: 'Bane', group: 'Super Vilains' } },
152
- ],
153
- selectedOption: 2,
154
- },
155
- ])('Should trigger events for (%s)', async ({ items, selectedOption }) => {
156
- var _a;
157
- const args = { label: 'label', items, identifier: 'identifier', helpText: 'My help text', value: 'blu' };
158
- const page = await getPage(args);
159
- const element = page.doc.querySelector('mg-input-select');
160
- const input = element.shadowRoot.querySelector('select');
161
- //mock validity
162
- input.checkValidity = jest.fn(() => true);
163
- Object.defineProperty(input, 'validity', {
164
- get: jest.fn(() => ({
165
- valueMissing: false,
166
- })),
167
- });
168
- jest.spyOn(page.rootInstance.valueChange, 'emit');
169
- input.dispatchEvent(new CustomEvent('focus', { bubbles: true }));
170
- await page.waitForChanges();
171
- expect(page.root).toMatchSnapshot(); //Snapshot on focus
172
- input.value = ((_a = items[selectedOption]) === null || _a === void 0 ? void 0 : _a.title) || items[selectedOption] || selectedOption;
173
- input.dispatchEvent(new CustomEvent('input', { bubbles: true }));
174
- await page.waitForChanges();
175
- const expectedEmitValue = selectedOption !== '' ? (typeof items[selectedOption] === 'object' ? items[selectedOption].value : items[selectedOption]) : null;
176
- expect(page.rootInstance.valueChange.emit).toHaveBeenCalledWith(expectedEmitValue);
177
- });
178
- describe.each(['readonly', 'disabled'])('validity, case next state is %s', nextState => {
179
- test.each([
180
- { validity: true, valueMissing: false },
181
- { validity: false, valueMissing: true },
182
- ])('validity (%s), valueMissing (%s)', async ({ validity, valueMissing }) => {
183
- const args = { label: 'label', items: ['blu', 'bli', 'blo', 'bla'], identifier: 'identifier', patternErrorMessage: 'Non' };
184
- const page = await getPage(args);
185
- const element = page.doc.querySelector('mg-input-select');
186
- const input = element.shadowRoot.querySelector('select');
187
- //mock validity
188
- input.checkValidity = jest.fn(() => validity);
189
- Object.defineProperty(input, 'validity', {
190
- get: jest.fn(() => ({
191
- valueMissing,
192
- })),
193
- });
194
- input.dispatchEvent(new CustomEvent('blur', { bubbles: true }));
195
- await page.waitForChanges();
196
- if (validity) {
197
- expect(page.rootInstance.errorMessage).toBeUndefined();
198
- }
199
- else if (valueMissing) {
200
- expect(page.rootInstance.errorMessage).toEqual(messages.errors.required);
201
- }
202
- expect(page.rootInstance.valid).toEqual(validity);
203
- expect(page.rootInstance.invalid).toEqual(!validity);
204
- if (valueMissing) {
205
- expect(page.root).toMatchSnapshot(); //Snapshot with readonly/disabled FALSE
206
- element[nextState] = true;
207
- await page.waitForChanges();
208
- expect(page.root).toMatchSnapshot(); //Snapshot with readonly/disabled TRUE
209
- }
210
- });
211
- });
212
- test("display error with displayError component's public method", async () => {
213
- const page = await getPage({ label: 'label', items: ['batman', 'robin', 'joker', 'bane'], identifier: 'identifier', required: true });
214
- expect(page.root).toMatchSnapshot();
215
- const element = page.doc.querySelector('mg-input-select');
216
- const input = element.shadowRoot.querySelector('select');
217
- //mock validity
218
- input.checkValidity = jest.fn(() => false);
219
- Object.defineProperty(input, 'validity', {
220
- get: jest.fn(() => ({
221
- valueMissing: true,
222
- })),
223
- });
224
- await element.displayError();
225
- await page.waitForChanges();
226
- expect(page.root).toMatchSnapshot();
227
- });
228
- test.each([
229
- {
230
- valid: true,
231
- errorMessage: 'Override error',
232
- },
233
- {
234
- valid: false,
235
- errorMessage: 'Override error',
236
- },
237
- ])("should display override error with setError component's public method", async (params) => {
238
- const page = await getPage({ label: 'label', identifier: 'identifier', items: ['batman', 'robin', 'joker', 'bane'], required: true });
239
- expect(page.root).toMatchSnapshot();
240
- const element = page.doc.querySelector('mg-input-select');
241
- const input = element.shadowRoot.querySelector('select');
242
- //mock validity
243
- Object.defineProperty(input, 'validity', {
244
- get: () => ({}),
245
- });
246
- await element.setError(params.valid, params.errorMessage);
247
- await page.waitForChanges();
248
- expect(page.root).toMatchSnapshot();
249
- });
250
- test.each([
251
- {
252
- valid: '',
253
- errorMessage: 'Override error',
254
- error: '<mg-input-select> method "setError()" param "valid" must be a boolean',
255
- },
256
- {
257
- valid: undefined,
258
- errorMessage: 'Override error',
259
- error: '<mg-input-select> method "setError()" param "valid" must be a boolean',
260
- },
261
- {
262
- valid: true,
263
- errorMessage: ' ',
264
- error: '<mg-input-select> method "setError()" param "errorMessage" must be a string',
265
- },
266
- {
267
- valid: true,
268
- errorMessage: true,
269
- error: '<mg-input-select> method "setError()" param "errorMessage" must be a string',
270
- },
271
- ])("shloud throw error with setError component's public method invalid params", async (params) => {
272
- expect.assertions(1);
273
- try {
274
- const page = await getPage({ label: 'label', identifier: 'identifier', items: ['batman', 'robin', 'joker', 'bane'], required: true });
275
- const element = page.doc.querySelector('mg-input-select');
276
- await element.setError(params.valid, params.errorMessage);
277
- await page.waitForChanges();
278
- }
279
- catch (err) {
280
- expect(err.message).toMatch(params.error);
281
- }
282
- });
283
- test.each(['fr', 'xx'])('display error message with locale: %s', async (lang) => {
284
- const page = await getPage({ label: 'label', items: ['batman', 'robin', 'joker', 'bane'], identifier: 'identifier', required: true, lang });
285
- const element = page.doc.querySelector('mg-input-select');
286
- const input = element.shadowRoot.querySelector('select');
287
- //mock validity
288
- input.checkValidity = jest.fn(() => false);
289
- Object.defineProperty(input, 'validity', {
290
- get: jest.fn(() => ({
291
- valueMissing: true,
292
- })),
293
- });
294
- await element.displayError();
295
- await page.waitForChanges();
296
- expect(page.root).toMatchSnapshot();
297
- });
298
- test('Should remove error on input', async () => {
299
- const page = await getPage({ label: 'label', items: ['batman', 'robin', 'joker', 'bane'], identifier: 'identifier', required: true });
300
- const element = page.doc.querySelector('mg-input-select');
301
- const input = element.shadowRoot.querySelector('select');
302
- //mock validity
303
- input.checkValidity = jest.fn().mockReturnValueOnce(false).mockReturnValueOnce(true).mockReturnValueOnce(true);
304
- Object.defineProperty(input, 'validity', {
305
- get: jest
306
- .fn()
307
- .mockReturnValueOnce({
308
- valueMissing: true,
309
- })
310
- .mockReturnValueOnce({
311
- valueMissing: true,
312
- })
313
- .mockReturnValueOnce({
314
- valueMissing: false,
315
- })
316
- .mockReturnValueOnce({
317
- valueMissing: false,
318
- }),
319
- });
320
- await element.displayError();
321
- await page.waitForChanges();
322
- expect(page.rootInstance.hasDisplayedError).toEqual(true);
323
- expect(page.rootInstance.errorMessage).toEqual(messages.errors.required);
324
- input.value = 'batman';
325
- input.dispatchEvent(new CustomEvent('input', { bubbles: true }));
326
- await page.waitForChanges();
327
- expect(page.rootInstance.hasDisplayedError).toEqual(true);
328
- expect(page.rootInstance.errorMessage).toBeUndefined();
329
- input.dispatchEvent(new CustomEvent('blur', { bubbles: true }));
330
- await page.waitForChanges();
331
- expect(page.rootInstance.hasDisplayedError).toEqual(false);
332
- });
333
- test('Should remove error on input when required change dynamically', async () => {
334
- const page = await getPage({ label: 'label', items: ['batman', 'robin', 'joker', 'bane'], identifier: 'identifier', required: true });
335
- const element = page.doc.querySelector('mg-input-select');
336
- const input = element.shadowRoot.querySelector('select');
337
- //mock validity
338
- input.checkValidity = jest.fn().mockReturnValueOnce(false).mockReturnValueOnce(true).mockReturnValueOnce(true);
339
- Object.defineProperty(input, 'validity', {
340
- get: jest
341
- .fn()
342
- .mockReturnValueOnce({
343
- valueMissing: true,
344
- })
345
- .mockReturnValueOnce({
346
- valueMissing: true,
347
- })
348
- .mockReturnValueOnce({
349
- valueMissing: false,
350
- })
351
- .mockReturnValueOnce({
352
- valueMissing: false,
353
- }),
354
- });
355
- await element.displayError();
356
- await page.waitForChanges();
357
- expect(page.rootInstance.hasDisplayedError).toEqual(true);
358
- expect(page.rootInstance.errorMessage).toEqual(messages.errors.required);
359
- element.required = false;
360
- await page.waitForChanges();
361
- // Error message should disapear and change the hasDisplayedError status
362
- expect(page.rootInstance.hasDisplayedError).toEqual(false);
363
- expect(page.rootInstance.errorMessage).toBeUndefined();
364
- element.required = true;
365
- await page.waitForChanges();
366
- // If back on required the message is still not displayed
367
- expect(page.rootInstance.hasDisplayedError).toEqual(false);
368
- expect(page.rootInstance.errorMessage).toBeUndefined();
369
- });
370
- test.each([[['batman']], [[{ title: 'batman', value: 'b' }]]])('Should not update value with invalid input value: %s', async (items) => {
371
- const page = await getPage({ identifier: 'identifier', label: 'batman', items });
372
- const element = page.doc.querySelector('mg-input-select');
373
- const input = element.shadowRoot.querySelector('select');
374
- input.checkValidity = jest.fn().mockReturnValueOnce(true);
375
- jest.spyOn(page.rootInstance.inputValid, 'emit');
376
- input.value = 'hello';
377
- input.dispatchEvent(new CustomEvent('input', { bubbles: true }));
378
- await page.waitForChanges();
379
- expect(element.value).toBe('hello');
380
- expect(page.rootInstance.inputValid.emit).toHaveBeenCalledWith(false);
381
- });
382
- test('Should update mg-width', async () => {
383
- const page = await getPage({ label: 'label', identifier: 'identifier', items: ['blu', 'bli', 'blo', 'bla'], mgWidth: undefined });
384
- const element = page.doc.querySelector('mg-input-select');
385
- element.mgWidth = 2;
386
- await page.waitForChanges();
387
- expect(page.root).toMatchSnapshot();
388
- element.mgWidth = 4;
389
- await page.waitForChanges();
390
- expect(page.root).toMatchSnapshot();
391
- element.mgWidth = 16;
392
- await page.waitForChanges();
393
- expect(page.root).toMatchSnapshot();
394
- element.mgWidth = 'full';
395
- await page.waitForChanges();
396
- expect(page.root).toMatchSnapshot();
397
- });
398
- });
399
- //# sourceMappingURL=mg-input-select.spec.js.map