maz-ui 3.4.5 → 3.6.1

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 (176) hide show
  1. package/components/MazAvatar.d.ts +156 -149
  2. package/components/MazAvatar.mjs +656 -0
  3. package/components/MazAvatar.umd.js +2 -0
  4. package/components/MazBackdrop.d.ts +89 -89
  5. package/components/MazBackdrop.mjs +140 -0
  6. package/components/MazBackdrop.umd.js +2 -0
  7. package/components/MazBadge.d.ts +73 -68
  8. package/components/MazBadge.mjs +61 -0
  9. package/components/MazBadge.umd.js +2 -0
  10. package/components/MazBottomSheet.d.ts +36 -29
  11. package/components/MazBottomSheet.mjs +553 -0
  12. package/components/MazBottomSheet.umd.js +2 -0
  13. package/components/MazBtn.d.ts +178 -171
  14. package/components/MazBtn.mjs +371 -0
  15. package/components/MazBtn.umd.js +2 -0
  16. package/components/MazCard.d.ts +194 -183
  17. package/components/MazCard.mjs +1390 -0
  18. package/components/MazCard.umd.js +2 -0
  19. package/components/MazCarousel.d.ts +24 -16
  20. package/components/MazCarousel.mjs +469 -0
  21. package/components/MazCarousel.umd.js +2 -0
  22. package/components/MazChart/includes.d.ts +11 -11
  23. package/components/MazChart.d.ts +114 -114
  24. package/components/MazChart.mjs +135 -0
  25. package/components/MazChart.umd.js +2 -0
  26. package/components/MazCheckbox.d.ts +54 -49
  27. package/components/MazCheckbox.mjs +86 -0
  28. package/components/MazCheckbox.umd.js +2 -0
  29. package/components/MazDialog.d.ts +40 -29
  30. package/components/MazDialog.mjs +566 -0
  31. package/components/MazDialog.umd.js +2 -0
  32. package/components/MazDialogPromise/use-maz-dialog-promise.d.ts +30 -30
  33. package/components/MazDialogPromise.d.ts +36 -28
  34. package/components/MazDialogPromise.mjs +692 -0
  35. package/components/MazDialogPromise.umd.js +2 -0
  36. package/components/MazDrawer.d.ts +69 -59
  37. package/components/MazDrawer.mjs +572 -0
  38. package/components/MazDrawer.umd.js +2 -0
  39. package/components/MazDropzone.d.ts +128 -128
  40. package/components/MazDropzone.mjs +369 -0
  41. package/components/MazDropzone.umd.js +2 -0
  42. package/components/MazGallery.d.ts +144 -144
  43. package/components/MazGallery.mjs +948 -0
  44. package/components/MazGallery.umd.js +2 -0
  45. package/components/MazIcon.d.ts +64 -66
  46. package/components/MazIcon.mjs +161 -0
  47. package/components/MazIcon.umd.js +2 -0
  48. package/components/MazInput.d.ts +276 -276
  49. package/components/MazInput.mjs +750 -0
  50. package/components/MazInput.umd.js +2 -0
  51. package/components/MazInputNumber.d.ts +65 -67
  52. package/components/MazInputNumber.mjs +857 -0
  53. package/components/MazInputNumber.umd.js +2 -0
  54. package/components/MazInputPrice.d.ts +69 -64
  55. package/components/MazInputPrice.mjs +889 -0
  56. package/components/MazInputPrice.umd.js +2 -0
  57. package/components/MazInputTags.d.ts +94 -96
  58. package/components/MazInputTags.mjs +904 -0
  59. package/components/MazInputTags.umd.js +2 -0
  60. package/components/MazLazyImg.d.ts +85 -80
  61. package/components/MazLazyImg.mjs +376 -0
  62. package/components/MazLazyImg.umd.js +2 -0
  63. package/components/MazPhoneNumberInput/constantes/locales.d.ts +12 -12
  64. package/components/MazPhoneNumberInput/types.d.ts +21 -21
  65. package/components/MazPhoneNumberInput/utils/countries-name-list-by-iso-code.d.ts +2 -2
  66. package/components/MazPhoneNumberInput/utils/index.d.ts +12 -12
  67. package/components/MazPhoneNumberInput.d.ts +253 -255
  68. package/components/MazPhoneNumberInput.mjs +1904 -0
  69. package/components/MazPhoneNumberInput.umd.js +2 -0
  70. package/components/MazPicker/MazPickerCalendar.vue.d.ts +135 -137
  71. package/components/MazPicker/MazPickerCalendarMonth/MazPickerCalendarDays.vue.d.ts +20 -22
  72. package/components/MazPicker/MazPickerCalendarMonth/MazPickerCalendarGrid.vue.d.ts +112 -114
  73. package/components/MazPicker/MazPickerCalendarMonth/MazPickerCalendarMonth.vue.d.ts +122 -124
  74. package/components/MazPicker/MazPickerCalendarSwitcher.vue.d.ts +36 -38
  75. package/components/MazPicker/MazPickerContainer.vue.d.ts +210 -212
  76. package/components/MazPicker/MazPickerFooter.vue.d.ts +16 -0
  77. package/components/MazPicker/MazPickerHeader.vue.d.ts +82 -84
  78. package/components/MazPicker/MazPickerMonthSwitcher.vue.d.ts +41 -43
  79. package/components/MazPicker/MazPickerShortcuts.vue.d.ts +60 -62
  80. package/components/MazPicker/MazPickerTime.vue.d.ts +127 -129
  81. package/components/MazPicker/MazPickerYearSwitcher.vue.d.ts +33 -35
  82. package/components/MazPicker/types.d.ts +15 -15
  83. package/components/MazPicker/utils.d.ts +54 -54
  84. package/components/MazPicker.d.ts +311 -313
  85. package/components/MazPicker.mjs +2942 -0
  86. package/components/MazPicker.umd.js +2 -0
  87. package/components/MazRadioButtons.d.ts +77 -69
  88. package/components/MazRadioButtons.mjs +80 -0
  89. package/components/MazRadioButtons.umd.js +2 -0
  90. package/components/MazSelect.d.ts +185 -176
  91. package/components/MazSelect.mjs +1082 -0
  92. package/components/MazSelect.umd.js +2 -0
  93. package/components/MazSlider/utils.d.ts +15 -15
  94. package/components/MazSlider.d.ts +94 -96
  95. package/components/MazSlider.mjs +377 -0
  96. package/components/MazSlider.umd.js +2 -0
  97. package/components/MazSpinner.d.ts +28 -30
  98. package/components/MazSpinner.mjs +59 -0
  99. package/components/MazSpinner.umd.js +2 -0
  100. package/components/MazStepper.d.ts +71 -73
  101. package/components/MazStepper.mjs +227 -0
  102. package/components/MazStepper.umd.js +2 -0
  103. package/components/MazSwitch.d.ts +54 -56
  104. package/components/MazSwitch.mjs +61 -0
  105. package/components/MazSwitch.umd.js +2 -0
  106. package/components/MazTabsBar.d.ts +47 -49
  107. package/components/MazTabsBar.mjs +470 -0
  108. package/components/MazTabsBar.umd.js +2 -0
  109. package/components/MazTabsContent.d.ts +21 -16
  110. package/components/MazTabsContent.mjs +89 -0
  111. package/components/MazTabsContent.umd.js +2 -0
  112. package/components/MazTabsContentItem.d.ts +19 -14
  113. package/components/MazTabsContentItem.mjs +61 -0
  114. package/components/MazTabsContentItem.umd.js +2 -0
  115. package/components/MazTextarea/textarea-autogrow.d.ts +9 -9
  116. package/components/MazTextarea.d.ts +123 -125
  117. package/components/MazTextarea.mjs +260 -0
  118. package/components/MazTextarea.umd.js +2 -0
  119. package/components/MazTransitionExpand.d.ts +9 -4
  120. package/components/MazTransitionExpand.mjs +62 -0
  121. package/components/MazTransitionExpand.umd.js +2 -0
  122. package/components/index.d.ts +33 -34
  123. package/components/index.mjs +35 -0
  124. package/components/index.umd.js +35 -0
  125. package/components/no_photo-410a8f01.mjs +4 -0
  126. package/components/types.d.ts +17 -17
  127. package/css/main.css +1 -1
  128. package/maz-ui.d.ts +234 -231
  129. package/modules/maz-ui.mjs +1892 -0
  130. package/modules/maz-ui.umd.js +2 -0
  131. package/modules/no_photo-410a8f01.mjs +4 -0
  132. package/package.json +45 -54
  133. package/tailwindcss/tailwind.config.js +6 -7
  134. package/tailwindcss/utils/colors.js +1 -3
  135. package/tailwindcss/variables/breakpoints.js +1 -2
  136. package/tailwindcss/variables/utilities.js +1 -2
  137. package/tailwindcss/variables/z-indexes.js +1 -1
  138. package/components/MazArrowIcon.d.ts +0 -43
  139. package/components/MazArrowIcon.js +0 -1
  140. package/components/MazAvatar.js +0 -3
  141. package/components/MazBackdrop.js +0 -3
  142. package/components/MazBadge.js +0 -1
  143. package/components/MazBottomSheet.js +0 -3
  144. package/components/MazBtn.js +0 -3
  145. package/components/MazCard.js +0 -3
  146. package/components/MazCarousel.js +0 -3
  147. package/components/MazChart.js +0 -1
  148. package/components/MazCheckbox.js +0 -1
  149. package/components/MazDialog.js +0 -3
  150. package/components/MazDialogPromise.js +0 -3
  151. package/components/MazDrawer.js +0 -3
  152. package/components/MazDropzone.js +0 -3
  153. package/components/MazGallery.js +0 -3
  154. package/components/MazIcon.js +0 -3
  155. package/components/MazInput.js +0 -3
  156. package/components/MazInputNumber.js +0 -3
  157. package/components/MazInputPrice.js +0 -3
  158. package/components/MazInputTags.js +0 -3
  159. package/components/MazLazyImg.js +0 -3
  160. package/components/MazPhoneNumberInput.js +0 -3
  161. package/components/MazPicker.js +0 -3
  162. package/components/MazRadioButtons.js +0 -1
  163. package/components/MazSelect.js +0 -3
  164. package/components/MazSlider.js +0 -3
  165. package/components/MazSpinner.js +0 -1
  166. package/components/MazStepper.js +0 -1
  167. package/components/MazSwitch.js +0 -1
  168. package/components/MazTabsBar.js +0 -3
  169. package/components/MazTabsContent.js +0 -1
  170. package/components/MazTabsContentItem.js +0 -3
  171. package/components/MazTextarea.js +0 -1
  172. package/components/MazTransitionExpand.js +0 -1
  173. package/components/index.js +0 -36
  174. package/components/no_photo-a72545e4.js +0 -1
  175. package/modules/index.js +0 -3
  176. package/modules/no_photo-a72545e4.js +0 -1
@@ -0,0 +1,889 @@
1
+ (function(){"use strict";try{if(typeof document!="undefined"){var o=document.createElement("style");o.appendChild(document.createTextNode("@-webkit-keyframes maz-spin-503fe527{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}@keyframes maz-spin-503fe527{to{-webkit-transform:rotate(360deg);transform:rotate(360deg)}}.m-spinner[data-v-503fe527]{-webkit-animation:maz-spin-503fe527 1s linear infinite;animation:maz-spin-503fe527 1s linear infinite;fill:currentColor;color:var(--maz-color-white);margin:0!important}.m-spinner--primary[data-v-503fe527]{color:var(--maz-color-primary)}.m-spinner--secondary[data-v-503fe527]{color:var(--maz-color-secondary)}.m-spinner--info[data-v-503fe527]{color:var(--maz-color-info)}.m-spinner--warning[data-v-503fe527]{color:var(--maz-color-warning)}.m-spinner--danger[data-v-503fe527]{color:var(--maz-color-danger)}.m-spinner--success[data-v-503fe527]{color:var(--maz-color-success)}.m-spinner--black[data-v-503fe527]{color:var(--maz-color-black)}.m-spinner--white[data-v-503fe527],.m-spinner--transparent[data-v-503fe527]{color:var(--maz-color-white)}.m-btn[data-v-7673d151]{border-width:var(--maz-border-width);border-style:solid;border-color:transparent;text-align:center;font-size:1rem;line-height:1.5rem;color:var(--maz-color-text)}.m-btn span[data-v-7673d151]{line-height:1}.m-btn__icon-left[data-v-7673d151]{margin-right:.5rem;margin-left:-.25rem;line-height:1}.m-btn__icon-right[data-v-7673d151]{margin-left:.5rem;margin-right:-.25rem;line-height:1}.m-btn.--cursor-pointer[data-v-7673d151]{cursor:pointer}.m-btn.--cursor-default[data-v-7673d151]{cursor:default}.m-btn.--is-link[data-v-7673d151]{display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;background-color:transparent;outline:2px solid transparent;outline-offset:2px;-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;-webkit-transition-duration:.2s;transition-duration:.2s;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.m-btn.--is-link[data-v-7673d151]:not(.--no-leading){line-height:2.25rem}.m-btn.--is-link[data-v-7673d151]:not(:disabled):hover:not(.--no-underline),.m-btn.--is-link[data-v-7673d151]:not(:disabled):focus:not(.--no-underline){text-decoration-line:underline}.m-btn.--is-link.--secondary[data-v-7673d151]{color:var(--maz-color-secondary)}.m-btn.--is-link.--info[data-v-7673d151]{color:var(--maz-color-info)}.m-btn.--is-link.--warning[data-v-7673d151]{color:var(--maz-color-warning-600)}.m-btn.--is-link.--danger[data-v-7673d151]{color:var(--maz-color-danger-600)}.m-btn.--is-link.--success[data-v-7673d151]{color:var(--maz-color-success-600)}.m-btn.--is-link.--white[data-v-7673d151]{color:var(--maz-color-white)}.m-btn.--is-link.--black[data-v-7673d151]{color:var(--maz-color-black)}.m-btn.--is-button[data-v-7673d151]{position:relative;display:-webkit-inline-box;display:-ms-inline-flexbox;display:inline-flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;overflow:hidden;border-radius:var(--maz-border-radius);border-color:transparent;background-color:transparent;font-weight:500;text-decoration-line:none;-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter,-webkit-box-shadow,-webkit-transform,-webkit-filter,-webkit-backdrop-filter;-webkit-transition-duration:.3s;transition-duration:.3s;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1)}.m-btn.--is-button.--rounded[data-v-7673d151]{border-radius:9999px}.m-btn.--is-button.--xl[data-v-7673d151]{padding:1.325rem 2rem;font-size:1.25rem;line-height:1.75rem}.m-btn.--is-button.--lg[data-v-7673d151]{padding:1rem 1.5rem;font-size:1.125rem;line-height:1.75rem}.m-btn.--is-button.--md[data-v-7673d151]{padding:.88rem 1rem;font-size:1rem;line-height:1.5rem}.m-btn.--is-button.--sm[data-v-7673d151]{padding:.625rem .75rem;font-size:.875rem;line-height:1.25rem}.m-btn.--is-button.--xs[data-v-7673d151]{padding:.3rem .5rem;font-size:.875rem;line-height:1.25rem}.m-btn.--is-button.--mini[data-v-7673d151]{padding:.2rem .25rem;font-size:.75rem;line-height:1rem}.m-btn.--is-button.--icon[data-v-7673d151]{padding-top:.5rem;padding-bottom:.5rem}.m-btn.--is-button[data-v-7673d151]{-webkit-transition:background .3s ease-in-out 0ms,color .3s ease-in-out 0ms;transition:background .3s ease-in-out 0ms,color .3s ease-in-out 0ms}.m-btn.--is-button[data-v-7673d151]:not(.--disabled):hover,.m-btn.--is-button[data-v-7673d151]:not(.--disabled):focus{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity))}.m-btn.--is-button.--fab[data-v-7673d151]{display:-webkit-box;display:-ms-flexbox;display:flex;height:3rem;width:3rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;border-radius:9999px;padding:0}.m-btn.--is-button.--fab[data-v-7673d151]:not(.--no-elevation){-webkit-box-shadow:0 5px 10px 0 hsla(0,0%,0%,.05);box-shadow:0 5px 10px #0000000d}.m-btn.--is-button.--block[data-v-7673d151]{width:100%}.m-btn.--is-button.--primary[data-v-7673d151]{background-color:var(--maz-color-primary);color:var(--maz-color-primary-contrast)}.m-btn.--is-button.--primary[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--primary[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-primary-600)}.m-btn.--is-button.--secondary[data-v-7673d151]{background-color:var(--maz-color-secondary);color:var(--maz-color-secondary-contrast)}.m-btn.--is-button.--secondary[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--secondary[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-secondary-600)}.m-btn.--is-button.--info[data-v-7673d151]{background-color:var(--maz-color-info);color:var(--maz-color-info-contrast)}.m-btn.--is-button.--info[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--info[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-info-600)}.m-btn.--is-button.--success[data-v-7673d151]{background-color:var(--maz-color-success);color:var(--maz-color-success-contrast)}.m-btn.--is-button.--success[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--success[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-success-600)}.m-btn.--is-button.--warning[data-v-7673d151]{background-color:var(--maz-color-warning);color:var(--maz-color-warning-contrast)}.m-btn.--is-button.--warning[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--warning[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-warning-600)}.m-btn.--is-button.--danger[data-v-7673d151]{background-color:var(--maz-color-danger);color:var(--maz-color-white)}.m-btn.--is-button.--danger[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--danger[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-danger-600)}.m-btn.--is-button.--white[data-v-7673d151]{background-color:var(--maz-color-white);color:var(--maz-color-white-contrast)}.m-btn.--is-button.--white[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--white[data-v-7673d151]:not(:disabled):focus{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity))}.m-btn.--is-button.--black[data-v-7673d151]{background-color:var(--maz-color-black);color:var(--maz-color-black-contrast)}.m-btn.--is-button.--black[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--black[data-v-7673d151]:not(:disabled):focus{--tw-bg-opacity: 1;background-color:rgb(31 41 55 / var(--tw-bg-opacity))}.m-btn.--is-button.--transparent[data-v-7673d151]{background-color:transparent}.m-btn.--is-button.--transparent[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--transparent[data-v-7673d151]:not(:disabled):focus{background-color:#0000001f}.m-btn.--is-button.--primary-outline[data-v-7673d151]{border-color:var(--maz-color-primary);color:var(--maz-color-primary)}.m-btn.--is-button.--primary-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--primary-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-primary);color:var(--maz-color-primary-contrast)}.m-btn.--is-button.--secondary-outline[data-v-7673d151]{border-color:var(--maz-color-secondary);color:var(--maz-color-secondary)}.m-btn.--is-button.--secondary-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--secondary-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-secondary);color:var(--maz-color-white)}.m-btn.--is-button.--info-outline[data-v-7673d151]{border-color:var(--maz-color-info);color:var(--maz-color-info)}.m-btn.--is-button.--info-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--info-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-info);color:var(--maz-color-white)}.m-btn.--is-button.--success-outline[data-v-7673d151]{border-color:var(--maz-color-success);color:var(--maz-color-success)}.m-btn.--is-button.--success-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--success-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-success);color:var(--maz-color-white)}.m-btn.--is-button.--danger-outline[data-v-7673d151]{border-color:var(--maz-color-danger);color:var(--maz-color-danger)}.m-btn.--is-button.--danger-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--danger-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-danger);color:var(--maz-color-white)}.m-btn.--is-button.--warning-outline[data-v-7673d151]{border-color:var(--maz-color-warning);color:var(--maz-color-warning)}.m-btn.--is-button.--warning-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--warning-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-warning);color:var(--maz-color-white)}.m-btn.--is-button.--white-outline[data-v-7673d151]{border-color:var(--maz-color-white);color:var(--maz-color-white)}.m-btn.--is-button.--white-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--white-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-white);color:var(--maz-color-white)}.m-btn.--is-button.--black-outline[data-v-7673d151]{border-color:var(--maz-color-black);color:var(--maz-color-black)}.m-btn.--is-button.--black-outline[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--black-outline[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-black);color:var(--maz-color-black)}.m-btn.--is-button.--primary-pastel[data-v-7673d151]{background-color:var(--maz-color-primary-50);color:var(--maz-color-primary)}.m-btn.--is-button.--primary-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--primary-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-primary);color:var(--maz-color-primary-contrast)}.m-btn.--is-button.--secondary-pastel[data-v-7673d151]{background-color:var(--maz-color-secondary-50);color:var(--maz-color-secondary)}.m-btn.--is-button.--secondary-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--secondary-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-secondary);color:var(--maz-color-secondary-contrast)}.m-btn.--is-button.--info-pastel[data-v-7673d151]{background-color:var(--maz-color-info-50);color:var(--maz-color-info)}.m-btn.--is-button.--info-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--info-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-info);color:var(--maz-color-info-contrast)}.m-btn.--is-button.--success-pastel[data-v-7673d151]{background-color:var(--maz-color-success-50);color:var(--maz-color-success)}.m-btn.--is-button.--success-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--success-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-success);color:var(--maz-color-success-contrast)}.m-btn.--is-button.--danger-pastel[data-v-7673d151]{background-color:var(--maz-color-danger-50);color:var(--maz-color-danger)}.m-btn.--is-button.--danger-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--danger-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-danger);color:var(--maz-color-danger-contrast)}.m-btn.--is-button.--warning-pastel[data-v-7673d151]{background-color:var(--maz-color-warning-50);color:var(--maz-color-warning)}.m-btn.--is-button.--warning-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--warning-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-warning);color:var(--maz-color-warning-contrast)}.m-btn.--is-button.--white-pastel[data-v-7673d151]{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity));color:var(--maz-color-white)}.m-btn.--is-button.--white-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--white-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-white);color:var(--maz-color-white-contrast)}.m-btn.--is-button.--black-pastel[data-v-7673d151]{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity));color:var(--maz-color-black)}.m-btn.--is-button.--black-pastel[data-v-7673d151]:not(:disabled):hover,.m-btn.--is-button.--black-pastel[data-v-7673d151]:not(:disabled):focus{background-color:var(--maz-color-black);color:var(--maz-color-black-contrast)}.m-btn.--is-button.--disabled[data-v-7673d151]{cursor:not-allowed;background-color:var(--maz-color-bg-lighter);--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity))}.m-btn.--is-button.--no-padding[data-v-7673d151]{padding:0}.m-btn.--is-button .m-btn__loading-wrapper[data-v-7673d151]{position:absolute;top:0px;right:0px;bottom:0px;left:0px;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.m-btn.--is-button .m-btn__loading-wrapper.--primary[data-v-7673d151]{background-color:var(--maz-color-primary)}.m-btn.--is-button .m-btn__loading-wrapper.--secondary[data-v-7673d151]{background-color:var(--maz-color-secondary)}.m-btn.--is-button .m-btn__loading-wrapper.--info[data-v-7673d151]{background-color:var(--maz-color-info)}.m-btn.--is-button .m-btn__loading-wrapper.--warning[data-v-7673d151]{background-color:var(--maz-color-warning)}.m-btn.--is-button .m-btn__loading-wrapper.--success[data-v-7673d151]{background-color:var(--maz-color-success)}.m-btn.--is-button .m-btn__loading-wrapper.--danger[data-v-7673d151]{background-color:var(--maz-color-danger)}.m-btn.--is-button .m-btn__loading-wrapper.--white[data-v-7673d151]{background-color:var(--maz-color-white)}.m-btn.--is-button .m-btn__loading-wrapper.--black[data-v-7673d151]{background-color:var(--maz-color-black)}.m-input[data-v-8d171d05]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-orient:vertical;-webkit-box-direction:normal;-ms-flex-direction:column;flex-direction:column}.m-input.--xl[data-v-8d171d05]{height:4rem}.m-input.--xl .m-input-input[data-v-8d171d05],.m-input.--xl .m-input-label[data-v-8d171d05]{font-size:1.25rem;line-height:1.75rem}.m-input.--lg[data-v-8d171d05]{height:3.5rem}.m-input.--lg .m-input-input[data-v-8d171d05],.m-input.--lg .m-input-label[data-v-8d171d05]{font-size:1.125rem;line-height:1.75rem}.m-input.--md[data-v-8d171d05]{height:3rem}.m-input.--md .m-input-input[data-v-8d171d05],.m-input.--md .m-input-label[data-v-8d171d05]{font-size:1rem;line-height:1.5rem}.m-input.--sm[data-v-8d171d05]{height:2.5rem}.m-input.--sm .m-input-input[data-v-8d171d05],.m-input.--sm .m-input-label[data-v-8d171d05]{font-size:.875rem;line-height:1.25rem}.m-input.--xs[data-v-8d171d05]{height:2rem}.m-input.--xs .m-input-input[data-v-8d171d05],.m-input.--xs .m-input-label[data-v-8d171d05]{font-size:.75rem;line-height:1rem}.m-input.--mini[data-v-8d171d05]{height:1.5rem}.m-input.--mini .m-input-input[data-v-8d171d05],.m-input.--mini .m-input-label[data-v-8d171d05]{font-size:.75rem;line-height:1rem}.m-input-wrapper[data-v-8d171d05]{position:relative;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 0%;flex:1 1 0%;overflow:hidden;border-width:var(--maz-border-width);border-style:solid;background-color:var(--maz-color-bg);-webkit-transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;-webkit-transition-timing-function:cubic-bezier(.4,0,.2,1);transition-timing-function:cubic-bezier(.4,0,.2,1);-webkit-transition-duration:.3s;transition-duration:.3s}.m-input-wrapper.--default-border[data-v-8d171d05]{--tw-border-opacity: 1;border-color:rgb(229 231 235 / var(--tw-border-opacity))}.m-input-wrapper-input[data-v-8d171d05]{position:relative;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-flex:1;-ms-flex:1 1 0%;flex:1 1 0%;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.m-input-wrapper-right[data-v-8d171d05],.m-input-wrapper-left[data-v-8d171d05]{position:relative;z-index:1;display:-webkit-box;display:-ms-flexbox;display:flex}.m-input-wrapper-right[data-v-8d171d05]>:not([hidden])~:not([hidden]),.m-input-wrapper-left[data-v-8d171d05]>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.25rem * var(--tw-space-x-reverse));margin-left:calc(.25rem * calc(1 - var(--tw-space-x-reverse)))}.m-input-wrapper-right[data-v-8d171d05],.m-input-wrapper-left[data-v-8d171d05]{padding-top:.25rem;padding-bottom:.25rem;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center}.m-input-wrapper-right[data-v-8d171d05]{padding-right:.5rem}.m-input-wrapper-left[data-v-8d171d05]{padding-left:.5rem}.m-input-input[data-v-8d171d05]{margin:0;display:block;height:100%;width:100%;-webkit-appearance:none;-moz-appearance:none;appearance:none;border-style:none;background-color:transparent;padding-top:0;padding-bottom:0;padding-left:1rem;padding-right:1rem;color:var(--maz-color-text);--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;-webkit-box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow);outline:2px solid transparent;outline-offset:2px}.m-input-input[data-v-8d171d05]:-webkit-autofill,.m-input-input[data-v-8d171d05]:-webkit-autofill:hover,.m-input-input[data-v-8d171d05]:-webkit-autofill:focus{-webkit-text-fill-color:var(--maz-color-text);-webkit-box-shadow:0 0 0 1000px var(--maz-color-primary-50) inset;box-shadow:0 0 0 1000px var(--maz-color-primary-50) inset;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}.m-input-label[data-v-8d171d05]{pointer-events:none;position:absolute;display:block;width:-webkit-max-content;width:-moz-max-content;width:max-content;-webkit-transform-origin:top left;transform-origin:top left;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;left:.75rem;line-height:1.5rem;display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;-webkit-box-pack:center;-ms-flex-pack:center;justify-content:center;-webkit-transition:-webkit-transform .2s cubic-bezier(0,0,.2,1) 0ms;transition:-webkit-transform .2s cubic-bezier(0,0,.2,1) 0ms;transition:transform .2s cubic-bezier(0,0,.2,1) 0ms;transition:transform .2s cubic-bezier(0,0,.2,1) 0ms,-webkit-transform .2s cubic-bezier(0,0,.2,1) 0ms}.m-input[data-v-8d171d05]:not(.--has-state){color:var(--maz-color-muted)}.m-input.--has-z-2 .m-input-wrapper[data-v-8d171d05]{z-index:2}.m-input.--should-up .m-input-label[data-v-8d171d05]{-webkit-transform:scale(.8) translateY(-.65em);transform:scale(.8) translateY(-.65em)}.m-input.--is-readonly .m-input-input[data-v-8d171d05]{cursor:default}.m-input.--is-disabled .m-input-wrapper[data-v-8d171d05]{background-color:var(--maz-color-bg-lighter);color:var(--maz-color-muted)}.m-input.--is-disabled .m-input-input[data-v-8d171d05]{cursor:not-allowed;color:var(--maz-color-muted)}.m-input.--is-focused .m-input-wrapper[data-v-8d171d05]{z-index:3}.m-input.--has-label .m-input-input[data-v-8d171d05]{padding-left:.75rem;padding-right:.75rem;padding-top:1rem}html.dark .m-input:not(.--is-disabled) .m-input-wrapper[data-v-8d171d05]{background-color:var(--maz-color-bg-light)}html.dark .m-input:not(.--is-focused,.--has-state) .m-input-wrapper.--default-border[data-v-8d171d05]{border-color:var(--maz-color-bg-lighter)}html.dark .m-input-input[data-v-8d171d05]:-webkit-autofill,html.dark .m-input-input[data-v-8d171d05]:-webkit-autofill:hover,html.dark .m-input-input[data-v-8d171d05]:-webkit-autofill:focus{-webkit-text-fill-color:var(--maz-color-text);-webkit-box-shadow:0 0 0 1000px var(--maz-color-bg-lighter) inset;box-shadow:0 0 0 1000px var(--maz-color-bg-lighter) inset;-webkit-transition:background-color 5000s ease-in-out 0s;transition:background-color 5000s ease-in-out 0s}")),document.head.appendChild(o)}}catch(t){console.error("vite-plugin-css-injected-by-js",t)}})();
2
+ import { computed, defineComponent, openBlock, createElementBlock, normalizeClass, pushScopeId, popScopeId, createElementVNode, inject, ref, onMounted, watchEffect, mergeProps, createCommentVNode, nextTick, useAttrs, useSlots, createBlock, resolveDynamicComponent, unref, withCtx, renderSlot, createVNode, getCurrentInstance, resolveComponent, withDirectives, toHandlers, vModelDynamic, createTextVNode, toDisplayString, withModifiers, onBeforeMount, isRef } from "vue";
3
+ const DEFAULT_OPTIONS = {
4
+ style: "currency",
5
+ minimumFractionDigits: 2,
6
+ round: false
7
+ };
8
+ const getFormattedCurrency = (number, locale, options) => {
9
+ let numberToFormat = Number(number);
10
+ if (options.round) {
11
+ numberToFormat = Math.floor(numberToFormat);
12
+ options.minimumFractionDigits = 0;
13
+ }
14
+ return new Intl.NumberFormat(locale, options).format(numberToFormat);
15
+ };
16
+ const validRequiredAttributes = (number, locale, options) => {
17
+ if (number === void 0)
18
+ throw new TypeError(
19
+ "[maz-ui](FilterCurrency) The `number` attribute is required."
20
+ );
21
+ if (locale === void 0)
22
+ throw new TypeError(
23
+ "[maz-ui](FilterCurrency) The `locale` attribute is required."
24
+ );
25
+ if (typeof locale !== "string")
26
+ throw new TypeError(
27
+ "[maz-ui](FilterCurrency) The `locale` attribute must be a string."
28
+ );
29
+ if (options.currency === void 0)
30
+ throw new TypeError(
31
+ "[maz-ui](FilterCurrency) The `options.currency` attribute is required."
32
+ );
33
+ };
34
+ const currency = (number, locale, options) => {
35
+ const options_ = {
36
+ ...DEFAULT_OPTIONS,
37
+ ...options
38
+ };
39
+ validRequiredAttributes(number, locale, options_);
40
+ try {
41
+ return getFormattedCurrency(number, locale, options_);
42
+ } catch (error) {
43
+ throw new Error(`[maz-ui](FilterCurrency) ${error}`);
44
+ }
45
+ };
46
+ function debounce(fn, wait = 0, callFirst = false) {
47
+ let timeout;
48
+ let debouncedFn;
49
+ const clear = function() {
50
+ if (timeout) {
51
+ clearTimeout(timeout);
52
+ debouncedFn = void 0;
53
+ timeout = void 0;
54
+ }
55
+ };
56
+ const flush = function() {
57
+ const call = debouncedFn;
58
+ clear();
59
+ if (call) {
60
+ call();
61
+ }
62
+ };
63
+ const debounceWrapper = function(...args) {
64
+ if (!wait) {
65
+ return fn.apply(this, args);
66
+ }
67
+ const context = this;
68
+ const callNow = callFirst && !timeout;
69
+ clear();
70
+ debouncedFn = function() {
71
+ fn.apply(context, args);
72
+ };
73
+ timeout = setTimeout(function() {
74
+ timeout = void 0;
75
+ if (!callNow) {
76
+ const call = debouncedFn;
77
+ debouncedFn = void 0;
78
+ if (call !== void 0)
79
+ return call();
80
+ }
81
+ }, wait);
82
+ if (callNow) {
83
+ return debouncedFn();
84
+ }
85
+ };
86
+ debounceWrapper.cancel = clear;
87
+ debounceWrapper.flush = flush;
88
+ return debounceWrapper;
89
+ }
90
+ const useInstanceUniqId = ({
91
+ componentName,
92
+ instance,
93
+ providedId
94
+ }) => {
95
+ const instanceId = computed(
96
+ () => providedId ?? `${componentName}-${instance == null ? void 0 : instance.uid}`
97
+ );
98
+ return {
99
+ instanceId
100
+ };
101
+ };
102
+ const _withScopeId = (n) => (pushScopeId("data-v-503fe527"), n = n(), popScopeId(), n);
103
+ const _hoisted_1$4 = ["width", "height"];
104
+ const _hoisted_2$2 = /* @__PURE__ */ _withScopeId(() => /* @__PURE__ */ createElementVNode("path", { d: "M43.935,25.145c0-10.318-8.364-18.683-18.683-18.683c-10.318,0-18.683,8.365-18.683,18.683h4.068c0-8.071,6.543-14.615,14.615-14.615c8.072,0,14.615,6.543,14.615,14.615H43.935z" }, null, -1));
105
+ const _hoisted_3$2 = [
106
+ _hoisted_2$2
107
+ ];
108
+ const _sfc_main$4 = /* @__PURE__ */ defineComponent({
109
+ __name: "MazSpinner",
110
+ props: {
111
+ size: { type: String, default: "2em" },
112
+ color: {
113
+ type: String,
114
+ default: "primary",
115
+ validator: (value) => {
116
+ return [
117
+ "info",
118
+ "white",
119
+ "success",
120
+ "warning",
121
+ "danger",
122
+ "primary",
123
+ "black",
124
+ "secondary",
125
+ "transparent"
126
+ ].includes(value);
127
+ }
128
+ }
129
+ },
130
+ setup(__props) {
131
+ return (_ctx, _cache) => {
132
+ return openBlock(), createElementBlock("svg", {
133
+ width: __props.size,
134
+ height: __props.size,
135
+ version: "1.1",
136
+ xmlns: "http://www.w3.org/2000/svg",
137
+ x: "0px",
138
+ y: "0px",
139
+ viewBox: "0 0 50 50",
140
+ "xml:space": "preserve",
141
+ class: normalizeClass(["m-spinner", `m-spinner--${__props.color}`]),
142
+ style: { "enable-background": "new 0 0 50 50" }
143
+ }, _hoisted_3$2, 10, _hoisted_1$4);
144
+ };
145
+ }
146
+ });
147
+ const MazSpinner_vue_vue_type_style_index_0_scoped_503fe527_lang = "";
148
+ const _export_sfc = (sfc, props) => {
149
+ const target = sfc.__vccOpts || sfc;
150
+ for (const [key, val] of props) {
151
+ target[key] = val;
152
+ }
153
+ return target;
154
+ };
155
+ const MazSpinner = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["__scopeId", "data-v-503fe527"]]);
156
+ function injectStrict(key, fallback) {
157
+ const resolved = inject(key, fallback);
158
+ if (!resolved) {
159
+ throw new Error(`[maz-ui](injectStrict) Could not resolve ${key}`);
160
+ }
161
+ return resolved;
162
+ }
163
+ const _hoisted_1$3 = ["innerHTML"];
164
+ const _sfc_main$3 = /* @__PURE__ */ defineComponent({
165
+ __name: "MazIcon",
166
+ props: {
167
+ src: { type: String, default: void 0 },
168
+ path: { type: String, default: void 0 },
169
+ name: { type: String, default: void 0 },
170
+ size: { type: String, default: "1.5rem" },
171
+ title: { type: String, default: void 0 },
172
+ transformSource: {
173
+ type: Function,
174
+ default: (svg) => svg
175
+ }
176
+ },
177
+ emits: ["loaded", "unloaded", "error"],
178
+ setup(__props, { emit: emits }) {
179
+ const props = __props;
180
+ const cache = {};
181
+ const svgElSource = ref();
182
+ const svgElem = ref();
183
+ const getMazIconPath = () => {
184
+ try {
185
+ return injectStrict("mazIconPath");
186
+ } catch {
187
+ return void 0;
188
+ }
189
+ };
190
+ const iconPath = computed(() => props.path ?? getMazIconPath());
191
+ const fullSrc = computed(() => {
192
+ if (props.src) {
193
+ return props.src;
194
+ } else if (iconPath.value) {
195
+ return `${iconPath.value}/${props.name}.svg`;
196
+ } else {
197
+ return `/${props.name}.svg`;
198
+ }
199
+ });
200
+ onMounted(() => {
201
+ if (!props.name && !props.src) {
202
+ console.error(
203
+ '[maz-ui](MazIcon) you should provide "name" or "src" as prop'
204
+ );
205
+ }
206
+ });
207
+ const setTitle = (svg, title) => {
208
+ const titleTags = svg.querySelectorAll("title");
209
+ if (titleTags.length > 0) {
210
+ titleTags[0].textContent = title;
211
+ } else {
212
+ const titleEl = document.createElementNS(
213
+ "http://www.w3.org/2000/svg",
214
+ "title"
215
+ );
216
+ titleEl.textContent = title;
217
+ svg.append(titleEl);
218
+ }
219
+ };
220
+ const filterAttrs = (attrs) => {
221
+ return Object.keys(attrs).reduce((result, key) => {
222
+ if (attrs[key] !== false && attrs[key] !== null && attrs[key] !== void 0) {
223
+ result[key] = attrs[key];
224
+ }
225
+ return result;
226
+ }, {});
227
+ };
228
+ const getSvgAttrs = (svgEl) => {
229
+ const svgAttrs = {};
230
+ const attrs = svgEl.attributes;
231
+ if (!attrs) {
232
+ return svgAttrs;
233
+ }
234
+ for (let i = attrs.length - 1; i >= 0; i--) {
235
+ svgAttrs[attrs[i].name] = attrs[i].value;
236
+ }
237
+ return svgAttrs;
238
+ };
239
+ const getSvgContent = (svgEl) => {
240
+ let svgElNode = svgEl.cloneNode(true);
241
+ svgElNode = props.transformSource(svgEl);
242
+ if (props.title) {
243
+ setTitle(svgElNode, props.title);
244
+ }
245
+ return svgEl.innerHTML;
246
+ };
247
+ const getSource = async (src) => {
248
+ if (!cache[src]) {
249
+ cache[src] = download(src);
250
+ }
251
+ try {
252
+ svgElSource.value = await cache[src];
253
+ await nextTick();
254
+ emits("loaded", svgElem.value);
255
+ } catch (error) {
256
+ if (svgElSource.value) {
257
+ svgElSource.value = void 0;
258
+ emits("unloaded");
259
+ }
260
+ delete cache[src];
261
+ emits("error", error);
262
+ }
263
+ };
264
+ const download = (url) => {
265
+ return new Promise((resolve, reject) => {
266
+ const request = new XMLHttpRequest();
267
+ request.open("GET", url, true);
268
+ request.addEventListener("load", () => {
269
+ if (request.status >= 200 && request.status < 400) {
270
+ try {
271
+ const parser = new DOMParser();
272
+ const result = parser.parseFromString(
273
+ request.responseText,
274
+ "text/xml"
275
+ );
276
+ let svgEl = result.querySelectorAll("svg")[0];
277
+ if (svgEl) {
278
+ svgEl = props.transformSource(svgEl);
279
+ resolve(svgEl);
280
+ } else {
281
+ reject(new Error('Loaded file is not valid SVG"'));
282
+ }
283
+ } catch (error) {
284
+ reject(error);
285
+ }
286
+ } else {
287
+ reject(new Error("Error loading SVG"));
288
+ }
289
+ });
290
+ request.addEventListener("error", () => reject());
291
+ request.send();
292
+ });
293
+ };
294
+ watchEffect(() => getSource(fullSrc.value));
295
+ return (_ctx, _cache) => {
296
+ return svgElSource.value ? (openBlock(), createElementBlock("svg", mergeProps({
297
+ key: 0,
298
+ ref_key: "svgElem",
299
+ ref: svgElem,
300
+ width: "1em",
301
+ height: "1em"
302
+ }, {
303
+ ...getSvgAttrs(svgElSource.value),
304
+ ...filterAttrs(_ctx.$attrs)
305
+ }, {
306
+ style: `font-size: ${__props.size}`,
307
+ innerHTML: getSvgContent(svgElSource.value)
308
+ }), null, 16, _hoisted_1$3)) : createCommentVNode("", true);
309
+ };
310
+ }
311
+ });
312
+ const _hoisted_1$2 = {
313
+ key: 0,
314
+ class: "m-btn__icon-left maz-flex maz-flex-center"
315
+ };
316
+ const _hoisted_2$1 = { class: "maz-flex maz-flex-center" };
317
+ const _hoisted_3$1 = {
318
+ key: 1,
319
+ class: "m-btn__icon-right maz-flex maz-flex-center"
320
+ };
321
+ const _sfc_main$2 = /* @__PURE__ */ defineComponent({
322
+ __name: "MazBtn",
323
+ props: {
324
+ variant: {
325
+ type: String,
326
+ default: "button",
327
+ validator: (value) => {
328
+ return ["button", "link"].includes(value);
329
+ }
330
+ },
331
+ size: {
332
+ type: String,
333
+ default: "md",
334
+ validator: (value) => {
335
+ return ["mini", "xs", "sm", "md", "lg", "xl"].includes(value);
336
+ }
337
+ },
338
+ color: {
339
+ type: String,
340
+ default: "primary",
341
+ validator: (value) => {
342
+ return [
343
+ "primary",
344
+ "secondary",
345
+ "info",
346
+ "success",
347
+ "warning",
348
+ "danger",
349
+ "white",
350
+ "black",
351
+ "transparent"
352
+ ].includes(value);
353
+ }
354
+ },
355
+ type: {
356
+ type: String,
357
+ default: "button",
358
+ validator: (value) => {
359
+ return ["button", "submit"].includes(value);
360
+ }
361
+ },
362
+ rounded: { type: Boolean, default: false },
363
+ outline: { type: Boolean, default: false },
364
+ pastel: { type: Boolean, default: false },
365
+ block: { type: Boolean, default: false },
366
+ noUnderline: { type: Boolean, default: false },
367
+ noLeading: { type: Boolean, default: false },
368
+ loading: { type: Boolean, default: false },
369
+ disabled: { type: Boolean, default: false },
370
+ fab: { type: Boolean, default: false },
371
+ leftIcon: { type: String, default: void 0 },
372
+ rightIcon: { type: String, default: void 0 },
373
+ noPadding: { type: Boolean, default: false },
374
+ noElevation: { type: Boolean, default: false }
375
+ },
376
+ setup(__props) {
377
+ const props = __props;
378
+ const { href, to } = useAttrs();
379
+ const slots = useSlots();
380
+ const component = computed(() => {
381
+ if (href)
382
+ return "a";
383
+ else if (to)
384
+ return "router-link";
385
+ return "button";
386
+ });
387
+ const btnColorClass = computed(
388
+ () => props.pastel ? `--${props.color}-pastel` : props.outline || props.loading ? `--${props.color}-outline` : `--${props.color}`
389
+ );
390
+ const isDisabled = computed(
391
+ () => (props.loading || props.disabled) && component.value === "button"
392
+ );
393
+ const cursorClass = computed(
394
+ () => isDisabled.value ? "--cursor-default" : "--cursor-pointer"
395
+ );
396
+ const variantClass = computed(() => `--is-${props.variant}`);
397
+ const loaderBgColorClass = computed(() => `--${props.color}`);
398
+ const loaderColor = computed(
399
+ () => ["white"].includes(props.color) ? "black" : "white"
400
+ );
401
+ const hasLoader = computed(() => props.loading && props.variant === "button");
402
+ const hasLeftIcon = computed(() => !!slots["left-icon"] || props.leftIcon);
403
+ const hasRightIcon = computed(() => !!slots["right-icon"] || props.rightIcon);
404
+ const hasIcon = computed(() => hasLeftIcon.value || hasRightIcon.value);
405
+ const btnType = computed(
406
+ () => component.value === "button" ? props.type : void 0
407
+ );
408
+ return (_ctx, _cache) => {
409
+ return openBlock(), createBlock(resolveDynamicComponent(unref(component)), mergeProps(_ctx.$attrs, {
410
+ disabled: unref(isDisabled),
411
+ class: ["m-btn", [
412
+ `--${__props.size}`,
413
+ unref(btnColorClass),
414
+ unref(cursorClass),
415
+ unref(variantClass),
416
+ {
417
+ "--block": __props.block,
418
+ "--no-underline": __props.noUnderline,
419
+ "--no-leading": __props.noLeading,
420
+ "--fab": __props.fab,
421
+ "--loading": __props.loading,
422
+ "--disabled": unref(isDisabled),
423
+ "--icon": unref(hasIcon),
424
+ "--rounded": __props.rounded,
425
+ "--no-padding": __props.noPadding,
426
+ "--no-elevation": __props.noElevation
427
+ }
428
+ ]],
429
+ type: unref(btnType)
430
+ }), {
431
+ default: withCtx(() => [
432
+ unref(hasLeftIcon) ? (openBlock(), createElementBlock("div", _hoisted_1$2, [
433
+ renderSlot(_ctx.$slots, "left-icon", {}, () => [
434
+ __props.leftIcon ? (openBlock(), createBlock(_sfc_main$3, {
435
+ key: 0,
436
+ name: __props.leftIcon
437
+ }, null, 8, ["name"])) : createCommentVNode("", true)
438
+ ], true)
439
+ ])) : createCommentVNode("", true),
440
+ createElementVNode("span", _hoisted_2$1, [
441
+ renderSlot(_ctx.$slots, "default", {}, void 0, true)
442
+ ]),
443
+ unref(hasRightIcon) ? (openBlock(), createElementBlock("div", _hoisted_3$1, [
444
+ renderSlot(_ctx.$slots, "right-icon", {}, () => [
445
+ __props.rightIcon ? (openBlock(), createBlock(_sfc_main$3, {
446
+ key: 0,
447
+ name: __props.rightIcon
448
+ }, null, 8, ["name"])) : createCommentVNode("", true)
449
+ ], true)
450
+ ])) : createCommentVNode("", true),
451
+ unref(hasLoader) ? (openBlock(), createElementBlock("div", {
452
+ key: 2,
453
+ class: normalizeClass(["m-btn__loading-wrapper", unref(loaderBgColorClass)])
454
+ }, [
455
+ createVNode(MazSpinner, {
456
+ size: "2em",
457
+ color: unref(loaderColor)
458
+ }, null, 8, ["color"])
459
+ ], 2)) : createCommentVNode("", true)
460
+ ]),
461
+ _: 3
462
+ }, 16, ["disabled", "class", "type"]);
463
+ };
464
+ }
465
+ });
466
+ const MazBtn_vue_vue_type_style_index_0_scoped_7673d151_lang = "";
467
+ const MazBtn = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["__scopeId", "data-v-7673d151"]]);
468
+ const EyeOffIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTEzLjg3NSAxOC44MjVBMTAuMDUgMTAuMDUgMCAwMTEyIDE5Yy00LjQ3OCAwLTguMjY4LTIuOTQzLTkuNTQzLTdhOS45NyA5Ljk3IDAgMDExLjU2My0zLjAyOW01Ljg1OC45MDhhMyAzIDAgMTE0LjI0MyA0LjI0M005Ljg3OCA5Ljg3OGw0LjI0MiA0LjI0Mk05Ljg4IDkuODhsLTMuMjktMy4yOW03LjUzMiA3LjUzMmwzLjI5IDMuMjlNMyAzbDMuNTkgMy41OW0wIDBBOS45NTMgOS45NTMgMCAwMTEyIDVjNC40NzggMCA4LjI2OCAyLjk0MyA5LjU0MyA3YTEwLjAyNSAxMC4wMjUgMCAwMS00LjEzMiA1LjQxMW0wIDBMMjEgMjEiLz4KPC9zdmc+Cg==";
469
+ const EyeIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTE1IDEyYTMgMyAwIDExLTYgMCAzIDMgMCAwMTYgMHoiLz4KICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTIuNDU4IDEyQzMuNzMyIDcuOTQzIDcuNTIzIDUgMTIgNWM0LjQ3OCAwIDguMjY4IDIuOTQzIDkuNTQyIDctMS4yNzQgNC4wNTctNS4wNjQgNy05LjU0MiA3LTQuNDc3IDAtOC4yNjgtMi45NDMtOS41NDItN3oiLz4KPC9zdmc+Cg==";
470
+ const CheckIcon = "data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIGZpbGw9Im5vbmUiIHZpZXdCb3g9IjAgMCAyNCAyNCIgc3Ryb2tlPSJjdXJyZW50Q29sb3IiIGFyaWEtaGlkZGVuPSJ0cnVlIj4KICA8cGF0aCBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS1saW5lam9pbj0icm91bmQiIHN0cm9rZS13aWR0aD0iMiIgZD0iTTUgMTNsNCA0TDE5IDciLz4KPC9zdmc+Cg==";
471
+ const _sfc_main$1 = defineComponent({
472
+ components: { MazBtn, MazIcon: _sfc_main$3 },
473
+ inheritAttrs: false,
474
+ props: {
475
+ modelValue: {
476
+ type: [String, Number, Boolean],
477
+ default: void 0
478
+ },
479
+ placeholder: { type: String, default: void 0 },
480
+ color: {
481
+ type: String,
482
+ default: "primary",
483
+ validator: (value) => {
484
+ return [
485
+ "primary",
486
+ "secondary",
487
+ "warning",
488
+ "danger",
489
+ "info",
490
+ "success",
491
+ "white",
492
+ "black",
493
+ "transparent"
494
+ ].includes(value);
495
+ }
496
+ },
497
+ label: { type: String, default: void 0 },
498
+ name: { type: String, default: "input" },
499
+ type: {
500
+ type: String,
501
+ default: "text",
502
+ validator: (value) => {
503
+ return [
504
+ "text",
505
+ "date",
506
+ "number",
507
+ "tel",
508
+ "search",
509
+ "url",
510
+ "password",
511
+ "month",
512
+ "time",
513
+ "week",
514
+ "email"
515
+ ].includes(value);
516
+ }
517
+ },
518
+ required: { type: Boolean, default: false },
519
+ disabled: { type: Boolean, default: false },
520
+ readonly: { type: Boolean, default: false },
521
+ id: { type: String, default: void 0 },
522
+ error: { type: Boolean, default: false },
523
+ success: { type: Boolean, default: false },
524
+ warning: { type: Boolean, default: false },
525
+ hint: { type: String, default: void 0 },
526
+ inputClasses: { type: String, default: void 0 },
527
+ noBorder: { type: Boolean, default: false },
528
+ noRadius: { type: Boolean, default: false },
529
+ size: {
530
+ type: String,
531
+ default: "md",
532
+ validator: (value) => {
533
+ return ["mini", "xs", "sm", "md", "lg", "xl"].includes(value);
534
+ }
535
+ },
536
+ debounce: { type: Boolean, default: false },
537
+ debounceDelay: { type: Number, default: 500 },
538
+ validButton: { type: Boolean, default: false },
539
+ validButtonLoading: { type: Boolean, default: false },
540
+ autoFocus: { type: Boolean, default: false },
541
+ borderActive: { type: Boolean, default: false },
542
+ leftIcon: { type: String, default: void 0 },
543
+ rightIcon: { type: String, default: void 0 }
544
+ },
545
+ emits: ["focus", "blur", "update:model-value", "click", "change", "update"],
546
+ setup(props, { emit, slots }) {
547
+ const hasPasswordVisible = ref(false);
548
+ const isFocused = ref(false);
549
+ const input = ref();
550
+ const instance = getCurrentInstance();
551
+ const { instanceId } = useInstanceUniqId({
552
+ componentName: "MazInput",
553
+ instance,
554
+ providedId: props.id
555
+ });
556
+ onMounted(() => {
557
+ var _a;
558
+ if (props.autoFocus) {
559
+ (_a = input.value) == null ? void 0 : _a.focus();
560
+ }
561
+ });
562
+ const isPasswordType = computed(() => props.type === "password");
563
+ const inputType = computed(
564
+ () => hasPasswordVisible.value ? "text" : props.type
565
+ );
566
+ const borderStyle = computed(() => {
567
+ if (props.noBorder)
568
+ return void 0;
569
+ if (props.error)
570
+ return "maz-border-danger";
571
+ if (props.success)
572
+ return "maz-border-success";
573
+ if (props.warning)
574
+ return "maz-border-warning";
575
+ if (isFocused.value || props.borderActive) {
576
+ if (props.color === "black")
577
+ return "maz-border-black";
578
+ if (props.color === "danger")
579
+ return "maz-border-danger";
580
+ if (props.color === "info")
581
+ return "maz-border-info";
582
+ if (props.color === "primary")
583
+ return "maz-border-primary";
584
+ if (props.color === "secondary")
585
+ return "maz-border-secondary";
586
+ if (props.color === "success")
587
+ return "maz-border-success";
588
+ if (props.color === "warning")
589
+ return "maz-border-warning";
590
+ if (props.color === "white")
591
+ return "maz-border-white";
592
+ }
593
+ return "--default-border";
594
+ });
595
+ const computedPlaceholder = computed(() => {
596
+ const { required, placeholder } = props;
597
+ if (!placeholder)
598
+ return void 0;
599
+ return required ? `${placeholder} *` : placeholder;
600
+ });
601
+ const hasValue = computed(
602
+ () => props.modelValue !== void 0 && props.modelValue !== ""
603
+ );
604
+ const inputValue = computed({
605
+ get: () => props.modelValue,
606
+ set: (value) => emitValue(value)
607
+ });
608
+ const shouldUp = computed(() => {
609
+ return (!!props.label || !!props.hint) && (isFocused.value || !!hasValue.value || !!props.placeholder || ["date", "month", "week"].includes(props.type));
610
+ });
611
+ const hasLabel = computed(() => !!props.label || !!props.hint);
612
+ const hasRightPart = () => {
613
+ return !!slots["right-icon"] || isPasswordType.value || !!slots["valid-button"] || props.validButton || !!props.rightIcon;
614
+ };
615
+ const hasLeftPart = () => {
616
+ return !!slots["left-icon"] || !!props.leftIcon;
617
+ };
618
+ const focus = (event) => {
619
+ emit("focus", event);
620
+ isFocused.value = true;
621
+ };
622
+ const blur = (event) => {
623
+ emit("blur", event);
624
+ isFocused.value = false;
625
+ };
626
+ const change = (event) => emit("change", event);
627
+ const debounceEmitValue = debounce((value) => {
628
+ emit("update:model-value", value);
629
+ }, props.debounceDelay);
630
+ const emitValue = (value) => {
631
+ if (props.debounce)
632
+ return debounceEmitValue(value);
633
+ emit("update:model-value", value);
634
+ };
635
+ return {
636
+ inputValue,
637
+ shouldUp,
638
+ hasLabel,
639
+ computedPlaceholder,
640
+ isPasswordType,
641
+ inputType,
642
+ input,
643
+ isFocused,
644
+ hasPasswordVisible,
645
+ borderStyle,
646
+ focus,
647
+ blur,
648
+ change,
649
+ emitValue,
650
+ hasRightPart,
651
+ hasLeftPart,
652
+ EyeOffIcon,
653
+ EyeIcon,
654
+ CheckIcon,
655
+ instanceId
656
+ };
657
+ }
658
+ });
659
+ const MazInput_vue_vue_type_style_index_0_scoped_8d171d05_lang = "";
660
+ const _hoisted_1$1 = {
661
+ key: 0,
662
+ class: "m-input-wrapper-left"
663
+ };
664
+ const _hoisted_2 = { class: "m-input-wrapper-input" };
665
+ const _hoisted_3 = ["id", "type", "name", "placeholder", "aria-label", "disabled", "readonly", "required"];
666
+ const _hoisted_4 = ["for"];
667
+ const _hoisted_5 = { key: 0 };
668
+ const _hoisted_6 = {
669
+ key: 1,
670
+ class: "m-input-wrapper-right"
671
+ };
672
+ function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) {
673
+ const _component_MazIcon = resolveComponent("MazIcon");
674
+ const _component_MazBtn = resolveComponent("MazBtn");
675
+ return openBlock(), createElementBlock("div", {
676
+ class: normalizeClass(["m-input", [
677
+ {
678
+ "--is-focused": _ctx.isFocused || _ctx.borderActive,
679
+ "--should-up": _ctx.shouldUp,
680
+ "--has-label": _ctx.hasLabel,
681
+ "--is-disabled": _ctx.disabled,
682
+ "--is-readonly": _ctx.readonly,
683
+ "--has-z-2": _ctx.error || _ctx.warning || _ctx.success,
684
+ "--has-state": _ctx.error || _ctx.warning || _ctx.success
685
+ },
686
+ _ctx.$attrs.class,
687
+ `--${_ctx.color}`,
688
+ `--${_ctx.size}`
689
+ ]]),
690
+ onClick: _cache[2] || (_cache[2] = ($event) => _ctx.$emit("click", $event))
691
+ }, [
692
+ createElementVNode("div", {
693
+ class: normalizeClass(["m-input-wrapper", [_ctx.inputClasses, _ctx.borderStyle, { "maz-rounded": !_ctx.noRadius }]])
694
+ }, [
695
+ _ctx.hasLeftPart() ? (openBlock(), createElementBlock("div", _hoisted_1$1, [
696
+ _ctx.$slots["left-icon"] || _ctx.leftIcon ? renderSlot(_ctx.$slots, "left-icon", { key: 0 }, () => [
697
+ createVNode(_component_MazIcon, {
698
+ name: _ctx.leftIcon,
699
+ class: "maz-text-muted"
700
+ }, null, 8, ["name"])
701
+ ], true) : createCommentVNode("", true)
702
+ ])) : createCommentVNode("", true),
703
+ createElementVNode("div", _hoisted_2, [
704
+ withDirectives(createElementVNode("input", mergeProps({
705
+ id: _ctx.instanceId,
706
+ ref: "input",
707
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => _ctx.inputValue = $event),
708
+ type: _ctx.inputType,
709
+ name: _ctx.name
710
+ }, _ctx.$attrs, {
711
+ placeholder: _ctx.computedPlaceholder,
712
+ "aria-label": _ctx.label || _ctx.placeholder,
713
+ disabled: _ctx.disabled,
714
+ readonly: _ctx.readonly,
715
+ required: _ctx.required,
716
+ class: "m-input-input"
717
+ }, toHandlers({
718
+ blur: _ctx.blur,
719
+ focus: _ctx.focus,
720
+ change: _ctx.change
721
+ }, true)), null, 16, _hoisted_3), [
722
+ [vModelDynamic, _ctx.inputValue]
723
+ ]),
724
+ _ctx.label || _ctx.hint ? (openBlock(), createElementBlock("label", {
725
+ key: 0,
726
+ ref: "label",
727
+ for: _ctx.instanceId,
728
+ class: normalizeClass(["m-input-label", [
729
+ {
730
+ "maz-text-danger-600": _ctx.error,
731
+ "maz-text-success-600": _ctx.success,
732
+ "maz-text-warning-600": _ctx.warning
733
+ }
734
+ ]])
735
+ }, [
736
+ createTextVNode(toDisplayString(_ctx.hint || _ctx.label) + " ", 1),
737
+ _ctx.required ? (openBlock(), createElementBlock("sup", _hoisted_5, "*")) : createCommentVNode("", true)
738
+ ], 10, _hoisted_4)) : createCommentVNode("", true)
739
+ ]),
740
+ _ctx.hasRightPart() ? (openBlock(), createElementBlock("div", _hoisted_6, [
741
+ _ctx.$slots["right-icon"] || _ctx.rightIcon ? renderSlot(_ctx.$slots, "right-icon", { key: 0 }, () => [
742
+ createVNode(_component_MazIcon, {
743
+ name: _ctx.rightIcon,
744
+ class: "maz-text-muted"
745
+ }, null, 8, ["name"])
746
+ ], true) : createCommentVNode("", true),
747
+ _ctx.isPasswordType ? (openBlock(), createBlock(_component_MazBtn, {
748
+ key: 1,
749
+ color: "transparent",
750
+ tabindex: "-1",
751
+ size: "mini",
752
+ onClick: _cache[1] || (_cache[1] = withModifiers(($event) => _ctx.hasPasswordVisible = !_ctx.hasPasswordVisible, ["stop"]))
753
+ }, {
754
+ default: withCtx(() => [
755
+ _ctx.hasPasswordVisible ? (openBlock(), createBlock(_component_MazIcon, {
756
+ key: 0,
757
+ src: _ctx.EyeOffIcon,
758
+ class: "maz-text-muted"
759
+ }, null, 8, ["src"])) : (openBlock(), createBlock(_component_MazIcon, {
760
+ key: 1,
761
+ src: _ctx.EyeIcon,
762
+ class: "maz-text-muted"
763
+ }, null, 8, ["src"]))
764
+ ]),
765
+ _: 1
766
+ })) : createCommentVNode("", true),
767
+ _ctx.$slots["valid-button"] || _ctx.validButton ? renderSlot(_ctx.$slots, "valid-button", { key: 2 }, () => [
768
+ createVNode(_component_MazBtn, {
769
+ color: "transparent",
770
+ disabled: _ctx.disabled,
771
+ tabindex: "-1",
772
+ loading: _ctx.validButtonLoading,
773
+ class: "m-input-valid-button",
774
+ size: "mini",
775
+ type: "submit"
776
+ }, {
777
+ default: withCtx(() => [
778
+ createVNode(_component_MazIcon, {
779
+ src: _ctx.CheckIcon,
780
+ class: "maz-text-normal"
781
+ }, null, 8, ["src"])
782
+ ]),
783
+ _: 1
784
+ }, 8, ["disabled", "loading"])
785
+ ], true) : createCommentVNode("", true)
786
+ ])) : createCommentVNode("", true)
787
+ ], 2)
788
+ ], 2);
789
+ }
790
+ const MazInput = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render], ["__scopeId", "data-v-8d171d05"]]);
791
+ const _hoisted_1 = /* @__PURE__ */ createElementVNode("svg", {
792
+ xmlns: "http://www.w3.org/2000/svg",
793
+ fill: "none",
794
+ viewBox: "0 0 24 24",
795
+ stroke: "currentColor",
796
+ "aria-hidden": "true",
797
+ class: "maz-text-mute maz-ml-1 maz-h-6 maz-w-6"
798
+ }, [
799
+ /* @__PURE__ */ createElementVNode("path", {
800
+ "stroke-linecap": "round",
801
+ "stroke-linejoin": "round",
802
+ "stroke-width": "2",
803
+ d: "M17 9V7a2 2 0 00-2-2H5a2 2 0 00-2 2v6a2 2 0 002 2h2m2 4h10a2 2 0 002-2v-6a2 2 0 00-2-2H9a2 2 0 00-2 2v6a2 2 0 002 2zm7-5a2 2 0 11-4 0 2 2 0 014 0z"
804
+ })
805
+ ], -1);
806
+ const _sfc_main = /* @__PURE__ */ defineComponent({
807
+ __name: "MazInputPrice",
808
+ props: {
809
+ modelValue: { type: [Number, String], default: void 0 },
810
+ currency: { type: String, default: "EUR" },
811
+ locale: { type: String, default: "fr-FR" },
812
+ min: { type: Number, default: 0 },
813
+ max: { type: Number, default: Number.POSITIVE_INFINITY },
814
+ noIcon: { type: Boolean, default: false }
815
+ },
816
+ emits: ["update:model-value", "formatted"],
817
+ setup(__props, { emit: emits }) {
818
+ const props = __props;
819
+ const isActive = ref(false);
820
+ const valueString = computed(() => {
821
+ return getAdjustedPrice(props.modelValue).toString();
822
+ });
823
+ const valueNumber = computed(() => {
824
+ const value = typeof props.modelValue === "string" ? Number(props.modelValue) : props.modelValue;
825
+ return getAdjustedPrice(value);
826
+ });
827
+ const priceFormatted = computed(
828
+ () => currency(valueNumber.value, props.locale, { currency: props.currency })
829
+ );
830
+ const getAdjustedPrice = (value) => {
831
+ let newValue = typeof value === "string" ? Number.parseFloat(
832
+ value.replace(",", ".").replace(/[^\d.]/g, "")
833
+ ) : value;
834
+ if (!newValue || Number.isNaN(newValue))
835
+ newValue = 0;
836
+ if (newValue < props.min)
837
+ newValue = props.min;
838
+ if (newValue > props.max)
839
+ newValue = props.max;
840
+ return newValue;
841
+ };
842
+ const displayPrice = computed({
843
+ get: () => {
844
+ if (isActive.value)
845
+ return valueString.value;
846
+ if (typeof props.modelValue === "number")
847
+ return priceFormatted.value;
848
+ return void 0;
849
+ },
850
+ set: (value) => {
851
+ if (Number.isNaN(value)) {
852
+ emitValues();
853
+ } else {
854
+ const adjustedPrice = getAdjustedPrice(value);
855
+ emitValues(adjustedPrice);
856
+ }
857
+ }
858
+ });
859
+ const emitValues = async (newValue) => {
860
+ const adjustedPrice = typeof newValue === "number" ? getAdjustedPrice(newValue) : void 0;
861
+ emits("update:model-value", adjustedPrice);
862
+ await nextTick();
863
+ emits("formatted", priceFormatted.value);
864
+ };
865
+ onBeforeMount(() => {
866
+ emitValues(getAdjustedPrice(props.modelValue));
867
+ });
868
+ return (_ctx, _cache) => {
869
+ return openBlock(), createBlock(MazInput, mergeProps({
870
+ modelValue: unref(displayPrice),
871
+ "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => isRef(displayPrice) ? displayPrice.value = $event : null),
872
+ class: "maz-input-price"
873
+ }, _ctx.$attrs, {
874
+ onFocus: _cache[1] || (_cache[1] = ($event) => isActive.value = true),
875
+ onBlur: _cache[2] || (_cache[2] = ($event) => isActive.value = false)
876
+ }), {
877
+ "left-icon": withCtx(() => [
878
+ !__props.noIcon ? renderSlot(_ctx.$slots, "left-icon", { key: 0 }, () => [
879
+ _hoisted_1
880
+ ]) : createCommentVNode("", true)
881
+ ]),
882
+ _: 3
883
+ }, 16, ["modelValue"]);
884
+ };
885
+ }
886
+ });
887
+ export {
888
+ _sfc_main as default
889
+ };