@mgdis/mg-components 6.1.0 → 6.3.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 (185) hide show
  1. package/dist/cjs/{index-e4a8bf81.js → index-a5b2cd1b.js} +17 -7
  2. package/dist/cjs/index-a5b2cd1b.js.map +1 -0
  3. package/dist/{esm/index-d8f69946.js → cjs/index-cc11af95.js} +6 -116
  4. package/dist/cjs/index-cc11af95.js.map +1 -0
  5. package/dist/cjs/index.es-ac7c22e3.js +152 -0
  6. package/dist/cjs/index.es-ac7c22e3.js.map +1 -0
  7. package/dist/cjs/loader.cjs.js +2 -2
  8. package/dist/cjs/mg-action-more_36.cjs.entry.js +380 -231
  9. package/dist/cjs/mg-action-more_36.cjs.entry.js.map +1 -1
  10. package/dist/cjs/mg-alert.cjs.entry.js +10 -7
  11. package/dist/cjs/mg-alert.cjs.entry.js.map +1 -1
  12. package/dist/cjs/mg-components.cjs.js +3 -3
  13. package/dist/cjs/mg-components.cjs.js.map +1 -1
  14. package/dist/cjs/mg-loader.cjs.entry.js +5 -4
  15. package/dist/cjs/mg-loader.cjs.entry.js.map +1 -1
  16. package/dist/cjs/mg-progress.cjs.entry.js +82 -0
  17. package/dist/cjs/mg-progress.cjs.entry.js.map +1 -0
  18. package/dist/collection/collection-manifest.json +2 -1
  19. package/dist/collection/components/atoms/mg-button/mg-button.conf.js +4 -0
  20. package/dist/collection/components/atoms/mg-button/mg-button.conf.js.map +1 -1
  21. package/dist/collection/components/atoms/mg-button/mg-button.js +70 -3
  22. package/dist/collection/components/atoms/mg-button/mg-button.js.map +1 -1
  23. package/dist/collection/components/molecules/inputs/mg-input/mg-input.conf.js.map +1 -1
  24. package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js +1 -1
  25. package/dist/collection/components/molecules/inputs/mg-input-checkbox/MgInputCheckboxList.js.map +1 -1
  26. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.js.map +1 -1
  27. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js +33 -26
  28. package/dist/collection/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.js.map +1 -1
  29. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js +30 -1
  30. package/dist/collection/components/molecules/inputs/mg-input-date/mg-input-date.js.map +1 -1
  31. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js +1 -1
  32. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.js.map +1 -1
  33. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js +85 -4
  34. package/dist/collection/components/molecules/inputs/mg-input-numeric/mg-input-numeric.js.map +1 -1
  35. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js +29 -1
  36. package/dist/collection/components/molecules/inputs/mg-input-password/mg-input-password.js.map +1 -1
  37. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js +30 -3
  38. package/dist/collection/components/molecules/inputs/mg-input-radio/mg-input-radio.js.map +1 -1
  39. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js +29 -3
  40. package/dist/collection/components/molecules/inputs/mg-input-select/mg-input-select.js.map +1 -1
  41. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js +30 -3
  42. package/dist/collection/components/molecules/inputs/mg-input-text/mg-input-text.js.map +1 -1
  43. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js +29 -1
  44. package/dist/collection/components/molecules/inputs/mg-input-textarea/mg-input-textarea.js.map +1 -1
  45. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js +30 -3
  46. package/dist/collection/components/molecules/inputs/mg-input-toggle/mg-input-toggle.js.map +1 -1
  47. package/dist/collection/components/molecules/internals/mg-item-more/mg-item-more.js +3 -4
  48. package/dist/collection/components/molecules/internals/mg-item-more/mg-item-more.js.map +1 -1
  49. package/dist/collection/components/molecules/mg-alert/mg-alert.js +17 -1
  50. package/dist/collection/components/molecules/mg-alert/mg-alert.js.map +1 -1
  51. package/dist/collection/components/molecules/mg-form/mg-form.conf.js.map +1 -1
  52. package/dist/collection/components/molecules/mg-form/mg-form.js +32 -2
  53. package/dist/collection/components/molecules/mg-form/mg-form.js.map +1 -1
  54. package/dist/collection/components/molecules/mg-modal/mg-modal.js +19 -4
  55. package/dist/collection/components/molecules/mg-modal/mg-modal.js.map +1 -1
  56. package/dist/collection/components/molecules/mg-popover/mg-popover.js +18 -1
  57. package/dist/collection/components/molecules/mg-popover/mg-popover.js.map +1 -1
  58. package/dist/collection/components/molecules/mg-progress/mg-progress.conf.js +5 -0
  59. package/dist/collection/components/molecules/mg-progress/mg-progress.conf.js.map +1 -0
  60. package/dist/collection/components/molecules/mg-progress/mg-progress.js +187 -0
  61. package/dist/collection/components/molecules/mg-progress/mg-progress.js.map +1 -0
  62. package/dist/collection/components/molecules/mg-skip-links/mg-skip-links.js +1 -1
  63. package/dist/collection/components/molecules/mg-tabs/mg-tabs.js +1 -1
  64. package/dist/collection/types/index.js.map +1 -1
  65. package/dist/components/index.es.js +26 -13
  66. package/dist/components/index.es.js.map +1 -1
  67. package/dist/components/index2.js +2 -2
  68. package/dist/components/mg-action-more.js +2 -2
  69. package/dist/components/mg-alert.js +3 -1
  70. package/dist/components/mg-alert.js.map +1 -1
  71. package/dist/components/mg-button2.js +51 -5
  72. package/dist/components/mg-button2.js.map +1 -1
  73. package/dist/components/mg-form.js +19 -5
  74. package/dist/components/mg-form.js.map +1 -1
  75. package/dist/components/mg-input-checkbox-paginated2.js +1 -1
  76. package/dist/components/mg-input-checkbox-paginated2.js.map +1 -1
  77. package/dist/components/mg-input-checkbox.js +20 -29
  78. package/dist/components/mg-input-checkbox.js.map +1 -1
  79. package/dist/components/mg-input-date.js +18 -5
  80. package/dist/components/mg-input-date.js.map +1 -1
  81. package/dist/components/mg-input-numeric.js +30 -8
  82. package/dist/components/mg-input-numeric.js.map +1 -1
  83. package/dist/components/mg-input-password.js +15 -3
  84. package/dist/components/mg-input-password.js.map +1 -1
  85. package/dist/components/mg-input-radio.js +15 -2
  86. package/dist/components/mg-input-radio.js.map +1 -1
  87. package/dist/components/mg-input-select2.js +15 -3
  88. package/dist/components/mg-input-select2.js.map +1 -1
  89. package/dist/components/mg-input-text2.js +16 -4
  90. package/dist/components/mg-input-text2.js.map +1 -1
  91. package/dist/components/mg-input-textarea.js +15 -3
  92. package/dist/components/mg-input-textarea.js.map +1 -1
  93. package/dist/components/mg-input-toggle.js +15 -2
  94. package/dist/components/mg-input-toggle.js.map +1 -1
  95. package/dist/components/mg-input2.js.map +1 -1
  96. package/dist/components/mg-item-more2.js +5 -6
  97. package/dist/components/mg-item-more2.js.map +1 -1
  98. package/dist/components/mg-menu-item2.js +3 -3
  99. package/dist/components/mg-modal.js +7 -6
  100. package/dist/components/mg-modal.js.map +1 -1
  101. package/dist/components/mg-pagination2.js +2 -2
  102. package/dist/components/mg-panel.js +2 -2
  103. package/dist/components/mg-popover2.js +6 -3
  104. package/dist/components/mg-popover2.js.map +1 -1
  105. package/dist/components/mg-progress.d.ts +11 -0
  106. package/dist/components/mg-progress.js +109 -0
  107. package/dist/components/mg-progress.js.map +1 -0
  108. package/dist/components/mg-skip-links.js +1 -1
  109. package/dist/components/mg-tabs.js +4 -4
  110. package/dist/components/mg-tooltip2.js +3 -3
  111. package/dist/esm/{index-e26aede5.js → index-eb0e1053.js} +17 -7
  112. package/dist/esm/index-eb0e1053.js.map +1 -0
  113. package/dist/{cjs/index-0fe2670c.js → esm/index-f3d3fb70.js} +4 -135
  114. package/dist/esm/index-f3d3fb70.js.map +1 -0
  115. package/dist/esm/index.es-940821a9.js +130 -0
  116. package/dist/esm/index.es-940821a9.js.map +1 -0
  117. package/dist/esm/loader.js +3 -3
  118. package/dist/esm/mg-action-more_36.entry.js +232 -83
  119. package/dist/esm/mg-action-more_36.entry.js.map +1 -1
  120. package/dist/esm/mg-alert.entry.js +6 -3
  121. package/dist/esm/mg-alert.entry.js.map +1 -1
  122. package/dist/esm/mg-components.js +4 -4
  123. package/dist/esm/mg-components.js.map +1 -1
  124. package/dist/esm/mg-loader.entry.js +3 -2
  125. package/dist/esm/mg-loader.entry.js.map +1 -1
  126. package/dist/esm/mg-progress.entry.js +78 -0
  127. package/dist/esm/mg-progress.entry.js.map +1 -0
  128. package/dist/mg-components/mg-components.css +1 -1
  129. package/dist/mg-components/mg-components.esm.js +1 -1
  130. package/dist/mg-components/mg-components.esm.js.map +1 -1
  131. package/dist/mg-components/p-15b6849a.js +3 -0
  132. package/dist/mg-components/p-15b6849a.js.map +1 -0
  133. package/dist/mg-components/p-3aecf564.entry.js +2 -0
  134. package/dist/mg-components/p-3aecf564.entry.js.map +1 -0
  135. package/dist/mg-components/p-6f3d70b2.entry.js +2 -0
  136. package/dist/mg-components/p-6f3d70b2.entry.js.map +1 -0
  137. package/dist/mg-components/p-a17ea0af.entry.js +2 -0
  138. package/dist/mg-components/p-a17ea0af.entry.js.map +1 -0
  139. package/dist/mg-components/p-a49e2b74.js +2 -0
  140. package/dist/mg-components/p-a49e2b74.js.map +1 -0
  141. package/dist/mg-components/p-d0086664.entry.js +2 -0
  142. package/dist/mg-components/{p-9beb09e5.entry.js.map → p-d0086664.entry.js.map} +1 -1
  143. package/dist/mg-components/p-ee51ec5e.js +2 -0
  144. package/dist/mg-components/p-ee51ec5e.js.map +1 -0
  145. package/dist/types/components/atoms/mg-button/mg-button.conf.d.ts +9 -1
  146. package/dist/types/components/atoms/mg-button/mg-button.d.ts +11 -1
  147. package/dist/types/components/molecules/inputs/mg-input/mg-input.conf.d.ts +13 -11
  148. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.conf.d.ts +0 -2
  149. package/dist/types/components/molecules/inputs/mg-input-checkbox/mg-input-checkbox.d.ts +4 -9
  150. package/dist/types/components/molecules/inputs/mg-input-date/mg-input-date.d.ts +4 -0
  151. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.conf.d.ts +1 -1
  152. package/dist/types/components/molecules/inputs/mg-input-numeric/mg-input-numeric.d.ts +12 -0
  153. package/dist/types/components/molecules/inputs/mg-input-password/mg-input-password.d.ts +4 -0
  154. package/dist/types/components/molecules/inputs/mg-input-radio/mg-input-radio.d.ts +4 -0
  155. package/dist/types/components/molecules/inputs/mg-input-select/mg-input-select.d.ts +4 -0
  156. package/dist/types/components/molecules/inputs/mg-input-text/mg-input-text.d.ts +4 -0
  157. package/dist/types/components/molecules/inputs/mg-input-textarea/mg-input-textarea.d.ts +4 -0
  158. package/dist/types/components/molecules/inputs/mg-input-toggle/mg-input-toggle.d.ts +4 -0
  159. package/dist/types/components/molecules/mg-alert/mg-alert.d.ts +4 -0
  160. package/dist/types/components/molecules/mg-form/mg-form.conf.d.ts +2 -1
  161. package/dist/types/components/molecules/mg-form/mg-form.d.ts +4 -0
  162. package/dist/types/components/molecules/mg-modal/mg-modal.d.ts +4 -0
  163. package/dist/types/components/molecules/mg-popover/mg-popover.d.ts +4 -0
  164. package/dist/types/components/molecules/mg-progress/mg-progress.conf.d.ts +9 -0
  165. package/dist/types/components/molecules/mg-progress/mg-progress.d.ts +47 -0
  166. package/dist/types/components.d.ts +144 -10
  167. package/dist/types/stencil-public-runtime.d.ts +2 -0
  168. package/dist/types/types/index.d.ts +4 -0
  169. package/ide/intellij/web-types.json +219 -19
  170. package/ide/vscode/css-custom-data.json +16 -0
  171. package/ide/vscode/html-custom-data.json +176 -15
  172. package/package.json +27 -37
  173. package/dist/cjs/index-0fe2670c.js.map +0 -1
  174. package/dist/cjs/index-e4a8bf81.js.map +0 -1
  175. package/dist/esm/index-d8f69946.js.map +0 -1
  176. package/dist/esm/index-e26aede5.js.map +0 -1
  177. package/dist/mg-components/p-1fbb6ee7.js +0 -3
  178. package/dist/mg-components/p-1fbb6ee7.js.map +0 -1
  179. package/dist/mg-components/p-5c77f5dd.entry.js +0 -2
  180. package/dist/mg-components/p-5c77f5dd.entry.js.map +0 -1
  181. package/dist/mg-components/p-9beb09e5.entry.js +0 -2
  182. package/dist/mg-components/p-c9934e81.js +0 -2
  183. package/dist/mg-components/p-c9934e81.js.map +0 -1
  184. package/dist/mg-components/p-d7dde2ac.entry.js +0 -2
  185. package/dist/mg-components/p-d7dde2ac.entry.js.map +0 -1
@@ -0,0 +1,2 @@
1
+ import{g as e}from"./p-ee51ec5e.js";const t={required:"This field is required.",date:{badInput:"The date format must be {pattern}",min:"The date cannot be earlier than {min}",max:"The date cannot be later than {max}",minMax:"The date must be between {min} and {max}"},numeric:{min:"The value cannot be less than {min}",max:"The value cannot be greater than {max}",minMax:"The value must be between {min} and {max}"}};const a="{counter} characters left.";const s={select:{placeholder:"Select a value"},checkbox:{selectedValues:"{nb} selected values",selectedValue:"{nb} selected value",editButton:"Edit",selectButton:"Select values",showButton:"Show",label:"Enter a value",result:"result",results:"results",searchResults:"Search result(s) list.",noResult:"No result.",sections:{selected:{title:"Selected",titlePlurial:"Selected",action:"Unselect all",tooltip:"Unselect all current search results"},notSelected:{title:"Not selected",titlePlurial:"Not selected",action:"Select all",tooltip:"Select all current search results"}}},date:{helpText:"Expected format: {pattern} (ex: {date})",pattern:{dd:"dd",mm:"mm",yyyy:"yyyy"}},password:{display:"Display password value",hide:"Hide password value"}};const n={required:'Fields with a <strong class="mg-u-is-asterisk">*</strong> are required',requiredSingle:'Field with a <strong class="mg-u-is-asterisk">*</strong> is required',allRequired:"All fields are required",allRequiredSingle:"The field is required"};const l={closeButton:"Close message"};const r={closeButton:"Close modal"};const o={label:"Pagination",page:"page",pages:"pages",nextPage:"Next page",previousPage:"Previous page",selectPage:"Select the page to display."};const i={editLabel:"Edit section title."};const c={navLabel:"Quick access"};const u={confirm:"Confirm",cancel:"Cancel",close:"Close",next:"next",previous:"previous"};const d={badgeLabel:"Include notification(s)",openNewTab:"Open link in a new tab"};const m={menuLabel:"Additional menu"};const p={label:"Actions"};const g={inProgess:"Loading in progress…"};const h={errors:t,nbCharLeft:a,input:s,form:n,alert:l,modal:r,pagination:o,panel:i,skipLinks:c,general:u,menuItem:d,itemMore:m,actionMore:p,loader:g};const b={required:"Ce champ est obligatoire.",date:{badInput:"Le format de la date doit être du type {pattern}",min:"La date ne peut pas être antérieure au {min}",max:"La date ne peut pas être postérieure au {max}",minMax:"La date doit être comprise entre le {min} et le {max}"},numeric:{min:"La valeur ne peut pas être inférieure à {min}",max:"La valeur ne peut pas être supérieure à {max}",minMax:"La valeur doit être comprise entre {min} et {max}"}};const v="{counter} caractères disponibles.";const x={select:{placeholder:"Sélectionnez une valeur"},checkbox:{selectedValues:"{nb} valeurs selectionnées",selectedValue:"{nb} valeur selectionnée",editButton:"Modifier",selectButton:"Sélectionner des valeurs",showButton:"Voir",label:"Saisissez une valeur",result:"résultat",results:"résultats",searchResults:"List de résultat(s) de la recherche.",noResult:"Aucun résultat.",sections:{selected:{title:"Sélectionné",titlePlurial:"Sélectionnés",action:"Tout désélectionner",tooltip:"Désélectionne tous les résultats de la recherche en cours"},notSelected:{title:"Non sélectionné",titlePlurial:"Non sélectionnés",action:"Tout sélectionner",tooltip:"Sélectionne tous les résultats de la recherche en cours"}}},date:{helpText:"Format attendu&nbsp;: {pattern} (ex&nbsp;: {date})",pattern:{dd:"jj",mm:"mm",yyyy:"aaaa"}},password:{display:"Afficher le mot de passe",hide:"Masquer le mot de passe"}};const f={required:'Les champs marqués d\'un <strong class="mg-u-is-asterisk">*</strong> sont obligatoires',requiredSingle:'Le champ marqué d\'un <strong class="mg-u-is-asterisk">*</strong> est obligatoire',allRequired:"Tous les champs sont obligatoires",allRequiredSingle:"Le champ est obligatoire"};const L={closeButton:"Fermer le message"};const S={closeButton:"Fermer la modale"};const q={label:"Pagination",page:"page",pages:"pages",nextPage:"Page suivante",previousPage:"Page précédente",selectPage:"Sélectionner la page à afficher."};const y={editLabel:"Modifier le titre de la section."};const P={navLabel:"Accès rapide"};const T={confirm:"Valider",cancel:"Annuler",close:"Fermer",next:"suivant",previous:"précédent"};const w={badgeLabel:"Notification(s) incluse(s)",openNewTab:"Ouvrir le lien dans un nouvel onglet"};const k={menuLabel:"Menu complémentaire"};const M={label:"Actions"};const B={inProgess:"Chargement en cours…"};const C={errors:b,nbCharLeft:v,input:x,form:f,alert:L,modal:S,pagination:q,panel:y,skipLinks:P,general:T,menuItem:w,itemMore:k,actionMore:M,loader:B};const N="en";const A={en:h,fr:C};const R=e(A,N);export{R as i};
2
+ //# sourceMappingURL=p-a49e2b74.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["defaultLocale","messages","en","fr","initLocales","defineLocales"],"sources":["src/locales/index.ts"],"sourcesContent":["import en from './en/messages.json';\nimport fr from './fr/messages.json';\nimport { defineLocales } from '@mgdis/stencil-helpers';\n\nconst defaultLocale = 'en';\nconst messages = { en, fr };\n\n/**\n * Get Intl object\n * @param element - element we need to get the language\n * @returns messages object\n */\nexport const initLocales = defineLocales(messages, defaultLocale);\n"],"mappings":"+iJAIA,MAAMA,EAAgB,KACtB,MAAMC,EAAW,CAAEC,KAAIC,M,MAOVC,EAAcC,EAAcJ,EAAUD,U","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ import{r as e,h as t,g as i}from"./p-15b6849a.js";import{i as a}from"./p-a49e2b74.js";import{m as r,Y as s}from"./p-ee51ec5e.js";const n=".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media (prefers-reduced-motion){*{animation:none !important;transition:none !important}}:host{display:block}.mg-c-loader{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--mg-b-size-4);text-align:center}";const o=n;const m=class{constructor(t){e(this,t);this.message=undefined;this.messageHide=undefined}watchMessage(e){if(e&&!r(e))throw new Error(`<mg-loader> prop "message" must be a valid string. Passed value: ${s(e)}.`)}componentWillLoad(){this.messages=a(this.element).messages;this.watchMessage(this.message)}render(){return t("div",{key:"6502a0367c385dbc8c5235d3580412a14176afe3",class:"mg-c-loader","aria-live":"polite"},t("mg-icon",{key:"83e0e3ea7136c940d712a796ad975ba1596f8215",icon:"loader",spin:true}),t("span",{key:"cd9b452f15bce70528f4241f80d2d45bcc44b9ff",class:{"mg-u-visually-hidden":this.messageHide}},this.message||this.messages.loader.inProgess))}get element(){return i(this)}static get watchers(){return{message:["watchMessage"]}}};m.style=o;export{m as mg_loader};
2
+ //# sourceMappingURL=p-d0086664.entry.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["mgLoaderCss","MgLoaderStyle0","MgLoader","watchMessage","newValue","isValidString","Error","toString","componentWillLoad","this","messages","initLocales","element","message","render","h","key","class","icon","spin","messageHide","loader","inProgess"],"sources":["../styles/dist/components/mg-loader.css?tag=mg-loader&encapsulation=shadow","src/components/molecules/mg-loader/mg-loader.tsx"],"sourcesContent":[".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion){*{animation:none !important;transition:none !important}}:host{display:block}.mg-c-loader{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--mg-b-size-4);text-align:center}/*# sourceMappingURL=mg-loader.css.map */\n","import { Component, Element, h, Prop, Watch } from '@stencil/core';\nimport { initLocales } from '../../../locales';\nimport { isValidString, toString } from '@mgdis/stencil-helpers';\n\n@Component({\n tag: 'mg-loader',\n styleUrl: '../../../../node_modules/@mgdis/styles/dist/components/mg-loader.css',\n shadow: true,\n})\nexport class MgLoader {\n /************\n * Internal *\n ************/\n\n // Locales\n private messages;\n\n /**************\n * Decorators *\n **************/\n\n /**\n * Get component DOM element\n */\n @Element() element: HTMLMgLoaderElement;\n\n /**\n * Override loader message\n */\n @Prop() message?: string;\n @Watch('message')\n watchMessage(newValue: MgLoader['message']): void {\n if (newValue && !isValidString(newValue)) throw new Error(`<mg-loader> prop \"message\" must be a valid string. Passed value: ${toString(newValue)}.`);\n }\n\n /**\n * Hide message\n */\n @Prop() messageHide?: boolean;\n\n /*************\n * Lifecycle *\n *************/\n\n /**\n * Check if component props are well configured on init\n */\n componentWillLoad(): void {\n // Get locales\n this.messages = initLocales(this.element).messages;\n\n // validate props\n this.watchMessage(this.message);\n }\n\n /**\n * Render\n * @returns HTML Element\n */\n render(): HTMLElement {\n return (\n <div class=\"mg-c-loader\" aria-live=\"polite\">\n <mg-icon icon=\"loader\" spin></mg-icon>\n <span class={{ 'mg-u-visually-hidden': this.messageHide }}>{this.message || this.messages.loader.inProgess}</span>\n </div>\n );\n }\n}\n"],"mappings":"oGAAA,MAAMA,EAAc,ukBACpB,MAAAC,EAAeD,E,MCQFE,EAAQ,M,2EAsBnB,YAAAC,CAAaC,GACX,GAAIA,IAAaC,EAAcD,GAAW,MAAM,IAAIE,MAAM,oEAAoEC,EAASH,M,CAezI,iBAAAI,GAEEC,KAAKC,SAAWC,EAAYF,KAAKG,SAASF,SAG1CD,KAAKN,aAAaM,KAAKI,Q,CAOzB,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAM,cAAa,YAAW,UACjCF,EAAA,WAAAC,IAAA,2CAASE,KAAK,SAASC,KAAI,OAC3BJ,EAAA,QAAAC,IAAA,2CAAMC,MAAO,CAAE,uBAAwBR,KAAKW,cAAgBX,KAAKI,SAAWJ,KAAKC,SAASW,OAAOC,W","ignoreList":[]}
1
+ {"version":3,"names":["mgLoaderCss","MgLoaderStyle0","MgLoader","watchMessage","newValue","isValidString","Error","toString","componentWillLoad","this","messages","initLocales","element","message","render","h","key","class","icon","spin","messageHide","loader","inProgess"],"sources":["../styles/dist/components/mg-loader.css?tag=mg-loader&encapsulation=shadow","src/components/molecules/mg-loader/mg-loader.tsx"],"sourcesContent":[".mg-u-visually-hidden{position:absolute !important;overflow:hidden !important;width:.1rem !important;height:.1rem !important;padding:0 !important;border:0 !important;margin:-0.1rem !important;clip:rect(0.1rem, 0.1rem, 0.1rem, 0.1rem) !important;clip-path:inset(50%) !important;white-space:nowrap !important}*:focus:not(:focus-visible){outline:none}@media(prefers-reduced-motion){*{animation:none !important;transition:none !important}}:host{display:block}.mg-c-loader{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:var(--mg-b-size-4);text-align:center}/*# sourceMappingURL=mg-loader.css.map */\n","import { Component, Element, h, Prop, Watch } from '@stencil/core';\nimport { initLocales } from '../../../locales';\nimport { isValidString, toString } from '@mgdis/stencil-helpers';\n\n@Component({\n tag: 'mg-loader',\n styleUrl: '../../../../node_modules/@mgdis/styles/dist/components/mg-loader.css',\n shadow: true,\n})\nexport class MgLoader {\n /************\n * Internal *\n ************/\n\n // Locales\n private messages;\n\n /**************\n * Decorators *\n **************/\n\n /**\n * Get component DOM element\n */\n @Element() element: HTMLMgLoaderElement;\n\n /**\n * Override loader message\n */\n @Prop() message?: string;\n @Watch('message')\n watchMessage(newValue: MgLoader['message']): void {\n if (newValue && !isValidString(newValue)) throw new Error(`<mg-loader> prop \"message\" must be a valid string. Passed value: ${toString(newValue)}.`);\n }\n\n /**\n * Hide message\n */\n @Prop() messageHide?: boolean;\n\n /*************\n * Lifecycle *\n *************/\n\n /**\n * Check if component props are well configured on init\n */\n componentWillLoad(): void {\n // Get locales\n this.messages = initLocales(this.element).messages;\n\n // validate props\n this.watchMessage(this.message);\n }\n\n /**\n * Render\n * @returns HTML Element\n */\n render(): HTMLElement {\n return (\n <div class=\"mg-c-loader\" aria-live=\"polite\">\n <mg-icon icon=\"loader\" spin></mg-icon>\n <span class={{ 'mg-u-visually-hidden': this.messageHide }}>{this.message || this.messages.loader.inProgess}</span>\n </div>\n );\n }\n}\n"],"mappings":"iIAAA,MAAMA,EAAc,ukBACpB,MAAAC,EAAeD,E,MCQFE,EAAQ,M,2EAsBnB,YAAAC,CAAaC,GACX,GAAIA,IAAaC,EAAcD,GAAW,MAAM,IAAIE,MAAM,oEAAoEC,EAASH,M,CAezI,iBAAAI,GAEEC,KAAKC,SAAWC,EAAYF,KAAKG,SAASF,SAG1CD,KAAKN,aAAaM,KAAKI,Q,CAOzB,MAAAC,GACE,OACEC,EAAA,OAAAC,IAAA,2CAAKC,MAAM,cAAa,YAAW,UACjCF,EAAA,WAAAC,IAAA,2CAASE,KAAK,SAASC,KAAI,OAC3BJ,EAAA,QAAAC,IAAA,2CAAMC,MAAO,CAAE,uBAAwBR,KAAKW,cAAgBX,KAAKI,SAAWJ,KAAKC,SAASW,OAAOC,W","ignoreList":[]}
@@ -0,0 +1,2 @@
1
+ var t=Object.defineProperty;var e=(e,n,r)=>n in e?t(e,n,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[n]=r;var n=(t,n,r)=>e(t,typeof n!="symbol"?n+"":n,r);const r=(t="",e=10)=>{const n=new Uint8Array(e);crypto.getRandomValues(n);const r=Array.from(n).map((t=>t.toString(16).padStart(2,"0"))).join("").slice(0,e);return t!==""?`${t}-${r}`:r},s=t=>f(t)&&/^([a-z][a-z0-9]*)(-[a-z0-9]+)*$/.exec(t)!==null;class a{constructor(t=[]){n(this,"classes");n(this,"add",(t=>{this.has(t)||this.classes.push(t)}));n(this,"delete",(t=>{const e=this.classes.indexOf(t);e>-1&&this.classes.splice(e,1)}));n(this,"has",(t=>this.classes.includes(t)));n(this,"join",(()=>this.classes.join(" ")));this.classes=t}}const i=t=>Array.isArray(t)&&t.every((t=>typeof t=="string")),o=(t,e)=>e.includes(t==null?void 0:t.tagName.toLowerCase()),u='a[href], button, input, textarea, select, details, [tabindex]:not([tabindex="-1"]), [identifier], mg-button',c=t=>{const e=l(t),n=m(t);return[t,...e,...n]},l=(t,e=[])=>{if(t.self!==t.top)try{const n=t.parent;return n?(e.push(n),l(n,e)):e}catch(t){return console.error("Different hosts between iframes:",t),e}return e},m=(t,e=[])=>{if(t.frames.length>0)for(const n of Array.from(t.frames))e.push(n),m(n,e);return e},f=t=>typeof t=="string"&&t.trim()!=="",y=t=>typeof t=="object"?JSON.stringify(t):`${t}`,g=t=>typeof t=="number"&&!Number.isNaN(t),h=t=>typeof t=="string"?t.toLocaleLowerCase().normalize("NFD").replaceAll(/[\u0300-\u036f]/g,""):t,p=async t=>t();var v=Object.defineProperty,b=(t,e)=>{for(var n in e)v(t,n,{get:e[n],enumerable:!0})};var d={};b(d,{err:()=>D,map:()=>x,ok:()=>w,unwrap:()=>F,unwrapErr:()=>I});var w=t=>({isOk:!0,isErr:!1,value:t}),D=t=>({isOk:!1,isErr:!0,value:t});function x(t,e){if(t.isOk){const n=e(t.value);return n instanceof Promise?n.then((t=>w(t))):w(n)}if(t.isErr){const e=t.value;return D(e)}throw"should never get here"}var F=t=>{if(t.isOk)return t.value;throw t.value},I=t=>{if(t.isErr)return t.value;throw t.value};const O=t=>{const e={value:"2023",pattern:"yyyy"},n={value:"12",pattern:"mm"},r={value:"24",pattern:"dd"};return J([e.value,n.value,r.value].join("-"),t,{timeZone:"UTC"}).replace(e.value,e.pattern).replace(n.value,n.pattern).replace(r.value,r.pattern)},$=t=>t.toISOString().split("T")[0],j=(t,e,n)=>{const r=t.closest("[lang]"),s=Intl.NumberFormat.supportedLocalesOf(r==null?void 0:r.lang),a=s.length>0&&typeof s[0]=="string"?s[0]:navigator.language||n,i=a.split("-").shift();return Object.keys(e).length===0?{locale:a,messages:{lang:n}}:{locale:a,messages:e[i]||e[n]||{lang:n}}},z=(t,e,n)=>new Intl.NumberFormat(e,{style:"currency",currency:n}).format(t),A=(t,e,n=0)=>new Intl.NumberFormat(e,{minimumFractionDigits:n}).format(n>0?Number(t==null?void 0:t.toFixed(n)):t),N=(t,e,n=0)=>new Intl.NumberFormat(e,{style:"percent",minimumFractionDigits:n,maximumFractionDigits:n}).format(t),k=(t,e,n,r="short",s=0)=>new Intl.NumberFormat(e,{style:"unit",unit:n,unitDisplay:r,minimumFractionDigits:s,maximumFractionDigits:s}).format(t),E=/^\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\d|3[01])$/,J=(t,e,n)=>typeof t!="string"||t===""||!E.test(t)?"":new Intl.DateTimeFormat(e,n).format(new Date(t)),T=(t,e)=>n=>j(n,t,e);export{A as $,s as G,E as H,i as J,o as K,u as Q,g as V,a as X,y as Y,c as Z,O as c,N as d,h as e,$ as f,T as g,f as m,k as p,r as q,p as t,z as u,J as z};
2
+ //# sourceMappingURL=p-ee51ec5e.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["ve","Object","defineProperty","he","e","t","s","enumerable","configurable","writable","value","g","qe","Uint8Array","crypto","getRandomValues","r","Array","from","map","o","toString","padStart","join","slice","Ge","me","exec","Xe","constructor","this","has","classes","push","indexOf","splice","includes","Je","isArray","every","Ke","tagName","toLowerCase","Qe","Ze","te","se","self","top","parent","console","error","frames","length","trim","Ye","JSON","stringify","Ve","Number","isNaN","et","toLocaleLowerCase","normalize","replaceAll","tt","async","be","Se","get","Ae","err","oe","Ee","ok","U","unwrap","je","unwrapErr","Re","isOk","isErr","Promise","then","ct","pattern","ze","timeZone","replace","ft","toISOString","split","We","closest","Intl","NumberFormat","supportedLocalesOf","lang","n","navigator","language","i","shift","keys","locale","messages","ut","style","currency","format","$t","minimumFractionDigits","toFixed","dt","maximumFractionDigits","pt","unit","unitDisplay","He","test","DateTimeFormat","Date","gt"],"sources":["../stencil-helpers/dist/index.es.js"],"sourcesContent":["var ve = Object.defineProperty;\nvar X = (e) => {\n throw TypeError(e);\n};\nvar he = (e, t, s) => t in e ? ve(e, t, { enumerable: !0, configurable: !0, writable: !0, value: s }) : e[t] = s;\nvar g = (e, t, s) => he(e, typeof t != \"symbol\" ? t + \"\" : t, s), ye = (e, t, s) => t.has(e) || X(\"Cannot \" + s);\nvar k = (e, t, s) => (ye(e, t, \"read from private field\"), s ? s.call(e) : t.get(e)), P = (e, t, s) => t.has(e) ? X(\"Cannot add the same private member more than once\") : t instanceof WeakSet ? t.add(e) : t.set(e, s);\nconst qe = (e = \"\", t = 10) => {\n const s = new Uint8Array(t);\n crypto.getRandomValues(s);\n const r = Array.from(s).map((o) => o.toString(16).padStart(2, \"0\")).join(\"\").slice(0, t);\n return e !== \"\" ? `${e}-${r}` : r;\n}, Ge = (e) => me(e) && /^([a-z][a-z0-9]*)(-[a-z0-9]+)*$/.exec(e) !== null;\nclass Xe {\n constructor(t = []) {\n /**\n * Available classes\n */\n g(this, \"classes\");\n /**\n * Add class\n * @param className - class name to add\n */\n g(this, \"add\", (t) => {\n this.has(t) || this.classes.push(t);\n });\n /**\n * Delete class\n * @param className - class name to delete\n */\n g(this, \"delete\", (t) => {\n const s = this.classes.indexOf(t);\n s > -1 && this.classes.splice(s, 1);\n });\n /**\n * Check if class exist in list\n * @param className - class name to check\n * @returns class name is in the list\n */\n g(this, \"has\", (t) => this.classes.includes(t));\n /**\n * Join classes seperated by spaces\n * @returns joined values\n */\n g(this, \"join\", () => this.classes.join(\" \"));\n this.classes = t;\n }\n}\nconst Je = (e) => Array.isArray(e) && e.every((t) => typeof t == \"string\"), Ke = (e, t) => t.includes(e == null ? void 0 : e.tagName.toLowerCase()), Qe = 'a[href], button, input, textarea, select, details, [tabindex]:not([tabindex=\"-1\"]), [identifier], mg-button', Ze = (e) => {\n const t = te(e), s = se(e);\n return [e, ...t, ...s];\n}, te = (e, t = []) => {\n if (e.self !== e.top)\n try {\n const s = e.parent;\n return s ? (t.push(s), te(s, t)) : t;\n } catch (s) {\n return console.error(\"Different hosts between iframes:\", s), t;\n }\n return t;\n}, se = (e, t = []) => {\n if (e.frames.length > 0)\n for (const s of Array.from(e.frames))\n t.push(s), se(s, t);\n return t;\n}, me = (e) => typeof e == \"string\" && e.trim() !== \"\", Ye = (e) => typeof e == \"object\" ? JSON.stringify(e) : `${e}`, Ve = (e) => typeof e == \"number\" && !Number.isNaN(e), et = (e) => typeof e == \"string\" ? e.toLocaleLowerCase().normalize(\"NFD\").replaceAll(/[\\u0300-\\u036f]/g, \"\") : e, tt = async (e) => e();\nvar E = {\n allRenderFn: !1,\n cmpDidLoad: !0,\n cmpDidUnload: !1,\n cmpDidUpdate: !0,\n cmpDidRender: !0,\n cmpWillLoad: !0,\n cmpWillUpdate: !0,\n cmpWillRender: !0,\n connectedCallback: !0,\n disconnectedCallback: !0,\n element: !0,\n event: !0,\n hasRenderFn: !0,\n lifecycle: !0,\n hostListener: !0,\n hostListenerTargetWindow: !0,\n hostListenerTargetDocument: !0,\n hostListenerTargetBody: !0,\n hostListenerTargetParent: !1,\n hostListenerTarget: !0,\n member: !0,\n method: !0,\n mode: !0,\n observeAttribute: !0,\n prop: !0,\n propMutable: !0,\n reflect: !0,\n scoped: !0,\n shadowDom: !0,\n slot: !0,\n cssAnnotations: !0,\n state: !0,\n style: !0,\n formAssociated: !1,\n svg: !0,\n updatable: !0,\n vdomAttribute: !0,\n vdomXlink: !0,\n vdomClass: !0,\n vdomFunctional: !0,\n vdomKey: !0,\n vdomListener: !0,\n vdomRef: !0,\n vdomPropOrAttr: !0,\n vdomRender: !0,\n vdomStyle: !0,\n vdomText: !0,\n watchCallback: !0,\n taskQueue: !0,\n hotModuleReplacement: !1,\n isDebug: !1,\n isDev: !1,\n isTesting: !1,\n hydrateServerSide: !1,\n hydrateClientSide: !1,\n lifecycleDOMEvents: !1,\n lazyLoad: !1,\n profile: !1,\n slotRelocation: !0,\n // TODO(STENCIL-914): remove this option when `experimentalSlotFixes` is the default behavior\n appendChildSlotFix: !1,\n // TODO(STENCIL-914): remove this option when `experimentalSlotFixes` is the default behavior\n cloneNodeFix: !1,\n hydratedAttribute: !1,\n hydratedClass: !0,\n // TODO(STENCIL-1305): remove this option\n scriptDataOpts: !1,\n // TODO(STENCIL-914): remove this option when `experimentalSlotFixes` is the default behavior\n scopedSlotTextContentFix: !1,\n // TODO(STENCIL-854): Remove code related to legacy shadowDomShim field\n shadowDomShim: !1,\n // TODO(STENCIL-914): remove this option when `experimentalSlotFixes` is the default behavior\n slotChildNodesFix: !1,\n invisiblePrehydration: !0,\n propBoolean: !0,\n propNumber: !0,\n propString: !0,\n constructableCSS: !0,\n cmpShouldUpdate: !0,\n devTools: !1,\n shadowDelegatesFocus: !0,\n initializeNextTick: !1,\n asyncLoading: !0,\n asyncQueue: !1,\n transformTagName: !1,\n attachStyles: !0,\n // TODO(STENCIL-914): remove this option when `experimentalSlotFixes` is the default behavior\n experimentalSlotFixes: !1\n}, be = Object.defineProperty, Se = (e, t) => {\n for (var s in t)\n be(e, s, { get: t[s], enumerable: !0 });\n}, J = (e, t) => t in e, K = \"http://www.w3.org/1999/xlink\", B = typeof window < \"u\" ? window : {}, M = B.document || { head: {} };\nB.HTMLElement;\nvar j = {\n $flags$: 0,\n $resourcesUrl$: \"\",\n jmp: (e) => e(),\n raf: (e) => requestAnimationFrame(e),\n ael: (e, t, s, r) => e.addEventListener(t, s, r),\n rel: (e, t, s, r) => e.removeEventListener(t, s, r),\n ce: (e, t) => new CustomEvent(e, t)\n}, Q = {}, Te = \"http://www.w3.org/2000/svg\", ke = \"http://www.w3.org/1999/xhtml\", xe = (e) => e != null, re = (e) => (e = typeof e, e === \"object\" || e === \"function\"), Ae = {};\nSe(Ae, {\n err: () => oe,\n map: () => Ee,\n ok: () => U,\n unwrap: () => je,\n unwrapErr: () => Re\n});\nvar U = (e) => ({\n isOk: !0,\n isErr: !1,\n value: e\n}), oe = (e) => ({\n isOk: !1,\n isErr: !0,\n value: e\n});\nfunction Ee(e, t) {\n if (e.isOk) {\n const s = t(e.value);\n return s instanceof Promise ? s.then((r) => U(r)) : U(s);\n }\n if (e.isErr) {\n const s = e.value;\n return oe(s);\n }\n throw \"should never get here\";\n}\nvar je = (e) => {\n if (e.isOk)\n return e.value;\n throw e.value;\n}, Re = (e) => {\n if (e.isErr)\n return e.value;\n throw e.value;\n}, Le = (e, t, ...s) => {\n let r = null, o = null, n = null, i = !1, a = !1;\n const c = [], d = (l) => {\n for (let $ = 0; $ < l.length; $++)\n r = l[$], Array.isArray(r) ? d(r) : r != null && typeof r != \"boolean\" && ((i = !re(r)) && (r = String(r)), i && a ? c[c.length - 1].$text$ += r : c.push(i ? W(null, r) : r), a = i);\n };\n d(s);\n const f = W(e, null);\n return f.$attrs$ = t, c.length > 0 && (f.$children$ = c), f.$key$ = o, f.$name$ = n, f;\n}, W = (e, t) => {\n const s = {\n $flags$: 0,\n $tag$: e,\n $text$: t,\n $elm$: null,\n $children$: null\n };\n return s.$attrs$ = null, s.$key$ = null, s.$name$ = null, s;\n}, Oe = {}, Ne = (e) => e && e.$tag$ === Oe, Z = (e, t, s, r, o, n) => {\n if (s !== r) {\n let i = J(e, t), a = t.toLowerCase();\n if (t === \"class\") {\n const c = e.classList, d = Y(s), f = Y(r);\n c.remove(...d.filter((l) => l && !f.includes(l))), c.add(...f.filter((l) => l && !d.includes(l)));\n } else if (t === \"style\") {\n for (const c in s)\n (!r || r[c] == null) && (c.includes(\"-\") ? e.style.removeProperty(c) : e.style[c] = \"\");\n for (const c in r)\n (!s || r[c] !== s[c]) && (c.includes(\"-\") ? e.style.setProperty(c, r[c]) : e.style[c] = r[c]);\n } else if (t !== \"key\") if (t === \"ref\")\n r && r(e);\n else if (!e.__lookupSetter__(t) && t[0] === \"o\" && t[1] === \"n\") {\n if (t[2] === \"-\" ? t = t.slice(3) : J(B, a) ? t = a.slice(2) : t = a[2] + t.slice(3), s || r) {\n const c = t.endsWith(ne);\n t = t.replace(Fe, \"\"), s && j.rel(e, t, s, c), r && j.ael(e, t, r, c);\n }\n } else {\n const c = re(r);\n if ((i || c && r !== null) && !o)\n try {\n if (e.tagName.includes(\"-\"))\n e[t] = r;\n else {\n const f = r ?? \"\";\n t === \"list\" ? i = !1 : (s == null || e[t] != f) && (typeof e.__lookupSetter__(t) == \"function\" ? e[t] = f : e.setAttribute(t, f));\n }\n } catch {\n }\n let d = !1;\n a !== (a = a.replace(/^xlink\\:?/, \"\")) && (t = a, d = !0), r == null || r === !1 ? (r !== !1 || e.getAttribute(t) === \"\") && (d ? e.removeAttributeNS(K, t) : e.removeAttribute(t)) : (!i || n & 4 || o) && !c && (r = r === !0 ? \"\" : r, d ? e.setAttributeNS(K, t, r) : e.setAttribute(t, r));\n }\n }\n}, Me = /\\s/, Y = (e) => e ? e.split(Me) : [], ne = \"Capture\", Fe = new RegExp(ne + \"$\"), ie = (e, t, s) => {\n const r = t.$elm$.nodeType === 11 && t.$elm$.host ? t.$elm$.host : t.$elm$, o = e && e.$attrs$ || Q, n = t.$attrs$ || Q;\n for (const i of V(Object.keys(o)))\n i in n || Z(r, i, o[i], void 0, s, t.$flags$);\n for (const i of V(Object.keys(n)))\n Z(r, i, o[i], n[i], s, t.$flags$);\n};\nfunction V(e) {\n return e.includes(\"ref\") ? (\n // we need to sort these to ensure that `'ref'` is the last attr\n [...e.filter((t) => t !== \"ref\"), \"ref\"]\n ) : (\n // no need to sort, return the original array\n e\n );\n}\nvar x, H, R, F = !1, _ = !1, I = !1, h = !1, D = (e, t, s, r) => {\n var o;\n const n = t.$children$[s];\n let i = 0, a, c, d;\n if (F || (I = !0, n.$tag$ === \"slot\" && (x && r.classList.add(x + \"-s\"), n.$flags$ |= n.$children$ ? (\n // slot element has fallback content\n // still create an element that \"mocks\" the slot element\n 2\n ) : (\n // slot element does not have fallback content\n // create an html comment we'll use to always reference\n // where actual slot content should sit next to\n 1\n ))), n.$text$ !== null)\n a = n.$elm$ = M.createTextNode(n.$text$);\n else if (n.$flags$ & 1)\n a = n.$elm$ = M.createTextNode(\"\");\n else {\n if (h || (h = n.$tag$ === \"svg\"), a = n.$elm$ = M.createElementNS(\n h ? Te : ke,\n !F && E.slotRelocation && n.$flags$ & 2 ? \"slot-fb\" : n.$tag$\n ), h && n.$tag$ === \"foreignObject\" && (h = !1), ie(null, n, h), !!a.getRootNode().querySelector(\"body\") && E.scoped && xe(x) && a[\"s-si\"] !== x && a.classList.add(a[\"s-si\"] = x), G(a, r), n.$children$)\n for (i = 0; i < n.$children$.length; ++i)\n c = D(e, n, i, a), c && a.appendChild(c);\n n.$tag$ === \"svg\" ? h = !1 : a.tagName === \"foreignObject\" && (h = !0);\n }\n return a[\"s-hn\"] = R, n.$flags$ & 3 && (a[\"s-sr\"] = !0, a[\"s-cr\"] = H, a[\"s-sn\"] = n.$name$ || \"\", a[\"s-rf\"] = (o = n.$attrs$) == null ? void 0 : o.ref, d = e && e.$children$ && e.$children$[s], d && d.$tag$ === n.$tag$ && e.$elm$ && L(e.$elm$, !1)), a;\n}, L = (e, t) => {\n j.$flags$ |= 1;\n const s = Array.from(e.childNodes);\n if (e[\"s-sr\"] && E.experimentalSlotFixes) {\n let r = e;\n for (; r = r.nextSibling; )\n r && r[\"s-sn\"] === e[\"s-sn\"] && r[\"s-sh\"] === R && s.push(r);\n }\n for (let r = s.length - 1; r >= 0; r--) {\n const o = s[r];\n o[\"s-hn\"] !== R && o[\"s-ol\"] && (T(ce(o), o, q(o)), o[\"s-ol\"].remove(), o[\"s-ol\"] = void 0, o[\"s-sh\"] = void 0, I = !0), t && L(o, t);\n }\n j.$flags$ &= -2;\n}, le = (e, t, s, r, o, n) => {\n let i = e[\"s-cr\"] && e[\"s-cr\"].parentNode || e, a;\n for (i.shadowRoot && i.tagName === R && (i = i.shadowRoot); o <= n; ++o)\n r[o] && (a = D(null, s, o, e), a && (r[o].$elm$ = a, T(i, a, q(t))));\n}, ae = (e, t, s) => {\n for (let r = t; r <= s; ++r) {\n const o = e[r];\n if (o) {\n const n = o.$elm$;\n $e(o), n && (_ = !0, n[\"s-ol\"] ? n[\"s-ol\"].remove() : L(n, !0), n.remove());\n }\n }\n}, _e = (e, t, s, r, o = !1) => {\n let n = 0, i = 0, a = 0, c = 0, d = t.length - 1, f = t[0], l = t[d], $ = r.length - 1, u = r[0], p = r[$], m, y;\n for (; n <= d && i <= $; )\n if (f == null)\n f = t[++n];\n else if (l == null)\n l = t[--d];\n else if (u == null)\n u = r[++i];\n else if (p == null)\n p = r[--$];\n else if (N(f, u, o))\n A(f, u, o), f = t[++n], u = r[++i];\n else if (N(l, p, o))\n A(l, p, o), l = t[--d], p = r[--$];\n else if (N(f, p, o))\n (f.$tag$ === \"slot\" || p.$tag$ === \"slot\") && L(f.$elm$.parentNode, !1), A(f, p, o), T(e, f.$elm$, l.$elm$.nextSibling), f = t[++n], p = r[--$];\n else if (N(l, u, o))\n (f.$tag$ === \"slot\" || p.$tag$ === \"slot\") && L(l.$elm$.parentNode, !1), A(l, u, o), T(e, l.$elm$, f.$elm$), l = t[--d], u = r[++i];\n else {\n for (a = -1, c = n; c <= d; ++c)\n if (t[c] && t[c].$key$ !== null && t[c].$key$ === u.$key$) {\n a = c;\n break;\n }\n a >= 0 ? (y = t[a], y.$tag$ !== u.$tag$ ? m = D(t && t[i], s, a, e) : (A(y, u, o), t[a] = void 0, m = y.$elm$), u = r[++i]) : (m = D(t && t[i], s, i, e), u = r[++i]), m && T(ce(f.$elm$), m, q(f.$elm$));\n }\n n > d ? le(\n e,\n r[$ + 1] == null ? null : r[$ + 1].$elm$,\n s,\n r,\n i,\n $\n ) : i > $ && ae(t, n, d);\n}, N = (e, t, s = !1) => e.$tag$ === t.$tag$ ? e.$tag$ === \"slot\" ? (\n // The component gets hydrated and no VDOM has been initialized.\n // Here the comparison can't happen as $name$ property is not set for `leftNode`.\n \"$nodeId$\" in e && s && // `leftNode` is not from type HTMLComment which would cause many\n // hydration comments to be removed\n e.$elm$.nodeType !== 8 ? !1 : e.$name$ === t.$name$\n) : s ? !0 : e.$key$ === t.$key$ : !1, q = (e) => e && e[\"s-ol\"] || e, ce = (e) => (e[\"s-ol\"] ? e[\"s-ol\"] : e).parentNode, A = (e, t, s = !1) => {\n const r = t.$elm$ = e.$elm$, o = e.$children$, n = t.$children$, i = t.$tag$, a = t.$text$;\n let c;\n a === null ? (h = i === \"svg\" ? !0 : i === \"foreignObject\" ? !1 : h, i === \"slot\" && !F || ie(e, t, h), o !== null && n !== null ? _e(r, o, t, n, s) : n !== null ? (e.$text$ !== null && (r.textContent = \"\"), le(r, null, t, n, 0, n.length - 1)) : (\n // don't do this on initial render as it can cause non-hydrated content to be removed\n !s && E.updatable && o !== null && ae(o, 0, o.length - 1)\n ), h && i === \"svg\" && (h = !1)) : (c = r[\"s-cr\"]) ? c.parentNode.textContent = a : e.$text$ !== a && (r.data = a);\n}, fe = (e) => {\n const t = e.childNodes;\n for (const s of t)\n if (s.nodeType === 1) {\n if (s[\"s-sr\"]) {\n const r = s[\"s-sn\"];\n s.hidden = !1;\n for (const o of t)\n if (o !== s) {\n if (o[\"s-hn\"] !== s[\"s-hn\"] || r !== \"\") {\n if (o.nodeType === 1 && (r === o.getAttribute(\"slot\") || r === o[\"s-sn\"]) || o.nodeType === 3 && r === o[\"s-sn\"]) {\n s.hidden = !0;\n break;\n }\n } else if (o.nodeType === 1 || o.nodeType === 3 && o.textContent.trim() !== \"\") {\n s.hidden = !0;\n break;\n }\n }\n }\n fe(s);\n }\n}, b = [], ue = (e) => {\n let t, s, r;\n for (const o of e.childNodes) {\n if (o[\"s-sr\"] && (t = o[\"s-cr\"]) && t.parentNode) {\n s = t.parentNode.childNodes;\n const n = o[\"s-sn\"];\n for (r = s.length - 1; r >= 0; r--)\n if (t = s[r], !t[\"s-cn\"] && !t[\"s-nr\"] && t[\"s-hn\"] !== o[\"s-hn\"] && !E.experimentalSlotFixes)\n if (ee(t, n)) {\n let i = b.find((a) => a.$nodeToRelocate$ === t);\n _ = !0, t[\"s-sn\"] = t[\"s-sn\"] || n, i ? (i.$nodeToRelocate$[\"s-sh\"] = o[\"s-hn\"], i.$slotRefNode$ = o) : (t[\"s-sh\"] = o[\"s-hn\"], b.push({\n $slotRefNode$: o,\n $nodeToRelocate$: t\n })), t[\"s-sr\"] && b.map((a) => {\n ee(a.$nodeToRelocate$, t[\"s-sn\"]) && (i = b.find((c) => c.$nodeToRelocate$ === t), i && !a.$slotRefNode$ && (a.$slotRefNode$ = i.$slotRefNode$));\n });\n } else b.some((i) => i.$nodeToRelocate$ === t) || b.push({\n $nodeToRelocate$: t\n });\n }\n o.nodeType === 1 && ue(o);\n }\n}, ee = (e, t) => e.nodeType === 1 ? e.getAttribute(\"slot\") === null && t === \"\" || e.getAttribute(\"slot\") === t : e[\"s-sn\"] === t ? !0 : t === \"\", $e = (e) => {\n e.$attrs$ && e.$attrs$.ref && e.$attrs$.ref(null), e.$children$ && e.$children$.map($e);\n}, T = (e, t, s) => {\n const r = e == null ? void 0 : e.insertBefore(t, s);\n return G(t, e), r;\n}, de = (e) => {\n const t = [];\n return e && t.push(\n ...e[\"s-scs\"] || [],\n e[\"s-si\"],\n e[\"s-sc\"],\n ...de(e.parentElement)\n ), t;\n}, G = (e, t, s = !1) => {\n var r;\n if (e && t && e.nodeType === 1) {\n const o = new Set(de(t).filter(Boolean));\n if (o.size && ((r = e.classList) == null || r.add(...e[\"s-scs\"] = Array.from(o)), e[\"s-ol\"] || s))\n for (const n of Array.from(e.childNodes))\n G(n, e, !0);\n }\n}, De = (e, t, s = !1) => {\n var r, o, n, i, a;\n const c = e.$hostElement$, d = e.$cmpMeta$, f = e.$vnode$ || W(null, null), l = Ne(t) ? t : Le(null, null, t);\n if (R = c.tagName, d.$attrsToReflect$ && (l.$attrs$ = l.$attrs$ || {}, d.$attrsToReflect$.map(\n ([$, u]) => l.$attrs$[u] = c[$]\n )), s && l.$attrs$)\n for (const $ of Object.keys(l.$attrs$))\n c.hasAttribute($) && ![\"key\", \"ref\", \"style\", \"class\"].includes($) && (l.$attrs$[$] = c[$]);\n l.$tag$ = null, l.$flags$ |= 4, e.$vnode$ = l, l.$elm$ = f.$elm$ = c.shadowRoot || c, x = c[\"s-sc\"], F = (d.$flags$ & 1) !== 0, H = c[\"s-cr\"], _ = !1, A(f, l, s);\n {\n if (j.$flags$ |= 1, I) {\n ue(l.$elm$);\n for (const $ of b) {\n const u = $.$nodeToRelocate$;\n if (!u[\"s-ol\"]) {\n const p = M.createTextNode(\"\");\n p[\"s-nr\"] = u, T(u.parentNode, u[\"s-ol\"] = p, u);\n }\n }\n for (const $ of b) {\n const u = $.$nodeToRelocate$, p = $.$slotRefNode$;\n if (p) {\n const m = p.parentNode;\n let y = p.nextSibling;\n {\n let O = (r = u[\"s-ol\"]) == null ? void 0 : r.previousSibling;\n for (; O; ) {\n let v = (o = O[\"s-nr\"]) != null ? o : null;\n if (v && v[\"s-sn\"] === u[\"s-sn\"] && m === v.parentNode) {\n for (v = v.nextSibling; v === u || v != null && v[\"s-sr\"]; )\n v = v == null ? void 0 : v.nextSibling;\n if (!v || !v[\"s-nr\"]) {\n y = v;\n break;\n }\n }\n O = O.previousSibling;\n }\n }\n (!y && m !== u.parentNode || u.nextSibling !== y) && u !== y && (!u[\"s-hn\"] && u[\"s-ol\"] && (u[\"s-hn\"] = u[\"s-ol\"].parentNode.nodeName), T(m, u, y), u.nodeType === 1 && (u.hidden = (n = u[\"s-ih\"]) != null ? n : !1)), u && typeof p[\"s-rf\"] == \"function\" && p[\"s-rf\"](u);\n } else\n u.nodeType === 1 && (s && (u[\"s-ih\"] = (i = u.hidden) != null ? i : !1), u.hidden = !0);\n }\n }\n _ && fe(l.$elm$), j.$flags$ &= -2, b.length = 0;\n }\n if (E.experimentalScopedSlotChanges && d.$flags$ & 2)\n for (const $ of l.$elm$.childNodes)\n $[\"s-hn\"] !== R && !$[\"s-sh\"] && (s && $[\"s-ih\"] == null && ($[\"s-ih\"] = (a = $.hidden) != null ? a : !1), $.hidden = !0);\n H = void 0;\n};\nconst Ce = (e, t, s) => {\n [null, void 0, \"\", !1].includes(s) || [\"innerHTML\", \"style\"].includes(t) || e.setAttribute(t, [\"object\", \"function\"].includes(typeof s) ? \"/!\\\\ Object props are not rendered in the code example\" : s);\n}, pe = (e, t, s, r, o) => {\n if (t && typeof t == \"string\") {\n const n = document.createElement(t);\n Object.keys(s || {}).forEach((i) => {\n Ce(n, i, s[i]);\n }), r == null || r.forEach((i) => {\n pe(n, i.$tag$, i.$attrs$, i.$children$, i.$text$);\n }), s != null && s.innerHTML && (n.innerHTML = s.innerHTML), e.appendChild(n);\n }\n o && (e.innerHTML = o);\n}, st = (e, t) => {\n const s = {};\n if (typeof e != \"object\")\n throw new Error(\"filterArgs - args isn't an object.\");\n for (const r in e)\n if (!r.startsWith(\"slot\")) {\n const o = e[r], n = r.replace(/([a-z])([A-Z])/g, \"$1-$2\").toLowerCase();\n (!t || !Object.keys(t).includes(r) || t[r] !== o) && (s[n] = o);\n }\n return s;\n}, rt = (e, t) => {\n var r, o;\n const s = document.getElementById(\"storybook-root\");\n if (s !== null)\n return (o = document.querySelector(\"[lang]\")) == null || o.setAttribute(\"lang\", ((r = t.globals) == null ? void 0 : r.locale) || \"en\"), De(\n {\n $ancestorComponent$: void 0,\n $flags$: 0,\n $modeName$: void 0,\n $cmpMeta$: {\n $flags$: 0,\n $tagName$: s.tagName\n },\n $hostElement$: s\n },\n e(t)\n ), s.children[s.children.length - 1];\n}, ot = ({ $tag$: e, $attrs$: t, $children$: s, $text$: r }) => {\n const o = document.createElement(\"div\");\n return pe(o, e, t, s, r), o.innerHTML;\n}, C = (e, t) => {\n if (!t)\n return;\n const s = t.split(\"/\");\n return `${e}${s.slice(2, s.length - 1).join(\"-\")}--docs`;\n};\nvar S, w;\nclass nt {\n constructor(t) {\n /**\n * JsonDocs\n */\n g(this, \"jsonDoc\");\n /**\n * Get component data from the jsonDoc\n * @param tagName - tag name we want to get the data from\n * @returns component data\n */\n P(this, S, (t) => this.jsonDoc.components.find((s) => s.tag === t));\n /**\n * Get the control for the given prop\n * Based on https://storybook.js.org/docs/api/arg-types#controltype\n * @param prop - prop to get control for\n * @returns control type and options if applicable\n */\n P(this, w, (t) => {\n const s = t.type.replace(/\"([^\"]+)\"/g, \"$1\").replace(/\\s/g, \"\").replace(/\\(.*?\\)/g, (r) => r.replace(/\\|/g, \" OR \")).split(\"|\").map((r) => r.trim().replace(/ OR /g, \"|\"));\n return t.type === \"string\" ? { control: { type: \"text\" } } : t.type === \"number\" ? { control: { type: \"number\" } } : t.type === \"boolean\" ? { control: { type: \"boolean\" } } : t.type.startsWith(\"{\") && t.type.endsWith(\"}\") ? { control: { type: \"object\" } } : s.length > 1 ? s.includes(\"string\") ? { control: { type: \"text\" } } : s.every((r) => r == null ? void 0 : r.includes(\"[]\")) ? { control: { type: \"object\" } } : (s.unshift(void 0), { control: { type: \"select\" }, options: s }) : { control: { type: \"object\" } };\n });\n /**\n * Extract component arg types from the component data\n * @param tagName - tag name we want to extract the arg types from\n * @returns component arg types\n */\n g(this, \"extractArgTypes\", (t) => {\n const s = k(this, S).call(this, t), r = s == null ? void 0 : s.props.reduce((f, l) => {\n const { control: $, options: u } = k(this, w).call(this, l);\n return {\n ...f,\n [l.name]: {\n name: l.attr || l.name,\n description: l.docs,\n type: { required: l.required },\n table: {\n category: \"props\",\n type: { summary: l.type },\n defaultValue: { summary: l.default }\n },\n control: $,\n options: u\n }\n };\n }, {}), o = s == null ? void 0 : s.events.reduce(\n (f, l) => ({\n ...f,\n [l.event]: {\n name: l.event,\n description: l.docs,\n table: {\n category: \"events\",\n type: { summary: l.detail }\n }\n }\n }),\n {}\n ), n = s == null ? void 0 : s.methods.reduce(\n (f, l) => ({\n ...f,\n [l.name]: {\n name: l.name,\n description: l.docs,\n table: {\n category: \"methods\",\n type: { summary: l.signature }\n }\n }\n }),\n {}\n ), i = s == null ? void 0 : s.slots.reduce(\n (f, l) => ({\n ...f,\n [l.name]: {\n name: l.name !== \"\" ? l.name : \"default\",\n // default slot are unnamed\n description: l.docs,\n table: {\n category: \"slots\",\n type: { summary: void 0 }\n }\n }\n }),\n {}\n ), a = s == null ? void 0 : s.styles.reduce(\n (f, l) => ({\n ...f,\n [l.name]: {\n name: l.name,\n description: l.docs,\n table: {\n category: \"custom properties\",\n type: { summary: void 0 }\n }\n }\n }),\n {}\n ), c = s == null ? void 0 : s.dependencies.reduce((f, l) => {\n const $ = k(this, S).call(this, l);\n return {\n ...f,\n [l]: {\n name: l,\n description: `<a href=\"./?path=/docs/${C(\"\", $ == null ? void 0 : $.filePath)}\">View Component Documentation</a>`,\n table: {\n category: \"depends on\",\n type: { summary: void 0 }\n }\n }\n };\n }, {}), d = s == null ? void 0 : s.dependents.reduce((f, l) => {\n const $ = k(this, S).call(this, l);\n return {\n ...f,\n [l]: {\n name: l,\n description: `<a href=\"./?path=/docs/${C(\"\", $ == null ? void 0 : $.filePath)}\">View Component Documentation</a>`,\n table: {\n category: \"used by\",\n type: { summary: void 0 }\n }\n }\n };\n }, {});\n return {\n ...r,\n ...o,\n ...n,\n ...i,\n ...a,\n ...c,\n ...d\n };\n });\n /**\n * Extract component description from the component data\n * @param tagName - tag name we want to extract the description from\n * @returns component description\n */\n g(this, \"extractComponentDescription\", (t) => {\n const s = k(this, S).call(this, t);\n return (s == null ? void 0 : s.readme) || (s == null ? void 0 : s.docs);\n });\n this.jsonDoc = t;\n }\n}\nS = new WeakMap(), w = new WeakMap();\nconst we = (e, t) => {\n if (t)\n return `${e}${t}`;\n}, ge = (e) => {\n let t = e.overview ? `${e.overview}\n\n` : \"\";\n const s = e.props.filter(({ attr: o }) => o !== void 0);\n s.length && (t += `Attributes:\n`, t += s.map(({ attr: o, docs: n }) => `- \\`${o}\\`: ${n}\n`).join(\"\"), t += `\n`);\n const r = e.props.filter(({ attr: o }) => o === void 0);\n return r.length && (t += `Properties:\n`, t += r.map(({ name: o, docs: n }) => `- \\`${o}\\`: ${n}\n`).join(\"\"), t += `\n`), e.methods.length && (t += `Methods:\n`, t += e.methods.map(({ name: o, docs: n }) => `- \\`${o}\\`: ${n}\n`).join(\"\"), t += `\n`), e.events.length && (t += `Events:\n`, t += e.events.map(({ event: o, docs: n }) => `- \\`${o}\\`: ${n}\n`).join(\"\"), t += `\n`), e.listeners.length && (t += `Listeners:\n`, t += e.listeners.map(({ event: o }) => `- \\`${o}\\`\n`).join(\"\"), t += `\n`), e.slots.length && (t += `Slots:\n`, t += e.slots.map(({ name: o, docs: n }) => `- \\`${o}\\`: ${n}\n`).join(\"\"), t += `\n`), t;\n}, z = (e) => `${e.docs}\n\nType: \\`${e.type}\\``, it = (e, t, s, r) => ({\n $schema: \"https://json.schemastore.org/web-types\",\n name: e,\n version: t,\n \"description-markup\": \"markdown\",\n contributions: {\n html: {\n elements: s.components.map((o) => {\n const n = C(r, o.filePath);\n return {\n name: o.tag,\n description: ge(o),\n \"doc-url\": n,\n attributes: o.props.filter((i) => i.attr).map((i) => ({\n name: i.attr,\n description: z(i),\n \"doc-url\": n,\n value: {\n type: i.type,\n default: i.default,\n required: i.required\n }\n })),\n js: {\n properties: o.props.map((i) => ({\n name: i.name,\n description: z(i),\n \"doc-url\": n,\n value: {\n type: i.type,\n default: i.default,\n required: i.required\n }\n })),\n events: o.events.map((i) => ({\n name: i.event,\n description: i.docs\n }))\n },\n css: {\n properties: o.styles.map((i) => ({\n name: i.name,\n description: i.docs\n }))\n }\n };\n })\n }\n }\n}), Pe = (e, t, s) => [\n { name: \"Storybook\", url: C(e, s) },\n { name: \"Sources\", url: we(t, s) }\n], Ue = (e) => {\n if (!e.values.some(({ value: t }) => t === void 0))\n return e.values.map(({ value: t }) => ({ name: t }));\n}, lt = (e, t, s) => ({\n version: 1.1,\n tags: e.components.map((r) => {\n const o = Pe(t, s, r.filePath);\n return {\n name: r.tag,\n description: ge(r),\n attributes: r.props.map((n) => ({\n name: n.attr || n.name,\n description: z(n),\n values: Ue(n),\n references: o\n })),\n references: o\n };\n }),\n globalAttributes: [],\n valueSets: []\n}), at = (e) => ({\n version: 1.1,\n properties: e.components.flatMap(\n (t) => t.styles.map((s) => ({\n name: s.name,\n description: s.docs\n }))\n )\n}), ct = (e) => {\n const t = { value: \"2023\", pattern: \"yyyy\" }, s = { value: \"12\", pattern: \"mm\" }, r = { value: \"24\", pattern: \"dd\" };\n return ze([t.value, s.value, r.value].join(\"-\"), e, { timeZone: \"UTC\" }).replace(t.value, t.pattern).replace(s.value, s.pattern).replace(r.value, r.pattern);\n}, ft = (e) => e.toISOString().split(\"T\")[0], We = (e, t, s) => {\n const r = e.closest(\"[lang]\"), o = Intl.NumberFormat.supportedLocalesOf(r == null ? void 0 : r.lang), n = o.length > 0 && typeof o[0] == \"string\" ? o[0] : navigator.language || s, i = n.split(\"-\").shift();\n return Object.keys(t).length === 0 ? {\n locale: n,\n messages: { lang: s }\n } : {\n locale: n,\n messages: t[i] || t[s] || { lang: s }\n };\n}, ut = (e, t, s) => new Intl.NumberFormat(t, { style: \"currency\", currency: s }).format(e), $t = (e, t, s = 0) => new Intl.NumberFormat(t, { minimumFractionDigits: s }).format(s > 0 ? Number(e == null ? void 0 : e.toFixed(s)) : e), dt = (e, t, s = 0) => new Intl.NumberFormat(t, {\n style: \"percent\",\n minimumFractionDigits: s,\n maximumFractionDigits: s\n}).format(e), pt = (e, t, s, r = \"short\", o = 0) => new Intl.NumberFormat(t, {\n style: \"unit\",\n unit: s,\n unitDisplay: r,\n minimumFractionDigits: o,\n maximumFractionDigits: o\n}).format(e), He = /^\\d{4}-(0[1-9]|1[0-2])-(0[1-9]|[12]\\d|3[01])$/, ze = (e, t, s) => typeof e != \"string\" || e === \"\" || !He.test(e) ? \"\" : new Intl.DateTimeFormat(t, s).format(new Date(e)), gt = (e, t) => (s) => We(s, e, t), vt = ({ disconnect: e, observe: t, takeRecords: s }) => {\n class r {\n constructor(n) {\n /**\n *\n */\n g(this, \"disconnect\", e);\n /**\n *\n */\n g(this, \"observe\", t);\n /**\n *\n */\n g(this, \"takeRecords\", s);\n /**\n *\n */\n g(this, \"cb\");\n this.cb = n;\n }\n }\n return [window, global].forEach((o) => {\n Object.defineProperty(o, \"MutationObserver\", {\n writable: !0,\n configurable: !0,\n value: r\n });\n }), r;\n}, ht = ({ disconnect: e, observe: t }) => {\n class s {\n constructor(o) {\n /**\n *\n */\n g(this, \"disconnect\", e);\n /**\n *\n */\n g(this, \"observe\", t);\n /**\n *\n */\n g(this, \"unobserve\");\n /**\n *\n */\n g(this, \"cb\");\n this.cb = o;\n }\n }\n return [window, global].forEach((r) => {\n Object.defineProperty(r, \"ResizeObserver\", {\n writable: !0,\n configurable: !0,\n value: s\n });\n }), s;\n};\nclass Be extends Event {\n constructor() {\n super(...arguments);\n /**\n *\n */\n g(this, \"detail\");\n }\n // eslint-disable-line @typescript-eslint/no-explicit-any\n}\nconst yt = () => {\n class e extends Be {\n }\n return [window, global].forEach((t) => {\n Object.defineProperty(t, \"SubmitEvent\", {\n writable: !0,\n configurable: !0,\n value: e\n });\n }), e;\n};\nexport {\n Xe as ClassList,\n nt as StorybookPreview,\n Je as allItemsAreString,\n et as cleanString,\n qe as createID,\n He as dateRegExp,\n ft as dateToString,\n gt as defineLocales,\n st as filterArgs,\n Qe as focusableElements,\n ct as getLocaleDatePattern,\n te as getParentWindows,\n ot as getStoryHTML,\n C as getStorybookUrl,\n Ze as getWindows,\n Ke as isTagName,\n Ve as isValidNumber,\n me as isValidString,\n Ge as isValideID,\n ut as localeCurrency,\n ze as localeDate,\n $t as localeNumber,\n dt as localePercent,\n pt as localeUnit,\n tt as nextTick,\n vt as setupMutationObserverMock,\n ht as setupResizeObserverMock,\n yt as setupSubmitEventMock,\n rt as stencilWrapper,\n Ye as toString,\n at as vsCodeCssGenerator,\n lt as vsCodeGenerator,\n it as webTypesGenerator\n};\n//# sourceMappingURL=index.es.js.map\n"],"mappings":"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","ignoreList":[]}
@@ -1,4 +1,12 @@
1
- import type { Variant } from '../../../types';
1
+ import type { Variant, Size } from '../../../types';
2
+ /**
3
+ * List of all possibles sizes
4
+ */
5
+ export declare const sizes: readonly ["medium", "large"];
6
+ /**
7
+ * SizeType type from button sizes
8
+ */
9
+ export type SizeType = Size & (typeof sizes)[number];
2
10
  /**
3
11
  * List of all possibles variants
4
12
  */
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from '../../../stencil-public-runtime';
2
- import { VariantType, ButtonType } from './mg-button.conf';
2
+ import { VariantType, ButtonType, SizeType } from './mg-button.conf';
3
3
  import { ClassList } from '@mgdis/stencil-helpers';
4
4
  /**
5
5
  * @slot - Button content
@@ -33,6 +33,11 @@ export declare class MgButton {
33
33
  * Define button type
34
34
  */
35
35
  type?: ButtonType;
36
+ /**
37
+ * Define button size
38
+ */
39
+ size: SizeType;
40
+ validateSize(newValue: MgButton['size'], oldValue?: MgButton['size']): void;
36
41
  /**
37
42
  * Set button to full-width
38
43
  */
@@ -53,6 +58,7 @@ export declare class MgButton {
53
58
  * Used for icon button.
54
59
  */
55
60
  isIcon: boolean;
61
+ watchIsIcon(): void;
56
62
  /**
57
63
  * Option to set input disable on click, in order to prevent multi-click.
58
64
  * Parent component have to remove the attribute 'disabled' when the process ends.
@@ -88,6 +94,10 @@ export declare class MgButton {
88
94
  * @param event - keyboard event
89
95
  */
90
96
  private handleKeyup;
97
+ /**
98
+ * Set child `<mg-icon>` element `size` prop to follow the current `size` prop
99
+ */
100
+ private setIconSize;
91
101
  /**
92
102
  * Check if props are well configured on init
93
103
  */
@@ -9,24 +9,26 @@ export type Width = (typeof widths)[number];
9
9
  export declare const tooltipPositions: readonly ["input", "label"];
10
10
  export type TooltipPosition = (typeof tooltipPositions)[number];
11
11
  /**
12
- * Possible Input types
12
+ * Base interface for common methods
13
13
  */
14
- export type HTMLMgInputsElement = (HTMLMgInputElement & {
15
- required: true;
16
- invalid: false;
17
- displayError: () => void;
14
+ interface InputBaseMethods {
15
+ required: boolean;
16
+ invalid: boolean;
18
17
  labelOnTop: boolean;
19
18
  readonly: boolean;
20
- }) | HTMLMgInputCheckboxElement | HTMLMgInputDateElement | HTMLMgInputNumericElement | HTMLMgInputPasswordElement | HTMLMgInputRadioElement | HTMLMgInputSelectElement | HTMLMgInputTextElement | HTMLMgInputTextareaElement | (HTMLMgInputToggleElement & {
21
- required: true;
22
- invalid: false;
23
- displayError: () => void;
24
- });
19
+ displayError: () => Promise<void>;
20
+ reset: () => Promise<void>;
21
+ }
22
+ /**
23
+ * Possible Input types
24
+ */
25
+ export type HTMLMgInputsElement = (HTMLMgInputElement & InputBaseMethods) | HTMLMgInputCheckboxElement | HTMLMgInputDateElement | HTMLMgInputNumericElement | HTMLMgInputPasswordElement | HTMLMgInputRadioElement | HTMLMgInputSelectElement | HTMLMgInputTextElement | HTMLMgInputTextareaElement | (HTMLMgInputToggleElement & InputBaseMethods);
25
26
  /**
26
27
  * Available WindowEvent types
27
28
  */
28
- export type EventType = keyof WindowEventMap & ('blur' | 'focus' | 'mouseenter');
29
+ export type EventType = keyof WindowEventMap & 'blur';
29
30
  export declare const classFieldset = "mg-c-input--fieldset";
30
31
  export declare const classDisabled = "mg-c-input--disabled";
31
32
  export declare const classReadonly = "mg-c-input--readonly";
32
33
  export declare const classVerticalList = "mg-c-input--vertical-list";
34
+ export {};
@@ -21,8 +21,6 @@ export interface CheckboxItem extends CheckboxValue {
21
21
  _handleKeydown: (event: KeyboardEvent & {
22
22
  target: HTMLElement;
23
23
  }) => void;
24
- _handleMouseEnter: () => void;
25
- _handleMouseLeave: () => void;
26
24
  }
27
25
  /**
28
26
  * List of all availables checkbox type
@@ -10,7 +10,6 @@ export declare class MgInputCheckbox implements Omit<MgInputCheckboxListProps, '
10
10
  private searchInput;
11
11
  private messages;
12
12
  private hasDisplayedError;
13
- private handlerInProgress;
14
13
  private mode;
15
14
  private readonly baseClassName;
16
15
  private readonly classTypeMulti;
@@ -173,6 +172,10 @@ export declare class MgInputCheckbox implements Omit<MgInputCheckboxListProps, '
173
172
  * @param errorMessage - the error message to display
174
173
  */
175
174
  setError(valid: MgInputCheckbox['valid'], errorMessage: string): Promise<void>;
175
+ /**
176
+ * Reset value, validity and error state
177
+ */
178
+ reset(): Promise<void>;
176
179
  /**
177
180
  * Method to set validity values
178
181
  * @param newValue - valid new value
@@ -207,14 +210,6 @@ export declare class MgInputCheckbox implements Omit<MgInputCheckboxListProps, '
207
210
  * @param event - mass action event trigger a global select/unselect on values
208
211
  */
209
212
  private handleMassAction;
210
- /**
211
- * Handle input label mouseenter event
212
- */
213
- private handleMouseEnter;
214
- /**
215
- * Handle input label leave event
216
- */
217
- private handleMouseLeave;
218
213
  /**
219
214
  * Update values
220
215
  */
@@ -124,6 +124,10 @@ export declare class MgInputDate {
124
124
  * @param errorMessage - the error message to display
125
125
  */
126
126
  setError(valid: MgInputDate['valid'], errorMessage: string): Promise<void>;
127
+ /**
128
+ * Reset value, validity and error state
129
+ */
130
+ reset(): Promise<void>;
127
131
  /**
128
132
  * Method to validate date pattern string
129
133
  * @param value - value to test
@@ -4,6 +4,6 @@ import type { InputError } from '../../../../types';
4
4
  */
5
5
  export declare const types: readonly ["decimal", "integer"];
6
6
  export type NumericType = (typeof types)[number];
7
- export declare const formats: readonly ["none", "number", "currency"];
7
+ export declare const formats: readonly ["none", "number", "currency", "percent", "unit"];
8
8
  export type Format = (typeof formats)[number];
9
9
  export type InputNumericError = InputError & ('min' | 'max' | 'minMax' | 'required');
@@ -111,6 +111,14 @@ export declare class MgInputNumeric {
111
111
  * Define currency
112
112
  */
113
113
  currency: string;
114
+ /**
115
+ * Define unit symbol (km, L, etc.)
116
+ */
117
+ unit?: Intl.NumberFormatOptions['unit'];
118
+ /**
119
+ * Define unit display format ('short', 'long', 'narrow')
120
+ */
121
+ unitDisplay: Intl.NumberFormatOptions['unitDisplay'];
114
122
  /**
115
123
  * Override integer length
116
124
  * integer is the number before the decimal point
@@ -164,6 +172,10 @@ export declare class MgInputNumeric {
164
172
  * @param errorMessage - the error message to display
165
173
  */
166
174
  setError(valid: MgInputNumeric['valid'], errorMessage: string): Promise<void>;
175
+ /**
176
+ * Reset value, validity and error state
177
+ */
178
+ reset(): Promise<void>;
167
179
  /**
168
180
  * Method to set validity values
169
181
  * @param newValue - valid new value
@@ -124,6 +124,10 @@ export declare class MgInputPassword {
124
124
  * @param errorMessage - the error message to display
125
125
  */
126
126
  setError(valid: MgInputPassword['valid'], errorMessage: string): Promise<void>;
127
+ /**
128
+ * Reset value, validity and error state
129
+ */
130
+ reset(): Promise<void>;
127
131
  /**
128
132
  * Method to set validity values
129
133
  * @param newValue - valid new value
@@ -126,6 +126,10 @@ export declare class MgInputRadio {
126
126
  * @param errorMessage - the error message to display
127
127
  */
128
128
  setError(valid: MgInputRadio['valid'], errorMessage: string): Promise<void>;
129
+ /**
130
+ * Reset value, validity and error state
131
+ */
132
+ reset(): Promise<void>;
129
133
  /**
130
134
  * Method to set validity values
131
135
  * @param newValue - valid new value
@@ -142,6 +142,10 @@ export declare class MgInputSelect {
142
142
  * @param errorMessage - the error message to display
143
143
  */
144
144
  setError(valid: MgInputSelect['valid'], errorMessage: string): Promise<void>;
145
+ /**
146
+ * Reset value, validity and error state
147
+ */
148
+ reset(): Promise<void>;
145
149
  /**
146
150
  * Method to set validity values
147
151
  * @param newValue - valid new value
@@ -165,6 +165,10 @@ export declare class MgInputText {
165
165
  * @param errorMessage - the error message to display
166
166
  */
167
167
  setError(valid: MgInputText['valid'], errorMessage: string): Promise<void>;
168
+ /**
169
+ * Reset value, validity and error state
170
+ */
171
+ reset(): Promise<void>;
168
172
  /**
169
173
  * Method to set validity values
170
174
  * @param newValue - valid new value
@@ -146,6 +146,10 @@ export declare class MgInputTextarea {
146
146
  * @param errorMessage - the error message to display
147
147
  */
148
148
  setError(valid: MgInputTextarea['valid'], errorMessage: string): Promise<void>;
149
+ /**
150
+ * Reset value, validity and error state
151
+ */
152
+ reset(): Promise<void>;
149
153
  /**
150
154
  * Method to set validity values
151
155
  * @param newValue - valid new value
@@ -126,6 +126,10 @@ export declare class MgInputToggle {
126
126
  * @param errorMessage - errorMessage override
127
127
  */
128
128
  private setErrorMessage;
129
+ /**
130
+ * Reset value, validity, error and visual state
131
+ */
132
+ reset(): Promise<void>;
129
133
  /**
130
134
  * Change checked value
131
135
  */
@@ -57,6 +57,10 @@ export declare class MgAlert {
57
57
  * Emited event when alert is hidden
58
58
  */
59
59
  componentHide: EventEmitter<void>;
60
+ /**
61
+ * Emmited event when alert is closed
62
+ */
63
+ componentClose: EventEmitter<void>;
60
64
  /**
61
65
  * Set timer
62
66
  */
@@ -1,3 +1,4 @@
1
+ import { AriaRole } from '../../../types';
1
2
  /**
2
3
  * List of all possibles roles
3
4
  */
@@ -5,7 +6,7 @@ export declare const roles: readonly ["form", "search", "none", "presentation"];
5
6
  /**
6
7
  * Aria Role type from roles
7
8
  */
8
- export type AriaRoleType = (typeof roles)[number];
9
+ export type AriaRoleType = AriaRole & (typeof roles)[number];
9
10
  /**
10
11
  * List of all possibles required message status
11
12
  */
@@ -91,6 +91,10 @@ export declare class MgForm {
91
91
  * Display input error if it exists.
92
92
  */
93
93
  displayError(): Promise<void>;
94
+ /**
95
+ * Reset form inputs values, validity and error state
96
+ */
97
+ reset(): Promise<void>;
94
98
  /**
95
99
  * Define required message based on mg-inputs required elements
96
100
  */
@@ -61,6 +61,10 @@ export declare class MgModal {
61
61
  * Emmited event when modal is hidden
62
62
  */
63
63
  componentHide: EventEmitter<void>;
64
+ /**
65
+ * Emmited event when modal is closed
66
+ */
67
+ componentClose: EventEmitter<void>;
64
68
  /***********
65
69
  * Handles *
66
70
  ***********/
@@ -52,6 +52,10 @@ export declare class MgPopover {
52
52
  * Emited event when display value change
53
53
  */
54
54
  displayChange: EventEmitter<HTMLMgPopoverElement['display']>;
55
+ /**
56
+ * Emmited event when popover is closed
57
+ */
58
+ componentClose: EventEmitter<void>;
55
59
  /**
56
60
  * Check if clicked outside of component
57
61
  * @param event - mouse event
@@ -0,0 +1,9 @@
1
+ import { AriaRole } from '../../../types';
2
+ /**
3
+ * List of all possibles roles
4
+ */
5
+ export declare const roles: readonly ["progressbar", "meter"];
6
+ /**
7
+ * Aria Role type from roles
8
+ */
9
+ export type AriaRoleType = AriaRole & (typeof roles)[number];
@@ -0,0 +1,47 @@
1
+ import { AriaRoleType } from './mg-progress.conf';
2
+ export declare class MgProgress {
3
+ /**************
4
+ * Decorators *
5
+ **************/
6
+ /**
7
+ * Define label
8
+ */
9
+ label: string;
10
+ watchLabel(newValue: MgProgress['label']): void;
11
+ /**
12
+ * Define progress role
13
+ * - `progressbar` to indicate a progress, such as loading or percent completion of a task
14
+ * - `meter` to indicate a graphical display of a numeric value that varies within a defined range
15
+ */
16
+ ariaRole?: AriaRoleType;
17
+ watchAriaRole(newValue: MgProgress['ariaRole']): void;
18
+ /**
19
+ * Define current value
20
+ * By default, it will be displayed as a percentage value.
21
+ * If you don’t specify the min and max props, the value should be a number within the range of 0 to 100.
22
+ */
23
+ value?: number;
24
+ watchValue(newValue: MgProgress['value']): void;
25
+ /**
26
+ * Define the minimum value in the range
27
+ */
28
+ min?: number;
29
+ watchMin(newValue: MgProgress['min']): void;
30
+ /**
31
+ * Define the maximum value in the range
32
+ */
33
+ max?: number;
34
+ watchMax(newValue: MgProgress['max']): void;
35
+ /*************
36
+ * Lifecycle *
37
+ *************/
38
+ /**
39
+ * Check if component props are well configured on init
40
+ */
41
+ componentWillLoad(): void;
42
+ /**
43
+ * Render
44
+ * @returns HTML Element
45
+ */
46
+ render(): HTMLElement;
47
+ }