@mgdis/mg-components 5.19.3 → 5.21.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 (493) 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 +5140 -5107
  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 +237 -222
  11. package/dist/cjs/mg-item-more.cjs.entry.js.map +1 -1
  12. package/dist/collection/assets/icons/index.js +193 -191
  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.conf.js +9 -0
  82. package/dist/collection/components/molecules/mg-form/mg-form.conf.js.map +1 -0
  83. package/dist/collection/components/molecules/mg-form/mg-form.js +405 -327
  84. package/dist/collection/components/molecules/mg-form/mg-form.js.map +1 -1
  85. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js +85 -85
  86. package/dist/collection/components/molecules/mg-illustrated-message/mg-illustrated-message.js.map +1 -1
  87. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js +203 -188
  88. package/dist/collection/components/molecules/mg-item-more/mg-item-more.js.map +1 -1
  89. package/dist/collection/components/molecules/mg-message/mg-message.js +325 -304
  90. package/dist/collection/components/molecules/mg-message/mg-message.js.map +1 -1
  91. package/dist/collection/components/molecules/mg-modal/mg-modal.js +317 -317
  92. package/dist/collection/components/molecules/mg-modal/mg-modal.js.map +1 -1
  93. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js +2 -2
  94. package/dist/collection/components/molecules/mg-pagination/mg-pagination.conf.js.map +1 -1
  95. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js +216 -216
  96. package/dist/collection/components/molecules/mg-pagination/mg-pagination.js.map +1 -1
  97. package/dist/collection/components/molecules/mg-panel/mg-panel.js +409 -399
  98. package/dist/collection/components/molecules/mg-panel/mg-panel.js.map +1 -1
  99. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js +91 -91
  100. package/dist/collection/components/molecules/mg-popover/mg-popover-content/mg-popover-content.js.map +1 -1
  101. package/dist/collection/components/molecules/mg-popover/mg-popover.js +336 -329
  102. package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -1
  103. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +94 -94
  104. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js.map +1 -1
  105. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js +4 -4
  106. package/dist/collection/components/molecules/mg-tabs/mg-tabs.conf.js.map +1 -1
  107. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +348 -343
  108. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js.map +1 -1
  109. package/dist/collection/locales/fr/messages.json +4 -4
  110. package/dist/collection/locales/index.spec.js +20 -20
  111. package/dist/collection/locales/index.spec.js.map +1 -1
  112. package/dist/collection/utils/behaviors.utils.js +127 -127
  113. package/dist/collection/utils/behaviors.utils.js.map +1 -1
  114. package/dist/collection/utils/behaviors.utils.spec.js +46 -42
  115. package/dist/collection/utils/behaviors.utils.spec.js.map +1 -1
  116. package/dist/collection/utils/components.utils.js +77 -75
  117. package/dist/collection/utils/components.utils.js.map +1 -1
  118. package/dist/collection/utils/components.utils.spec.js +150 -140
  119. package/dist/collection/utils/components.utils.spec.js.map +1 -1
  120. package/dist/collection/utils/e2e.test.utils.js +21 -21
  121. package/dist/collection/utils/e2e.test.utils.js.map +1 -1
  122. package/dist/collection/utils/locale.utils.js +17 -17
  123. package/dist/collection/utils/locale.utils.js.map +1 -1
  124. package/dist/collection/utils/locale.utils.spec.js +45 -45
  125. package/dist/collection/utils/locale.utils.spec.js.map +1 -1
  126. package/dist/collection/utils/playwright.e2e.test.utils.js +41 -41
  127. package/dist/collection/utils/playwright.e2e.test.utils.js.map +1 -1
  128. package/dist/collection/utils/playwright.fixture.js +24 -0
  129. package/dist/collection/utils/playwright.fixture.js.map +1 -0
  130. package/dist/collection/utils/unit.test.utils.js +50 -50
  131. package/dist/collection/utils/unit.test.utils.js.map +1 -1
  132. package/dist/components/MgInput.js +98 -98
  133. package/dist/components/MgInput.js.map +1 -1
  134. package/dist/components/components.utils.js +78 -76
  135. package/dist/components/components.utils.js.map +1 -1
  136. package/dist/components/index2.js +21 -21
  137. package/dist/components/index2.js.map +1 -1
  138. package/dist/components/mg-action-more.d.ts +2 -2
  139. package/dist/components/mg-action-more.js +173 -173
  140. package/dist/components/mg-action-more.js.map +1 -1
  141. package/dist/components/mg-badge.d.ts +2 -2
  142. package/dist/components/mg-badge2.js +83 -83
  143. package/dist/components/mg-badge2.js.map +1 -1
  144. package/dist/components/mg-button.d.ts +2 -2
  145. package/dist/components/mg-button2.js +182 -182
  146. package/dist/components/mg-button2.js.map +1 -1
  147. package/dist/components/mg-card.d.ts +2 -2
  148. package/dist/components/mg-card2.js +77 -77
  149. package/dist/components/mg-card2.js.map +1 -1
  150. package/dist/components/mg-character-left.d.ts +2 -2
  151. package/dist/components/mg-character-left2.js +50 -50
  152. package/dist/components/mg-character-left2.js.map +1 -1
  153. package/dist/components/mg-details.d.ts +2 -2
  154. package/dist/components/mg-details.js +69 -69
  155. package/dist/components/mg-details.js.map +1 -1
  156. package/dist/components/mg-divider.d.ts +2 -2
  157. package/dist/components/mg-divider.js +30 -30
  158. package/dist/components/mg-divider.js.map +1 -1
  159. package/dist/components/mg-form.d.ts +2 -2
  160. package/dist/components/mg-form.js +203 -171
  161. package/dist/components/mg-form.js.map +1 -1
  162. package/dist/components/mg-icon.d.ts +2 -2
  163. package/dist/components/mg-icon2.js +319 -317
  164. package/dist/components/mg-icon2.js.map +1 -1
  165. package/dist/components/mg-illustrated-message.d.ts +2 -2
  166. package/dist/components/mg-illustrated-message.js +51 -51
  167. package/dist/components/mg-illustrated-message.js.map +1 -1
  168. package/dist/components/mg-input-checkbox-paginated.d.ts +2 -2
  169. package/dist/components/mg-input-checkbox-paginated2.js +170 -170
  170. package/dist/components/mg-input-checkbox-paginated2.js.map +1 -1
  171. package/dist/components/mg-input-checkbox.d.ts +2 -2
  172. package/dist/components/mg-input-checkbox.js +477 -480
  173. package/dist/components/mg-input-checkbox.js.map +1 -1
  174. package/dist/components/mg-input-date.d.ts +2 -2
  175. package/dist/components/mg-input-date.js +265 -265
  176. package/dist/components/mg-input-date.js.map +1 -1
  177. package/dist/components/mg-input-numeric.d.ts +2 -2
  178. package/dist/components/mg-input-numeric.js +353 -353
  179. package/dist/components/mg-input-numeric.js.map +1 -1
  180. package/dist/components/mg-input-password.d.ts +2 -2
  181. package/dist/components/mg-input-password.js +204 -204
  182. package/dist/components/mg-input-password.js.map +1 -1
  183. package/dist/components/mg-input-radio.d.ts +2 -2
  184. package/dist/components/mg-input-radio.js +234 -234
  185. package/dist/components/mg-input-radio.js.map +1 -1
  186. package/dist/components/mg-input-select.d.ts +2 -2
  187. package/dist/components/mg-input-select2.js +315 -315
  188. package/dist/components/mg-input-select2.js.map +1 -1
  189. package/dist/components/mg-input-text.d.ts +2 -2
  190. package/dist/components/mg-input-text2.js +305 -305
  191. package/dist/components/mg-input-text2.js.map +1 -1
  192. package/dist/components/mg-input-textarea.d.ts +2 -2
  193. package/dist/components/mg-input-textarea.js +276 -276
  194. package/dist/components/mg-input-textarea.js.map +1 -1
  195. package/dist/components/mg-input-title.d.ts +2 -2
  196. package/dist/components/mg-input-title2.js +60 -60
  197. package/dist/components/mg-input-title2.js.map +1 -1
  198. package/dist/components/mg-input-toggle.d.ts +2 -2
  199. package/dist/components/mg-input-toggle.js +251 -251
  200. package/dist/components/mg-input-toggle.js.map +1 -1
  201. package/dist/components/mg-item-more.d.ts +2 -2
  202. package/dist/components/mg-item-more.js +298 -283
  203. package/dist/components/mg-item-more.js.map +1 -1
  204. package/dist/components/mg-menu-item.d.ts +2 -2
  205. package/dist/components/mg-menu-item2.js +345 -345
  206. package/dist/components/mg-menu-item2.js.map +1 -1
  207. package/dist/components/mg-menu.conf.js +2 -2
  208. package/dist/components/mg-menu.conf.js.map +1 -1
  209. package/dist/components/mg-menu.d.ts +2 -2
  210. package/dist/components/mg-menu2.js +176 -176
  211. package/dist/components/mg-menu2.js.map +1 -1
  212. package/dist/components/mg-message.d.ts +2 -2
  213. package/dist/components/mg-message.js +197 -192
  214. package/dist/components/mg-message.js.map +1 -1
  215. package/dist/components/mg-modal.d.ts +2 -2
  216. package/dist/components/mg-modal.js +198 -198
  217. package/dist/components/mg-modal.js.map +1 -1
  218. package/dist/components/mg-pagination.d.ts +2 -2
  219. package/dist/components/mg-pagination2.js +133 -133
  220. package/dist/components/mg-pagination2.js.map +1 -1
  221. package/dist/components/mg-panel.d.ts +2 -2
  222. package/dist/components/mg-panel.js +238 -238
  223. package/dist/components/mg-panel.js.map +1 -1
  224. package/dist/components/mg-popover-content.d.ts +2 -2
  225. package/dist/components/mg-popover-content2.js +69 -69
  226. package/dist/components/mg-popover-content2.js.map +1 -1
  227. package/dist/components/mg-popover.d.ts +2 -2
  228. package/dist/components/mg-popover2.js +224 -222
  229. package/dist/components/mg-popover2.js.map +1 -1
  230. package/dist/components/mg-skip-links.d.ts +2 -2
  231. package/dist/components/mg-skip-links.js +57 -57
  232. package/dist/components/mg-skip-links.js.map +1 -1
  233. package/dist/components/mg-tabs.d.ts +2 -2
  234. package/dist/components/mg-tabs.js +243 -243
  235. package/dist/components/mg-tabs.js.map +1 -1
  236. package/dist/components/mg-tag.d.ts +2 -2
  237. package/dist/components/mg-tag.js +97 -97
  238. package/dist/components/mg-tag.js.map +1 -1
  239. package/dist/components/mg-tooltip-content.d.ts +2 -2
  240. package/dist/components/mg-tooltip-content2.js +30 -30
  241. package/dist/components/mg-tooltip-content2.js.map +1 -1
  242. package/dist/components/mg-tooltip.d.ts +2 -2
  243. package/dist/components/mg-tooltip2.js +316 -316
  244. package/dist/components/mg-tooltip2.js.map +1 -1
  245. package/dist/esm/{components.utils-6cf27db1.js → components.utils-0d67c31c.js} +102 -100
  246. package/dist/esm/components.utils-0d67c31c.js.map +1 -0
  247. package/dist/esm/{index-0f833068.js → index-f34a3a2c.js} +185 -87
  248. package/dist/esm/index-f34a3a2c.js.map +1 -0
  249. package/dist/esm/loader.js +3 -3
  250. package/dist/esm/mg-action-more_34.entry.js +5140 -5107
  251. package/dist/esm/mg-action-more_34.entry.js.map +1 -1
  252. package/dist/esm/mg-components.js +4 -4
  253. package/dist/esm/mg-components.js.map +1 -1
  254. package/dist/esm/mg-item-more.entry.js +237 -222
  255. package/dist/esm/mg-item-more.entry.js.map +1 -1
  256. package/dist/mg-components/locales/fr/messages.json +4 -4
  257. package/dist/mg-components/mg-components.esm.js +1 -1
  258. package/dist/mg-components/mg-components.esm.js.map +1 -1
  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-ce356bc0.entry.js +2 -0
  264. package/dist/mg-components/p-ce356bc0.entry.js.map +1 -0
  265. package/dist/mg-components/p-e591ba8f.entry.js +2 -0
  266. package/dist/mg-components/p-e591ba8f.entry.js.map +1 -0
  267. package/dist/types/assets/icons/index.d.ts +193 -0
  268. package/dist/types/components/atoms/mg-badge/mg-badge.d.ts +41 -41
  269. package/dist/types/components/atoms/mg-button/mg-button.d.ts +100 -100
  270. package/dist/types/components/atoms/mg-card/mg-card.d.ts +39 -39
  271. package/dist/types/components/atoms/mg-character-left/mg-character-left.d.ts +37 -37
  272. package/dist/types/components/atoms/mg-divider/mg-divider.d.ts +12 -12
  273. package/dist/types/components/atoms/mg-icon/mg-icon.d.ts +56 -56
  274. package/dist/types/components/atoms/mg-input-title/mg-input-title.d.ts +34 -34
  275. package/dist/types/components/atoms/mg-tag/mg-tag.d.ts +51 -51
  276. package/dist/types/components/atoms/mg-tooltip/mg-tooltip-content/mg-tooltip-content.d.ts +12 -12
  277. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.conf.d.ts +3 -3
  278. package/dist/types/components/atoms/mg-tooltip/mg-tooltip.d.ts +113 -113
  279. package/dist/types/components/molecules/inputs/MgInput.conf.d.ts +5 -5
  280. package/dist/types/components/molecules/inputs/MgInput.d.ts +16 -16
  281. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox-paginated/mg-input-checkbox-paginated.d.ts +100 -100
  282. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.d.ts +26 -26
  283. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.d.ts +262 -262
  284. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.conf.d.ts +4 -4
  285. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.d.ts +150 -150
  286. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.d.ts +4 -4
  287. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.d.ts +223 -223
  288. package/dist/types/components/molecules/inputs/mg-input-password/mg-input-password.d.ts +142 -142
  289. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.conf.d.ts +3 -3
  290. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.d.ts +152 -152
  291. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.conf.d.ts +6 -6
  292. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.d.ts +193 -193
  293. package/dist/types/components/molecules/inputs/mg-input-text/mg-input-text.d.ts +195 -195
  294. package/dist/types/components/molecules/inputs/mg-input-textarea/mg-input-textarea.d.ts +181 -181
  295. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.conf.d.ts +2 -2
  296. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.d.ts +141 -141
  297. package/dist/types/components/molecules/menu/mg-menu/mg-menu.conf.d.ts +2 -2
  298. package/dist/types/components/molecules/menu/mg-menu/mg-menu.d.ts +97 -97
  299. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.conf.d.ts +6 -6
  300. package/dist/types/components/molecules/menu/mg-menu-item/mg-menu-item.d.ts +179 -179
  301. package/dist/types/components/molecules/mg-action-more/mg-action-more.conf.d.ts +12 -12
  302. package/dist/types/components/molecules/mg-action-more/mg-action-more.d.ts +72 -72
  303. package/dist/types/components/molecules/mg-details/mg-details.d.ts +45 -45
  304. package/dist/types/components/molecules/mg-form/mg-form.conf.d.ts +16 -0
  305. package/dist/types/components/molecules/mg-form/mg-form.d.ts +120 -103
  306. package/dist/types/components/molecules/mg-illustrated-message/mg-illustrated-message.d.ts +27 -27
  307. package/dist/types/components/molecules/mg-item-more/mg-item-more.conf.d.ts +5 -5
  308. package/dist/types/components/molecules/mg-item-more/mg-item-more.d.ts +67 -61
  309. package/dist/types/components/molecules/mg-message/mg-message.d.ts +100 -93
  310. package/dist/types/components/molecules/mg-modal/mg-modal.d.ts +107 -107
  311. package/dist/types/components/molecules/mg-pagination/mg-pagination.conf.d.ts +2 -2
  312. package/dist/types/components/molecules/mg-pagination/mg-pagination.d.ts +74 -74
  313. package/dist/types/components/molecules/mg-panel/mg-panel.d.ts +149 -149
  314. package/dist/types/components/molecules/mg-popover/mg-popover-content/mg-popover-content.d.ts +43 -43
  315. package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +88 -88
  316. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.conf.d.ts +2 -2
  317. package/dist/types/components/molecules/mg-skip-links/mg-skip-links.d.ts +40 -40
  318. package/dist/types/components/molecules/mg-tabs/mg-tabs.conf.d.ts +10 -10
  319. package/dist/types/components/molecules/mg-tabs/mg-tabs.d.ts +118 -118
  320. package/dist/types/components.d.ts +312 -30
  321. package/dist/types/locales/index.d.ts +172 -172
  322. package/dist/types/stencil-public-runtime.d.ts +29 -0
  323. package/dist/types/utils/behaviors.utils.d.ts +65 -65
  324. package/dist/types/utils/components.utils.d.ts +32 -26
  325. package/dist/types/utils/locale.utils.d.ts +2 -2
  326. package/dist/types/utils/playwright.fixture.d.ts +3 -0
  327. package/dist/types/utils/unit.test.utils.d.ts +5 -5
  328. package/package.json +19 -33
  329. package/dist/cjs/components.utils-69435877.js.map +0 -1
  330. package/dist/cjs/index-60dd0c56.js.map +0 -1
  331. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js +0 -33
  332. package/dist/collection/components/atoms/mg-badge/test/mg-badge.e2e.playwright.js.map +0 -1
  333. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js +0 -70
  334. package/dist/collection/components/atoms/mg-badge/test/mg-badge.spec.js.map +0 -1
  335. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js +0 -91
  336. package/dist/collection/components/atoms/mg-button/test/mg-button.e2e.js.map +0 -1
  337. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js +0 -192
  338. package/dist/collection/components/atoms/mg-button/test/mg-button.spec.js.map +0 -1
  339. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js +0 -36
  340. package/dist/collection/components/atoms/mg-card/test/mg-card.e2e.js.map +0 -1
  341. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js +0 -43
  342. package/dist/collection/components/atoms/mg-card/test/mg-card.spec.js.map +0 -1
  343. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js +0 -15
  344. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.e2e.js.map +0 -1
  345. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js +0 -42
  346. package/dist/collection/components/atoms/mg-character-left/test/mg-character-left.spec.js.map +0 -1
  347. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js +0 -11
  348. package/dist/collection/components/atoms/mg-divider/test/mg-divider.e2e.js.map +0 -1
  349. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js +0 -14
  350. package/dist/collection/components/atoms/mg-divider/test/mg-divider.spec.js.map +0 -1
  351. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js +0 -55
  352. package/dist/collection/components/atoms/mg-icon/test/mg-icon.e2e.js.map +0 -1
  353. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js +0 -84
  354. package/dist/collection/components/atoms/mg-icon/test/mg-icon.spec.js.map +0 -1
  355. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js +0 -12
  356. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.js.map +0 -1
  357. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js +0 -23
  358. package/dist/collection/components/atoms/mg-input-title/test/mg-input-title.spec.js.map +0 -1
  359. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js +0 -23
  360. package/dist/collection/components/atoms/mg-tag/test/mg-tag.e2e.playwright.js.map +0 -1
  361. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js +0 -71
  362. package/dist/collection/components/atoms/mg-tag/test/mg-tag.spec.js.map +0 -1
  363. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js +0 -138
  364. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.e2e.js.map +0 -1
  365. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js +0 -272
  366. package/dist/collection/components/atoms/mg-tooltip/test/mg-tooltip.spec.js.map +0 -1
  367. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js +0 -237
  368. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.js.map +0 -1
  369. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js +0 -634
  370. package/dist/collection/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.spec.js.map +0 -1
  371. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js +0 -123
  372. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.e2e.js.map +0 -1
  373. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js +0 -383
  374. package/dist/collection/components/molecules/inputs/mg-input-date/test/mg-input-date.spec.js.map +0 -1
  375. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js +0 -212
  376. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.e2e.js.map +0 -1
  377. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js +0 -460
  378. package/dist/collection/components/molecules/inputs/mg-input-numeric/test/mg-input-numeric.spec.js.map +0 -1
  379. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js +0 -115
  380. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.e2e.js.map +0 -1
  381. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js +0 -293
  382. package/dist/collection/components/molecules/inputs/mg-input-password/test/mg-input-password.spec.js.map +0 -1
  383. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js +0 -154
  384. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.e2e.js.map +0 -1
  385. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js +0 -359
  386. package/dist/collection/components/molecules/inputs/mg-input-radio/test/mg-input-radio.spec.js.map +0 -1
  387. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js +0 -194
  388. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.e2e.js.map +0 -1
  389. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js +0 -403
  390. package/dist/collection/components/molecules/inputs/mg-input-select/test/mg-input-select.spec.js.map +0 -1
  391. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js +0 -147
  392. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.js.map +0 -1
  393. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js +0 -355
  394. package/dist/collection/components/molecules/inputs/mg-input-text/test/mg-input-text.spec.js.map +0 -1
  395. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js +0 -129
  396. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.e2e.js.map +0 -1
  397. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js +0 -320
  398. package/dist/collection/components/molecules/inputs/mg-input-textarea/test/mg-input-textarea.spec.js.map +0 -1
  399. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js +0 -108
  400. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.js.map +0 -1
  401. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js +0 -247
  402. package/dist/collection/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.spec.js.map +0 -1
  403. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js +0 -239
  404. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.js.map +0 -1
  405. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js +0 -175
  406. package/dist/collection/components/molecules/menu/mg-menu/test/mg-menu.spec.js.map +0 -1
  407. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js +0 -100
  408. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.js.map +0 -1
  409. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js +0 -295
  410. package/dist/collection/components/molecules/menu/mg-menu-item/test/mg-menu-item.spec.js.map +0 -1
  411. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js +0 -136
  412. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.js.map +0 -1
  413. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js +0 -195
  414. package/dist/collection/components/molecules/mg-action-more/test/mg-action-more.spec.js.map +0 -1
  415. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js +0 -30
  416. package/dist/collection/components/molecules/mg-details/test/mg-details.e2e.playwright.js.map +0 -1
  417. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js +0 -42
  418. package/dist/collection/components/molecules/mg-details/test/mg-details.spec.js.map +0 -1
  419. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js +0 -169
  420. package/dist/collection/components/molecules/mg-form/test/mg-form.e2e.js.map +0 -1
  421. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js +0 -292
  422. package/dist/collection/components/molecules/mg-form/test/mg-form.spec.js.map +0 -1
  423. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js +0 -39
  424. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.e2e.js.map +0 -1
  425. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js +0 -36
  426. package/dist/collection/components/molecules/mg-illustrated-message/test/mg-illustrated-message.spec.js.map +0 -1
  427. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js +0 -85
  428. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.js.map +0 -1
  429. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js +0 -106
  430. package/dist/collection/components/molecules/mg-item-more/test/mg-item-more.spec.js.map +0 -1
  431. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js +0 -64
  432. package/dist/collection/components/molecules/mg-message/test/mg-message.e2e.js.map +0 -1
  433. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js +0 -109
  434. package/dist/collection/components/molecules/mg-message/test/mg-message.spec.js.map +0 -1
  435. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js +0 -62
  436. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.playwright.js.map +0 -1
  437. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js +0 -40
  438. package/dist/collection/components/molecules/mg-modal/test/mg-modal.e2e.template.js.map +0 -1
  439. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js +0 -26
  440. package/dist/collection/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.js.map +0 -1
  441. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js +0 -122
  442. package/dist/collection/components/molecules/mg-modal/test/mg-modal.spec.js.map +0 -1
  443. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js +0 -57
  444. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.js.map +0 -1
  445. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js +0 -121
  446. package/dist/collection/components/molecules/mg-pagination/test/mg-pagination.spec.js.map +0 -1
  447. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js +0 -106
  448. package/dist/collection/components/molecules/mg-panel/test/mg-panel.e2e.playwright.js.map +0 -1
  449. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js +0 -213
  450. package/dist/collection/components/molecules/mg-panel/test/mg-panel.spec.js.map +0 -1
  451. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js +0 -140
  452. package/dist/collection/components/molecules/mg-popover/test/mg-popover.e2e.playwright.js.map +0 -1
  453. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js +0 -142
  454. package/dist/collection/components/molecules/mg-popover/test/mg-popover.spec.js.map +0 -1
  455. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js +0 -55
  456. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.e2e.js.map +0 -1
  457. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js +0 -55
  458. package/dist/collection/components/molecules/mg-skip-links/test/mg-skip-links.spec.js.map +0 -1
  459. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js +0 -76
  460. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.js.map +0 -1
  461. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js +0 -332
  462. package/dist/collection/components/molecules/mg-tabs/test/mg-tabs.spec.js.map +0 -1
  463. package/dist/collection/utils/stencil.e2e.test.utils.js +0 -33
  464. package/dist/collection/utils/stencil.e2e.test.utils.js.map +0 -1
  465. package/dist/esm/components.utils-6cf27db1.js.map +0 -1
  466. package/dist/esm/index-0f833068.js.map +0 -1
  467. package/dist/mg-components/p-10ed4425.entry.js +0 -2
  468. package/dist/mg-components/p-10ed4425.entry.js.map +0 -1
  469. package/dist/mg-components/p-36a51c5e.js +0 -2
  470. package/dist/mg-components/p-36a51c5e.js.map +0 -1
  471. package/dist/mg-components/p-91feda5a.entry.js +0 -2
  472. package/dist/mg-components/p-91feda5a.entry.js.map +0 -1
  473. package/dist/mg-components/p-9b12021b.js +0 -3
  474. package/dist/mg-components/p-9b12021b.js.map +0 -1
  475. package/dist/types/components/atoms/mg-badge/test/mg-badge.e2e.playwright.d.ts +0 -1
  476. package/dist/types/components/atoms/mg-input-title/test/mg-input-title.e2e.playwright.d.ts +0 -1
  477. package/dist/types/components/atoms/mg-tag/test/mg-tag.e2e.playwright.d.ts +0 -1
  478. package/dist/types/components/molecules/inputs/mg-input-checkbox/test/mg-input-checkbox.e2e.playwright.d.ts +0 -1
  479. package/dist/types/components/molecules/inputs/mg-input-text/test/mg-input-text.e2e.playwright.d.ts +0 -1
  480. package/dist/types/components/molecules/inputs/mg-input-toggle/test/mg-input-toggle.e2e.playwright.d.ts +0 -1
  481. package/dist/types/components/molecules/menu/mg-menu/test/mg-menu.e2e.playwright.d.ts +0 -1
  482. package/dist/types/components/molecules/menu/mg-menu-item/test/mg-menu-item.e2e.playwright.d.ts +0 -1
  483. package/dist/types/components/molecules/mg-action-more/test/mg-action-more.e2e.playwright.d.ts +0 -2
  484. package/dist/types/components/molecules/mg-details/test/mg-details.e2e.playwright.d.ts +0 -1
  485. package/dist/types/components/molecules/mg-item-more/test/mg-item-more.e2e.playwright.d.ts +0 -1
  486. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.playwright.d.ts +0 -1
  487. package/dist/types/components/molecules/mg-modal/test/mg-modal.e2e.template.d.ts +0 -12
  488. package/dist/types/components/molecules/mg-modal/test/mg-modal.firefox.e2e.playwright.d.ts +0 -1
  489. package/dist/types/components/molecules/mg-pagination/test/mg-pagination.e2e.playwright.d.ts +0 -1
  490. package/dist/types/components/molecules/mg-panel/test/mg-panel.e2e.playwright.d.ts +0 -1
  491. package/dist/types/components/molecules/mg-popover/test/mg-popover.e2e.playwright.d.ts +0 -1
  492. package/dist/types/components/molecules/mg-tabs/test/mg-tabs.e2e.playwright.d.ts +0 -1
  493. package/dist/types/utils/stencil.e2e.test.utils.d.ts +0 -14
@@ -6,805 +6,810 @@ import { ClassList, isValidString } from "../../../../utils/components.utils";
6
6
  import { initLocales } from "../../../../locales/";
7
7
  import { localeCurrency, localeNumber } from "../../../../utils/locale.utils";
8
8
  export class MgInputNumeric {
9
- constructor() {
10
- // hasDisplayedError (triggered by blur event)
11
- this.hasDisplayedError = false;
9
+ constructor() {
10
+ // hasDisplayedError (triggered by blur event)
11
+ this.hasDisplayedError = false;
12
+ /**
13
+ * Handle input event
14
+ */
15
+ this.handleInput = () => {
16
+ // Check validity
17
+ this.checkValidity();
18
+ if (this.hasDisplayedError) {
19
+ this.setErrorMessage();
20
+ }
21
+ this.value = this.input.value;
22
+ };
23
+ /**
24
+ * Handle focus event
25
+ */
26
+ this.handleFocus = () => {
27
+ this.hasFocus = true;
28
+ };
29
+ /**
30
+ * Handle blur event
31
+ */
32
+ this.handleBlur = () => {
33
+ if (this.value === '-')
34
+ this.value = '';
35
+ // Display Error
36
+ this.handlerInProgress = Handler.BLUR;
37
+ this.displayError().finally(() => {
38
+ // reset guard
39
+ this.handlerInProgress = undefined;
40
+ this.hasFocus = false;
41
+ });
42
+ };
43
+ /**
44
+ * Check if input is valid
45
+ */
46
+ this.checkValidity = () => {
47
+ this.setValidity(this.readonly || this.disabled || this.getInputError() === null);
48
+ };
49
+ /**
50
+ * Set input error message
51
+ * @param errorMessage - errorMessage override
52
+ */
53
+ this.setErrorMessage = (errorMessage) => {
54
+ // Set error message
55
+ this.errorMessage = undefined;
56
+ if (!this.valid) {
57
+ const inputError = this.getInputError();
58
+ if (errorMessage !== undefined) {
59
+ this.errorMessage = errorMessage;
60
+ }
61
+ else if (inputError === InputError.REQUIRED) {
62
+ this.errorMessage = this.messages.errors[inputError];
63
+ }
64
+ else {
65
+ this.errorMessage = this.messages.errors.numeric[inputError].replace('{min}', `${this.formatValue(this.min)}`).replace('{max}', `${this.formatValue(this.max)}`);
66
+ }
67
+ }
68
+ };
69
+ /**
70
+ * Get input error code
71
+ * @returns error code
72
+ */
73
+ this.getInputError = () => {
74
+ let inputError = null;
75
+ const hasNotEmptyValues = (toControl) => !toControl.some(value => [null, undefined].includes(value));
76
+ if (!hasNotEmptyValues([this.input]))
77
+ return inputError;
78
+ // required
79
+ if (!this.input.checkValidity() && this.input.validity.valueMissing) {
80
+ inputError = InputError.REQUIRED;
81
+ }
82
+ // Min & Max
83
+ else if (hasNotEmptyValues([this.min, this.numericValue]) && this.numericValue < this.min && this.max === undefined) {
84
+ // Only a min value is set
85
+ inputError = InputError.MIN;
86
+ }
87
+ else if (hasNotEmptyValues([this.max, this.numericValue]) && this.numericValue > this.max && this.min === undefined) {
88
+ // Only a max value is set
89
+ inputError = InputError.MAX;
90
+ }
91
+ else if (hasNotEmptyValues([this.min, this.max, this.numericValue]) && (this.numericValue < this.min || this.numericValue > this.max)) {
92
+ // both min and max values are set
93
+ inputError = InputError.MINMAX;
94
+ }
95
+ return inputError;
96
+ };
97
+ /**
98
+ * Format value based on type
99
+ * @param value - value to format
100
+ * @returns formated local value
101
+ */
102
+ this.formatValue = (value) => (this.type === 'currency' ? localeCurrency(value, this.locale, this.currency) : localeNumber(value, this.locale));
103
+ /**
104
+ * Validate append slot
105
+ */
106
+ this.validateAppendSlot = () => {
107
+ const slotAppendInput = this.element.querySelector('[slot="append-input"]');
108
+ if (slotAppendInput !== null) {
109
+ this.classCollection.add(slotAppendInput.nodeName === 'MG-BUTTON' ? 'mg-c-input--is-input-group-append' : 'mg-c-input--is-append-input-slot-content');
110
+ }
111
+ };
112
+ this.value = undefined;
113
+ this.identifier = undefined;
114
+ this.name = this.identifier;
115
+ this.label = undefined;
116
+ this.labelOnTop = undefined;
117
+ this.labelHide = false;
118
+ this.placeholder = undefined;
119
+ this.required = false;
120
+ this.readonly = false;
121
+ this.disabled = false;
122
+ this.mgWidth = undefined;
123
+ this.tooltip = undefined;
124
+ this.helpText = undefined;
125
+ this.type = types[0];
126
+ this.currency = 'USD';
127
+ this.max = undefined;
128
+ this.min = undefined;
129
+ this.integerLength = 13;
130
+ this.decimalLength = 2;
131
+ this.valid = undefined;
132
+ this.invalid = undefined;
133
+ this.classCollection = new ClassList(['mg-c-input--numeric']);
134
+ this.errorMessage = undefined;
135
+ this.hasFocus = undefined;
136
+ }
137
+ validateValue(newValue) {
138
+ // has input value is always render as string we get a stringified value or a '' for nullish value, so we test string type
139
+ if (typeof newValue === 'string') {
140
+ // Split number and decimal
141
+ const [integer, decimal = ''] = newValue.replace('-', '').split(/[.,]/);
142
+ // Regex
143
+ const regex = this.type === 'integer' ? /^-?\d+$/ : /^-?\d+(?:[.,]\d*)?$/;
144
+ // Filter input
145
+ if (this.isValidValue(newValue, regex, integer, decimal)) {
146
+ this.storedValue = newValue;
147
+ }
148
+ else {
149
+ newValue = this.handleInvalidValue();
150
+ }
151
+ // Set value and input value
152
+ this.updateValues(newValue);
153
+ }
154
+ }
155
+ handleValidityChange(newValue, _oldValue, prop) {
156
+ if (this.input !== undefined) {
157
+ this.input[prop] = newValue;
158
+ this.checkValidity();
159
+ if (this.hasDisplayedError) {
160
+ this.setErrorMessage();
161
+ this.hasDisplayedError = false;
162
+ }
163
+ }
164
+ }
165
+ validateType(newValue) {
166
+ if (!types.includes(newValue)) {
167
+ throw new Error(`<mg-input-numeric> prop "type" must be one of: ${types.join(', ')}`);
168
+ }
169
+ }
170
+ validateIntegerLength(newValue) {
171
+ if (newValue < 1) {
172
+ throw new Error(`<mg-input-numeric> prop "integer-length" must be a positive number.`);
173
+ }
174
+ }
175
+ validateDecimalLength(newValue) {
176
+ if (newValue < 1) {
177
+ throw new Error(`<mg-input-numeric> prop "decimal-length" must be a positive number, consider using prop "type" to "integer" instead.`);
178
+ }
179
+ }
12
180
  /**
13
- * Handle input event
181
+ * Display input error if it exists.
14
182
  */
15
- this.handleInput = () => {
16
- // Check validity
17
- this.checkValidity();
18
- if (this.hasDisplayedError) {
183
+ async displayError() {
184
+ this.checkValidity();
19
185
  this.setErrorMessage();
20
- }
21
- this.value = this.input.value;
22
- };
23
- /**
24
- * Handle focus event
25
- */
26
- this.handleFocus = () => {
27
- this.hasFocus = true;
28
- };
29
- /**
30
- * Handle blur event
31
- */
32
- this.handleBlur = () => {
33
- if (this.value === '-')
34
- this.value = '';
35
- // Display Error
36
- this.handlerInProgress = Handler.BLUR;
37
- this.displayError().finally(() => {
38
- // reset guard
39
- this.handlerInProgress = undefined;
40
- this.hasFocus = false;
41
- });
42
- };
43
- /**
44
- * Check if input is valid
45
- */
46
- this.checkValidity = () => {
47
- this.setValidity(this.readonly || this.disabled || this.getInputError() === null);
48
- };
186
+ this.hasDisplayedError = this.invalid;
187
+ }
49
188
  /**
50
- * Set input error message
51
- * @param errorMessage - errorMessage override
189
+ * Set an error and display a custom error message.
190
+ * This method can be used to set the component's error state from its context by passing a boolean value to the `valid` parameter.
191
+ * It must be paired with an error message to display for the given context.
192
+ * When used to set validity to `false`, you should use this method again to reset the validity to `true`.
193
+ * @param valid - value indicating the validity
194
+ * @param errorMessage - the error message to display
52
195
  */
53
- this.setErrorMessage = (errorMessage) => {
54
- // Set error message
55
- this.errorMessage = undefined;
56
- if (!this.valid) {
57
- const inputError = this.getInputError();
58
- if (errorMessage !== undefined) {
59
- this.errorMessage = errorMessage;
196
+ async setError(valid, errorMessage) {
197
+ if (typeof valid !== 'boolean') {
198
+ throw new Error('<mg-input-numeric> method "setError()" param "valid" must be a boolean');
60
199
  }
61
- else if (inputError === InputError.REQUIRED) {
62
- this.errorMessage = this.messages.errors[inputError];
200
+ else if (!isValidString(errorMessage)) {
201
+ throw new Error('<mg-input-numeric> method "setError()" param "errorMessage" must be a string');
63
202
  }
64
203
  else {
65
- this.errorMessage = this.messages.errors.numeric[inputError].replace('{min}', `${this.formatValue(this.min)}`).replace('{max}', `${this.formatValue(this.max)}`);
204
+ this.setValidity(valid);
205
+ this.setErrorMessage(valid ? undefined : errorMessage);
206
+ this.hasDisplayedError = this.invalid;
66
207
  }
67
- }
68
- };
208
+ }
69
209
  /**
70
- * Get input error code
71
- * @returns error code
210
+ * Method to set validity values
211
+ * @param newValue - valid new value
72
212
  */
73
- this.getInputError = () => {
74
- let inputError = null;
75
- const hasNotEmptyValues = (toControl) => !toControl.some(value => [null, undefined].includes(value));
76
- if (!hasNotEmptyValues([this.input]))
77
- return inputError;
78
- // required
79
- if (!this.input.checkValidity() && this.input.validity.valueMissing) {
80
- inputError = InputError.REQUIRED;
81
- }
82
- // Min & Max
83
- else if (hasNotEmptyValues([this.min, this.numericValue]) && this.numericValue < this.min && this.max === undefined) {
84
- // Only a min value is set
85
- inputError = InputError.MIN;
86
- }
87
- else if (hasNotEmptyValues([this.max, this.numericValue]) && this.numericValue > this.max && this.min === undefined) {
88
- // Only a max value is set
89
- inputError = InputError.MAX;
90
- }
91
- else if (hasNotEmptyValues([this.min, this.max, this.numericValue]) && (this.numericValue < this.min || this.numericValue > this.max)) {
92
- // both min and max values are set
93
- inputError = InputError.MINMAX;
94
- }
95
- return inputError;
96
- };
213
+ setValidity(newValue) {
214
+ const oldValidValue = this.valid;
215
+ this.valid = newValue;
216
+ this.invalid = !this.valid;
217
+ // We need to send valid event even if it is the same value
218
+ if (this.handlerInProgress === undefined || (this.handlerInProgress === Handler.BLUR && this.valid !== oldValidValue))
219
+ this.inputValid.emit(this.valid);
220
+ }
97
221
  /**
98
- * Format value based on type
99
- * @param value - value to format
100
- * @returns formated local value
222
+ * Checks if the given value is valid according to the defined rules.
223
+ * @param value - The input value to validate.
224
+ * @param regex - The regular expression for validation.
225
+ * @param integer - The integer part of the value.
226
+ * @param decimal - The decimal part of the value.
227
+ * @returns Returns true if the value is valid, otherwise false.
101
228
  */
102
- this.formatValue = (value) => (this.type === 'currency' ? localeCurrency(value, this.locale, this.currency) : localeNumber(value, this.locale));
229
+ isValidValue(value, regex, integer, decimal) {
230
+ return (['', '-'].includes(value) || (regex.exec(value) !== null && integer.length <= this.integerLength && decimal.length <= (this.type === 'integer' ? 0 : this.decimalLength)));
231
+ }
103
232
  /**
104
- * Validate append slot
233
+ * Handles invalid input values and returns a corrected value.
234
+ * @returns The corrected value.
105
235
  */
106
- this.validateAppendSlot = () => {
107
- const slotAppendInput = this.element.querySelector('[slot="append-input"]');
108
- if (slotAppendInput !== null) {
109
- this.classCollection.add(slotAppendInput.nodeName === 'MG-BUTTON' ? 'mg-c-input--is-input-group-append' : 'mg-c-input--is-append-input-slot-content');
110
- }
111
- };
112
- this.value = undefined;
113
- this.identifier = undefined;
114
- this.name = this.identifier;
115
- this.label = undefined;
116
- this.labelOnTop = undefined;
117
- this.labelHide = false;
118
- this.placeholder = undefined;
119
- this.required = false;
120
- this.readonly = false;
121
- this.disabled = false;
122
- this.mgWidth = undefined;
123
- this.tooltip = undefined;
124
- this.helpText = undefined;
125
- this.type = types[0];
126
- this.currency = 'USD';
127
- this.max = undefined;
128
- this.min = undefined;
129
- this.integerLength = 13;
130
- this.decimalLength = 2;
131
- this.valid = undefined;
132
- this.invalid = undefined;
133
- this.classCollection = new ClassList(['mg-c-input--numeric']);
134
- this.errorMessage = undefined;
135
- this.hasFocus = undefined;
136
- }
137
- validateValue(newValue) {
138
- // has input value is always render as string we get a stringified value or a '' for nullish value, so we test string type
139
- if (typeof newValue === 'string') {
140
- // Split number and decimal
141
- const [integer, decimal = ''] = newValue.replace('-', '').split(/[.,]/);
142
- // Regex
143
- const regex = this.type === 'integer' ? /^-?\d+$/ : /^-?\d+(?:[.,]\d*)?$/;
144
- // Filter input
145
- if (this.isValidValue(newValue, regex, integer, decimal)) {
146
- this.storedValue = newValue;
147
- }
148
- else {
149
- newValue = this.handleInvalidValue();
150
- }
151
- // Set value and input value
152
- this.updateValues(newValue);
153
- }
154
- }
155
- handleValidityChange(newValue, _oldValue, prop) {
156
- if (this.input !== undefined) {
157
- this.input[prop] = newValue;
158
- this.checkValidity();
159
- if (this.hasDisplayedError) {
160
- this.setErrorMessage();
161
- this.hasDisplayedError = false;
162
- }
236
+ handleInvalidValue() {
237
+ var _a;
238
+ return (_a = this.storedValue) !== null && _a !== void 0 ? _a : null;
163
239
  }
164
- }
165
- validateType(newValue) {
166
- if (!types.includes(newValue)) {
167
- throw new Error(`<mg-input-numeric> prop "type" must be one of: ${types.join(', ')}`);
240
+ /**
241
+ * Updates the component values based on the validated input value.
242
+ * @param newValue - The validated input value.
243
+ */
244
+ updateValues(newValue) {
245
+ this.value = newValue;
246
+ if (this.input !== undefined)
247
+ this.input.value = this.value;
248
+ this.numericValue = !['', null].includes(this.value) ? parseFloat(this.value.replace(',', '.')) : null;
249
+ this.valueChange.emit(this.numericValue);
250
+ this.readonlyValue = this.numericValue !== null ? this.formatValue(this.numericValue) : '';
168
251
  }
169
- }
170
- validateIntegerLength(newValue) {
171
- if (newValue < 1) {
172
- throw new Error(`<mg-input-numeric> prop "integer-length" must be a positive number.`);
252
+ /**
253
+ * Displayed value in input
254
+ * Change on focus/blur
255
+ * @returns display value
256
+ */
257
+ displayValue() {
258
+ return this.hasFocus ? this.value : this.readonlyValue;
173
259
  }
174
- }
175
- validateDecimalLength(newValue) {
176
- if (newValue < 1) {
177
- throw new Error(`<mg-input-numeric> prop "decimal-length" must be a positive number, consider using prop "type" to "integer" instead.`);
260
+ /*************
261
+ * Lifecycle *
262
+ *************/
263
+ /**
264
+ * Check if component props are well configured on init
265
+ * @returns timeout
266
+ */
267
+ componentWillLoad() {
268
+ // Get locales
269
+ const locales = initLocales(this.element);
270
+ this.locale = locales.locale;
271
+ this.messages = locales.messages;
272
+ // Validate component config
273
+ this.validateType(this.type);
274
+ this.validateIntegerLength(this.integerLength);
275
+ this.validateDecimalLength(this.decimalLength);
276
+ // validate value
277
+ this.validateValue(this.value);
278
+ this.validateAppendSlot();
279
+ // Check validity when component is ready
280
+ // return a promise to process action only in the FIRST render().
281
+ // https://stenciljs.com/docs/component-lifecycle#componentwillload
282
+ return setTimeout(() => {
283
+ this.checkValidity();
284
+ }, 0);
178
285
  }
179
- }
180
- /**
181
- * Display input error if it exists.
182
- */
183
- async displayError() {
184
- this.checkValidity();
185
- this.setErrorMessage();
186
- this.hasDisplayedError = this.invalid;
187
- }
188
- /**
189
- * Set an error and display a custom error message.
190
- * This method can be used to set the component's error state from its context by passing a boolean value to the `valid` parameter.
191
- * It must be paired with an error message to display for the given context.
192
- * When used to set validity to `false`, you should use this method again to reset the validity to `true`.
193
- * @param valid - value indicating the validity
194
- * @param errorMessage - the error message to display
195
- */
196
- async setError(valid, errorMessage) {
197
- if (typeof valid !== 'boolean') {
198
- throw new Error('<mg-input-numeric> method "setError()" param "valid" must be a boolean');
286
+ /**
287
+ * Render
288
+ * @returns HTML Element
289
+ */
290
+ render() {
291
+ return (h(MgInput, { identifier: this.identifier, classCollection: this.classCollection, ariaDescribedbyIDs: [], label: this.label, labelOnTop: this.labelOnTop, labelHide: this.labelHide, required: this.required, readonly: this.readonly, mgWidth: this.mgWidth, disabled: this.disabled, value: this.value, readonlyValue: this.readonlyValue, tooltip: this.tooltip, helpText: this.helpText, errorMessage: this.errorMessage, isFieldset: false }, h("input", { type: "text", class: "mg-c-input__box", value: this.displayValue(), id: this.identifier, name: this.name, placeholder: this.placeholder, title: this.placeholder, disabled: this.disabled, required: this.required, "aria-invalid": (this.invalid === true).toString(), onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, ref: (el) => {
292
+ if (el !== null)
293
+ this.input = el;
294
+ } }), h("slot", { name: "append-input" })));
199
295
  }
200
- else if (!isValidString(errorMessage)) {
201
- throw new Error('<mg-input-numeric> method "setError()" param "errorMessage" must be a string');
296
+ static get is() { return "mg-input-numeric"; }
297
+ static get encapsulation() { return "shadow"; }
298
+ static get originalStyleUrls() {
299
+ return {
300
+ "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-numeric.css"]
301
+ };
202
302
  }
203
- else {
204
- this.setValidity(valid);
205
- this.setErrorMessage(valid ? undefined : errorMessage);
206
- this.hasDisplayedError = this.invalid;
303
+ static get styleUrls() {
304
+ return {
305
+ "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-numeric.css"]
306
+ };
207
307
  }
208
- }
209
- /**
210
- * Method to set validity values
211
- * @param newValue - valid new value
212
- */
213
- setValidity(newValue) {
214
- const oldValidValue = this.valid;
215
- this.valid = newValue;
216
- this.invalid = !this.valid;
217
- // We need to send valid event even if it is the same value
218
- if (this.handlerInProgress === undefined || (this.handlerInProgress === Handler.BLUR && this.valid !== oldValidValue))
219
- this.inputValid.emit(this.valid);
220
- }
221
- /**
222
- * Checks if the given value is valid according to the defined rules.
223
- * @param value - The input value to validate.
224
- * @param regex - The regular expression for validation.
225
- * @param integer - The integer part of the value.
226
- * @param decimal - The decimal part of the value.
227
- * @returns Returns true if the value is valid, otherwise false.
228
- */
229
- isValidValue(value, regex, integer, decimal) {
230
- return (['', '-'].includes(value) || (regex.exec(value) !== null && integer.length <= this.integerLength && decimal.length <= (this.type === 'integer' ? 0 : this.decimalLength)));
231
- }
232
- /**
233
- * Handles invalid input values and returns a corrected value.
234
- * @returns The corrected value.
235
- */
236
- handleInvalidValue() {
237
- var _a;
238
- return (_a = this.storedValue) !== null && _a !== void 0 ? _a : null;
239
- }
240
- /**
241
- * Updates the component values based on the validated input value.
242
- * @param newValue - The validated input value.
243
- */
244
- updateValues(newValue) {
245
- this.value = newValue;
246
- if (this.input !== undefined)
247
- this.input.value = this.value;
248
- this.numericValue = !['', null].includes(this.value) ? parseFloat(this.value.replace(',', '.')) : null;
249
- this.valueChange.emit(this.numericValue);
250
- this.readonlyValue = this.numericValue !== null ? this.formatValue(this.numericValue) : '';
251
- }
252
- /**
253
- * Displayed value in input
254
- * Change on focus/blur
255
- * @returns display value
256
- */
257
- displayValue() {
258
- return this.hasFocus ? this.value : this.readonlyValue;
259
- }
260
- /*************
261
- * Lifecycle *
262
- *************/
263
- /**
264
- * Check if component props are well configured on init
265
- * @returns timeout
266
- */
267
- componentWillLoad() {
268
- // Get locales
269
- const locales = initLocales(this.element);
270
- this.locale = locales.locale;
271
- this.messages = locales.messages;
272
- // Validate component config
273
- this.validateType(this.type);
274
- this.validateIntegerLength(this.integerLength);
275
- this.validateDecimalLength(this.decimalLength);
276
- // validate value
277
- this.validateValue(this.value);
278
- this.validateAppendSlot();
279
- // Check validity when component is ready
280
- // return a promise to process action only in the FIRST render().
281
- // https://stenciljs.com/docs/component-lifecycle#componentwillload
282
- return setTimeout(() => {
283
- this.checkValidity();
284
- }, 0);
285
- }
286
- /**
287
- * Render
288
- * @returns HTML Element
289
- */
290
- render() {
291
- return (h(MgInput, { identifier: this.identifier, classCollection: this.classCollection, ariaDescribedbyIDs: [], label: this.label, labelOnTop: this.labelOnTop, labelHide: this.labelHide, required: this.required, readonly: this.readonly, mgWidth: this.mgWidth, disabled: this.disabled, value: this.value, readonlyValue: this.readonlyValue, tooltip: this.tooltip, helpText: this.helpText, errorMessage: this.errorMessage, isFieldset: false }, h("input", { type: "text", class: "mg-c-input__box", value: this.displayValue(), id: this.identifier, name: this.name, placeholder: this.placeholder, title: this.placeholder, disabled: this.disabled, required: this.required, "aria-invalid": (this.invalid === true).toString(), onInput: this.handleInput, onFocus: this.handleFocus, onBlur: this.handleBlur, ref: (el) => {
292
- if (el !== null)
293
- this.input = el;
294
- } }), h("slot", { name: "append-input" })));
295
- }
296
- static get is() { return "mg-input-numeric"; }
297
- static get encapsulation() { return "shadow"; }
298
- static get originalStyleUrls() {
299
- return {
300
- "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-numeric.css"]
301
- };
302
- }
303
- static get styleUrls() {
304
- return {
305
- "$": ["../../../../../node_modules/@mgdis/styles/dist/components/mg-input-numeric.css"]
306
- };
307
- }
308
- static get properties() {
309
- return {
310
- "value": {
311
- "type": "string",
312
- "mutable": true,
313
- "complexType": {
314
- "original": "string",
315
- "resolved": "string",
316
- "references": {}
317
- },
318
- "required": false,
319
- "optional": false,
320
- "docs": {
321
- "tags": [],
322
- "text": "Component value"
323
- },
324
- "attribute": "value",
325
- "reflect": true
326
- },
327
- "identifier": {
328
- "type": "string",
329
- "mutable": false,
330
- "complexType": {
331
- "original": "string",
332
- "resolved": "string",
333
- "references": {}
334
- },
335
- "required": true,
336
- "optional": false,
337
- "docs": {
338
- "tags": [],
339
- "text": "Identifier is used for the element ID (id is a reserved prop in Stencil.js)"
340
- },
341
- "attribute": "identifier",
342
- "reflect": false
343
- },
344
- "name": {
345
- "type": "string",
346
- "mutable": false,
347
- "complexType": {
348
- "original": "string",
349
- "resolved": "string",
350
- "references": {}
351
- },
352
- "required": false,
353
- "optional": false,
354
- "docs": {
355
- "tags": [],
356
- "text": "Input name\nIf not set the value equals the identifier"
357
- },
358
- "attribute": "name",
359
- "reflect": false,
360
- "defaultValue": "this.identifier"
361
- },
362
- "label": {
363
- "type": "string",
364
- "mutable": false,
365
- "complexType": {
366
- "original": "string",
367
- "resolved": "string",
368
- "references": {}
369
- },
370
- "required": true,
371
- "optional": false,
372
- "docs": {
373
- "tags": [],
374
- "text": "Input label"
375
- },
376
- "attribute": "label",
377
- "reflect": false
378
- },
379
- "labelOnTop": {
380
- "type": "boolean",
381
- "mutable": false,
382
- "complexType": {
383
- "original": "boolean",
384
- "resolved": "boolean",
385
- "references": {}
386
- },
387
- "required": false,
388
- "optional": false,
389
- "docs": {
390
- "tags": [],
391
- "text": "Define if label is displayed on top"
392
- },
393
- "attribute": "label-on-top",
394
- "reflect": false
395
- },
396
- "labelHide": {
397
- "type": "boolean",
398
- "mutable": false,
399
- "complexType": {
400
- "original": "boolean",
401
- "resolved": "boolean",
402
- "references": {}
403
- },
404
- "required": false,
405
- "optional": false,
406
- "docs": {
407
- "tags": [],
408
- "text": "Define if label is visible"
409
- },
410
- "attribute": "label-hide",
411
- "reflect": false,
412
- "defaultValue": "false"
413
- },
414
- "placeholder": {
415
- "type": "string",
416
- "mutable": false,
417
- "complexType": {
418
- "original": "string",
419
- "resolved": "string",
420
- "references": {}
421
- },
422
- "required": false,
423
- "optional": false,
424
- "docs": {
425
- "tags": [],
426
- "text": "Input placeholder.\nIt should be a word or short phrase that demonstrates the expected type of data, not a replacement for labels or help text."
427
- },
428
- "attribute": "placeholder",
429
- "reflect": false
430
- },
431
- "required": {
432
- "type": "boolean",
433
- "mutable": false,
434
- "complexType": {
435
- "original": "boolean",
436
- "resolved": "boolean",
437
- "references": {}
438
- },
439
- "required": false,
440
- "optional": false,
441
- "docs": {
442
- "tags": [],
443
- "text": "Define if input is required"
444
- },
445
- "attribute": "required",
446
- "reflect": false,
447
- "defaultValue": "false"
448
- },
449
- "readonly": {
450
- "type": "boolean",
451
- "mutable": false,
452
- "complexType": {
453
- "original": "boolean",
454
- "resolved": "boolean",
455
- "references": {}
456
- },
457
- "required": false,
458
- "optional": false,
459
- "docs": {
460
- "tags": [],
461
- "text": "Define if input is readonly"
462
- },
463
- "attribute": "readonly",
464
- "reflect": false,
465
- "defaultValue": "false"
466
- },
467
- "disabled": {
468
- "type": "boolean",
469
- "mutable": false,
470
- "complexType": {
471
- "original": "boolean",
472
- "resolved": "boolean",
473
- "references": {}
474
- },
475
- "required": false,
476
- "optional": false,
477
- "docs": {
478
- "tags": [],
479
- "text": "Define if input is disabled"
480
- },
481
- "attribute": "disabled",
482
- "reflect": false,
483
- "defaultValue": "false"
484
- },
485
- "mgWidth": {
486
- "type": "any",
487
- "mutable": false,
488
- "complexType": {
489
- "original": "Width",
490
- "resolved": "\"full\" | 16 | 2 | 4",
491
- "references": {
492
- "Width": {
493
- "location": "import",
494
- "path": "../MgInput.conf",
495
- "id": "src/components/molecules/inputs/MgInput.conf.ts::Width"
496
- }
497
- }
498
- },
499
- "required": false,
500
- "optional": false,
501
- "docs": {
502
- "tags": [],
503
- "text": "Define input width"
504
- },
505
- "attribute": "mg-width",
506
- "reflect": false
507
- },
508
- "tooltip": {
509
- "type": "string",
510
- "mutable": false,
511
- "complexType": {
512
- "original": "string",
513
- "resolved": "string",
514
- "references": {}
515
- },
516
- "required": false,
517
- "optional": false,
518
- "docs": {
519
- "tags": [],
520
- "text": "Add a tooltip message next to the input"
521
- },
522
- "attribute": "tooltip",
523
- "reflect": false
524
- },
525
- "helpText": {
526
- "type": "string",
527
- "mutable": false,
528
- "complexType": {
529
- "original": "string",
530
- "resolved": "string",
531
- "references": {}
532
- },
533
- "required": false,
534
- "optional": false,
535
- "docs": {
536
- "tags": [],
537
- "text": "Add a help text under the input, usually expected data format and example"
538
- },
539
- "attribute": "help-text",
540
- "reflect": false
541
- },
542
- "type": {
543
- "type": "string",
544
- "mutable": false,
545
- "complexType": {
546
- "original": "string",
547
- "resolved": "string",
548
- "references": {}
549
- },
550
- "required": false,
551
- "optional": false,
552
- "docs": {
553
- "tags": [],
554
- "text": "Define numeric type"
555
- },
556
- "attribute": "type",
557
- "reflect": false,
558
- "defaultValue": "types[0]"
559
- },
560
- "currency": {
561
- "type": "string",
562
- "mutable": false,
563
- "complexType": {
564
- "original": "string",
565
- "resolved": "string",
566
- "references": {}
567
- },
568
- "required": false,
569
- "optional": false,
570
- "docs": {
571
- "tags": [],
572
- "text": "Define currency"
573
- },
574
- "attribute": "currency",
575
- "reflect": false,
576
- "defaultValue": "'USD'"
577
- },
578
- "max": {
579
- "type": "number",
580
- "mutable": false,
581
- "complexType": {
582
- "original": "number",
583
- "resolved": "number",
584
- "references": {}
585
- },
586
- "required": false,
587
- "optional": false,
588
- "docs": {
589
- "tags": [],
590
- "text": "Maximum value"
591
- },
592
- "attribute": "max",
593
- "reflect": false
594
- },
595
- "min": {
596
- "type": "number",
597
- "mutable": false,
598
- "complexType": {
599
- "original": "number",
600
- "resolved": "number",
601
- "references": {}
602
- },
603
- "required": false,
604
- "optional": false,
605
- "docs": {
606
- "tags": [],
607
- "text": "Minimum value"
608
- },
609
- "attribute": "min",
610
- "reflect": false
611
- },
612
- "integerLength": {
613
- "type": "number",
614
- "mutable": false,
615
- "complexType": {
616
- "original": "number",
617
- "resolved": "number",
618
- "references": {}
619
- },
620
- "required": false,
621
- "optional": false,
622
- "docs": {
623
- "tags": [],
624
- "text": "Override integer length\ninteger is the number before the decimal point"
625
- },
626
- "attribute": "integer-length",
627
- "reflect": false,
628
- "defaultValue": "13"
629
- },
630
- "decimalLength": {
631
- "type": "number",
632
- "mutable": false,
633
- "complexType": {
634
- "original": "number",
635
- "resolved": "number",
636
- "references": {}
637
- },
638
- "required": false,
639
- "optional": false,
640
- "docs": {
641
- "tags": [],
642
- "text": "Override decimal length\ndecimal is the number after the decimal point"
643
- },
644
- "attribute": "decimal-length",
645
- "reflect": false,
646
- "defaultValue": "2"
647
- },
648
- "valid": {
649
- "type": "boolean",
650
- "mutable": true,
651
- "complexType": {
652
- "original": "boolean",
653
- "resolved": "boolean",
654
- "references": {}
655
- },
656
- "required": false,
657
- "optional": false,
658
- "docs": {
659
- "tags": [],
660
- "text": "Define input pattern to validate"
661
- },
662
- "attribute": "valid",
663
- "reflect": false
664
- },
665
- "invalid": {
666
- "type": "boolean",
667
- "mutable": true,
668
- "complexType": {
669
- "original": "boolean",
670
- "resolved": "boolean",
671
- "references": {}
672
- },
673
- "required": false,
674
- "optional": false,
675
- "docs": {
676
- "tags": [],
677
- "text": "Define input pattern error message"
678
- },
679
- "attribute": "invalid",
680
- "reflect": false
681
- }
682
- };
683
- }
684
- static get states() {
685
- return {
686
- "classCollection": {},
687
- "errorMessage": {},
688
- "hasFocus": {}
689
- };
690
- }
691
- static get events() {
692
- return [{
693
- "method": "valueChange",
694
- "name": "value-change",
695
- "bubbles": true,
696
- "cancelable": true,
697
- "composed": true,
698
- "docs": {
699
- "tags": [],
700
- "text": "Emited event when value change"
701
- },
702
- "complexType": {
703
- "original": "number",
704
- "resolved": "number",
705
- "references": {}
706
- }
707
- }, {
708
- "method": "inputValid",
709
- "name": "input-valid",
710
- "bubbles": true,
711
- "cancelable": true,
712
- "composed": true,
713
- "docs": {
714
- "tags": [],
715
- "text": "Emited event when checking validity"
716
- },
717
- "complexType": {
718
- "original": "boolean",
719
- "resolved": "boolean",
720
- "references": {}
721
- }
722
- }];
723
- }
724
- static get methods() {
725
- return {
726
- "displayError": {
727
- "complexType": {
728
- "signature": "() => Promise<void>",
729
- "parameters": [],
730
- "references": {
731
- "Promise": {
732
- "location": "global",
733
- "id": "global::Promise"
308
+ static get properties() {
309
+ return {
310
+ "value": {
311
+ "type": "string",
312
+ "mutable": true,
313
+ "complexType": {
314
+ "original": "string",
315
+ "resolved": "string",
316
+ "references": {}
317
+ },
318
+ "required": false,
319
+ "optional": false,
320
+ "docs": {
321
+ "tags": [],
322
+ "text": "Component value"
323
+ },
324
+ "attribute": "value",
325
+ "reflect": true
326
+ },
327
+ "identifier": {
328
+ "type": "string",
329
+ "mutable": false,
330
+ "complexType": {
331
+ "original": "string",
332
+ "resolved": "string",
333
+ "references": {}
334
+ },
335
+ "required": true,
336
+ "optional": false,
337
+ "docs": {
338
+ "tags": [],
339
+ "text": "Identifier is used for the element ID (id is a reserved prop in Stencil.js)"
340
+ },
341
+ "attribute": "identifier",
342
+ "reflect": false
343
+ },
344
+ "name": {
345
+ "type": "string",
346
+ "mutable": false,
347
+ "complexType": {
348
+ "original": "string",
349
+ "resolved": "string",
350
+ "references": {}
351
+ },
352
+ "required": false,
353
+ "optional": false,
354
+ "docs": {
355
+ "tags": [],
356
+ "text": "Input name\nIf not set the value equals the identifier"
357
+ },
358
+ "attribute": "name",
359
+ "reflect": false,
360
+ "defaultValue": "this.identifier"
361
+ },
362
+ "label": {
363
+ "type": "string",
364
+ "mutable": false,
365
+ "complexType": {
366
+ "original": "string",
367
+ "resolved": "string",
368
+ "references": {}
369
+ },
370
+ "required": true,
371
+ "optional": false,
372
+ "docs": {
373
+ "tags": [],
374
+ "text": "Input label"
375
+ },
376
+ "attribute": "label",
377
+ "reflect": false
378
+ },
379
+ "labelOnTop": {
380
+ "type": "boolean",
381
+ "mutable": false,
382
+ "complexType": {
383
+ "original": "boolean",
384
+ "resolved": "boolean",
385
+ "references": {}
386
+ },
387
+ "required": false,
388
+ "optional": false,
389
+ "docs": {
390
+ "tags": [],
391
+ "text": "Define if label is displayed on top"
392
+ },
393
+ "attribute": "label-on-top",
394
+ "reflect": false
395
+ },
396
+ "labelHide": {
397
+ "type": "boolean",
398
+ "mutable": false,
399
+ "complexType": {
400
+ "original": "boolean",
401
+ "resolved": "boolean",
402
+ "references": {}
403
+ },
404
+ "required": false,
405
+ "optional": false,
406
+ "docs": {
407
+ "tags": [],
408
+ "text": "Define if label is visible"
409
+ },
410
+ "attribute": "label-hide",
411
+ "reflect": false,
412
+ "defaultValue": "false"
413
+ },
414
+ "placeholder": {
415
+ "type": "string",
416
+ "mutable": false,
417
+ "complexType": {
418
+ "original": "string",
419
+ "resolved": "string",
420
+ "references": {}
421
+ },
422
+ "required": false,
423
+ "optional": false,
424
+ "docs": {
425
+ "tags": [],
426
+ "text": "Input placeholder.\nIt should be a word or short phrase that demonstrates the expected type of data, not a replacement for labels or help text."
427
+ },
428
+ "attribute": "placeholder",
429
+ "reflect": false
430
+ },
431
+ "required": {
432
+ "type": "boolean",
433
+ "mutable": false,
434
+ "complexType": {
435
+ "original": "boolean",
436
+ "resolved": "boolean",
437
+ "references": {}
438
+ },
439
+ "required": false,
440
+ "optional": false,
441
+ "docs": {
442
+ "tags": [],
443
+ "text": "Define if input is required"
444
+ },
445
+ "attribute": "required",
446
+ "reflect": false,
447
+ "defaultValue": "false"
448
+ },
449
+ "readonly": {
450
+ "type": "boolean",
451
+ "mutable": false,
452
+ "complexType": {
453
+ "original": "boolean",
454
+ "resolved": "boolean",
455
+ "references": {}
456
+ },
457
+ "required": false,
458
+ "optional": false,
459
+ "docs": {
460
+ "tags": [],
461
+ "text": "Define if input is readonly"
462
+ },
463
+ "attribute": "readonly",
464
+ "reflect": false,
465
+ "defaultValue": "false"
466
+ },
467
+ "disabled": {
468
+ "type": "boolean",
469
+ "mutable": false,
470
+ "complexType": {
471
+ "original": "boolean",
472
+ "resolved": "boolean",
473
+ "references": {}
474
+ },
475
+ "required": false,
476
+ "optional": false,
477
+ "docs": {
478
+ "tags": [],
479
+ "text": "Define if input is disabled"
480
+ },
481
+ "attribute": "disabled",
482
+ "reflect": false,
483
+ "defaultValue": "false"
484
+ },
485
+ "mgWidth": {
486
+ "type": "any",
487
+ "mutable": false,
488
+ "complexType": {
489
+ "original": "Width",
490
+ "resolved": "\"full\" | 16 | 2 | 4",
491
+ "references": {
492
+ "Width": {
493
+ "location": "import",
494
+ "path": "../MgInput.conf",
495
+ "id": "src/components/molecules/inputs/MgInput.conf.ts::Width"
496
+ }
497
+ }
498
+ },
499
+ "required": false,
500
+ "optional": false,
501
+ "docs": {
502
+ "tags": [],
503
+ "text": "Define input width"
504
+ },
505
+ "attribute": "mg-width",
506
+ "reflect": false
507
+ },
508
+ "tooltip": {
509
+ "type": "string",
510
+ "mutable": false,
511
+ "complexType": {
512
+ "original": "string",
513
+ "resolved": "string",
514
+ "references": {}
515
+ },
516
+ "required": false,
517
+ "optional": false,
518
+ "docs": {
519
+ "tags": [],
520
+ "text": "Add a tooltip message next to the input"
521
+ },
522
+ "attribute": "tooltip",
523
+ "reflect": false
524
+ },
525
+ "helpText": {
526
+ "type": "string",
527
+ "mutable": false,
528
+ "complexType": {
529
+ "original": "string",
530
+ "resolved": "string",
531
+ "references": {}
532
+ },
533
+ "required": false,
534
+ "optional": false,
535
+ "docs": {
536
+ "tags": [],
537
+ "text": "Add a help text under the input, usually expected data format and example"
538
+ },
539
+ "attribute": "help-text",
540
+ "reflect": false
541
+ },
542
+ "type": {
543
+ "type": "string",
544
+ "mutable": false,
545
+ "complexType": {
546
+ "original": "string",
547
+ "resolved": "string",
548
+ "references": {}
549
+ },
550
+ "required": false,
551
+ "optional": false,
552
+ "docs": {
553
+ "tags": [],
554
+ "text": "Define numeric type"
555
+ },
556
+ "attribute": "type",
557
+ "reflect": false,
558
+ "defaultValue": "types[0]"
559
+ },
560
+ "currency": {
561
+ "type": "string",
562
+ "mutable": false,
563
+ "complexType": {
564
+ "original": "string",
565
+ "resolved": "string",
566
+ "references": {}
567
+ },
568
+ "required": false,
569
+ "optional": false,
570
+ "docs": {
571
+ "tags": [],
572
+ "text": "Define currency"
573
+ },
574
+ "attribute": "currency",
575
+ "reflect": false,
576
+ "defaultValue": "'USD'"
577
+ },
578
+ "max": {
579
+ "type": "number",
580
+ "mutable": false,
581
+ "complexType": {
582
+ "original": "number",
583
+ "resolved": "number",
584
+ "references": {}
585
+ },
586
+ "required": false,
587
+ "optional": false,
588
+ "docs": {
589
+ "tags": [],
590
+ "text": "Maximum value"
591
+ },
592
+ "attribute": "max",
593
+ "reflect": false
594
+ },
595
+ "min": {
596
+ "type": "number",
597
+ "mutable": false,
598
+ "complexType": {
599
+ "original": "number",
600
+ "resolved": "number",
601
+ "references": {}
602
+ },
603
+ "required": false,
604
+ "optional": false,
605
+ "docs": {
606
+ "tags": [],
607
+ "text": "Minimum value"
608
+ },
609
+ "attribute": "min",
610
+ "reflect": false
611
+ },
612
+ "integerLength": {
613
+ "type": "number",
614
+ "mutable": false,
615
+ "complexType": {
616
+ "original": "number",
617
+ "resolved": "number",
618
+ "references": {}
619
+ },
620
+ "required": false,
621
+ "optional": false,
622
+ "docs": {
623
+ "tags": [],
624
+ "text": "Override integer length\ninteger is the number before the decimal point"
625
+ },
626
+ "attribute": "integer-length",
627
+ "reflect": false,
628
+ "defaultValue": "13"
629
+ },
630
+ "decimalLength": {
631
+ "type": "number",
632
+ "mutable": false,
633
+ "complexType": {
634
+ "original": "number",
635
+ "resolved": "number",
636
+ "references": {}
637
+ },
638
+ "required": false,
639
+ "optional": false,
640
+ "docs": {
641
+ "tags": [],
642
+ "text": "Override decimal length\ndecimal is the number after the decimal point"
643
+ },
644
+ "attribute": "decimal-length",
645
+ "reflect": false,
646
+ "defaultValue": "2"
647
+ },
648
+ "valid": {
649
+ "type": "boolean",
650
+ "mutable": true,
651
+ "complexType": {
652
+ "original": "boolean",
653
+ "resolved": "boolean",
654
+ "references": {}
655
+ },
656
+ "required": false,
657
+ "optional": false,
658
+ "docs": {
659
+ "tags": [],
660
+ "text": "Define input pattern to validate"
661
+ },
662
+ "attribute": "valid",
663
+ "reflect": false
664
+ },
665
+ "invalid": {
666
+ "type": "boolean",
667
+ "mutable": true,
668
+ "complexType": {
669
+ "original": "boolean",
670
+ "resolved": "boolean",
671
+ "references": {}
672
+ },
673
+ "required": false,
674
+ "optional": false,
675
+ "docs": {
676
+ "tags": [],
677
+ "text": "Define input pattern error message"
678
+ },
679
+ "attribute": "invalid",
680
+ "reflect": false
734
681
  }
735
- },
736
- "return": "Promise<void>"
737
- },
738
- "docs": {
739
- "text": "Display input error if it exists.",
740
- "tags": []
741
- }
742
- },
743
- "setError": {
744
- "complexType": {
745
- "signature": "(valid: MgInputNumeric['valid'], errorMessage: string) => Promise<void>",
746
- "parameters": [{
747
- "tags": [{
748
- "name": "param",
749
- "text": "valid - value indicating the validity"
750
- }],
751
- "text": "- value indicating the validity"
682
+ };
683
+ }
684
+ static get states() {
685
+ return {
686
+ "classCollection": {},
687
+ "errorMessage": {},
688
+ "hasFocus": {}
689
+ };
690
+ }
691
+ static get events() {
692
+ return [{
693
+ "method": "valueChange",
694
+ "name": "value-change",
695
+ "bubbles": true,
696
+ "cancelable": true,
697
+ "composed": true,
698
+ "docs": {
699
+ "tags": [],
700
+ "text": "Emited event when value change"
701
+ },
702
+ "complexType": {
703
+ "original": "number",
704
+ "resolved": "number",
705
+ "references": {}
706
+ }
752
707
  }, {
753
- "tags": [{
754
- "name": "param",
755
- "text": "errorMessage - the error message to display"
756
- }],
757
- "text": "- the error message to display"
758
- }],
759
- "references": {
760
- "Promise": {
761
- "location": "global",
762
- "id": "global::Promise"
708
+ "method": "inputValid",
709
+ "name": "input-valid",
710
+ "bubbles": true,
711
+ "cancelable": true,
712
+ "composed": true,
713
+ "docs": {
714
+ "tags": [],
715
+ "text": "Emited event when checking validity"
716
+ },
717
+ "complexType": {
718
+ "original": "HTMLMgInputNumericElement['valid']",
719
+ "resolved": "boolean",
720
+ "references": {
721
+ "HTMLMgInputNumericElement": {
722
+ "location": "global",
723
+ "id": "global::HTMLMgInputNumericElement"
724
+ }
725
+ }
726
+ }
727
+ }];
728
+ }
729
+ static get methods() {
730
+ return {
731
+ "displayError": {
732
+ "complexType": {
733
+ "signature": "() => Promise<void>",
734
+ "parameters": [],
735
+ "references": {
736
+ "Promise": {
737
+ "location": "global",
738
+ "id": "global::Promise"
739
+ }
740
+ },
741
+ "return": "Promise<void>"
742
+ },
743
+ "docs": {
744
+ "text": "Display input error if it exists.",
745
+ "tags": []
746
+ }
763
747
  },
764
- "MgInputNumeric": {
765
- "location": "global",
766
- "id": "global::MgInputNumeric"
748
+ "setError": {
749
+ "complexType": {
750
+ "signature": "(valid: MgInputNumeric['valid'], errorMessage: string) => Promise<void>",
751
+ "parameters": [{
752
+ "tags": [{
753
+ "name": "param",
754
+ "text": "valid - value indicating the validity"
755
+ }],
756
+ "text": "- value indicating the validity"
757
+ }, {
758
+ "tags": [{
759
+ "name": "param",
760
+ "text": "errorMessage - the error message to display"
761
+ }],
762
+ "text": "- the error message to display"
763
+ }],
764
+ "references": {
765
+ "Promise": {
766
+ "location": "global",
767
+ "id": "global::Promise"
768
+ },
769
+ "MgInputNumeric": {
770
+ "location": "global",
771
+ "id": "global::MgInputNumeric"
772
+ }
773
+ },
774
+ "return": "Promise<void>"
775
+ },
776
+ "docs": {
777
+ "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`.",
778
+ "tags": [{
779
+ "name": "param",
780
+ "text": "valid - value indicating the validity"
781
+ }, {
782
+ "name": "param",
783
+ "text": "errorMessage - the error message to display"
784
+ }]
785
+ }
767
786
  }
768
- },
769
- "return": "Promise<void>"
770
- },
771
- "docs": {
772
- "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`.",
773
- "tags": [{
774
- "name": "param",
775
- "text": "valid - value indicating the validity"
787
+ };
788
+ }
789
+ static get elementRef() { return "element"; }
790
+ static get watchers() {
791
+ return [{
792
+ "propName": "value",
793
+ "methodName": "validateValue"
776
794
  }, {
777
- "name": "param",
778
- "text": "errorMessage - the error message to display"
779
- }]
780
- }
781
- }
782
- };
783
- }
784
- static get elementRef() { return "element"; }
785
- static get watchers() {
786
- return [{
787
- "propName": "value",
788
- "methodName": "validateValue"
789
- }, {
790
- "propName": "required",
791
- "methodName": "handleValidityChange"
792
- }, {
793
- "propName": "readonly",
794
- "methodName": "handleValidityChange"
795
- }, {
796
- "propName": "disabled",
797
- "methodName": "handleValidityChange"
798
- }, {
799
- "propName": "type",
800
- "methodName": "validateType"
801
- }, {
802
- "propName": "integerLength",
803
- "methodName": "validateIntegerLength"
804
- }, {
805
- "propName": "decimalLength",
806
- "methodName": "validateDecimalLength"
807
- }];
808
- }
795
+ "propName": "required",
796
+ "methodName": "handleValidityChange"
797
+ }, {
798
+ "propName": "readonly",
799
+ "methodName": "handleValidityChange"
800
+ }, {
801
+ "propName": "disabled",
802
+ "methodName": "handleValidityChange"
803
+ }, {
804
+ "propName": "type",
805
+ "methodName": "validateType"
806
+ }, {
807
+ "propName": "integerLength",
808
+ "methodName": "validateIntegerLength"
809
+ }, {
810
+ "propName": "decimalLength",
811
+ "methodName": "validateDecimalLength"
812
+ }];
813
+ }
809
814
  }
810
815
  //# sourceMappingURL=mg-input-numeric.js.map