@mgdis/mg-components 5.19.3 → 5.20.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (488) hide show
  1. package/dist/cjs/{components.utils-69435877.js → components.utils-cd908d4e.js} +102 -99
  2. package/dist/cjs/components.utils-cd908d4e.js.map +1 -0
  3. package/dist/cjs/{index-60dd0c56.js → index-8532b5e9.js} +185 -87
  4. package/dist/cjs/index-8532b5e9.js.map +1 -0
  5. package/dist/cjs/loader.cjs.js +2 -2
  6. package/dist/cjs/mg-action-more_34.cjs.entry.js +5115 -5110
  7. package/dist/cjs/mg-action-more_34.cjs.entry.js.map +1 -1
  8. package/dist/cjs/mg-components.cjs.js +3 -3
  9. package/dist/cjs/mg-components.cjs.js.map +1 -1
  10. package/dist/cjs/mg-item-more.cjs.entry.js +224 -224
  11. package/dist/cjs/mg-item-more.cjs.entry.js.map +1 -1
  12. package/dist/collection/assets/icons/index.js +192 -190
  13. package/dist/collection/assets/icons/index.js.map +1 -0
  14. package/dist/collection/collection-manifest.json +6 -6
  15. package/dist/collection/components/atoms/mg-badge/mg-badge.js +161 -161
  16. package/dist/collection/components/atoms/mg-badge/mg-badge.js.map +1 -1
  17. package/dist/collection/components/atoms/mg-button/mg-button.js +362 -362
  18. package/dist/collection/components/atoms/mg-button/mg-button.js.map +1 -1
  19. package/dist/collection/components/atoms/mg-card/mg-card.js +126 -126
  20. package/dist/collection/components/atoms/mg-card/mg-card.js.map +1 -1
  21. package/dist/collection/components/atoms/mg-character-left/mg-character-left.js +101 -101
  22. package/dist/collection/components/atoms/mg-character-left/mg-character-left.js.map +1 -1
  23. package/dist/collection/components/atoms/mg-divider/mg-divider.js +47 -47
  24. package/dist/collection/components/atoms/mg-divider/mg-divider.js.map +1 -1
  25. package/dist/collection/components/atoms/mg-icon/mg-icon.js +231 -231
  26. package/dist/collection/components/atoms/mg-icon/mg-icon.js.map +1 -1
  27. package/dist/collection/components/atoms/mg-input-title/mg-input-title.js +132 -132
  28. package/dist/collection/components/atoms/mg-input-title/mg-input-title.js.map +1 -1
  29. package/dist/collection/components/atoms/mg-tag/mg-tag.js +158 -158
  30. package/dist/collection/components/atoms/mg-tag/mg-tag.js.map +1 -1
  31. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.js +46 -46
  32. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.js.map +1 -1
  33. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.conf.js +3 -3
  34. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.conf.js.map +1 -1
  35. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js +398 -398
  36. package/dist/collection/components/atoms/mg-tooltip/mg-tooltip.js.map +1 -1
  37. package/dist/collection/components/molecules/inputs/MgInput.conf.js +2 -2
  38. package/dist/collection/components/molecules/inputs/MgInput.conf.js.map +1 -1
  39. package/dist/collection/components/molecules/inputs/MgInput.js +84 -84
  40. package/dist/collection/components/molecules/inputs/MgInput.js.map +1 -1
  41. package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js +8 -8
  42. package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js.map +1 -1
  43. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.js +266 -266
  44. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.js.map +1 -1
  45. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.js +4 -4
  46. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.js.map +1 -1
  47. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js +788 -791
  48. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js.map +1 -1
  49. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.conf.js +4 -4
  50. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.conf.js.map +1 -1
  51. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js +588 -578
  52. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js.map +1 -1
  53. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js +4 -4
  54. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js.map +1 -1
  55. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js +778 -773
  56. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js.map +1 -1
  57. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js +536 -526
  58. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js.map +1 -1
  59. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js +565 -555
  60. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js.map +1 -1
  61. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js +700 -695
  62. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js.map +1 -1
  63. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js +770 -760
  64. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js.map +1 -1
  65. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js +705 -695
  66. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js.map +1 -1
  67. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +527 -522
  68. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js.map +1 -1
  69. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js +2 -2
  70. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.conf.js.map +1 -1
  71. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js +263 -263
  72. package/dist/collection/components/molecules/menu/mg-menu/mg-menu.js.map +1 -1
  73. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js +6 -6
  74. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.conf.js.map +1 -1
  75. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js +423 -423
  76. package/dist/collection/components/molecules/menu/mg-menu-item/mg-menu-item.js.map +1 -1
  77. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js +214 -214
  78. package/dist/collection/components/molecules/mg-action-more/mg-action-more.js.map +1 -1
  79. package/dist/collection/components/molecules/mg-details/mg-details.js +155 -150
  80. package/dist/collection/components/molecules/mg-details/mg-details.js.map +1 -1
  81. package/dist/collection/components/molecules/mg-form/mg-form.js +332 -327
  82. package/dist/collection/components/molecules/mg-form/mg-form.js.map +1 -1
  83. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +85 -85
  84. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js.map +1 -1
  85. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js +189 -189
  86. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js.map +1 -1
  87. package/dist/collection/components/molecules/mg-message/mg-message.js +325 -304
  88. package/dist/collection/components/molecules/mg-message/mg-message.js.map +1 -1
  89. package/dist/collection/components/molecules/mg-modal/mg-modal.js +317 -317
  90. package/dist/collection/components/molecules/mg-modal/mg-modal.js.map +1 -1
  91. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js +2 -2
  92. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js.map +1 -1
  93. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +216 -216
  94. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js.map +1 -1
  95. package/dist/collection/components/molecules/mg-panel/mg-panel.js +409 -399
  96. package/dist/collection/components/molecules/mg-panel/mg-panel.js.map +1 -1
  97. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js +91 -91
  98. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js.map +1 -1
  99. package/dist/collection/components/molecules/mg-popover/mg-popover.js +336 -329
  100. package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -1
  101. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +94 -94
  102. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js.map +1 -1
  103. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js +4 -4
  104. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js.map +1 -1
  105. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +348 -343
  106. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js.map +1 -1
  107. package/dist/collection/locales/fr/messages.json +4 -4
  108. package/dist/collection/locales/index.spec.js +20 -20
  109. package/dist/collection/locales/index.spec.js.map +1 -1
  110. package/dist/collection/utils/behaviors.utils.js +127 -127
  111. package/dist/collection/utils/behaviors.utils.js.map +1 -1
  112. package/dist/collection/utils/behaviors.utils.spec.js +42 -42
  113. package/dist/collection/utils/behaviors.utils.spec.js.map +1 -1
  114. package/dist/collection/utils/components.utils.js +77 -75
  115. package/dist/collection/utils/components.utils.js.map +1 -1
  116. package/dist/collection/utils/components.utils.spec.js +150 -140
  117. package/dist/collection/utils/components.utils.spec.js.map +1 -1
  118. package/dist/collection/utils/e2e.test.utils.js +21 -21
  119. package/dist/collection/utils/e2e.test.utils.js.map +1 -1
  120. package/dist/collection/utils/locale.utils.js +17 -17
  121. package/dist/collection/utils/locale.utils.js.map +1 -1
  122. package/dist/collection/utils/locale.utils.spec.js +45 -45
  123. package/dist/collection/utils/locale.utils.spec.js.map +1 -1
  124. package/dist/collection/utils/playwright.e2e.test.utils.js +41 -41
  125. package/dist/collection/utils/playwright.e2e.test.utils.js.map +1 -1
  126. package/dist/collection/utils/playwright.fixture.js +24 -0
  127. package/dist/collection/utils/playwright.fixture.js.map +1 -0
  128. package/dist/collection/utils/unit.test.utils.js +50 -50
  129. package/dist/collection/utils/unit.test.utils.js.map +1 -1
  130. package/dist/components/MgInput.js +98 -98
  131. package/dist/components/MgInput.js.map +1 -1
  132. package/dist/components/components.utils.js +78 -76
  133. package/dist/components/components.utils.js.map +1 -1
  134. package/dist/components/index2.js +21 -21
  135. package/dist/components/index2.js.map +1 -1
  136. package/dist/components/mg-action-more.d.ts +2 -2
  137. package/dist/components/mg-action-more.js +173 -173
  138. package/dist/components/mg-action-more.js.map +1 -1
  139. package/dist/components/mg-badge.d.ts +2 -2
  140. package/dist/components/mg-badge2.js +83 -83
  141. package/dist/components/mg-badge2.js.map +1 -1
  142. package/dist/components/mg-button.d.ts +2 -2
  143. package/dist/components/mg-button2.js +182 -182
  144. package/dist/components/mg-button2.js.map +1 -1
  145. package/dist/components/mg-card.d.ts +2 -2
  146. package/dist/components/mg-card2.js +77 -77
  147. package/dist/components/mg-card2.js.map +1 -1
  148. package/dist/components/mg-character-left.d.ts +2 -2
  149. package/dist/components/mg-character-left2.js +50 -50
  150. package/dist/components/mg-character-left2.js.map +1 -1
  151. package/dist/components/mg-details.d.ts +2 -2
  152. package/dist/components/mg-details.js +69 -69
  153. package/dist/components/mg-details.js.map +1 -1
  154. package/dist/components/mg-divider.d.ts +2 -2
  155. package/dist/components/mg-divider.js +30 -30
  156. package/dist/components/mg-divider.js.map +1 -1
  157. package/dist/components/mg-form.d.ts +2 -2
  158. package/dist/components/mg-form.js +171 -171
  159. package/dist/components/mg-form.js.map +1 -1
  160. package/dist/components/mg-icon.d.ts +2 -2
  161. package/dist/components/mg-icon2.js +318 -316
  162. package/dist/components/mg-icon2.js.map +1 -1
  163. package/dist/components/mg-illustrated-message.d.ts +2 -2
  164. package/dist/components/mg-illustrated-message.js +51 -51
  165. package/dist/components/mg-illustrated-message.js.map +1 -1
  166. package/dist/components/mg-input-checkbox-paginated.d.ts +2 -2
  167. package/dist/components/mg-input-checkbox-paginated2.js +170 -170
  168. package/dist/components/mg-input-checkbox-paginated2.js.map +1 -1
  169. package/dist/components/mg-input-checkbox.d.ts +2 -2
  170. package/dist/components/mg-input-checkbox.js +477 -480
  171. package/dist/components/mg-input-checkbox.js.map +1 -1
  172. package/dist/components/mg-input-date.d.ts +2 -2
  173. package/dist/components/mg-input-date.js +265 -265
  174. package/dist/components/mg-input-date.js.map +1 -1
  175. package/dist/components/mg-input-numeric.d.ts +2 -2
  176. package/dist/components/mg-input-numeric.js +353 -353
  177. package/dist/components/mg-input-numeric.js.map +1 -1
  178. package/dist/components/mg-input-password.d.ts +2 -2
  179. package/dist/components/mg-input-password.js +204 -204
  180. package/dist/components/mg-input-password.js.map +1 -1
  181. package/dist/components/mg-input-radio.d.ts +2 -2
  182. package/dist/components/mg-input-radio.js +234 -234
  183. package/dist/components/mg-input-radio.js.map +1 -1
  184. package/dist/components/mg-input-select.d.ts +2 -2
  185. package/dist/components/mg-input-select2.js +315 -315
  186. package/dist/components/mg-input-select2.js.map +1 -1
  187. package/dist/components/mg-input-text.d.ts +2 -2
  188. package/dist/components/mg-input-text2.js +305 -305
  189. package/dist/components/mg-input-text2.js.map +1 -1
  190. package/dist/components/mg-input-textarea.d.ts +2 -2
  191. package/dist/components/mg-input-textarea.js +276 -276
  192. package/dist/components/mg-input-textarea.js.map +1 -1
  193. package/dist/components/mg-input-title.d.ts +2 -2
  194. package/dist/components/mg-input-title2.js +60 -60
  195. package/dist/components/mg-input-title2.js.map +1 -1
  196. package/dist/components/mg-input-toggle.d.ts +2 -2
  197. package/dist/components/mg-input-toggle.js +251 -251
  198. package/dist/components/mg-input-toggle.js.map +1 -1
  199. package/dist/components/mg-item-more.d.ts +2 -2
  200. package/dist/components/mg-item-more.js +285 -285
  201. package/dist/components/mg-item-more.js.map +1 -1
  202. package/dist/components/mg-menu-item.d.ts +2 -2
  203. package/dist/components/mg-menu-item2.js +344 -344
  204. package/dist/components/mg-menu-item2.js.map +1 -1
  205. package/dist/components/mg-menu.conf.js +2 -2
  206. package/dist/components/mg-menu.conf.js.map +1 -1
  207. package/dist/components/mg-menu.d.ts +2 -2
  208. package/dist/components/mg-menu2.js +176 -176
  209. package/dist/components/mg-menu2.js.map +1 -1
  210. package/dist/components/mg-message.d.ts +2 -2
  211. package/dist/components/mg-message.js +197 -192
  212. package/dist/components/mg-message.js.map +1 -1
  213. package/dist/components/mg-modal.d.ts +2 -2
  214. package/dist/components/mg-modal.js +198 -198
  215. package/dist/components/mg-modal.js.map +1 -1
  216. package/dist/components/mg-pagination.d.ts +2 -2
  217. package/dist/components/mg-pagination2.js +133 -133
  218. package/dist/components/mg-pagination2.js.map +1 -1
  219. package/dist/components/mg-panel.d.ts +2 -2
  220. package/dist/components/mg-panel.js +238 -238
  221. package/dist/components/mg-panel.js.map +1 -1
  222. package/dist/components/mg-popover-content.d.ts +2 -2
  223. package/dist/components/mg-popover-content2.js +69 -69
  224. package/dist/components/mg-popover-content2.js.map +1 -1
  225. package/dist/components/mg-popover.d.ts +2 -2
  226. package/dist/components/mg-popover2.js +224 -222
  227. package/dist/components/mg-popover2.js.map +1 -1
  228. package/dist/components/mg-skip-links.d.ts +2 -2
  229. package/dist/components/mg-skip-links.js +57 -57
  230. package/dist/components/mg-skip-links.js.map +1 -1
  231. package/dist/components/mg-tabs.d.ts +2 -2
  232. package/dist/components/mg-tabs.js +243 -243
  233. package/dist/components/mg-tabs.js.map +1 -1
  234. package/dist/components/mg-tag.d.ts +2 -2
  235. package/dist/components/mg-tag.js +97 -97
  236. package/dist/components/mg-tag.js.map +1 -1
  237. package/dist/components/mg-tooltip-content.d.ts +2 -2
  238. package/dist/components/mg-tooltip-content2.js +30 -30
  239. package/dist/components/mg-tooltip-content2.js.map +1 -1
  240. package/dist/components/mg-tooltip.d.ts +2 -2
  241. package/dist/components/mg-tooltip2.js +316 -316
  242. package/dist/components/mg-tooltip2.js.map +1 -1
  243. package/dist/esm/{components.utils-6cf27db1.js → components.utils-0d67c31c.js} +102 -100
  244. package/dist/esm/components.utils-0d67c31c.js.map +1 -0
  245. package/dist/esm/{index-0f833068.js → index-f34a3a2c.js} +185 -87
  246. package/dist/esm/index-f34a3a2c.js.map +1 -0
  247. package/dist/esm/loader.js +3 -3
  248. package/dist/esm/mg-action-more_34.entry.js +5115 -5110
  249. package/dist/esm/mg-action-more_34.entry.js.map +1 -1
  250. package/dist/esm/mg-components.js +4 -4
  251. package/dist/esm/mg-components.js.map +1 -1
  252. package/dist/esm/mg-item-more.entry.js +224 -224
  253. package/dist/esm/mg-item-more.entry.js.map +1 -1
  254. package/dist/mg-components/locales/fr/messages.json +4 -4
  255. package/dist/mg-components/mg-components.esm.js +1 -1
  256. package/dist/mg-components/mg-components.esm.js.map +1 -1
  257. package/dist/mg-components/p-629454f7.entry.js +2 -0
  258. package/dist/mg-components/p-629454f7.entry.js.map +1 -0
  259. package/dist/mg-components/p-7444ff40.js +3 -0
  260. package/dist/mg-components/p-7444ff40.js.map +1 -0
  261. package/dist/mg-components/p-af42d17b.js +2 -0
  262. package/dist/mg-components/p-af42d17b.js.map +1 -0
  263. package/dist/mg-components/{p-91feda5a.entry.js → p-e0fb0f3c.entry.js} +2 -2
  264. package/dist/types/assets/icons/index.d.ts +193 -0
  265. package/dist/types/components/atoms/mg-badge/mg-badge.d.ts +41 -41
  266. package/dist/types/components/atoms/mg-button/mg-button.d.ts +100 -100
  267. package/dist/types/components/atoms/mg-card/mg-card.d.ts +39 -39
  268. package/dist/types/components/atoms/mg-character-left/mg-character-left.d.ts +37 -37
  269. package/dist/types/components/atoms/mg-divider/mg-divider.d.ts +12 -12
  270. package/dist/types/components/atoms/mg-icon/mg-icon.d.ts +56 -56
  271. package/dist/types/components/atoms/mg-input-title/mg-input-title.d.ts +34 -34
  272. package/dist/types/components/atoms/mg-tag/mg-tag.d.ts +51 -51
  273. package/dist/types/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.d.ts +12 -12
  274. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.conf.d.ts +3 -3
  275. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +113 -113
  276. package/dist/types/components/molecules/inputs/MgInput.conf.d.ts +5 -5
  277. package/dist/types/components/molecules/inputs/MgInput.d.ts +16 -16
  278. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.d.ts +100 -100
  279. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.d.ts +26 -26
  280. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.d.ts +262 -262
  281. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.conf.d.ts +4 -4
  282. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.d.ts +150 -150
  283. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.d.ts +4 -4
  284. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.d.ts +223 -223
  285. package/dist/types/components/molecules/inputs/mg-input-password/mg-input-password.d.ts +142 -142
  286. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.conf.d.ts +3 -3
  287. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.d.ts +152 -152
  288. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.conf.d.ts +6 -6
  289. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.d.ts +193 -193
  290. package/dist/types/components/molecules/inputs/mg-input-text/mg-input-text.d.ts +195 -195
  291. package/dist/types/components/molecules/inputs/mg-input-textarea/mg-input-textarea.d.ts +181 -181
  292. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.conf.d.ts +2 -2
  293. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.d.ts +141 -141
  294. package/dist/types/components/molecules/menu/mg-menu/mg-menu.conf.d.ts +2 -2
  295. package/dist/types/components/molecules/menu/mg-menu/mg-menu.d.ts +97 -97
  296. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.conf.d.ts +6 -6
  297. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.d.ts +179 -179
  298. package/dist/types/components/molecules/mg-action-more/mg-action-more.conf.d.ts +12 -12
  299. package/dist/types/components/molecules/mg-action-more/mg-action-more.d.ts +72 -72
  300. package/dist/types/components/molecules/mg-details/mg-details.d.ts +45 -45
  301. package/dist/types/components/molecules/mg-form/mg-form.d.ts +103 -103
  302. package/dist/types/components/molecules/mg-illustrated-message/mg-illustrated-message.d.ts +27 -27
  303. package/dist/types/components/molecules/mg-item-more/mg-item-more.conf.d.ts +5 -5
  304. package/dist/types/components/molecules/mg-item-more/mg-item-more.d.ts +61 -61
  305. package/dist/types/components/molecules/mg-message/mg-message.d.ts +100 -93
  306. package/dist/types/components/molecules/mg-modal/mg-modal.d.ts +107 -107
  307. package/dist/types/components/molecules/mg-pagination/mg-pagination.conf.d.ts +2 -2
  308. package/dist/types/components/molecules/mg-pagination/mg-pagination.d.ts +74 -74
  309. package/dist/types/components/molecules/mg-panel/mg-panel.d.ts +149 -149
  310. package/dist/types/components/molecules/mg-popover/mg-popover-content/mg-popover-content.d.ts +43 -43
  311. package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +88 -88
  312. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.conf.d.ts +2 -2
  313. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.d.ts +40 -40
  314. package/dist/types/components/molecules/mg-tabs/mg-tabs.conf.d.ts +10 -10
  315. package/dist/types/components/molecules/mg-tabs/mg-tabs.d.ts +118 -118
  316. package/dist/types/components.d.ts +294 -30
  317. package/dist/types/locales/index.d.ts +172 -172
  318. package/dist/types/stencil-public-runtime.d.ts +29 -0
  319. package/dist/types/utils/behaviors.utils.d.ts +65 -65
  320. package/dist/types/utils/components.utils.d.ts +32 -26
  321. package/dist/types/utils/locale.utils.d.ts +2 -2
  322. package/dist/types/utils/playwright.fixture.d.ts +3 -0
  323. package/dist/types/utils/unit.test.utils.d.ts +5 -5
  324. package/package.json +18 -32
  325. package/dist/cjs/components.utils-69435877.js.map +0 -1
  326. package/dist/cjs/index-60dd0c56.js.map +0 -1
  327. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js +0 -33
  328. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js.map +0 -1
  329. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js +0 -70
  330. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js.map +0 -1
  331. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js +0 -91
  332. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js.map +0 -1
  333. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js +0 -192
  334. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js.map +0 -1
  335. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js +0 -36
  336. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js.map +0 -1
  337. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js +0 -43
  338. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js.map +0 -1
  339. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js +0 -15
  340. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js.map +0 -1
  341. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js +0 -42
  342. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js.map +0 -1
  343. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js +0 -11
  344. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js.map +0 -1
  345. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js +0 -14
  346. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js.map +0 -1
  347. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js +0 -55
  348. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js.map +0 -1
  349. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js +0 -84
  350. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js.map +0 -1
  351. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js +0 -12
  352. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js.map +0 -1
  353. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js +0 -23
  354. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js.map +0 -1
  355. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js +0 -23
  356. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js.map +0 -1
  357. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js +0 -71
  358. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js.map +0 -1
  359. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js +0 -138
  360. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js.map +0 -1
  361. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js +0 -272
  362. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js.map +0 -1
  363. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js +0 -237
  364. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js.map +0 -1
  365. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js +0 -634
  366. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js.map +0 -1
  367. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js +0 -123
  368. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js.map +0 -1
  369. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js +0 -383
  370. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js.map +0 -1
  371. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js +0 -212
  372. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js.map +0 -1
  373. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js +0 -460
  374. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js.map +0 -1
  375. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js +0 -115
  376. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js.map +0 -1
  377. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js +0 -293
  378. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js.map +0 -1
  379. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js +0 -154
  380. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js.map +0 -1
  381. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js +0 -359
  382. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js.map +0 -1
  383. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js +0 -194
  384. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js.map +0 -1
  385. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js +0 -403
  386. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js.map +0 -1
  387. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js +0 -147
  388. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js.map +0 -1
  389. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js +0 -355
  390. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js.map +0 -1
  391. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js +0 -129
  392. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js.map +0 -1
  393. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js +0 -320
  394. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js.map +0 -1
  395. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js +0 -108
  396. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js.map +0 -1
  397. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js +0 -247
  398. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js.map +0 -1
  399. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js +0 -239
  400. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js.map +0 -1
  401. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js +0 -175
  402. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js.map +0 -1
  403. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js +0 -100
  404. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js.map +0 -1
  405. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js +0 -295
  406. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js.map +0 -1
  407. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js +0 -136
  408. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js.map +0 -1
  409. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js +0 -195
  410. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js.map +0 -1
  411. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js +0 -30
  412. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js.map +0 -1
  413. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js +0 -42
  414. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js.map +0 -1
  415. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js +0 -169
  416. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js.map +0 -1
  417. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js +0 -292
  418. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js.map +0 -1
  419. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js +0 -39
  420. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js.map +0 -1
  421. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js +0 -36
  422. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js.map +0 -1
  423. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js +0 -85
  424. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js.map +0 -1
  425. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js +0 -106
  426. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js.map +0 -1
  427. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js +0 -64
  428. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js.map +0 -1
  429. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js +0 -109
  430. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js.map +0 -1
  431. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js +0 -62
  432. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js.map +0 -1
  433. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js +0 -40
  434. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js.map +0 -1
  435. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js +0 -26
  436. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js.map +0 -1
  437. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js +0 -122
  438. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js.map +0 -1
  439. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js +0 -57
  440. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js.map +0 -1
  441. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js +0 -121
  442. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js.map +0 -1
  443. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js +0 -106
  444. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js.map +0 -1
  445. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js +0 -213
  446. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js.map +0 -1
  447. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js +0 -140
  448. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js.map +0 -1
  449. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js +0 -142
  450. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js.map +0 -1
  451. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js +0 -55
  452. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js.map +0 -1
  453. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js +0 -55
  454. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js.map +0 -1
  455. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js +0 -76
  456. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js.map +0 -1
  457. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js +0 -332
  458. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js.map +0 -1
  459. package/dist/collection/utils/stencil.e2e.test.utils.js +0 -33
  460. package/dist/collection/utils/stencil.e2e.test.utils.js.map +0 -1
  461. package/dist/esm/components.utils-6cf27db1.js.map +0 -1
  462. package/dist/esm/index-0f833068.js.map +0 -1
  463. package/dist/mg-components/p-10ed4425.entry.js +0 -2
  464. package/dist/mg-components/p-10ed4425.entry.js.map +0 -1
  465. package/dist/mg-components/p-36a51c5e.js +0 -2
  466. package/dist/mg-components/p-36a51c5e.js.map +0 -1
  467. package/dist/mg-components/p-9b12021b.js +0 -3
  468. package/dist/mg-components/p-9b12021b.js.map +0 -1
  469. package/dist/types/components/atoms/mg-badge/test/mg-badge.e2e.playwright.d.ts +0 -1
  470. package/dist/types/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.d.ts +0 -1
  471. package/dist/types/components/atoms/mg-tag/test/mg-tag.e2e.playwright.d.ts +0 -1
  472. package/dist/types/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.d.ts +0 -1
  473. package/dist/types/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.d.ts +0 -1
  474. package/dist/types/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.d.ts +0 -1
  475. package/dist/types/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.d.ts +0 -1
  476. package/dist/types/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.d.ts +0 -1
  477. package/dist/types/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.d.ts +0 -2
  478. package/dist/types/components/molecules/mg-details/test/mg-details.e2e.playwright.d.ts +0 -1
  479. package/dist/types/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.d.ts +0 -1
  480. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.playwright.d.ts +0 -1
  481. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.template.d.ts +0 -12
  482. package/dist/types/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.d.ts +0 -1
  483. package/dist/types/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.d.ts +0 -1
  484. package/dist/types/components/molecules/mg-panel/test/mg-panel.e2e.playwright.d.ts +0 -1
  485. package/dist/types/components/molecules/mg-popover/test/mg-popover.e2e.playwright.d.ts +0 -1
  486. package/dist/types/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.d.ts +0 -1
  487. package/dist/types/utils/stencil.e2e.test.utils.d.ts +0 -14
  488. /package/dist/mg-components/{p-91feda5a.entry.js.map → p-e0fb0f3c.entry.js.map} +0 -0
@@ -12,828 +12,825 @@ import { Handler } from "../MgInput.conf";
12
12
  * @returns match item type
13
13
  */
14
14
  const isCheckboxItems = (items) => Array.isArray(items) &&
15
- items.every(item => typeof item === 'object' && typeof item.title === 'string' && (item.value === null || typeof item.value === 'boolean') && item.value !== undefined);
15
+ items.every(item => typeof item === 'object' && typeof item.title === 'string' && (item.value === null || typeof item.value === 'boolean') && item.value !== undefined);
16
16
  export class MgInputCheckbox {
17
- constructor() {
18
- // hasDisplayedError (triggered by blur event)
19
- this.hasDisplayedError = false;
20
- this.mode = 'custom';
21
- // style
22
- this.baseClassName = 'mg-c-input--checkbox';
23
- // "multi" setup
24
- this.multiStart = 5;
25
- this.searchStart = 10;
26
- /**
27
- * Handle input event
28
- * @param event - input event
29
- */
30
- this.handleInput = (event) => {
31
- this.updateCheckboxItems('value', Boolean(event.target.checked), item => item._id === event.target.id);
32
- this.updateValues();
33
- this.checkValidity();
34
- };
35
- /**
36
- * Keyboard handler
37
- * @param event - to trak "tab" key
38
- */
39
- this.handleKeydown = (event) => {
40
- var _a;
41
- // track "Tab" key event when popover display (is "multi" type selected)
42
- if (event.key === 'Tab' && ((_a = this.mgPopover) === null || _a === void 0 ? void 0 : _a.display)) {
43
- // when search input and do a back tab we close the popover
44
- if (Boolean(this.searchInput) && event.shiftKey && this.searchInput.id === event.target.id) {
45
- this.mgPopover.display = false;
46
- return;
47
- }
48
- const enableInputs = Array.from(this.element.shadowRoot.querySelectorAll('input'))
49
- .filter(input => !input.getAttribute('disabled'))
50
- .map(({ id }) => id);
51
- const originInputIndex = enableInputs.findIndex(id => id === event.target.id);
52
- // close popover when tab trigger focus outside its DOM
53
- if ((originInputIndex + 1 >= enableInputs.length && !event.shiftKey) || (originInputIndex === 0 && event.shiftKey && !this.searchInput))
54
- this.mgPopover.display = false;
55
- }
56
- };
57
- /**
58
- * Handle blur event
59
- */
60
- this.handleBlur = () => {
61
- // set guard
62
- this.handlerInProgress = Handler.BLUR;
63
- // Check validity
64
- this.checkValidity();
65
- this.setErrorMessage();
66
- // reset guard
67
- this.handlerInProgress = undefined;
68
- };
69
- /**
70
- * Handle input search value-change event
71
- * @param event - input value-change event
72
- */
73
- this.handleSearchChange = (event) => {
74
- this.searchValue = event.detail;
75
- };
76
- /**
77
- * popover display-change handler
78
- * @param event - mg-popover display-change custom event
79
- */
80
- this.handleMgPopoverDisplayChange = (event) => {
81
- // reset search value
82
- if (!event.detail) {
17
+ constructor() {
18
+ // hasDisplayedError (triggered by blur event)
19
+ this.hasDisplayedError = false;
20
+ this.mode = 'custom';
21
+ // style
22
+ this.baseClassName = 'mg-c-input--checkbox';
23
+ // "multi" setup
24
+ this.multiStart = 5;
25
+ this.searchStart = 10;
26
+ /**
27
+ * Handle input event
28
+ * @param event - input event
29
+ */
30
+ this.handleInput = (event) => {
31
+ this.updateCheckboxItems('value', Boolean(event.target.checked), item => item._id === event.target.id);
32
+ this.updateValues();
33
+ this.checkValidity();
34
+ };
35
+ /**
36
+ * Keyboard handler
37
+ * @param event - to trak "tab" key
38
+ */
39
+ this.handleKeydown = (event) => {
40
+ var _a;
41
+ // track "Tab" key event when popover display (is "multi" type selected)
42
+ if (event.key === 'Tab' && ((_a = this.mgPopover) === null || _a === void 0 ? void 0 : _a.display)) {
43
+ // when search input and do a back tab we close the popover
44
+ if (Boolean(this.searchInput) && event.shiftKey && this.searchInput.id === event.target.id) {
45
+ this.mgPopover.display = false;
46
+ return;
47
+ }
48
+ const enableInputs = Array.from(this.element.shadowRoot.querySelectorAll('input'))
49
+ .filter(input => !input.getAttribute('disabled'))
50
+ .map(({ id }) => id);
51
+ const originInputIndex = enableInputs.findIndex(id => id === event.target.id);
52
+ // close popover when tab trigger focus outside its DOM
53
+ if ((originInputIndex + 1 >= enableInputs.length && !event.shiftKey) || (originInputIndex === 0 && event.shiftKey && !this.searchInput))
54
+ this.mgPopover.display = false;
55
+ }
56
+ };
57
+ /**
58
+ * Handle blur event
59
+ */
60
+ this.handleBlur = () => {
61
+ // set guard
62
+ this.handlerInProgress = Handler.BLUR;
63
+ // Check validity
64
+ this.checkValidity();
65
+ this.setErrorMessage();
66
+ // reset guard
67
+ this.handlerInProgress = undefined;
68
+ };
69
+ /**
70
+ * Handle input search value-change event
71
+ * @param event - input value-change event
72
+ */
73
+ this.handleSearchChange = (event) => {
74
+ this.searchValue = event.detail;
75
+ };
76
+ /**
77
+ * popover display-change handler
78
+ * @param event - mg-popover display-change custom event
79
+ */
80
+ this.handleMgPopoverDisplayChange = (event) => {
81
+ // reset search value
82
+ if (!event.detail) {
83
+ this.searchValue = '';
84
+ this.checkValidity();
85
+ }
86
+ };
87
+ /**
88
+ * Handle select all button
89
+ * @param event - mass action event trigger a global select/unselect on values
90
+ */
91
+ this.handleMassAction = (event) => {
92
+ this.updateCheckboxItems('value', event.detail !== 'selected');
93
+ this.updateValues();
94
+ };
95
+ /**
96
+ * Update values
97
+ */
98
+ this.updateValues = () => {
99
+ this.value = this.checkboxItems.map(o => {
100
+ delete o._handleBlur;
101
+ delete o._handleInput;
102
+ delete o._handleKeydown;
103
+ delete o._id;
104
+ return o;
105
+ });
106
+ };
107
+ /**
108
+ * has invalid input
109
+ * @returns true if at least one input is invalid
110
+ */
111
+ this.hasInvalidInput = () => Array.from(this.element.shadowRoot.querySelectorAll('input[type="checkbox"]')).some((input) => !input.disabled && !input.checkValidity());
112
+ /**
113
+ * Method to update searchResults
114
+ */
115
+ this.updateSearchResults = () => {
116
+ this.searchResults = this.checkboxItems.filter(item => cleanString(item.title).includes(cleanString(this.searchValue)));
117
+ };
118
+ /**
119
+ * Methode to validate if one of inputs value is checked id required
120
+ * @returns truthy if condition is valid
121
+ */
122
+ this.validateRequired = () => !this.required || this.checkboxItems.some(({ value }) => value);
123
+ /**
124
+ * Check if input is valid
125
+ */
126
+ this.checkValidity = () => {
127
+ this.setValidity(this.readonly || this.disabled || (!this.hasInvalidInput() && this.validateRequired()));
128
+ };
129
+ /**
130
+ * Render button text
131
+ * @param selectedValuesNb - nb of selected values
132
+ * @returns translated message
133
+ */
134
+ this.renderButtonText = (selectedValuesNb) => {
135
+ let messageKey = 'editButton';
136
+ if (this.disabled)
137
+ messageKey = 'showButton';
138
+ else if (selectedValuesNb < 1)
139
+ messageKey = 'selectButton';
140
+ return this.messages.input.checkbox[messageKey];
141
+ };
142
+ /**
143
+ * Set input error message
144
+ * @param displayError - dispay error condition
145
+ * @param errorMessage - errorMessage override
146
+ */
147
+ this.setErrorMessage = (displayError = true, errorMessage) => {
148
+ // Set error message
149
+ this.errorMessage = undefined;
150
+ if (displayError && !this.valid) {
151
+ if (errorMessage !== undefined)
152
+ this.errorMessage = errorMessage;
153
+ else if (!this.validateRequired())
154
+ this.errorMessage = this.messages.errors.required;
155
+ }
156
+ };
157
+ /**
158
+ * Method to get mg-popover identifier
159
+ * @returns MgPopover identifier
160
+ */
161
+ this.getMgPopoverIdentifier = () => `${this.identifier}-input-mg-popover`;
162
+ /**
163
+ * Manage items to display depending on the search state
164
+ * @returns items to display
165
+ */
166
+ this.getDisplayItems = () => (this.searchValue.length > 0 ? this.searchResults : this.checkboxItems);
167
+ this.value = undefined;
168
+ this.type = undefined;
169
+ this.identifier = undefined;
170
+ this.name = this.identifier;
171
+ this.label = undefined;
172
+ this.labelOnTop = undefined;
173
+ this.labelHide = false;
174
+ this.inputVerticalList = false;
175
+ this.required = false;
176
+ this.readonly = false;
177
+ this.displaySelectedValues = undefined;
178
+ this.disabled = false;
179
+ this.tooltip = undefined;
180
+ this.helpText = undefined;
181
+ this.valid = undefined;
182
+ this.invalid = undefined;
183
+ this.classCollection = new ClassList([this.baseClassName]);
184
+ this.errorMessage = undefined;
185
+ this.checkboxItems = [];
186
+ this.displaySearchInput = undefined;
83
187
  this.searchValue = '';
188
+ this.searchResults = [];
189
+ }
190
+ validateValue(newValue) {
191
+ if (isCheckboxItems(newValue)) {
192
+ this.checkboxItems = newValue.map((item, index) => (Object.assign(Object.assign({}, item), { _id: `${this.identifier}_${index}`, _handleInput: this.handleInput.bind(this), _handleBlur: this.handleBlur.bind(this), _handleKeydown: this.handleKeydown.bind(this) })));
193
+ this.valueChange.emit(newValue);
194
+ }
195
+ else {
196
+ throw new Error('<mg-input-checkbox> prop "value" is required and all values must be the same type, CheckboxItem.');
197
+ }
198
+ }
199
+ validateType(newValue) {
200
+ if (newValue !== undefined && !checkboxTypes.includes(newValue)) {
201
+ throw new Error('<mg-input-checkbox> prop "type" must be a CheckboxType.');
202
+ }
203
+ else if (newValue === undefined) {
204
+ this.mode = 'auto';
205
+ this.type = checkboxTypes[0];
206
+ }
207
+ else {
208
+ const className = `${this.baseClassName}-multi`;
209
+ if (newValue === 'multi') {
210
+ this.classCollection.add(className);
211
+ this.element.dataset.mgPopoverGuard = this.getMgPopoverIdentifier();
212
+ }
213
+ else
214
+ this.classCollection.delete(className);
215
+ }
216
+ }
217
+ handleValidityChange(newValue, _oldValue, prop) {
218
+ if (prop !== 'readonly')
219
+ this.updateCheckboxItems(prop, newValue);
84
220
  this.checkValidity();
85
- }
86
- };
221
+ if (this.hasDisplayedError) {
222
+ this.hasDisplayedError = prop !== 'required';
223
+ this.setErrorMessage(this.hasDisplayedError);
224
+ }
225
+ }
226
+ validateDisabled(newValue) {
227
+ const className = `${this.baseClassName}-multi-disabled`;
228
+ if (newValue && this.type === 'multi')
229
+ this.classCollection.add(className);
230
+ else
231
+ this.classCollection.delete(className);
232
+ }
233
+ validateCheckboxItems(newValue) {
234
+ if (this.mode === 'auto' && newValue.length > this.multiStart)
235
+ this.type = 'multi';
236
+ if (this.mode === 'auto' || (this.type === 'multi' && newValue.length > this.searchStart)) {
237
+ this.displaySearchInput = this.type === 'multi';
238
+ // refresh search values
239
+ this.updateSearchResults();
240
+ }
241
+ }
242
+ validateSearchValue() {
243
+ // refresh search values
244
+ this.updateSearchResults();
245
+ }
87
246
  /**
88
- * Handle select all button
89
- * @param event - mass action event trigger a global select/unselect on values
247
+ * Display input error if it exists.
90
248
  */
91
- this.handleMassAction = (event) => {
92
- this.updateCheckboxItems('value', event.detail !== 'selected');
93
- this.updateValues();
94
- };
249
+ async displayError() {
250
+ this.checkValidity();
251
+ this.setErrorMessage();
252
+ this.hasDisplayedError = this.invalid;
253
+ }
95
254
  /**
96
- * Update values
255
+ * Set an error and display a custom error message.
256
+ * This method can be used to set the component's error state from its context by passing a boolean value to the `valid` parameter.
257
+ * It must be paired with an error message to display for the given context.
258
+ * When used to set validity to `false`, you should use this method again to reset the validity to `true`.
259
+ * @param valid - value indicating the validity
260
+ * @param errorMessage - the error message to display
97
261
  */
98
- this.updateValues = () => {
99
- this.value = this.checkboxItems.map(o => {
100
- delete o._handleBlur;
101
- delete o._handleInput;
102
- delete o._handleKeydown;
103
- delete o._id;
104
- return o;
105
- });
106
- };
262
+ async setError(valid, errorMessage) {
263
+ if (typeof valid !== 'boolean') {
264
+ throw new Error('<mg-input-checkbox> method "setError()" param "valid" must be a boolean');
265
+ }
266
+ else if (!isValidString(errorMessage)) {
267
+ throw new Error('<mg-input-checkbox> method "setError()" param "errorMessage" must be a string');
268
+ }
269
+ else {
270
+ this.setValidity(valid);
271
+ this.setErrorMessage(undefined, valid ? undefined : errorMessage);
272
+ this.hasDisplayedError = this.invalid;
273
+ }
274
+ }
107
275
  /**
108
- * get invalid element
109
- * @returns element
276
+ * Method to set validity values
277
+ * @param newValue - valid new value
110
278
  */
111
- this.getInvalidElement = () => {
112
- const items = Array.from(this.element.shadowRoot.querySelectorAll('input[type="checkbox"]'));
113
- return items.find(input => input !== null && !input.disabled && !input.checkValidity());
114
- };
279
+ setValidity(newValue) {
280
+ const oldValidValue = this.valid;
281
+ this.valid = newValue;
282
+ this.invalid = !this.valid;
283
+ // We need to send valid event even if it is the same value
284
+ if (this.handlerInProgress === undefined || (this.handlerInProgress === Handler.BLUR && this.valid !== oldValidValue))
285
+ this.inputValid.emit(this.valid);
286
+ }
115
287
  /**
116
- * Method to update searchResults
288
+ * Update ckecboxes item
289
+ * @param key - property to update
290
+ * @param newValue - value to update with
291
+ * @param condition - condtion to applu change on item
117
292
  */
118
- this.updateSearchResults = () => {
119
- this.searchResults = this.checkboxItems.filter(item => cleanString(item.title).includes(cleanString(this.searchValue)));
120
- };
293
+ updateCheckboxItems(key, newValue, condition) {
294
+ this.checkboxItems = this.checkboxItems.map(item => {
295
+ if ((typeof condition === 'function' && condition(item)) || condition === undefined)
296
+ item[key] = newValue;
297
+ return item;
298
+ });
299
+ }
300
+ /*************
301
+ * Lifecycle *
302
+ *************/
121
303
  /**
122
- * Methode to validate if one of inputs value is checked id required
123
- * @returns truthy if condition is valid
304
+ * Check if component props are well configured on init
305
+ * @returns timeout
124
306
  */
125
- this.validateRequired = () => !this.required || this.checkboxItems.some(({ value }) => value);
307
+ componentWillLoad() {
308
+ // Get locales
309
+ this.messages = initLocales(this.element).messages;
310
+ // Validate
311
+ this.validateType(this.type);
312
+ this.validateValue(this.value);
313
+ this.validateDisabled(this.disabled);
314
+ this.legendId = `${this.identifier}-title`;
315
+ // Check validity when component is ready
316
+ // return a promise to process action only in the FIRST render().
317
+ // https://stenciljs.com/docs/component-lifecycle#componentwillload
318
+ return setTimeout(() => {
319
+ this.checkValidity();
320
+ }, 0);
321
+ }
126
322
  /**
127
- * Check if input is valid
323
+ * add listeners and DOM attributed
128
324
  */
129
- this.checkValidity = () => {
130
- this.setValidity(this.readonly || this.disabled || (this.getInvalidElement() === undefined && this.validateRequired()));
131
- };
325
+ componentDidLoad() {
326
+ var _a, _b;
327
+ this.element.shadowRoot.querySelector('legend').setAttribute('id', this.legendId);
328
+ this.searchInput = (_a = this.element.shadowRoot.querySelector('mg-input-text')) === null || _a === void 0 ? void 0 : _a.shadowRoot.querySelector('input');
329
+ (_b = this.searchInput) === null || _b === void 0 ? void 0 : _b.addEventListener('keydown', this.handleKeydown);
330
+ }
132
331
  /**
133
- * Render button text
134
- * @param selectedValuesNb - nb of selected values
135
- * @returns translated message
332
+ * Render checkbox multi display values
333
+ * @param selectedValuesNb - selected values length
334
+ * @returns display selected values
136
335
  */
137
- this.renderButtonText = (selectedValuesNb) => {
138
- let messageKey = 'editButton';
139
- if (this.disabled)
140
- messageKey = 'showButton';
141
- else if (selectedValuesNb < 1)
142
- messageKey = 'selectButton';
143
- return this.messages.input.checkbox[messageKey];
144
- };
336
+ renderCheckboxMultiDisplaySelectedValues(selectedValuesNb) {
337
+ if (this.displaySelectedValues) {
338
+ return (selectedValuesNb > 0 && (h("ul", { role: "list", class: "mg-c-input__input-checkbox-multi-values-container" }, this.checkboxItems
339
+ .filter(({ value }) => value)
340
+ .map(({ title }) => (h("li", { class: "mg-c-input__input-checkbox-multi-value", key: title }, title))))));
341
+ }
342
+ else {
343
+ return h("strong", null, this.messages.input.checkbox[selectedValuesNb > 1 ? 'selectedValues' : 'selectedValue'].replace('{nb}', selectedValuesNb));
344
+ }
345
+ }
145
346
  /**
146
- * Set input error message
147
- * @param displayError - dispay error condition
148
- * @param errorMessage - errorMessage override
347
+ * Render checkboxes by section
348
+ * @param checkboxes - checkboxes to render
349
+ * @returns render sections of checkboxes
149
350
  */
150
- this.setErrorMessage = (displayError = true, errorMessage) => {
151
- // Set error message
152
- this.errorMessage = undefined;
153
- if (displayError && !this.valid) {
154
- if (errorMessage !== undefined)
155
- this.errorMessage = errorMessage;
156
- else if (!this.validateRequired())
157
- this.errorMessage = this.messages.errors.required;
158
- }
159
- };
351
+ renderCheckboxBySection(checkboxes) {
352
+ const [checkedValues, notCheckedValues] = checkboxes.reduce((acc, curr) => {
353
+ acc[curr.value ? 0 : 1].push(curr);
354
+ return acc;
355
+ }, [[], []]);
356
+ const baseSection = {
357
+ readonly: this.readonly,
358
+ disabled: this.disabled,
359
+ identifier: this.identifier,
360
+ };
361
+ const sections = [
362
+ Object.assign(Object.assign({}, baseSection), { sectionKind: SectionKind.SELECTED, checkboxes: checkedValues, messages: this.messages.input.checkbox.sections.selected }),
363
+ Object.assign(Object.assign({}, baseSection), { sectionKind: SectionKind.NOT_SELECTED, checkboxes: notCheckedValues, messages: this.messages.input.checkbox.sections.notSelected }),
364
+ ];
365
+ return sections.map(section => h("mg-input-checkbox-paginated", Object.assign({}, section, { "onMass-action": this.handleMassAction })));
366
+ }
160
367
  /**
161
- * Method to get mg-popover identifier
162
- * @returns MgPopover identifier
368
+ * render checkbox multi element
369
+ * @returns html element
163
370
  */
164
- this.getMgPopoverIdentifier = () => `${this.identifier}-input-mg-popover`;
371
+ renderCheckboxMulti() {
372
+ const selectedValuesNb = this.checkboxItems.filter(({ value }) => value).length;
373
+ const checkboxes = this.getDisplayItems();
374
+ return (h("div", { class: { 'mg-c-input__input-container': true, 'mg-c-input__input-checkbox-multi': true, 'mg-c-input__input-checkbox-multi--with-values': this.displaySelectedValues } }, h("mg-popover", { arrowHide: true, identifier: this.getMgPopoverIdentifier(), "onDisplay-change": this.handleMgPopoverDisplayChange, ref: (el) => {
375
+ if (el)
376
+ this.mgPopover = el;
377
+ } }, h("mg-button", { variant: "secondary", "aria-describedby": this.legendId }, h("mg-icon", { icon: "list" }), this.renderButtonText(selectedValuesNb)), h("div", { slot: "content" }, this.displaySearchInput && [
378
+ h("mg-input-text", { key: "input-search", identifier: `${this.identifier}-input-search`, icon: "magnifying-glass", type: "search", placeholder: this.messages.input.checkbox.label, label: this.messages.input.checkbox.label, mgWidth: "full", value: this.searchValue, labelHide: true, displayCharacterLeft: false, name: "q", "onValue-change": this.handleSearchChange, "aria-controls": "search-results items-list" }),
379
+ h("p", { key: "search-results", role: "status", class: "mg-u-visually-hidden", id: "search-results" }, `${checkboxes.length} ${this.messages.input.checkbox[checkboxes.length > 0 ? 'results' : 'result']}`),
380
+ ], this.displaySearchInput ? (h("div", { class: "mg-c-input__input-checkbox-multi-sections-container" }, this.renderCheckboxBySection(checkboxes))) : (h(MgInputCheckboxList, { checkboxes: checkboxes, inputVerticalList: true, type: this.type, readonly: this.readonly, displaySearchInput: this.displaySearchInput, messages: this.messages.input.checkbox, id: "checkboxes-list", disabled: this.disabled, name: this.name, invalid: this.invalid })), this.displaySearchInput && checkboxes.length === 0 && h("p", { class: "mg-c-input__input-checkbox-multi-no-result" }, this.messages.input.checkbox.noResult))), this.renderCheckboxMultiDisplaySelectedValues(selectedValuesNb)));
381
+ }
165
382
  /**
166
- * Manage items to display depending on the search state
167
- * @returns items to display
383
+ * Render
384
+ * @returns HTML Element
168
385
  */
169
- this.getDisplayItems = () => (this.searchValue.length > 0 ? this.searchResults : this.checkboxItems);
170
- this.value = undefined;
171
- this.type = undefined;
172
- this.identifier = undefined;
173
- this.name = this.identifier;
174
- this.label = undefined;
175
- this.labelOnTop = undefined;
176
- this.labelHide = false;
177
- this.inputVerticalList = false;
178
- this.required = false;
179
- this.readonly = false;
180
- this.displaySelectedValues = undefined;
181
- this.disabled = false;
182
- this.tooltip = undefined;
183
- this.helpText = undefined;
184
- this.valid = undefined;
185
- this.invalid = undefined;
186
- this.classCollection = new ClassList([this.baseClassName]);
187
- this.errorMessage = undefined;
188
- this.checkboxItems = [];
189
- this.displaySearchInput = undefined;
190
- this.searchValue = '';
191
- this.searchResults = [];
192
- }
193
- validateValue(newValue) {
194
- if (isCheckboxItems(newValue)) {
195
- this.checkboxItems = newValue.map((item, index) => (Object.assign(Object.assign({}, item), { _id: `${this.identifier}_${index}`, _handleInput: this.handleInput.bind(this), _handleBlur: this.handleBlur.bind(this), _handleKeydown: this.handleKeydown.bind(this) })));
196
- this.valueChange.emit(newValue);
197
- }
198
- else {
199
- throw new Error('<mg-input-checkbox> prop "value" is required and all values must be the same type, CheckboxItem.');
200
- }
201
- }
202
- validateType(newValue) {
203
- if (newValue !== undefined && !checkboxTypes.includes(newValue)) {
204
- throw new Error('<mg-input-checkbox> prop "type" must be a CheckboxType.');
205
- }
206
- else if (newValue === undefined) {
207
- this.mode = 'auto';
208
- this.type = checkboxTypes[0];
209
- }
210
- else {
211
- const className = `${this.baseClassName}-multi`;
212
- if (newValue === 'multi') {
213
- this.classCollection.add(className);
214
- this.element.dataset.mgPopoverGuard = this.getMgPopoverIdentifier();
215
- }
216
- else
217
- this.classCollection.delete(className);
218
- }
219
- }
220
- handleValidityChange(newValue, _oldValue, prop) {
221
- if (prop !== 'readonly')
222
- this.updateCheckboxItems(prop, newValue);
223
- this.checkValidity();
224
- if (this.hasDisplayedError) {
225
- this.hasDisplayedError = prop !== 'required';
226
- this.setErrorMessage(this.hasDisplayedError);
386
+ render() {
387
+ var _a;
388
+ return (h(MgInput, { identifier: this.identifier, classCollection: this.classCollection, ariaDescribedbyIDs: [], label: this.label, labelOnTop: this.labelOnTop, labelHide: this.labelHide, required: !this.readonly ? this.required : undefined, readonly: undefined, mgWidth: undefined, disabled: this.disabled, value: (_a = this.value) === null || _a === void 0 ? void 0 : _a.toString(), readonlyValue: undefined, tooltip: !this.readonly ? this.tooltip : undefined, helpText: !this.readonly ? this.helpText : undefined, errorMessage: !this.readonly ? this.errorMessage : undefined, isFieldset: true }, this.type === 'checkbox' || this.readonly ? (h(MgInputCheckboxList, { checkboxes: this.checkboxItems, inputVerticalList: this.inputVerticalList, type: this.type, readonly: this.readonly, displaySearchInput: this.displaySearchInput, messages: this.messages.input.checkbox, id: "checkboxes-list", disabled: this.disabled, name: this.name, invalid: this.invalid })) : (this.renderCheckboxMulti())));
227
389
  }
228
- }
229
- validateDisabled(newValue) {
230
- const className = `${this.baseClassName}-multi-disabled`;
231
- if (newValue && this.type === 'multi')
232
- this.classCollection.add(className);
233
- else
234
- this.classCollection.delete(className);
235
- }
236
- validateCheckboxItems(newValue) {
237
- if (this.mode === 'auto' && newValue.length > this.multiStart)
238
- this.type = 'multi';
239
- if (this.mode === 'auto' || (this.type === 'multi' && newValue.length > this.searchStart)) {
240
- this.displaySearchInput = this.type === 'multi';
241
- // refresh search values
242
- this.updateSearchResults();
390
+ static get is() { return "mg-input-checkbox"; }
391
+ static get encapsulation() { return "shadow"; }
392
+ static get originalStyleUrls() {
393
+ return {
394
+ "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-checkbox.css"]
395
+ };
243
396
  }
244
- }
245
- validateSearchValue() {
246
- // refresh search values
247
- this.updateSearchResults();
248
- }
249
- /**
250
- * Display input error if it exists.
251
- */
252
- async displayError() {
253
- this.checkValidity();
254
- this.setErrorMessage();
255
- this.hasDisplayedError = this.invalid;
256
- }
257
- /**
258
- * Set an error and display a custom error message.
259
- * This method can be used to set the component's error state from its context by passing a boolean value to the `valid` parameter.
260
- * It must be paired with an error message to display for the given context.
261
- * When used to set validity to `false`, you should use this method again to reset the validity to `true`.
262
- * @param valid - value indicating the validity
263
- * @param errorMessage - the error message to display
264
- */
265
- async setError(valid, errorMessage) {
266
- if (typeof valid !== 'boolean') {
267
- throw new Error('<mg-input-checkbox> method "setError()" param "valid" must be a boolean');
397
+ static get styleUrls() {
398
+ return {
399
+ "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-checkbox.css"]
400
+ };
268
401
  }
269
- else if (!isValidString(errorMessage)) {
270
- throw new Error('<mg-input-checkbox> method "setError()" param "errorMessage" must be a string');
271
- }
272
- else {
273
- this.setValidity(valid);
274
- this.setErrorMessage(undefined, valid ? undefined : errorMessage);
275
- this.hasDisplayedError = this.invalid;
276
- }
277
- }
278
- /**
279
- * Method to set validity values
280
- * @param newValue - valid new value
281
- */
282
- setValidity(newValue) {
283
- const oldValidValue = this.valid;
284
- this.valid = newValue;
285
- this.invalid = !this.valid;
286
- // We need to send valid event even if it is the same value
287
- if (this.handlerInProgress === undefined || (this.handlerInProgress === Handler.BLUR && this.valid !== oldValidValue))
288
- this.inputValid.emit(this.valid);
289
- }
290
- /**
291
- * Update ckecboxes item
292
- * @param key - property to update
293
- * @param newValue - value to update with
294
- * @param condition - condtion to applu change on item
295
- */
296
- updateCheckboxItems(key, newValue, condition) {
297
- this.checkboxItems = this.checkboxItems.map(item => {
298
- if ((typeof condition === 'function' && condition(item)) || condition === undefined)
299
- item[key] = newValue;
300
- return item;
301
- });
302
- }
303
- /*************
304
- * Lifecycle *
305
- *************/
306
- /**
307
- * Check if component props are well configured on init
308
- * @returns timeout
309
- */
310
- componentWillLoad() {
311
- // Get locales
312
- this.messages = initLocales(this.element).messages;
313
- // Validate
314
- this.validateType(this.type);
315
- this.validateValue(this.value);
316
- this.validateDisabled(this.disabled);
317
- this.legendId = `${this.identifier}-title`;
318
- // Check validity when component is ready
319
- // return a promise to process action only in the FIRST render().
320
- // https://stenciljs.com/docs/component-lifecycle#componentwillload
321
- return setTimeout(() => {
322
- this.checkValidity();
323
- }, 0);
324
- }
325
- /**
326
- * add listeners and DOM attributed
327
- */
328
- componentDidLoad() {
329
- var _a, _b;
330
- this.element.shadowRoot.querySelector('legend').setAttribute('id', this.legendId);
331
- this.searchInput = (_a = this.element.shadowRoot.querySelector('mg-input-text')) === null || _a === void 0 ? void 0 : _a.shadowRoot.querySelector('input');
332
- (_b = this.searchInput) === null || _b === void 0 ? void 0 : _b.addEventListener('keydown', this.handleKeydown);
333
- }
334
- /**
335
- * Render checkbox multi display values
336
- * @param selectedValuesNb - selected values length
337
- * @returns display selected values
338
- */
339
- renderCheckboxMultiDisplaySelectedValues(selectedValuesNb) {
340
- if (this.displaySelectedValues) {
341
- return (selectedValuesNb > 0 && (h("ul", { role: "list", class: "mg-c-input__input-checkbox-multi-values-container" }, this.checkboxItems
342
- .filter(({ value }) => value)
343
- .map(({ title }) => (h("li", { class: "mg-c-input__input-checkbox-multi-value", key: title }, title))))));
402
+ static get properties() {
403
+ return {
404
+ "value": {
405
+ "type": "unknown",
406
+ "mutable": true,
407
+ "complexType": {
408
+ "original": "CheckboxValue[]",
409
+ "resolved": "CheckboxValue[]",
410
+ "references": {
411
+ "CheckboxValue": {
412
+ "location": "import",
413
+ "path": "./mg-input-checkbox.conf",
414
+ "id": "src/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.ts::CheckboxValue"
415
+ }
416
+ }
417
+ },
418
+ "required": true,
419
+ "optional": false,
420
+ "docs": {
421
+ "tags": [],
422
+ "text": "Component value\nIf item.value is `null`, checkbox will be indeterminate by default"
423
+ }
424
+ },
425
+ "type": {
426
+ "type": "string",
427
+ "mutable": true,
428
+ "complexType": {
429
+ "original": "CheckboxType",
430
+ "resolved": "\"checkbox\" | \"multi\"",
431
+ "references": {
432
+ "CheckboxType": {
433
+ "location": "import",
434
+ "path": "./mg-input-checkbox.conf",
435
+ "id": "src/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.ts::CheckboxType"
436
+ }
437
+ }
438
+ },
439
+ "required": false,
440
+ "optional": false,
441
+ "docs": {
442
+ "tags": [],
443
+ "text": "Define checkbox type\nWhen it's undefined the type is dynamic:\n- With 0-5 items type is 'checkbox'\n- With 5-10 items type is 'multi'\nWhen it set the type is locked to the defined value.\nWhen type is dynamic OR with 'multi' type AND Over 10 items \"search\" feature is enabled"
444
+ },
445
+ "attribute": "type",
446
+ "reflect": false
447
+ },
448
+ "identifier": {
449
+ "type": "string",
450
+ "mutable": false,
451
+ "complexType": {
452
+ "original": "string",
453
+ "resolved": "string",
454
+ "references": {}
455
+ },
456
+ "required": true,
457
+ "optional": false,
458
+ "docs": {
459
+ "tags": [],
460
+ "text": "Identifier is used for the element ID (id is a reserved prop in Stencil.js)"
461
+ },
462
+ "attribute": "identifier",
463
+ "reflect": false
464
+ },
465
+ "name": {
466
+ "type": "string",
467
+ "mutable": false,
468
+ "complexType": {
469
+ "original": "string",
470
+ "resolved": "string",
471
+ "references": {}
472
+ },
473
+ "required": false,
474
+ "optional": false,
475
+ "docs": {
476
+ "tags": [],
477
+ "text": "Define input name\nIf not set the value equals the identifier"
478
+ },
479
+ "attribute": "name",
480
+ "reflect": false,
481
+ "defaultValue": "this.identifier"
482
+ },
483
+ "label": {
484
+ "type": "string",
485
+ "mutable": false,
486
+ "complexType": {
487
+ "original": "string",
488
+ "resolved": "string",
489
+ "references": {}
490
+ },
491
+ "required": true,
492
+ "optional": false,
493
+ "docs": {
494
+ "tags": [],
495
+ "text": "Define input label"
496
+ },
497
+ "attribute": "label",
498
+ "reflect": false
499
+ },
500
+ "labelOnTop": {
501
+ "type": "boolean",
502
+ "mutable": false,
503
+ "complexType": {
504
+ "original": "boolean",
505
+ "resolved": "boolean",
506
+ "references": {}
507
+ },
508
+ "required": false,
509
+ "optional": false,
510
+ "docs": {
511
+ "tags": [],
512
+ "text": "Define if label is displayed on top"
513
+ },
514
+ "attribute": "label-on-top",
515
+ "reflect": false
516
+ },
517
+ "labelHide": {
518
+ "type": "boolean",
519
+ "mutable": false,
520
+ "complexType": {
521
+ "original": "boolean",
522
+ "resolved": "boolean",
523
+ "references": {}
524
+ },
525
+ "required": false,
526
+ "optional": false,
527
+ "docs": {
528
+ "tags": [],
529
+ "text": "Define if label is visible"
530
+ },
531
+ "attribute": "label-hide",
532
+ "reflect": false,
533
+ "defaultValue": "false"
534
+ },
535
+ "inputVerticalList": {
536
+ "type": "boolean",
537
+ "mutable": false,
538
+ "complexType": {
539
+ "original": "boolean",
540
+ "resolved": "boolean",
541
+ "references": {}
542
+ },
543
+ "required": false,
544
+ "optional": false,
545
+ "docs": {
546
+ "tags": [],
547
+ "text": "Define if inputs are display verticaly"
548
+ },
549
+ "attribute": "input-vertical-list",
550
+ "reflect": false,
551
+ "defaultValue": "false"
552
+ },
553
+ "required": {
554
+ "type": "boolean",
555
+ "mutable": false,
556
+ "complexType": {
557
+ "original": "boolean",
558
+ "resolved": "boolean",
559
+ "references": {}
560
+ },
561
+ "required": false,
562
+ "optional": false,
563
+ "docs": {
564
+ "tags": [],
565
+ "text": "Define if mg-input-checkbox is required"
566
+ },
567
+ "attribute": "required",
568
+ "reflect": false,
569
+ "defaultValue": "false"
570
+ },
571
+ "readonly": {
572
+ "type": "boolean",
573
+ "mutable": false,
574
+ "complexType": {
575
+ "original": "boolean",
576
+ "resolved": "boolean",
577
+ "references": {}
578
+ },
579
+ "required": false,
580
+ "optional": false,
581
+ "docs": {
582
+ "tags": [],
583
+ "text": "Define if mg-input-checkbox is readonly"
584
+ },
585
+ "attribute": "readonly",
586
+ "reflect": false,
587
+ "defaultValue": "false"
588
+ },
589
+ "displaySelectedValues": {
590
+ "type": "boolean",
591
+ "mutable": false,
592
+ "complexType": {
593
+ "original": "boolean",
594
+ "resolved": "boolean",
595
+ "references": {}
596
+ },
597
+ "required": false,
598
+ "optional": false,
599
+ "docs": {
600
+ "tags": [],
601
+ "text": "Display selected values list in \"multi\" type\nThis prop is only applied with prop type \"multi\" or when an \"unset\" mode render a \"multi\" type."
602
+ },
603
+ "attribute": "display-selected-values",
604
+ "reflect": false
605
+ },
606
+ "disabled": {
607
+ "type": "boolean",
608
+ "mutable": false,
609
+ "complexType": {
610
+ "original": "boolean",
611
+ "resolved": "boolean",
612
+ "references": {}
613
+ },
614
+ "required": false,
615
+ "optional": false,
616
+ "docs": {
617
+ "tags": [],
618
+ "text": "Define if input is disabled"
619
+ },
620
+ "attribute": "disabled",
621
+ "reflect": false,
622
+ "defaultValue": "false"
623
+ },
624
+ "tooltip": {
625
+ "type": "string",
626
+ "mutable": false,
627
+ "complexType": {
628
+ "original": "string",
629
+ "resolved": "string",
630
+ "references": {}
631
+ },
632
+ "required": false,
633
+ "optional": false,
634
+ "docs": {
635
+ "tags": [],
636
+ "text": "Add a tooltip message next to the input"
637
+ },
638
+ "attribute": "tooltip",
639
+ "reflect": false
640
+ },
641
+ "helpText": {
642
+ "type": "string",
643
+ "mutable": false,
644
+ "complexType": {
645
+ "original": "string",
646
+ "resolved": "string",
647
+ "references": {}
648
+ },
649
+ "required": false,
650
+ "optional": false,
651
+ "docs": {
652
+ "tags": [],
653
+ "text": "Add a help text under the input, usually expected data format and example"
654
+ },
655
+ "attribute": "help-text",
656
+ "reflect": false
657
+ },
658
+ "valid": {
659
+ "type": "boolean",
660
+ "mutable": true,
661
+ "complexType": {
662
+ "original": "boolean",
663
+ "resolved": "boolean",
664
+ "references": {}
665
+ },
666
+ "required": false,
667
+ "optional": false,
668
+ "docs": {
669
+ "tags": [],
670
+ "text": "Define input valid state"
671
+ },
672
+ "attribute": "valid",
673
+ "reflect": false
674
+ },
675
+ "invalid": {
676
+ "type": "boolean",
677
+ "mutable": true,
678
+ "complexType": {
679
+ "original": "boolean",
680
+ "resolved": "boolean",
681
+ "references": {}
682
+ },
683
+ "required": false,
684
+ "optional": false,
685
+ "docs": {
686
+ "tags": [],
687
+ "text": "Define input invalid state"
688
+ },
689
+ "attribute": "invalid",
690
+ "reflect": false
691
+ }
692
+ };
344
693
  }
345
- else {
346
- return h("strong", null, this.messages.input.checkbox[selectedValuesNb > 1 ? 'selectedValues' : 'selectedValue'].replace('{nb}', selectedValuesNb));
694
+ static get states() {
695
+ return {
696
+ "classCollection": {},
697
+ "errorMessage": {},
698
+ "checkboxItems": {},
699
+ "displaySearchInput": {},
700
+ "searchValue": {},
701
+ "searchResults": {}
702
+ };
347
703
  }
348
- }
349
- /**
350
- * Render checkboxes by section
351
- * @param checkboxes - checkboxes to render
352
- * @returns render sections of checkboxes
353
- */
354
- renderCheckboxBySection(checkboxes) {
355
- const [checkedValues, notCheckedValues] = checkboxes.reduce((acc, curr) => {
356
- acc[curr.value ? 0 : 1].push(curr);
357
- return acc;
358
- }, [[], []]);
359
- const baseSection = {
360
- readonly: this.readonly,
361
- disabled: this.disabled,
362
- identifier: this.identifier,
363
- };
364
- const sections = [
365
- Object.assign(Object.assign({}, baseSection), { sectionKind: SectionKind.SELECTED, checkboxes: checkedValues, messages: this.messages.input.checkbox.sections.selected }),
366
- Object.assign(Object.assign({}, baseSection), { sectionKind: SectionKind.NOT_SELECTED, checkboxes: notCheckedValues, messages: this.messages.input.checkbox.sections.notSelected }),
367
- ];
368
- return sections.map(section => h("mg-input-checkbox-paginated", Object.assign({}, section, { "onMass-action": this.handleMassAction })));
369
- }
370
- /**
371
- * render checkbox multi element
372
- * @returns html element
373
- */
374
- renderCheckboxMulti() {
375
- const selectedValuesNb = this.checkboxItems.filter(({ value }) => value).length;
376
- const checkboxes = this.getDisplayItems();
377
- return (h("div", { class: { 'mg-c-input__input-container': true, 'mg-c-input__input-checkbox-multi': true, 'mg-c-input__input-checkbox-multi--with-values': this.displaySelectedValues } }, this.renderCheckboxMultiDisplaySelectedValues(selectedValuesNb), h("mg-popover", { arrowHide: true, identifier: this.getMgPopoverIdentifier(), "onDisplay-change": this.handleMgPopoverDisplayChange, ref: (el) => {
378
- if (el)
379
- this.mgPopover = el;
380
- } }, h("mg-button", { variant: "secondary", "aria-describedby": this.legendId }, h("mg-icon", { icon: "list" }), this.renderButtonText(selectedValuesNb)), h("div", { slot: "content" }, this.displaySearchInput && [
381
- h("mg-input-text", { key: "input-search", identifier: `${this.identifier}-input-search`, icon: "magnifying-glass", type: "search", placeholder: this.messages.input.checkbox.label, label: this.messages.input.checkbox.label, mgWidth: "full", value: this.searchValue, labelHide: true, displayCharacterLeft: false, name: "q", "onValue-change": this.handleSearchChange, "aria-controls": "search-results items-list" }),
382
- h("p", { key: "search-results", role: "status", class: "mg-u-visually-hidden", id: "search-results" }, `${checkboxes.length} ${this.messages.input.checkbox[checkboxes.length > 0 ? 'results' : 'result']}`),
383
- ], this.displaySearchInput ? (h("div", { class: "mg-c-input__input-checkbox-multi-sections-container" }, this.renderCheckboxBySection(checkboxes))) : (h(MgInputCheckboxList, { checkboxes: checkboxes, inputVerticalList: true, type: this.type, readonly: this.readonly, displaySearchInput: this.displaySearchInput, messages: this.messages.input.checkbox, id: "checkboxes-list", disabled: this.disabled, name: this.name, invalid: this.invalid })), this.displaySearchInput && checkboxes.length === 0 && h("p", { class: "mg-c-input__input-checkbox-multi-no-result" }, this.messages.input.checkbox.noResult)))));
384
- }
385
- /**
386
- * Render
387
- * @returns HTML Element
388
- */
389
- render() {
390
- var _a;
391
- return (h(MgInput, { identifier: this.identifier, classCollection: this.classCollection, ariaDescribedbyIDs: [], label: this.label, labelOnTop: this.labelOnTop, labelHide: this.labelHide, required: !this.readonly ? this.required : undefined, readonly: undefined, mgWidth: undefined, disabled: this.disabled, value: (_a = this.value) === null || _a === void 0 ? void 0 : _a.toString(), readonlyValue: undefined, tooltip: !this.readonly ? this.tooltip : undefined, helpText: !this.readonly ? this.helpText : undefined, errorMessage: !this.readonly ? this.errorMessage : undefined, isFieldset: true }, this.type === 'checkbox' || this.readonly ? (h(MgInputCheckboxList, { checkboxes: this.checkboxItems, inputVerticalList: this.inputVerticalList, type: this.type, readonly: this.readonly, displaySearchInput: this.displaySearchInput, messages: this.messages.input.checkbox, id: "checkboxes-list", disabled: this.disabled, name: this.name, invalid: this.invalid })) : (this.renderCheckboxMulti())));
392
- }
393
- static get is() { return "mg-input-checkbox"; }
394
- static get encapsulation() { return "shadow"; }
395
- static get originalStyleUrls() {
396
- return {
397
- "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-checkbox.css"]
398
- };
399
- }
400
- static get styleUrls() {
401
- return {
402
- "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-checkbox.css"]
403
- };
404
- }
405
- static get properties() {
406
- return {
407
- "value": {
408
- "type": "unknown",
409
- "mutable": true,
410
- "complexType": {
411
- "original": "CheckboxValue[]",
412
- "resolved": "CheckboxValue[]",
413
- "references": {
414
- "CheckboxValue": {
415
- "location": "import",
416
- "path": "./mg-input-checkbox.conf",
417
- "id": "src/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.ts::CheckboxValue"
418
- }
419
- }
420
- },
421
- "required": true,
422
- "optional": false,
423
- "docs": {
424
- "tags": [],
425
- "text": "Component value\nIf item.value is `null`, checkbox will be indeterminate by default"
426
- }
427
- },
428
- "type": {
429
- "type": "string",
430
- "mutable": true,
431
- "complexType": {
432
- "original": "CheckboxType",
433
- "resolved": "\"checkbox\" | \"multi\"",
434
- "references": {
435
- "CheckboxType": {
436
- "location": "import",
437
- "path": "./mg-input-checkbox.conf",
438
- "id": "src/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.ts::CheckboxType"
439
- }
440
- }
441
- },
442
- "required": false,
443
- "optional": false,
444
- "docs": {
445
- "tags": [],
446
- "text": "Define checkbox type\nWhen it's undefined the type is dynamic:\n- With 0-5 items type is 'checkbox'\n- With 5-10 items type is 'multi'\nWhen it set the type is locked to the defined value.\nWhen type is dynamic OR with 'multi' type AND Over 10 items \"search\" feature is enabled"
447
- },
448
- "attribute": "type",
449
- "reflect": false
450
- },
451
- "identifier": {
452
- "type": "string",
453
- "mutable": false,
454
- "complexType": {
455
- "original": "string",
456
- "resolved": "string",
457
- "references": {}
458
- },
459
- "required": true,
460
- "optional": false,
461
- "docs": {
462
- "tags": [],
463
- "text": "Identifier is used for the element ID (id is a reserved prop in Stencil.js)"
464
- },
465
- "attribute": "identifier",
466
- "reflect": false
467
- },
468
- "name": {
469
- "type": "string",
470
- "mutable": false,
471
- "complexType": {
472
- "original": "string",
473
- "resolved": "string",
474
- "references": {}
475
- },
476
- "required": false,
477
- "optional": false,
478
- "docs": {
479
- "tags": [],
480
- "text": "Define input name\nIf not set the value equals the identifier"
481
- },
482
- "attribute": "name",
483
- "reflect": false,
484
- "defaultValue": "this.identifier"
485
- },
486
- "label": {
487
- "type": "string",
488
- "mutable": false,
489
- "complexType": {
490
- "original": "string",
491
- "resolved": "string",
492
- "references": {}
493
- },
494
- "required": true,
495
- "optional": false,
496
- "docs": {
497
- "tags": [],
498
- "text": "Define input label"
499
- },
500
- "attribute": "label",
501
- "reflect": false
502
- },
503
- "labelOnTop": {
504
- "type": "boolean",
505
- "mutable": false,
506
- "complexType": {
507
- "original": "boolean",
508
- "resolved": "boolean",
509
- "references": {}
510
- },
511
- "required": false,
512
- "optional": false,
513
- "docs": {
514
- "tags": [],
515
- "text": "Define if label is displayed on top"
516
- },
517
- "attribute": "label-on-top",
518
- "reflect": false
519
- },
520
- "labelHide": {
521
- "type": "boolean",
522
- "mutable": false,
523
- "complexType": {
524
- "original": "boolean",
525
- "resolved": "boolean",
526
- "references": {}
527
- },
528
- "required": false,
529
- "optional": false,
530
- "docs": {
531
- "tags": [],
532
- "text": "Define if label is visible"
533
- },
534
- "attribute": "label-hide",
535
- "reflect": false,
536
- "defaultValue": "false"
537
- },
538
- "inputVerticalList": {
539
- "type": "boolean",
540
- "mutable": false,
541
- "complexType": {
542
- "original": "boolean",
543
- "resolved": "boolean",
544
- "references": {}
545
- },
546
- "required": false,
547
- "optional": false,
548
- "docs": {
549
- "tags": [],
550
- "text": "Define if inputs are display verticaly"
551
- },
552
- "attribute": "input-vertical-list",
553
- "reflect": false,
554
- "defaultValue": "false"
555
- },
556
- "required": {
557
- "type": "boolean",
558
- "mutable": false,
559
- "complexType": {
560
- "original": "boolean",
561
- "resolved": "boolean",
562
- "references": {}
563
- },
564
- "required": false,
565
- "optional": false,
566
- "docs": {
567
- "tags": [],
568
- "text": "Define if mg-input-checkbox is required"
569
- },
570
- "attribute": "required",
571
- "reflect": false,
572
- "defaultValue": "false"
573
- },
574
- "readonly": {
575
- "type": "boolean",
576
- "mutable": false,
577
- "complexType": {
578
- "original": "boolean",
579
- "resolved": "boolean",
580
- "references": {}
581
- },
582
- "required": false,
583
- "optional": false,
584
- "docs": {
585
- "tags": [],
586
- "text": "Define if mg-input-checkbox is readonly"
587
- },
588
- "attribute": "readonly",
589
- "reflect": false,
590
- "defaultValue": "false"
591
- },
592
- "displaySelectedValues": {
593
- "type": "boolean",
594
- "mutable": false,
595
- "complexType": {
596
- "original": "boolean",
597
- "resolved": "boolean",
598
- "references": {}
599
- },
600
- "required": false,
601
- "optional": false,
602
- "docs": {
603
- "tags": [],
604
- "text": "Display selected values list in \"multi\" type\nThis prop is only applied with prop type \"multi\" or when an \"unset\" mode render a \"multi\" type."
605
- },
606
- "attribute": "display-selected-values",
607
- "reflect": false
608
- },
609
- "disabled": {
610
- "type": "boolean",
611
- "mutable": false,
612
- "complexType": {
613
- "original": "boolean",
614
- "resolved": "boolean",
615
- "references": {}
616
- },
617
- "required": false,
618
- "optional": false,
619
- "docs": {
620
- "tags": [],
621
- "text": "Define if input is disabled"
622
- },
623
- "attribute": "disabled",
624
- "reflect": false,
625
- "defaultValue": "false"
626
- },
627
- "tooltip": {
628
- "type": "string",
629
- "mutable": false,
630
- "complexType": {
631
- "original": "string",
632
- "resolved": "string",
633
- "references": {}
634
- },
635
- "required": false,
636
- "optional": false,
637
- "docs": {
638
- "tags": [],
639
- "text": "Add a tooltip message next to the input"
640
- },
641
- "attribute": "tooltip",
642
- "reflect": false
643
- },
644
- "helpText": {
645
- "type": "string",
646
- "mutable": false,
647
- "complexType": {
648
- "original": "string",
649
- "resolved": "string",
650
- "references": {}
651
- },
652
- "required": false,
653
- "optional": false,
654
- "docs": {
655
- "tags": [],
656
- "text": "Add a help text under the input, usually expected data format and example"
657
- },
658
- "attribute": "help-text",
659
- "reflect": false
660
- },
661
- "valid": {
662
- "type": "boolean",
663
- "mutable": true,
664
- "complexType": {
665
- "original": "boolean",
666
- "resolved": "boolean",
667
- "references": {}
668
- },
669
- "required": false,
670
- "optional": false,
671
- "docs": {
672
- "tags": [],
673
- "text": "Define input valid state"
674
- },
675
- "attribute": "valid",
676
- "reflect": false
677
- },
678
- "invalid": {
679
- "type": "boolean",
680
- "mutable": true,
681
- "complexType": {
682
- "original": "boolean",
683
- "resolved": "boolean",
684
- "references": {}
685
- },
686
- "required": false,
687
- "optional": false,
688
- "docs": {
689
- "tags": [],
690
- "text": "Define input invalid state"
691
- },
692
- "attribute": "invalid",
693
- "reflect": false
694
- }
695
- };
696
- }
697
- static get states() {
698
- return {
699
- "classCollection": {},
700
- "errorMessage": {},
701
- "checkboxItems": {},
702
- "displaySearchInput": {},
703
- "searchValue": {},
704
- "searchResults": {}
705
- };
706
- }
707
- static get events() {
708
- return [{
709
- "method": "valueChange",
710
- "name": "value-change",
711
- "bubbles": true,
712
- "cancelable": true,
713
- "composed": true,
714
- "docs": {
715
- "tags": [],
716
- "text": "Emitted event when value change"
717
- },
718
- "complexType": {
719
- "original": "MgInputCheckbox['value']",
720
- "resolved": "CheckboxValue[]",
721
- "references": {
722
- "MgInputCheckbox": {
723
- "location": "global",
724
- "id": "global::MgInputCheckbox"
725
- }
726
- }
727
- }
728
- }, {
729
- "method": "inputValid",
730
- "name": "input-valid",
731
- "bubbles": true,
732
- "cancelable": true,
733
- "composed": true,
734
- "docs": {
735
- "tags": [],
736
- "text": "Emited event when checking validity"
737
- },
738
- "complexType": {
739
- "original": "MgInputCheckbox['valid']",
740
- "resolved": "boolean",
741
- "references": {
742
- "MgInputCheckbox": {
743
- "location": "global",
744
- "id": "global::MgInputCheckbox"
745
- }
746
- }
747
- }
748
- }];
749
- }
750
- static get methods() {
751
- return {
752
- "displayError": {
753
- "complexType": {
754
- "signature": "() => Promise<void>",
755
- "parameters": [],
756
- "references": {
757
- "Promise": {
758
- "location": "global",
759
- "id": "global::Promise"
760
- }
761
- },
762
- "return": "Promise<void>"
763
- },
764
- "docs": {
765
- "text": "Display input error if it exists.",
766
- "tags": []
767
- }
768
- },
769
- "setError": {
770
- "complexType": {
771
- "signature": "(valid: MgInputCheckbox['valid'], errorMessage: string) => Promise<void>",
772
- "parameters": [{
773
- "tags": [{
774
- "name": "param",
775
- "text": "valid - value indicating the validity"
776
- }],
777
- "text": "- value indicating the validity"
704
+ static get events() {
705
+ return [{
706
+ "method": "valueChange",
707
+ "name": "value-change",
708
+ "bubbles": true,
709
+ "cancelable": true,
710
+ "composed": true,
711
+ "docs": {
712
+ "tags": [],
713
+ "text": "Emitted event when value change"
714
+ },
715
+ "complexType": {
716
+ "original": "HTMLMgInputCheckboxElement['value']",
717
+ "resolved": "CheckboxValue[]",
718
+ "references": {
719
+ "HTMLMgInputCheckboxElement": {
720
+ "location": "global",
721
+ "id": "global::HTMLMgInputCheckboxElement"
722
+ }
723
+ }
724
+ }
778
725
  }, {
779
- "tags": [{
780
- "name": "param",
781
- "text": "errorMessage - the error message to display"
782
- }],
783
- "text": "- the error message to display"
784
- }],
785
- "references": {
786
- "Promise": {
787
- "location": "global",
788
- "id": "global::Promise"
726
+ "method": "inputValid",
727
+ "name": "input-valid",
728
+ "bubbles": true,
729
+ "cancelable": true,
730
+ "composed": true,
731
+ "docs": {
732
+ "tags": [],
733
+ "text": "Emited event when checking validity"
734
+ },
735
+ "complexType": {
736
+ "original": "HTMLMgInputCheckboxElement['valid']",
737
+ "resolved": "boolean",
738
+ "references": {
739
+ "HTMLMgInputCheckboxElement": {
740
+ "location": "global",
741
+ "id": "global::HTMLMgInputCheckboxElement"
742
+ }
743
+ }
744
+ }
745
+ }];
746
+ }
747
+ static get methods() {
748
+ return {
749
+ "displayError": {
750
+ "complexType": {
751
+ "signature": "() => Promise<void>",
752
+ "parameters": [],
753
+ "references": {
754
+ "Promise": {
755
+ "location": "global",
756
+ "id": "global::Promise"
757
+ }
758
+ },
759
+ "return": "Promise<void>"
760
+ },
761
+ "docs": {
762
+ "text": "Display input error if it exists.",
763
+ "tags": []
764
+ }
789
765
  },
790
- "MgInputCheckbox": {
791
- "location": "global",
792
- "id": "global::MgInputCheckbox"
766
+ "setError": {
767
+ "complexType": {
768
+ "signature": "(valid: MgInputCheckbox['valid'], errorMessage: string) => Promise<void>",
769
+ "parameters": [{
770
+ "tags": [{
771
+ "name": "param",
772
+ "text": "valid - value indicating the validity"
773
+ }],
774
+ "text": "- value indicating the validity"
775
+ }, {
776
+ "tags": [{
777
+ "name": "param",
778
+ "text": "errorMessage - the error message to display"
779
+ }],
780
+ "text": "- the error message to display"
781
+ }],
782
+ "references": {
783
+ "Promise": {
784
+ "location": "global",
785
+ "id": "global::Promise"
786
+ },
787
+ "MgInputCheckbox": {
788
+ "location": "global",
789
+ "id": "global::MgInputCheckbox"
790
+ }
791
+ },
792
+ "return": "Promise<void>"
793
+ },
794
+ "docs": {
795
+ "text": "Set an error and display a custom error message.\nThis method can be used to set the component's error state from its context by passing a boolean value to the `valid` parameter.\nIt must be paired with an error message to display for the given context.\nWhen used to set validity to `false`, you should use this method again to reset the validity to `true`.",
796
+ "tags": [{
797
+ "name": "param",
798
+ "text": "valid - value indicating the validity"
799
+ }, {
800
+ "name": "param",
801
+ "text": "errorMessage - the error message to display"
802
+ }]
803
+ }
793
804
  }
794
- },
795
- "return": "Promise<void>"
796
- },
797
- "docs": {
798
- "text": "Set an error and display a custom error message.\nThis method can be used to set the component's error state from its context by passing a boolean value to the `valid` parameter.\nIt must be paired with an error message to display for the given context.\nWhen used to set validity to `false`, you should use this method again to reset the validity to `true`.",
799
- "tags": [{
800
- "name": "param",
801
- "text": "valid - value indicating the validity"
805
+ };
806
+ }
807
+ static get elementRef() { return "element"; }
808
+ static get watchers() {
809
+ return [{
810
+ "propName": "value",
811
+ "methodName": "validateValue"
802
812
  }, {
803
- "name": "param",
804
- "text": "errorMessage - the error message to display"
805
- }]
806
- }
807
- }
808
- };
809
- }
810
- static get elementRef() { return "element"; }
811
- static get watchers() {
812
- return [{
813
- "propName": "value",
814
- "methodName": "validateValue"
815
- }, {
816
- "propName": "type",
817
- "methodName": "validateType"
818
- }, {
819
- "propName": "required",
820
- "methodName": "handleValidityChange"
821
- }, {
822
- "propName": "readonly",
823
- "methodName": "handleValidityChange"
824
- }, {
825
- "propName": "disabled",
826
- "methodName": "handleValidityChange"
827
- }, {
828
- "propName": "disabled",
829
- "methodName": "validateDisabled"
830
- }, {
831
- "propName": "checkboxItems",
832
- "methodName": "validateCheckboxItems"
833
- }, {
834
- "propName": "searchValue",
835
- "methodName": "validateSearchValue"
836
- }];
837
- }
813
+ "propName": "type",
814
+ "methodName": "validateType"
815
+ }, {
816
+ "propName": "required",
817
+ "methodName": "handleValidityChange"
818
+ }, {
819
+ "propName": "readonly",
820
+ "methodName": "handleValidityChange"
821
+ }, {
822
+ "propName": "disabled",
823
+ "methodName": "handleValidityChange"
824
+ }, {
825
+ "propName": "disabled",
826
+ "methodName": "validateDisabled"
827
+ }, {
828
+ "propName": "checkboxItems",
829
+ "methodName": "validateCheckboxItems"
830
+ }, {
831
+ "propName": "searchValue",
832
+ "methodName": "validateSearchValue"
833
+ }];
834
+ }
838
835
  }
839
836
  //# sourceMappingURL=mg-input-checkbox.js.map